Mercurial > projects > ddbg_continued
view win32/shlwapi.d @ 1:4a9dcbd9e54f
-files of 0.13 beta
-fixes so that it now compiles with the current dmd version
author | marton@basel.hu |
---|---|
date | Tue, 05 Apr 2011 20:44:01 +0200 |
parents | |
children |
line wrap: on
line source
/***********************************************************************\ * shlwapi.d * * * * Windows API header module * * * * Translated from MinGW Windows headers * * * * Placed into public domain * \***********************************************************************/ module win32.shlwapi; pragma(lib, "shlwapi.lib"); /* Changes compared to MinGW: wnsprintf functions are not included. // Macros unneeded for D #define StrCmpIA lstrcmpiA; #define StrCmpA lstrcmpA; #define StrCpyA lstrcpyA; #define StrCpyNA lstrcpynA; #define MAKEDLLVERULL(major, minor, build, qfe) \ (((ULONGLONG)(major) << 48) | \ ((ULONGLONG)(minor) << 32) | \ ((ULONGLONG)(build) << 16) | \ ((ULONGLONG)( qfe) << 0)) */ import win32.objbase, win32.shlobj; private import win32.basetyps, win32.objidl, win32.unknwn, win32.windef, win32.winbase, win32.winreg; const DLLVER_PLATFORM_WINDOWS = 0x00000001; const DLLVER_PLATFORM_NT = 0x00000002; const URL_DONT_ESCAPE_EXTRA_INFO = 0x02000000; const URL_DONT_SIMPLIFY = 0x08000000; const URL_ESCAPE_PERCENT = 0x00001000; const URL_ESCAPE_SEGMENT_ONLY = 0x00002000; const URL_ESCAPE_SPACES_ONLY = 0x04000000; const URL_ESCAPE_UNSAFE = 0x20000000; const URL_INTERNAL_PATH = 0x00800000; const URL_PARTFLAG_KEEPSCHEME = 0x00000001; const URL_PLUGGABLE_PROTOCOL = 0x40000000; const URL_UNESCAPE = 0x10000000; const URL_UNESCAPE_HIGH_ANSI_ONLY = 0x00400000; const URL_UNESCAPE_INPLACE = 0x00100000; align(1): struct DLLVERSIONINFO { DWORD cbSize = this.sizeof; DWORD dwMajorVersion; DWORD dwMinorVersion; DWORD dwBuildNumber; DWORD dwPlatformID; } struct DLLVERSIONINFO2 { DLLVERSIONINFO info1; DWORD dwFlags; ULONGLONG ullVersion; } enum ASSOCSTR { ASSOCSTR_COMMAND, ASSOCSTR_EXECUTABLE, ASSOCSTR_FRIENDLYDOCNAME, ASSOCSTR_FRIENDLYAPPNAME, ASSOCSTR_NOOPEN, ASSOCSTR_SHELLNEWVALUE, ASSOCSTR_DDECOMMAND, ASSOCSTR_DDEIFEXEC, ASSOCSTR_DDEAPPLICATION, ASSOCSTR_DDETOPIC } enum ASSOCKEY { ASSOCKEY_SHELLEXECCLASS = 1, ASSOCKEY_APP, ASSOCKEY_CLASS, ASSOCKEY_BASECLASS } enum ASSOCDATA { ASSOCDATA_MSIDESCRIPTOR = 1, ASSOCDATA_NOACTIVATEHANDLER, ASSOCDATA_QUERYCLASSSTORE } alias DWORD ASSOCF; enum SHREGDEL_FLAGS { SHREGDEL_DEFAULT = 0x00000000, SHREGDEL_HKCU = 0x00000001, SHREGDEL_HKLM = 0x00000010, SHREGDEL_BOTH = 0x00000011 } enum SHREGENUM_FLAGS { SHREGENUM_DEFAULT = 0x00000000, SHREGENUM_HKCU = 0x00000001, SHREGENUM_HKLM = 0x00000010, SHREGENUM_BOTH = 0x00000011 } enum URLIS { URLIS_URL, URLIS_OPAQUE, URLIS_NOHISTORY, URLIS_FILEURL, URLIS_APPLIABLE, URLIS_DIRECTORY, URLIS_HASQUERY } alias HANDLE HUSKEY; alias HUSKEY* PHUSKEY; extern (Windows) { alias HRESULT function (DLLVERSIONINFO *) DLLGETVERSIONPROC; } BOOL IntlStrEqNA(LPCSTR pStr1, LPCSTR pStr2, int nChar) { return IntlStrEqWorkerA(TRUE, pStr1, pStr2, nChar); } BOOL IntlStrEqNW(LPCWSTR pStr1, LPCWSTR pStr2, int nChar) { return IntlStrEqWorkerW(TRUE, pStr1, pStr2, nChar); } BOOL IntlStrEqNIA(LPCSTR pStr1, LPCSTR pStr2, int nChar) { return IntlStrEqWorkerA(FALSE, pStr1, pStr2, nChar); } BOOL IntlStrEqNIW(LPCWSTR pStr1, LPCWSTR pStr2, int nChar) { return IntlStrEqWorkerW(FALSE, pStr1, pStr2, nChar); } BOOL UrlIsFileUrlA(LPCSTR pszURL) { return UrlIsA(pszURL, URLIS.URLIS_FILEURL); } BOOL UrlIsFileUrlW(LPCWSTR pszURL) { return UrlIsW(pszURL, URLIS.URLIS_FILEURL); } HRESULT UrlUnescapeInPlaceA(LPSTR pszUrl,DWORD dwFlags) { return UrlUnescapeA(pszUrl, null, null, dwFlags | URL_UNESCAPE_INPLACE); } HRESULT UrlUnescapeInPlaceW(LPWSTR pszUrl,DWORD dwFlags) { return UrlUnescapeW(pszUrl, null, null, dwFlags | URL_UNESCAPE_INPLACE); } extern (Windows): BOOL ChrCmpIA(WORD,WORD); BOOL ChrCmpIW(WCHAR,WCHAR); BOOL IntlStrEqWorkerA(BOOL,LPCSTR,LPCSTR,int); BOOL IntlStrEqWorkerW(BOOL,LPCWSTR,LPCWSTR,int); HRESULT SHStrDupA(LPCSTR,LPWSTR*); HRESULT SHStrDupW(LPCWSTR,LPWSTR*); LPSTR StrCatA(LPSTR,LPCSTR); LPWSTR StrCatW(LPWSTR,LPCWSTR); LPSTR StrCatBuffA(LPSTR,LPCSTR,int); LPWSTR StrCatBuffW(LPWSTR,LPCWSTR,int); DWORD StrCatChainW(LPWSTR,DWORD,DWORD,LPCWSTR); LPSTR StrChrA(LPCSTR,WORD); LPWSTR StrChrW(LPCWSTR,WCHAR); LPSTR StrChrIA(LPCSTR,WORD); LPWSTR StrChrIW(LPCWSTR,WCHAR); int StrCmpIW(LPCWSTR,LPCWSTR); int StrCmpW(LPCWSTR,LPCWSTR); LPWSTR StrCpyW(LPWSTR,LPCWSTR); LPWSTR StrCpyNW(LPWSTR,LPCWSTR,int); int StrCmpNA(LPCSTR,LPCSTR,int); int StrCmpNW(LPCWSTR,LPCWSTR,int); int StrCmpNIA(LPCSTR,LPCSTR,int); int StrCmpNIW(LPCWSTR,LPCWSTR,int); int StrCSpnA(LPCSTR,LPCSTR); int StrCSpnW(LPCWSTR,LPCWSTR); int StrCSpnIA(LPCSTR,LPCSTR); int StrCSpnIW(LPCWSTR,LPCWSTR); LPSTR StrDupA(LPCSTR); LPWSTR StrDupW(LPCWSTR); LPSTR StrFormatByteSize64A(LONGLONG,LPSTR,UINT); LPSTR StrFormatByteSizeA(DWORD,LPSTR,UINT); LPWSTR StrFormatByteSizeW(LONGLONG,LPWSTR,UINT); LPSTR StrFormatKBSizeA(LONGLONG,LPSTR,UINT); LPWSTR StrFormatKBSizeW(LONGLONG,LPWSTR,UINT); int StrFromTimeIntervalA(LPSTR,UINT,DWORD,int); int StrFromTimeIntervalW(LPWSTR,UINT,DWORD,int); BOOL StrIsIntlEqualA(BOOL,LPCSTR,LPCSTR,int); BOOL StrIsIntlEqualW(BOOL,LPCWSTR,LPCWSTR,int); LPSTR StrNCatA(LPSTR,LPCSTR,int); LPWSTR StrNCatW(LPWSTR,LPCWSTR,int); LPSTR StrPBrkA(LPCSTR,LPCSTR); LPWSTR StrPBrkW(LPCWSTR,LPCWSTR); LPSTR StrRChrA(LPCSTR,LPCSTR,WORD); LPWSTR StrRChrW(LPCWSTR,LPCWSTR,WCHAR); LPSTR StrRChrIA(LPCSTR,LPCSTR,WORD); LPWSTR StrRChrIW(LPCWSTR,LPCWSTR,WCHAR); LPSTR StrRStrIA(LPCSTR,LPCSTR,LPCSTR); LPWSTR StrRStrIW(LPCWSTR,LPCWSTR,LPCWSTR); int StrSpnA(LPCSTR,LPCSTR); int StrSpnW(LPCWSTR,LPCWSTR); LPSTR StrStrA(LPCSTR, LPCSTR); LPSTR StrStrIA(LPCSTR,LPCSTR); LPWSTR StrStrIW(LPCWSTR,LPCWSTR); LPWSTR StrStrW(LPCWSTR,LPCWSTR); int StrToIntA(LPCSTR); int StrToIntW(LPCWSTR); BOOL StrToIntExA(LPCSTR,DWORD,int*); BOOL StrToIntExW(LPCWSTR,DWORD,int*); BOOL StrTrimA(LPSTR,LPCSTR); BOOL StrTrimW(LPWSTR,LPCWSTR); LPSTR PathAddBackslashA(LPSTR); LPWSTR PathAddBackslashW(LPWSTR); BOOL PathAddExtensionA(LPSTR,LPCSTR); BOOL PathAddExtensionW(LPWSTR,LPCWSTR); BOOL PathAppendA(LPSTR,LPCSTR); BOOL PathAppendW(LPWSTR,LPCWSTR); LPSTR PathBuildRootA(LPSTR,int); LPWSTR PathBuildRootW(LPWSTR,int); BOOL PathCanonicalizeA(LPSTR,LPCSTR); BOOL PathCanonicalizeW(LPWSTR,LPCWSTR); LPSTR PathCombineA(LPSTR,LPCSTR,LPCSTR); LPWSTR PathCombineW(LPWSTR,LPCWSTR,LPCWSTR); int PathCommonPrefixA(LPCSTR,LPCSTR,LPSTR); int PathCommonPrefixW(LPCWSTR,LPCWSTR,LPWSTR); BOOL PathCompactPathA(HDC,LPSTR,UINT); BOOL PathCompactPathW(HDC,LPWSTR,UINT); BOOL PathCompactPathExA(LPSTR,LPCSTR,UINT,DWORD); BOOL PathCompactPathExW(LPWSTR,LPCWSTR,UINT,DWORD); HRESULT PathCreateFromUrlA(LPCSTR,LPSTR,LPDWORD,DWORD); HRESULT PathCreateFromUrlW(LPCWSTR,LPWSTR,LPDWORD,DWORD); BOOL PathFileExistsA(LPCSTR); BOOL PathFileExistsW(LPCWSTR); LPSTR PathFindExtensionA(LPCSTR); LPWSTR PathFindExtensionW(LPCWSTR); LPSTR PathFindFileNameA(LPCSTR); LPWSTR PathFindFileNameW(LPCWSTR); LPSTR PathFindNextComponentA(LPCSTR); LPWSTR PathFindNextComponentW(LPCWSTR); BOOL PathFindOnPathA(LPSTR,LPCSTR*); BOOL PathFindOnPathW(LPWSTR,LPCWSTR*); LPCSTR PathFindSuffixArrayA(LPCSTR,LPCSTR*,int); LPCWSTR PathFindSuffixArrayW(LPCWSTR,LPCWSTR*,int); LPSTR PathGetArgsA(LPCSTR); LPWSTR PathGetArgsW(LPCWSTR); UINT PathGetCharTypeA(UCHAR); UINT PathGetCharTypeW(WCHAR); int PathGetDriveNumberA(LPCSTR); int PathGetDriveNumberW(LPCWSTR); BOOL PathIsContentTypeA(LPCSTR,LPCSTR); BOOL PathIsContentTypeW(LPCWSTR,LPCWSTR); BOOL PathIsDirectoryA(LPCSTR); BOOL PathIsDirectoryEmptyA(LPCSTR); BOOL PathIsDirectoryEmptyW(LPCWSTR); BOOL PathIsDirectoryW(LPCWSTR); BOOL PathIsFileSpecA(LPCSTR); BOOL PathIsFileSpecW(LPCWSTR); BOOL PathIsLFNFileSpecA(LPCSTR); BOOL PathIsLFNFileSpecW(LPCWSTR); BOOL PathIsNetworkPathA(LPCSTR); BOOL PathIsNetworkPathW(LPCWSTR); BOOL PathIsPrefixA(LPCSTR,LPCSTR); BOOL PathIsPrefixW(LPCWSTR,LPCWSTR); BOOL PathIsRelativeA(LPCSTR); BOOL PathIsRelativeW(LPCWSTR); BOOL PathIsRootA(LPCSTR); BOOL PathIsRootW(LPCWSTR); BOOL PathIsSameRootA(LPCSTR,LPCSTR); BOOL PathIsSameRootW(LPCWSTR,LPCWSTR); BOOL PathIsSystemFolderA(LPCSTR,DWORD); BOOL PathIsSystemFolderW(LPCWSTR,DWORD); BOOL PathIsUNCA(LPCSTR); BOOL PathIsUNCServerA(LPCSTR); BOOL PathIsUNCServerShareA(LPCSTR); BOOL PathIsUNCServerShareW(LPCWSTR); BOOL PathIsUNCServerW(LPCWSTR); BOOL PathIsUNCW(LPCWSTR); BOOL PathIsURLA(LPCSTR); BOOL PathIsURLW(LPCWSTR); BOOL PathMakePrettyA(LPSTR); BOOL PathMakePrettyW(LPWSTR); BOOL PathMakeSystemFolderA(LPSTR); BOOL PathMakeSystemFolderW(LPWSTR); BOOL PathMatchSpecA(LPCSTR,LPCSTR); BOOL PathMatchSpecW(LPCWSTR,LPCWSTR); int PathParseIconLocationA(LPSTR); int PathParseIconLocationW(LPWSTR); void PathQuoteSpacesA(LPSTR); void PathQuoteSpacesW(LPWSTR); BOOL PathRelativePathToA(LPSTR,LPCSTR,DWORD,LPCSTR,DWORD); BOOL PathRelativePathToW(LPWSTR,LPCWSTR,DWORD,LPCWSTR,DWORD); void PathRemoveArgsA(LPSTR); void PathRemoveArgsW(LPWSTR); LPSTR PathRemoveBackslashA(LPSTR); LPWSTR PathRemoveBackslashW(LPWSTR); void PathRemoveBlanksA(LPSTR); void PathRemoveBlanksW(LPWSTR); void PathRemoveExtensionA(LPSTR); void PathRemoveExtensionW(LPWSTR); BOOL PathRemoveFileSpecA(LPSTR); BOOL PathRemoveFileSpecW(LPWSTR); BOOL PathRenameExtensionA(LPSTR,LPCSTR); BOOL PathRenameExtensionW(LPWSTR,LPCWSTR); BOOL PathSearchAndQualifyA(LPCSTR,LPSTR,UINT); BOOL PathSearchAndQualifyW(LPCWSTR,LPWSTR,UINT); void PathSetDlgItemPathA(HWND,int,LPCSTR); void PathSetDlgItemPathW(HWND,int,LPCWSTR); LPSTR PathSkipRootA(LPCSTR); LPWSTR PathSkipRootW(LPCWSTR); void PathStripPathA(LPSTR); void PathStripPathW(LPWSTR); BOOL PathStripToRootA(LPSTR); BOOL PathStripToRootW(LPWSTR); void PathUndecorateA(LPSTR); void PathUndecorateW(LPWSTR); BOOL PathUnExpandEnvStringsA(LPCSTR,LPSTR,UINT); BOOL PathUnExpandEnvStringsW(LPCWSTR,LPWSTR,UINT); BOOL PathUnmakeSystemFolderA(LPSTR); BOOL PathUnmakeSystemFolderW(LPWSTR); void PathUnquoteSpacesA(LPSTR); void PathUnquoteSpacesW(LPWSTR); HRESULT SHAutoComplete(HWND,DWORD); BOOL SHCreateThread(LPTHREAD_START_ROUTINE,void*,DWORD,LPTHREAD_START_ROUTINE); DWORD SHCopyKeyA(HKEY,LPCSTR,HKEY,DWORD); DWORD SHCopyKeyW(HKEY,LPCWSTR,HKEY,DWORD); DWORD SHDeleteEmptyKeyA(HKEY,LPCSTR); DWORD SHDeleteEmptyKeyW(HKEY,LPCWSTR); DWORD SHDeleteKeyA(HKEY,LPCSTR); DWORD SHDeleteKeyW(HKEY,LPCWSTR); DWORD SHEnumKeyExA(HKEY,DWORD,LPSTR,LPDWORD); DWORD SHEnumKeyExW(HKEY,DWORD,LPWSTR,LPDWORD); DWORD SHQueryInfoKeyA(HKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD); DWORD SHQueryInfoKeyW(HKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD); DWORD SHQueryValueExA(HKEY,LPCSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD); DWORD SHQueryValueExW(HKEY,LPCWSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD); HRESULT SHGetThreadRef(IUnknown**); HRESULT SHSetThreadRef(IUnknown*); BOOL SHSkipJunction(IBindCtx*, CLSID*); DWORD SHEnumValueA(HKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD); DWORD SHEnumValueW(HKEY,DWORD,LPWSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD); DWORD SHGetValueA(HKEY,LPCSTR,LPCSTR,LPDWORD,LPVOID,LPDWORD); DWORD SHGetValueW(HKEY,LPCWSTR,LPCWSTR,LPDWORD,LPVOID,LPDWORD); DWORD SHSetValueA(HKEY,LPCSTR,LPCSTR,DWORD,LPCVOID,DWORD); DWORD SHSetValueW(HKEY,LPCWSTR,LPCWSTR,DWORD,LPCVOID,DWORD); DWORD SHDeleteValueA(HKEY,LPCSTR,LPCSTR); DWORD SHDeleteValueW(HKEY,LPCWSTR,LPCWSTR); HRESULT AssocCreate(CLSID, IID* ,LPVOID*); HRESULT AssocQueryKeyA(ASSOCF,ASSOCKEY,LPCSTR,LPCSTR,HKEY*); HRESULT AssocQueryKeyW(ASSOCF,ASSOCKEY,LPCWSTR,LPCWSTR,HKEY*); HRESULT AssocQueryStringA(ASSOCF,ASSOCSTR,LPCSTR,LPCSTR,LPSTR,DWORD*); HRESULT AssocQueryStringByKeyA(ASSOCF,ASSOCSTR,HKEY,LPCSTR,LPSTR,DWORD*); HRESULT AssocQueryStringByKeyW(ASSOCF,ASSOCSTR,HKEY,LPCWSTR,LPWSTR,DWORD*); HRESULT AssocQueryStringW(ASSOCF,ASSOCSTR,LPCWSTR,LPCWSTR,LPWSTR,DWORD*); HRESULT UrlApplySchemeA(LPCSTR,LPSTR,LPDWORD,DWORD); HRESULT UrlApplySchemeW(LPCWSTR,LPWSTR,LPDWORD,DWORD); HRESULT UrlCanonicalizeA(LPCSTR,LPSTR,LPDWORD,DWORD); HRESULT UrlCanonicalizeW(LPCWSTR,LPWSTR,LPDWORD,DWORD); HRESULT UrlCombineA(LPCSTR,LPCSTR,LPSTR,LPDWORD,DWORD); HRESULT UrlCombineW(LPCWSTR,LPCWSTR,LPWSTR,LPDWORD,DWORD); int UrlCompareA(LPCSTR,LPCSTR,BOOL); int UrlCompareW(LPCWSTR,LPCWSTR,BOOL); HRESULT UrlCreateFromPathA(LPCSTR,LPSTR,LPDWORD,DWORD); HRESULT UrlCreateFromPathW(LPCWSTR,LPWSTR,LPDWORD,DWORD); HRESULT UrlEscapeA(LPCSTR,LPSTR,LPDWORD,DWORD); HRESULT UrlEscapeW(LPCWSTR,LPWSTR,LPDWORD,DWORD); LPCSTR UrlGetLocationA(LPCSTR); LPCWSTR UrlGetLocationW(LPCWSTR); HRESULT UrlGetPartA(LPCSTR,LPSTR,LPDWORD,DWORD,DWORD); HRESULT UrlGetPartW(LPCWSTR,LPWSTR,LPDWORD,DWORD,DWORD); HRESULT UrlHashA(LPCSTR,LPBYTE,DWORD); HRESULT UrlHashW(LPCWSTR,LPBYTE,DWORD); BOOL UrlIsA(LPCSTR,URLIS); BOOL UrlIsW(LPCWSTR,URLIS); BOOL UrlIsNoHistoryA(LPCSTR); BOOL UrlIsNoHistoryW(LPCWSTR); BOOL UrlIsOpaqueA(LPCSTR); BOOL UrlIsOpaqueW(LPCWSTR); HRESULT UrlUnescapeA(LPSTR,LPSTR,LPDWORD,DWORD); HRESULT UrlUnescapeW(LPWSTR,LPWSTR,LPDWORD,DWORD); DWORD SHRegCloseUSKey(HUSKEY); LONG SHRegCreateUSKeyA(LPCSTR,REGSAM,HUSKEY,PHUSKEY,DWORD); LONG SHRegCreateUSKeyW(LPCWSTR,REGSAM,HUSKEY,PHUSKEY,DWORD); LONG SHRegDeleteEmptyUSKeyA(HUSKEY,LPCSTR,SHREGDEL_FLAGS); LONG SHRegDeleteEmptyUSKeyW(HUSKEY,LPCWSTR,SHREGDEL_FLAGS); LONG SHRegDeleteUSValueA(HUSKEY,LPCSTR,SHREGDEL_FLAGS); LONG SHRegDeleteUSValueW(HUSKEY,LPCWSTR,SHREGDEL_FLAGS); HKEY SHRegDuplicateHKey(HKEY); DWORD SHRegEnumUSKeyA(HUSKEY,DWORD,LPSTR,LPDWORD,SHREGENUM_FLAGS); DWORD SHRegEnumUSKeyW(HUSKEY,DWORD,LPWSTR,LPDWORD,SHREGENUM_FLAGS); DWORD SHRegEnumUSValueA(HUSKEY,DWORD,LPSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD,SHREGENUM_FLAGS); DWORD SHRegEnumUSValueW(HUSKEY,DWORD,LPWSTR,LPDWORD,LPDWORD,LPVOID,LPDWORD,SHREGENUM_FLAGS); BOOL SHRegGetBoolUSValueA(LPCSTR,LPCSTR,BOOL,BOOL); BOOL SHRegGetBoolUSValueW(LPCWSTR,LPCWSTR,BOOL,BOOL); DWORD SHRegGetPathA(HKEY,LPCSTR,LPCSTR,LPSTR,DWORD); DWORD SHRegGetPathW(HKEY,LPCWSTR,LPCWSTR,LPWSTR,DWORD); LONG SHRegGetUSValueA(LPCSTR,LPCSTR,LPDWORD,LPVOID,LPDWORD,BOOL,LPVOID,DWORD); LONG SHRegGetUSValueW(LPCWSTR,LPCWSTR,LPDWORD,LPVOID,LPDWORD,BOOL,LPVOID,DWORD); LONG SHRegOpenUSKeyA(LPCSTR,REGSAM,HUSKEY,PHUSKEY,BOOL); LONG SHRegOpenUSKeyW(LPCWSTR,REGSAM,HUSKEY,PHUSKEY,BOOL); DWORD SHRegQueryInfoUSKeyA(HUSKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD,SHREGENUM_FLAGS); DWORD SHRegQueryInfoUSKeyW(HUSKEY,LPDWORD,LPDWORD,LPDWORD,LPDWORD,SHREGENUM_FLAGS); LONG SHRegQueryUSValueA(HUSKEY,LPCSTR,LPDWORD,LPVOID,LPDWORD,BOOL,LPVOID,DWORD); LONG SHRegQueryUSValueW(HUSKEY,LPCWSTR,LPDWORD,LPVOID,LPDWORD,BOOL,LPVOID,DWORD); DWORD SHRegSetPathA(HKEY,LPCSTR,LPCSTR,LPCSTR,DWORD); DWORD SHRegSetPathW(HKEY,LPCWSTR,LPCWSTR,LPCWSTR,DWORD); LONG SHRegSetUSValueA(LPCSTR,LPCSTR,DWORD,LPVOID,DWORD,DWORD); LONG SHRegSetUSValueW(LPCWSTR,LPCWSTR,DWORD,LPVOID,DWORD,DWORD); LONG SHRegWriteUSValueA(HUSKEY,LPCSTR,DWORD,LPVOID,DWORD,DWORD); LONG SHRegWriteUSValueW(HUSKEY,LPCWSTR,DWORD,LPVOID,DWORD,DWORD); HRESULT HashData(LPBYTE,DWORD,LPBYTE,DWORD); HPALETTE SHCreateShellPalette(HDC); COLORREF ColorHLSToRGB(WORD,WORD,WORD); COLORREF ColorAdjustLuma(COLORREF,int,BOOL); void ColorRGBToHLS(COLORREF,WORD*,WORD*,WORD*); /** Should not be necessary for D? extern (C): int wnsprintfA(LPSTR,int,LPCSTR,...); int wnsprintfW(LPWSTR,int,LPCWSTR,...); extern (Windows): int wvnsprintfA(LPSTR,int,LPCSTR,va_list); int wvnsprintfW(LPWSTR,int,LPCWSTR,va_list); */ HINSTANCE MLLoadLibraryA(LPCSTR,HANDLE,DWORD,LPCSTR,BOOL); HINSTANCE MLLoadLibraryW(LPCWSTR,HANDLE,DWORD,LPCWSTR,BOOL); HRESULT DllInstall(BOOL,LPCWSTR); HRESULT StrRetToBufA(LPSTRRET,LPCITEMIDLIST,LPSTR,UINT); HRESULT StrRetToBufW(LPSTRRET,LPCITEMIDLIST,LPWSTR,UINT); HRESULT StrRetToStrA(LPSTRRET,LPCITEMIDLIST,LPSTR*); HRESULT StrRetToStrW(LPSTRRET,LPCITEMIDLIST,LPWSTR*); HRESULT SHCreateStreamOnFileA(LPCSTR,DWORD,IStream**); HRESULT SHCreateStreamOnFileW(LPCWSTR,DWORD,IStream**); IStream* SHOpenRegStream2A(HKEY,LPCSTR,LPCSTR,DWORD); IStream* SHOpenRegStream2W(HKEY,LPCWSTR,LPCWSTR,DWORD); IStream* SHOpenRegStreamA(HKEY,LPCSTR,LPCSTR,DWORD); IStream* SHOpenRegStreamW(HKEY,LPCWSTR,LPCWSTR,DWORD); version(Unicode) { alias ChrCmpIW ChrCmpI; alias IntlStrEqNW IntlStrEqN; alias IntlStrEqNIW IntlStrEqNI; alias IntlStrEqWorkerW IntlStrEqWorker; alias SHStrDupW SHStrDup; alias StrCatW StrCat; alias StrCatBuffW StrCatBuff; alias StrChrW StrChr; alias StrChrIW StrChrI; alias StrCmpW StrCmp; alias StrCmpIW StrCmpI; alias StrCmpNIW StrCmpNI; alias StrCmpNW StrCmpN; alias StrCpyNW StrCpyN; alias StrCpyW StrCpy; alias StrCSpnIW StrCSpnI; alias StrCSpnW StrCSpn; alias StrDupW StrDup; alias StrFormatByteSizeW StrFormatByteSize; alias StrFormatKBSizeW StrFormatKBSize; alias StrFromTimeIntervalW StrFromTimeInterval; alias StrIsIntlEqualW StrIsIntlEqual; alias StrNCatW StrNCat; alias StrPBrkW StrPBrk; alias StrRChrW StrRChr; alias StrRChrIW StrRChrI; alias StrRetToBufW StrRetToBuf; alias StrRetToStrW StrRetToStr; alias StrRStrIW StrRStrI; alias StrSpnW StrSpn; alias StrStrIW StrStrI; alias StrStrW StrStr; alias StrToIntW StrToInt; alias StrToIntExW StrToIntEx; alias StrTrimW StrTrim; alias PathAddBackslashW PathAddBackslash; alias PathAddExtensionW PathAddExtension; alias PathAppendW PathAppend; alias PathBuildRootW PathBuildRoot; alias PathCanonicalizeW PathCanonicalize; alias PathCombineW PathCombine; alias PathCommonPrefixW PathCommonPrefix; alias PathCompactPathW PathCompactPath; alias PathCompactPathExW PathCompactPathEx; alias PathCreateFromUrlW PathCreateFromUrl; alias PathFileExistsW PathFileExists; alias PathFindExtensionW PathFindExtension; alias PathFindFileNameW PathFindFileName; alias PathFindNextComponentW PathFindNextComponent; alias PathFindOnPathW PathFindOnPath; alias PathFindSuffixArrayW PathFindSuffixArray; alias PathGetArgsW PathGetArgs; alias PathGetCharTypeW PathGetCharType; alias PathGetDriveNumberW PathGetDriveNumber; alias PathIsContentTypeW PathIsContentType; alias PathIsDirectoryEmptyW PathIsDirectoryEmpty; alias PathIsDirectoryW PathIsDirectory; alias PathIsFileSpecW PathIsFileSpec; alias PathIsLFNFileSpecW PathIsLFNFileSpec; alias PathIsNetworkPathW PathIsNetworkPath; alias PathIsPrefixW PathIsPrefix; alias PathIsRelativeW PathIsRelative; alias PathIsRootW PathIsRoot; alias PathIsSameRootW PathIsSameRoot; alias PathIsSystemFolderW PathIsSystemFolder; alias PathIsUNCServerShareW PathIsUNCServerShare; alias PathIsUNCServerW PathIsUNCServer; alias PathIsUNCW PathIsUNC; alias PathIsURLW PathIsURL; alias PathMakePrettyW PathMakePretty; alias PathMakeSystemFolderW PathMakeSystemFolder; alias PathMatchSpecW PathMatchSpec; alias PathParseIconLocationW PathParseIconLocation; alias PathQuoteSpacesW PathQuoteSpaces; alias PathRelativePathToW PathRelativePathTo; alias PathRemoveArgsW PathRemoveArgs; alias PathRemoveBackslashW PathRemoveBackslash; alias PathRemoveBlanksW PathRemoveBlanks; alias PathRemoveExtensionW PathRemoveExtension; alias PathRemoveFileSpecW PathRemoveFileSpec; alias PathRenameExtensionW PathRenameExtension; alias PathSearchAndQualifyW PathSearchAndQualify; alias PathSetDlgItemPathW PathSetDlgItemPath; alias PathSkipRootW PathSkipRoot; alias PathStripPathW PathStripPath; alias PathStripToRootW PathStripToRoot; alias PathUndecorateW PathUndecorate; alias PathUnExpandEnvStringsW PathUnExpandEnvStrings; alias PathUnmakeSystemFolderW PathUnmakeSystemFolder; alias PathUnquoteSpacesW PathUnquoteSpaces; alias SHCreateStreamOnFileW SHCreateStreamOnFile; alias SHOpenRegStreamW SHOpenRegStream; alias SHOpenRegStream2W SHOpenRegStream2; alias SHCopyKeyW SHCopyKey; alias SHDeleteEmptyKeyW SHDeleteEmptyKey; alias SHDeleteKeyW SHDeleteKey; alias SHEnumKeyExW SHEnumKeyEx; alias SHQueryInfoKeyW SHQueryInfoKey; alias SHQueryValueExW SHQueryValueEx; alias SHEnumValueW SHEnumValue; alias SHGetValueW SHGetValue; alias SHSetValueW SHSetValue; alias SHDeleteValueW SHDeleteValue; alias AssocQueryKeyW AssocQueryKey; alias AssocQueryStringByKeyW AssocQueryStringByKey; alias AssocQueryStringW AssocQueryString; alias UrlApplySchemeW UrlApplyScheme; alias UrlCanonicalizeW UrlCanonicalize; alias UrlCombineW UrlCombine; alias UrlCompareW UrlCompare; alias UrlCreateFromPathW UrlCreateFromPath; alias UrlEscapeW UrlEscape; alias UrlGetLocationW UrlGetLocation; alias UrlGetPartW UrlGetPart; alias UrlHashW UrlHash; alias UrlIsW UrlIs; alias UrlIsFileUrlW UrlIsFileUrl; alias UrlIsNoHistoryW UrlIsNoHistory; alias UrlIsOpaqueW UrlIsOpaque; alias UrlUnescapeW UrlUnescape; alias UrlUnescapeInPlaceW UrlUnescapeInPlace; alias SHRegCreateUSKeyW SHRegCreateUSKey; alias SHRegDeleteEmptyUSKeyW SHRegDeleteEmptyUSKey; alias SHRegDeleteUSValueW SHRegDeleteUSValue; alias SHRegEnumUSKeyW SHRegEnumUSKey; alias SHRegEnumUSValueW SHRegEnumUSValue; alias SHRegGetBoolUSValueW SHRegGetBoolUSValue; alias SHRegGetPathW SHRegGetPath; alias SHRegGetUSValueW SHRegGetUSValue; alias SHRegOpenUSKeyW SHRegOpenUSKey; alias SHRegQueryInfoUSKeyW SHRegQueryInfoUSKey; alias SHRegQueryUSValueW SHRegQueryUSValue; alias SHRegSetPathW SHRegSetPath; alias SHRegSetUSValueW SHRegSetUSValue; alias SHRegWriteUSValueW SHRegWriteUSValue; //alias wnsprintfW wnsprintf; //alias wvnsprintfW wvnsprintf; } else { alias ChrCmpIA ChrCmpI; alias IntlStrEqNA IntlStrEqN; alias IntlStrEqNIA IntlStrEqNI; alias IntlStrEqWorkerA IntlStrEqWorker; alias SHStrDupA SHStrDup; alias StrCatBuffA StrCatBuff; alias StrChrA StrChr; alias StrChrIA StrChrI; alias StrCmpNIA StrCmpNI; alias StrCmpNA StrCmpN; alias StrCSpnIA StrCSpnI; alias StrCSpnA StrCSpn; alias StrDupA StrDup; alias StrFormatByteSizeA StrFormatByteSize; alias StrFormatKBSizeA StrFormatKBSize; alias StrFromTimeIntervalA StrFromTimeInterval; alias StrIsIntlEqualA StrIsIntlEqual; alias StrNCatA StrNCat; alias StrPBrkA StrPBrk; alias StrRChrA StrRChr; alias StrRChrIA StrRChrI; alias StrRetToBufA StrRetToBuf; alias StrRetToStrA StrRetToStr; alias StrRStrIA StrRStrI; alias StrSpnA StrSpn; alias StrStrIA StrStrI; alias StrStrA StrStr; alias StrToIntA StrToInt; alias StrToIntExA StrToIntEx; alias StrTrimA StrTrim; alias PathAddBackslashA PathAddBackslash; alias PathAddExtensionA PathAddExtension; alias PathAppendA PathAppend; alias PathBuildRootA PathBuildRoot; alias PathCanonicalizeA PathCanonicalize; alias PathCombineA PathCombine; alias PathCommonPrefixA PathCommonPrefix; alias PathCompactPathA PathCompactPath; alias PathCompactPathExA PathCompactPathEx; alias PathCreateFromUrlA PathCreateFromUrl; alias PathFileExistsA PathFileExists; alias PathFindExtensionA PathFindExtension; alias PathFindFileNameA PathFindFileName; alias PathFindNextComponentA PathFindNextComponent; alias PathFindOnPathA PathFindOnPath; alias PathFindSuffixArrayA PathFindSuffixArray; alias PathGetArgsA PathGetArgs; alias PathGetCharTypeA PathGetCharType; alias PathGetDriveNumberA PathGetDriveNumber; alias PathIsContentTypeA PathIsContentType; alias PathIsDirectoryEmptyA PathIsDirectoryEmpty; alias PathIsDirectoryA PathIsDirectory; alias PathIsFileSpecA PathIsFileSpec; alias PathIsLFNFileSpecA PathIsLFNFileSpec; alias PathIsNetworkPathA PathIsNetworkPath; alias PathIsPrefixA PathIsPrefix; alias PathIsRelativeA PathIsRelative; alias PathIsRootA PathIsRoot; alias PathIsSameRootA PathIsSameRoot; alias PathIsSystemFolderA PathIsSystemFolder; alias PathIsUNCServerShareA PathIsUNCServerShare; alias PathIsUNCServerA PathIsUNCServer; alias PathIsUNCA PathIsUNC; alias PathIsURLA PathIsURL; alias PathMakePrettyA PathMakePretty; alias PathMakeSystemFolderA PathMakeSystemFolder; alias PathMatchSpecA PathMatchSpec; alias PathParseIconLocationA PathParseIconLocation; alias PathQuoteSpacesA PathQuoteSpaces; alias PathRelativePathToA PathRelativePathTo; alias PathRemoveArgsA PathRemoveArgs; alias PathRemoveBackslashA PathRemoveBackslash; alias PathRemoveBlanksA PathRemoveBlanks; alias PathRemoveExtensionA PathRemoveExtension; alias PathRemoveFileSpecA PathRemoveFileSpec; alias PathRenameExtensionA PathRenameExtension; alias PathSearchAndQualifyA PathSearchAndQualify; alias PathSetDlgItemPathA PathSetDlgItemPath; alias PathSkipRootA PathSkipRoot; alias PathStripPathA PathStripPath; alias PathStripToRootA PathStripToRoot; alias PathUndecorateA PathUndecorate; alias PathUnExpandEnvStringsA PathUnExpandEnvStrings; alias PathUnmakeSystemFolderA PathUnmakeSystemFolder; alias PathUnquoteSpacesA PathUnquoteSpaces; alias SHCreateStreamOnFileA SHCreateStreamOnFile; alias SHOpenRegStreamA SHOpenRegStream; alias SHOpenRegStream2A SHOpenRegStream2; alias SHCopyKeyA SHCopyKey; alias SHDeleteEmptyKeyA SHDeleteEmptyKey; alias SHDeleteKeyA SHDeleteKey; alias SHEnumKeyExA SHEnumKeyEx; alias SHQueryInfoKeyA SHQueryInfoKey; alias SHQueryValueExA SHQueryValueEx; alias SHEnumValueA SHEnumValue; alias SHGetValueA SHGetValue; alias SHSetValueA SHSetValue; alias SHDeleteValueA SHDeleteValue; alias AssocQueryKeyA AssocQueryKey; alias AssocQueryStringByKeyA AssocQueryStringByKey; alias AssocQueryStringA AssocQueryString; alias UrlApplySchemeA UrlApplyScheme; alias UrlCanonicalizeA UrlCanonicalize; alias UrlCombineA UrlCombine; alias UrlCompareA UrlCompare; alias UrlCreateFromPathA UrlCreateFromPath; alias UrlEscapeA UrlEscape; alias UrlGetLocationA UrlGetLocation; alias UrlGetPartA UrlGetPart; alias UrlHashA UrlHash; alias UrlIsA UrlIs; alias UrlIsNoHistoryA UrlIsNoHistory; alias UrlIsOpaqueA UrlIsOpaque; alias UrlUnescapeA UrlUnescape; alias UrlUnescapeInPlaceA UrlUnescapeInPlace; alias SHRegCreateUSKeyA SHRegCreateUSKey; alias SHRegDeleteEmptyUSKeyA SHRegDeleteEmptyUSKey; alias SHRegDeleteUSValueA SHRegDeleteUSValue; alias SHRegEnumUSKeyA SHRegEnumUSKey; alias SHRegEnumUSValueA SHRegEnumUSValue; alias SHRegGetBoolUSValueA SHRegGetBoolUSValue; alias SHRegGetPathA SHRegGetPath; alias SHRegGetUSValueA SHRegGetUSValue; alias SHRegOpenUSKeyA SHRegOpenUSKey; alias SHRegQueryInfoUSKeyA SHRegQueryInfoUSKey; alias SHRegQueryUSValueA SHRegQueryUSValue; alias SHRegSetPathA SHRegSetPath; alias SHRegSetUSValueA SHRegSetUSValue; alias SHRegWriteUSValueA SHRegWriteUSValue; //alias wnsprintfA wnsprintf; //alias wvnsprintfA wvnsprintf; } alias StrToInt StrToLong;