簡體   English   中英

需要在Program File文件夾中寫入的自更新.NET客戶端應用程序

[英]Self-Updating .NET client application which needs to write in the Program File folder

類似於: 如果路徑受到保護,請求Windows Vista UAC提升?

我在c:\\ Program Files(Windows Vista)中安裝了.NET客戶端應用程序。 此應用程序應自行更新,但不會因為權限問題而更新。 自動更新程序應該只是替換幾個程序集,但它們都位於c:\\ Program File下,應用程序拋出以下異常:

System.UnauthorizedAccessException:拒絕訪問路徑“C:\\ Program Files ...”。

我無法控制應用程序的安裝位置和權限。 這有什么解決方法嗎? 是否可以在幾秒鍾內請求管理員權限? 是否可以彈出UAC窗口? 我很確定有一個解決方法......否則,Firefox將如何更新自己?

在此先感謝您的幫助和想法!

你能使用Click Once部署方法嗎? 我們將此用於內部應用程序,用戶在發布新版本時沒有權限問題。 系統會提示他們在啟動應用程序時安裝更新(如果存在新版本),並且安裝順利進行。

您無法在中途提升流程的權限,但您可以啟動另一個具有更高權限的單獨流程,以便為您完成工作。

讓您的主應用程序將所有文件/安裝詳細信息放入一個低權限的臨時位置。 准備好后,啟動一個較小的應用程序,其唯一的工作是將這些文件復制到Program Files目錄(並可能使用新的更新重新啟動主應用程序)。 將該應用程序標記為需要復制到Program Files目錄所需的權限或寫入注冊表(或其他任何需要的內容)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM