我對圖像執行脫機操作將圖像作爲輸入參數並在VTK中處理C++ EXE我無法通過C#將參數傳遞給C++ EXE。程序和回收輸出。 請用一些例子來解釋我如何使用C#.net從命令行調用C++ EXE .net
回答
如果你只是說你有一個編譯好的C++程序(我們稱之爲「foo.exe」,路徑存儲在字符串「exe_folder」中),你想用命令行參數(存儲在字符串「exe_params」)從C#,那麼下面應該工作:
string exe_params = "target_image.jpeg HOUGH_TRANSFORM"; // Or whatever params are appropriate.
string exe_full_path = Path.Combine(exe_folder, "foo.exe");
Process proc = System.Diagnostics.Process.Start(exe_full_path, exe_params);
https://msdn.microsoft.com/en-us/library/h6ak8zt5(v=vs.110).aspx
謝謝Devid,我已經試過你的代碼片段,它成功地工作,但它只是調用exe而不理解我的exe_params。 –
我的exe文件是一個exe_folder文件。但無法調用該圖像文件。 –
意味着我的命令不理解我的第二個參數 –
讓我們說,你的可執行文件名爲test.exe的,它是在測試目錄。對我來說,下面將工作:
Process process = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.FileName = "cmd.exe";
startInfo.Arguments = "/C cd C:\\..test\\ && test.exe target_image.jpg yourtransformation";
process.StartInfo = startInfo;
process.Start();
如果您還有其他問題,可以嘗試設置的ProcessStartInfo的working directory。
- 1. 從C#.NET調用AutoCAD命令
- 2. 使用C#.NET執行外部EXE
- 3. 使用批處理文件從命令行調用C#exe
- 4. 如何使用c#.net作爲管理員在命令提示符下運行命令.net
- 5. 如何調用本機exe函數(Visual Basic 6.0)從.Net(C#)?
- 6. C#調用使用命令行
- 7. 從.Net中的命令行使用ImageMagick?
- 8. 如何從C#.NET調用NetUserModalsGet()?
- 9. 如何從.NET調用C庫
- 10. 從.NET調用C++方法
- 11. 從R調用.NET/C#
- 12. 如何調用.NET命令提示符
- 13. 如何從C#調用C .exe文件?
- 14. 從C#.net應用程序打開Apache FOP命令行
- 15. 從C++調用(C#).NET Core方法
- 16. 調用C#(.NET)API C
- 17. C#.NET調用C++ DLL
- 18. 從AutoCAD .NET調用LISP命令Editor.CommandAsync
- 19. 從.Net調用Image Magick命令
- 20. 如何使用C#.NET
- 21. 如何使用C#.NET
- 22. 如何使用C#.NET
- 23. 如何使用C#.NET
- 24. 如何使用C#/。NET
- 25. 如何使用c#.net
- 26. 如何使用c#.net
- 27. 如何使用C#.NET
- 28. 如何使用ASP .NET C#
- 29. 使用.NET C#
- 30. 使用C#.NET
它應該和任何可執行文件一樣。你爲什麼要專門詢問C++可執行文件?一旦你有一個可執行文件,它與哪一種語言無關,它們的行爲都是一樣的 – KABoissonneault
首先讓我困惑的是DOS/Windows程序只有*一個*字符串作爲參數。 OS/C++運行時解析字符串並將其作爲'argv'字符串數組呈現給'main'。參數分裂僅僅是空白的;雙引號可防止分裂。所以如果你有多個參數,你可以用一個空格連接它們,可能用雙引號括住每個參數。 –
在這種情況下定義「輸出」。你的輸出是什麼?它在哪裏/如何輸出?你怎麼試圖找回它? – EJoshuaS