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