C# · 12月 24, 2021

c# – 以编程方式将程序集安装到GAC中

我需要使用c#在GAC中安装程序集.以下是我的代码: new System.EnterpriseServices.Internal.Publish().GacInstall(“MyAssembly.dll”);

上面的代码给出了错误:

Absolute path required

但我需要这个运行而不使用静态文件路径(绝对路径).谁能告诉我它是否可能?我在项目引用中添加了对程序集的引用.我需要在GAC中安装此程序集.

解决方法 你可以这样做: GacInstall((new System.IO.FileInfo(“MyAssembly.dll”)).FullName);

要么,

GacInstall(System.IO.Path.GetFullPath(“MyAssembly.dll”));

假设该文件位于当前工作目录中.如果不是,那么您需要定义用于查找此DLL的规则(例如,它是否与您当前的可执行文件位于同一路径中?)