Domanda

  

Microsoft Visual Studio

     

Impossibile avviare il programma 'theprogram.exe'.

     

Impossibile avviare questa applicazione   perché la configurazione dell'applicazione   non è corretto. Rivedere il file manifest   per possibili errori. Reinstallazione di   l'applicazione potrebbe risolvere questo problema. Per   maggiori dettagli, consultare il   registro eventi dell'applicazione.

     

OK

Il programma in questione è un progetto C ++, nessun MFC, nessun AFX, le librerie utilizzate sono: opengl32.lib glu32.lib SDL.lib sdlmain.lib più il pre-costruito libboost_signals-vc80-mt-gd-1_37.lib da BoostPro computing.

Il programma inizia bene nelle build di rilascio, ma su Debug ricevo il messaggio di errore sopra menzionato, oltre a un processo di zombi collegato al debugger che non posso uccidere.

I file manifest per il debug build:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC80.DebugCRT" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC80.DebugCRT" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
</assembly>

e Release build:

<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
    </dependentAssembly>
  </dependency>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50727.762' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
    </dependentAssembly>
  </dependency>
</assembly>

Deambulatore:

Error: The Side-by-Side configuration information for "c:\prog\opengl guis\gg-0.7.0\debug\TUTORIAL.EXE" contains errors. This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem (14001).
Error: At least one required implicit or forwarded dependency was not found.
Error: At least one module has an unresolved import due to a missing export function in an implicitly dependent module.
Error: Modules with different CPU types were found.
Warning: At least one delay-load dependency module was not found.
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.

DLL:

DEVIL.DLL
ILU.DLL
MSVCP80D.DLL
MSVCR80D.DLL
SDL.DLL
DWMAPI.DLL
ADVAPI32.DLL
DCIMAN32.DLL
DDRAW.DLL
GDI32.DLL
GLU32.DLL
KERNEL32.DLL
MSVCRT.DLL
NTDLL.DLL
OPENGL32.DLL
RPCRT4.DLL
SECUR32.DLL
USER32.DLL
ACTIVEDS.DLL
ADSLDPC.DLL
ADVPACK.DLL
APPHELP.DLL
ATL.DLL
AUTHZ.DLL
BROWSEUI.DLL
CABINET.DLL
CDFVIEW.DLL
CERTCLI.DLL
CFGMGR32.DLL
CLBCATQ.DLL
CLUSAPI.DLL
COMCTL32.DLL
COMDLG32.DLL
COMRES.DLL
CREDUI.DLL
CRYPT32.DLL
CRYPTUI.DLL
CSCDLL.DLL
DBGHELP.DLL
DEVMGR.DLL
DHCPCSVC.DLL
DNSAPI.DLL
DUSER.DLL
EFSADU.DLL
ESENT.DLL
GDIPLUS.DLL
HLINK.DLL
HNETCFG.DLL
IEFRAME.DLL
IERTUTIL.DLL
IEUI.DLL
IMAGEHLP.DLL
IMGUTIL.DLL
IMM32.DLL
INETCOMM.DLL
IPHLPAPI.DLL
LINKINFO.DLL
LZ32.DLL
MFC42U.DLL
MLANG.DLL
MOBSYNC.DLL
MPR.DLL
MPRAPI.DLL
MPRUI.DLL
MSASN1.DLL
MSGINA.DLL
MSHTML.DLL
MSI.DLL
MSIMG32.DLL
MSLS31.DLL
MSOERT2.DLL
MSRATING.DLL
MSSIGN32.DLL
MSVCP60.DLL
MSWSOCK.DLL
NETAPI32.DLL
NETCFGX.DLL
NETMAN.DLL
NETPLWIZ.DLL
NETRAP.DLL
NETSHELL.DLL
NETUI0.DLL
NETUI1.DLL
NETUI2.DLL
NORMALIZ.DLL
NTDSAPI.DLL
NTLANMAN.DLL
ODBC32.DLL
OLE32.DLL
OLEACC.DLL
OLEAUT32.DLL
OLEDLG.DLL
POWRPROF.DLL
PRINTUI.DLL
PSAPI.DLL
QUERY.DLL
RASAPI32.DLL
RASDLG.DLL
RASMAN.DLL
REGAPI.DLL
RTUTILS.DLL
SAMLIB.DLL
SCECLI.DLL
SETUPAPI.DLL
SHDOCVW.DLL
SHELL32.DLL
SHLWAPI.DLL
SHSVCS.DLL
TAPI32.DLL
URLMON.DLL
USERENV.DLL
USP10.DLL
UTILDLL.DLL
UXTHEME.DLL
VERSION.DLL
W32TOPL.DLL
WINHTTP.DLL
WININET.DLL
WINIPSEC.DLL
WINMM.DLL
WINSCARD.DLL
WINSPOOL.DRV
WINSTA.DLL
WINTRUST.DLL
WLDAP32.DLL
WMI.DLL
WS2_32.DLL
WS2HELP.DLL
WSOCK32.DLL
WTSAPI32.DLL
WZCDLG.DLL
WZCSAPI.DLL
WZCSVC.DLL
MSVCR80.DLL
TUTORIAL.EXE

chiamata linker:

/OUT:"C:\prog\OpenGL GUIS\GG-0.7.0\Debug\tutorial.exe" /INCREMENTAL /NOLOGO /LIBPATH:"C:\prog\SDL-1.2.13\lib" /LIBPATH:"C:\prog\contrib\lib_win32" /LIBPATH:"C:\prog\boost\boost_1_37\lib" /MANIFEST /MANIFESTFILE:"Debug\tutorial.exe.intermediate.manifest" /NODEFAULTLIB:"LIBC.LIB" /DEBUG /PDB:"c:\prog\OpenGL GUIS\GG-0.7.0\Debug\tutorial.pdb" /SUBSYSTEM:CONSOLE /MACHINE:X86 /ERRORREPORT:PROMPT opengl32.lib glu32.lib SDL.lib sdlmain.lib  kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ".\debug\gg.lib"
È stato utile?

Soluzione

Sembra che la build di debug sia collegata sia ai runtime di debug che a quelli di rilascio, il che sarebbe una cosa molto brutta - non hai incluso neanche l'elenco delle librerie a cui stai collegando - potrebbe valere la pena di verificare se

Modifica: Potrebbe anche valere la pena verificare eventuali dichiarazioni #pragma comment (lib ...) che possono costringere il linker a includere una libreria aggiuntiva, causando potenziali conflitti (vedi anche documentazione su MSDN )

Altri suggerimenti

Se fai clic con il pulsante destro del mouse sulla soluzione e vai su Proprietà, devi selezionare Progetto di avvio singolo e selezionare il tuo progetto di hosting. Questo ha funzionato per me.

Hai anche due diversi set di versioni elencate nel manifest per la build di debug!

Potrebbe essere un po 'diverso dal momento che sei su VS2005, ma potresti trovare qualcosa di utile nella mia domanda: L'app non funziona con le DLL VS 2008 SP1, la versione precedente funziona con le versioni RTM

Ho avuto un problema molto simile con Visual Studio 2005 C ++ express. Installando l'SDK della piattaforma, posiziona la dll MSVCR80D nel posto giusto, ma VS non sembra trovarla.

L'installazione di SP1 per VS Express e il riavvio hanno risolto il problema per me.

Scarica qui

Sembra simile al problema discusso in questo Boost.Build filo . Le possibili soluzioni comportano la garanzia di aver selezionato l'installazione di tutti i tipi di runtime, durante l'installazione di Visual Studio e l'utilizzo dello strumento sxstrace.exe per fornire una diagnostica più dettagliata. Tuttavia, in quei casi nulla ha funzionato fino a quando Visual Studio non è stato reinstallato da zero.

Prova a cercare nel registro dell'applicazione come suggerito dai messaggi di errore. Vorrei anche provare a utilizzare uno strumento come Dipendent walker per trovare un possibile problema DLL mancante / errato.

Questo mi succede sempre! Ecco un piccolo trucco che ho scoperto per risolverlo:

  1. Vai a "Build > Soluzione pulita "
  2. In "Esplora soluzioni", fai clic con il pulsante destro del mouse sul progetto e vai su Proprietà
  3. Assicurati che la configurazione in alto a sinistra sia "Debug"
  4. Vai a "Linker > Sistema > Sottosistema "e modificarlo in" Non impostato ". (Se è già impostato su "Non impostato", cambiarlo in "Console.")
  5. Ricostruisci il tuo programma, se non riesce a compilare, va bene.
  6. Torna a "Linker > Sistema > Sottosistema "e modificalo come precedentemente, e ricompila.

Ora, sul motivo per cui funziona, non ne sono sicuro.

Si è verificato lo stesso problema nell'esecuzione di un'applicazione compilata nella configurazione di debug. Mi stavo collegando con una libreria esterna che era stata collegata con la versione di rilascio della libreria di runtime, così ho finito con i runtime sia di Release che di debug nello stesso processo. Dal momento che non avevo la versione di debug di questa libreria esterna, ho dovuto attenermi alla versione di Release, ingombrante da eseguire il debug ma comunque realizzabile.

Sembra lo stesso problema descritto in questo articolo: http://tmoniuszko.blogspot.com/2011/11/installing-service-pack-1-for-visual.html

Segui questi passaggi:

  1. Salva il progetto in una nuova cartella.
  2. File; Sposta source.cpp nel progetto.
  3. Crea.
  4. Esegui.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top