我想在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ɴᴀᴍ我沒有找到任何相關的東西:( –