"Xxx.exe ist keine gültige Win32-Anwendung", nachdem VS sie gerade erstellt hat

Ich habe erfolgreich eine WinAPI-Anwendung in Visual Studio 2015 (unter Verwendung der IDE) auf meinem Windows-7-64-PC entwickelt. Normalerweise teste ich das Programm im Release-Modus.

Ich habe dann einige Änderungen an meiner Quelle vorgenommen. Das Programm wurde ohne Fehler kompiliert und verlinkt, aber das Programm verhielt sich nicht so, wie ich es erwartet hatte. Ich wechselte in den Debug-Modus und versuchte, es zu erstellen und auszuführen. Wieder VS kompiliert und fehlerfrei verlinkt, dann aber reklamiert

"Das Programm 'f: \ dropbox \ blah \ x64 \ Debug \ xxx.exe' kann nicht gestartet werden. 'F: \ dropbox \ blah \ x64 \ Debug \ xxx.exe' ist keine gültige Win32-Anwendung."

Ich fand es seltsam, also kehrte ich in den Freigabemodus zurück und versuchte es erneut - das Programm startete einwandfrei. Ich habe einige Änderungen vorgenommen und ein paar Mal neu erstellt, aber dann später erklärte VS

"Das Programm 'f: \ dropbox \ blah \ x64 \ Release \ xxx.exe' kann nicht gestartet werden. 'F: \ dropbox \ blah \ x64 \ Release \ xxx.exe' ist keine gültige Win32-Anwendung."

Ich habe versucht, alles sauber zu machen, VS neu gestartet, sogar meinen PC neu gestartet .. aber alles ohne Erfolg, ich bekomme immer noch genau die gleichen Fehler.

BEARBEITEN Nachdem ich ähnliche Berichte gelesen hatte, habe ich versucht, die Dropbox-Synchronisierung anzuhalten. Es schien dann aber nur ein- oder zweimal zu funktionieren und dann kehrte das Problem zurück. Ich habe dann versucht, die Multiprozessor-Kompilierung auszuschalten, und dies scheint zu ermöglichen, dass die Release-Version meines Programms erneut ausgeführt wird. Ich habe seitdem mehrere Male (50+?) Ohne Problem bearbeitet-neu erstellt-ausgeführt - aber es lehnt immer noch ab, die Debug-Version auszuführen.

BEARBEITEN Zu Ihrer Information, meine Antivirensoftware ist Microsoft Security Essentials

BEARBEITENenn Sie dumpbin aufrufen und meine (nicht laufende) Debug-Exe übergeben, erhalten Sie die folgende Ausgabe:

File Type: EXECUTABLE IMAGE

  Summary

        1000 .00cfg
    77BB8000 .data
        1000 .gfids
        4000 .idata
        4000 .pdata
       31000 .rdata
        4000 .reloc
        1000 .rsrc
       DD000 .text

BEARBEITEN Habe gerade versucht, compile-build-run auf einem anderen Computer (Windows-10-64) auszuführen, der über Dropbox verbunden war und genau die gleichen Symptome aufweist, d. H. Im Release-Modus, aber nicht im Debug-Modus ausgeführt wird.

BEARBEITEN Auf Anraten von Michael Burr habe ich Dependancy Walker auf meiner (nicht funktionierenden) Debug-Exe ausgeführt und diese Fehler gemeldet:then aus Neugier dachte ich, ich würde einen Blick auf das werfen, was Dep-Walker über meine (funktionierende) Release-Exe gesagt hat und fand, dass ich genau die gleiche Fehlerliste habe! ... nach mehr Suche fand ichdiese SO Frage, in dem der Schluss gezogen wurde: "Das Wesentliche dabei: Wie bereits an anderer Stelle erwähnt, ist das Tool inzwischen etwas veraltet und funktioniert unter neueren Betriebssystemen nicht immer ordnungsgemäß. Halten Sie also ein Auge offen und lassen Sie sich nicht durch Fehlversuche in die Irre führen." API-MS-WIN-CORE-COM-L1-1-0.DLL ', ... das Problem liegt wahrscheinlich woanders. "

BEARBEITEN Ich schalte über das Auswahlfeld links im Bild unten zwischen Debug- und Freigabemodus um und starte das Programm, indem ich auf das grüne Dreieck klicke.

BEARBEITEN Ich habe die Map-Datei für die Debug-Exe generiert. Es ist zu groß, um hier gezeigt zu werden, aber es beginnt mit den folgenden Zeilen ...

 Timestamp is 5811bed3 (Thu Oct 27 09:46:11 2016)

 Preferred load address is 0000000140000000

 Start         Length     Name                   Class
 0001:00000000 00002840H .text$di                CODE
 0001:00002840 000da860H .text$mn                CODE
 0001:000dd0a0 00001020H .text$mn$00             CODE
 0001:000de0c0 00001eb0H .text$x                 CODE
 0001:000dff70 0000104bH .text$yd                CODE
 0002:00000000 00000110H .CRT$XCA                DATA
 0002:00000110 00000110H .CRT$XCAA               DATA
 0002:00000220 00000110H .CRT$XCL                DATA
 0002:00000330 00000128H .CRT$XCU                DATA
 0002:00000458 00000110H .CRT$XCZ                DATA
 0002:00000568 00000110H .CRT$XIA                DATA
 0002:00000678 00000110H .CRT$XIAA               DATA
 0002:00000788 00000110H .CRT$XIAC               DATA
 0002:00000898 00000110H .CRT$XIZ                DATA
 0002:000009a8 00000110H .CRT$XPA                DATA
 0002:00000ab8 00000110H .CRT$XPZ                DATA
 0002:00000bc8 00000110H .CRT$XTA                DATA
 0002:00000cd8 00000118H .CRT$XTZ                DATA
 0002:00000df0 0002c960H .rdata                  DATA
 0002:0002d750 00000998H .rdata$r                DATA
 0002:0002e0e8 00000178H .rdata$zzzdbg           DATA
 0002:0002e260 00000110H .rtc$IAA                DATA
 0002:0002e370 00000188H .rtc$IMZ                DATA
 0002:0002e4f8 00000110H .rtc$IZZ                DATA
 0002:0002e608 00000110H .rtc$TAA                DATA
 0002:0002e718 00000188H .rtc$TMZ                DATA
 0002:0002e8a0 00000110H .rtc$TZZ                DATA
 0002:0002e9b0 00003b68H .xdata                  DATA
 0002:00032518 00000275H .xdata$x                DATA
 0002:0003278d 00000000H .edata                  DATA
 0003:00000000 000023e0H .data                   DATA
 0003:000023e0 00000580H .data$r                 DATA
 0003:00002960 77376001H .bss                    DATA
 0004:00000000 0000369cH .pdata                  DATA
 0005:00000000 00000ed0H .idata$5                DATA
 0005:00000ed0 000000c8H .idata$2                DATA
 0005:00000f98 00000018H .idata$3                DATA
 0005:00000fb0 00000ed0H .idata$4                DATA
 0005:00001e80 00001fc6H .idata$6                DATA
 0006:00000000 0000015eH .gfids$y                DATA
 0007:00000000 0000011bH .00cfg                  DATA
 0008:00000000 00000170H .rsrc$01                DATA
 0008:00000170 000002ccH .rsrc$02                DATA

  Address         Publics by Value              Rva+Base               Lib:Object

 0000:00000000       __guard_iat_table          0000000000000000     <absolute>
 0000:00000000       __guard_longjmp_count      0000000000000000     <absolute>
 0000:00000000       __guard_longjmp_table      0000000000000000     <absolute>
 0000:00000000       __guard_fids_count         0000000000000000     <absolute>
 0000:00000000       ___safe_se_handler_table   0000000000000000     <absolute>
 0000:00000000       ___safe_se_handler_count   0000000000000000     <absolute>
 0000:00000000       __guard_iat_count          0000000000000000     <absolute>
 0000:00000000       __guard_fids_table         0000000000000000     <absolute>
 0000:00000000       __dynamic_value_reloc_table 0000000000000000     <absolute>
 0000:00000100       __guard_flags              0000000000000100     <absolute>
 0000:00000000       __ImageBase                0000000140000000     <linker-defined>
 0001:00002aa0       ?readstring@@YAXPEAD0@Z    0000000140003aa0 f   COMMAND.obj
 0001:00002b70       ?make_phere@@YAXH@Z        0000000140003b70 f   COMMAND.obj
 0001:00002c50       ?load_snap@@YAXXZ          0000000140003c50 f   COMMAND.obj
 0001:00002d30       ?i_rand_0_n_inclusive@@YAHH@Z 0000000140003d30 f   COMMAND.obj

Antworten auf die Frage(2)

Ihre Antwort auf die Frage