我想在C#(。NET)中制作一个应用程序,例如一个richtextbox,您可以在其中编写C++代码和一个用于调试和运行用richtextbox编写的应用程序的按钮!怎么做 ?我如何将C++编译器(例如G++ 5.3.0 C++0X ENABLED
)集成到我的应用程序中来运行它?我知道,对于网站可以使用Ideone Api!我可以从MinGW/bin
获得编译器!如何将C++编译器集成到C#应用程序中?
回答
使用System.Diagnostics.Process.Start
启动C++编译器像任何其他外部进程:
System.Diagnostics.Process pProcess = new System.Diagnostics.Process();
pProcess.StartInfo.FileName = @"path\to\gcc";
pProcess.StartInfo.Arguments = "-Wall myFile.cpp"; //argument
pProcess.StartInfo.UseShellExecute = false;
pProcess.StartInfo.RedirectStandardOutput = true;
pProcess.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
pProcess.StartInfo.CreateNoWindow = true; //not diplay a windows
pProcess.Start();
string output = pProcess.StandardOutput.ReadToEnd(); //The output result
int exitCode = pProcess.WaitForExit();
然后分析输出/退出代码,看看是否有任何错误。
调试器会有更多麻烦(例如gdb--因为它具有完整的命令行界面),您可以使用类标准输入属性Process
来发送命令,但它会相当复杂。正如你所看到的.Net lib to control remote GDB这里还没有图书馆。
所以我得到这个错误:'附加信息:访问被拒绝!!与编译器的文件夹是只读的我不能改变!我做了编译器全局的路径(我添加了环境设置,系统路径的路径),并在cmd中工作!怎么办? –
如果它被添加到路径中,您可以使用名称'gcc'而不是完整路径。程序通常是只读的 - 这不是一个问题,但运行你的程序的用户可能有限制访问该目录,有趣的... – csharpfolk
现在的作品!我做了一个名为'start.bat'的argumets的批处理文件,我不需要任何参数! –
- 1. 将SSH编译为C++应用程序
- 2. 如何将webkit集成到C++ Windows应用程序
- 3. 如何在C中编译C程序?
- 4. 将程序集嵌入到C中,编译器为您找到寄存器
- 5. 集成GPS到C#应用程序
- 6. 如何编译C程序?
- 7. 如何编译Java或C++应用程序生成的代码
- 8. 如何将DynamicC编译器(Rabbit Microcontroller/C)与Eclipse IDE集成
- 9. 将Lua编辑器集成到C#程序
- 10. 如何使用Borland C++编译器v5.5(bcc32)编译程序
- 11. C++生成器Android无法编译应用程序?
- 12. 如何使用C++静态库编译C#应用程序?
- 13. 如何使用C#应用程序编译C++代码
- 14. 将Matlab代码集成到C#应用程序中
- 15. 将ANTLR 4集成到C++应用程序中
- 16. 将POP3客户端功能集成到C#应用程序中?
- 17. 将C applet集成到Python应用程序中(GTK)
- 18. 将Python的Django集成到C++应用程序中
- 19. 将C++编译器集成到网站的在线API
- 20. 将C#集成到C++中
- 21. 将Zend翻译器集成到我的应用程序
- 22. 如何获得C#.NET编译器程序集GUID
- 23. 如何从C#应用程序编译并上传到Arduino
- 24. 从编译器将目录传递给C++应用程序
- 25. 如何在Visual Studio 2008中集成C++编译器
- 26. 如何将whatsapp api与c#wpf windows应用程序pc集成
- 27. 如何将现有的C#应用程序与Spring.NET集成
- 28. 如何将twitter与C++应用程序集成?
- 29. 如何在C++中编译编译器?
- 30. 在应用程序中集成的c#类图生成器
[Google](https://www.google.co.in/)是否已关闭? –
@FᴀʀʜᴀɴAɴᴀᴍ我没有找到任何相关的东西:( –