2013-07-07 48 views
2

我的應用程序的小部分需要管理員權限(激活軟件需要去HKLM)。爲此,我在動作需要管理權限的按鈕上繪製盾牌圖標,並在單擊時,使用「runas」動詞再次用適當的參數重新啓動應用程序。從網絡上運行程序的管理員提升

這個作品非常好!但是,現在用戶從網絡共享中執行應用程序。如果他們現在點擊「管理員權限按鈕」,他們會收到一條錯誤消息,因爲網絡驅動器未映射給管理員,因此無法找到可執行的路徑:-(

最好的解決方法是什麼?

回答

4

映射的驅動器保存在每個登錄會話,這樣你就不會上升後,有他們。

您可以提取管理界面到另一個可執行文件並將其標記爲requireAdministrator中體現出來了。然後啓動管理員可執行通過ShellExecute。Windows Explorer will copy the drive mapping in this case(無證行爲,儘管如此)。

+0

另一個替代主要是停止使用映射的驅動器。改用完整的UNC路徑。當DOS 3.3添加網絡支持時,映射驅動器僅作爲兼容性破解而存在,並且應用程序會阻塞以'[letter]開頭的文件名:' –

相關問題