.NET/C# 获取一个正在运行的进程的命令行参数
在自己的進程內部,我們可以通過 Main 函數傳入的參數,也可以通過 Environment.GetCommandLineArgs 來獲取命令行參數。
但是,可以通過什么方式來獲取另一個運行著的程序的命令行參數呢?
進程內部獲取傳入參數的方法,可以參見我的另一篇博客:.NET 命令行參數包含應用程序路徑嗎?。
.NET Framework / .NET Core 框架內部是不包含獲取其他進程命令行參數的方法的,但是我們可以在任務管理器中看到,說明肯定存在這樣的方法。
實際上方法是有的,不過這個方法是 Windows 上的專屬方法。
對于 .NET Framework,需要引用程序集 System.Management;對于 .NET Core 需要引用 Microsoft.Windows.Compatibility 這個針對 Windows 系統準備的兼容包(不過這個兼容包目前還是預覽版本)。
為了簡便,我將其封裝成一個擴展方法,其中包括對于一些異常的簡單處理。
.NET/C# 將一個命令行參數字符串轉換為命令行參數數組 args
參考資料
本文會經常更新,請閱讀原文: https://walterlv.com/post/get-command-line-for-a-running-process.html ,以避免陳舊錯誤知識的誤導,同時有更好的閱讀體驗。
如果你想持續閱讀我的最新博客,請點擊 RSS 訂閱,或者前往 CSDN 關注我的主頁。?
原文地址:https://walterlv.com/post/get-command-line-for-a-running-process.html
.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com
總結
以上是生活随笔為你收集整理的.NET/C# 获取一个正在运行的进程的命令行参数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: eShopOnContainers 知多
- 下一篇: 听说,霸都.NET技术社区准备搞线下聚会