Knowledge Base |

# BUG: IROT::Register() and IOL::SetDisplayName() Inconsistency

Article ID: 111607

Article Last Modified on 3/3/2005

APPLIES TO

- Microsoft OLE 2.01
- Microsoft OLE 4.0, when used with:
  - Microsoft Windows NT 4.0
  - Microsoft Windows NT 3.51 Service Pack 5
  - Microsoft Windows 95

This article was previously published under Q111607

## SYMPTOMS

IRunningObjectTable::Register() allows monikers that are not valid filenames to be registered as file monikers. However, if the display name string passed to IOleLink::SetSourceDisplayName() is not a valid filename, SetSourceDisplayName() returns STG_E_FILENOTFOUND.

## STATUS

Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article.

## MORE INFORMATION

This inconsistency may become apparent when an OLE application is calling IOleLink::SetSourceDisplayName() to change the source of a link object. It is possible that a new file moniker that is not a valid source name will be registered on the running object table--for example, a moniker of "New 1" for a new, as yet unsaved document. It will not be possible to use SetSourceDisplayName() to link to this object, however, because "New 1" is not a valid filename, and therefore it will be rejected by SetSourceDisplayName().

Additional query words: 2.01 3.10 3.50 4.00 kbbuglist

Keywords: kbbug KB111607