ID: Q112036
The information in this article applies to:
The information in this article is a summary of individual articles contained in the Microsoft Knowledge Base (as of 4/21/95). These articles can be found by querying on the article's ID number or on words in the title and text. The Microsoft Knowledge Base can be accessed on the Internet (through ftp.microsoft.com or www.microsoft.com).
Article ID: Q86408
In an OLE client application, the OleCreateLinkFromFile function returns the value OLE_ERROR_DRIVE.
Article ID: Q98679
IDataObject::GetData returns DV_E_FORMATETC when requesting a device-independent bitmap (DIB) from an OLE object.
Article ID: Q104141
A general protection (GP) fault occurs when calling IOleObject::Close() on an SR2TEST object.
Article ID: Q108310
During the print process from (I)CntrOutl, a server application is asked to render its display with the TARGETDEVICE structure set to NULL instead of containing a valid structure. This implies that (I)CntrOutl wants a screen representation rather than a printed representation of the object.
Article ID: Q108311
After embedding an ISvrOutl object in Cl2Test, pressing the ALT+BACKSPACE accelerator (Undo) results in a general protection (GP) fault within ISvrOutl.
Article ID: Q108371
Creating an object from a zero length file that does not have a valid file class extension results in a general protection (GP) fault after displaying the message, "Not enough memory to perform this operation. Close one or more applications and try again."
Article ID: Q108930
In certain circumstances, editing the Line Height of an ISvrOutl object embedded within Cl2Test results in a general protection (GP) fault after displaying the following message:
GDI - An error has occurred in your application. If you choose Ignore,
you should save your work in a new file. If you choose Close, your
application will terminate.
Article ID: Q108931
Deleting an object from within the Object Packager results in a general protection (GP) fault.
Article ID: Q108932
The Paste Link option is not available in an OLE 1.0 client application after copying an unsaved SR2TEST object to the clipboard.
Article ID: Q108935
After editing a linked SR2TEST object from CL2TEST, SR2TEST fails to shut down after first displaying the following message box:
Error Document not unlocked. Attempt Self-unlocking?
Article ID: Q108939
The OleQueryLinkFromData application programming interface (API) function returns failure when clipbook data from another machine is copied to the local clipboard, even if the clipbook contains all of the data needed to create a link.
Article ID: Q109116
Packaging an object that has a fully qualified path of more than 64 letters results in a general protection (GP) fault in the Object Packager.
Article ID: Q109541
After inserting an SR2TEST object into the in-place version of the OUTLINE sample application, the status bar will not be redrawn until the container application's window is resized.
Article ID: Q109542
After inserting an Sr2Test object within the in-place Outline sample application, cursor display is not handled correctly when the cursor is positioned over the in-place object.
Article ID: Q109543
The OLE 2.01 creation functions [OleCreate(), OleCreateFromData(), and so forth] and IOleCache::Cache() fail if multiple values are specified for the TYMED field of the FORMATETC parameter. The functions fail even if the object server supports at least one of the TYMED values specified.
Article ID: Q109544
When an OLE 2.01 container application calls IRunningObjectTable::IsRunning() on the moniker for a linked OLE 1.0 object, IsRunning() returns S_FALSE even if that OLE 1.0 object is already running.
Article ID: Q109545
An application holding on to a clipboard IDataObject pointer, and making repeated calls to IDataObject::EnumFormatEtc() through that pointer, may find that the set of formats returned by EnumFormatEtc() changes between calls.
Article ID: Q109546
During an in-place activation session, SR2TEST sometimes incorrectly enables menu items on its Edit menu.
Article ID: Q109547
When an OLE 1.0 object is inserted into an OLE 2.0 container document and then closed without an update being invoked, the correct streams for that object are not written to storage. Any subsequent attempt by the container to load the object will fail.
Article ID: Q109548
When attempting to insert a new embedded object from a file, CL2TEST fails with the error STG_E_FILENOTFOUND if the filename or directory name provided contains an extended character.
Article ID: Q109549
In some cases, inserting a large .WAV file object into either an OLE 1.0 or OLE 2.0 container will fail.
Article ID: Q109552
If an application places a data transfer object onto the clipboard and that data object enumerates CF_OWNERDISPLAY as one of the clipboard formats, the application will not receive the WM_PAINTCLIPBOARD message.
Article ID: Q110488
An OLE 2.0 container application calls IOleCache::Cache for a particular FORMATETC and is returned the value OLE_S_FORMATETC_NOTSUPPORTED. A subsequent call to IOleCache::Cache with the same FORMATETC returns CACHE_S_SAMECACHE.
Article ID: Q110714
If an OLE 1.0 client application contains an embedded object and copies the object to the clipboard and an OLE 2.0 container application then performs a paste operation by creating a new embedded object based on the clipboard data by calling OleGetClipboard() and then calling OleCreateFromData(), the resulting embedded object appears blank in the container's document if the OLE 2.0 container specifies OLERENDER_ASIS as the renderOpt parameter to OleCreateFromData().
Article ID: Q110715
When an invisible MSDRAW object is inserted as an OLE embedded object, the object retains the keyboard focus. This behaviour is incorrect. The MSDRAW object should not take the focus until it has been made visible.
This problem occurs whether the MSDRAW object is inserted into an OLE 1.0 client application or into an OLE 2.0 container application.
Article ID: Q110796
Calling OleDraw() or IViewObject::Draw() to print an iconic OLE object to a PostScript printer results in a black rectangle being drawn.
Article ID: Q110798
The first format entry in the Paste Special dialog box is blank after copying an OLE2Link object from an OLE 1.0 client to the clipboard.
NOTE: An OLE2Link object is created by the OLE 1.0 compatibility layer when an OLE 2.0 link is copied from an OLE 2.0 application to the clipboard, and then pasted into an OLE 1.0 client application.
Article ID: Q110799
All calls to IOleContainer::EnumObjects() fail.
Article ID: Q110871
Selecting the Paste Link menu item in the CNTROUTL sample application does not correctly display the contents of the link if the source application is the SVROUTL sample application.
This problem occurs only if the information created in SVROUTL is edited further after the Edit Copy operation in SVROUTL, but before the Paste Link operation in CNTROUTL. In this situation, the resulting link object is displayed as originally copied to the clipboard, and does not reflect the changes made after the copy operation.
Article ID: Q110872
A non-running embedded object is resized in an OLE 2.01 container application. The next time the object is run, it snaps back to its previous size.
Article ID: Q111014
IPersistFile::GetCurFile() returns S_FALSE to indicate that the document has no currently associated file. In this case, GetCurFile() returns the default prompt string for the filename (as would be displayed in the Save As dialog box under the File menu) in the lplpszFileName parameter.
When CL2TEST calls IPersistFile::GetCurFile(), and GetCurFile() returns S_FALSE, CL2TEST fails to display the returned prompt string.
Article ID: Q111339
Selecting the iconic aspect when inserting an object in CL2TEST results in the object being created and displayed with the content aspect.
Article ID: Q111340
Double-clicking a link to an embedded object in CL2TEST results in the activation remaining on CL2TEST. The correct action would be for the container of the embedded object to obtain the activation and edit the object visually (if possible).
Article ID: Q111577
An OLE 2.0 container application inserts a new embedded object into a document. The container calls IOleObject::Update() on the object to update the cache, then calls IOleObject::Close(OLECLOSE_NOSAVE) to transition the object back to the running state. Finally, the container tries to rerun the object by calling IOleObject::DoVerb().
In this particular scenario, DoVerb() will return STG_E_FILENOTFOUND, and the object will not be rerun.
Article ID: Q111578
An OLE 1.0 server application copies an object to the clipboard, then enters the blocked state. An OLE 2.0 container application then attempts to paste a link to the object from the clipboard. The OLE 2.0 application is frozen.
Next, the OLE 1.0 application is shut down. This unfreezes the OLE 2.0 container application, which proceeds to paste the link to the OLE 1.0 object. However, an instance of the OLE 1.0 server is launched. Normally, the server is not run in a paste-link scenario.
Article ID: Q111585
Whenever the OLE 1.0 client compatibility layer uses IDataObject, it uses the OLE 2.0 server's document-level data object rather than the server's pseudo-object data object.
Article ID: Q111595
An OLE 2.01 object is inserted into an OLE 1.0 container using OleCreateFromTemplate(). The OLE libraries start the server, but then the object creation fails, or a blank object is created.
Article ID: Q111607
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.
Article ID: Q111608
OLE type emulation is the process that allows the application user to specify that all objects of some particular type are henceforth to be activated as objects of some alternate, emulating type. When objects of the original type are subsequently run, the server for the emulating type is launched to serve them.
However, this emulation does not occur for objects of the original type that were already in the loaded state when the type emulation occurred. When such objects are subsequently run, they are run as the original type, not the emulating type. The original server is launched, not the server for the emulating type.
Article ID: Q111609
When a link object from an OLE 2.0 application is copied to the clipboard and then pasted into an OLE 1.0 application, the OLE 2.0 emulation layer preserves the object's relative moniker. If the OLE 1.0 application document is closed and then reopened by an OLE 2.0 version of the application, OLE 2.0 will create a full moniker for the linked object by appending the preserved relative moniker to the file moniker for the document. This full moniker will be incorrect, because it will point to the new document rather than to the first OLE 2.0 application's document that contains the original linked object.
However, OLE 2.0 will still be able to bind to the linked object by following the absolute moniker that is also stored with the object (providing that the absolute location of the original linked object has not changed). At the time of this binding, OLE will then correct the full moniker for the object.
Article ID: Q111611
The OleConvertStorageToOLESTREAM() API (application programming interface) call is used to convert the storage of an embedded object from the OLE 2.0 storage model to the OLE 1.0 storage model. However, if the OLE 2.0 object has a CLSID of NULL, then OleConvertStorageToOLESTREAM() fails with a return code of OLE_E_CLASS.
Article ID: Q111612
A 256-color bitmap is loaded into Microsoft Paintbrush version 3.11. The image is selected and then copied to the clipboard. An OLE 2.0 application then pastes a link to the object from the clipboard. To perform the paste- link operation, the container calls OleCreateLinkFromData(), specifying OLERENDER_FORMAT as the rendering option and CF_DIB as the desired format.
The resulting link object in the OLE 2.0 application has an incorrect appearance, such as being colored solid black.
Article ID: Q111613
An OLE 2.0 container application calls IOleObject::IsUpToDate to determine whether or not an OLE 1.0 link object is up to date. IsUpToDate() returns S_FALSE, even though the object is actually up to date.
Article ID: Q111614
An OLE 2.0 container application document contains an embedded OLE 1.0 object. The container calls IOleCache::Cache() to control the cached presentation data for the object, and specifies ADVF_DATAONSTOP as the advise flag to Cache(). The user makes some changes to the object in the OLE 1.0 server, then attempts to update the object's presentation in the server by choosing the Update command from the File menu. Finally, the user closes the object server.
In this specific scenario, the object's presentation in the server is not updated. The object's native data, however, is correct.
Article ID: Q111655
To determine whether an OLE link needs to be updated, an OLE 2.0 container application needs to call IOleObject::IsUpToDate. If this method returns S_FALSE, the link needs to be updated; otherwise, the link can be considered up to date. However, calling IOleObject::IsUpToDate on a manual link while the link server is not running results in an a return value of S_FALSE, even if the link is current. The result of this is that OLE 2.0 container applications may update links unnecessarily.
Article ID: Q112410
If Borland's WINSIGHT tool is running when you start some of the sample applications that have been included in the OLE 2.01 SDK, a general protection (GP) Fault will occur before the main application window appears.
The following OLE 2.01 SDK sample applications are affected:
cl2test.exe
sr2test.exe
outline.exe
cntroutl.exe
svroutl.exe
icntrotl.exe
isvrotl.exe
Article ID: Q112412
The OLE 2.01 libraries will not convert a Mac OLESTREAM to a Windows OLESTREAM. Similarly, the Windows OLE dynamic-link libraries (DLLs) will not convert a Mac IStorage to a Windows OLESTREAM.
Article ID: Q112413
Printing does not work correctly from CL2TEST.EXE. Choosing Print from the File menu results in a blank printout.
Keywords : LeTwoOth kbbuglist
Version : 1.00 2.00 2.01
Platform : WINDOWS
Issue type : kbbug
Last Reviewed: June 4, 1997