我們有一個有趣的案例,我們試圖確定如何啓動我們的應用程序的不同實例。有沒有辦法讓.NET能夠查詢另一個正在運行的實例並獲取傳遞給該實例的命令行參數?到目前爲止,我還沒有找到任何方法來完成它,所以我想我會在這裏查看是否有人做過這樣的事情。.NET可以檢查其他正在運行的程序的命令行參數嗎?
2
A
回答
4
您可以通過WMI檢索此信息。
請參閱Win32_Process類,特別是其命令行屬性。這Code Project article提供瞭如何做到這一點,
2
通常,這些變量存儲在程序的內存空間中,您應該(理論上)應該無法訪問這些變量。
您需要了解如何啓動與其他實例和交易數據的進程間通信。命名管道是一個不錯的選擇,但你可能想要開始一個新的stackoverflow問題來獲得這個好的選擇。
-Adam
0
爲了將來的參考,這裏是我如何得到它的工作代碼片段。這只是一個測試,看看它是如何工作的。實際實現的代碼解析我們需要的命令行參數。
try
{
ManagementScope connectScope = new ManagementScope();
connectScope.Path = new ManagementPath(@"\\" + Environment.MachineName + @"\root\CIMV2");
SelectQuery msQuery = new SelectQuery("SELECT * FROM Win32_Process Where Name = '" + "PROGRAMNAMEHERE.exe" + "'");
ManagementObjectSearcher searchProcedure = new ManagementObjectSearcher(connectScope, msQuery);
foreach (ManagementObject item in searchProcedure.Get())
{
try
{
MessageBox.Show(item["CommandLine"].ToString());
}
catch (SystemException)
{}
}
}
相關問題
- 1. 我可以從.NET/C#獲得其他進程的命令行參數嗎?
- 2. 用於在Code :: Blocks中運行程序的其他命令行參數?
- 3. 編寫可以使用命令行中的其他參數運行的C程序
- 4. 我可以通過命令行從.NET程序集運行代碼嗎?
- 5. 我可以更改其他正在運行的程序的屬性嗎?
- 6. Java程序運行時可以再次使用命令行嗎?
- 7. 在makefile中運行的程序的命令行參數
- 8. 我可以在android應用程序中運行jdk命令嗎?
- 9. 使用Windows命令行可以計算我正在運行的進程嗎?
- 10. 檢查命令行參數以有效的順序
- 11. 我可以在Windows命令行的後臺運行GUI程序嗎?
- 12. 檢查PHP中的命令行參數
- 13. 從其他應用程序/命令行/ Apple腳本運行Xcode
- 14. 檢查正在運行的程序中可用RAM的數量
- 15. 運行命令行參數
- 16. 運行命令行參數
- 17. .net命令行參數?
- 18. .NET 2.0程序集可以在.NET 4.0下運行嗎?
- 19. 在.NET中用於在命令行中運行命令還有其他選擇嗎?
- 20. 在bash中是否有命令檢查程序是否可以運行
- 21. 運行命令行程序
- 22. 我可以從命令行運行指定的Maven執行嗎?
- 23. 使用命令行發送的參數運行程序
- 24. 如何來運行命令行應用程序的Clojure參數
- 25. 使用命令行參數運行程序的Autohotkey腳本
- 26. 正在執行其他命令
- 27. 如何從其他進程運行ConEmu實例運行命令
- 28. 運行期間的命令行參數
- 29. 從參數的C#運行命令行?
- 30. Docker運行的命令行參數