
| 語言: | Visual C++ |
| 版本: | 3.0.3 |
| 发布于: | 2007年2月12日 |
| 作者: | IC Imaging Control 技術支持部 |
| 需求: | IC Imaging Control >3.0.3 |
| |
"Innosetup"是一款免費軟件,您可以使用它生成一個 IC Imaging Control 程序的安裝文件。 其下載地址 http://www.jrsoftware.org/. 只需一個簡單的腳本文件,Innosetup就可生成安裝文件所需的所有文檔。
本例以 "Demoapp" 程序為例,創建一個安裝文件、並將其保存在samples\vc71\demoapp目錄中。 腳本文件simplesetup.iss也將被保存在該文件夾中。 編譯后的程序 demoapp.exe 將被寫入 IC Imaging Control 安裝路徑中的 classlib\release目錄。
IC Imaging Control 的 runtime 文件都在classlib\release目錄中。 此外,我們還需要在 IC Imaging Control 目錄中創建一個叫system的目錄,用於存放 MFC runtime DLLs 和 Directshow Filters。
在建立 system 目錄後,從Windows\System32 文件夾中拷貝下列文件至system:
下面是安裝文件的腳本,其中包括一些關於這個程序的大致信息。 您可以自己編輯這個文件,也可以通過Innosetup wizard 自動生成這個文件。
[Setup]
AppName=DemoApp
AppVerName=DemoApp 1.0
AppPublisher=The Imaging Source Europe GmbH
AppPublisherURL=http://www.imagingcontrol.com
AppSupportURL=http://www.imagingcontrol.com
AppUpdatesURL=http://www.imagingcontrol.com
DefaultDirName={pf}\DemoApp
DefaultGroupName=DemoApp
OutputBaseFilename=setup
Compression=lzma
SolidCompression=yes
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
這個程序應該被安裝在操作系統的程序目錄中(e.g. C:\Program Files)。 在腳本文件中,{pf}即代表程序目錄。 安裝文件還應該在程序目錄中新建一個子文件夾Demoapp,用於安裝示例程序。
下面是 [Files] 部分。 所有需要拷貝的文件都列於此處, 當系統把這些文件拷貝至目標文件夾時,將按照它們在下面被列出的順序進行。 {app}即代表示例程序的目錄。
[Files]
Source: "..\..\..\classlib\release\DemoApp_vc7.exe"; DestDir: "{app}"; Flags: ignoreversion
; The Dialogs.dll is only needed for the demoapp.
Source: "..\..\..\classlib\release\Dialogs.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\..\..\classlib\release\TIS_UDSHL07_vc71.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\..\..\classlib\release\TIS_DShowLib07_vc71.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\..\..\classlib\release\ICFilterContainer.dll"; DestDir: "{app}"; Flags: ignoreversion
; Use all video capture device adapers
Source: "..\..\..\classlib\release\*.vda"; DestDir: "{app}"; Flags: ignoreversion
; Use all codec adapters
Source: "..\..\..\classlib\release\*.tca"; DestDir: "{app}"; Flags: ignoreversion
; If frame filters are needed, uncommend the following line
;Source: "..\..\..\classlib\release\*.ftf"; DestDir: "{app}"; Flags: ignoreversion
在您為自己的程序制作安裝文件時,只需把文件名 DemoApp_vc7.exe 更改為您編寫的程序的名稱即可。
MFC runtime DLLs 和 IC Imaging Control DirectShow filters 都將被復制到 客戶計算機的 Windows\System32 目錄中,{sys}表示該目錄。 此外,所有 filters 都必須註冊。 而這項工作由 regserver 完成。
; System files as DirectShow Filters and MFC Runtime files.
Source: "..\..\..\system\MFC71.dll"; DestDir: "{sys}"; Flags: sharedfile
Source: "..\..\..\system\Msvcp71.dll"; DestDir: "{sys}"; Flags: sharedfile
Source: "..\..\..\system\Msvcr71.dll"; DestDir: "{sys}"; Flags: sharedfile
; The DirectShow filters are to be registered. These files are copied a last files.
Source: "..\..\..\system\iat_yuv.ax"; DestDir: "{sys}"; Flags: regserver sharedfile replacesameversion
Source: "..\..\..\system\debayertransform.dll"; DestDir: "{sys}"; Flags: regserver sharedfile replacesameversion
腳本文件的其余部分用於控制該程序在Windows中的顯示方式。
[Icons]
Name: "{group}\DemoApp"; Filename: "{app}\DemoApp_vc7.exe"
Name: "{userdesktop}\DemoApp"; Filename: "{app}\DemoApp_vc7.exe"; Tasks: desktopicon
[Run]
Filename: "{app}\DemoApp_vc7.exe"; Description: "{cm:LaunchProgram,DemoApp}"; Flags: nowait postinstall skipifsilent
在腳本中,只需將 \DemoApp_vc7.exe 更換為您編寫的程序名稱即可。
責任聲明
IC Imaging Control源代碼庫中的所有代碼均只用於教學目的,The Imaging Source Europe GmbH作為IC Imaging Control的開發製造商,不對任何由於使用本文或其中源代碼所產生的後果承擔責任。