2015-04-19 67 views
-1

我寫了一個小程序,並增加了安裝盾構工程。在C:\ Program Files文件中安裝應用程序後,我可以以管理員身份運行而不會出現任何問題。但是,當我運行它沒有管理員權限,它給了我這個錯誤:如何修復未處理的異常錯誤

未處理的異常發生在您的應用程序。如果您單擊繼續,應用程序將忽略此錯誤並嘗試繼續。如果您單擊退出,應用程序將立即關閉。 操作必須使用不可查詢的查詢

我該如何解決這個問題?

回答

0

你有沒有考慮你的安裝有以管理員身份運行一個隱含的依賴。例如,用戶通常可以對「C:\ Program Files」進行寫入訪問,這可以防止行爲異常的程序對您的應用程序進行未經授權的更改。

0

一種可能是您的應用程序試圖訪問某些文件在C:\Program Files目錄要做到這一點,你必須有管理員權限。但很難說。您可以嘗試調試您的應用程序並查看它是否引發異常和調試模式。如果它發生,你可以從那裏進行調查。其他選項是添加一些異常處理(try..catch塊)並將所有拋出的異常記錄到文件中。在非管理員模式下運行應用程序後,您可以檢查文件以獲取詳細信息。

+0

是的,我在正常模式下編譯程序它的工作真的,連我自己複製安裝文件,其他文件夾中安裝文件夾而不是,它真正做到在正常模式下工作,但安裝文件夾中它不工作 – MojtabaSh

+0

然後我會嘗試記錄異常並嘗試從那裏調查它。不幸的是,您的問題非常籠統,因此很難指出您的具體方向。我只能提出上面提到的策略。 – PiotrWolkowski

+0

如果您的要求是有限的用戶可以運行您的應用程序,那麼您更新的每個文件和註冊表項必須位於受限用戶可以更新的區域。該PROGRAMFILES文件夾(其中不幸的人往往存儲數據的文件)是不是那些地方之一 - 有一個叫用戶對於應用程序數據文件夾中的文件夾位置,顧名思義,AppDataFolder或LocalAppDataFolder在MSI世界。如果您的要求是您需要成爲管理員才能運行該應用程序,請爲其提供一個提升清單,以便以通常的方式請求管理員權限。 – PhilDW