繁体   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