Príznaky
Pozrite si nasledujúci scenár v balíku funkcií Microsoft Dynamics SL 7.0 Feature Pack 1 (FP1). Aplikáciu vytvoríte pomocou súpravy SDK (Software Development Kit) a potom pridáte prispôsobenie jazyka VBA pomocou kódu. Pri spustení aplikácie sa zobrazí toto chybové hlásenie:
Microsoft Windows
<applicationName>. .. prestal fungovať"
Kde <ApplicationName> názov aplikácie, ktorú ste vytvorili pre Microsoft Dynamics SL 7.0 Feature Pack 1 (FP1).
Príčina
Aplikácia, ktorá používa súčasti vytvorené vo verzii ATL 7.1 alebo staršej, je vstavaná pomocou prepínača / DYSCOMPAT (http://msdn2.microsoft.com/en-us/library/ms235442.aspx) alebo sa operačného systému inak považuje za "Nie je eXecute Compatible". Inštalácia balíka Visual Studio 2008 môže spôsobiť, že programy následne vytvorené pomocou VS 2008 alebo VS 2005 predvolene umožnia kompatibilitu ICH. Tento problém sa tiež zobrazí v prípade, ak je politika zabránenie spusteniu údajov pre systém nastavená na možnosť AlwaysOn, aplikácie, ktoré obsahujú starší kód pre tennking (používa sa na preklad adries pamäte (ukazovateľov) medzi 16-bitovou a 32-bitovou 32-bitovou tvorou.
Riešenie
Zostavte Project s nastavením v udalostiach po nadstavovaní na odstránenie prepínača / DYSCOMPAT v Visual Studio 2008 takto:
1) Otvorte projekt SDK 7.0 so Visual Studio 2008.
2) Kliknite pravým tlačidlom myši a vyberte vlastnosti 3) Vyberte kartu Kompilovať 4) Kliknite na tlačidlo "Zostava udalostí" v dolnej časti 5) Pridajte do udalosti "Po zostave" udalosti hovor
"$(DevEnvDir)..\tools\vsvars32.bat"
editbin.exe / DYSCOMPAT:NO "$(TargetPath)"
6) Uloženie a zostavenie projektu
Ďalšie informácie
Ďalšie informácie nájdete http://support.microsoft.com/kb/948468 ďalšie informácie.