我爲.net應用程序創建了一個安裝項目,它工作正常。問題是,應用程序在啓動後開始寫入日誌文件,這需要Windows Vista和Windows 7的管理權限。我知道有一些文件夾可以用來寫入,而無需管理權限。當我以管理員身份啓動應用程序時,一切正常。C#安裝項目輸出自動以管理權限開始
我問自己,如果可以在安裝的應用程序自動擁有目標系統的管理權限的方式下更改Visual Studio中的安裝項目?
感謝您提前給予的幫助!
亞歷克斯
我爲.net應用程序創建了一個安裝項目,它工作正常。問題是,應用程序在啓動後開始寫入日誌文件,這需要Windows Vista和Windows 7的管理權限。我知道有一些文件夾可以用來寫入,而無需管理權限。當我以管理員身份啓動應用程序時,一切正常。C#安裝項目輸出自動以管理權限開始
我問自己,如果可以在安裝的應用程序自動擁有目標系統的管理權限的方式下更改Visual Studio中的安裝項目?
感謝您提前給予的幫助!
亞歷克斯
你不想這樣做。如果它需要某個特定目錄的權限,則創建一個擁有它們的帳戶(或修改子目錄的權限,以便任何人都可以訪問它)。但不要以管理員身份運行一個功能。另外,請查看是否有另一個可以寫入的目錄,您已擁有該目錄的權限。
要回答你的直接問題,是的,你可以設置安裝項目的啓動條件,要求管理員,我相信這會照顧到適當的升級。
這裏是一個thread與詳細的說明。
現在,擴大,我同意史蒂芬,你不應該這樣做,至少不會只是爲了能夠寫入日誌文件.....
這是一個有趣的答案,但我不確定它是否符合問題。如果我理解正確,Alex會希望應用程序在執行時擁有日誌目錄的權限,而您發佈的鏈接是關於確保安裝程序以管理員身份運行。現在,原則上,安裝程序可以利用作爲管理員通過修改日誌目錄的DACL將其公開給所有用戶,但這雖然可行,但我不會推薦它。 – 2010-05-05 15:58:27
@Steven - 我同意,但這確實讓海報成爲他們想要的問題,應用程序以管理員身份運行,他們可以做他們需要做的事情。我同意,應該做一個不同的選擇。爲記錄目的升級,不是一個「好」的解決方案 – 2010-05-05 16:01:35
我想我們在這裏的同一頁。 – 2010-05-05 16:14:35
你可以在技術上有壞做到這一點黑客:這個想法是讓運行的安裝程序提升,創建一個以admin身份運行程序的計劃任務。
不是直接創建應用程序的快捷方式,而是創建執行此計劃任務的快捷方式。
看到這個關於如何手動那個做參考:http://www.howtogeek.com/howto/windows-vista/create-administrator-mode-shortcuts-without-uac-prompts-in-windows-vista/
你只需要找到一個方法來從您的設置編程創建任務。
另一方面,我也完全同意史蒂文。儘量做到「正確」的方式,不要欺騙Windows安全。這是一件好事,解決它會使系統潛在地變得不安全,並且你不想成爲危害其他計算機安全的人。
爲了記錄,這是由任何人不滿我的任意downvoted。 – 2010-07-22 15:45:58