Bagikan melalui


Fungsi CoCopyProxy (combaseapi.h)

Membuat salinan privat dari proksi yang ditentukan.

Sintaks

HRESULT CoCopyProxy(
  [in]  IUnknown *pProxy,
  [out] IUnknown **ppCopy
);

Parameter

[in] pProxy

Penunjuk ke antarmuka IUnknown pada proksi yang akan disalin. Parameter ini tidak boleh NULL.

[out] ppCopy

Alamat variabel pointer yang menerima penunjuk antarmuka ke salinan proksi. Parameter ini tidak boleh NULL.

Mengembalikan nilai

Fungsi ini dapat mengembalikan nilai berikut.

Menampilkan kode Deskripsi
S_OK
Menunjukkan keberhasilan.
E_INVALIDARG
Satu atau beberapa argumen tidak valid.

Keterangan

CoCopyProxy membuat salinan privat dari proksi yang ditentukan. Biasanya, fungsi ini dipanggil ketika klien perlu mengubah informasi autentikasi proksinya melalui panggilan ke CoSetProxyBlanket atau IClientSecurity::SetBlanket tanpa mengubah informasi ini untuk klien lain. CoSetProxyBlanket memengaruhi semua pengguna instans proksi, jadi membuat salinan privat proksi melalui panggilan ke CoCopyProxy dan kemudian memanggil CoSetProxyBlanket (atau IClientSecurity::SetBlanket) menggunakan salinan menghilangkan masalah.

Fungsi pembantu ini merangkum urutan panggilan umum berikut (penanganan kesalahan dikecualikan):

    pProxy->QueryInterface(IID_IClientSecurity, (void**)&pcs);
    pcs->CopyProxy(punkProxy, ppunkCopy);
    pcs->Release();

Antarmuka lokal mungkin tidak disalin. IUnknown dan IClientSecurity adalah contoh antarmuka lokal yang ada.

Salinan proksi yang sama memiliki hubungan khusus sehubungan dengan QueryInterface. Mengingat proksi, a, dari antarmuka IA dari objek jarak jauh, misalkan salinan dibuat, yang disebut b. Dalam hal ini, memanggil QueryInterface dari proksi b untuk IID_IA tidak akan mengambil antarmuka IA di b, tetapi yang ada di a, proksi asli dengan pengaturan keamanan "default" untuk antarmuka IA.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header combaseapi.h (termasuk Objbase.h)
Pustaka Ole32.lib
DLL Ole32.dll

Lihat juga

CoSetProxyBlanket

IClientSecurity::SetBlanket

Keamanan di COM