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.

1180 lines
53 KiB

  1. LIBRARY SHLWAPI
  2. ;; There should never never be any shared writeable segments here so that
  3. ;; we can run different versions of shlwapi in different processes and not
  4. ;; worry about global shared state.
  5. ;; This dll runs in the private arena in both Win9x and NTx.
  6. EXPORTS
  7. ;;=========================================================================
  8. ;; these are public APIs that are exported by name
  9. ;;=========================================================================
  10. DllGetVersion = CCDllGetVersion ULTRAPRIVATE
  11. ; String functions that are forwarded from COMCTL32
  12. StrChrA
  13. StrChrW
  14. StrChrNW
  15. StrChrNIW
  16. StrRChrA
  17. StrRChrW
  18. StrCmpNA
  19. StrCmpNW
  20. StrCmpNIA
  21. StrCmpNIW
  22. StrStrA
  23. StrStrW
  24. StrStrNW
  25. StrStrIA
  26. StrStrIW
  27. StrStrNIW
  28. StrCSpnA
  29. StrCSpnW
  30. StrToIntA
  31. StrToIntW
  32. ; More string functions that Win95 doesn't export
  33. StrChrIA
  34. StrChrIW
  35. StrRChrIA
  36. StrRChrIW
  37. StrRStrIA
  38. StrRStrIW
  39. StrCSpnIA
  40. StrCSpnIW
  41. StrPBrkA
  42. StrPBrkW
  43. StrSpnA
  44. StrSpnW
  45. StrToIntExA
  46. StrToIntExW
  47. StrToInt64ExA
  48. StrToInt64ExW
  49. StrCpyW
  50. StrCpyNW
  51. StrCatW
  52. StrNCatA
  53. StrNCatW
  54. StrCatBuffA
  55. StrCatBuffW
  56. StrDupA
  57. StrDupW
  58. StrCmpW
  59. StrCmpIW
  60. IntlStrEqWorkerA = StrIsIntlEqualA
  61. IntlStrEqWorkerW = StrIsIntlEqualW
  62. StrIsIntlEqualA
  63. StrIsIntlEqualW
  64. StrFormatByteSizeA
  65. StrFormatByteSizeW
  66. StrFormatByteSize64A
  67. StrFormatKBSizeA
  68. StrFormatKBSizeW
  69. ChrCmpIA
  70. ChrCmpIW
  71. StrTrimA
  72. StrTrimW
  73. SHStrDupA
  74. SHStrDupW
  75. StrCmpLogicalW
  76. StrCatChainW
  77. ; StrRet helper functions
  78. StrRetToStrA
  79. StrRetToStrW
  80. StrRetToBSTR
  81. StrRetToBufA
  82. StrRetToBufW
  83. ; Path exports
  84. PathMakePrettyA
  85. PathMakePrettyW
  86. PathGetArgsA
  87. PathGetArgsW
  88. PathRemoveArgsA
  89. PathRemoveArgsW
  90. PathFileExistsA
  91. PathFileExistsW
  92. PathFindOnPathA
  93. PathFindOnPathW
  94. PathFindExtensionA
  95. PathFindExtensionW
  96. PathAddExtensionA
  97. PathAddExtensionW
  98. PathRemoveExtensionA
  99. PathRemoveExtensionW
  100. PathRenameExtensionA
  101. PathRenameExtensionW
  102. PathCommonPrefixA
  103. PathCommonPrefixW
  104. PathRelativePathToA
  105. PathRelativePathToW
  106. PathBuildRootA
  107. PathBuildRootW
  108. PathRemoveBlanksA
  109. PathRemoveBlanksW
  110. PathRemoveBackslashA
  111. PathRemoveBackslashW
  112. PathCanonicalizeA
  113. PathCanonicalizeW
  114. PathStripToRootA
  115. PathStripToRootW
  116. PathCombineA
  117. PathCombineW
  118. PathAppendA
  119. PathAppendW
  120. PathRemoveFileSpecA
  121. PathRemoveFileSpecW
  122. PathAddBackslashA
  123. PathAddBackslashW
  124. PathFindFileNameA
  125. PathFindFileNameW
  126. PathIsFileSpecA
  127. PathIsFileSpecW
  128. PathIsUNCA
  129. PathIsUNCW
  130. PathIsNetworkPathA
  131. PathIsNetworkPathW
  132. PathGetDriveNumberA
  133. PathGetDriveNumberW
  134. PathIsRelativeA
  135. PathIsRelativeW
  136. PathStripPathA
  137. PathStripPathW
  138. PathSearchAndQualifyA
  139. PathSearchAndQualifyW
  140. PathIsRootA
  141. PathIsRootW
  142. PathIsDirectoryA
  143. PathIsDirectoryW
  144. PathIsDirectoryEmptyA
  145. PathIsDirectoryEmptyW
  146. PathCompactPathExA
  147. PathCompactPathExW
  148. PathCompactPathA
  149. PathCompactPathW
  150. PathSetDlgItemPathA
  151. PathSetDlgItemPathW
  152. PathUnquoteSpacesA
  153. PathUnquoteSpacesW
  154. PathQuoteSpacesA
  155. PathQuoteSpacesW
  156. PathFindNextComponentA
  157. PathFindNextComponentW
  158. PathMatchSpecA
  159. PathMatchSpecW
  160. PathSkipRootA
  161. PathSkipRootW
  162. PathIsSameRootA
  163. PathIsSameRootW
  164. PathParseIconLocationA
  165. PathParseIconLocationW
  166. PathIsContentTypeA
  167. PathIsContentTypeW
  168. PathIsURLA
  169. PathIsURLW
  170. PathIsPrefixA
  171. PathIsPrefixW
  172. PathIsUNCServerA
  173. PathIsUNCServerW
  174. PathIsUNCServerShareA
  175. PathIsUNCServerShareW
  176. PathGetCharTypeA
  177. PathGetCharTypeW
  178. PathMakeSystemFolderA
  179. PathMakeSystemFolderW
  180. PathUnmakeSystemFolderA
  181. PathUnmakeSystemFolderW
  182. PathIsSystemFolderA
  183. PathIsSystemFolderW
  184. PathFindSuffixArrayA
  185. PathFindSuffixArrayW
  186. PathIsLFNFileSpecA
  187. PathIsLFNFileSpecW
  188. PathUndecorateA
  189. PathUndecorateW
  190. PathUnExpandEnvStringsA
  191. PathUnExpandEnvStringsW
  192. ; Registry functions that are consistent across platforms
  193. SHDeleteOrphanKeyA = SHDeleteEmptyKeyA
  194. SHDeleteOrphanKeyW = SHDeleteEmptyKeyW
  195. SHDeleteEmptyKeyA
  196. SHDeleteEmptyKeyW
  197. SHDeleteKeyA
  198. SHDeleteKeyW
  199. SHDeleteValueA
  200. SHDeleteValueW
  201. SHGetValueA
  202. SHGetValueW
  203. SHSetValueA
  204. SHSetValueW
  205. SHQueryValueExA
  206. SHQueryValueExW
  207. SHEnumKeyExA
  208. SHEnumKeyExW
  209. SHEnumValueA
  210. SHEnumValueW
  211. SHQueryInfoKeyA
  212. SHQueryInfoKeyW
  213. SHRegOpenUSKeyA
  214. SHRegOpenUSKeyW
  215. SHRegCreateUSKeyA
  216. SHRegCreateUSKeyW
  217. SHRegQueryUSValueA
  218. SHRegQueryUSValueW
  219. SHRegWriteUSValueA
  220. SHRegWriteUSValueW
  221. SHRegEnumUSKeyA
  222. SHRegEnumUSKeyW
  223. SHRegEnumUSValueA
  224. SHRegEnumUSValueW
  225. SHRegQueryInfoUSKeyA
  226. SHRegQueryInfoUSKeyW
  227. SHRegDeleteUSValueA
  228. SHRegDeleteUSValueW
  229. SHRegDeleteEmptyUSKeyA
  230. SHRegDeleteEmptyUSKeyW
  231. SHRegCloseUSKey
  232. SHRegGetUSValueA
  233. SHRegGetUSValueW
  234. SHRegSetUSValueA
  235. SHRegSetUSValueW
  236. SHRegGetBoolUSValueA
  237. SHRegGetBoolUSValueW
  238. SHCopyKeyA
  239. SHCopyKeyW
  240. SHRegGetPathA
  241. SHRegGetPathW
  242. SHRegSetPathA
  243. SHRegSetPathW
  244. SHRegDuplicateHKey
  245. AssocCreate
  246. AssocQueryStringW
  247. AssocQueryStringA
  248. AssocQueryStringByKeyW
  249. AssocQueryStringByKeyA
  250. AssocQueryKeyW
  251. AssocQueryKeyA
  252. AssocIsDangerous
  253. ; public Url Parsing functions
  254. UrlCompareA
  255. UrlCompareW
  256. UrlCombineA
  257. UrlCombineW
  258. UrlCanonicalizeA
  259. UrlCanonicalizeW
  260. UrlIsOpaqueA
  261. UrlIsOpaqueW
  262. UrlIsNoHistoryA
  263. UrlIsNoHistoryW
  264. UrlIsA
  265. UrlIsW
  266. UrlGetLocationA
  267. UrlGetLocationW
  268. UrlUnescapeA
  269. UrlUnescapeW
  270. UrlEscapeA
  271. UrlEscapeW
  272. UrlCreateFromPathA
  273. UrlCreateFromPathW
  274. PathCreateFromUrlA
  275. PathCreateFromUrlW
  276. UrlHashA
  277. UrlHashW
  278. UrlGetPartA
  279. UrlGetPartW
  280. UrlApplySchemeA
  281. UrlApplySchemeW
  282. HashData
  283. ; Stream stuff
  284. SHOpenRegStreamA
  285. SHOpenRegStreamW
  286. SHOpenRegStream2A
  287. SHOpenRegStream2W
  288. SHCreateStreamOnFileA ; introduced 3-Apr-98 as private, made public on 17-May-98, export 316/317 removed 3-Oct-98
  289. SHCreateStreamOnFileW
  290. SHCreateStreamWrapper
  291. SHCreateStreamOnFileEx
  292. ; Palette stuff
  293. SHCreateShellPalette
  294. SHGetInverseCMAP
  295. ; HLS - RGB stuff
  296. ColorRGBToHLS
  297. ColorHLSToRGB
  298. ColorAdjustLuma
  299. ; Status/info
  300. SHIsLowMemoryMachine
  301. ;;=========================================================================
  302. ;; these are new public APIs
  303. ;;=========================================================================
  304. StrFromTimeIntervalA
  305. StrFromTimeIntervalW
  306. GetMenuPosFromID
  307. SHAutoComplete
  308. wnsprintfA
  309. wvnsprintfA
  310. wnsprintfW
  311. wvnsprintfW
  312. SHSkipJunction
  313. SHRegisterValidateTemplate
  314. ;;=========================================================================
  315. ;; these are internal APIs
  316. ;;=========================================================================
  317. ParseURLA @1 NONAME PRIVATE
  318. ParseURLW @2 NONAME PRIVATE
  319. PathFileExistsDefExtA @3 NONAME PRIVATE
  320. PathFileExistsDefExtW @4 NONAME PRIVATE
  321. PathFindOnPathExA @5 NONAME PRIVATE
  322. PathFindOnPathExW @6 NONAME PRIVATE
  323. ; Shared memory mapping stuff
  324. SHAllocShared @7 NONAME PRIVATE
  325. SHLockShared @8 NONAME PRIVATE
  326. SHUnlockShared @9 NONAME PRIVATE
  327. SHFreeShared @10 NONAME PRIVATE
  328. SHMapHandle @11 NONAME PRIVATE
  329. SHCreateMemStream @12 NONAME PRIVATE
  330. ; HTTP Header helper functions
  331. RegisterDefaultAcceptHeaders @13 NONAME PRIVATE
  332. GetAcceptLanguagesA @14 NONAME PRIVATE
  333. GetAcceptLanguagesW @15 NONAME PRIVATE
  334. // IE4 exported SHCreateThread as 16 so it has to stay there
  335. SHCreateThread @16 // public API, but but ordinal (for compat)
  336. SHGetThreadRef
  337. SHSetThreadRef
  338. SHReleaseThreadRef
  339. SHWriteDataBlockList @17 NONAME PRIVATE
  340. SHReadDataBlockList @18 NONAME PRIVATE
  341. SHFreeDataBlockList @19 NONAME PRIVATE
  342. SHAddDataBlock @20 NONAME PRIVATE
  343. SHRemoveDataBlock @21 NONAME PRIVATE
  344. SHFindDataBlock @22 NONAME PRIVATE
  345. SHStringFromGUIDA @23 NONAME PRIVATE
  346. SHStringFromGUIDW @24 NONAME PRIVATE
  347. ;;=========================================================================
  348. ;; Unicode support for Win95
  349. ;;=========================================================================
  350. //
  351. // These functions are fully reimplemented, not wrapped.
  352. //
  353. IsCharAlphaWrapW @25 NONAME PRIVATE
  354. IsCharUpperWrapW @26 NONAME PRIVATE
  355. IsCharLowerWrapW @27 NONAME PRIVATE
  356. IsCharAlphaNumericWrapW @28 NONAME PRIVATE
  357. IsCharSpaceW @29 NONAME PRIVATE
  358. IsCharBlankW @30 NONAME PRIVATE
  359. IsCharPunctW @31 NONAME PRIVATE
  360. IsCharCntrlW @32 NONAME PRIVATE
  361. IsCharDigitW @33 NONAME PRIVATE
  362. IsCharXDigitW @34 NONAME PRIVATE
  363. GetStringType3ExW @35 NONAME PRIVATE
  364. //
  365. // There are three classes of platforms we are interested in.
  366. //
  367. // x86 - Since X86 might be running Win95, we need to wrap both
  368. // base and shell functions, because both base and shell
  369. // are ANSI on Win95.
  370. //
  371. // Non-x86 - Since Win95 doesn't run on ia64, we don't need
  372. // ANSI/UNICODE wrappers.
  373. //
  374. //
  375. // WRAPFN - Declare a wrapper for a Win32 base function.
  376. //
  377. // Do this only for DLLs that we are already
  378. // linked to for other reasons. Do not do this for DLLs
  379. // that we delay-load (like SHELL32)
  380. //
  381. // WRAPDL - Declare a wrapper for a Win32 delay-loaded function.
  382. //
  383. // The delay-load version of WRAPFN.
  384. //
  385. // WRAPDL_ - Declare a wrapper for a Win32 delay-loaded function.
  386. //
  387. // Same as WRAPDL, except sticks an underscore in front of
  388. // the function name when we do our delay-load thingie.
  389. //
  390. // WRAPDLLFN2 - Declare a wrapper for a Win32 base function
  391. // with renaming.
  392. //
  393. // Each of these wrap functions also has an "X" version, which means
  394. // that the underlying API does not end in "W", so we shouldn't attach
  395. // one to the wrapper either.
  396. //
  397. //
  398. #if defined(_X86_) // X86 platform - use full wrappers
  399. #define WRAPDLLFN2(dll, fn, fn2) fn
  400. #define WRAPFN(dll, fn) fn##rapW
  401. #define WRAPDL(dll, fn) fn##rapW
  402. #define WRAPDLN(dll, fn, fn2) fn##rapW
  403. #define WRAPDLLFN2X(dll, fn, fn2) fn
  404. #define WRAPFNX(dll, fn) fn##Wrap
  405. #define WRAPDLX(dll, fn) fn##Wrap
  406. #else // Non-X86 platform - use forwarders
  407. #define WRAPDLLFN2(dll, fn, fn2) fn = dll.fn2
  408. #define WRAPFN(dll, fn) fn##rapW = dll.fn
  409. #define WRAPDL(dll, fn) fn##rapW = fn
  410. #define WRAPDLN(dll, fn, fn2) fn##rapW = fn2
  411. #define WRAPDLLFN2X(dll, fn, fn2) fn = dll.fn2
  412. #define WRAPFNX(dll, fn) fn##Wrap = dll.fn
  413. #define WRAPDLX(dll, fn) fn##Wrap = fn
  414. #endif
  415. #define KERNEL32_WRAP(fn) WRAPFN(KERNEL32, fn)
  416. #define USER32_WRAP(fn) WRAPFN( USER32, fn)
  417. #define USER32_WRAPX(fn) WRAPFNX( USER32, fn)
  418. #define GDI32_WRAP(fn) WRAPFN( GDI32, fn)
  419. #define ADVAPI32_WRAP(fn) WRAPFN(ADVAPI32, fn)
  420. //
  421. // These DLLs are forwarded to our delay-load wrappers.
  422. //
  423. // Need a special macro EMPTY that expands to nothing, because the
  424. // preprocessor doesn't like it when we pass a null string.
  425. //
  426. #define WINMM_WRAP(fn) WRAPDL( WINMM, fn)
  427. #define MPR_WRAP(fn) WRAPDL( MPR, fn)
  428. #define VERSION_WRAP(fn) WRAPDL( VERSION, fn)
  429. #define SHELL32_WRAP(fn) WRAPDL( SHELL32, fn)
  430. #define SHELL32_WRAPX(fn) WRAPDLX(SHELL32, fn)
  431. #define SHELL32_WRAPN(fn, fn2) WRAPDLN(SHELL32, fn, fn2)
  432. #define COMDLG32_WRAP(fn) WRAPDL(COMDLG32, fn)
  433. AppendMenuWrapW @36 NONAME PRIVATE // wanted on non-x86 for ML
  434. USER32_WRAP(CallWindowProcW) @37 NONAME PRIVATE
  435. USER32_WRAP(CharLowerW) @38 NONAME PRIVATE
  436. USER32_WRAP(CharLowerBuffW) @39 NONAME PRIVATE
  437. USER32_WRAP(CharNextW) @40 NONAME PRIVATE
  438. USER32_WRAP(CharPrevW) @41 NONAME PRIVATE
  439. USER32_WRAP(CharToOemW) @42 NONAME PRIVATE
  440. USER32_WRAP(CharUpperW) @43 NONAME PRIVATE
  441. USER32_WRAP(CharUpperBuffW) @44 NONAME PRIVATE
  442. KERNEL32_WRAP(CompareStringW) @45 NONAME PRIVATE
  443. USER32_WRAP(CopyAcceleratorTableW) @46 NONAME PRIVATE
  444. USER32_WRAP(CreateAcceleratorTableW) @47 NONAME PRIVATE
  445. GDI32_WRAP(CreateDCW) @48 NONAME PRIVATE
  446. CreateDialogParamWrapW @49 NONAME PRIVATE // wanted on non-x86 for ML
  447. KERNEL32_WRAP(CreateDirectoryW) @50 NONAME PRIVATE
  448. KERNEL32_WRAP(CreateEventW) @51 NONAME PRIVATE
  449. KERNEL32_WRAP(CreateFileW) @52 NONAME PRIVATE
  450. GDI32_WRAP(CreateFontIndirectW) @53 NONAME PRIVATE
  451. GDI32_WRAP(CreateICW) @54 NONAME PRIVATE
  452. USER32_WRAP(CreateWindowExW) @55 NONAME PRIVATE
  453. USER32_WRAP(DefWindowProcW) @56 NONAME PRIVATE
  454. KERNEL32_WRAP(DeleteFileW) @57 NONAME PRIVATE
  455. DialogBoxIndirectParamWrapW @58 NONAME PRIVATE // wanted on non-x86 for ML
  456. DialogBoxParamWrapW @59 NONAME PRIVATE // wanted on non-x86 for ML
  457. USER32_WRAP(DispatchMessageW) @60 NONAME PRIVATE
  458. USER32_WRAP(DrawTextW) @61 NONAME PRIVATE
  459. GDI32_WRAP(EnumFontFamiliesW) @62 NONAME PRIVATE
  460. GDI32_WRAP(EnumFontFamiliesExW) @63 NONAME PRIVATE
  461. KERNEL32_WRAP(EnumResourceNamesW) @64 NONAME PRIVATE
  462. KERNEL32_WRAP(FindFirstFileW) @65 NONAME PRIVATE
  463. KERNEL32_WRAP(FindResourceW) @66 NONAME PRIVATE
  464. USER32_WRAP(FindWindowW) @67 NONAME PRIVATE
  465. KERNEL32_WRAP(FormatMessageW) @68 NONAME PRIVATE
  466. USER32_WRAP(GetClassInfoW) @69 NONAME PRIVATE
  467. USER32_WRAP(GetClassLongW) @70 NONAME PRIVATE
  468. USER32_WRAP(GetClassNameW) @71 NONAME PRIVATE
  469. USER32_WRAP(GetClipboardFormatNameW) @72 NONAME PRIVATE
  470. KERNEL32_WRAP(GetCurrentDirectoryW) @73 NONAME PRIVATE
  471. USER32_WRAP(GetDlgItemTextW) @74 NONAME PRIVATE
  472. KERNEL32_WRAP(GetFileAttributesW) @75 NONAME PRIVATE
  473. KERNEL32_WRAP(GetFullPathNameW) @76 NONAME PRIVATE
  474. KERNEL32_WRAP(GetLocaleInfoW) @77 NONAME PRIVATE
  475. GetMenuStringWrapW @78 NONAME PRIVATE // wanted on non-x86 for ML
  476. USER32_WRAP(GetMessageW) @79 NONAME PRIVATE
  477. KERNEL32_WRAP(GetModuleFileNameW) @80 NONAME PRIVATE
  478. KERNEL32_WRAP(GetSystemDirectoryW) @81 NONAME PRIVATE
  479. KERNEL32_WRAP(SearchPathW) @82 NONAME PRIVATE
  480. KERNEL32_WRAP(GetModuleHandleW) @83 NONAME PRIVATE
  481. GDI32_WRAP(GetObjectW) @84 NONAME PRIVATE
  482. KERNEL32_WRAP(GetPrivateProfileIntW) @85 NONAME PRIVATE
  483. KERNEL32_WRAP(GetProfileStringW) @86 NONAME PRIVATE
  484. USER32_WRAP(GetPropW) @87 NONAME PRIVATE
  485. KERNEL32_WRAP(GetStringTypeExW) @88 NONAME PRIVATE
  486. KERNEL32_WRAP(GetTempFileNameW) @89 NONAME PRIVATE
  487. KERNEL32_WRAP(GetTempPathW) @90 NONAME PRIVATE
  488. GDI32_WRAP(GetTextExtentPoint32W) @91 NONAME PRIVATE
  489. GDI32_WRAP(GetTextFaceW) @92 NONAME PRIVATE
  490. GDI32_WRAP(GetTextMetricsW) @93 NONAME PRIVATE
  491. USER32_WRAP(GetWindowLongW) @94 NONAME PRIVATE
  492. USER32_WRAP(GetWindowTextW) @95 NONAME PRIVATE
  493. USER32_WRAP(GetWindowTextLengthW) @96 NONAME PRIVATE
  494. KERNEL32_WRAP(GetWindowsDirectoryW) @97 NONAME PRIVATE
  495. InsertMenuWrapW @98 NONAME PRIVATE // wanted on non-x86 for ML
  496. USER32_WRAP(IsDialogMessageW) @99 NONAME PRIVATE
  497. USER32_WRAP(LoadAcceleratorsW) @100 NONAME PRIVATE
  498. USER32_WRAP(LoadBitmapW) @101 NONAME PRIVATE
  499. USER32_WRAP(LoadCursorW) @102 NONAME PRIVATE
  500. USER32_WRAP(LoadIconW) @103 NONAME PRIVATE
  501. USER32_WRAP(LoadImageW) @104 NONAME PRIVATE
  502. KERNEL32_WRAP(LoadLibraryExW) @105 NONAME PRIVATE
  503. LoadMenuWrapW @106 NONAME PRIVATE // wanted on non-x86 for ML
  504. USER32_WRAP(LoadStringW) @107 NONAME PRIVATE
  505. USER32_WRAP(MessageBoxIndirectW) @108 NONAME PRIVATE
  506. USER32_WRAP(ModifyMenuW) @109 NONAME PRIVATE
  507. GDI32_WRAP(GetCharWidth32W) @110 NONAME PRIVATE
  508. GDI32_WRAP(GetCharacterPlacementW) @111 NONAME PRIVATE
  509. KERNEL32_WRAP(CopyFileW) @112 NONAME PRIVATE
  510. KERNEL32_WRAP(MoveFileW) @113 NONAME PRIVATE
  511. USER32_WRAP(OemToCharW) @114 NONAME PRIVATE
  512. KERNEL32_WRAP(OutputDebugStringW) @115 NONAME PRIVATE
  513. USER32_WRAP(PeekMessageW) @116 NONAME PRIVATE
  514. USER32_WRAP(PostMessageW) @117 NONAME PRIVATE
  515. USER32_WRAP(PostThreadMessageW) @118 NONAME PRIVATE
  516. ADVAPI32_WRAP(RegCreateKeyW) @119 NONAME PRIVATE
  517. ADVAPI32_WRAP(RegCreateKeyExW) @120 NONAME PRIVATE
  518. ADVAPI32_WRAP(RegDeleteKeyW) @121 NONAME PRIVATE
  519. ADVAPI32_WRAP(RegEnumKeyW) @122 NONAME PRIVATE
  520. ADVAPI32_WRAP(RegEnumKeyExW) @123 NONAME PRIVATE
  521. ADVAPI32_WRAP(RegOpenKeyW) @124 NONAME PRIVATE
  522. ADVAPI32_WRAP(RegOpenKeyExW) @125 NONAME PRIVATE
  523. ADVAPI32_WRAP(RegQueryInfoKeyW) @126 NONAME PRIVATE
  524. ADVAPI32_WRAP(RegQueryValueW) @127 NONAME PRIVATE
  525. ADVAPI32_WRAP(RegQueryValueExW) @128 NONAME PRIVATE
  526. ADVAPI32_WRAP(RegSetValueW) @129 NONAME PRIVATE
  527. ADVAPI32_WRAP(RegSetValueExW) @130 NONAME PRIVATE
  528. USER32_WRAP(RegisterClassW) @131 NONAME PRIVATE
  529. USER32_WRAP(RegisterClipboardFormatW) @132 NONAME PRIVATE
  530. USER32_WRAP(RegisterWindowMessageW) @133 NONAME PRIVATE
  531. USER32_WRAP(RemovePropW) @134 NONAME PRIVATE
  532. USER32_WRAP(SendDlgItemMessageW) @135 NONAME PRIVATE
  533. USER32_WRAP(SendMessageW) @136 NONAME PRIVATE
  534. KERNEL32_WRAP(SetCurrentDirectoryW) @137 NONAME PRIVATE
  535. USER32_WRAP(SetDlgItemTextW) @138 NONAME PRIVATE
  536. SetMenuItemInfoWrapW @139 NONAME PRIVATE // wanted on non-x86 for ML
  537. USER32_WRAP(SetPropW) @140 NONAME PRIVATE
  538. USER32_WRAP(SetWindowLongW) @141 NONAME PRIVATE
  539. USER32_WRAP(SetWindowsHookExW) @142 NONAME PRIVATE
  540. USER32_WRAP(SetWindowTextW) @143 NONAME PRIVATE
  541. GDI32_WRAP(StartDocW) @144 NONAME PRIVATE
  542. USER32_WRAP(SystemParametersInfoW) @145 NONAME PRIVATE
  543. USER32_WRAP(TranslateAcceleratorW) @146 NONAME PRIVATE
  544. USER32_WRAP(UnregisterClassW) @147 NONAME PRIVATE
  545. USER32_WRAP(VkKeyScanW) @148 NONAME PRIVATE
  546. USER32_WRAP(WinHelpW) @149 NONAME PRIVATE
  547. USER32_WRAP(wvsprintfW) @150 NONAME PRIVATE
  548. ;;=========================================================================
  549. ;; Seven bit ASCII string compare
  550. ;;=========================================================================
  551. StrCmpNCA @151 NONAME PRIVATE
  552. StrCmpNCW @152 NONAME PRIVATE
  553. StrCmpNICA @153 NONAME PRIVATE
  554. StrCmpNICW @154 NONAME PRIVATE
  555. StrCmpCA @155 NONAME PRIVATE
  556. StrCmpCW @156 NONAME PRIVATE
  557. StrCmpICA @157 NONAME PRIVATE
  558. StrCmpICW @158 NONAME PRIVATE
  559. ;;=========================================================================
  560. ;; True-Unicode String comparison
  561. ;;=========================================================================
  562. CompareStringAltW @159 NONAME PRIVATE
  563. ;;=========================================================================
  564. ;; HTML About Dialog Box info
  565. ;;=========================================================================
  566. SHAboutInfoA @160 NONAME PRIVATE
  567. SHAboutInfoW @161 NONAME PRIVATE
  568. ;;=========================================================================
  569. SHTruncateString @162 NONAME PRIVATE
  570. IUnknown_QueryStatus @163 NONAME PRIVATE
  571. IUnknown_Exec @164 NONAME PRIVATE
  572. SHSetWindowBits @165 NONAME PRIVATE
  573. SHIsEmptyStream @166 NONAME PRIVATE
  574. SHSetParentHwnd @167 NONAME PRIVATE
  575. ConnectToConnectionPoint @168 NONAME PRIVATE
  576. IUnknown_AtomicRelease @169 NONAME PRIVATE
  577. PathSkipLeadingSlashesA @170 NONAME PRIVATE
  578. SHIsSameObject @171 NONAME PRIVATE
  579. IUnknown_GetWindow @172 NONAME PRIVATE
  580. IUnknown_SetOwner @173 NONAME PRIVATE
  581. IUnknown_SetSite @174 NONAME PRIVATE
  582. IUnknown_GetClassID @175 NONAME PRIVATE
  583. IUnknown_QueryService @176 NONAME PRIVATE
  584. SHLoadMenuPopup @177 NONAME PRIVATE
  585. SHPropagateMessage @178 NONAME PRIVATE
  586. SHMenuIndexFromID @179 NONAME PRIVATE
  587. SHRemoveAllSubMenus @180 NONAME PRIVATE
  588. SHEnableMenuItem @181 NONAME PRIVATE
  589. SHCheckMenuItem @182 NONAME PRIVATE
  590. SHRegisterClassA @183 NONAME PRIVATE
  591. IStream_Read @184 NONAME PRIVATE
  592. SHMessageBoxCheckA @185 NONAME PRIVATE
  593. SHSimulateDrop @186 NONAME PRIVATE
  594. SHLoadFromPropertyBag @187 NONAME PRIVATE
  595. IUnknown_TranslateAcceleratorOCS @188 NONAME PRIVATE
  596. IUnknown_OnFocusOCS @189 NONAME PRIVATE
  597. IUnknown_HandleIRestrict @190 NONAME PRIVATE
  598. SHMessageBoxCheckW @191 NONAME PRIVATE
  599. SHGetMenuFromID @192 NONAME PRIVATE
  600. SHGetCurColorRes @193 NONAME PRIVATE
  601. SHWaitForSendMessageThread @194 NONAME PRIVATE
  602. SHIsExpandableFolder @195 NONAME PRIVATE
  603. SHVerbExistsNA @196 NONAME PRIVATE
  604. SHFillRectClr @197 NONAME PRIVATE
  605. SHSearchMapInt @198 NONAME PRIVATE
  606. IUnknown_Set @199 NONAME PRIVATE
  607. MayQSForward @200 NONAME PRIVATE
  608. MayExecForward @201 NONAME PRIVATE
  609. IsQSForward @202 NONAME PRIVATE
  610. SHStripMneumonicA @203 NONAME PRIVATE
  611. SHIsChildOrSelf @204 NONAME PRIVATE
  612. SHGetValueGoodBootA @205 NONAME PRIVATE
  613. SHGetValueGoodBootW @206 NONAME PRIVATE
  614. IContextMenu_Invoke @207 NONAME PRIVATE
  615. FDSA_Initialize @208 NONAME PRIVATE
  616. FDSA_Destroy @209 NONAME PRIVATE
  617. FDSA_InsertItem @210 NONAME PRIVATE
  618. FDSA_DeleteItem @211 NONAME PRIVATE
  619. IStream_Write @212 NONAME PRIVATE
  620. IStream_Reset @213 NONAME PRIVATE
  621. IStream_Size @214 NONAME PRIVATE
  622. SHAnsiToUnicode @215 NONAME PRIVATE
  623. SHAnsiToUnicodeCP @216 NONAME PRIVATE
  624. SHUnicodeToAnsi @217 NONAME PRIVATE
  625. SHUnicodeToAnsiCP @218 NONAME PRIVATE
  626. QISearch @219 NONAME PRIVATE
  627. SHSetDefaultDialogFont @220 NONAME PRIVATE
  628. SHRemoveDefaultDialogFont @221 NONAME PRIVATE
  629. ; Global counters
  630. SHGlobalCounterCreate @222 NONAME PRIVATE
  631. SHGlobalCounterGetValue @223 NONAME PRIVATE
  632. SHGlobalCounterIncrement @224 NONAME PRIVATE
  633. SHStripMneumonicW @225 NONAME PRIVATE
  634. ; Security zones
  635. ZoneCheckPathA @226 NONAME PRIVATE
  636. ZoneCheckPathW @227 NONAME PRIVATE
  637. ZoneCheckUrlA @228 NONAME PRIVATE
  638. ZoneCheckUrlW @229 NONAME PRIVATE
  639. ZoneCheckUrlExA @230 NONAME PRIVATE
  640. ZoneCheckUrlExW @231 NONAME PRIVATE
  641. ZoneCheckUrlExCacheA @232 NONAME PRIVATE
  642. ZoneCheckUrlExCacheW @233 NONAME PRIVATE
  643. ZoneCheckHost @234 NONAME PRIVATE
  644. ZoneCheckHostEx @235 NONAME PRIVATE
  645. ; More OLE helper functions
  646. SHPinDllOfCLSID @236 NONAME PRIVATE
  647. ; More simple wrappers
  648. SHRegisterClassW @237 NONAME PRIVATE
  649. SHUnregisterClassesA @238 NONAME PRIVATE
  650. SHUnregisterClassesW @239 NONAME PRIVATE
  651. SHDefWindowProc @240 NONAME PRIVATE
  652. ; Shell Performance Functions
  653. StopWatchMode @241 NONAME PRIVATE
  654. StopWatchFlush @242 NONAME PRIVATE
  655. StopWatchA @243 NONAME PRIVATE
  656. StopWatchW @244 NONAME PRIVATE
  657. StopWatch_TimerHandler @245 NONAME PRIVATE
  658. StopWatch_CheckMsg @246 NONAME PRIVATE
  659. StopWatch_MarkFrameStart @247 NONAME PRIVATE
  660. StopWatch_MarkSameFrameStart @248 NONAME PRIVATE
  661. StopWatch_MarkJavaStop @249 NONAME PRIVATE
  662. GetPerfTime @250 NONAME PRIVATE
  663. StopWatch_DispatchTime @251 NONAME PRIVATE
  664. StopWatch_SetMsgLastLocation @252 NONAME PRIVATE
  665. StopWatchExA @253 NONAME PRIVATE
  666. StopWatchExW @254 NONAME PRIVATE
  667. #ifndef NO_ETW_TRACING
  668. EventTraceHandler @255 NONAME PRIVATE
  669. #endif
  670. IUnknown_GetSite @256 NONAME PRIVATE
  671. SHCreateWorkerWindowA @257 NONAME PRIVATE
  672. ;;=========================================================================
  673. ;; Thread Pool Services
  674. ;;=========================================================================
  675. SHRegisterWaitForSingleObject @258 NONAME PRIVATE
  676. SHUnregisterWait @259 NONAME PRIVATE
  677. SHQueueUserWorkItem @260 NONAME PRIVATE
  678. SHCreateTimerQueue @261 NONAME PRIVATE
  679. SHDeleteTimerQueue @262 NONAME PRIVATE
  680. SHSetTimerQueueTimer @263 NONAME PRIVATE
  681. SHChangeTimerQueueTimer @264 NONAME PRIVATE
  682. SHCancelTimerQueueTimer @265 NONAME PRIVATE
  683. SHRestrictionLookup @266 NONAME PRIVATE
  684. SHWeakQueryInterface @267 NONAME PRIVATE
  685. SHWeakReleaseInterface @268 NONAME PRIVATE
  686. GUIDFromStringA @269 NONAME PRIVATE
  687. GUIDFromStringW @270 NONAME PRIVATE
  688. SHGetRestriction @271 NONAME PRIVATE
  689. SHSetThreadPoolLimits @272 NONAME PRIVATE
  690. SHTerminateThreadPool @273 NONAME PRIVATE
  691. SHCancelUserWorkItems @293 NONAME PRIVATE
  692. ;;=========================================================================
  693. ;; other services
  694. ;;=========================================================================
  695. RegisterGlobalHotkeyW @274 NONAME PRIVATE
  696. RegisterGlobalHotkeyA @275 NONAME PRIVATE
  697. WhichPlatform @276 NONAME PRIVATE
  698. SHDialogBox @277 NONAME PRIVATE
  699. SHCreateWorkerWindowW @278 NONAME PRIVATE
  700. SHInvokeDefaultCommand @279 NONAME PRIVATE
  701. SHRegGetIntW @280 NONAME PRIVATE
  702. SHPackDispParamsV @281 NONAME PRIVATE
  703. SHPackDispParams @282 NONAME PRIVATE
  704. IConnectionPoint_InvokeWithCancel @283 NONAME PRIVATE
  705. IConnectionPoint_SimpleInvoke @284 NONAME PRIVATE
  706. IConnectionPoint_OnChanged @285 NONAME PRIVATE
  707. IUnknown_CPContainerInvokeParam @286 NONAME PRIVATE
  708. IUnknown_CPContainerOnChanged @287 NONAME PRIVATE
  709. IUnknown_CPContainerInvokeIndirect @288 NONAME PRIVATE
  710. WINMM_WRAP(PlaySoundW) @289 NONAME PRIVATE
  711. SHMirrorIcon @290 NONAME PRIVATE
  712. SHMessageBoxCheckExA @291 NONAME PRIVATE
  713. SHMessageBoxCheckExW @292 NONAME PRIVATE
  714. ; SHCancelUserWorkItems @293 NONAME PRIVATE
  715. SHGetIniStringW @294 NONAME PRIVATE
  716. SHSetIniStringW @295 NONAME PRIVATE
  717. CreateURLFileContentsW @296 NONAME PRIVATE
  718. CreateURLFileContentsA @297 NONAME PRIVATE
  719. ;;=========================================================================
  720. ;; New Exports
  721. ;;=========================================================================
  722. KERNEL32_WRAP(WritePrivateProfileStringW) @298 NONAME PRIVATE
  723. GDI32_WRAP(ExtTextOutW) @299 NONAME PRIVATE
  724. GDI32_WRAP(CreateFontW) @300 NONAME PRIVATE
  725. USER32_WRAP(DrawTextExW) @301 NONAME PRIVATE
  726. GetMenuItemInfoWrapW @302 NONAME PRIVATE // wanted on non-x86 for ML
  727. InsertMenuItemWrapW @303 NONAME PRIVATE // wanted on non-x86 for ML
  728. GDI32_WRAP(CreateMetaFileW) @304 NONAME PRIVATE
  729. KERNEL32_WRAP(CreateMutexW) @305 NONAME PRIVATE
  730. KERNEL32_WRAP(ExpandEnvironmentStringsW) @306 NONAME PRIVATE
  731. KERNEL32_WRAP(CreateSemaphoreW) @307 NONAME PRIVATE
  732. KERNEL32_WRAP(IsBadStringPtrW) @308 NONAME PRIVATE
  733. KERNEL32_WRAP(LoadLibraryW) @309 NONAME PRIVATE
  734. KERNEL32_WRAP(GetTimeFormatW) @310 NONAME PRIVATE
  735. KERNEL32_WRAP(GetDateFormatW) @311 NONAME PRIVATE
  736. KERNEL32_WRAP(GetPrivateProfileStringW) @312 NONAME PRIVATE
  737. SHELL32_WRAP(SHGetFileInfoW) @313 NONAME PRIVATE
  738. USER32_WRAP(RegisterClassExW) @314 NONAME PRIVATE
  739. USER32_WRAP(GetClassInfoExW) @315 NONAME PRIVATE
  740. IShellFolder_GetDisplayNameOf @316 NONAME PRIVATE
  741. IShellFolder_ParseDisplayName @317 NONAME PRIVATE
  742. SHELL32_WRAP(DragQueryFileW) @318 NONAME PRIVATE
  743. USER32_WRAP(FindWindowExW) @319 NONAME PRIVATE
  744. ;;=========================================================================
  745. ;; MIME File Type helper functions
  746. ;;=========================================================================
  747. RegisterMIMETypeForExtensionA @320 NONAME PRIVATE
  748. RegisterMIMETypeForExtensionW @321 NONAME PRIVATE
  749. UnregisterMIMETypeForExtensionA @322 NONAME PRIVATE
  750. UnregisterMIMETypeForExtensionW @323 NONAME PRIVATE
  751. RegisterExtensionForMIMETypeA @324 NONAME PRIVATE
  752. RegisterExtensionForMIMETypeW @325 NONAME PRIVATE
  753. UnregisterExtensionForMIMETypeA @326 NONAME PRIVATE
  754. UnregisterExtensionForMIMETypeW @327 NONAME PRIVATE
  755. GetMIMETypeSubKeyA @328 NONAME PRIVATE
  756. GetMIMETypeSubKeyW @329 NONAME PRIVATE
  757. MIME_GetExtensionA @330 NONAME PRIVATE
  758. MIME_GetExtensionW @331 NONAME PRIVATE
  759. ;;=========================================================================
  760. ;; More Thunk Wrappers
  761. ;;=========================================================================
  762. USER32_WRAP(CallMsgFilterW) @332 NONAME PRIVATE
  763. SHELL32_WRAP(SHBrowseForFolderW) @333 NONAME PRIVATE
  764. SHELL32_WRAP(SHGetPathFromIDListW) @334 NONAME PRIVATE
  765. SHELL32_WRAP(ShellExecuteExW) @335 NONAME PRIVATE
  766. SHELL32_WRAP(SHFileOperationW) @336 NONAME PRIVATE
  767. SHELL32_WRAP(ExtractIconExW) @337 NONAME PRIVATE
  768. KERNEL32_WRAP(SetFileAttributesW) @338 NONAME PRIVATE
  769. KERNEL32_WRAP(GetNumberFormatW) @339 NONAME PRIVATE
  770. USER32_WRAP(MessageBoxW) @340 NONAME PRIVATE
  771. KERNEL32_WRAP(FindNextFileW) @341 NONAME PRIVATE
  772. #ifdef _WIN64
  773. SHInterlockedCompareExchange @342 NONAME PRIVATE
  774. #else
  775. WRAPDLLFN2(KERNEL32, SHInterlockedCompareExchange,
  776. InterlockedCompareExchange) @342 NONAME PRIVATE
  777. #endif
  778. SHRegGetCLSIDKeyA @343 NONAME PRIVATE
  779. SHRegGetCLSIDKeyW @344 NONAME PRIVATE
  780. ;;=========================================================================
  781. ;; Other
  782. ;;=========================================================================
  783. SHAnsiToAnsi @345 NONAME PRIVATE
  784. SHUnicodeToUnicode @346 NONAME PRIVATE
  785. ADVAPI32_WRAP(RegDeleteValueW) @347 NONAME PRIVATE
  786. SHGetFileDescriptionW @348 NONAME PRIVATE
  787. SHGetFileDescriptionA @349 NONAME PRIVATE
  788. VERSION_WRAP(GetFileVersionInfoSizeW) @350 NONAME PRIVATE
  789. VERSION_WRAP(GetFileVersionInfoW) @351 NONAME PRIVATE
  790. VERSION_WRAP(VerQueryValueW) @352 NONAME PRIVATE
  791. SHFormatDateTimeA @353 NONAME PRIVATE
  792. SHFormatDateTimeW @354 NONAME PRIVATE
  793. IUnknown_EnableModeless @355 NONAME PRIVATE
  794. CreateAllAccessSecurityAttributes @356 NONAME PRIVATE
  795. SHGetNewLinkInfoWrapW @357 NONAME PRIVATE
  796. SHELL32_WRAP(SHDefExtractIconW) @358 NONAME PRIVATE
  797. KERNEL32_WRAP(OpenEventW) @359 NONAME PRIVATE
  798. KERNEL32_WRAP(RemoveDirectoryW) @360 NONAME PRIVATE
  799. KERNEL32_WRAP(GetShortPathNameW) @361 NONAME PRIVATE
  800. ADVAPI32_WRAP(GetUserNameW) @362 NONAME PRIVATE
  801. SHInvokeCommand @363 NONAME PRIVATE
  802. DoesStringRoundTripA @364 NONAME PRIVATE
  803. DoesStringRoundTripW @365 NONAME PRIVATE
  804. ADVAPI32_WRAP(RegEnumValueW) @366 NONAME PRIVATE
  805. KERNEL32_WRAP(WritePrivateProfileStructW) @367 NONAME PRIVATE
  806. KERNEL32_WRAP(GetPrivateProfileStructW) @368 NONAME PRIVATE
  807. KERNEL32_WRAP(CreateProcessW) @369 NONAME PRIVATE
  808. SHELL32_WRAP(ExtractIconW) @370 NONAME PRIVATE
  809. USER32_WRAP(DdeInitializeW) @371 NONAME PRIVATE
  810. USER32_WRAP(DdeCreateStringHandleW) @372 NONAME PRIVATE
  811. USER32_WRAP(DdeQueryStringW) @373 NONAME PRIVATE
  812. SHCheckDiskForMediaA @374 NONAME PRIVATE
  813. SHCheckDiskForMediaW @375 NONAME PRIVATE
  814. MLGetUILanguage @376 NONAME PRIVATE
  815. MLLoadLibraryA @377 NONAME PRIVATE
  816. MLLoadLibraryW @378 NONAME PRIVATE
  817. SHELL32_WRAPN(Shell_GetCachedImageIndexW, Shell_GetCachedImageIndex) @379 NONAME PRIVATE
  818. Shell_GetCachedImageIndexWrapA @380 NONAME PRIVATE
  819. AssocCopyVerbs @381 NONAME PRIVATE
  820. ZoneComputePaneSize @382 NONAME PRIVATE
  821. ZoneConfigureW @383 NONAME PRIVATE
  822. SHRestrictedMessageBox @384 NONAME PRIVATE
  823. SHLoadRawAccelerators @385 NONAME PRIVATE
  824. SHQueryRawAccelerator @386 NONAME PRIVATE
  825. SHQueryRawAcceleratorMsg @387 NONAME PRIVATE
  826. ShellMessageBoxWrapW @388 NONAME PRIVATE // This one replaces shell32's implementation
  827. COMDLG32_WRAP(GetSaveFileNameW) @389 NONAME PRIVATE
  828. MPR_WRAP(WNetRestoreConnectionW) @390 NONAME PRIVATE
  829. MPR_WRAP(WNetGetLastErrorW) @391 NONAME PRIVATE
  830. WRAPDLLFN2(USER32, EndDialogWrap, EndDialog) @392 NONAME PRIVATE // Remove this soon
  831. CreateDialogIndirectParamWrapW @393 NONAME PRIVATE // wanted even on non-x86 for ML
  832. SHELL32_WRAPX(SHChangeNotify) @394 NONAME PRIVATE
  833. MLWinHelpA @395 NONAME PRIVATE
  834. MLHtmlHelpA @396 NONAME PRIVATE
  835. MLWinHelpW @397 NONAME PRIVATE
  836. MLHtmlHelpW @398 NONAME PRIVATE
  837. #ifndef UNIX
  838. StrCpyNXA @399 NONAME PRIVATE
  839. StrCpyNXW @400 NONAME PRIVATE
  840. #endif
  841. COMDLG32_WRAP(PageSetupDlgW) @401 NONAME PRIVATE
  842. COMDLG32_WRAP(PrintDlgW) @402 NONAME PRIVATE
  843. COMDLG32_WRAP(GetOpenFileNameW) @403 NONAME PRIVATE
  844. IShellFolder_EnumObjects @404 NONAME PRIVATE
  845. MLBuildResURLA @405 NONAME PRIVATE
  846. MLBuildResURLW @406 NONAME PRIVATE
  847. AssocMakeProgid @407 NONAME PRIVATE
  848. AssocMakeShell @408 NONAME PRIVATE
  849. AssocMakeApplicationByKeyW @409 NONAME PRIVATE
  850. AssocMakeApplicationByKeyA @410 NONAME PRIVATE
  851. AssocMakeFileExtsToApplicationW @411 NONAME PRIVATE
  852. AssocMakeFileExtsToApplicationA @412 NONAME PRIVATE
  853. SHGetMachineInfo @413 NONAME PRIVATE
  854. SHHtmlHelpOnDemandW @414 NONAME PRIVATE
  855. SHHtmlHelpOnDemandA @415 NONAME PRIVATE
  856. SHWinHelpOnDemandW @416 NONAME PRIVATE
  857. SHWinHelpOnDemandA @417 NONAME PRIVATE
  858. MLFreeLibrary @418 NONAME PRIVATE
  859. SHELL32_WRAPX(SHFlushSFCache) @419 NONAME PRIVATE
  860. SHPersistDataObject @420 NONAME PRIVATE
  861. SHLoadPersistedDataObject @421 NONAME PRIVATE
  862. ; More Global counter stuff
  863. SHGlobalCounterCreateNamedA @422 NONAME PRIVATE
  864. SHGlobalCounterCreateNamedW @423 NONAME PRIVATE
  865. SHGlobalCounterDecrement @424 NONAME PRIVATE
  866. DeleteMenuWrap @425 NONAME PRIVATE // wanted on non-x86 for ML
  867. DestroyMenuWrap @426 NONAME PRIVATE // wanted on non-x86 for ML
  868. TrackPopupMenuWrap @427 NONAME PRIVATE // wanted on non-x86 for ML
  869. TrackPopupMenuExWrap @428 NONAME PRIVATE // wanted on non-x86 for ML
  870. MLIsMLHInstance @429 NONAME PRIVATE
  871. MLSetMLHInstance @430 NONAME PRIVATE
  872. MLClearMLHInstance @431 NONAME PRIVATE
  873. SHSendMessageBroadcastA @432 NONAME PRIVATE
  874. SHSendMessageBroadcastW @433 NONAME PRIVATE
  875. USER32_WRAP(SendMessageTimeoutW) @434 NONAME PRIVATE
  876. CLSIDFromProgIDWrap @435 NONAME PRIVATE
  877. CLSIDFromStringWrap @436 NONAME PRIVATE
  878. IsOS @437 NONAME PRIVATE
  879. SHLoadRegUIStringA @438 NONAME PRIVATE
  880. SHLoadRegUIStringW @439 NONAME PRIVATE
  881. SHGetWebFolderFilePathA @440 NONAME PRIVATE
  882. SHGetWebFolderFilePathW @441 NONAME PRIVATE
  883. KERNEL32_WRAP(GetEnvironmentVariableW) @442 NONAME PRIVATE
  884. SHGetSystemWindowsDirectoryA @443 NONAME PRIVATE
  885. SHGetSystemWindowsDirectoryW @444 NONAME PRIVATE
  886. ;; these are functions that used to live in shell32, but have been consolidated here
  887. PathFileExistsAndAttributesA @445 NONAME PRIVATE
  888. PathFileExistsAndAttributesW @446 NONAME PRIVATE
  889. FixSlashesAndColonA @447 NONAME PRIVATE
  890. FixSlashesAndColonW @448 NONAME PRIVATE
  891. NextPathA @449 NONAME PRIVATE
  892. NextPathW @450 NONAME PRIVATE
  893. ; export under the old shell32 name of CharXXX
  894. CharUpperNoDBCSA @451 NONAME PRIVATE
  895. CharUpperNoDBCSW @452 NONAME PRIVATE
  896. CharLowerNoDBCSA @453 NONAME PRIVATE
  897. CharLowerNoDBCSW @454 NONAME PRIVATE
  898. PathIsValidCharA @455 NONAME PRIVATE
  899. PathIsValidCharW @456 NONAME PRIVATE
  900. ; These wrappers are needed on all platforms (x86 and Alpha)
  901. GetLongPathNameWrapW @457 NONAME PRIVATE
  902. GetLongPathNameWrapA @458 NONAME PRIVATE
  903. SHExpandEnvironmentStringsA @459 NONAME PRIVATE
  904. SHExpandEnvironmentStringsW @460 NONAME PRIVATE
  905. ; Moved from shell32
  906. SHGetAppCompatFlags @461 NONAME PRIVATE
  907. UrlFixupW @462 NONAME PRIVATE
  908. ; Functions for impersonated users with hToken
  909. SHExpandEnvironmentStringsForUserA @463 NONAME PRIVATE
  910. SHExpandEnvironmentStringsForUserW @464 NONAME PRIVATE
  911. PathUnExpandEnvStringsForUserA @465 NONAME PRIVATE
  912. PathUnExpandEnvStringsForUserW @466 NONAME PRIVATE
  913. SHRunIndirectRegClientCommand @467 NONAME PRIVATE
  914. RunIndirectRegCommand @468 NONAME PRIVATE
  915. RunRegCommand @469 NONAME PRIVATE
  916. IUnknown_ProfferServiceOld @470 NONAME PRIVATE
  917. SHCreatePropertyBagOnRegKey @471 NONAME PRIVATE
  918. SHCreatePropertyBagOnProfileSection @472 NONAME PRIVATE
  919. SHGetIniStringUTF7W @473 NONAME PRIVATE
  920. SHSetIniStringUTF7W @474 NONAME PRIVATE
  921. ; ACL helper function
  922. GetShellSecurityDescriptor @475 NONAME PRIVATE
  923. SHGetObjectCompatFlags @476 NONAME PRIVATE
  924. SHCreatePropertyBagOnMemory @477 NONAME PRIVATE
  925. IUnknown_TranslateAcceleratorIO @478 NONAME PRIVATE
  926. IUnknown_UIActivateIO @479 NONAME PRIVATE
  927. UrlCrackW @480 NONAME PRIVATE
  928. IUnknown_HasFocusIO @481 NONAME PRIVATE
  929. ; Message box w/ help button
  930. SHMessageBoxHelpA @482 NONAME PRIVATE
  931. SHMessageBoxHelpW @483 NONAME PRIVATE
  932. ;IUnknown_QueryServiceExec
  933. IUnknown_QueryServiceExec @484 NONAME PRIVATE
  934. ; SHCreateStreamOnFileEx helpers
  935. MapWin32ErrorToSTG @485 NONAME PRIVATE
  936. ModeToCreateFileFlags @486 NONAME PRIVATE
  937. SHLoadIndirectString @487
  938. SHConvertGraphicsFile @488 NONAME PRIVATE
  939. KERNEL32_WRAP(GlobalAddAtomW) @489 NONAME PRIVATE
  940. KERNEL32_WRAP(GlobalFindAtomW) @490 NONAME PRIVATE
  941. SHGetShellKey @491 NONAME PRIVATE
  942. PrettifyFileDescriptionW @492 NONAME PRIVATE
  943. SHPropertyBag_ReadType @493 NONAME PRIVATE
  944. SHPropertyBag_ReadStr @494 NONAME PRIVATE
  945. SHPropertyBag_WriteStr @495 NONAME PRIVATE
  946. SHPropertyBag_ReadInt @496 NONAME PRIVATE
  947. SHPropertyBag_WriteInt @497 NONAME PRIVATE
  948. SHPropertyBag_ReadBOOLOld @498 NONAME PRIVATE
  949. SHPropertyBag_WriteBOOL @499 NONAME PRIVATE
  950. #if defined(_AMD64_) || defined(_IA64_)
  951. ;=========================================================================
  952. ;; these are internal APIs for RISC machines
  953. ;; to when manipulating PIDLS (struct _IDFILELOCATION)
  954. ;;=========================================================================
  955. ualstrcpynW @500 NONAME PRIVATE
  956. ualstrcmpiW @501 NONAME PRIVATE
  957. ualstrcmpW @502 NONAME PRIVATE
  958. ualstrlenW @503 NONAME PRIVATE
  959. ualstrcpyW @504 NONAME PRIVATE
  960. #endif // defined(_AMD64_) || defined(_IA64_)
  961. ;;=========================================================================
  962. ;; back to normal.
  963. ;;=========================================================================
  964. SHPropertyBag_ReadGUID @505 NONAME PRIVATE
  965. SHPropertyBag_WriteGUID @506 NONAME PRIVATE
  966. SHPropertyBag_ReadDWORD @507 NONAME PRIVATE
  967. SHPropertyBag_WriteDWORD @508 NONAME PRIVATE
  968. IUnknown_OnFocusChangeIS @509 NONAME PRIVATE
  969. SHLockSharedEx @510 NONAME PRIVATE
  970. PathFileExistsDefExtAndAttributesW @511 NONAME PRIVATE
  971. IStream_ReadPidl @512 NONAME PRIVATE
  972. IStream_WritePidl @513 NONAME PRIVATE
  973. IUnknown_ProfferService @514 NONAME PRIVATE
  974. SHGetViewStatePropertyBag @515
  975. SKGetValueW @516 NONAME PRIVATE
  976. SKSetValueW @517 NONAME PRIVATE
  977. SKDeleteValueW @518 NONAME PRIVATE
  978. SKAllocValueW @519 NONAME PRIVATE
  979. SHPropertyBag_ReadBSTR @520 NONAME PRIVATE
  980. SHPropertyBag_ReadPOINTL @521 NONAME PRIVATE
  981. SHPropertyBag_WritePOINTL @522 NONAME PRIVATE
  982. SHPropertyBag_ReadRECTL @523 NONAME PRIVATE
  983. SHPropertyBag_WriteRECTL @524 NONAME PRIVATE
  984. SHPropertyBag_ReadPOINTS @525 NONAME PRIVATE
  985. SHPropertyBag_WritePOINTS @526 NONAME PRIVATE
  986. SHPropertyBag_ReadSHORT @527 NONAME PRIVATE
  987. SHPropertyBag_WriteSHORT @528 NONAME PRIVATE
  988. SHPropertyBag_ReadLONG @529 NONAME PRIVATE
  989. SHPropertyBag_WriteLONG @530 NONAME PRIVATE
  990. SHPropertyBag_ReadStream @531 NONAME PRIVATE
  991. SHPropertyBag_WriteStream @532 NONAME PRIVATE
  992. SHGetPerScreenResName @533 NONAME PRIVATE
  993. SHPropertyBag_ReadBOOL @534 NONAME PRIVATE
  994. SHPropertyBag_Delete @535 NONAME PRIVATE
  995. IUnknown_QueryServicePropertyBag @536 NONAME PRIVATE
  996. SHBoolSystemParametersInfo @537 NONAME PRIVATE
  997. IUnknown_QueryServiceForWebBrowserApp @538 NONAME PRIVATE
  998. IUnknown_ShowBrowserBar @539 NONAME PRIVATE
  999. SHInvokeCommandOnContextMenu @540 NONAME PRIVATE
  1000. SHInvokeCommandsOnContextMenu @541 NONAME PRIVATE
  1001. GetUIVersion @542 NONAME PRIVATE
  1002. GDI32_WRAP(CreateColorSpaceW) @543 NONAME PRIVATE
  1003. QuerySourceCreateFromKey @544 NONAME PRIVATE
  1004. SHForwardContextMenuMsg @545 NONAME PRIVATE
  1005. IUnknown_DoContextMenuPopup @546 NONAME PRIVATE
  1006. DelayLoadFailureHook=Downlevel_DelayLoadFailureHook @547 ULTRAPRIVATE // should not be in any lib, shdocvw & browseui call GetProcAddress by name on this
  1007. SHAreIconsEqual @548 NONAME PRIVATE
  1008. SHCoCreateInstanceAC @549 NONAME PRIVATE
  1009. GetTemplateInfoFromHandle @550 NONAME PRIVATE
  1010. IShellFolder_CompareIDs @551 NONAME PRIVATE