4

我的 VB>NET 项目 (2010) 中有一个带有一些 ImageList 的表单。这些图像嵌入到列表中,其中包含 .resx 文件中的表单资源

data name="xxxx.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64 当我尝试构建/运行我的项目时,我得到:

错误 23 不是有效的 Win32 应用程序。(HRESULT 异常:0x800700C1)第 XXXX 行,位置 X...

在数据标签关闭的行中。

当我在 .resx 文件中更改图像的 base64 代码时,(用 'y' 更改一些'0')项目编译,但是当我尝试运行应用程序时,图像被重新加载并且我的更改消失了

你知道如何解决这个错误并让我的项目构建和运行吗?谢谢

4

2 回答 2

4

如果您的第一行在末尾附近有 vbj00L,请将其替换为 vbj0yL - 这将解决您的问题。每当您从设计器修改表单时,您都需要这样做。

于 2011-08-16T16:25:34.880 回答
0

来自 MS 支持票的结果的消息。

1.这是 dotnet frameworks 到 4.0 的一个已知问题。它在 4.5 中已修复。 http://blogs.msdn.com/b/visualstudio/archive/2010/06/18/resgen-exe-error-an-attempt-was-made-to-load-a-program-with-an-incorrect- format.aspx?PageIndex=5&CommentPosted=true#commentmessage

2.因此,要在以前的 dotnet 目标框架中使用“旧”32 位 vbj00L 值,只需安装 4.5 SDK。2a.我不需要单独安装;我刚刚安装了 Visual Studio VS2012,它为我安装了 4.5。2b. 4.5上机后,共享组件Resgen.exe可用于其他工作室和框架,例如VS2010/net3.5。编译会成功。

3. 至于为什么会出现这个错误,我认为它与整数表示的问题有关。

于 2013-04-03T18:38:49.857 回答