2013年3月15日 星期五

淺談INF檔

在IE安裝ActiveX時,需要編寫INF檔來做相關ActiveX安裝時的設定
而安裝的方式有三種, [Add.Code] , [Setup Hooks] 以及 [DefaultInstall]

[Add.Code]--直接安裝ActiveX元件到 Windows目錄下的"Download Program Files"目錄
[version]
signature="$CHICAGO$"
AdvancedINF=2.0

[Add.Code]
IPSFilter4.ax  = IPSFilter4.ax
IPSViewer4.ocx  = IPSViewer4.ocx

[IPSFilter4.ax]
file-win32-x86=thiscab
; *** add your controls CLSID here ***
clsid={543DAD91-B0F3-4564-B860-D22F935674EF}
FileVersion=4,0,3,1
RegisterServer=yes

[IPSViewer4.ocx]
file-win32-x86=thiscab
; *** add your controls CLSID here ***
clsid={92952D7F-1180-43EC-958E-01C1BDC49718}
FileVersion=4,0,3,1
RegisterServer=yes



[Setup Hooks]--執行程式安裝,適合用MSI檔安裝的ActiveX
[version]
signature="$CHICAGO$"
AdvancedINF=2.0

[Setup Hooks]
install=install

[install]
run="""%EXTRACT_DIR%\setup.exe""" /package """%EXTRACT_DIR%\IPSViewer4.msi""" /qn

[DefaultInstall]--自行決定複製的路徑以及註冊ActiveX元件,適合多檔安裝
[version]
signature="$CHICAGO$"
AdvancedINF=2.0

[DefaultInstall]
CopyFiles=FileList1 
RegisterOCXs=RegisterOCXSection

[DestinationDirs]
FileList1=11,ips4

[FileList1]
IPSFilter4.ax  = IPSFilter4.ax
IPSViewer4.ocx  = IPSViewer4.ocx
imdib802.DLL  = imdib802.DLL
PanoHW.DLL  = PanoHW.DLL
SDKCFG_003908.dll = SDKCFG_003908.dll
PanoGSDK_003908.dll = PanoGSDK_003908.dll
Pano360API_003908_MIN.DLL = Pano360API_003908_MIN.DLL
Pano360_003908.r = Pano360_003908.r
PanoConfigure_003908.r = PanoConfigure_003908.r

[imdib802.dll]
file-win32-x86=thiscab
FileVersion=1,0,0,1

[Pano360API_003908_MIN.dll]
file-win32-x86=thiscab
FileVersion=3.0.0.32494

[PanoGSDK_003908.dll]
file-win32-x86=thiscab
FileVersion=3.0.0.32494

[PanoHW.dll]
file-win32-x86=thiscab
FileVersion=3.0.0.32494

[SDKCFG_003908.dll]
file-win32-x86=thiscab
FileVersion=3.0.0.32494

[Pano360_003908.r]
file-win32-x86=thiscab

[PanoConfigure_003908.r]
file-win32-x86=thiscab

[IPSFilter4.ax]
file-win32-x86=thiscab
; *** add your controls CLSID here ***
clsid={543DAD91-B0F3-4564-B860-D22F935674EF}
FileVersion=4,0,4,1
RegisterServer=yes

[IPSViewer4.ocx]
file-win32-x86=thiscab
; *** add your controls CLSID here ***
clsid={92952D7F-1180-43EC-958E-01C1BDC49718}
FileVersion=4,0,4,1
RegisterServer=yes

[RegisterOCXSection] 
"%11%\ips4\IPSFilter4.ax"  
"%11%\ips4\IPSViewer4.ocx"

其他參考網頁
如何撰寫一個簡單的INF檔
MSDN-.inf 檔案
如何编写 INF 文件
MSDN-Using INF Files
MSDN-INF Sections
MSDN-Internet Component Download

沒有留言:

張貼留言