Gejala
Pertimbangkan skenario berikut di Microsoft Dynamics SL 7.0 Feature Pack 1 (FP1). Buat aplikasi menggunakan Kit Pengembangan Perangkat Lunak (SDK, Software Development Kit), lalu tambahkan kustomisasi VBA dengan kode. Saat memulai aplikasi, Anda menerima pesan kesalahan berikut:
"Microsoft Windows
<ApplicationName>. .. telah berhenti bekerja"
Where <ApplicationName> is the name of the application that you created for Microsoft Dynamics SL 7.0 Feature Pack 1 (FP1).
Penyebab
Aplikasi yang menggunakan komponen yang dibuat dengan ATL versi 7.1 atau yang lebih lama dibuat dengan sakelar /NXCOMPAT (http://msdn2.microsoft.com/en-us/library/ms235442.aspx), atau diperlakukan oleh OS sebagai "Tidak Kompatibel eXecute". Menginstal Visual Studio 2008 dapat menyebabkan program yang selanjutnya dibuat dengan VS 2008 atau VS 2005 untuk mengaktifkan kompatibilitas NX secara default. Selain itu, jika kebijakan DEP untuk sistem diatur ke AlwaysOn, aplikasi yang menggabungkan kode thunking lama (digunakan untuk menerjemahkan alamat memori (penunjuk) antara kode 16-bit dan 32-bit) akan melihat masalah ini.
Pemecahan Masalah
Buat Project dengan pengaturan dalam kejadian Pasca build untuk menghapus sakelar /NXCOMPAT seperti berikut dalam Visual Studio 2008:
1) Membuka proyek SDK 7.0 dengan Visual Studio 2008.
2) Klik kanan dan pilih properti 3) Pilih tab Kompilasi 4) Klik tombol "Buat Acara" di bagian bawah 5) Tambahkan hal berikut ke kejadian
"Pasca build" panggilan
"$(DevEnvDir)..\tools\vsvars32.bat"
editbin.exe /NXCOMPAT:NO "$(TargetPath)"
6) Simpan dan susun proyek
Informasi Selengkapnya
Lihat http://support.microsoft.com/kb/948468 untuk informasi selengkapnya.