Leaked source code of windows server 2003
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.

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