Click to open or copy the OLEStd project files.
The OLEStd sample creates a library of utility functions that you may find useful as a model for writing your own code.
Most of this code was once part of the OLE UI sample library that used to be included in the OLE samples. Since OLEDLG.DLL was added to the set of system-supported OLE libraries, much of the old OLE UI code has become obsolete. This library contains most of the remaining functionality from that DLL.
Note: This library is not an official part of the OLE specification. It is intended only to demonstrate techniques and methods; not to be used as a professional development library. Microsoft cannot guarantee that all of this code is completely correct or fully operational. You may feel free to incorporate some of this code in your applications but please be aware that it has undergone limited testing and may not be entirely free of bugs.
This sample uses the following keywords:
_dos_findfirst; _fmemset; addref; advise; alloc; ansitooem; cache; closemetafile; clsidfromprogid; codosdatetimetofiletime; cofiletimenow; cogetmalloc; coisole1class; commit; copymetafile; cotreatasclass; createbindctx; createfilemoniker; createilockbytesonhglobal; createmetafile; createstorage; createstreamonhglobal; defined; destroyelement; didalloc; draw; enum; enumcache; enumelements; enumformatetc; findclose; findfirstfile; free; getclassfile; getdata; getdisplayname; getextent; getfiletimes; getmiscstatus; getmoniker; getrunningobjecttable; getsize; getsourcedisplayname; getuserclassid; getusertype; globalalloc; globalfree; globallock; globalunlock; isbadreadptr; iscloseformatetc; isequalclsid; isequalformatetc; isrunning; issystemmoniker; loadstring; lpolestr; lstrcpy; lstrcpyn; lstrlen; messagebox; mkparsedisplayname; next; notechangetime; oledbg_begin2; oledbgassert; oledbgassertsz; oledbgout; oledbgout1; oledbgout2; oledbgout4; oledbgouthresult; oleduplicatedata; olequerycreatefromdata; olequerylinkfromdata; olesave; olesavetostream; olesetcontainedobject; olesetcontainedobject; olestdcheckvtbl; olestdcommitstorage; olestdcopymetafilepict; olestdcopystring; olestdcreatechildstorage; olestdcreaterootstorage; olestdcreatestorageonhglobal; olestdcreatetempfilemoniker; olestdcreatetempstorage; olestddestroyallelements; olestddoconvert; olestddotreatasclass; olestdfillobjectdescriptorfromdata; olestdfree; olestdfreestring; olestdgetdata; olestdgetdefaultfileformatofclass; olestdgetdropeffect; olestdgetfirstmoniker; olestdgetitemtoken; olestdgetlenfileprefixofmoniker; olestdgetlinksourcedata; olestdgetmetafilepictfromoleobject; olestdgetobjectdescriptordata; olestdgetobjectdescriptordatafromoleobject; olestdgetoleobjectdata; olestdgetpriorityclipboardformat; olestdgetsize; olestdgettreatasfmtusertype; olestdgetusertypeofclass; olestdinitvtbl; olestdisduplicateformat; olestdisolelink; olestdmalloc; olestdmarkpasteentrylist; olestdmkparsedisplayname; olestdnotefilechangetime; olestdnoteobjectchangetime; olestdnullmethod; olestdopenchildstorage; olestdopenorcreaterootstorage; olestdopenrootstorage; olestdqueryformatmedium; olestdqueryinterface; olestdquerylinksourcedata; olestdqueryobjectdescriptordata; olestdqueryoleobjectdata; olestdrealloc; olestdregisterasrunning; olestdrelease; olestdrevokeasrunning; olestdseticonincache; olestdsetupadvises; olestdswitchdisplayaspect; olestdverifyrelease; olestr; olestrcpy; olestrlen; openstorage; progidfromclsid; queryinterface; readclassstg; readfmtusertypestg; realloc; regclosekey; register; regopenkey; regqueryvalue; regsetvalue; release; releasestgmedium; revoke; savecompleted; setadvise; setconvertstg; setdata; sethostnames; setwindowextex; setwindoworgex; stdapi_; stgcreatedocfile; stgcreatedocfileonilockbytes; stgopenstorage; stringfromclsid; succeeded; uncache; writeclassstg; writeclassstm; writefmtusertypestg; wsprintf