我正在創建一個自動更新自身的Windows應用程序。由於各種原因,我沒有使用ClickOnce。當我嘗試File.Move()我更新的文件到C:\ Program Files文件在Windows 7上,我得到以下錯誤:如何將新的二進制文件複製到C: Program Files?
訪問路徑「C:\ Program Files文件\ <公司> \ <應用> \ <app.exe>'被拒絕。
我沒有給UAC提示。我試圖更新的exe目前沒有運行。
我正在創建一個自動更新自身的Windows應用程序。由於各種原因,我沒有使用ClickOnce。當我嘗試File.Move()我更新的文件到C:\ Program Files文件在Windows 7上,我得到以下錯誤:如何將新的二進制文件複製到C: Program Files?
訪問路徑「C:\ Program Files文件\ <公司> \ <應用> \ <app.exe>'被拒絕。
我沒有給UAC提示。我試圖更新的exe目前沒有運行。
你不能在該程序的安裝文件夾的變化,你沒有必要的管理權限。將清單添加到更新程序並不實際,用戶很快就會看到提升提示。
唯一可行的方法是在運行更新的計劃任務。這些任務被允許以管理員權限運行,因爲它需要管理員權限來安排一個任務。你需要使用你的安裝程序。
如何被應用最初安裝?嘗試更新時(管理員或非管理員帳戶)運行程序的帳戶是什麼? – 2010-03-16 01:17:25
該應用程序最初是使用MSI安裝的,它提供了正確的UAC提示。我嘗試使用管理員帳戶運行應用程序(儘管不是「作爲管理員運行」),並且它不會引發UAC提示。 「以管理員身份運行」使其可行,但我不希望我的用戶這樣做。 – 2010-03-18 02:41:02