天天看點

win7下程式運作權限問題解決方案

今天遇見一個win7下程式運作權限問題(需要對目錄下檔案有讀寫權限):網上google下得到解決方案有,現記錄下:

   windows 7和vista提高的系統的安全性,同時需要明确指定“以管理者身份運作”才可賦予被運作軟體比較進階的權限,比如通路系統資料庫等。否則,當以普通身份運作的程式需要通路較進階的系統資源時,将會抛出異常。

  如何讓程式在啟動時,自動要求“管理者”權限了,我們隻需要修改app.manifest檔案中的配置項即可。

  app.manifest檔案預設是不存在的,我們可以通過以下操作來自動添加該檔案。

(1)進入項目屬性頁。

(2)選擇“安全性”欄目。

(3)将“啟用ClickOnce安全設定”勾選上。

  現在,在Properties目錄下就自動生成了app.manifest檔案,打開該檔案,将trustInfo/security/requestedPrivileges節點的requestedExecutionLevel的level的值修改為requireAdministrator即可。如下所示:

      <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">

         <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

      </requestedPrivileges>

  記住,如果不需要ClickOnce,可以回到項目屬性頁将“啟用ClickOnce安全設定”不勾選。   

  接下來,重新編譯你的程式就OK了。

  可以把檔案的安裝路徑預設在非系統目錄下,如d:\sorftwarename\等。或者醬程式和讀寫資料分開,讀寫資料檔案放在我的檔案下等,避開檔案通路讀寫權限,避開program files目錄。像google德Chrome就是檔案直接預設(不能改動)安裝在AppData下。

本文轉自破狼部落格園部落格,原文連結:http://www.cnblogs.com/whitewolf/archive/2011/02/26/1965824.html,如需轉載請自行聯系原作者

繼續閱讀