Неверный файл ресурсов

При попытке скомпилировать мой проект C# я получаю следующую ошибку:

'C:\Documents and Settings\Dan\Desktop\Rowdy Pixel\Apps\CleanerMenu\CleanerMenu\obj\Debug\CSC97.tmp' is not a valid Win32 resource file.

Пройдя множество поисков в Google, я определил, что это обычно вызвано изображением размером 256x256 внутри значка, используемого в проекте. Я просмотрел все значки и удалил версии 256x256, но ошибка не исчезла. Есть идеи, как от этого избавиться?


@Mike: Однажды ночью он загадочно обнаружился. Я искал файл csproj, но там нет упоминания о CSC97.tmp (я также проверил файл решения, но и там мне не повезло). Если это поможет, я разместил содержимое файла csproj на pastebin .

@ Дерек: Нет проблем. Вот результат компилятора.

------ Build started: Project: Infralution.Licensing, Configuration: Debug Any CPU ------
Infralution.Licensing -> C:\Documents and Settings\Dan\Desktop\Rowdy Pixel\Apps\CleanerMenu\Infralution.Licensing\bin\Debug\Infralution.Licensing.dll
------ Build started: Project: CleanerMenu, Configuration: Debug Any CPU ------
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Csc.exe /noconfig /nowarn:1701,1702 /errorreport:prompt /warn:4 /define:DEBUG;TRACE /main:CleanerMenu.Program /reference:"C:\Documents and Settings\Dan\Desktop\Rowdy Pixel\Apps\CleanerMenu\Infralution.Licensing\bin\Debug\Infralution.Licensing.dll" /reference:..\NotificationBar.dll /reference:..\PSTaskDialog.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Windows.Forms.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll /reference:obj\Debug\Interop.IWshRuntimeLibrary.dll /debug+ /debug:full /optimize- /out:obj\Debug\CleanerMenu.exe /resource:obj\Debug\CleanerMenu.Form1.resources /resource:obj\Debug\CleanerMenu.frmAbout.resources /resource:obj\Debug\CleanerMenu.ModalProgressWindow.resources /resource:obj\Debug\CleanerMenu.Properties.Resources.resources /resource:obj\Debug\CleanerMenu.ShortcutPropertiesViewer.resources /resource:obj\Debug\CleanerMenu.LocalizedStrings.resources /resource:obj\Debug\CleanerMenu.UpdatedLicenseForm.resources /target:winexe /win32icon:CleanerMenu.ico ErrorHandler.cs Form1.cs Form1.Designer.cs frmAbout.cs frmAbout.Designer.cs Licensing.cs ModalProgressWindow.cs ModalProgressWindow.Designer.cs Program.cs Properties\AssemblyInfo.cs Properties\Resources.Designer.cs Properties\Settings.Designer.cs Scanner.cs ShortcutPropertiesViewer.cs ShortcutPropertiesViewer.Designer.cs LocalizedStrings.Designer.cs UpdatedLicenseForm.cs UpdatedLicenseForm.Designer.cs
error CS1583: 'C:\Documents and Settings\Dan\Desktop\Rowdy Pixel\Apps\CleanerMenu\CleanerMenu\obj\Debug\CSC97.tmp' is not a valid Win32 resource file

Compile complete -- 1 errors, 0 warnings
------ Skipped Build: Project: CleanerMenu Installer, Configuration: Debug ------
Project not selected to build for this solution configuration 
========== Build: 1 succeeded or up-to-date, 1 failed, 1 skipped ==========

Я также загрузил значок, который использую. Вы можете просмотреть это здесь.


@Mike: Спасибо! После удаления всего, кроме изображения 32x32, все отлично заработало. Теперь я могу вернуться и добавить другие размеры один за другим, чтобы увидеть, какой из них вызывает у меня горе. :)

@Derek: С тех пор как я впервые получил ошибку, я выполнил полную переустановку Windows (и вместе с ней SDK). Это не было основной причиной переустановки, но у меня была слабая надежда, что она исправит эта проблема.

Теперь, если бы я мог понять, почему раньше он работал со всеми другими размерами ...

Ответов (5)

Решение

Не знаю, поможет ли это, но с этого форума :

Добавьте файл .ico в раздел приложения на странице свойств и получил описанную ошибку, когда я проверил файл значка с помощью редактора значков, оказалось, что в файле было более одной версии изображения, т. Е. (16 x 16, 24 x 24, 32 x 32, 48 x 48 сжатая перспектива), я удалил другие форматы, которые я не хотел, чтобы повторно сохранить файл (только с 32 x 32), и теперь приложение компилируется без ошибок.

Попробуйте открыть значок в редакторе значков и посмотрите, видите ли вы другие форматы, подобные описанным (также попробуйте удалить значок и посмотреть, будет ли проект снова построен, просто чтобы убедиться, что значок вызывает его).

У меня была аналогичная проблема с ошибкой файла "obj / debug / * .tmp" в моем журнале сборки. Оказывается, на моем диске C: \ закончилось место. После освобождения места мои сборки начали работать.

В свойствах проекта нажмите «Приложение»: в группе «Ресурсы» просто выберите переключатель «Значок и манифест». в моем проекте это была проблема и исправлена ​​с помощью вышеуказанных шагов.

Оглядываясь вокруг, кажется, что некоторые люди решили эту проблему, восстановив или переустановив .NET SDK. Возможно, вы захотите попробовать.

PS Теперь я понимаю, почему вы не включили больше выходных данных компилятора. Там особо не на что смотреть. :)

Это файл, который вы создали и добавили в проект, или он появился загадочным образом?

Возможно, вы можете проверить свой файл .csproj и посмотреть, как на него ссылаются (это должен быть простой файл xml, и вы можете искать CSC97.tmp).

Возможно, опубликуйте найденную информацию, чтобы мы могли получить более подробную информацию, которая поможет решить вашу проблему.