Ошибка 23 не является допустимым приложением Win32 для файла .resx - PullRequest
4 голосов
/ 26 мая 2011

У меня есть форма в моем проекте VB> NET (2010) с некоторым ImageList.Эти изображения встроены в список с ресурсом формы в файле .resx как

data name = "xxxx.ImageStream" mimetype = "application / x-microsoft.net.object.binary.base64 Когда я пытался построить / запустить свой проект, я получаю:

Ошибка 23 не является допустимым приложением Win32. (Исключение из HRESULT: 0x800700C1) Строка XXXX, позиция X ...

в строке, где закрывается тег данных.

Когда я изменяю код base64 изображения в файле .resx, (изменяя некоторое значение '0' с помощью'y') проект компилируется, но когда я пытаюсь запустить приложение, изображения перезагружаются, и мои изменения исчезают

Знаете ли вы, как устранить эту ошибку и заставить мой проект строить и запускать? Спасибо

Ответы [ 2 ]

4 голосов
/ 16 августа 2011

если в первой строке у вас vbj00L ближе к концу, замените его на vbj0yL - это решит вашу проблему.Это необходимо делать каждый раз, когда вы изменяете форму из конструктора.

0 голосов
/ 03 апреля 2013

новости по результатам заявки в службу поддержки MS.

1. Это известная проблема в средах dotnet до 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. Таким образом, чтобы использовать «старые» 32-битные значения vbj00L с предыдущей Dotnet Target Framework, просто установите 4.5 SDK.2a. Мне не требовалась отдельная установка;Я только что установил Visual Studio VS2012, который установил 4.5 для меня.2b.После того, как 4.5 будет на машине, Resgen.exe, общий компонент, будет доступен для других студий и сред, например VS2010 / net3.5.Компиляция завершится успешно.

3. Что касается причины возникновения ошибки, я предполагаю, что это связано с проблемой целочисленных представлений.

...