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 3.51 Service Pack 5
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