2010-04-23 181 views
4

當用戶在他/她的計算機上擁有受限制的權限並運行我的Inno Setup安裝程序時,Windows將彈出管理員登錄提示。爲其他用戶安裝Inno Setup

問題是,當管理員鍵入他/她的用戶名和密碼並登錄時,Inno安裝程序認爲他或她是登錄用戶,併爲該用戶安裝我的應用程序,而不是原來的用戶。 (我正在安裝{userappdata}目錄中的文件)

有沒有辦法克服這個限制併爲原始限制用戶安裝?

回答

2

指定PrivilegesRequired = none並構建您的腳本以使用或不使用管理員權限。在這裏看到更多的細節:
http://www.kinook.com/blog/?p=53

+0

這是一個不行。微軟本身建議將你的應用程序放置在PF中,並且絕對不在appdata中。不要談論註冊COM Dll和類似的東西。 這個問題必須有一個簡單的解決方法,我懷疑作者沒有考慮到它...... – Steve 2010-04-26 17:13:13

+0

如果用戶沒有管理員權限,這是唯一的方法。 – 2010-04-26 18:48:54

+0

由於這是我親自安裝的應用程序,管理員權限始終存在於系統管理員的授權範圍內。問題是該程序是在他/她登錄後爲系統管理員安裝的。必須有另一種方法來做到這一點... – Steve 2010-04-27 08:41:31

4

你可以考慮的一件事是安裝所有東西到PF首先。然後當應用程序第一次執行時,將PF中的某些內容複製到{userappdata}。

由於用戶可以執行該應用程序,因此我們確信可以將PF所需的文件成功複製到{userappdata}。

+1

這是一個好方法。我可能更喜歡{commonfdata}超過{pf}模板,但這可能只是一個品味問題。 從原則上避免從安裝程序向用戶指定區域寫入任何內容可以讓您免受許多麻煩。 – 2010-06-14 09:00:14