问题标签 [badimageformatexception]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 使用 AppDomain.CreateDomain 创建的 AppDomain 上的 BadImageFormatException
我正在尝试追查 BadImageFormatException (Index not found.) 异常的原因。在以下代码的第 2 行抛出异常:
如果我注释掉第二行代码,则第三行成功执行,然后该方法在第四行代码上再次失败,出现相同的异常。
此代码包含在一个静态方法中,该方法位于包含 AppDomain_UnhandledException 和 InitializeRemoteDomain 方法的同一静态类中。解决方案中的所有项目都是使用 x86 标志和 .NET 4.5.1 编译的。该应用程序在我的开发盒(Windows 7 Pro x64)上正常工作,但在生产盒(Windows Embedded Standard x32)上失败。我认为我使用 CreateDomain 方法创建的 AppDomain 将具有与首先调用 CreateDomain 方法的现有 AppDomain 相同的位数。
任何帮助将不胜感激!
c# - 部署 x64 ASP.NET Web 应用程序时无法加载程序集错误
我开发了一个仅包含通用 http 处理程序的 ASP.NET Web 应用程序。我开始在 x86 开发机器上使用 IISExpress 进行本地测试,然后部署在 32 位 Windows 2003 Server 和 IIS6.0 上,一切顺利。
我的公司决定更新到 x64 环境以利用一些针对 64 位环境优化的第三方库,因此我们切换到 64 位 Windows Server 2012 R2 标准版,但我遇到了一些麻烦。
在我的本地机器上,现在切换到平台目标设置为 x64 的 x64 开发机器一切顺利,但是在服务器上部署时,我总是得到
System.BadImageFormatException
在主组件上。错误消息的其他部分说程序集管理器是由
C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
并执行
C:\Windows\SysWOW64\inetsrv\w3wp.exe
由于 SysWOW64 需要在 64 位环境中运行 32 位应用程序,所以生产机器上的 IIS 服务器可能没有启用运行 x64 网络应用程序?如果是这样,我应该怎么做才能克服这个问题,因为我知道我没有直接访问服务器的权限。
谢谢你。
c# - badimageformatexception 动态代码生成
我正在尝试使用 CSharpCodeProvider 动态生成可执行文件,其唯一目的是从特定的 dll 调用一个方法。当我执行生成的文件时,我得到一个 BadImageFormatException。
我已经将平台设置为 x86。当我手动编写调用该方法的代码并在 Visual Studio 中对其进行调试时,它工作得非常好。
这是可执行文件的代码:
在动态编译代码之前,我通过添加程序集
我将可执行文件写入与 dll 相同的目录。
编辑
这是我用来调用编译器的代码:
.net - 在 Debug 和 Release 配置中以完全相同的方式构建的应用程序在 Win7 上的 Release 中不起作用:BadImageFormatException
我正在 Win7 x64 机器上开发应用程序。
有一些代码可以调用外部 .dll 文件。.dll 是为 32 位机器构建的。我遇到的问题是在Debug
配置中的调试器中运行应用程序时,它工作正常。一旦我切换到Release
,任何进入进行 .dll 调用的方法的条目都会失败
两者Release
和Debug
配置都是相同的,并且正在为 x86 构建应用程序。此问题仅发生在 Windows 7 机器上。我们的客户运行 XP 没有问题。诚然,我们没有运行 XP x64 的客户,因此我无法验证这一点。
这是我的解决方案配置的图像:
我已将Platform:
选项更改为所有可能的组合,但它仍然无法正常工作。配置中是否有一些隐藏的东西Debug
?
编辑:我想通了,但我真的不明白这个问题。
Build
在项目属性中的每个项目选项卡( Compile
VB 项目的选项卡)中,我必须设置Target CPU
为 x86 而不是 AnyCPU。
也许这是另一个问题,但是:为什么?在每个项目的基础上将整个解决方案的平台设置为 x86 和将目标 CPU 设置为 x86 之间有什么区别。另外,在上图中:那么该Platform
字段的目的是什么?
visual-studio-2010 - I can't build 64x project in Visual Studio
I created a extremely simple solution in visual studio 2010, this solution has:
- A class library...and a class named "HelloWord"
- ASP.NET web site project...and one page inside it named "Home.aspx"
- Home.aspx calls "HelloWord" class
Problem: I have a Win7/64x machine and i want this project to compile as 64x (not Anycpu)...when i try to run i receive this message
System.BadImageFormatException: Could not load file or assembly...
Why?
c# - 在 PC 上或通过 TFS 构建间歇性 BadImageFormatException 构建“插件”DLL
我有一个应用程序,其中几个程序集与主应用程序分开构建。在运行时,它们位于主 BIN 文件夹之外的文件夹中,并由主应用程序使用 Assembly.LoadFrom 加载。在这些“插件”程序集的 VS 项目中,有对从主应用程序构建的物理程序集的引用。
主应用程序和插件的构建均由 TFS 构建服务器生成。“插件”程序集项目用作引用的程序集通常取自主应用程序的 TFS 构建,但有时它们取自我的 PC 上的构建。
我每天都在这个应用程序上工作,99% 的插件构建工作正常。然后在没有任何明显解释的情况下,主应用程序将无法加载插件程序集,并出现以下错误:
发生这种情况时,我会做很多事情来尝试解决它,但我没有可靠的解决方案。我尝试了以下所有方法,最终问题消失了:
- 再次运行构建
- 使用构建服务器构建的新 DLL 更新“插件”程序集项目用作引用的程序集
- 同上,但在我的 PC 上构建了新的 DLL
- 重新启动构建服务器
- 在构建服务器上安装 Windows 更新
- 回家第二天发现问题没了!
有时,当构建服务器构建的插件显示此问题时,在我的 PC 上构建的构建将起作用。其他时候,两个版本都会显示问题。
到目前为止,主要应用程序和插件解决方案的构建配置都针对“任何 CPU”。今天(似乎有很多 S/O 帖子将此异常与目标处理器架构相关联)我尝试将两者都切换到目标 x64,但这并没有任何区别。
我不知道还能看什么……有什么想法吗?
win-universal-app - VS2015 Universal APP - 无法加载汇编(badimageformatexception)
在通用应用程序中调用从 nuguet 导入的 System.Threading、System.IO 或 System.ReflectionTypeExtensions 的任何方法时出错,下面有一个示例:
称呼 :
错误:
javascript - 编译到 x64 并收到 System.BadImageFormatException
我有一个解决方案,其中包含一个 C# 项目“库”和一个项目“JavaScript”,编译后它会生成一个 .winmd 文件,该文件被带到另一个项目。但是这个项目是建立在 x86 上的,我需要为 x64 编译,以运行应用程序,以便 x64 得到以下错误:
mono - BadImageFormatException:无法解析字段标记
直到今天,一切都在编译并完美运行。据我所知,我的系统没有任何变化。
突然间,我用 xbuild (mono 4.0.0) 编译的所有东西在运行时都会出现这个错误:
[ERROR] FATAL UNHANDLED EXCEPTION: System.BadImageFormatException: Could not resolve field token 0x040000de
我在 Docker 下的 x64 上编译和运行。
知道如何调试吗?
random - F# 随机类在调用 .NextDouble() 时抛出 BadImageFormatException
我从一本关于 F# 的书中制作了一个小型应用程序,但是当我调用 rand.NextDouble() 方法时,它会抛出一个 BadImageFormatException,乍一看它似乎与图像有关,所以我不知道我应该做什么在这里做。
我正在使用 Visual F# 2013 使用 VS community 2013。我有 64 位 Windows 7
我知道通过尝试单独的 let 是 nextdouble 方法的问题
这是错误代码:
System.BadImageFormatException 未处理 消息:Asteroid_Field_1.exe 中发生“System.BadImageFormatException”类型的未处理异常附加信息:尝试加载格式不正确的程序。(来自 HRESULT 的异常:0x8007000B)
MSDN 告诉我它可能与未以正确格式加载的 DLL 文件有关,但我什至不知道从哪里开始。
这是完整的代码
我刚刚在 FSI.exe 中尝试过,它在那里工作得很好