我剛剛注意到Chromium安裝在Vista和XP的AppData中。如果谷歌這樣做,如果其他應用程序這樣做,比那是因爲有某種形式的保護?我們應該編寫與Google完全相同的安裝程序嗎?在像Google Chrome這樣的AppData中安裝程序有什麼好處?
回答
對於每個用戶的安裝,Windows仍然缺少一個約定。
- 當安裝程序詢問是爲當前用戶安裝還是爲所有用戶安裝時,它實際上只是指快捷方式放置(開始菜單;桌面)。實際的應用程序文件仍在系統範圍
%PROGRAMFILES%
中。 - 微軟自己的ClickOnce通過創建一個完全非標準的
%USERPROFILE%\Local Settings\Apps
(在Vista/Server 2008上的目錄爲%USERPROFILE%\AppData\Roaming
)來解決這個問題,其中包含程序文件和配置數據。
(我茫然爲什麼微軟無法在Vista中增加每個用戶的Program Files目錄。舉例來說,在OS X,你可以創建一個,和Finder將給予適當的。圖標應用程序,如交叉和Adobe AIR的自動使用,默認爲每個用戶的應用程序。因此,沒有權限問題)
什麼你可能應該信息:。如果用戶是不是管理員,安裝在用戶目錄;如果他們這樣做,給他們兩個選項。
據我所知,Chrome安裝到Application Data文件夾的唯一原因是非管理員用戶可以安裝它。
Chrome安裝程序目前不允許用戶選擇安裝應用程序的位置。不要那樣做 - 而是讓用戶在每個用戶(應用程序數據的某處)和計算機範圍(程序文件)安裝之間進行選擇。
我同意 - 給用戶一個選擇。 Chrome因此被禁止在我們公司使用。 – 2008-10-26 05:22:53
除了每個用戶,Chrome安裝程序確實應該允許全局安裝(使用高程)。我不想爲每個用戶維護一個安裝;我希望能夠集中管理升級等。 Chrome不允許這樣做。
也就是說,安裝每個用戶的選項非常好,因爲它意味着沒有權限問題。
坦率地說,我還沒有看到真正允許每個用戶和每臺機器安裝的第一個安裝程序。許多安裝程序在其GUI中提供此選項,但該設置僅影響快捷方式等的位置 - 二進制文件始終顯示在%ProgramFiles%中。
事實上,要創建允許兩種安裝的Windows Installer程序包都相當困難。隨着UAC的出現,我認爲這是不可能的:每個用戶的安裝必須不需要提升,每臺機器必須安裝。但是,MSI軟件包是否需要提升才能通過摘要信息流中的某個位進行控制 - 用戶輸入無法對此產生影響。
無論是每個用戶還是每臺機器都是更好的選擇,極大地影響了應用程序。然而,對於小包裝來說,我更喜歡每個用戶的安裝。除了由於不需要UAC提示或跑馬燈而略微更加用戶友好之外,它們還向用戶表明該設置不會對計算機造成太大傷害(假設他是非管理員)。
Windows 7和Windows Installer 5.0現在提供真正的每用戶安裝功能。
http://msdn.microsoft.com/en-us/library/dd408068%28VS.85%29.aspx
您可以排序的使用〜/應用程序數據/本地或等值喜歡Chrome並捏造它在Vista和XP。微軟自己將它用於ClickOnce安裝程序。
因此,至少在Windows 7及更高版本上解決方案很簡單。
沒有人提到的一個優點是無聲自動更新。 Chrome有一個可以隨時運行的更新程序,並立即更新您的Chrome安裝。
我認爲他們的用例是非標準的。他們需要儘快修復漏洞問題(因爲它是瀏覽器)。等待管理員批准公司範圍內的每一次更新,都不夠好。
大家都知道,Google已經爲全球系統安裝和管理創建了一個MSI安裝程序。它位於在這裏:
我沒有看到Win7上到%ProgramFiles%什麼。看起來Chrome必須爲機器上的每個用戶安裝。
也許這樣做的真正原因是僞造了幾次Chrome安裝!因此使它成爲世界上第一個瀏覽器!
- 1. 這樣的課有什麼好處嗎?
- 2. 在WildFly中作爲模塊安裝JDBC驅動程序有什麼好處
- 3. 如何爲我的應用程序創建像Google Chrome一樣的安裝?
- 4. 在像SQL這樣的數據庫中存儲數據有什麼好處?
- 5. 在heroku上爲我的django應用程序安裝gunicorn有什麼好處?
- 6. 什麼樣的安裝程序使用Microsoft安裝Visual Studio 2010
- 7. NSIS安裝程序腳本中的AppData的環境變量是什麼?
- 8. Google和Microsoft在AppData文件夾中安裝應用程序,爲什麼不是我?
- 9. 在eclipse上安裝jdt有什麼好處?
- 10. 在本地或全球安裝Express.js有什麼好處
- 11. 協程有什麼好處?
- 12. 定義這樣的類有什麼好處?
- 13. 從源代碼安裝Python 2.7安裝程序的好處
- 14. 什麼是在pygame中像這樣分層的好方法?
- 15. 爲什麼WNDCLASS(Windows-C)安裝和使用像這樣?
- 16. 像Google Play一樣無聲安裝Android應用程序
- 17. 這個重構有什麼好處嗎?
- 18. 這個Apache安裝程序有什麼問題?
- 19. 這樣寫jQuery onload函數有什麼好處嗎?
- 20. 像銀行網站登錄一樣,安全圖像的好處是什麼?
- 21. 自封裝有什麼好處?
- 22. 安裝Chrome驅動程序
- 23. 爲什麼anaconda安裝程序沒有安裝conda-develop
- 24. 在JavaScript中,在IIFE中包裝僞類有什麼好處?
- 25. 在Rails應用程序中使用葡萄有什麼好處?
- 26. 在Web應用程序中使用EJB有什麼好處?
- 27. Google Chrome自動安裝背後的JavaScript技巧是什麼?
- 28. 什麼是一些好的Windows安裝程序?
- 29. 爲什麼這個處理程序不適用於Chrome?
- 30. 在Program Files和Appdata中安裝
有趣的是,您應該提到Adobe AIR,因爲其應用程序安裝程序系統在Windows上已損壞,但不支持OSX和Linux。在Windows上,AIR安裝程序被鎖定爲「爲所有用戶安裝」,實際上需要管理權限來安裝和升級AIR應用程序。 – bzlm 2009-05-06 15:17:51