Pergunta

Ao tentar compilar meu projeto C#, recebo o seguinte erro:

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

Depois de fazer muitas pesquisas no Google, determinei que isso geralmente é causado por uma imagem de 256x256 dentro de um ícone usado pelo projeto.Examinei todos os ícones e removi as versões 256x256, mas o erro persiste.Alguma idéia de como se livrar disso?


@Mike:Ele apareceu misteriosamente uma noite.Pesquisei o arquivo csproj, mas não há menção a CSC97.tmp (também verifiquei o arquivo de solução, mas também não tive sorte).Caso ajude, postei o conteúdo do arquivo csproj no pastebin.

@Derek:Sem problemas.Aqui está a saída do compilador.

------ 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 ==========

Também carreguei o ícone que estou usando.Você pode veja aqui.


@Mike:Obrigado!Depois de remover tudo, exceto a imagem 32x32, tudo funcionou perfeitamente.Agora posso voltar e adicionar os outros tamanhos um por um para ver qual deles está me causando tristeza.:)

@Derek:Desde que recebi o erro pela primeira vez, fiz uma reinstalação completa do Windows (e junto com ele, do SDK). Não foi o principal motivo da reinstalação, mas tive uma pequena esperança de que isso resolveria o problema.

Agora, se eu conseguir descobrir por que anteriormente funcionava com todos os outros tamanhos...

Foi útil?

Solução

Não sei se isso vai ajudar, mas a partir de este fórum:

Adicione um arquivo .ico à seção de aplicativos da página de propriedades e receba o erro descrito. Quando verifiquei o arquivo Icon com um editor de ícones, descobri que o arquivo tinha mais de uma versão da imagem, ou seja (16 x 16, 24 x 24, 32 x 32, 48 x 48 vista compactado), removi os outros formatos que não queria, salvei novamente o arquivo (só com 32x 32) e a aplicação agora compila sem erros.

Tente abrir o ícone em um editor de ícones e veja se você vê outros formatos como os descritos (também tente remover o ícone e ver se o projeto será compilado novamente, apenas para verificar se o ícone está causando isso).

Outras dicas

Eu tive um problema semelhante com um "obj/debug/*.tmp" com erro no meu log de compilação.Acontece que minha unidade C:\ estava sem espaço.Depois de liberar algum espaço, minhas construções começaram a funcionar.

Este é um arquivo que você criou e adicionou ao projeto ou apareceu misteriosamente?

Talvez você possa verificar seu arquivo .csproj e ver como ele está sendo referenciado (deve ser um arquivo xml simples e você pode procurar por CSC97.tmp).

Talvez poste as informações que você encontrar para que possamos ter mais detalhes para ajudar a resolver seu problema

Olhando em volta, parece que algumas pessoas resolveram isso reparando ou reinstalando o .NET SDK.Você pode querer tentar.

P.S.Entendo por que você não incluiu mais saída do compilador agora.Não há muito para ver lá.:)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top