Windows Installer 目前出到5.0 版
Windows Installer 用來安裝/管理/更新/升級/移除 所安裝的套裝軟體(msi package)
支援
- component management.
- advertisement of applications and features ?
- dual-purpose package ( Windows Installer 5.0 )
- least privilege installation by proxy for unprivileged users ?
//===
Key path or Key file 的觀念比較像資料庫的key
用來判斷一個component 是否有更新或異動
可以用Orca.exe 來檢視 msi 的內容
//=== Dual-purpose package
Windows Installer 5.0 允許在一個 msi package 中同時支援 perUser 與 perMachine的安裝機制
這樣的 msi package 稱做 dual-purpose package ;
這個機制則有一個令我混淆的名稱: single package authoring
Dual-purpose package 可以在 Windows 7 與 Windows Server 2008 R2 , 用Windows Installer 5.0 安裝,
Vista 以前的作業系統呢? Windows Installer 4.5以前的版本呢?
Per-user installation context: 當Windows Installer 5.0 安裝一個 dual-purpose package 時 , 檔案與登錄(registry entries) 指到 per-user 的位置, 不會觸發 UAC credential prompt
Per-machine installation context: 當Windows Installer 5.0 安裝一個 dual-purpose package 時 , 檔案與登錄(registry entries) 指到 per-machine的位置, 會觸發 UAC credential prompt 以確認使用者是否有足夠的權限
*** 用Windows Installer 4.5及以前的Installer 安裝 dual-purpose package 時
Installer 將忽略 MSIINSTALLPERUSER , 進入per-machine installation context
並觸發 UAC credential prompt ...
並觸發 UAC credential prompt ...
//===
" ... Once Windows Installer 5.0 installs an application, it uses the same installation context for all subsequent updates, repairs, or removal of the application."
A valid dual-purpose package must be able to pass validation by ICE105.
//=== dual-purpose package development guideline and example
...
[ref]
http://en.wikipedia.org/wiki/Windows_Installer#Key_paths
http://msdn.microsoft.com/en-us/library/cc185688(v=vs.85).aspx
dual-purpose msi package
http://msdn.microsoft.com/en-us/library/dd408068(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/dd770204(v=vs.85).aspx (example)
~~~
沒有留言:
張貼留言