FIX: Anda menerima "kegagalan halaman tidak sah dalam modul MSVCRT.DLL"pesan galat setelah Anda menginstal perpustakaan run-time dari Visual C++ 6.0

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 190536
Perbesar semua | Perkecil semua

GEJALA

Setelah Anda menginstal C Runtime Library (Msvcrt.dll) dari Visual C++ 6.0 pada komputer Anda, aplikasi yang sebelumnya berlari dengan benar gagal dan galat aplikasi yang mirip dengan berikut ini muncul:
<application name="">disebabkan kegagalan halaman tidak sah di modul MSVCRT.DLL di XXXX:XXXXXXXX.<b00></b00></application>

PENYEBAB

Satu kemungkinan penyebab dari galat ini adalah bahwa aplikasi telah ditulis melewati blok memori yang dimiliki oleh objek tertentu. The Small-block heapmemory manajer yang kapal dengan Visual C++ 6.0 run-time Perpustakaan menggabungkan struktur kontrol tumpukan dalam tumpukan kecil-blok. Timpa blok memori perubahan kecil-blok tumpukan pointer alamat, mempengaruhi pointer buruk dan mungkin kesalahan di Msvcrt.dll ketika kursor direferensikan.

PEMECAHAN MASALAH

Aplikasi vendor perlu memastikan bahwa aplikasi mereka menggunakan c tumpukan kecil-blok run-time dengan benar.

Untuk membantu pelanggan yang mengalami masalah ini dalam aplikasi pihak ketiga, Microsoft telah meluncurkan baru C Runtime dynamic-link library (DLL), Msvcrt.dll, yang menerapkan dua tumpukan manajer: Visual C++ versi 5.0-kompatibel tumpukan manajer dan Visual C++ versi 6.0-kompatibel tumpukan manager. Msvcrt.dll mendeteksi versi Visual C++ aplikasi Anda dibangun dengan, dan menggunakan manajer tumpukan sesuai untuk aplikasi tersebut. Jika versi Visual C++ 6.0 atau lebih besar, Visual C++ 6.0-kompatibel tumpukan manager digunakan; Jika Versi sebelumnya dari versi 6.0, tumpukan 5.0-kompatibel Visual C++ digunakan.

Visual Studio 6.0 pengguna dapat mendapatkan file Msvcrt.dll baru Instalasi Microsoft Visual Studio paket layanan terbaru. Jika Anda tidak menggunakan Visual Studio, menginstal pembaruan Microsoft perpustakaan; untuk tambahan informasi, lihat artikel berikut pada Basis Pengetahuan Microsoft:
197298 Perpustakaan Microsoft memperbarui: apa, di mana, mengapa

STATUS

Microsoft telah mengkonfirmasi bahwa ini adalah bug dalam produk Microsoft sebagaimana didaftar di dalam bagian "Berlaku untuk".

Bug ini diperbaiki pada Visual Studio 6.0 paket layanan 3.Untuk informasi lebih lanjut tentang paket layanan Visual Studio, klik nomor artikel di bawah ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
194022Visual Studio 6.0 service pack, apa, di mana, mengapa
194295 Bagaimana Mengenalinya Visual Studio paket layanan diinstal

INFORMASI LEBIH LANJUT

Tumpukan kecil-blok terdiri dari alokasi yang kurang dari 1 K dalam ukuran. Bug alam ini mungkin berperilaku berbeda dalam versi Perpustakaan run-time c karena struktur kontrol terletak di lokasi berbeda dan terpisah di memori. Sering kali, jenis kode kesalahan mengakibatkan korupsi lain blok memori dan kemungkinan kecelakaan. The rangkaian peristiwa yang menyebabkan pelanggaran akses berbeda saat Anda menggunakan Visual C++ 6.0 C Runtime perpustakaan.

Anda dapat mengontrol jenis masalah dengan menggunakan debug tumpukan. Silakan lihat dokumentasi online berjudul, "Menggunakan tumpukan Debug." Anda harus mengaktifkan debug tumpukan dengan menelepon _CrtSetDbgFlag (_CRTDBG_ALLOC_MEM_DF |_CRTDBG_CHECK-_ALWAYS_DF) pada proses inisialisasi dalam membangun debug aplikasi Anda.

Properti

ID Artikel: 190536 - Kajian Terakhir: 20 September 2011 - Revisi: 2.0
Kata kunci: 
kbhotfixserver kbqfe kberrmsg kbbug kbcrt kbfix kbvs600sp2fix kbvs600sp3fix kbmt KB190536 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:190536

Berikan Masukan

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com