ID Artikel: 206076 - Kajian Terakhir: 19 September 2011 - Revisi: 2.0 Bagaimana untuk mengumpulkan antarmuka di apartemen di Visual C++
Catatan Microsoft Visual c ++ 2008, Microsoft Visual C++ 2005, Microsoft Visual C++.NET 2003, dan Microsoft Visual C++.NET 2002 mendukung kedua kode dikelola model yang disediakan oleh Microsoft.NET Framework dan tidak dikelola asli Microsoft Windows kode model. Informasi di dalam artikel ini hanya berlaku untuk kode Visual C++ unmanaged. RINGKASAN Marshal.exe adalah contoh yang menunjukkan cara yang berbeda
marshaling antarmuka di apartemen. INFORMASI LEBIH LANJUTBerkas berikut ini tersedia untuk diunduh dari Pusat Unduhan Microsoft: Perkecil gambar ini ![]() Untuk informasi selengkapnya tentang cara mengunduh berkas dukungan Microsoft, klik nomor artikel berikut ini untuk melihat artikel di Pangkalan Pengetahuan Microsoft: 119591
(http://support.microsoft.com/kb/119591/
)
Cara mendapatkan berkas dukungan Microsoft dari layanan daring Microsoft telah memindai berkas ini dari virus. Microsoft menggunakan perangkat lunak pendeteksi virus terbaru yang tersedia pada tanggal saat berkas dikirimkan. Berkas tersebut disimpan di server aman, yang membantu mencegah segala perubahan tidak sah terhadap berkas.Single-Threaded Apartemen (STA) adalah benang yang diinisialisasi dengan CoInitialize() atau CoInitializeEx (NULL, COINIT_APARTMENTTHREADED). Juga, setiap benang lainnya di proses yang sama yang menggunakan COM juga harus menghubungi CoInitialize() atau CoInitializeEx() untuk menginisialisasi COM untuk thread yang. Jika Anda membuat objek COM di satu STA Thread, Anda tidak bisa lewat antarmuka pointer ke thread STA lain dan memanggil pada penunjuk itu. Karena panggilan ke objek STA seharusnya serial, COM memberlakukan ini hanya memungkinkan satu benang untuk panggilan ke STA objek ( thread di mana itu diciptakan). Jika penunjuk antarmuka Anda lulus untuk kedua STA thread adalah pointer ke proxy, Anda akan mendapatkan error HRESULT 0x8001010E atau RPC_E_WRONG_THREAD (aplikasi disebut antarmuka yang telah mengerahkan untuk thread berbeda). Jika antarmuka pointer adalah pointer langsung ke objek, COM tidak akan menegakkan serialisasi, Anda tidak akan mendapatkan kesalahan di atas, dan panggilan metode antarmuka akan dibuat. Namun, hal ini masih ilegal perilaku dari klien. Anda masih dapat memanggil metode STA objek dari benang STA berbeda asalkan Anda melakukannya melalui proxy. Proxy adalah salinan dari antarmuka yang Anda mendapatkan melalui marshaling/unmarshaling. Ketika Anda membuat panggilan melalui proxy, COM membuat Thread switch dan panggilan berakhir mengeksekusi dalam konteks thread di mana STA objek diciptakan. Ada tiga cara untuk Marsekal/unmarshal sebuah antarmuka untuk thread STA lain:
REFERENSIUntuk informasi selengkapnya, klik nomor artikel berikut untuk melihat artikel di Pangkalan Pengetahuan Microsoft: 172314
(http://support.microsoft.com/kb/172314/
)
Penjelasan dari kesalahan RPC_E_WRONG_THREAD Berlaku bagi:
Penerjemahan MesinPENTING: 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:206076
(http://support.microsoft.com/kb/206076/en-us/
)
| Sumber Lain Situs Pendukung Lain
KomunitasCari Bantuan SekarangTerjemahan Artikel
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email


Kembali ke atas

