Bagikan melalui


Metode IExternalConnection::AddConnection (objidl.h)

Menaikkan jumlah koneksi eksternal objek yang kuat.

Sintaks

DWORD AddConnection(
  [in] DWORD extconn,
  [in] DWORD reserved
);

Parameter

[in] extconn

Jenis koneksi eksternal ke objek. Satu-satunya jenis koneksi eksternal yang saat ini didukung oleh antarmuka ini kuat, yang berarti bahwa objek harus tetap hidup selama koneksi eksternal ini ada. Koneksi eksternal yang kuat diwakili oleh nilai EXTCONN_STRONG, yang didefinisikan dalam enumerasi EXTCONN.

[in] reserved

Informasi tentang koneksi. Parameter ini dicadangkan untuk digunakan oleh OLE. Nilainya bisa nol, tetapi belum tentu. Oleh karena itu, implementasi AddConnection tidak boleh berisi blok kode yang eksekusinya tergantung pada apakah nilai nol dikembalikan.

Nilai kembali

Metode mengembalikan jumlah koneksi. Nilai ini dimaksudkan untuk digunakan hanya untuk tujuan penelusuran kesalahan.

Keterangan

Objek yang dibuat oleh server objek EXE bergantung pada manajer stub-nya untuk memanggil AddConnection setiap kali klien tautan diaktifkan dan oleh karena itu membuat kunci eksternal pada objek. Ketika klien tautan memutuskan koneksi, manajer stub memanggil IExternalConnection::ReleaseConnection untuk melepaskan kunci.

Aplikasi objek DLL ada di ruang proses yang sama dengan objek mereka, sehingga mereka tidak menggunakan RPC (panggilan prosedur jarak jauh) dan tidak memiliki manajer stub untuk melacak koneksi eksternal. Oleh karena itu, server DLL yang mendukung tautan eksternal ke objek mereka harus mengimplementasikan IExternalConnection sehingga klien tautan dapat langsung memanggil antarmuka untuk memberi tahu mereka ketika koneksi ditambahkan atau dirilis.

Berikut ini adalah implementasi umum untuk metode AddConnection .

DWORD MyInterface::AddConnection(DWORD extconn, DWORD dwReserved)
{
    return extconn & EXTCONN_STRONG ? ++m_cStrong : 0;
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header objidl.h (termasuk ObjIdl.h)

Lihat juga

IExternalConnection

IRunnableObject::LockRunning

OleLockRunning