ID Artikel: 139071 - Kajian Terakhir: 14 September 2011 - Revisi: 2.0

FIX: OLE Automation BSTR cache akan menyebabkan memori sumber kebocoran pada Windows 2000

Download Hotfix tersediaHotfix Download Available
View and request hotfix downloads
Tips SistemThis article applies to a different operating system than the one you are using. Article content that may not be relevant to you is disabled.
Perbesar semua | Perkecil semua

RINGKASAN

Artikel ini menjelaskan berikut tentang rilis perbaikan terbaru ini:
  • Masalah yang diperbaiki oleh paket perbaikan terbaru.
  • Prasyarat yang diperlukan untuk menginstal paket perbaikan terbaru.
  • Apakah harus memulai ulang komputer setelah menginstal paket hotfix.
  • Apakah paket hotfix digantikan oleh paket hotfix lainnya.
  • Apakah Anda harus mengubah registri.
  • Berkas yang disertakan dalam paket perbaikan terbaru.

GEJALA

Otomatisasi (sebelumnya disebut OLE otomatisasi dan otomatisasi ActiveX) cache ruang yang dialokasikan untuk BSTR string. Ini dapat menyebabkan IMallocSpy untuk atribut kebocoran memori untuk pengguna BSTR salah dalam aplikasi yang menggunakan otomatisasi 's BSTR string. Sumber benar kebocoran dapat ditemukan dengan menonaktifkan otomatisasi 's cache dengan menetapkan variabel lingkungan OANOCACHE = 1 sebelum menjalankan aplikasi. Dalam banyak aplikasi berbasis server, BSTR cache tidak diperlukan. Ada perbaikan terbaru tersedia untuk menonaktifkan caching pada Windows 2000 komputer BSTR. Windows XP dan Windows Server 2003 tidak memerlukan perbaikan terbaru untuk menonaktifkan BSTR caching.

PEMECAHAN MASALAH

Tersedia hotfix yang didukung dari Microsoft. Namun, hotfix ini ditujukan hanya untuk memecahkan masalah yang dijelaskan di artikel ini. Gunakan hotfix ini hanya untuk sistem yang mengalami masalah khusus ini.

Apabila hotfix tersedia untuk diunduh, akan ada bagian "Tersedia unduhan hotfix" di bagian atas artikel Pangkalan Pengetahuan ini. Jika bagian ini tidak ditampilkan, kirimkan permintaan ke Layanan Pelanggan dan Dukungan Microsoft untuk mendapatkan hotfix.

Catatan Jika terjadi masalah tambahan atau jika pemecahan masalah apa pun diperlukan, Anda perlu membuat permintaan layanan tersendiri. Biaya dukungan biasa akan diterapkan pada pertanyaan dan masalah dukungan tambahan yang tidak termasuk di hotfix ini. Untuk daftar lengkap nomor telepon pelanggan layanan dan dukungan Microsoft atau untuk membuat permintaan layanan tersendiri, kunjungi Web site Microsoft berikut:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
Catatan Formulir "Tersedia download perbaikan terbaru" menampilkan bahasa untuk perbaikan terbaru tersedia. Jika tidak menemukan bahasa Anda, ini karena hotfix tidak tersedia untuk bahasa tersebut.

Prasyarat

Anda harus menginstal Windows 2000 Paket Layanan 4 (SP4) untuk menerapkan perbaikan terbaru ini.

Informasi mulai ulang

Anda harus memulai ulang komputer setelah menerapkan hotfix ini.

Informasi registri

Anda tidak perlu mengubah registri.

Informasi berkas perbaikan terbaru

Perbaikan terbaru ini berisi hanya file yang diperlukan untuk memperbaiki masalah yang berisi daftar artikel ini. Perbaikan terbaru ini mungkin tidak berisi semua berkas yang harus Anda miliki untuk memperbarui produk ke edisi terbaru.Versi bahasa Inggris dari hotfix ini memiliki atribut berkas (atau atribut berkas yang lebih baru) yang tercantum dalam tabel berikut. Tanggal dan waktu untuk berkas-berkas tersebut dicantumkan dalam Coordinated Universal Time (UTC). Apabila Anda melihat informasi berkas, tanggal akan diubah ke waktu lokal. Untuk menemukan perbedaan waktu UTC dan waktu lokal, gunakan Zona waktu tab pada alat tanggal dan waktu dalam Panel kontrol.
Perkecil tabel iniPerbesar tabel ini
Nama fileVersi berkasUkuran berkasTanggalWaktuPlatform
Asycfilt.dll2.40.4528.0143,63211 September 200513: 05x86
Oleaut32.dll2.40.4528.0631,05611 September 200513: 05x86
Olepro32.dll5.0.4528.0164,11211 September 200513: 05x86
Stdole2.TLB2.40.4528.016,89623 Agustus 200502: 13

STATUS

Microsoft telah mengkonfirmasi bahwa ini adalah masalah di dalam produk Microsoft sebagaimana tercantum di bagian "Berlaku untuk".

INFORMASI LEBIH LANJUT

Otomatisasi cache ruang yang dialokasikan untuk BSTRs. Ini akan mempercepat SysAllocString/SysFreeString urutan. Namun, ini dapat menyebabkan IMallocSpy untuk atribut kebocoran memori salah pengguna karena tidak menyadari caching Otomatisasi yang melakukan. Sebagai contoh, jika aplikasi mengalokasikan BSTR dan membebaskan, membebaskan blok memori dimasukkan ke dalam BSTR cache oleh otomatisasi. Jika aplikasi kemudian mengalokasikan BSTR lain, mungkin menerima gratis blok dari cache. Jika kedua alokasi BSTR tidak dibebaskan, IMallocSpy akan atribut kebocoran alokasi pertama BSTR. Kebocoran benar sumber (alokasi kedua) dapat ditentukan dengan menonaktifkan BSTR caching Otomatisasi yang melakukan. Anda dapat melakukan ini dengan variabel lingkungan pengaturan OANOCACHE = 1 sebelum Anda menjalankan aplikasi. Pada Windows 2000, versi perbaikan terbaru dari oleaut32.dll yang direferensikan dalam artikel diperlukan. Hal ini juga penting untuk mencari kebocoran pada waktu yang tepat untuk mencegah kebocoran palsu laporan. Kebocoran ini dapat terjadi saat pelaksanaan IMallocSpy memeriksa kebocoran terlalu cepat. Pengguna memori yang dialokasikan oleh IMalloc dapat secara sah mempertahankan setelah OleUninitialize. Sebagai contoh, cache otomatisasi BSTR dihapus pada Oleaut32.dll file DLL_PROCESS_DETACH waktu. Ini berarti bahwa memeriksa kebocoran segera setelah OleUninitialize dapat menyebabkan palsu laporan kebocoran memori. A tempat yang baik untuk mencari kebocoran memori adalah dalam destructor contoh statis kelas, yang menerapkan IMallocSpy. Destructor contoh ini statis disebut setelah DllMain DLL setiap terhubung oleh aplikasi disebut dengan DLL_PROCESS_DETACH.

Tetapkan variabel lingkungan OANOCACHE

  1. Di Panel kontrol, klik dua kaliSistem ikon. The Properti sistem kotak dialog akan muncul.
  2. Pada Lanjutan tab, klik Variabel lingkungan. The Variabel lingkungan kotak dialog akan muncul.
  3. Di bawah Sistem variabel, klik Baru. The Variabel sistem baru kotak dialog akan muncul.
  4. Jenis OANOCACHE dalam Nama variabel kotak.
  5. Jenis 1 dalam Nilai variabel kotak.
  6. Klik Oke tiga kali.
Sebelum Anda mengubah variabel lingkungan OANOCACHE, Anda harus menghentikan proses server berikut jika mereka menjalankan:
  • The Inetinfo proses
  • The Dllhost proses
  • The W3wp proses
  • The Aspnet_wp proses
Catatan Jika Anda tidak yakin apakah ini proses server berjalan, tetapkan variabel lingkungan OANOCACHE = 1, dan kemudian restart komputer.

REFERENSI

Untuk informasi selengkapnya, klik nomor artikel berikut untuk melihat artikel di Pangkalan Pengetahuan Microsoft:
824684  (http://support.microsoft.com/kb/824684/ ) Deskripsi tentang terminologi standar yang digunakan untuk menjelaskan pemutakhiran perangkat lunak Microsoft

Berlaku bagi:
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
Kata kunci: 
kbautohotfix kbHotfixServer kbqfe kbexpertiseadvanced kbfix kbautomation kbmt KB139071 KbMtid
Penerjemahan MesinPenerjemahan 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:139071  (http://support.microsoft.com/kb/139071/en-us/ )