IOleLink::GetSourceMoniker 方法 (oleidl.h)

检索标识链接对象的链接源的名字对象。

语法

HRESULT GetSourceMoniker(
  [out] IMoniker **ppmk
);

parameters

[out] ppmk

接收指向标识链接源的绝对名字对象的接口指针的 IMoniker 指针变量的地址。 成功后,实现必须在 ppmk 上调用 AddRef;调用 Release 由调用方负责。 如果发生错误,实现必须将 ppmk 设置为 NULL

返回值

此方法在成功时返回S_OK。 其他可能的返回值包括以下内容。

返回代码 说明
MK_E_UNAVAILABLE
没有名字对象可用。

注解

调用方备注

容器应用程序可以调用 IOleLink::GetSourceMoniker ,以在“ 链接 ”对话框中显示链接的当前源。 请注意,这要求容器使用 IMoniker::GetDisplayName 方法获取名字对象的显示名称。 如果希望直接获取显示名称,容器可以调用 IOleLink::GetSourceDisplayName 而不是 IOleLink::GetSourceMoniker

如果使用 OleUIEditLinks 函数显示 “链接 ”对话框,则必须实现 IOleUILinkContainer 接口。 该对话框调用 IOleUILinkContainer::GetLinkSource 的实现以获取它应显示的字符串。 该方法的实现可以调用 IOleLink::GetSourceMoniker

实施者说明

链接对象存储链接源的绝对名称和相对名字对象。 如果相对名字对象为非 NULL ,并且名字对象可用于复合文档, 则 IOleLink::GetSourceMoniker 将返回通过将相对名字对象组合到复合文档名字对象的末尾而创建的名字对象。 否则,它将返回绝对名字对象,如果发生错误,则返回 NULL

容器在调用其中一个 OleCreateLink 函数来创建链接时指定绝对名字对象。 应用程序可以调用 IOleLink::GetSourceMonikerIOleLink::GetSourceDisplayName 来更改绝对名字对象。 此外,只要链接对象成功绑定到链接源,或者当它绑定到链接源并通过 IAdviseSink::OnRename 方法收到重命名通知时,链接对象会自动更新名字对象。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 oleidl.h

请参阅

IOleLink

IOleLink::GetSourceDisplayName

IOleLink::GetSourceMoniker