将批处理文件编译为EXE文件 我想用C++编译一个批处理文件到一个EXE文件中。我可以解析批处理文件并编写一个新的.cpp文件。但是我不知道如何为最终用户将新的.cpp文件编译成EXE文件
好的,事情是这样的,我正在用DevC++创建一个应用程序,它将读取批处理文件。然后,使用以下方法逐一解析:将批处理文件编译为EXE文件 我想用C++编译一个批处理文件到一个EXE文件中。我可以解析批处理文件并编写一个新的.cpp文件。但是我不知道如何为最终用户将新的.cpp文件编译成EXE文件,c++,batch-file,compilation,C++,Batch File,Compilation,好的,事情是这样的,我正在用DevC++创建一个应用程序,它将读取批处理文件。然后,使用以下方法逐一解析: system(getline(myfile,line)); 设置完所有内容后,我将新创建的文件保存为“main.cpp” 问题是,我想从我的程序中为最终用户编译成一个EXE文件 P> >基本上,我可以从C++ exe?< /p> 编译C++文件吗?简短的答案是:不,除非你愿意编写一个完整的C++编译器,你需要调用外部C++编译器编译.CPP文件。 P> >如果你只是想将.BAT文件转换
system(getline(myfile,line));
设置完所有内容后,我将新创建的文件保存为“main.cpp”
问题是,我想从我的程序中为最终用户编译成一个EXE文件
<> P> >基本上,我可以从C++ exe?< /p> 编译C++文件吗?简短的答案是:不,除非你愿意编写一个完整的C++编译器,你需要调用外部C++编译器编译.CPP文件。
P> >如果你只是想将.BAT文件转换成.exe文件,那么有几个现有的解决方案,比如.< /p> 简短的答案是:不,除非你愿意编写一个完整的C++编译器,你需要调用外部的C++编译器编译.CPP文件。
从正面看,如果你只是想将.BAT文件转换成.exe文件,有几个现有的解决方案,比如.< /p> 是的,你可以提供最终用户安装了C++编译器,并且发出有效的C++。
根据你使用的编译器,C++的可执行文件必须生成一个运行
的进程cl main.cpp
或在完成翻译后对编译器的类似调用
如果你的用户没有安装编译器,那么你就很走运了——尝试自己构建一个C++编译器是一个相当不平凡的练习。
< P>是的,你可以提供最终用户安装了一个C++编译器,你发出了有效的C++。根据你使用的编译器,C++的可执行文件必须生成一个运行
的进程cl main.cpp
或在完成翻译后对编译器的类似调用
如果你的用户没有安装编译器,那么你就很不走运了。尝试自己构建一个C++编译器是一个相当不平凡的练习。
< P>我能问你为什么需要解析BAT文件? 我的意思是,如果你正在从那个文件中获取输入或其他信息,那么你能尝试使用数据库或其他信息吗 对于用户端,您还可以编写web应用程序来显示输出。 有C++服务器页面,相当于JSP,PHP,可以使用C++类。我是在帮你还是这不是你想要的?如果你能描述一下你的应用程序,也许有人能更好地帮助你。我能问你为什么需要解析bat文件吗 我的意思是,如果你正在从那个文件中获取输入或其他信息,那么你能尝试使用数据库或其他信息吗 对于用户端,您还可以编写web应用程序来显示输出。 有C++服务器页面,相当于JSP,PHP,可以使用C++类。
我是在帮你还是这不是你想要的?如果您能描述您的应用程序,可能有人能更好地帮助您。如果批处理文件中有一个
goto
,会发生什么?你知道吗,如果你有一个调用file.bat
,那么你应该返回到你开始创建的文件中,但是如果它只是file.bat
,那么你就不应该这样做了?看起来你在试图重新创建cmd.exe
。为什么?如果你需要测试用例,我有很多:P。我很确定你会得到更多错误而非正确的东西。批处理文件不容易解析。如果批处理文件中有一个goto
,会发生什么?你知道吗,如果你有一个调用file.bat
,那么你应该返回到你开始创建的文件中,但是如果它只是file.bat
,那么你就不应该这样做了?看起来你在试图重新创建cmd.exe
。为什么?如果你需要测试用例,我有很多:P。我很确定你会得到更多错误而非正确的东西。批处理文件不容易解析。