繁体   English   中英

如何将DLL添加到GAC

[英]How do I add a DLL to GAC

这是我的代码:

Register(Assembly.GetExecutingAssembly()).Location);

private void Register(String assemblyName)
{
    System.Diagnostics.ProcessStartInfo processStartInfo = new System.Diagnostics.ProcessStartInfo("D://gacutil.exe", string.Format("/i {0}", assemblyName));
    processStartInfo.UseShellExecute = false;
    System.Diagnostics.Process process= System.Diagnostics.Process.Start(processStartInfo);
    process.WaitForExit();
}

如何将DLL添加到程序集文件夹中?

您必须放置整个组装路径,才能正常工作。 例如

gacutil /i D:/someassembly

您的其余代码看起来不错。 只需使用整个程序集路径,而不仅仅是程序集名称即可。

MSDN Publish.GacInstall

Publish类中使用GacInstall()方法可以很容易地GAC程序集。 添加对System.EnterpriseServices引用。 请确保特定的dll已签名 只能将签名的程序集添加到GAC。

private void Register(String assemblyName)
  {
      Publish publish = new Publish();
      publish.GacInstall(assemblyName);
  }

您需要将process的工作目录设置为当前工作目录,或者发送.dll的完整路径。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM