Difference between revisions of "Ole32.dll"

From ReactOS Wiki
Jump to: navigation, search
m
m
Line 65: Line 65:
 
*Sync to Wine-20040408:
 
*Sync to Wine-20040408:
 
**Fixed the implementation of CoTreatAsClass ([[Warren Turkal]]) ([[Ge van Geldorp]])
 
**Fixed the implementation of CoTreatAsClass ([[Warren Turkal]]) ([[Ge van Geldorp]])
 +
 +
[[ChangeLog-0.2.4]]
 +
* Fix a few serious race conditions in the OLE object pipe server. ([[Mike McCormack]])
 +
* Add some explanations to compobj.c, implement flushing message queue on shutdown. ([[Mike McCormack]])
 +
* Assorted spelling fixes. ([[Francois Gouget]])
 +
* IMalloc vtables are static. ([[Marcus Meissner]])
 +
* IID_IObjectWithSite is already in libuuid, no need to declare here. ([[Marcus Meissner]])
 +
* Return an error in CoMarshalInterface if the IUnknown pointer is NULL and don't crash. ([[Aric Stewart]])
 +
* Removed the winedefault.reg message. ([[Ivan Leo Puoti]])
 +
* Add static to non-exported marshal functions. ([[Robert Shearman]])
 +
* Remove unused marshal functions. ([[Robert Shearman]])
 +
* Rename several RPC functions. ([[Robert Shearman]])
 +
* Avoid some non-portable makefile constructs, and get rid of the ALTNAMES variable. ([[Alexandre Julliard]])
 +
* Get rid of the non-standard ICOM_VTABLE macro. ([[Alexandre Julliard]])
 +
* Get rid of the non-standard ICOM_VFIELD macro. ([[Alexandre Julliard]])
 +
* Get rid of the non-standard ICOM_DEFINE macro. ([[Alexandre Julliard]])
 +
* Moved ICOM_THIS_MULTI definition out of objbase.h and into the files that use it. ([[Alexandre Julliard]])
 +
* Added a test for stat'ing a memory based storage file. ([[Mike McCormack]])
 +
* stat on memory storage should return a NULL name, not "". ([[Mike McCormack]])
 +
* Assorted spelling fixes. ([[Francois Gouget]])
 +
* Modify widl to put the C COM macros inside an #ifdef COBJMACROS block as is done in the Windows headers. ([[Francois Gouget]])
 +
* Add #define COBJMACROS where needed in Wine. ([[Francois Gouget]])
 +
* Fixes the compilation of the oleaut32/tests/olefont.c and urlmon/tests/url.c conformance tests with the Windows headers. ([[Francois Gouget]])
 +
* Implement disconnect for proxies so that stubs are properly destroyed. ([[Mike Hearn]])
 +
* Disconnect proxies at COM shutdown to release the corresponding stubs. ([[Mike Hearn]])
 +
* Don't marshal IClassFactory into the local server pipe until we have connected, otherwise we might end up with stubs that are never used. ([[Mike Hearn]])
 +
* Pass -Embedding switch to EXE servers, more tracing. ([[Mike Hearn]])
 +
* Fix misleading warning ole CoGetClassObject. ([[Mike Hearn]])
 +
* Fix ref counting in StdMarshalImpl_MarshalInterface for case where the stub already exists. ([[Mike Hearn]])
 +
* Implement StdMarshal::ReleaseMarshalData. ([[Mike Hearn]])
 +
* Fix infinite loops by checking the return value of _invoke_onereq and bailing appropriately. ([[Mike Hearn]])
 +
* Add a comment on the SendReceive behaviour. Improve two others. ([[Mike Hearn]])
 +
* Unref stub after invoking on it. ([[Mike Hearn]])
 +
* Remove unneeded STUBMGR_Start call. ([[Robert Shearman]])
 +
* Cleanup compobj_private.h. ([[Robert Shearman]])
 +
* Fix some inaccuracies in a comment and reformat. ([[Robert Shearman]])
 +
* Add static to non-exported marshal functions. ([[Robert Shearman]])
 +
* Remove unused marshal functions. ([[Robert Shearman]])
 +
* Rename several RPC functions. ([[Robert Shearman]])
 +
* Emit fixme for known local wrong behaviour. ([[Robert Shearman]])
 +
* Implement StdMarshal::ReleaseMarshalData. ([[Robert Shearman]])
 +
* Document wrong behaviour for IRunningObjectTable. ([[Robert Shearman]])
 +
* Fix infinite loops by checking the return value of _invoke_onereq and bailing appropriately. ([[Robert Shearman]])
 +
* Add a comment on the SendReceive behaviour. Improve two others. ([[Robert Shearman]])
 +
* Set RPC data representation. ([[Robert Shearman]])
 +
* Updated some MSDN links in the code. ([[Jeroen Janssen]])

Revision as of 22:58, 11 March 2012

"Object Linking and Embedding, Microsoft's proprietary mechanism for allowing documents and applications to access data and subroutines from within other applications. OLE is itself built on top of COE. OLE is a major component of ActiveX, and sees some minimal use in linking data (primarily video and audio clips) across applications"

Ole32.dll 6.1 is the Microsoft OLE for Windows included in the Windows 7 operating system.

DLL dependency list:

  • c:\windows\system32\MSVCRT.DLL
  • c:\windows\system32\GDI32.DLL
  • c:\windows\system32\NTDLL.DLL
  • c:\windows\system32\KERNELBASE.DLL
  • c:\windows\system32\USER32.DLL
  • c:\windows\system32\RPCRT4.DLL
  • c:\windows\system32\KERNEL32.DLL
  • c:\windows\system32\CRYPTSP.DLL
  • c:\windows\system32\ADVAPI32.DLL
  • c:\windows\system32\SHELL32.DLL
  • c:\windows\system32\MPR.DLL
  • c:\windows\system32\CRYPT32.DLL
  • c:\windows\system32\MSILTCFG.DLL
  • c:\windows\system32\CLBCATQ.DLL
  • c:\windows\system32\OLEAUT32.DLL
  • c:\windows\system32\IMAGEHLP.DLL

OLE (Object Linking and Embedding) is Microsoft's framework for a compound document technology using the ole32.dll module. A compound document is like a display desktop that can contain visual and information objects like text, calendars, animations, sound, motion video, 3-D, continually updated news, and controls. Each desktop object is an independent program entity that can interact with a user and also communicate with other objects on the desktop. The DLL ole32.dll is a dynamic link library which contains core OLE functions.

The ole32.dll file is required by Windows and is used when performing OLE (Object Linking and Embedding) operations. OLE allows objects created in one application to be embedded in documents/objects created by different applications.

OLE allows users to integrate data from different applications. Object linking allows users to share a single source of data for a particular object. The document in the ole32.dll program contains the name of the file containing the data, along with a picture of the data. When the source is updated, all the documents using the data are updated as well.

Through the use of the application ole32.dll, Object Linking and Embedding (OLE) allow embedding and linking to documents and other objects. The program file ole32.dll was developed by Microsoft Corporation. It is known to occupy 786,432 bytes and usually found in a subfolder of C:/ Windows/ system32/. It is found on the Component Object Model.

The ole32.dll module allows an editor to move part of a document to another editor and then re-import it. It then displays visualizations of data from other programs and create a master file. References to data in this file can be made and the master file can then change the data which will then take effect in the referenced document. This is called "linking".

The primary use of the program file ole32.dll is for managing compound documents. It is also used for transferring data between different applications using drag and drop and clipboard operations.

http://www.tenouk.com/visualcplusmfc/visualcplusmfc27a.html

http://en.wikipedia.org/wiki/Object_Linking_and_Embedding

http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/ole32/?view=log

ChangeLog-0.0.18


  • OLE32 work

ChangeLog-0.0.19

ChangeLog-0.2.1

ChangeLog-0.2.3

ChangeLog-0.2.4

  • Fix a few serious race conditions in the OLE object pipe server. (Mike McCormack)
  • Add some explanations to compobj.c, implement flushing message queue on shutdown. (Mike McCormack)
  • Assorted spelling fixes. (Francois Gouget)
  • IMalloc vtables are static. (Marcus Meissner)
  • IID_IObjectWithSite is already in libuuid, no need to declare here. (Marcus Meissner)
  • Return an error in CoMarshalInterface if the IUnknown pointer is NULL and don't crash. (Aric Stewart)
  • Removed the winedefault.reg message. (Ivan Leo Puoti)
  • Add static to non-exported marshal functions. (Robert Shearman)
  • Remove unused marshal functions. (Robert Shearman)
  • Rename several RPC functions. (Robert Shearman)
  • Avoid some non-portable makefile constructs, and get rid of the ALTNAMES variable. (Alexandre Julliard)
  • Get rid of the non-standard ICOM_VTABLE macro. (Alexandre Julliard)
  • Get rid of the non-standard ICOM_VFIELD macro. (Alexandre Julliard)
  • Get rid of the non-standard ICOM_DEFINE macro. (Alexandre Julliard)
  • Moved ICOM_THIS_MULTI definition out of objbase.h and into the files that use it. (Alexandre Julliard)
  • Added a test for stat'ing a memory based storage file. (Mike McCormack)
  • stat on memory storage should return a NULL name, not "". (Mike McCormack)
  • Assorted spelling fixes. (Francois Gouget)
  • Modify widl to put the C COM macros inside an #ifdef COBJMACROS block as is done in the Windows headers. (Francois Gouget)
  • Add #define COBJMACROS where needed in Wine. (Francois Gouget)
  • Fixes the compilation of the oleaut32/tests/olefont.c and urlmon/tests/url.c conformance tests with the Windows headers. (Francois Gouget)
  • Implement disconnect for proxies so that stubs are properly destroyed. (Mike Hearn)
  • Disconnect proxies at COM shutdown to release the corresponding stubs. (Mike Hearn)
  • Don't marshal IClassFactory into the local server pipe until we have connected, otherwise we might end up with stubs that are never used. (Mike Hearn)
  • Pass -Embedding switch to EXE servers, more tracing. (Mike Hearn)
  • Fix misleading warning ole CoGetClassObject. (Mike Hearn)
  • Fix ref counting in StdMarshalImpl_MarshalInterface for case where the stub already exists. (Mike Hearn)
  • Implement StdMarshal::ReleaseMarshalData. (Mike Hearn)
  • Fix infinite loops by checking the return value of _invoke_onereq and bailing appropriately. (Mike Hearn)
  • Add a comment on the SendReceive behaviour. Improve two others. (Mike Hearn)
  • Unref stub after invoking on it. (Mike Hearn)
  • Remove unneeded STUBMGR_Start call. (Robert Shearman)
  • Cleanup compobj_private.h. (Robert Shearman)
  • Fix some inaccuracies in a comment and reformat. (Robert Shearman)
  • Add static to non-exported marshal functions. (Robert Shearman)
  • Remove unused marshal functions. (Robert Shearman)
  • Rename several RPC functions. (Robert Shearman)
  • Emit fixme for known local wrong behaviour. (Robert Shearman)
  • Implement StdMarshal::ReleaseMarshalData. (Robert Shearman)
  • Document wrong behaviour for IRunningObjectTable. (Robert Shearman)
  • Fix infinite loops by checking the return value of _invoke_onereq and bailing appropriately. (Robert Shearman)
  • Add a comment on the SendReceive behaviour. Improve two others. (Robert Shearman)
  • Set RPC data representation. (Robert Shearman)
  • Updated some MSDN links in the code. (Jeroen Janssen)