2012-04-20 25 views
6

Sono nuovo di VS2010 e ho provato a compilare un progetto mai lavorato in VS2008. L'errore sembra semplice:Visual Studio 2010 C++, Impossibile aprire il file include: 'afxwin.h', 'TCHAR.H' e 'cassert'

stdafx.h (43): errore fatale C1083: impossibile aprire il file include: 'afxwin.h': Nessun file o directory stdstring.h (619): errore fatale C1083: impossibile aprire include file: 'TCHAR.H': Nessun file o directory threads.h (52): errore fatale C1083: Impossibile aprire il file include: 'cassert': Nessun file o directory

I googlato e questo tipo di file l'errore si verifica spesso nella versione VS2010 Express, ma sto usando VS2010 Professional Edition. E ho controllato, tutti questi file mancanti sono nel posto giusto. C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ atlmfc \ include e C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ include

Il fatto è che gli altri file di intestazione in stdafx.h è nella stessa directory di afxwin.h ma non si è lamentato.

Ho anche controllato le directory VC++ del gestore proprietà e "Includi directory" è "$ (VCInstallDir) include; $ (VCInstallDir) atlmfc \ include; $ (FrameworkSDKDir) \ include; $ (WindowsSdkDir) include".

C'è qualcos'altro che ho dimenticato di controllare? Molto apprezzato per l'aiuto.

+0

Hai controllato che i file siano stati aggiunti al tuo progetto? – Trisped

+0

Mi sembra che tu abbia impostato alcuni percorsi nel gestore di directory vecchio stile e che non vengano visualizzati nella nuova versione e non siano inclusi nelle impostazioni della directory del progetto. Controlla i due per vedere cosa manca. – Robinson

+2

Ho aggiunto manualmente quelle directory dei file di intestazione alle "Directory di inclusione aggiuntive" in C/C++ => Generale e ho risolto il problema. Penso che la mia installazione VS possa essere rovinata da qualche parte all'inizio. – mile

risposta

1

L'esploratore di proprietà è dove si desidera cercare. Afxwin.h è in .. \ atlmfc \ include, tchar.h e cassert sono in .. \ include che si penserebbe sarebbe una proprietà di tipo globale, ma risulta che non è così semplice. Questo è il più grande problema che ho avuto con l'aggiornamento dal 2008. Questa non è più un'opzione di applicazione, è una proprietà dell'utente.

Prima di modificare le cose, guardare l'explorer delle proprietà e leggere la documentazione MSBuild, perché, mentre il nuovo formato è più potente e flessibile, ma non si aggiorna con garbo dal vecchio formato.

Problemi correlati