我有一個與MS-Outlook接口的VB.NET應用程序,要做到這一點,它必須在沒有ADMIN特權的情況下運行。一切都好。從高級應用程序通過Process.Start運行沒有ADMIN權限的應用程序
在使用ADMIN權限運行的獨立應用程序「LiveUpdate」模塊結束其更新並再次加載主應用程序之後,會出現問題。該負載是使用執行:
Process.Start(MyApp.exe)
但是當「MyApp的」加載時,它不能再與MS-的Outlook,其拒絕該接口發送的在不同UAC權限的正在運行的程序的典型消息接口。我猜當LiveUpdate執行Process.Start時,該命令會使用相同的權限(ADMIN)。
事實:
- 在LiveUpdate必須以管理員身份運行,但必須MyApp的以正常方式運行。
- 兩者都有自己的MANIFEST,但似乎上面的調用繞過了MyApp的清單 - 默認設置爲「Invoke」。
- 如果關閉MyApp並手動再次運行它,一切都會正常進行。
- 某些客戶端有USER/PASSWORD,其他客戶端沒有它(Windows沒有自動加載用戶/密碼對話框)。在Windows Vista中
5.應用程序運行,7,8,8.1和10
那麼,有沒有一些方法來 「的Process.Start」 的應用程序從調用者(的LiveUpdate)棄ADMIN特權?
在這次通話中用戶/密碼的使用不是我的選擇... 謝謝!
我很確定沒有辦法。您可以添加其他未升級的東西,並像指揮員一樣開始提升第一件事,然後啓動您的應用程序正常。 – user3697824
謝謝@ user3697824,我真的應該是一樣的...... –