簡體   English   中英

VS2008,Windows Mobile Installer項目

[英]VS2008, Windows Mobile Installer project

我正在使用Visual Studio 2008專業版。 我為Windows Mobile編寫了一個應用程序,我想為此應用程序創建安裝程序。 它是怎么做的?

您需要將應用程序打包在CAB文件中。

要做到這一點非常簡單 - 您只需創建一個新的“智能設備CAB項目”(New Projet->其他項目類型 - >設置和部署)。

首先 - 指定您希望應用程序的exe項目的輸出與任何其他相關的dll一起進入應用程序目錄。

您可能還需要通過右鍵單擊目標計算機上的文件系統,選擇添加特殊文件夾 - >開始菜單文件夾,然后在開始菜單文件夾中再次右鍵單擊並選擇創建新快捷方式,為應用程序創建一個圖標。 現在將此快捷方式指向應用程序的exe。

根據項目的要求,可能還需要創建一個桌面安裝程序(msi文件),用戶可以直接在其Windows PC上運行該安裝程序,指示ActiveSync在下次插入Windows Mobile設備時自動安裝cab文件基本上,這是通過從命令行調用ActiveSync(CeAppMgr.exe)並向其傳遞引用cab文件的ini文件來完成的。

如果您在安裝過程中需要執行其他更復雜的操作,還可以編寫“自定義操作”,其中cab文件調用另一個dll(由您編寫)以執行安裝期間需要執行的任何其他步驟。

這里提供了上述所有內容的綜合指南

Mobile Packager (www.MobilePackager.com)等工具也可用於為Windows Mobile創建安裝包。 它允許您創建非常光滑的安裝程序,以便通過桌面或設備安裝進行安裝。

移動打包器設備安裝
(來源: mobilepackager.com

看看這個

http://msdn.microsoft.com/en-us/library/bb158729.aspx

在這里,您可以找到解決問題的方法。 此外,還有一些軟件可以直接在VS2008環境之外創建CAB文件,但我嘗試過的所有軟件都是令人討厭且很省錢的。

我自己的經驗是,創建在Windows下運行的安裝文件的時間過於昂貴(除非您只是在討論創建輸出CAB的安裝項目,這需要針對.NET框架的其他設置過程,並且只能在您的WM中運行)機)。

“官方”過程包括生成CAB文件,使您的CAB文件“自動運行”的附加DLL,以及安裝該DLL的其他安裝項目。

如果您這樣做,請參閱此處: http//msdn.microsoft.com/en-us/library/bb158529.aspx

經過幾天的掙扎,我決定購買商業產品來自動創建安裝文件。 我購買的那個名為“PocketPC Installer Professional”(因為我與這個商業產品無關)。 生成的設置與通常的Windows軟件設置看起來並不相似,但至少它可以工作並且需要更少的工作量。

以下是InnoSetup(帶預處理器)腳本的一個非常基本的示例,用於為Windows移動設備創建桌面安裝程序。 您必須已經創建了CAB並且為此編寫了.ini才能正常工作。

#define AppName "Your Software"
#define AppPublisher "Your Name Here"
#define ExeName "Your Software.exe"
#define UnixName "YourSoftware"
#define Short "YS"
#define Version "1.0"

[Setup]
AppName={#AppName}
AppVerName={#AppName} {#Version}
AppPublisher={#AppPublisher}
DefaultDirName={pf}\{#AppName}
DefaultGroupName={#AppName}
AllowNoIcons=yes
LicenseFile=license.rtf
OutputDir=//
OutputBaseFilename={#Short}_{#Version}_Setup
SetupIconFile=Icons\{#UnixName}.ico
Compression=lzma
SolidCompression=yes

[Languages]
Name: english; MessagesFile: compiler:Default.isl

[Tasks]
Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked
Name: quicklaunchicon; Description: {cm:CreateQuickLaunchIcon}; GroupDescription: {cm:AdditionalIcons}; Flags: unchecked

[Registry]
Root: HKLM; Subkey: Software\{#Short}; ValueType: string; ValueName: Version; ValueData: {#Version}; Flags: uninsdeletekey

[Files]
Source: license.rtf; DestDir: {app}; Flags: ignoreversion
Source: {#UnixName}_{#Version}_Setup.CAB; DestDir: {app}; Flags: ignoreversion
Source: {#UnixName}_{#Version}_Setup.ini; DestDir: {app}; Flags: ignoreversion

[Icons]
Name: {group}\{#AppName}; Filename: {app}\{#ExeName}
Name: {group}\{cm:UninstallProgram,{#AppName}}; Filename: {uninstallexe}
Name: {userdesktop}\{#AppName}; Filename: {app}\{#ExeName}; Tasks: desktopicon
Name: {userappdata}\Microsoft\Internet Explorer\Quick Launch\{#AppName}; Filename: {app}\{#ExeName}; Tasks: quicklaunchicon

[Run]
Filename: "{pf64}\Microsoft ActiveSync\CEAPPMGR.EXE"; Parameters: ""{app}\{#UnixName}_{#Version}_Setup.ini""; Check: Is64BitInstallMode; WorkingDir: {app}
Filename: "{pf32}\Microsoft ActiveSync\CEAPPMGR.EXE"; Parameters: ""{app}\{#UnixName}_{#Version}_Setup.ini""; Check: not Is64BitInstallMode; WorkingDir: {app}

謝謝回復。 我找到了這個教程: 安裝程序


最好的: Satellite Forms KnowledgeBase

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM