IClientSecurity::CopyProxy 方法 (objidl.h)

為指定的介面建立 Proxy 的私人複本。

語法

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

參數

[in] pProxy

要複製 Proxy 之介面的指標。 此參數不可為 NULL

[out] ppCopy

接收 Proxy 複本之 IUnknown 介面指標的指標。 此參數不可為 NULL

傳回值

這個方法可以傳回下列值。

傳回碼 描述
S_OK
已成功完成命令。
E_INVALIDARG
一或多個自變數無效。

備註

CopyProxy 是由用戶端呼叫,為指定的介面建立 Proxy 的私人復本。 Proxy 複本具有驗證信息的預設值。 其驗證資訊可以透過 呼叫 IClientSecurity::SetBlanket 來變更,而不會影響原始 Proxy 的任何其他用戶端。 此復本有一個參考, 而 CopyProxy 的呼叫端必須確定 Proxy 複本已釋放。

無法複製本機介面,例如 IUnknownIClientSecurity。 您無法使用 CopyProxy 複製 Proxy 管理員。

相同 Proxy 的複本與 QueryInterface 有特殊關聯性。 假設遠端物件的 IA 介面有 Proxy,假設已建立名為 b 的複本。 在此情況下,從 b proxy 呼叫 queryInterface for IID_IA 不會擷取 b 上的 IA 介面,而是在 上擷取原始 Proxy。

請注意,任何人都可以使用 SetBlanket 查詢 Proxy 並變更其安全性。 不過,當您建立 Proxy 的複本時,除非您將它提供給它們,否則沒有人可以取得該複本。 只有擁有複本的人員才能設定安全性。

協助程式函式 CoCopyProxy 會封裝對 IClientSecurity 指標的 QueryInterface 呼叫、使用 IClientSecurity 指標呼叫 CopyProxy,以及 IClientSecurity 指標的發行。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows 2000 Server [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 objidl.h (包含 ObjIdl.h)

另請參閱

CoCopyProxy

IClientSecurity