none
Application.StartUpPath 無法使用 RRS feed

  • 問題

  • 我將我的程式用安裝精靈製成安裝檔

    我的主程式是直接加入檔案的,而不是加入主要輸出

    但我使用Application.StartUpPath來刪除我自己的檔案時就會有問題

    出現的錯誤訊息是「拒絕存取」

    如果用Environment.CurrentDirectory就沒有這個問題,但會在使用者的桌面上存取檔案(因我有捷徑在使用者的桌面)

    請問該如何解決呢?

    我系統已經是最高權限了

    我連複製一個檔案到Program Files安裝目錄下的資料夾都要經過「以系統管理者的權限來執行」才能複製

    如果把程式於安裝精靈設為「主要輸出」是不是就會沒有問題??

    2010年8月5日 上午 05:19

解答

  • 感謝您!!

    如果使用「My.Computer.FileSystem.SpecialDirectories.CurrentUserApplicationData」來暫存資料是不是就不用考慮到權限和UAC的問題呢?


    理論上是, 但有沒有例外不瞭解, 因為我沒用過.

    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。
    • 已標示為解答 GG Timmy 2010年8月5日 上午 07:58
    2010年8月5日 上午 07:08
    版主

所有回覆

  • (1) 哪個版本的Visual Studio ?

    (2) manifest 的設定內容 ?

    (3) 在Windows Vista/7/2008 下, 某些目錄是要受UAC控制的, ex: program files, windows

     


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。
    2010年8月5日 上午 05:37
    版主
  • 1.Visual Studio 2008 Professional

    2.manifest是什麼?

    3.如果說被UAC控制住了那要怎樣解決這個問題??

    2010年8月5日 上午 06:23
  • 關於UAC請參考 MSDN文件庫

    [UAC 如何運作 ]

    [使用者帳戶控制 (UAC) 如何影響應用程式 ]

    先前有一篇關於修改manifest的討論,

    http://social.msdn.microsoft.com/Forums/zh-TW/242/thread/3eed4adf-8fe0-4424-8432-4b9c3d4dfa7e


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。
    2010年8月5日 上午 06:40
    版主
  • 感謝您!!

    如果使用「My.Computer.FileSystem.SpecialDirectories.CurrentUserApplicationData」來暫存資料是不是就不用考慮到權限和UAC的問題呢?

    2010年8月5日 上午 06:59
  • 感謝您!!

    如果使用「My.Computer.FileSystem.SpecialDirectories.CurrentUserApplicationData」來暫存資料是不是就不用考慮到權限和UAC的問題呢?


    理論上是, 但有沒有例外不瞭解, 因為我沒用過.

    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。
    • 已標示為解答 GG Timmy 2010年8月5日 上午 07:58
    2010年8月5日 上午 07:08
    版主
  • 不是不受 UAC 限制,而是 UAC 模擬的是 Users 權限,所以只要那個目錄有 Users 權限可存取即可。

    所以一般採用使用者共用目錄或目前使用者目錄,這些目錄預設是 Users 權限或是使用者自己本身權限。

    使用者共用目錄:

    Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    2010年8月5日 下午 03:25
  • 補充:

    所以有例外的情形就是你自己把目錄權限亂調,或是安裝多個作業系統導致權限錯亂。


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    提問時,錯誤情境描述與錯誤訊息很重要,情境描述包含你做了什麼,預期的結果與實際發生的結果。一個最爛的問法範例:「我的電腦電腦怎麼不能開機?」誰知道你家是不是沒電還是你根本找不到電源鈕。
    2010年8月5日 下午 03:26