Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

554 lines
13 KiB

  1. #include "switches.hxx"
  2. //
  3. // Note: To currently debug shared libraries on PPC, the LIBRARY clause must be of the form xxx.dll.dll
  4. // The ouput from the linker must be xxx.dll, and the name in the 'cfrg' segment must be xxx.dll
  5. //
  6. #if OE_MACPPC
  7. LIBRARY MicrosoftOLE2AutomationLib
  8. #else // OE_MACPPC
  9. LIBRARY OLEAUT32
  10. #endif // OE_MACPPC
  11. #if OE_WIN
  12. // DESCRIPTION 'OLE Automation Library'
  13. // CODE EXECUTE READ SHARED
  14. ;DATA READ WRITE
  15. #endif
  16. EXPORTS
  17. ; (Not used in Win32)
  18. ;WEP @0 RESIDENTNAME
  19. ; DLL Support API
  20. DllGetClassObject PRIVATE
  21. ; BSTR API (ANSI)
  22. ;
  23. SysAllocString @2
  24. SysReAllocString @3
  25. SysAllocStringLen @4
  26. SysReAllocStringLen @5
  27. SysFreeString @6
  28. SysStringLen @7
  29. #ifdef EXTERNAL_MEM
  30. SysSetAllocator @324
  31. #endif
  32. ; VARIANT API
  33. ;
  34. VariantInit @8
  35. VariantClear @9
  36. VariantCopy @10
  37. VariantCopyInd @11
  38. VariantChangeType @12
  39. ; VARIANT TIME API
  40. ;
  41. VariantTimeToDosDateTime @13
  42. DosDateTimeToVariantTime @14
  43. ; SAFEARRAY API
  44. ;
  45. SafeArrayCreate @15
  46. SafeArrayDestroy @16
  47. SafeArrayGetDim @17
  48. SafeArrayGetElemsize @18
  49. SafeArrayGetUBound @19
  50. SafeArrayGetLBound @20
  51. SafeArrayLock @21
  52. SafeArrayUnlock @22
  53. SafeArrayAccessData @23
  54. SafeArrayUnaccessData @24
  55. SafeArrayGetElement @25
  56. SafeArrayPutElement @26
  57. SafeArrayCopy @27
  58. ; IDispatch helpers/implementation
  59. ;
  60. DispGetParam @28
  61. DispGetIDsOfNames @29
  62. DispInvoke @30
  63. CreateDispTypeInfo @31
  64. CreateStdDispatch @32
  65. ; Active Object API
  66. ;
  67. #if OE_MAC
  68. // marked these as private, since we don't want them in the import lib anymore
  69. RegisterActiveObject @33 PRIVATE
  70. RevokeActiveObject @34 PRIVATE
  71. GetActiveObject @35 PRIVATE
  72. #else //OE_MAC
  73. RegisterActiveObject @33
  74. RevokeActiveObject @34
  75. GetActiveObject @35
  76. #endif //OE_MAC
  77. ; additional SafeArray APIs
  78. ;
  79. SafeArrayAllocDescriptor @36
  80. SafeArrayAllocData @37
  81. SafeArrayDestroyDescriptor @38
  82. SafeArrayDestroyData @39
  83. SafeArrayRedim @40
  84. #if !OE_MAC
  85. SafeArrayAllocDescriptorEx @41
  86. SafeArrayCreateEx @42
  87. SafeArrayCreateVectorEx @43
  88. SafeArraySetRecordInfo @44
  89. SafeArrayGetRecordInfo @45
  90. SafeArraySetIID @57
  91. SafeArrayGetIID @67
  92. SafeArrayGetVartype @77
  93. #endif // OE_MAC
  94. ; Numeric parsing routines
  95. ;
  96. VarParseNumFromStr @46
  97. VarNumFromParseNum @47
  98. ; low-level VARTYPE coersion API
  99. ;
  100. VarI2FromUI1 @48
  101. VarI2FromI4 @49
  102. VarI2FromR4 @50
  103. VarI2FromR8 @51
  104. VarI2FromCy @52
  105. VarI2FromDate @53
  106. VarI2FromStr @54
  107. VarI2FromDisp @55
  108. VarI2FromBool @56
  109. VarI2FromI1 @205
  110. VarI2FromUI2 @206
  111. VarI2FromUI4 @207
  112. VarI2FromDec @208
  113. VarI4FromUI1 @58
  114. VarI4FromI2 @59
  115. VarI4FromR4 @60
  116. VarI4FromR8 @61
  117. VarI4FromCy @62
  118. VarI4FromDate @63
  119. VarI4FromStr @64
  120. VarI4FromDisp @65
  121. VarI4FromBool @66
  122. VarI4FromI1 @209
  123. VarI4FromUI2 @210
  124. VarI4FromUI4 @211
  125. VarI4FromDec @212
  126. VarR4FromUI1 @68
  127. VarR4FromI2 @69
  128. VarR4FromI4 @70
  129. VarR4FromR8 @71
  130. VarR4FromCy @72
  131. VarR4FromDate @73
  132. VarR4FromStr @74
  133. VarR4FromDisp @75
  134. VarR4FromBool @76
  135. VarR4FromI1 @213
  136. VarR4FromUI2 @214
  137. VarR4FromUI4 @215
  138. VarR4FromDec @216
  139. VarR8FromUI1 @78
  140. VarR8FromI2 @79
  141. VarR8FromI4 @80
  142. VarR8FromR4 @81
  143. VarR8FromCy @82
  144. VarR8FromDate @83
  145. VarR8FromStr @84
  146. VarR8FromDisp @85
  147. VarR8FromBool @86
  148. VarR8FromI1 @217
  149. VarR8FromUI2 @218
  150. VarR8FromUI4 @219
  151. VarR8FromDec @220
  152. VarDateFromUI1 @88
  153. VarDateFromI2 @89
  154. VarDateFromI4 @90
  155. VarDateFromR4 @91
  156. VarDateFromR8 @92
  157. VarDateFromCy @93
  158. VarDateFromStr @94
  159. VarDateFromDisp @95
  160. VarDateFromBool @96
  161. VarDateFromI1 @221
  162. VarDateFromUI2 @222
  163. VarDateFromUI4 @223
  164. VarDateFromDec @224
  165. VarCyFromUI1 @98
  166. VarCyFromI2 @99
  167. VarCyFromI4 @100
  168. VarCyFromR4 @101
  169. VarCyFromR8 @102
  170. VarCyFromDate=VarCyFromR8 @103
  171. VarCyFromStr @104
  172. VarCyFromDisp @105
  173. VarCyFromBool=VarCyFromI2 @106
  174. VarCyFromI1 @225
  175. VarCyFromUI2 @226
  176. VarCyFromUI4 @227
  177. VarCyFromDec @228
  178. VarBstrFromUI1 @108
  179. VarBstrFromI2 @109
  180. VarBstrFromI4 @110
  181. VarBstrFromR4 @111
  182. VarBstrFromR8 @112
  183. VarBstrFromCy @113
  184. VarBstrFromDate @114
  185. VarBstrFromDisp @115
  186. VarBstrFromBool @116
  187. VarBstrFromI1 @229
  188. VarBstrFromUI2 @230
  189. VarBstrFromUI4 @231
  190. VarBstrFromDec @232
  191. VarBoolFromUI1 @118
  192. VarBoolFromI2 @119
  193. VarBoolFromI4 @120
  194. VarBoolFromR4 @121
  195. VarBoolFromR8 @122
  196. VarBoolFromDate @123
  197. VarBoolFromCy @124
  198. VarBoolFromStr @125
  199. VarBoolFromDisp @126
  200. VarBoolFromI1 @233
  201. VarBoolFromUI2 @234
  202. VarBoolFromUI4 @235
  203. VarBoolFromDec @236
  204. VarUI1FromI2 @130
  205. VarUI1FromI4 @131
  206. VarUI1FromR4 @132
  207. VarUI1FromR8 @133
  208. VarUI1FromCy @134
  209. VarUI1FromDate @135
  210. VarUI1FromStr @136
  211. VarUI1FromDisp @137
  212. VarUI1FromBool @138
  213. VarUI1FromI1 @237
  214. VarUI1FromUI2 @238
  215. VarUI1FromUI4 @239
  216. VarUI1FromDec @240
  217. VarDecFromUI1 @190
  218. VarDecFromI2 @191
  219. VarDecFromI4 @192
  220. VarDecFromR4 @193
  221. VarDecFromR8 @194
  222. VarDecFromDate @195
  223. VarDecFromCy @196
  224. VarDecFromStr @197
  225. VarDecFromDisp @198
  226. VarDecFromBool @199
  227. VarDecFromI1 @241
  228. VarDecFromUI2 @242
  229. VarDecFromUI4 @243
  230. VarI1FromUI1 @244
  231. VarI1FromI2 @245
  232. VarI1FromI4 @246
  233. VarI1FromR4 @247
  234. VarI1FromR8 @248
  235. VarI1FromDate @249
  236. VarI1FromCy @250
  237. VarI1FromStr @251
  238. VarI1FromDisp @252
  239. VarI1FromBool @253
  240. VarI1FromUI2 @254
  241. VarI1FromUI4 @255
  242. VarI1FromDec @256
  243. VarUI2FromUI1 @257
  244. VarUI2FromI2 @258
  245. VarUI2FromI4 @259
  246. VarUI2FromR4 @260
  247. VarUI2FromR8 @261
  248. VarUI2FromDate @262
  249. VarUI2FromCy @263
  250. VarUI2FromStr @264
  251. VarUI2FromDisp @265
  252. VarUI2FromBool @266
  253. VarUI2FromI1 @267
  254. VarUI2FromUI4 @268
  255. VarUI2FromDec @269
  256. VarUI4FromUI1 @270
  257. VarUI4FromI2 @271
  258. VarUI4FromI4 @272
  259. VarUI4FromR4 @273
  260. VarUI4FromR8 @274
  261. VarUI4FromDate @275
  262. VarUI4FromCy @276
  263. VarUI4FromStr @277
  264. VarUI4FromDisp @278
  265. VarUI4FromBool @279
  266. VarUI4FromI1 @280
  267. VarUI4FromUI2 @281
  268. VarUI4FromDec @282
  269. #if OE_WIN32
  270. BSTR_UserSize @283
  271. BSTR_UserMarshal @284
  272. BSTR_UserUnmarshal @285
  273. BSTR_UserFree @286
  274. VARIANT_UserSize @287
  275. VARIANT_UserMarshal @288
  276. VARIANT_UserUnmarshal @289
  277. VARIANT_UserFree @290
  278. LPSAFEARRAY_UserSize @291
  279. LPSAFEARRAY_UserMarshal @292
  280. LPSAFEARRAY_UserUnmarshal @293
  281. LPSAFEARRAY_UserFree @294
  282. LPSAFEARRAY_Size @295
  283. LPSAFEARRAY_Marshal @296
  284. LPSAFEARRAY_Unmarshal @297
  285. UserHWND_from_local @380
  286. UserHWND_to_local @381
  287. UserHWND_free_inst @382
  288. UserHWND_free_local @383
  289. UserBSTR_from_local @384
  290. UserBSTR_to_local @385
  291. UserBSTR_free_inst @386
  292. UserBSTR_free_local @387
  293. UserVARIANT_from_local @388
  294. UserVARIANT_to_local @389
  295. UserVARIANT_free_inst @390
  296. UserVARIANT_free_local @391
  297. UserEXCEPINFO_from_local @392
  298. UserEXCEPINFO_to_local @393
  299. UserEXCEPINFO_free_inst @394
  300. UserEXCEPINFO_free_local @395
  301. UserMSG_from_local @396
  302. UserMSG_to_local @397
  303. UserMSG_free_inst @398
  304. UserMSG_free_local @399
  305. #endif //OE_WIN32
  306. ; IIDs
  307. ;
  308. #if OE_MACPPC // These shouldn't have been exported, but we
  309. // can't remove them or we will break compatibility
  310. // with old apps. Made them private so that new apps
  311. // won't bind through the DLL anymore.
  312. IID_IDispatch @144 PRIVATE
  313. IID_IEnumVARIANT @145 PRIVATE
  314. #endif
  315. ; Not needed in combined DLL's
  316. DispCallFunc @146
  317. ; Variant Coersion API Extension
  318. ;
  319. VariantChangeTypeEx @147
  320. ; SAFEARRAY APIs
  321. ;
  322. SafeArrayPtrOfIndex @148
  323. #if OE_WIN32
  324. ; BSTR Byte APIs
  325. ;
  326. SysStringByteLen @149
  327. SysAllocStringByteLen @150
  328. ;SysReAllocStringByteLen @151
  329. #endif //OE_WIN32
  330. ; Type librarary APIs
  331. CreateTypeLib @160
  332. LoadTypeLib @161
  333. LoadRegTypeLib @162
  334. RegisterTypeLib @163
  335. QueryPathOfRegTypeLib @164
  336. LHashValOfNameSys @165
  337. #if OE_WIN32
  338. LHashValOfNameSysA @166
  339. #endif //OE_WIN32
  340. ; New API's for OA94
  341. OaBuildVersion @170
  342. ; New API's for OA96
  343. ClearCustData @171
  344. // UNDONE: collapse all the ordinals in order to save space
  345. CreateTypeLib2 @180
  346. #if OE_WIN32
  347. //UNDONE: temporary until Forms^3 stops demand-loading this
  348. OACreateTypeLib2=CreateTypeLib2
  349. #endif //OE_WIN32
  350. LoadTypeLibEx @183
  351. #if OE_WIN32
  352. SystemTimeToVariantTime @184
  353. VariantTimeToSystemTime @185
  354. #endif // OE_WIN32
  355. UnRegisterTypeLib @186
  356. ; Rich error APIs
  357. GetErrorInfo @200
  358. SetErrorInfo @201
  359. CreateErrorInfo @202
  360. DllRegisterServer PRIVATE
  361. DllUnregisterServer PRIVATE
  362. #if !OE_MAC
  363. GetRecordInfoFromGuids @322
  364. GetRecordInfoFromTypeInfo @323
  365. #endif
  366. ; CALENDAR_SUPPORT ; Date Pack/Unpack APIs.
  367. VarDateFromUdate @330
  368. VarDateFromUdateEx @319
  369. VarUdateFromDate @331
  370. ; CALENDAR_SUPPORT ; API to access the Secondary month names
  371. GetAltMonthNames @332
  372. ; Mac Specific Entry Points
  373. #if OE_MACPPC
  374. ; TypeLib
  375. LoadTypeLibFSp @300
  376. QueryTypeLibFolder @301
  377. RegisterTypeLibFolder @302
  378. // UNDONE: these should really be private, but the other DLLs need to call them.
  379. // UNDONE: Maybe build 2 import libs, one internal, and one external?
  380. MemAlloc @350
  381. MemFree @351
  382. // Needed by OAREM
  383. ErrSysAllocStringLen @352
  384. ErrSysAllocString @353
  385. SafeArraySize @354
  386. // Needed by OATLB
  387. InitAppData @355
  388. g_pappdata @356
  389. LoadTypeLib1LockBytes @357
  390. // Needed by OARARE
  391. IsJapan @358
  392. IsDBCS @359
  393. ; NLS
  394. // marked these as private, since we don't want them in the import lib anymore
  395. CompareStringA=Thunk_CompareStringA @403 PRIVATE
  396. LCMapStringA=Thunk_LCMapStringA @400 PRIVATE
  397. GetLocaleInfoA=Thunk_GetLocaleInfoA @404 PRIVATE
  398. GetStringTypeA=Thunk_GetStringTypeA @405 PRIVATE
  399. GetSystemDefaultLangID=Thunk_GetSystemDefaultLangID @406 PRIVATE
  400. GetUserDefaultLangID=Thunk_GetUserDefaultLangID @407 PRIVATE
  401. GetSystemDefaultLCID=Thunk_GetSystemDefaultLCID @408 PRIVATE
  402. GetUserDefaultLCID=Thunk_GetUserDefaultLCID @409 PRIVATE
  403. #endif
  404. ; DLL support API
  405. DllCanUnloadNow PRIVATE
  406. ; new SafeArray APIs
  407. SafeArrayCreateVector @411
  408. SafeArrayCopyData @412
  409. ; Vector <-> Bstr conversion APIs
  410. VectorFromBstr @413
  411. BstrFromVector @414
  412. #if !OE_MAC
  413. ; Standard-Types entry points
  414. OleIconToCursor @415
  415. OleCreatePropertyFrameIndirect @416
  416. OleCreatePropertyFrame @417
  417. OleLoadPicture @418
  418. OleLoadPictureEx @401
  419. OleCreatePictureIndirect @419
  420. OleCreateFontIndirect @420
  421. OleTranslateColor @421
  422. OleLoadPictureFile @422
  423. OleLoadPictureFileEx @402
  424. OleSavePictureFile @423
  425. OleLoadPicturePath @424
  426. ; Format entry points
  427. VarFormat @87
  428. VarFormatDateTime @97
  429. VarFormatNumber @107
  430. VarFormatPercent @117
  431. VarFormatCurrency @127
  432. VarWeekdayName @128
  433. VarMonthName @129
  434. VarFormatFromTokens @139
  435. VarTokenizeFormatString @140
  436. ; Variant math
  437. VarAdd @141
  438. VarAnd @142
  439. VarDiv @143
  440. VarEqv @152
  441. VarIdiv @153
  442. VarImp @154
  443. VarMod @155
  444. VarMul @156
  445. VarOr @157
  446. VarPow @158
  447. VarSub @159
  448. VarXor @167
  449. VarAbs @168
  450. VarFix @169
  451. VarInt @172
  452. VarNeg @173
  453. VarNot @174
  454. VarRound @175
  455. VarCmp @176
  456. VarDecAdd @177
  457. VarDecDiv @178
  458. VarDecMul @179
  459. VarDecSub @181
  460. VarDecAbs @182
  461. VarDecFix @187
  462. VarDecInt @188
  463. VarDecNeg @189
  464. VarDecRound @203
  465. VarDecCmp @204
  466. VarDecCmpR8 @298
  467. VarCyAdd @299
  468. VarCyMul @303
  469. VarCyMulI4 @304
  470. VarCySub @305
  471. VarCyAbs @306
  472. VarCyFix @307
  473. VarCyInt @308
  474. VarCyNeg @309
  475. VarCyRound @310
  476. VarCyCmp @311
  477. VarCyCmpR8 @312
  478. VarBstrCat @313
  479. VarBstrCmp @314
  480. VarR8Pow @315
  481. VarR4CmpR8 @316
  482. VarR8Round @317
  483. VarCat @318
  484. #endif
  485. //
  486. // Note: If you plan to add more entry points, please fill in the holes
  487. // we already have, i.e., select numbers that are smaller than 423.
  488. // This way, we don't increase the DLL image size for entry points.