OleCreateLinkFromData 函式 (ole2.h)
從剪貼簿擷取的數據傳輸物件建立連結物件,或作為 OLE 拖放作業的一部分。
語法
HRESULT OleCreateLinkFromData(
[in] LPDATAOBJECT pSrcDataObj,
[in] REFIID riid,
[in] DWORD renderopt,
[in] LPFORMATETC pFormatEtc,
[in] LPOLECLIENTSITE pClientSite,
[in] LPSTORAGE pStg,
[out] LPVOID *ppvObj
);
參數
[in] pSrcDataObj
要從中建立連結物件之數據傳輸物件的 IDataObject 介面指標。
[in] riid
呼叫端稍後用來與新對象通訊之介面標識碼的參考 (通常IID_IOleObject,在 OLE 標頭中定義為 IOleObject) 的介面識別符。
[in] renderopt
列舉 OLERENDER 的值,指出新建立物件所要擁有的本機快取繪圖或數據擷取功能。 下列一節將說明其他考慮。
[in] pFormatEtc
列舉 OLERENDER 中的值指標,指出新建立物件所要擁有的本機快取繪圖或數據擷取功能。 所選 的 OLERENDER 值會影響 pFormatEtc 參數的可能值。
[in] pClientSite
IOleClientSite 實例的指標,這是物件從其容器要求服務的主要介面。 此參數可以是 Null。
[in] pStg
記憶體物件上 IStorage 介面的指標。 此參數不可為 NULL。
[out] ppvObj
接收 riid 中所要求介面指標的指標變數位址。 成功傳回時, ppvObj 會在新建立的物件上包含要求的介面指標。
傳回值
此函式會在成功時傳回S_OK。 其他可能的值包括下列專案。
傳回碼 | Description |
---|---|
|
無法開啟剪貼簿。 |
|
無法擷取物件的Moniker。 |
|
無法系結至來源。 需要系結才能取得快取的初始化數據。 |
備註
OleCreateLinkFromData 函式可用來實作貼上連結或拖曳鏈接作業。 其作業類似於 OleCreateFromData 函式的作業,不同之處在於它會建立連結,並尋找不同的數據格式。 如果CF_LINKSOURCE格式不存在,而且 FileName 或 FileNameW 剪貼簿格式存在於資料傳輸物件中, OleCreateLinkFromData 會建立包含所指定檔案連結的套件。
您可以使用 renderopt 和 pFormatetc 參數來控制新建立物件的快取功能。 如需如何判斷要快取之專案的一般資訊,請參閱 OLERENDER 列舉,以取得 renderopt 與 pFormatetc 之間互動的描述。 不過,在 OleCreateLinkFromData 初始化快取的方式上,這些參數會有一些額外的特定效果,如下所示。
值 | Description |
---|---|
OLERENDER_DRAW,OLERENDER_FORMAT | 如果簡報資訊位於源數據物件中的其他格式,則會使用這項資訊。 如果資訊不存在,則快取一開始是空的,但會在第一次執行物件時填入。 新建立的物件中不會快取其他格式。 |
OLERENDER_NONE,OLERENDER_ASIS | 新建立的物件中不會快取任何內容。 |
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | ole2.h |
程式庫 | Ole32.lib |
Dll | Ole32.dll |