应用程序签名(设备)

更新:2007 年 11 月

移动运营商或者设备制造商提供的大多数 Windows Mobile 设备都预先配置了一些安全设置,这些设置限制未签名应用程序的执行与未签名 CAB 文件的安装。为使应用程序能够运行,必须使用安装在最终用户设备上的证书对应用程序进行签名。

如何对设备应用程序进行签名

若要对应用程序进行签名,必须对组成该应用程序的所有 EXE、托管程序集、DLL、CAB 和 MUI(多语言用户界面)文件进行签名。若要以图形方式查看如何在设备项目中进行签名,请参见设备签名过程的图形化流程图。下列主题解释了如何对设备应用程序进行签名:

对应用程序进行签名以便完成日常开发工作

如果您在一个设备上开发应用程序,而该设备的安全设置的限制性比最终用户的设置低,那么您可能不会与最终用户遇到相同的安全警告或错误。因此,最好在启用安全设置的设备上开发应用程序,以此来模拟最终用户的安全环境。为此,请使用 Visual Studio 开发证书对设备应用程序进行签名,并将该证书安装到您的开发设备或仿真程序上。采用这一在开发阶段使用开发证书签名的过程,有助于改善最终用户的体验。Visual Studio 中包含用于日常开发工作的证书以及一个证书安装工具。

在设备上安装所需的证书

  1. 使用任何可用的连接机制连接到设备。

  2. 将 VSDCerts.cab 从开发计算机复制到设备。

    默认情况下,VSDCERTS.cab 位于 驱动器:\Program Files\Microsoft Visual Studio 9.0\SmartDevices\SDK\SDKTools 下。

  3. 在设备上,解压缩 VSDCerts.cab 以安装证书。

对应用程序进行签名以便发布

SDK 证书仅用于开发或测试。最终用户的设备上不会安装 SDK 证书。因此,当应用程序准备好发布时,必须使用用户设备上的证书对其进行签名。所有 OEM 和移动运营商在其目前交付的设备中都附带了 Mobile2Market 非特权证书。大多数 OEM 和移动运营商还附带了 Mobile2Market 特权证书。因此,除非您的应用程序必须作为受信任的应用程序在不具有 Mobile2Market 特权证书的设备上运行,否则您应该使用其中一种 Mobile2Market 证书对应用程序进行签名。有关 Mobile2Market 计划的更多信息,请参见“Windows Mobile Developer Center”(Windows 移动开发人员中心)中的 Mobile2Market: Code Signing for Windows Mobile Applications(Mobile2Market:Windows Mobile 应用程序的代码签名)。

若要在不具有 Mobile2Market 特权证书的设备上运行应用程序,必须请求 OEM 或移动运营商对应用程序进行签名。

说明:

如果设备安全配置要求对二进制文件进行签名,而应用程序二进制文件未签名,则应用程序不会运行。有关安全配置的更多信息,请参见配置 Windows Mobile 设备的安全

请参见

其他资源

设备项目中的安全性

打包设备解决方案以便进行部署