Problembeschreibung
Betrachten Sie das folgende Szenario in Microsoft Dynamics SL 7.0 Feature Pack 1 (FP1). Sie erstellen eine Anwendung mithilfe des Software Development Kit (SDK) und fügen dann eine VBA-Anpassung mit Code hinzu. Wenn Sie die Anwendung starten, wird die folgende Fehlermeldung angezeigt:
"Microsoft Windows
<ApplicationName>. .. funktioniert nicht mehr."
Dabei <ApplicationName> name der Anwendung, die Sie für Microsoft Dynamics SL 7.0 Feature Pack 1 (FP1) erstellt haben.
Ursache
Eine Anwendung, die mit ATL Version 7.1 oder einer früheren Version erstellte Komponenten verwendet, wird mit dem Schalter /NXCOMPAT (http://msdn2.microsoft.com/en-us/library/ms235442.aspx) erstellt oder vom Betriebssystem auf andere Weise als "Keine eXecute Compatible" behandelt. Die Visual Studio 2008 kann dazu führen, dass Programme, die anschließend mit VS 2008 oder VS 2005 erstellt wurden, standardmäßig die NX-Kompatibilität aktivieren. Wenn die DEP-Richtlinie für das System auf AlwaysOn festgelegt ist, wird dieses Problem auch für Anwendungen mit älterem Code für Diebung (zum Übersetzen von Speicheradressen (Zeigern) zwischen 16-Bit- und 32-Bit-Code verwendet) angezeigt.
Fehlerbehebung
Erstellen Sie Project einstellung in den Post-Build-Ereignissen, um den Schalter /NXCOMPAT wie folgt in Visual Studio 2008 zu entfernen:
1) Öffnen Sie das SDK 7.0-Projekt mit Visual Studio 2008.
2) Klicken Sie mit der rechten Maustaste, und wählen Sie die Eigenschaften aus 3) Wählen Sie die Registerkarte Kompilieren 4) Klicken Sie unten 5 auf die Schaltfläche "Buildereignisse". Fügen Sie Folgendes zum
"Post-Build"-Ereignisaufruf
"$(DevEnvDir)..\tools\vsvars32.bat"
editbin.exe /NXCOMPAT:NO "$(TargetPath)"
hinzu 6) Speichern und erstellen Sie das Projekt.
Weitere Informationen
Weitere Informationen http://support.microsoft.com/kb/948468 Sie unter weitere Informationen.