我有一個包含EXE,ActiveX控件(DLL)和COM服務器(EXE)的Win32應用程序,我使用Inno Setup 5構建我的安裝程序。我們的許多客戶使用有限的用戶帳戶,其中用戶沒有管理權限,並且由於COM組件需要註冊(寫入HKEY_CLASSES_ROOT),我的安裝文件必須以高級(管理員)權限運行。我認爲這是不可避免的(可惜,我不能使用免註冊的COM,因爲我有EXE COM服務器)。但是,我想創建一個可以作爲有限用戶運行的更新安裝程序,並且正在尋找一些建議。Windows受限用戶安裝
我在想什麼如下:
- 初始設置(首次安裝)將應用程序安裝到%ALLUSERSPROFILE%\應用數據\公司名稱\ AppName的而非%PROGRAMFILES%。 COM組件被正常註冊(因爲它們不會已經存在)。
- 後續更新(使用不同的Inno Setup腳本)將簡單地將新文件複製到%ALLUSERSPROFILE%\ Application Data \ CompanyName \ AppName中。希望即使是有限的用戶也可以對這個文件夾擁有寫入權限,並且由於COM組件已經被註冊,所以不需要管理員訪問權限。
這意味着我的客戶可以升級到最新和最好的版本,而無需使用管理員帳戶的麻煩。這是可以接受的還是這可能咬我的背面?我非常確定谷歌瀏覽器做了類似的事情,但是因爲它沒有COM組件(據我所知),即使最初的設置可以作爲一個有限的用戶。
任何來自其他人面對此問題的建議都會非常受歡迎。
我想你可能會到一些信息 – Rob 2009-09-18 13:16:59