IOleUILinkContainerA::SetLinkSource 方法 (oledlg.h)

變更連結的來源。

語法

HRESULT SetLinkSource(
  [in]  DWORD dwLink,
  [in]  LPSTR lpszDisplayName,
  [in]  ULONG lenFileName,
  [out] ULONG *pchEaten,
  [in]  BOOL  fValidateSource
);

參數

[in] dwLink

單一連結的容器定義唯一識別碼。 請參閱 IOleUILinkContainer::GetNextLink

[in] lpszDisplayName

要剖析之新來源字串的指標。

[in] lenFileName

lpszDisplayName字串前置檔案名部分的長度。 如果連結來源未儲存在檔案中, 則 lenFileName 應該是 0。 針對 OLE 連結,請呼叫 IOleLink::GetSourceDisplayName

[out] pchEaten

成功剖析 lpszDisplayName中字元數的指標。

[in] fValidateSource

如果應該驗證 Moniker,則為TRUE;針對 OLE 連結,應該呼叫MkParseDisplayName如果 不應該驗證 Moniker,則為 FALSE。 可能的話,連結應該接受未驗證的來源,並將本身標示為無法使用。

傳回值

此方法會在成功時傳回S_OK。 其他可能的傳回值包括下列專案。

傳回碼 描述
E_ACCESSDENIED
存取權限不足。
E_FAIL
作業失敗。
E_INVALIDARG
提供的識別碼無效。
E_OUTOFMEMORY
此作業的記憶體不足。

備註

來電者的附注

從 [ 變更來源] 對話方塊呼叫這個方法,並一開始將 fValidateSource 設定為 TRUE。 您可以直接或從 [連結] 對話方塊呼叫變更來源。 如果對 IOleUILinkContainer::SetLinkSource 的呼叫傳回錯誤 (例如 MkParseDisplayName 失敗,因為來源無法使用) ,則您應該顯示 不正確連結來源 訊息,而且應該允許使用者決定是否要修正來源。 如果使用者選擇修正來源,則應該將使用者傳回 [ 變更來源 ] 對話方塊,並醒目提示輸入字串的無效部分。 如果使用者選擇不修正來源,則應該第二次呼叫 IOleUILinkContainer::SetLinkSource並將 fValidateSource 設定為 FALSE,而且使用者應該傳回 [ 連結 ] 對話方塊,且連結標示為 [無法使用]。

需求

   
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 oledlg.h

另請參閱

IOleUILinkContainer

MkParseDisplayName