IOleUILinkContainerW::GetLinkSource method (oledlg.h)

Retrieves information about a link that can be displayed in the Links dialog box.

Syntax

HRESULT GetLinkSource(
  [in]            DWORD  dwLink,
  [out, optional] LPWSTR *lplpszDisplayName,
  [out]           ULONG  *lplenFileName,
  [out, optional] LPWSTR *lplpszFullLinkType,
  [out, optional] LPWSTR *lplpszShortLinkType,
  [out]           BOOL   *lpfSourceAvailable,
  [out]           BOOL   *lpfIsSelected
);

Parameters

[in] dwLink

Container-defined unique identifier for a single link. See IOleUILinkContainer::GetNextLink.

[out, optional] lplpszDisplayName

Address of a pointer variable that receives a pointer to the full display name string for the link source. The Links dialog box will free this string.

[out] lplenFileName

Pointer to the length of the leading file name portion of the lplpszDisplayName string. If the link source is not stored in a file, then lplenFileName should be 0. For OLE links, call IOleLink::GetSourceDisplayName.

[out, optional] lplpszFullLinkType

Address of a pointer variable that receives a pointer to the full link type string that is displayed at the bottom of the Links dialog box. The caller allocates this string. The Links dialog box will free this string. For OLE links, this should be the full User Type name. Use IOleObject::GetUserType, specifying USERCLASSTYPE_FULL for dwFormOfType.

[out, optional] lplpszShortLinkType

Address of a pointer variable that receives a pointer to the short link type string that is displayed in the listbox of the Links dialog box. The caller allocates this string. The Links dialog box will free this string. For OLE links, this should be the short user type name. Use IOleObject::GetUserType, specifying USERCLASSTYPE_SHORT for dwFormOfType.

[out] lpfSourceAvailable

Pointer that returns FALSE if it is known that a link is unavailable since the link is to some known but unavailable document. Certain options, such as Update Now, are disabled (grayed in the user interface) for such cases.

[out] lpfIsSelected

Pointer to a variable that tells the Edit Links dialog box that this link's entry should be selected in the dialog's multi-selection listbox. OleUIEditLinks calls this method at least once for each item to be placed in the links list. If none of them return TRUE, then none of them will be selected when the dialog box is first displayed. If all of them return TRUE, then all will be displayed. That is, it returns TRUE if this link is currently part of the selection in the underlying document, FALSE if not. Any links that are selected in the underlying document are selected in the dialog box; this way, the user can select a set of links and use the dialog box to update them or change their source(s) simultaneously.

Return value

This method returns S_OK on success. Other possible return values include the following.

Return code Description
E_ACCESSDENIED
Insufficient access permissions.
E_FAIL
The operation failed.
E_INVALIDARG
The specified identifier is invalid.
E_OUTOFMEMORY
There is insufficient memory available for this operation.

Remarks

Notes to Callers

Call this method during dialog box initialization, after returning from the Change Source dialog box.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header oledlg.h

See also

IOleLink::GetSourceDisplayName

IOleObject::GetUserType

IOleUILinkContainer

OLEUICHANGESOURCE

OleUIChangeSource

USERCLASSTYPE