Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.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# hnetcfg.dll引发BadImageFormatException_C#_Windows Firewall_Badimageformatexception_Windows Firewall Api - Fatal编程技术网

C# hnetcfg.dll引发BadImageFormatException

C# hnetcfg.dll引发BadImageFormatException,c#,windows-firewall,badimageformatexception,windows-firewall-api,C#,Windows Firewall,Badimageformatexception,Windows Firewall Api,执行引用c:\windows\system32\hnetcfg.dll的代码以从中管理windows防火墙,会在加载dll后立即导致BadImageFormatException 在NUnit中打开414KB DLL文件进行检查会引发相同的异常 我正在运行Windows7。有解决方案吗?已解决: …通过将目标平台设置为x86。解决了: …通过将目标平台设置为x86。是64位应用程序试图引用32位dll吗?如果是这样,请获取64位版本的dll,或者使用 corflags /32bit+ myApp

执行引用
c:\windows\system32\hnetcfg.dll的代码以从中管理windows防火墙,会在加载dll后立即导致
BadImageFormatException

在NUnit中打开414KB DLL文件进行检查会引发相同的异常

我正在运行Windows7。有解决方案吗?

已解决: …通过将目标平台设置为x86。

解决了:
…通过将目标平台设置为x86。

是64位应用程序试图引用32位dll吗?如果是这样,请获取64位版本的dll,或者使用

corflags /32bit+ myApp.exe

或者,正如您所说,只需内置32位(x86)

它是一个试图引用32位dll的64位应用程序吗?如果是这样,请获取64位版本的dll,或者使用

corflags /32bit+ myApp.exe

或者如您所说,只需内置32位(x86)

使用DLL的服务现在针对x86。如何确保它在32位和64位机器上运行?我需要两个不同版本的应用程序,还是可以只针对x86?我正在运行64位Windows,它似乎正常工作,但我需要正确测试它。如果(至少)您的一个依赖项是32位的,则您需要强制应用程序(服务)以32位模式运行。以x86为目标意味着它将在x86和x64上以32位模式运行,这可能就是您所需要的。如果您希望它在x64上运行64位,那么您需要源代码64位版本的dll,并且基本上有两个独立的可执行文件-一个用于x86(基于x86 dll构建),另一个用于x64(基于x64 dll构建)。使用dll的服务现在面向x86。如何确保它在32位和64位机器上运行?我需要两个不同版本的应用程序,还是可以只针对x86?我正在运行64位Windows,它似乎正常工作,但我需要正确测试它。如果(至少)您的一个依赖项是32位的,则您需要强制应用程序(服务)以32位模式运行。以x86为目标意味着它将在x86和x64上以32位模式运行,这可能就是您所需要的。如果您希望它在x64上运行64位,那么您将需要源代码64位版本的dll,并且基本上有两个独立的可执行文件-一个用于x86(基于x86 dll构建),另一个用于x64(基于x64 dll构建)。