Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用gacutil.exe_C#_.net - Fatal编程技术网

C# 如何使用gacutil.exe

C# 如何使用gacutil.exe,c#,.net,C#,.net,我正在使用gacutil.exe将程序集注册到全局程序集缓存(GAC)中。我的DLL位于我的C:驱动器的根目录下: C:\XYZ.dll 我试过了 gacutil.exe /i "C:\XYZ.dll" 但这给了我以下错误: 试图加载格式不正确的程序 这是为什么?您的程序集应具有强名称,以便放置在GAC中。是否为程序集指定了强名称。您可以使用以下语法指定 SN –k MyDll.snk csc /keyfile:MyDll.snk XYZ.cs 或者可以选择使用visual studio

我正在使用
gacutil.exe
将程序集注册到全局程序集缓存(GAC)中。我的DLL位于我的
C:
驱动器的根目录下:

 C:\XYZ.dll
我试过了

gacutil.exe /i "C:\XYZ.dll"
但这给了我以下错误:

试图加载格式不正确的程序


这是为什么?

您的程序集应具有强名称,以便放置在GAC中。是否为程序集指定了强名称。您可以使用以下语法指定

SN –k MyDll.snk
csc /keyfile:MyDll.snk XYZ.cs
或者可以选择使用visual studio对程序集进行签名,也可以通过显示项目的属性、单击“签名”选项卡、选中“对程序集进行签名”复选框,然后从“选择强名称密钥文件”组合框中选择选项来创建新的公钥/私钥文件。此方法将对程序集进行签名


您将找到大量文章,从中可以找到为什么程序集需要强名称

您的程序集应该被强名称以放置在GAC中。是否为程序集指定了强名称。您可以使用以下语法指定

SN –k MyDll.snk
csc /keyfile:MyDll.snk XYZ.cs
或者可以选择使用visual studio对程序集进行签名,也可以通过显示项目的属性、单击“签名”选项卡、选中“对程序集进行签名”复选框,然后从“选择强名称密钥文件”组合框中选择选项来创建新的公钥/私钥文件。此方法将对程序集进行签名


您将找到大量文章,从中可以找到为什么程序集需要强名称

DLL或GAUTIL可能是64位的,您正在尝试在32位计算机上运行该命令。请标记我的答案,如果它对您有帮助,请标记我的答案DLL或GAUTIL可能是64位的,您正在尝试在32位计算机上运行该命令。请标记我的答案回答是否有助于您生成另一条错误消息,明确告知DLL未签名。@jgauffin我已编辑我的响应,以使用VS对程序集进行签名,该消息将生成另一条错误消息,明确告知DLL未签名。@jgauffin我已编辑我的响应,以使用VS对程序集进行签名