如何:在全局程序集缓存中安装程序集
更新:2007 年 11 月
全局程序集缓存在 .NET Compact Framework 中的运行方式与 .NET Framework 全功能版中没有差别。
将资源文件(如 DLL)安装到全局程序集缓存中
将资源文件放到设备上的某个目录中。
创建一个文本文件,其中每行列出一个文件及其路径。
以 .gac 扩展名将该文本文件保存到设备的 Windows 目录中。
程序集文件可以是 ANSI 或 UTF-8 编码文件,但不支持其他 Unicode 编码。
以下是一个 MyDlls.gac 示例,它列出了三个要安装到全局程序集缓存中的文件:
\Program Files\MyApp\MyDll1.Dll
\Program Files\MyApp\MyDll2.Dll
\Program Files\MyApp\MyDll3.Dll
下次运行应用程序时,.NET Compact Framework 会将您在 .gac 文本文件中列出的文件移动到全局程序集缓存中。这些文件必须用强名称签名。目前不支持延迟签名。对 .gac 文本文件的任何更改将导致以下结果:
如果从 Windows 目录中删除 .gac 文本文件,则下次运行应用程序时将从全局程序集缓存中移除该文本文件中列出的文件。
如果更新 .gac 文本文件,则 .NET Compact Framework 将在全局程序集缓存中相应地更新该文件。
不能使用同一名称加载各个程序集。您必须更改 DLL 的名称,或在 DLL 具有强名称时,可将其放入全局程序集缓存中并使用具有完整强名称的 Load 方法。
通过在桌面上打开命令行和使用 sn –V myAssembly.dll 命令可以验证程序集是否具有强名称。有关如何对程序集进行签名的更多信息,请参见如何:使用强名称为程序集签名。