IOleDocumentView::SetInPlaceSite 方法 (docobj.h)

將容器的文件檢視網站與文件的檢視對象產生關聯。

語法

HRESULT SetInPlaceSite(
  [in] IOleInPlaceSite *pIPSite
);

參數

[in] pIPSite

文件檢視網站的 IOleInPlaceSite 介面指標。 此參數可以是 NULL,在此情況下,文件檢視物件會遺失與容器的所有關聯。

傳回值

如果文件檢視網站成功 (關聯或與文件檢視物件) pIPSiteNULL ,此方法會傳回S_OK。 其他可能的傳回值包括下列專案。

傳回碼 Description
E_FAIL
作業失敗。

備註

在啟用檔對象過程中,容器必須將指標傳遞給容器的 IOleInPlaceSite 實作。 這個指標會指定要與呼叫這個方法之檢視相關聯的文件檢視網站。

容器通常會傳遞此指標,以回應要啟動的檔要求。 檔會呼叫 IOleDocumentSite::ActivateMe ,並將指標傳遞給要啟動的檢視,以提出這類要求。 容器接著會使用此指標來呼叫 IOleDocumentView::SetInPlaceSite

來電者附註

如果容器要求建立和啟用文件物件的新實例,而不只是啟用載入的文件物件實例,則檢視網站會傳入 IOleDocument::CreateViewpIPSite 自變數中。 因此,不需要明確呼叫 IOleDocumentView::SetInPlaceSite

實作者的注意事項

如果在已經與檢視網站相關聯的檢視上呼叫這個方法,則檢視必須進行一些考慮,以準備在新網站中啟用本身。 首先,檢視必須停用目前網站中的本身,並釋放其指向該網站的指標。 接下來,如果新的 IOleInPlaceSite 指標不是 NULL,檢視應該同時儲存指標並呼叫 IUnknown::AddRef 。 然後,檢視應該等候容器在新的檢視網站中啟動自己的時機。

文件檢視必須完全實作這個方法;E_NOTIMPL不是可接受的傳回值。

規格需求

需求
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 docobj.h

另請參閱

IOleDocumentView

IOleDocumentView::SetInPlaceSite