我希望管理员为我注册一些dll,但他可能不希望安装整个SDK。
他能安装gacutil.exe
吗?如果有,他从哪里得到呢?我是否只需将gacutil.exe
文件通过电子邮件发送给他,他必须将其放在他的机器上的什么地方才能使用它?
我得到了它的工作通过复制gacutil.exe, gacutil.exe。. config和gacutlrc.dll。我知道这是违反许可证的,但你不能在VisualStudio Express中安装InstallShield,所以这是最简单的解决方案。
老问题,但在没有安装SDK的机器上,只要PowerShell可用,您就可以这样做:
#Note that you should be running PowerShell as an Administrator
[System.Reflection.Assembly]::Load("System.EnterpriseServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")
$publish = New-Object System.EnterpriseServices.Internal.Publish
$publish.GacInstall("C:PathToDLL.dll")
从https://www.andrewcbancroft.com/2015/12/16/using-powershell-to-install-a-dll-into-the-gac/根据Hans对我的问题的评论,这是违反许可证的。这里最好的方法是创建一个快速的setup.exe或msi,它将把文件安装到GAC中,我已经这样做了。
另一种方法是手动将DLL拖放到c:windowsassembly中。
对于。net 4,我相信汇编文件夹是c:windowsmicrosoft.netassembly——尽管我还没有测试过在。net 4上以这种方式添加一个简单的xcopy。