1 | #ifndef __OLE2_AB__
|
---|
2 | #define __OLE2_AB__
|
---|
3 |
|
---|
4 | ' 暫定措置
|
---|
5 |
|
---|
6 | #require <api_winerror.sbp>
|
---|
7 |
|
---|
8 | #require <objbase.sbp>
|
---|
9 | #require <oleauto.ab>
|
---|
10 |
|
---|
11 | ' View OBJECT Error Codes
|
---|
12 |
|
---|
13 | Const E_DRAW = VIEW_E_DRAW
|
---|
14 |
|
---|
15 | ' IDataObject Error Codes
|
---|
16 | Const DATA_E_FORMATETC = DV_E_FORMATETC
|
---|
17 |
|
---|
18 | ' Common stuff gleamed from OLE.2,
|
---|
19 |
|
---|
20 | /* verbs */
|
---|
21 | Const OLEIVERB_PRIMARY = (0)
|
---|
22 | Const OLEIVERB_SHOW = (-1)
|
---|
23 | Const OLEIVERB_OPEN = (-2)
|
---|
24 | Const OLEIVERB_HIDE = (-3)
|
---|
25 | Const OLEIVERB_UIACTIVATE = (-4)
|
---|
26 | Const OLEIVERB_INPLACEACTIVATE = (-5)
|
---|
27 | Const OLEIVERB_DISCARDUNDOSTATE = (-6)
|
---|
28 |
|
---|
29 | ' for OleCreateEmbeddingHelper flags; roles in low word; options in high word
|
---|
30 | Const EMBDHLP_INPROC_HANDLER = &h0000
|
---|
31 | Const EMBDHLP_INPROC_SERVER = &h0001
|
---|
32 | Const EMBDHLP_CREATENOW = &h00000000
|
---|
33 | Const EMBDHLP_DELAYCREATE = &h00010000
|
---|
34 |
|
---|
35 | /* extended create function flags */
|
---|
36 | Const OLECREATE_LEAVERUNNING = &h00000001
|
---|
37 |
|
---|
38 | /* pull in the MIDL generated header */
|
---|
39 |
|
---|
40 | #require <oleidl.ab>
|
---|
41 |
|
---|
42 | /****** DV APIs ***********************************************************/
|
---|
43 |
|
---|
44 | /*
|
---|
45 | #if !defined(ISOLATION_AWARE_ENABLED) \
|
---|
46 | || !ISOLATION_AWARE_ENABLED \
|
---|
47 | || !defined(_OBJBASE_H_) \
|
---|
48 | || !defined(CreateDataAdviseHolder)
|
---|
49 | WINOLEAPI CreateDataAdviseHolder(OUT LPDATAADVISEHOLDER FAR* ppDAHolder);
|
---|
50 | #endif
|
---|
51 | */
|
---|
52 |
|
---|
53 | /****** OLE API Prototypes ************************************************/
|
---|
54 |
|
---|
55 | Declare Function OleBuildVersion Lib "ole32.dll" () As DWord
|
---|
56 |
|
---|
57 | /* helper functions */
|
---|
58 | Declare Function ReadClassStg Lib "ole32.dll" (/*IN*/ ByVal pStg As *IStorage, /*OUT*/ ByRef clsid As CLSID) As HRESULT
|
---|
59 | Declare Function WriteClassStg Lib "ole32.dll" (/*IN*/ ByVal pStg As *IStorage, /*IN*/ ByRef clsid As CLSID) As HRESULT
|
---|
60 | Declare Function ReadClassStm Lib "ole32.dll" (/*IN*/ ByVal pStm As *IStream, /*OUT*/ ByRef clsid As CLSID) As HRESULT
|
---|
61 | Declare Function WriteClassStm Lib "ole32.dll" (/*IN*/ ByVal pStm As *IStream, /*IN*/ ByRef clsid As CLSID) As HRESULT
|
---|
62 | Declare Function WriteFmtUserTypeStg Lib "ole32.dll" (/*IN*/ ByVal pstg As *IStorage, /*IN*/ ByVal cf As CLIPFORMAT, /*IN*/ ByVal pszUserType As *OLECHAR) As HRESULT
|
---|
63 | Declare Function ReadFmtUserTypeStg Lib "ole32.dll" (/*IN*/ ByVal pstg As *IStorage, /*OUT*/ ByRef cf As CLIPFORMAT, /*OUT*/ ByRef rpszUserType As *OLECHAR) As HRESULT
|
---|
64 |
|
---|
65 |
|
---|
66 | /* init/term */
|
---|
67 |
|
---|
68 | Declare Function OleInitialize Lib "ole32" (pvReserved As VoidPtr) As HRESULT
|
---|
69 | Declare Sub OleUninitialize Lib "ole32" ()
|
---|
70 |
|
---|
71 |
|
---|
72 | /* APIs to query whether (Embedded/Linked) object can be created from
|
---|
73 | the data object */
|
---|
74 |
|
---|
75 | Declare Function OleQueryLinkFromData Lib "ole32" (/*IN*/ ByVal pSrcDataObject As *IDataObject) As HRESULT
|
---|
76 | Declare Function OleQueryCreateFromData Lib "ole32.dll" (/*IN*/ ByVal pSrcDataObject As *IDataObject) As HRESULT
|
---|
77 |
|
---|
78 |
|
---|
79 | /* Object creation APIs */
|
---|
80 |
|
---|
81 | Declare Function OleCreate Lib "ole32.dll" (/*IN*/ ByRef rclsid As CLSID, /*IN*/ ByRef riid As IID, /*IN*/ ByVal renderopt As DWord, _
|
---|
82 | /*IN*/ ByVal pFormatEtc As *FORMATETC, /*IN*/ ByVal pClientSite As *IOleClientSite, _
|
---|
83 | /*IN*/ ByVal pStg As *IStorage, /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
84 |
|
---|
85 | Declare Function OleCreateEx Lib "ole32.dll" (/*IN*/ ByRef rclsid As CLSID, /*IN*/ ByRef riid As IID, /*IN*/ ByVal dwFlags As DWord,
|
---|
86 | /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal cFormats As DWord, /*IN*/ ByVal rgAdvf As *DWord,
|
---|
87 | /*IN*/ ByVal rgFormatEtc As *FORMATETC, /*IN*/ ByVal pAdviseSink As *IAdviseSink,
|
---|
88 | /*OUT*/ ByVal rgdwConnection As *DWord, /*IN*/ ByVal pClientSite As *IOleClientSite,
|
---|
89 | /*IN*/ ByVal pStg As *IStorage, /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
90 |
|
---|
91 | Declare Function OleCreateFromData Lib "ole32.dll" (/*IN*/ ByVal pSrcDataObj As *IDataObject, /*IN*/ ByRef riid As IID,
|
---|
92 | /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal pFormatEtc As *FORMATETC,
|
---|
93 | /*IN*/ ByVal pClientSite As *IOleClientSite, /*IN*/ ByVal pStg As *IStorage,
|
---|
94 | /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
95 |
|
---|
96 | Declare Function OleCreateFromDataEx Lib "ole32.dll" (/*IN*/ ByVal pSrcDataObj As *IDataObject, /*IN*/ ByRef riid As IID,
|
---|
97 | /*IN*/ ByVal dwFlags As DWord, /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal cFormats As DWord, /*IN*/ ByVal rgAdvf As *DWord,
|
---|
98 | /*IN*/ ByVal rgFormatEtc As *FORMATETC, /*IN*/ ByVal pAdviseSink As *IAdviseSink,
|
---|
99 | /*OUT*/ ByVal rgdwConnection As *DWord, /*IN*/ ByVal pClientSite As *IOleClientSite,
|
---|
100 | /*IN*/ ByVal pStg As *IStorage, /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
101 |
|
---|
102 | Declare Function OleCreateLinkFromData Lib "ole32.dll" (/*IN*/ ByVal pSrcDataObj As *IDataObject, /*IN*/ ByRef riid As IID,
|
---|
103 | /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal pFormatEtc As *FORMATETC,
|
---|
104 | /*IN*/ ByVal pClientSite As *IOleClientSite, /*IN*/ ByVal pStg As *IStorage,
|
---|
105 | /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
106 |
|
---|
107 | Declare Function OleCreateLinkFromDataEx Lib "ole32.dll" (/*IN*/ ByVal pSrcDataObj As *IDataObject, /*IN*/ ByRef riid As IID,
|
---|
108 | /*IN*/ ByVal dwFlags As DWord, /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal cFormats As DWord, /*IN*/ ByVal rgAdvf As *DWord,
|
---|
109 | /*IN*/ ByVal rgFormatEtc As *FORMATETC, /*IN*/ ByVal pAdviseSink As *IAdviseSink,
|
---|
110 | /*OUT IN*/ ByVal rgdwConnection As *DWord, /*IN*/ ByVal pClientSite As *IOleClientSite,
|
---|
111 | /*IN*/ ByVal pStg As *IStorage, /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
112 |
|
---|
113 | Declare Function OleCreateStaticFromData Lib "ole32.dll" (/*IN*/ ByVal pSrcDataObj As *IDataObject, /*IN*/ ByRef riid As IID,
|
---|
114 | /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal pFormatEtc As *FORMATETC,
|
---|
115 | /*IN*/ ByVal pClientSite As *IOleClientSite, /*IN*/ ByVal pStg As *IStorage,
|
---|
116 | /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
117 |
|
---|
118 |
|
---|
119 | Declare Function OleCreateLink Lib "ole32.dll" (/*IN*/ ByVal pmkLinkSrc As *IMoniker, /*IN*/ ByRef riid As IID,
|
---|
120 | /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal pFormatEtc As *FORMATETC,
|
---|
121 | /*IN*/ ByVal pClientSite As *IOleClientSite, /*IN*/ ByVal pDataObj As *IDataObject, /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
122 |
|
---|
123 | Declare Function OleCreateLinkEx Lib "ole32.dll" (/*IN*/ ByVal pmkLinkSrc As *IMoniker, /*IN*/ ByRef riid As IID,
|
---|
124 | /*IN*/ ByVal dwFlags As DWord, /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal cFormats As DWord, /*IN*/ ByVal rgAdvf As *DWord,
|
---|
125 | /*IN*/ ByVal rgFormatEtc As *FORMATETC, /*IN*/ ByVal pAdviseSink As *IAdviseSink,
|
---|
126 | /*OUT*/ ByVal rgdwConnection As *DWord, /*IN*/ ByVal pClientSite As *IOleClientSite,
|
---|
127 | /*IN*/ ByVal pDataObj As *IDataObject, /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
128 |
|
---|
129 | Declare Function OleCreateLinkToFile Lib "ole32.dll" (/*IN*/ ByVal lpszFileName As LPCOLESTR, /*IN*/ ByRef riid As IID,
|
---|
130 | /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal pFormatEtc As *FORMATETC,
|
---|
131 | /*IN*/ ByVal pClientSite As *IOleClientSite, /*IN*/ ByVal pDataObj As *IDataObject, /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
132 |
|
---|
133 | Declare Function OleCreateLinkToFileEx Lib "ole32.dll" (/*IN*/ ByVal lpszFileName As LPCOLESTR, /*IN*/ ByRef riid As IID,
|
---|
134 | /*IN*/ ByVal dwFlags As DWord, /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal cFormats As DWord, /*IN*/ ByVal rgAdvf As *DWord,
|
---|
135 | /*IN*/ ByVal rgFormatEtc As *FORMATETC, /*IN*/ ByVal pAdviseSink As *IAdviseSink,
|
---|
136 | /*OUT*/ ByVal rgdwConnection As *DWord, /*IN*/ ByVal pClientSite As *IOleClientSite,
|
---|
137 | /*IN*/ ByVal pDataObj As *IDataObject, /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
138 |
|
---|
139 | Declare Function OleCreateFromFile Lib "ole32.dll" (/*IN*/ ByRef rclsid As CLSID, /*IN*/ ByVal lpszFileName As LPOLESTR, /*IN*/ ByRef riid As IID,
|
---|
140 | /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal pFormatEtc As *FORMATETC,
|
---|
141 | /*IN*/ ByVal pClientSite As *IOleClientSite, /*IN*/ ByVal pDataObj As *IDataObject, /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
142 |
|
---|
143 | Declare Function OleCreateFromFileEx Lib "ole32.dll" (/*IN*/ ByRef rclsid As CLSID, /*IN*/ ByVal lpszFileName As LPOLESTR, /*IN*/ ByRef riid As IID,
|
---|
144 | /*IN*/ ByVal dwFlags As DWord, /*IN*/ ByVal renderopt As DWord, /*IN*/ ByVal cFormats As DWord, /*IN*/ ByVal rgAdvf As *DWord,
|
---|
145 | /*IN*/ ByVal rgFormatEtc As *FORMATETC, /*IN*/ ByVal pAdviseSink As *IAdviseSink,
|
---|
146 | /*OUT*/ ByVal rgdwConnection As *DWord, /*IN*/ ByVal pClientSite As *IOleClientSite,
|
---|
147 | /*IN*/ ByVal pDataObj As *IDataObject, /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
148 |
|
---|
149 | Declare Function OleLoad Lib "ole32.dll" (/*IN*/ ByVal pStg As *IStorage, /*IN*/ ByRef riid As IID, /*IN*/ ByVal pClientSite As *IOleClientSite,
|
---|
150 | /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
151 |
|
---|
152 | Declare Function OleSave Lib "ole32.dll" (/*IN*/ ByVal pPS As *IPersistStorage, /*IN*/ ByVal pStg As *IStorage, /*IN*/ fSameAsLoad As BOOL) As HRESULT
|
---|
153 |
|
---|
154 | Declare Function OleLoadFromStream Lib "ole32.dll" ( /*IN*/ ByVal pStm As *IStream, /*IN*/ ByRef iidInterface As IID, /*OUT*/ ByRef ppvObj As Any) As HRESULT
|
---|
155 | Declare Function OleSaveToStream Lib "ole32.dll" ( /*IN*/ ByVal pPStm As *IPersistStream, /*IN*/ ByVal pStm As *IStream) As HRESULT
|
---|
156 |
|
---|
157 |
|
---|
158 | Declare Function OleSetContainedObject Lib "ole32.dll" (/*IN*/ ByVal pUnknown As *IUnknown, /*IN*/ ByVal fContained As BOOL) As HRESULT
|
---|
159 | Declare Function OleNoteObjectVisible Lib "ole32.dll" (/*IN*/ ByVal pUnknown As *IUnknown, /*IN*/ ByVal fContained As BOOL) As HRESULT
|
---|
160 |
|
---|
161 |
|
---|
162 | /* Drag/Drop APIs */
|
---|
163 |
|
---|
164 | Declare Function RegisterDragDrop Lib "ole32.dll" (/*IN*/ ByVal hwnd As HWND, /*IN*/ ByVal pDropTarget As *IDropTarget) As HRESULT
|
---|
165 | Declare Function RevokeDragDrop Lib "ole32.dll" (/*IN*/ ByVal hwnd As HWND) As HRESULT
|
---|
166 | Declare Function DoDragDrop Lib "ole32.dll" (/*IN*/ ByVal pDataObj As *IDataObject, /*IN*/ ByVal pDropSource As *IDropSource,
|
---|
167 | /*IN*/ ByVal dwOKEffects As DWord, /*OUT*/ ByRef dwEffect As DWord) As HRESULT
|
---|
168 |
|
---|
169 | /* Clipboard APIs */
|
---|
170 |
|
---|
171 | Declare Function OleSetClipboard Lib "ole32.dll" (/*IN*/ ByVal pDataObj As *IDataObject) As HRESULT
|
---|
172 | Declare Function OleGetClipboard Lib "ole32.dll" (/*OUT*/ ByRef pDataObj As *IDataObject) As HRESULT
|
---|
173 | Declare Function OleFlushClipboard Lib "ole32.dll" () As HRESULT
|
---|
174 | Declare Function OleIsCurrentClipboard Lib "ole32.dll" (/*IN*/ ByVal pDataObj As *IDataObject) As HRESULT
|
---|
175 |
|
---|
176 |
|
---|
177 | /* InPlace Editing APIs */
|
---|
178 |
|
---|
179 | TypeDef HOLEMENU = HGLOBAL ' oleidl.h
|
---|
180 | Type OLEMENUGROUPWIDTHS ' oleidl.h
|
---|
181 | width[ELM(6)] As Long
|
---|
182 | End Type
|
---|
183 | Type OLEINPLACEFRAMEINFO ' oleidl.h
|
---|
184 | cb As DWord
|
---|
185 | fMDIApp As BOOL
|
---|
186 | hwndFrame As HWND
|
---|
187 | haccel As HACCEL
|
---|
188 | cAccelEntries As DWord
|
---|
189 | End Type
|
---|
190 | Declare Function OleCreateMenuDescriptor Lib "ole32.dll" (/*IN*/ ByVal hmenuCombined As HMENU,
|
---|
191 | /*IN*/ ByRef MenuWidths As OLEMENUGROUPWIDTHS) As HOLEMENU
|
---|
192 | Declare Function OleSetMenuDescriptor Lib "ole32.dll" (/*IN*/ ByVal holemenu As HOLEMENU, /*IN*/ ByVal hwndFrame As HWND,
|
---|
193 | /*IN*/ ByVal hwndActiveObject As HWND,
|
---|
194 | /*IN*/ ByVal pFrame As *IOleInPlaceFrame,
|
---|
195 | /*IN*/ ByVal pActiveObj As *IOleInPlaceActiveObject) As HRESULT
|
---|
196 | Declare Function OleDestroyMenuDescriptor Lib "ole32.dll" (/*IN*/ ByVal holemenu As HOLEMENU) As HRESULT
|
---|
197 |
|
---|
198 | Declare Function OleTranslateAccelerator Lib "ole32.dll" (/*IN*/ ByVal pFrame As *IOleInPlaceFrame,
|
---|
199 | /*IN*/ ByRef FrameInfo As OLEINPLACEFRAMEINFO, /*IN*/ ByRef msg As MSG) As HRESULT
|
---|
200 |
|
---|
201 |
|
---|
202 | /* Helper APIs */
|
---|
203 | Declare Function OleDuplicateData Lib "ole32.dll" (/*IN*/ ByVal hSrc As HANDLE, /*IN*/ ByVal cfFormat As CLIPFORMAT,
|
---|
204 | /*IN*/ ByVal uiFlags As DWord) As HANDLE
|
---|
205 |
|
---|
206 | Declare Function OleDraw Lib "ole32.dll" (/*IN*/ ByVal pUnknown As *IUnknown, /*IN*/ ByVal dwAspect As DWord, /*IN*/ ByVal hdcDraw As HDC,
|
---|
207 | /*IN*/ ByRef rcBounds As RECT) As HRESULT
|
---|
208 |
|
---|
209 | Declare Function OleRun Lib "ole32.dll" (/*IN*/ ByVal pUnknown As *IUnknown) As HRESULT
|
---|
210 | Declare Function OleIsRunning Lib "ole32.dll" (/*IN*/ ByVal pObject As *IOleObject) As BOOL
|
---|
211 | Declare Function OleLockRunning Lib "ole32.dll" (/*IN*/ ByVal pUnknown As *IUnknown, /*IN*/ ByVal fLock As BOOL, /*IN*/ ByVal fLastUnlockCloses As BOOL) As HRESULT
|
---|
212 | Declare Sub ReleaseStgMedium Lib "ole32.dll" (/*IN*/ ByRef medium As STGMEDIUM)
|
---|
213 | Declare Function CreateOleAdviseHolder Lib "ole32.dll" (/*OUT*/ ByRef pOAHolder As *IOleAdviseHolder) As HRESULT
|
---|
214 |
|
---|
215 | Declare Function OleCreateDefaultHandler Lib "ole32.dll" (/*IN*/ ByRef clsid As CLSID, /*IN*/ ByVal pUnkOuter As *IUnknown,
|
---|
216 | /*IN*/ ByRef riid As IID, /*OUT*/ ByRef pObj As Any) As HRESULT
|
---|
217 |
|
---|
218 | Declare Function OleCreateEmbeddingHelper Lib "ole32.dll" (/*IN*/ ByRef clsid As CLSID, /*IN*/ ByVal pUnkOuter As *IUnknown,
|
---|
219 | /*IN*/ ByVal flags As DWord, /*IN*/ ByVal pCF As *IClassFactory,
|
---|
220 | /*IN*/ ByRef riid As IID, /*OUT*/ ByRef pObj As Any) As HRESULT
|
---|
221 |
|
---|
222 | Declare Function IsAccelerator Lib "ole32.dll" (/*IN*/ ByVal hAccel As HACCEL, /*IN*/ ByVal cAccelEntries As Long, /*IN*/ ByRef msg As MSG,
|
---|
223 | /*OUT*/ ByVal pwCmd As *Word) As BOOL
|
---|
224 | /* Icon extraction Helper APIs */
|
---|
225 |
|
---|
226 | Declare Function OleGetIconOfFile Lib "ole32.dll" (/*IN*/ ByVal lpszPath As LPOLESTR, /*IN*/ ByVal fUseFileAsLabel As BOOL) As HGLOBAL
|
---|
227 |
|
---|
228 | Declare Function OleGetIconOfClass Lib "ole32.dll" (/*IN*/ ByRef rclsid As CLSID, /*IN*/ ByVal lpszLabel As LPOLESTR,
|
---|
229 | /*IN*/ ByVal fUseTypeAsLabel As BOOL) As HGLOBAL
|
---|
230 |
|
---|
231 | Declare Function OleMetafilePictFromIconAndLabel Lib "ole32.dll" (/*IN*/ ByVal hIcon As HICON, /*IN*/ ByVal lpszLabel As LPOLESTR,
|
---|
232 | /*IN*/ ByVal lpszSourceFile As LPOLESTR, /*IN*/ ByVal iIconIndex As DWord) As HGLOBAL
|
---|
233 |
|
---|
234 |
|
---|
235 |
|
---|
236 | /* Registration Database Helper APIs */
|
---|
237 |
|
---|
238 | Declare Function OleRegGetUserType Lib "ole32.dll" (/*IN*/ ByRef rclsid As CLSID, /*IN*/ ByVal dwFormOfType As DWord,
|
---|
239 | /*OUT*/ ByVal pszUserType As LPOLESTR) As HRESULT
|
---|
240 |
|
---|
241 | Declare Function OleRegGetMiscStatus Lib "ole32.dll" (/*IN*/ ByRef rclsid As CLSID, /*IN*/ ByVal dwAspect As DWord,
|
---|
242 | /*OUT*/ ByRef dwStatus As DWord) As HRESULT
|
---|
243 |
|
---|
244 | Declare Function OleRegEnumFormatEtc Lib "ole32.dll" (/*IN*/ ByRef rclsid As CLSID, /*IN*/ ByVal dwDirection As DWord,
|
---|
245 | /*OUT*/ ByRef penum As *IEnumFORMATETC) As HRESULT
|
---|
246 |
|
---|
247 | Declare Function OleRegEnumVerbs Lib "ole32.dll" (/*IN*/ ByRef rclsid As CLSID, /*OUT*/ ByRef penum As *IEnumOLEVERB) As HRESULT
|
---|
248 |
|
---|
249 | /* OLE 1.0 conversion APIS */
|
---|
250 |
|
---|
251 | /***** OLE 1.0 OLESTREAM declarations *************************************/
|
---|
252 |
|
---|
253 |
|
---|
254 | Interface OleStream
|
---|
255 | Function Get(p As VoidPtr, dw As DWord) As DWord
|
---|
256 | Function Put(p As VoidPtr, dw As DWord) As DWord
|
---|
257 | End Interface
|
---|
258 | TypeDef LPOLESTREAM = *OleStream
|
---|
259 |
|
---|
260 |
|
---|
261 | Declare Function OleConvertOLESTREAMToIStorage Lib "ole32.dll" ( _
|
---|
262 | /*IN*/ ByVal lpolestream As LPOLESTREAM,
|
---|
263 | /*OUT*/ ByVal pstg As *IStorage,
|
---|
264 | /*IN*/ ByRef td As DVTARGETDEVICE) As HRESULT
|
---|
265 |
|
---|
266 | Declare Function OleConvertIStorageToOLESTREAM Lib "ole32.dll" ( _
|
---|
267 | /*IN*/ ByVal pstg As *IStorage,
|
---|
268 | /*OUT*/ ByVal lpolestream As LPOLESTREAM) As HRESULT
|
---|
269 |
|
---|
270 |
|
---|
271 | /* Storage Utility APIs */
|
---|
272 | Declare Function GetHGlobalFromILockBytes Lib "ole32.dll" (/*IN*/ ByVal plkbyt As *ILockBytes, /*OUT*/ ByRef hglobal As HGLOBAL) As HRESULT
|
---|
273 | Declare Function CreateILockBytesOnHGlobal Lib "ole32.dll" (/*IN*/ ByVal hGlobal As HGLOBAL, /*IN*/ ByVal fDeleteOnRelease As BOOL,
|
---|
274 | /*OUT*/ ByRef pplkbyt As *ILockBytes) As HRESULT
|
---|
275 |
|
---|
276 | Declare Function GetHGlobalFromStream Lib "ole32.dll" (/*IN*/ ByVal pstm As *IStream, /*OUT*/ ByRef hglobal As HGLOBAL) As HRESULT
|
---|
277 | Declare Function CreateStreamOnHGlobal Lib "ole32.dll" (/*IN*/ ByVal hGlobal As HGLOBAL, /*IN*/ ByVal fDeleteOnRelease As BOOL,
|
---|
278 | /*OUT*/ ByRef pstm As *IStream) As HRESULT
|
---|
279 |
|
---|
280 |
|
---|
281 | /* ConvertTo APIS */
|
---|
282 |
|
---|
283 | Declare Function OleDoAutoConvert Lib "ole32.dll" (/*IN*/ ByRef pStg As *IStorage, /*OUT*/ ByRef ClsidNew As CLSID) As HRESULT
|
---|
284 | Declare Function OleGetAutoConvert Lib "ole32.dll" (/*IN*/ ByRef clsidOld As CLSID, /*OUT*/ ByRef ClsidNew As CLSID) As HRESULT
|
---|
285 | Declare Function OleSetAutoConvert Lib "ole32.dll" (/*IN*/ ByRef clsidOld As CLSID, /*IN*/ ByRef ClsidNew As CLSID) As HRESULT
|
---|
286 | Declare Function GetConvertStg Lib "ole32.dll" (/*IN*/ ByVal pStg As *IStorage) As HRESULT
|
---|
287 | Declare Function SetConvertStg Lib "ole32.dll" (/*IN*/ ByVal pStg As *IStorage, /*IN*/ fConvert As BOOL) As HRESULT
|
---|
288 |
|
---|
289 |
|
---|
290 | Declare Function OleConvertIStorageToOLESTREAMEx Lib "ole32.dll" ( _
|
---|
291 | /*IN*/ ByVal pstg As *IStorage, ' Presentation data to OLESTREAM
|
---|
292 | /*IN*/ ByVal cfFormat As CLIPFORMAT, ' format
|
---|
293 | /*IN*/ ByVal lWidth As Long, ' width
|
---|
294 | /*IN*/ ByVal lHeight As Long, ' height
|
---|
295 | /*IN*/ ByVal dwSize As DWORD, ' size in bytes
|
---|
296 | /*IN*/ ByRef medium As STGMEDIUM, ' bits
|
---|
297 | /*OUT*/ ByVal polestm As LPOLESTREAM) As HRESULT
|
---|
298 |
|
---|
299 | Declare Function OleConvertOLESTREAMToIStorageEx Lib "ole32.dll" ( _
|
---|
300 | /*IN*/ ByVal polestm As LPOLESTREAM,
|
---|
301 | /*OUT*/ ByVal pstg As *IStorage,' Presentation data from OLESTREAM
|
---|
302 | /*OUT*/ ByRef pcfFormat As CLIPFORMAT, ' format
|
---|
303 | /*OUT*/ ByRef plwWidth As Long, ' width
|
---|
304 | /*OUT*/ ByRef plHeight As Long, ' height
|
---|
305 | /*OUT*/ ByRef pdwSize As DWord, ' size in bytes
|
---|
306 | /*OUT*/ ByRef medium As STGMEDIUM) As HRESULT ' bits
|
---|
307 |
|
---|
308 | ' olectl.h
|
---|
309 | Declare Function OleLoadPicture Lib "olepro32" (pStream As *IStream, lSize As Long, fRunmode As BOOL, ByRef riid As IID, ppvObj As VoidPtr) As HRESULT
|
---|
310 |
|
---|
311 | #endif ' __OLE2_AB__
|
---|