43#include "shdeprecated.h"
53#include "wine/unicode.h"
101 TRACE(
"(%p,%d,%d,%08x,%08x)\n", hShared, dwDstProcId, dwSrcProcId,
106 TRACE(
"Returning handle NULL\n");
111 if (dwDstProcId == dwMyProcId)
119 if (dwSrcProcId == dwMyProcId)
131 if (dwSrcProcId != dwMyProcId)
135 if (dwDstProcId != dwMyProcId)
139 TRACE(
"Returning handle %p\n", hRet);
223 TRACE(
"(%p %d %d)\n", hShared, dwProcId, bWriteAccess);
236 return (
char *) pMapped +
sizeof(
DWORD);
263 TRACE(
"(%p %d)\n", hShared, dwProcId);
273 return (
char *) pMapped +
sizeof(
DWORD);
293 TRACE(
"(%p)\n", lpView);
315 TRACE(
"(%p %d)\n", hShared, dwProcId);
346 static const WCHAR szProperty[] = {
'{',
'D',
'0',
'F',
'C',
'A',
'4',
'2',
'0',
347 '-',
'D',
'3',
'F',
'5',
'-',
'1',
'1',
'C',
'F',
'-',
'B',
'2',
'1',
'1',
'-',
'0',
348 '0',
'A',
'A',
'0',
'0',
'4',
'A',
'E',
'8',
'3',
'7',
'}',
'\0' };
353 IWebBrowserApp* pBrowser;
355 TRACE(
"(%p, %p)\n", lpBC, lpUnknown);
372 char szKeyBuff[128], szValueBuff[128];
373 DWORD dwKeySize, dwValueSize, dwRet = 0, dwCount = 0, dwNumValues, dwType;
374 FORMATETC* formatList, *
format;
377 TRACE(
"Registering formats and creating IEnumFORMATETC instance\n");
380 "Version\\Internet Settings\\Accepted Documents", &hDocs))
389 dwKeySize =
sizeof(szKeyBuff);
390 dwRet =
RegEnumValueA(hDocs,dwCount,szKeyBuff,&dwKeySize,0,&dwType,0,0);
394 dwNumValues = dwCount;
413 while(!dwRet && dwCount < dwNumValues)
415 dwKeySize =
sizeof(szKeyBuff);
416 dwValueSize =
sizeof(szValueBuff);
417 dwRet =
RegEnumValueA(hDocs, dwCount, szKeyBuff, &dwKeySize, 0, &dwType,
418 (
PBYTE)szValueBuff, &dwValueSize);
461 IEnumFORMATETC_Release(pIEnumFormatEtc);
472 TRACE(
"Retrieved IEnumFORMATETC property\n");
475 pIEnumFormatEtc =
NULL;
477 if (
hr ==
S_OK && pIEnumFormatEtc)
480 hr = IEnumFORMATETC_Clone(pIEnumFormatEtc, &pClone);
485 IEnumFORMATETC_Release(pClone);
488 IUnknown_Release(pIUnknown);
494 IWebBrowserApp_Release(pBrowser);
516 static const WCHAR szkeyW[] = {
517 'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
518 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
519 'I',
'n',
't',
'e',
'r',
'n',
'e',
't',
' ',
'E',
'x',
'p',
'l',
'o',
'r',
'e',
'r',
'\\',
520 'I',
'n',
't',
'e',
'r',
'n',
'a',
't',
'i',
'o',
'n',
'a',
'l',0};
522 'A',
'c',
'c',
'e',
'p',
't',
'L',
'a',
'n',
'g',
'u',
'a',
'g',
'e',0};
523 DWORD mystrlen, mytype;
530 TRACE(
"(%p, %p) *%p: %d\n", langbuf, buflen, buflen, buflen ? *buflen : -1);
532 if(!langbuf || !buflen || !*buflen)
535 mystrlen = (*buflen > 20) ? *buflen : 20 ;
544 if (!lres && (*buflen >
len)) {
576 DWORD buflenW, convlen;
579 TRACE(
"(%p, %p) *%p: %d\n", langbuf, buflen, buflen, buflen ? *buflen : -1);
581 if(!langbuf || !buflen || !*buflen)
return E_FAIL;
595 if (convlen < *buflen)
597 langbuf[convlen] = 0;
605 *buflen = buflenW ? convlen : 0;
631 sprintf(xguid,
"{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
661 static const WCHAR wszFormat[] = {
'{',
'%',
'0',
'8',
'l',
'X',
'-',
'%',
'0',
'4',
'X',
'-',
'%',
'0',
'4',
'X',
'-',
662 '%',
'0',
'2',
'X',
'%',
'0',
'2',
'X',
'-',
'%',
'0',
'2',
'X',
'%',
'0',
'2',
'X',
'%',
'0',
'2',
'X',
'%',
'0',
'2',
663 'X',
'%',
'0',
'2',
'X',
'%',
'0',
'2',
'X',
'}',0};
932 static const WCHAR szIEKey[] = {
'S',
'O',
'F',
'T',
'W',
'A',
'R',
'E',
'\\',
933 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'I',
'n',
't',
'e',
'r',
'n',
'e',
't',
934 ' ',
'E',
'x',
'p',
'l',
'o',
'r',
'e',
'r',
'\0' };
935 static const WCHAR szWinNtKey[] = {
'S',
'O',
'F',
'T',
'W',
'A',
'R',
'E',
'\\',
936 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
' ',
937 'N',
'T',
'\\',
'C',
'u',
'r',
'r',
'e',
'n',
't',
'V',
'e',
'r',
's',
'i',
'o',
'n',
'\0' };
938 static const WCHAR szWinKey[] = {
'S',
'O',
'F',
'T',
'W',
'A',
'R',
'E',
'\\',
939 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
940 'C',
'u',
'r',
'r',
'e',
'n',
't',
'V',
'e',
'r',
's',
'i',
'o',
'n',
'\0' };
941 static const WCHAR szRegKey[] = {
'S',
'O',
'F',
'T',
'W',
'A',
'R',
'E',
'\\',
942 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'I',
'n',
't',
'e',
'r',
'n',
'e',
't',
943 ' ',
'E',
'x',
'p',
'l',
'o',
'r',
'e',
'r',
'\\',
944 'R',
'e',
'g',
'i',
's',
't',
'r',
'a',
't',
'i',
'o',
'n',
'\0' };
945 static const WCHAR szVersion[] = {
'V',
'e',
'r',
's',
'i',
'o',
'n',
'\0' };
946 static const WCHAR szCustomized[] = {
'C',
'u',
's',
't',
'o',
'm',
'i',
'z',
'e',
'd',
947 'V',
'e',
'r',
's',
'i',
'o',
'n',
'\0' };
948 static const WCHAR szOwner[] = {
'R',
'e',
'g',
'i',
's',
't',
'e',
'r',
'e',
'd',
949 'O',
'w',
'n',
'e',
'r',
'\0' };
950 static const WCHAR szOrg[] = {
'R',
'e',
'g',
'i',
's',
't',
'e',
'r',
'e',
'd',
951 'O',
'r',
'g',
'a',
'n',
'i',
'z',
'a',
't',
'i',
'o',
'n',
'\0' };
952 static const WCHAR szProduct[] = {
'P',
'r',
'o',
'd',
'u',
'c',
't',
'I',
'd',
'\0' };
953 static const WCHAR szUpdate[] = {
'I',
'E',
'A',
'K',
954 'U',
'p',
'd',
'a',
't',
'e',
'U',
'r',
'l',
'\0' };
955 static const WCHAR szHelp[] = {
'I',
'E',
'A',
'K',
956 'H',
'e',
'l',
'p',
'S',
't',
'r',
'i',
'n',
'g',
'\0' };
979 dwLen = 30 - dwStrLen;
981 szCustomized, &dwType,
buff+dwStrLen, &dwLen);
1045 ULONG cCmds, OLECMD *prgCmds, OLECMDTEXT* pCmdText)
1049 TRACE(
"(%p,%p,%d,%p,%p)\n",lpUnknown, pguidCmdGroup, cCmds, prgCmds, pCmdText);
1055 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IOleCommandTarget,
1060 hRet = IOleCommandTarget_QueryStatus(lpOle, pguidCmdGroup, cCmds,
1062 IOleCommandTarget_Release(lpOle);
1089 TRACE(
"(%p,%p,%d,%d,%p,%p)\n",lpUnknown, pguidCmdGroup, nCmdID,
1090 nCmdexecopt, pvaIn, pvaOut);
1096 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IOleCommandTarget,
1100 hRet = IOleCommandTarget_Exec(lpOle, pguidCmdGroup, nCmdID,
1101 nCmdexecopt, pvaIn, pvaOut);
1102 IOleCommandTarget_Release(lpOle);
1133 if (new_flags !=
ret)
1197 if(!lpUnknown || (fConnect && !lpUnkSink))
1204 (
void**)&lpContainer);
1207 hRet = IConnectionPointContainer_FindConnectionPoint(lpContainer,
riid, &lpCP);
1212 hRet = IConnectionPoint_Unadvise(lpCP, *lpCookie);
1214 hRet = IConnectionPoint_Advise(lpCP, lpUnkSink, lpCookie);
1222 IConnectionPoint_Release(lpCP);
1225 IConnectionPointContainer_Release(lpContainer);
1243 TRACE(
"(%p)\n", lpUnknown);
1245 if(!lpUnknown || !*lpUnknown)
return;
1247 TRACE(
"doing Release\n");
1249 IUnknown_Release(*lpUnknown);
1267 if (lpszSrc && lpszSrc[0] ==
'/' && lpszSrc[1] ==
'/')
1290 TRACE(
"(%p %p)\n", lpInt1, lpInt2);
1292 if (!lpInt1 || !lpInt2)
1295 if (lpInt1 == lpInt2)
1298 if (IUnknown_QueryInterface(lpInt1, &
IID_IUnknown, (
void**)&lpUnknown1) !=
S_OK)
1301 if (IUnknown_QueryInterface(lpInt2, &
IID_IUnknown, (
void**)&lpUnknown2) !=
S_OK)
1303 IUnknown_Release(lpUnknown1);
1307 ret = lpUnknown1 == lpUnknown2;
1309 IUnknown_Release(lpUnknown1);
1310 IUnknown_Release(lpUnknown2);
1337 TRACE(
"(%p,%p)\n", lpUnknown, lphWnd);
1342 hRet = IUnknown_QueryInterface(lpUnknown, &
IID_IOleWindow, (
void**)&lpOle);
1346 hRet = IUnknown_QueryInterface(lpUnknown,&IID_IShellView, (
void**)&lpOle);
1350 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IInternetSecurityMgrSite,
1360 hRet = IOleWindow_GetWindow((
IOleWindow*)lpOle, lphWnd);
1361 IUnknown_Release(lpOle);
1363 TRACE(
"Returning HWND=%p\n", *lphWnd);
1388 if (!iface)
return E_FAIL;
1390 hr = IUnknown_QueryInterface(iface, &IID_IShellService, (
void**)&service);
1393 hr = IShellService_SetOwner(service,
pUnk);
1394 IShellService_Release(service);
1418 TRACE(
"IID_IObjectWithSite QI ret=%08x, %p\n",
hr, iobjwithsite);
1421 hr = IObjectWithSite_SetSite(iobjwithsite,
site);
1422 TRACE(
"done IObjectWithSite_SetSite ret=%08x\n",
hr);
1423 IObjectWithSite_Release(iobjwithsite);
1427 hr = IUnknown_QueryInterface(
obj, &IID_IInternetSecurityManager, (
LPVOID *)&isecmgr);
1428 TRACE(
"IID_IInternetSecurityManager QI ret=%08x, %p\n",
hr, isecmgr);
1432 TRACE(
"done IInternetSecurityManager_SetSecuritySite ret=%08x\n",
hr);
1433 IInternetSecurityManager_Release(isecmgr);
1466 hr = IUnknown_QueryInterface(lpUnknown, &
IID_IPersist, (
void**)&persist);
1469 hr = IUnknown_QueryInterface(lpUnknown, &IID_IPersistFolder, (
void**)&persist);
1474 hr = IPersist_GetClassID(persist,
clsid);
1475 IPersist_Release(persist);
1511 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IServiceProvider,
1514 if (hRet ==
S_OK && pService)
1516 TRACE(
"QueryInterface returned (IServiceProvider*)%p\n", pService);
1519 hRet = IServiceProvider_QueryService(pService,
sid,
riid, lppOut);
1521 TRACE(
"(IServiceProvider*)%p returned (IUnknown*)%p\n", pService, *lppOut);
1523 IServiceProvider_Release(pService);
1561 hr = IOleCommandTarget_Exec(
target,
group, cmdId, cmdOpt, pIn, pOut);
1562 IOleCommandTarget_Release(
target);
1599 hr = IProfferService_ProfferService(proffer, service, pService, pCookie);
1602 hr = IProfferService_RevokeService(proffer, *pCookie);
1606 IProfferService_Release(proffer);
1631 IInputObject*
object =
NULL;
1638 ret = IUnknown_QueryInterface(
unknown, &IID_IInputObject, (
LPVOID*) &
object);
1723 data.uiMsgId = uiMsgId;
1752 TRACE(
"%p\n", hMenu);
1754 while (iItemCount >= 0)
1798 TRACE(
"%p, %u, %d\n", hMenu, uID, bCheck);
1827 DWORD dwEffect = DROPEFFECT_LINK | DROPEFFECT_MOVE | DROPEFFECT_COPY;
1830 TRACE(
"%p %p 0x%08x %p %p\n", pDrop, pDataObj, grfKeyState, lpPt, pdwEffect);
1836 pdwEffect = &dwEffect;
1838 IDropTarget_DragEnter(pDrop, pDataObj, grfKeyState, *lpPt, pdwEffect);
1840 if (*pdwEffect != DROPEFFECT_NONE)
1841 return IDropTarget_Drop(pDrop, pDataObj, grfKeyState, *lpPt, pdwEffect);
1843 IDropTarget_DragLeave(pDrop);
1865 TRACE(
"(%p,%p)\n", lpUnknown, lpPropBag);
1873 hRet = IPersistPropertyBag_Load(lpPPBag, lpPropBag,
NULL);
1874 IPersistPropertyBag_Release(lpPPBag);
1899 TRACE(
"(%p,%p,0x%08x)\n", lpUnknown, lpMsg, dwModifiers);
1906 hRet = IOleControlSite_TranslateAccelerator(lpCSite, lpMsg, dwModifiers);
1907 IOleControlSite_Release(lpCSite);
1932 TRACE(
"(%p, %d)\n", lpUnknown, fGotFocus);
1939 hRet = IOleControlSite_OnFocus(lpCSite, fGotFocus);
1940 IOleControlSite_Release(lpCSite);
1953 static const DWORD service_id[] = { 0xd12f26b2, 0x11d0d90a, 0xaa000d83, 0x83435b00 };
1955 static const DWORD function_id[] = { 0xd12f26b1, 0x11d0d90a, 0xaa000d83, 0x83435b00 };
1959 TRACE(
"(%p,%p,%p,%p,%p)\n", lpUnknown, lpArg1, lpArg2, lpArg3, lpArg4);
1961 if (lpUnknown && lpArg4)
1964 (
REFGUID)function_id, (
void**)&lpUnkInner);
1973 hRet = IParseDisplayName_ParseDisplayName((LPPARSEDISPLAYNAME)lpUnkInner,
1974 lpArg1, lpArg2, lpArg3, lpArg4);
1975 IUnknown_Release(lpUnkInner);
1997 TRACE(
"(%p,%u)\n", hMenu, uID);
2089 if (lpFolder && pidl)
2091 hRet = IShellFolder_GetUIObjectOf(lpFolder,
NULL, 1, &pidl, &IID_IQueryInfo,
2092 NULL, (
void**)&lpInfo);
2159 if (lpKeys && lpValues)
2165 if (lpKeys[
i] == iKey)
2188 TRACE(
"(%p,%p)\n", lppDest, lpUnknown);
2194 IUnknown_AddRef(lpUnknown);
2195 *lppDest = lpUnknown;
2205 OLECMD *prgCmds, OLECMDTEXT* pCmdText)
2207 FIXME(
"(%p,%p,%p,%d,%p,%p) - stub\n",
2208 lpUnknown, lpReserved, riidCmdGrp, cCmds, prgCmds, pCmdText);
2222 FIXME(
"(%p,%d,%p,%d,%d,%p,%p) - stub!\n", lpUnknown, iUnk, pguidCmdGroup,
2223 nCmdID, nCmdexecopt, pvaIn, pvaOut);
2233 FIXME(
"(%p,%d,%p) - stub!\n", pguidCmdGroup, cCmds, prgCmds);
2256 else if(hParent ==
hChild)
2275#define FDSA_FLAG_INTERNAL_ALLOC 0x01
2293 info->num_items = 0;
2296 info->blocks_alloced = init_blocks;
2329 if(where >
info->num_items)
2330 where =
info->num_items;
2332 if(
info->num_items >=
info->blocks_alloced)
2335 if(
info->flags & 0x1)
2339 void *old_mem =
info->mem;
2347 if(where < info->num_items)
2350 (
char*)
info->mem + where *
info->block_size,
2351 (
info->num_items - where) *
info->block_size);
2368 if(where >=
info->num_items)
2371 if(where < info->num_items - 1)
2374 (
char*)
info->mem + (where + 1) *
info->block_size,
2375 (
info->num_items - where - 1) *
info->block_size);
2378 0,
info->block_size);
2405 while (xmove->
piid) {
2409 TRACE(
"matched, returning (%p)\n", a_vtbl);
2411 IUnknown_AddRef(a_vtbl);
2419 TRACE(
"returning first for IUnknown (%p)\n", a_vtbl);
2421 IUnknown_AddRef(a_vtbl);
2457 HFONT hOldFont, hNewFont;
2464 GetObjectW(hOldFont,
sizeof(lfOldFont), &lfOldFont);
2479 hNewFont = hOldFont;
2482 if (hOldFont != hNewFont)
2539 strcpy(
string,
"CLSID\\");
2541 strcat(
string,
"\\InProcServer32");
2583 TRACE(
"(%p,%p,%d)\n",
hInst, lppClasses, iCount);
2603 TRACE(
"(%p,%p,%d)\n",
hInst, lppClasses, iCount);
2641 LPOBJECTWITHSITE lpSite =
NULL;
2645 if (lpUnknown && iid && lppSite)
2651 hRet = IObjectWithSite_GetSite(lpSite, iid, lppSite);
2652 IObjectWithSite_Release(lpSite);
2678 static const char szClass[] =
"WorkerA";
2682 TRACE(
"(%p, %p, 0x%08x, 0x%08x, %p, 0x%08lx)\n",
2718#define SHELL_NO_POLICY 0xffffffff
2721static const WCHAR strRegistryPolicyW[] = {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
'M',
'i',
'c',
'r',
'o',
2722 's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
2723 'C',
'u',
'r',
'r',
'e',
'n',
't',
'V',
'e',
'r',
's',
'i',
'o',
'n',
2724 '\\',
'P',
'o',
'l',
'i',
'c',
'i',
'e',
's',0};
2749 lpSubKey =
L"Software\\Microsoft\\Windows\\CurrentVersion\\Policies";
2753 dwSize =
sizeof(dwValue);
2757 dwSize =
sizeof(dwValue);
2761 DWORD retval, datsize =
sizeof(retval);
2817 if (!polTable || !polArr)
2822 for (;polTable->
appstr; polTable++, polArr++)
2824 for (;polTable->
policy; polTable++, polArr++)
2867 if(
pUnk && pInner) {
2868 hret = IUnknown_QueryInterface(pInner,
riid,
ppv);
2871 TRACE(
"-- 0x%08x\n", hret);
2889 TRACE(
"(%p,%p)\n", lpDest, lppUnknown);
2894 IUnknown_AddRef(lpDest);
2949 static const char szIntegratedBrowser[] =
"IntegratedBrowser";
2950 static DWORD dwState = 0;
2965 dwState = pDllGetVersion ? 2 : 1;
2971 "Software\\Microsoft\\Internet Explorer", 0,
2978 if (!dwRet && dwState == 1)
2983 else if (dwRet && dwState == 2)
3003 static const WCHAR szClass[] = {
'W',
'o',
'r',
'k',
'e',
'r',
'W', 0 };
3007 TRACE(
"(%p, %p, 0x%08x, 0x%08x, %p, 0x%08lx)\n",
3058 TRACE(
"%p %p %p\n",
hWnd, lpFolder, lpApidl);
3080 while(iter-- >
args) {
3088 switch(
V_VT(iter)) {
3141 DISPPARAMS* dispParams)
3146 DISPPARAMS*
params = dispParams;
3148 HRESULT result = IConnectionPoint_EnumConnections(iCP, &enumerator);
3156 while(IEnumConnections_Next(enumerator, 1, &rgcd,
NULL)==
S_OK)
3159 if ((iid &&
SUCCEEDED(IUnknown_QueryInterface(rgcd.pUnk, iid, (
LPVOID*)&dispIface))) ||
3163 IDispatch_Release(dispIface);
3165 IUnknown_Release(rgcd.pUnk);
3168 IEnumConnections_Release(enumerator);
3177 DISPID dispId, DISPPARAMS* dispParams,
3183 FIXME(
"(%p)->(0x%x %p %x %x) partial stub\n", iCP, dispId, dispParams, unknown1, unknown2);
3185 result = IConnectionPoint_GetConnectionInterface(iCP, &iid);
3203 DISPPARAMS* dispParams)
3208 TRACE(
"(%p)->(0x%x %p)\n",iCP,dispId,dispParams);
3210 result = IConnectionPoint_GetConnectionInterface(iCP, &iid);
3238 TRACE(
"(%p,0x%8X)\n", lpCP, dispID);
3242 hRet = IConnectionPoint_EnumConnections(lpCP, &lpEnum);
3247 CONNECTDATA connData;
3251 while (IEnumConnections_Next(lpEnum, 1, &connData, &ulFetched) ==
S_OK)
3256 IPropertyNotifySink_OnChanged(lpSink, dispID);
3257 IPropertyNotifySink_Release(lpSink);
3259 IUnknown_Release(connData.pUnk);
3262 IEnumConnections_Release(lpEnum);
3282 DISPPARAMS dispParams = {
buffer,
NULL, cParams, 0};
3292 result = IConnectionPointContainer_FindConnectionPoint(iCPC,
riid, &iCP);
3293 IConnectionPointContainer_Release(iCPC);
3302 IConnectionPoint_Release(iCP);
3326 TRACE(
"(%p,0x%8X)\n", lpUnknown, dispID);
3336 IConnectionPointContainer_Release(lpCPC);
3339 IConnectionPoint_Release(lpCP);
3530#define IsIface(type) SUCCEEDED((hRet = IUnknown_QueryInterface(lpUnknown, &IID_##type, (void**)&lpObj)))
3531#define IShellBrowser_EnableModeless IShellBrowser_EnableModelessSB
3532#define EnableModeless(type) type##_EnableModeless((type*)lpObj, bModeless)
3558 TRACE(
"(%p,%d)\n", lpUnknown, bModeless);
3576 IUnknown_Release(lpObj);
3623 TRACE(
"(%p, %p, %p, %u)\n",
hWnd, lpFolder, lpApidl, dwCommandId);
3629 hRet = IShellFolder_GetUIObjectOf(lpFolder,
hWnd, 1, &lpApidl,
3630 &IID_IContextMenu, 0, (
void**)&iContext);
3639 hQuery = IContextMenu_QueryContextMenu(iContext, hMenu, 0, 1, 0x7FFF,
3640 dwCommandId ? CMF_NORMAL : CMF_DEFAULTONLY);
3646 if (dwCommandId != (
UINT)-1)
3648 CMINVOKECOMMANDINFO cmIci;
3650 memset(&cmIci,0,
sizeof(cmIci));
3651 cmIci.cbSize =
sizeof(cmIci);
3652 cmIci.fMask = CMIC_MASK_ASYNCOK;
3661 hRet = IContextMenu_InvokeCommand(iContext, &cmIci);
3666 IContextMenu_Release(iContext);
3720 FIXME(
"(%s,%p,%d) semi-stub!\n",
debugstr_a(new_mod), inst_hwnd, dwCrossCodePage);
3722 if (!
len ||
len >=
sizeof(mod_path))
return NULL;
3744 FIXME(
"(%s,%p,%d) semi-stub!\n",
debugstr_w(new_mod), inst_hwnd, dwCrossCodePage);
3772 TRACE(
"(0x%8x,%d,%d)\n", cRGB, dwLuma, bUnknown);
3780 FIXME(
"Ignoring luma adjustment\n");
3817 return WNetGetLastErrorW(lpError, lpErrorBuf, nErrorBufSize, lpNameBuf, nNameBufSize);
3867 return IShellFolder_EnumObjects(lpFolder,
hwnd,
flags, ppenum);
3873 wHue = wHue > 240 ? wHue - 240 : wHue < 0 ? wHue + 240 : wHue;
3877 else if (wHue > 120)
3882 return ((wHue * (wMid2 - wMid1) + 20) / 40) + wMid1;
3886#define GET_RGB(h) (ConvertHue(h, wMid1, wMid2) * 255 + 120) / 240
3910 WORD wGreen, wBlue, wMid1, wMid2;
3912 if (wLuminosity > 120)
3913 wMid2 = wSaturation + wLuminosity - (wSaturation * wLuminosity + 120) / 240;
3915 wMid2 = ((wSaturation + 240) * wLuminosity + 120) / 240;
3917 wMid1 = wLuminosity * 2 - wMid2;
3923 return RGB(wRed, wGreen, wBlue);
3926 wRed = wLuminosity * 255 / 240;
3927 return RGB(wRed, wRed, wRed);
4034 FIXME(
"(0x%08x)stub\n",
x);
4098 ERR(
"GetVersionEx failed\n");
4106#define ISOS_RETURN(x) \
4107 TRACE("(0x%x) ret=%d\n",feature,(x)); \
4138 FIXME(
"(OS_EMBEDDED) What should we return here?\n");
4141 FIXME(
"(OS_TERMINALCLIENT) What should we return here?\n");
4144 FIXME(
"(OS_TERMINALREMOTEADMIN) What should we return here?\n");
4167 FIXME(
"(OS_FASTUSERSWITCHING) What should we return here?\n");
4170 FIXME(
"(OS_WELCOMELOGONUI) What should we return here?\n");
4173 FIXME(
"(OS_DOMAINMEMBER) What should we return here?\n");
4188 FIXME(
"(OS_TABLETPC) What should we return here?\n");
4191 FIXME(
"(OS_SERVERADMINUI) What should we return here?\n");
4194 FIXME(
"(OS_MEDIACENTER) What should we return here?\n");
4197 FIXME(
"(OS_APPLIANCE) What should we return here?\n");
4265 IInputObject* lpInput =
NULL;
4268 TRACE(
"(%p,%p)\n", lpUnknown, lpMsg);
4271 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IInputObject,
4297 IInputObject* lpInput =
NULL;
4300 TRACE(
"(%p)\n", lpUnknown);
4303 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IInputObject,
4336 int wR, wG, wB, wMax, wMin, wHue, wLuminosity, wSaturation;
4338 TRACE(
"(%08x,%p,%p,%p)\n", cRGB, pwHue, pwLuminance, pwSaturation);
4344 wMax =
max(wR,
max(wG, wB));
4345 wMin =
min(wR,
min(wG, wB));
4348 wLuminosity = ((wMax + wMin) * 240 + 255) / 510;
4360 int wDelta = wMax - wMin, wRNorm, wGNorm, wBNorm;
4363 if (wLuminosity <= 120)
4364 wSaturation = ((wMax + wMin)/2 + wDelta * 240) / (wMax + wMin);
4366 wSaturation = ((510 - wMax - wMin)/2 + wDelta * 240) / (510 - wMax - wMin);
4369 wRNorm = (wDelta/2 + wMax * 40 - wR * 40) / wDelta;
4370 wGNorm = (wDelta/2 + wMax * 40 - wG * 40) / wDelta;
4371 wBNorm = (wDelta/2 + wMax * 40 - wB * 40) / wDelta;
4374 wHue = wBNorm - wGNorm;
4375 else if (wG == wMax)
4376 wHue = 80 + wRNorm - wBNorm;
4378 wHue = 160 + wGNorm - wRNorm;
4381 else if (wHue > 240)
4387 *pwLuminance = wLuminosity;
4389 *pwSaturation = wSaturation;
4426 FIXME(
" - returning bogus address for SHGetInverseCMAP\n");
4450 static int is_low = -1;
4451 TRACE(
"(0x%08x)\n", dwType);
4452 if (dwType == 0 && is_low == -1)
4455 is_low = (
status.dwTotalPhys <= 0x1000000);
4459 FIXME(
"(0x%08x) stub\n", dwType);
4482 TRACE(
"%p %u\n", hMenu, wID);
4484 while (nIter < nCount)
4490 TRACE(
"ret %d\n", nIter);
4506 TRACE(
"%p %u\n", hMenu, uID);
4530 FIXME(
"(0x%08x) stub\n", dwUnknown);
4560 static WCHAR szSkipBinding[] = {
'S',
'k',
'i',
'p',
' ',
4561 'B',
'i',
'n',
'd',
'i',
'n',
'g',
' ',
'C',
'L',
'S',
'I',
'D',
'\0' };
4568 if (
SUCCEEDED(IBindCtx_GetObjectParam(pbc, szSkipBinding, &lpUnk)))
4576 IUnknown_Release(lpUnk);
4605 static const WCHAR explorerW[] = {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
4606 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
4607 'C',
'u',
'r',
'r',
'e',
'n',
't',
'V',
'e',
'r',
's',
'i',
'o',
'n',
'\\',
4608 'E',
'x',
'p',
'l',
'o',
'r',
'e',
'r',
'\\'};
4609 static const WCHAR shellW[] = {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
4610 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
4611 'S',
'h',
'e',
'l',
'l',
'\\'};
4612 static const WCHAR shell_no_roamW[] = {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
4613 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
4614 'S',
'h',
'e',
'l',
'l',
'N',
'o',
'R',
'o',
'a',
'm',
'\\'};
4615 static const WCHAR classesW[] = {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
4616 'C',
'l',
'a',
's',
's',
'e',
's',
'\\'};
4618 static const WCHAR localized_resource_nameW[] = {
'L',
'o',
'c',
'a',
'l',
'i',
'z',
'e',
'd',
4619 'R',
'e',
's',
'o',
'u',
'r',
'c',
'e',
'N',
'a',
'm',
'e',
'\\'};
4620 static const WCHAR handlersW[] = {
'H',
'a',
'n',
'd',
'l',
'e',
'r',
's',
'\\'};
4621 static const WCHAR associationsW[] = {
'A',
's',
's',
'o',
'c',
'i',
'a',
't',
'i',
'o',
'n',
's',
'\\'};
4622 static const WCHAR volatileW[] = {
'V',
'o',
'l',
'a',
't',
'i',
'l',
'e',
'\\'};
4623 static const WCHAR mui_cacheW[] = {
'M',
'U',
'I',
'C',
'a',
'c',
'h',
'e',
'\\'};
4624 static const WCHAR file_extsW[] = {
'F',
'i',
'l',
'e',
'E',
'x',
't',
's',
'\\'};
4628 int size_key, size_subkey, size_user;
4634 if(
flags == 0x1ffff)
4637 switch(
flags&0xff0) {
4640 size_key =
sizeof(explorerW);
4644 size_key =
sizeof(shellW);
4647 key = shell_no_roamW;
4648 size_key =
sizeof(shell_no_roamW);
4652 size_key =
sizeof(classesW);
4655 FIXME(
"unsupported flags (0x%08x)\n",
flags);
4659 switch(
flags&0xff000) {
4665 subkey = localized_resource_nameW;
4666 size_subkey =
sizeof(localized_resource_nameW);
4670 size_subkey =
sizeof(handlersW);
4673 subkey = associationsW;
4674 size_subkey =
sizeof(associationsW);
4678 size_subkey =
sizeof(volatileW);
4681 subkey = mui_cacheW;
4682 size_subkey =
sizeof(mui_cacheW);
4685 subkey = file_extsW;
4686 size_subkey =
sizeof(file_extsW);
4689 FIXME(
"unsupported flags (0x%08x)\n",
flags);
4700 ERR(
"Out of memory\n");
4708 memcpy(
path+(size_key+size_subkey)/
sizeof(
WCHAR), sub_key, size_user);
4709 path[(size_key+size_subkey+size_user)/
sizeof(
WCHAR)] =
'\0';
4729 TRACE(
"(%p, %p, %d, %lx, %p, %s, %08x)\n", pfnCallback, pContext,
4732 if(lPriority || dwTag || pdwId || pszModule ||
dwFlags)
4733 FIXME(
"Unsupported arguments\n");
4758 dwDueTime, dwPeriod,
dwFlags))
4769 IInputObjectSite *pIOS =
NULL;
4772 TRACE(
"(%p, %p, %s)\n", lpUnknown, pFocusObject, bFocus ?
"TRUE" :
"FALSE");
4776 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IInputObjectSite,
4957 pszTitle = lpCaption;
4971 WARN(
"Failed to load id %d\n",
LOWORD(lpText));
5052 TRACE(
"%p %d\n", apUserPerm, cUserPerm);
5054 if (apUserPerm ==
NULL || cUserPerm <= 0)
5061 acl_size =
sizeof(
ACL);
5063 for(sid_count = 0; sid_count < cUserPerm; sid_count++)
5088 }
else if (
sid->dwUserID==0)
5090 0, 0, 0, 0, 0, 0, &
pSid);
5093 0, 0, 0, 0, 0, 0, &
pSid);
5097 sidlist[sid_count] =
pSid;
5114 for(
i = 0;
i < sid_count;
i++)
5149 for(
i = 0;
i < sid_count;
i++)
5151 if (!cur_user || sidlist[
i] != cur_user)
5235#define SHFORMATDT_UNSUPPORTED_FLAGS (FDTF_RELATIVE | FDTF_LTRDATE | FDTF_RTLDATE | FDTF_NOAUTOREADINGORDER)
5255 static const WCHAR sep1[] = {
',',
' ',0};
5256 static const WCHAR sep2[] = {
' ',0};
5288#undef SHFORMATDT_UNSUPPORTED_FLAGS
5335 FIXME(
"(%s,%p,%x,%x,%x,%x,%x,%x) STUB\n",
debugstr_w(szURL),
pUnknown, dwUnknown2,
5336 dwUnknown3, dwUnknown4, dwUnknown5, dwUnknown6, dwUnknown7);
5356 FIXME(
"(%s, %p, %p, %i) STUB\n",verb,
pUnknown, pUnknown2, dwUnknown3);
5446VariantArrayToBuffer(
5452 LONG LowerBound, UpperBound;
5464 ((
LONG)cbSize <= UpperBound - LowerBound + 1) &&
5488 hr = IPropertyBag_Read(ppb, pszPropName, pvarg,
NULL);
5496 return VariantChangeTypeForRead(pvarg,
vt);
5511 if (!ppb || !pszPropName || !pbValue)
5519 *pbValue = (
V_BOOL(&varg) == VARIANT_TRUE);
5540 return V_BOOL(&varg) == VARIANT_TRUE;
5555 if (!ppb || !pszPropName || !psValue)
5563 *psValue =
V_UI2(&varg);
5593 if (!ppb || !pszPropName || !
pValue)
5606 if (!pszPropName || !ppb || !
pValue)
5609 hr = IPropertyBag_Read(ppb, pszPropName, &
var,
NULL);
5634 if (!ppb || !pszPropName || !pdwValue)
5642 *pdwValue =
V_UI4(&varg);
5659 if (!ppb || !pszPropName || !pbstr)
5686 if (!ppb || !pszPropName || !pszDst)
5714 if (!ppb || !pszPropName || !
pptl)
5753 if (!ppb || !pszPropName || !ppts)
5781 if (!ppb || !pszPropName || !
prcl)
5831 if (!ppb || !pszPropName || !pguid)
5845 bRet = VariantArrayToBuffer(&vari, pguid,
sizeof(*pguid));
5849#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
5874 if (!ppb || !pszPropName || !ppStream)
5884 hr = IUnknown_QueryInterface(
V_UNKNOWN(&vari), &IID_IStream, (
void **)ppStream);
5901 if (!ppb || !pszPropName)
5908 return IPropertyBag_Write(ppb, pszPropName, &vari);
5922 if (!ppb || !pszPropName)
5929 V_BOOL(&vari) = (bValue ? VARIANT_TRUE : VARIANT_FALSE);
5930 return IPropertyBag_Write(ppb, pszPropName, &vari);
5944 if (!ppb || !pszPropName)
5951 V_UI2(&vari) = sValue;
5952 return IPropertyBag_Write(ppb, pszPropName, &vari);
5968 if (!ppb || !pszPropName)
5975 V_I4(&vari) = lValue;
5976 return IPropertyBag_Write(ppb, pszPropName, &vari);
5990 if (!ppb || !pszPropName)
5997 V_UI4(&vari) = dwValue;
5998 return IPropertyBag_Write(ppb, pszPropName, &vari);
6015 if (!ppb || !pszPropName)
6026 hr = IPropertyBag_Write(ppb, pszPropName, &vari);
6043 if (!ppb || !pszPropName || !pguid)
6064 if (!ppb || !pszPropName || !pStream)
6072 return IPropertyBag_Write(ppb, pszPropName, &vari);
6088 if (!ppb || !pszPropName || !
pptl)
6133 if (!ppb || !pszPropName || !ppts)
6157 if (!ppb || !pszPropName || !
prcl)
6215#define OBJCOMPAT_OTNEEDSSFCACHE 0x00000001
6216#define OBJCOMPAT_NO_WEBVIEW 0x00000002
6217#define OBJCOMPAT_UNBINDABLE 0x00000004
6218#define OBJCOMPAT_PINDLL 0x00000008
6219#define OBJCOMPAT_NEEDSFILESYSANCESTOR 0x00000010
6220#define OBJCOMPAT_NOTAFILESYSTEM 0x00000020
6221#define OBJCOMPAT_CTXMENU_NOVERBS 0x00000040
6222#define OBJCOMPAT_CTXMENU_LIMITEDQI 0x00000080
6223#define OBJCOMPAT_COCREATESHELLFOLDERONLY 0x00000100
6224#define OBJCOMPAT_NEEDSSTORAGEANCESTOR 0x00000200
6225#define OBJCOMPAT_NOLEGACYWEBVIEW 0x00000400
6226#define OBJCOMPAT_CTXMENU_XPQCMFLAGS 0x00001000
6227#define OBJCOMPAT_NOIPROPERTYSTORE 0x00002000
6237 { {
'C',
'O',
'C',
'R',
'E',
'A',
'T',
'E',
'S',
'H',
'E',
'L',
'L',
'F',
'O',
'L',
'D',
'E',
'R',
'O',
'N',
'L',
'Y',0},
6239 { {
'C',
'T',
'X',
'M',
'E',
'N',
'U',
'_',
'L',
'I',
'M',
'I',
'T',
'E',
'D',
'Q',
'I',0},
6241 { {
'C',
'T',
'X',
'M',
'E',
'N',
'U',
'_',
'N',
'O',
'V',
'E',
'R',
'B',
'S',0},
6243 { {
'C',
'T',
'X',
'M',
'E',
'N',
'U',
'_',
'X',
'P',
'Q',
'C',
'M',
'F',
'L',
'A',
'G',
'S',0},
6245 { {
'N',
'E',
'E',
'D',
'S',
'F',
'I',
'L',
'E',
'S',
'Y',
'S',
'A',
'N',
'C',
'E',
'S',
'T',
'O',
'R',0},
6247 { {
'N',
'E',
'E',
'D',
'S',
'S',
'T',
'O',
'R',
'A',
'G',
'E',
'A',
'N',
'C',
'E',
'S',
'T',
'O',
'R',0},
6249 { {
'N',
'O',
'I',
'P',
'R',
'O',
'P',
'E',
'R',
'T',
'Y',
'S',
'T',
'O',
'R',
'E',0},
6251 { {
'N',
'O',
'L',
'E',
'G',
'A',
'C',
'Y',
'W',
'E',
'B',
'V',
'I',
'E',
'W',0},
6253 { {
'N',
'O',
'T',
'A',
'F',
'I',
'L',
'E',
'S',
'Y',
'S',
'T',
'E',
'M',0},
6255 { {
'N',
'O',
'_',
'W',
'E',
'B',
'V',
'I',
'E',
'W',0},
6257 { {
'O',
'T',
'N',
'E',
'E',
'D',
'S',
'S',
'F',
'C',
'A',
'C',
'H',
'E',0},
6259 { {
'P',
'I',
'N',
'D',
'L',
'L',0},
6261 { {
'U',
'N',
'B',
'I',
'N',
'D',
'A',
'B',
'L',
'E',0},
6280 static const WCHAR compatpathW[] =
6281 {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
6282 'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
'C',
'u',
'r',
'r',
'e',
'n',
't',
'V',
'e',
'r',
's',
'i',
'o',
'n',
'\\',
6283 'S',
'h',
'e',
'l',
'l',
'C',
'o',
'm',
'p',
'a',
't',
'i',
'b',
'i',
'l',
'i',
't',
'y',
'\\',
6284 'O',
'b',
'j',
'e',
'c',
't',
's',
'\\',
'%',
's',0};
6297 FIXME(
"iface not handled\n");
char * strcat(char *DstString, const char *SrcString)
int memcmp(void *Buffer1, void *Buffer2, ACPI_SIZE Count)
ACPI_SIZE strlen(const char *String)
char * strcpy(char *DstString, const char *SrcString)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
void shell(int argc, const char *argv[])
static const TCHAR helpfile[]
static void free_sids(PSID *sids, int count)
#define RegCloseKey(hKey)
EXTERN_C void WINAPI SHChangeNotify(LONG wEventId, UINT uFlags, LPCVOID dwItem1, LPCVOID dwItem2)
LONG WINAPI RegCreateKeyExW(_In_ HKEY hKey, _In_ LPCWSTR lpSubKey, _In_ DWORD Reserved, _In_opt_ LPWSTR lpClass, _In_ DWORD dwOptions, _In_ REGSAM samDesired, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes, _Out_ PHKEY phkResult, _Out_opt_ LPDWORD lpdwDisposition)
LONG WINAPI RegSetValueExA(HKEY hKey, LPCSTR lpValueName, DWORD Reserved, DWORD dwType, CONST BYTE *lpData, DWORD cbData)
LONG WINAPI RegOpenKeyExW(HKEY hKey, LPCWSTR lpSubKey, DWORD ulOptions, REGSAM samDesired, PHKEY phkResult)
LONG WINAPI RegOpenKeyExA(_In_ HKEY hKey, _In_ LPCSTR lpSubKey, _In_ DWORD ulOptions, _In_ REGSAM samDesired, _Out_ PHKEY phkResult)
LONG WINAPI RegOpenKeyA(HKEY hKey, LPCSTR lpSubKey, PHKEY phkResult)
LONG WINAPI RegEnumValueA(_In_ HKEY hKey, _In_ DWORD dwIndex, _Out_ LPSTR lpName, _Inout_ LPDWORD lpcbName, _Reserved_ LPDWORD lpdwReserved, _Out_opt_ LPDWORD lpdwType, _Out_opt_ LPBYTE lpData, _Inout_opt_ LPDWORD lpcbData)
LONG WINAPI RegDeleteValueA(HKEY hKey, LPCSTR lpValueName)
LONG WINAPI RegOpenKeyW(HKEY hKey, LPCWSTR lpSubKey, PHKEY phkResult)
LONG WINAPI RegSetValueExW(_In_ HKEY hKey, _In_ LPCWSTR lpValueName, _In_ DWORD Reserved, _In_ DWORD dwType, _In_ CONST BYTE *lpData, _In_ DWORD cbData)
LONG WINAPI RegDeleteValueW(HKEY hKey, LPCWSTR lpValueName)
LONG WINAPI RegEnumValueW(_In_ HKEY hKey, _In_ DWORD index, _Out_ LPWSTR value, _Inout_ PDWORD val_count, _Reserved_ PDWORD reserved, _Out_opt_ PDWORD type, _Out_opt_ LPBYTE data, _Inout_opt_ PDWORD count)
LONG WINAPI RegQueryValueExA(_In_ HKEY hkeyorg, _In_ LPCSTR name, _In_ LPDWORD reserved, _Out_opt_ LPDWORD type, _Out_opt_ LPBYTE data, _Inout_opt_ LPDWORD count)
LONG WINAPI RegQueryValueExW(_In_ HKEY hkeyorg, _In_ LPCWSTR name, _In_ LPDWORD reserved, _In_ LPDWORD type, _In_ LPBYTE data, _In_ LPDWORD count)
BOOL WINAPI GetTokenInformation(HANDLE TokenHandle, TOKEN_INFORMATION_CLASS TokenInformationClass, LPVOID TokenInformation, DWORD TokenInformationLength, PDWORD ReturnLength)
BOOL WINAPI OpenProcessToken(HANDLE ProcessHandle, DWORD DesiredAccess, PHANDLE TokenHandle)
BOOL WINAPI AddAccessDeniedAceEx(PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, PSID pSid)
BOOL WINAPI AllocateAndInitializeSid(PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, BYTE nSubAuthorityCount, DWORD nSubAuthority0, DWORD nSubAuthority1, DWORD nSubAuthority2, DWORD nSubAuthority3, DWORD nSubAuthority4, DWORD nSubAuthority5, DWORD nSubAuthority6, DWORD nSubAuthority7, PSID *pSid)
BOOL WINAPI InitializeAcl(PACL pAcl, DWORD nAclLength, DWORD dwAclRevision)
BOOL WINAPI InitializeSecurityDescriptor(PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD dwRevision)
BOOL WINAPI AddAccessAllowedAce(PACL pAcl, DWORD dwAceRevision, DWORD AccessMask, PSID pSid)
BOOL WINAPI AddAccessAllowedAceEx(PACL pAcl, DWORD dwAceRevision, DWORD AceFlags, DWORD AccessMask, PSID pSid)
DWORD WINAPI GetLengthSid(PSID pSid)
PVOID WINAPI FreeSid(PSID pSid)
BOOL WINAPI AddAccessDeniedAce(PACL pAcl, DWORD dwAceRevision, DWORD AccessMask, PSID pSid)
INT WINAPI StrCmpNIA(LPCSTR lpszStr, LPCSTR lpszComp, INT iLen)
INT WINAPI StrCmpNIW(LPCWSTR lpszStr, LPCWSTR lpszComp, INT iLen)
INT WINAPI StrCmpNW(LPCWSTR lpszStr, LPCWSTR lpszComp, INT iLen)
INT WINAPI StrCmpNA(LPCSTR lpszStr, LPCSTR lpszComp, INT iLen)
BOOL WINAPI GetOpenFileNameW(OPENFILENAMEW *ofn)
BOOL WINAPI GetSaveFileNameW(LPOPENFILENAMEW ofn)
BOOL WINAPI PrintDlgW(LPPRINTDLGW lppd)
BOOL WINAPI PageSetupDlgW(LPPAGESETUPDLGW setupdlg)
static WCHAR unknown[MAX_STRING_RESOURCE_LEN]
static const WCHAR empty[]
#define GetProcAddress(x, y)
#define INVALID_HANDLE_VALUE
#define GetCurrentProcess()
#define HeapFree(x, y, z)
#define WideCharToMultiByte
#define MultiByteToWideChar
static const WCHAR version[]
static const WCHAR valueW[]
BOOL WINAPI DuplicateHandle(IN HANDLE hSourceProcessHandle, IN HANDLE hSourceHandle, IN HANDLE hTargetProcessHandle, OUT LPHANDLE lpTargetHandle, IN DWORD dwDesiredAccess, IN BOOL bInheritHandle, IN DWORD dwOptions)
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryExA(LPCSTR lpLibFileName, HANDLE hFile, DWORD dwFlags)
DWORD WINAPI GetModuleFileNameW(HINSTANCE hModule, LPWSTR lpFilename, DWORD nSize)
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryA(LPCSTR lpLibFileName)
DWORD WINAPI GetModuleFileNameA(HINSTANCE hModule, LPSTR lpFilename, DWORD nSize)
HANDLE WINAPI OpenProcess(IN DWORD dwDesiredAccess, IN BOOL bInheritHandle, IN DWORD dwProcessId)
BOOL WINAPI QueueUserWorkItem(IN LPTHREAD_START_ROUTINE Function, IN PVOID Context, IN ULONG Flags)
BOOL WINAPI FileTimeToSystemTime(IN CONST FILETIME *lpFileTime, OUT LPSYSTEMTIME lpSystemTime)
DWORD WINAPI GetTickCount(VOID)
BOOL WINAPI FileTimeToLocalFileTime(IN CONST FILETIME *lpFileTime, OUT LPFILETIME lpLocalFileTime)
BOOL WINAPI CreateTimerQueueTimer(OUT PHANDLE phNewTimer, IN HANDLE TimerQueue, IN WAITORTIMERCALLBACK Callback, IN PVOID Parameter, IN DWORD DueTime, IN DWORD Period, IN ULONG Flags)
BOOL WINAPI GetVersionExA(IN LPOSVERSIONINFOA lpVersionInformation)
BOOL WINAPI WritePrivateProfileStringW(LPCWSTR section, LPCWSTR entry, LPCWSTR string, LPCWSTR filename)
INT WINAPI GetPrivateProfileStringW(LPCWSTR section, LPCWSTR entry, LPCWSTR def_val, LPWSTR buffer, UINT len, LPCWSTR filename)
HRESULT WINAPI LcidToRfc1766W(LCID lcid, LPWSTR pszRfc1766, INT nChar)
static REFPROPVARIANT PROPVAR_CHANGE_FLAGS VARTYPE vt
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
HRESULT WINAPI CLSIDFromString(LPCOLESTR idstr, LPCLSID id)
HRESULT WINAPI StringFromCLSID(REFCLSID id, LPOLESTR *idstr)
HRESULT WINAPI SafeArrayGetUBound(SAFEARRAY *psa, UINT nDim, LONG *plUbound)
HRESULT WINAPI SafeArrayAccessData(SAFEARRAY *psa, void **ppvData)
HRESULT WINAPI SafeArrayUnaccessData(SAFEARRAY *psa)
UINT WINAPI SafeArrayGetDim(SAFEARRAY *psa)
HRESULT WINAPI SafeArrayGetLBound(SAFEARRAY *psa, UINT nDim, LONG *plLbound)
LPITEMIDLIST WINAPI SHBrowseForFolderW(LPBROWSEINFOW lpbi)
UINT WINAPI DragQueryFileW(HDROP hDrop, UINT lFile, LPWSTR lpszwFile, UINT lLength)
#define OBJCOMPAT_NOIPROPERTYSTORE
HRESULT WINAPI IUnknown_UIActivateIO(IUnknown *unknown, BOOL activate, LPMSG msg)
HANDLE WINAPI SHRemoveDefaultDialogFont(HWND hWnd)
HANDLE WINAPI SHAllocShared(LPCVOID lpvData, DWORD dwSize, DWORD dwProcId)
HRESULT WINAPI IUnknown_QueryServiceExec(IUnknown *lpUnknown, REFIID service, const GUID *group, DWORD cmdId, DWORD cmdOpt, VARIANT *pIn, VARIANT *pOut)
BOOL WINAPI IsCharXDigitW(WCHAR wc)
HMODULE WINAPI MLLoadLibraryW(LPCWSTR new_mod, HMODULE inst_hwnd, DWORD dwCrossCodePage)
static const WCHAR strRegistryPolicyW[]
#define OBJCOMPAT_CTXMENU_XPQCMFLAGS
BOOL WINAPI SHSimulateDrop(IDropTarget *pDrop, IDataObject *pDataObj, DWORD grfKeyState, PPOINTL lpPt, DWORD *pdwEffect)
VOID WINAPI IUnknown_Set(IUnknown **lppDest, IUnknown *lpUnknown)
BOOL WINAPI GUIDFromStringA(LPCSTR idstr, CLSID *id)
BOOL WINAPI SHIsLowMemoryMachine(DWORD dwType)
BOOL WINAPI SHSetIniStringW(LPCWSTR appName, LPCWSTR keyName, LPCWSTR str, LPCWSTR filename)
HRESULT WINAPI IUnknown_TranslateAcceleratorOCS(IUnknown *lpUnknown, LPMSG lpMsg, DWORD dwModifiers)
HRESULT WINAPI IUnknown_TranslateAcceleratorIO(IUnknown *lpUnknown, LPMSG lpMsg)
#define OBJCOMPAT_NOLEGACYWEBVIEW
LONG WINAPI SHSetWindowBits(HWND hwnd, INT offset, UINT mask, UINT flags)
HRESULT WINAPI IUnknown_CPContainerOnChanged(IUnknown *lpUnknown, DISPID dispID)
HPALETTE WINAPI SHCreateShellPalette(HDC hdc)
DWORD WINAPI StrCmpNICW(LPCWSTR lpszSrc, LPCWSTR lpszCmp, DWORD len)
HRESULT WINAPI IsQSForward(REFGUID pguidCmdGroup, ULONG cCmds, OLECMD *prgCmds)
HMENU WINAPI SHGetMenuFromID(HMENU hMenu, UINT uID)
HRESULT WINAPI IUnknown_HandleIRestrict(LPUNKNOWN lpUnknown, PVOID lpArg1, PVOID lpArg2, PVOID lpArg3, PVOID lpArg4)
DWORD WINAPI SHSendMessageBroadcastA(UINT uMsg, WPARAM wParam, LPARAM lParam)
HRESULT WINAPI GetAcceptLanguagesA(LPSTR langbuf, LPDWORD buflen)
HRESULT WINAPI SHLoadRegUIStringW(HKEY hkey, LPCWSTR value, LPWSTR buf, DWORD size)
DWORD WINAPI SHSendMessageBroadcastW(UINT uMsg, WPARAM wParam, LPARAM lParam)
BOOL WINAPI GUIDFromStringW(LPCWSTR idstr, CLSID *id)
HRESULT WINAPI IUnknown_QueryStatus(IUnknown *lpUnknown, REFGUID pguidCmdGroup, ULONG cCmds, OLECMD *prgCmds, OLECMDTEXT *pCmdText)
BOOL WINAPI IsOS(DWORD feature)
DWORD WINAPI FDSA_InsertItem(FDSA_info *info, DWORD where, const void *block)
DWORD WINAPI SHRegisterClassW(WNDCLASSW *lpWndClass)
HWND WINAPI SHCreateWorkerWindowA(WNDPROC wndProc, HWND hWndParent, DWORD dwExStyle, DWORD dwStyle, HMENU hMenu, LONG_PTR wnd_extra)
BOOL WINAPI GetSaveFileNameWrapW(LPOPENFILENAMEW ofn)
HRESULT WINAPI SHSetDefaultDialogFont(HWND hWnd, INT id)
INT WINAPI GetMenuPosFromID(HMENU hMenu, UINT wID)
DWORD WINAPI MLClearMLHInstance(DWORD x)
#define EnableModeless(type)
DWORD WINAPI GetUIVersion(void)
HANDLE WINAPI SHMapHandle(HANDLE hShared, DWORD dwSrcProcId, DWORD dwDstProcId, DWORD dwAccess, DWORD dwOptions)
VOID WINAPI SHWeakReleaseInterface(IUnknown *lpDest, IUnknown **lppUnknown)
DWORD WINAPI StrCmpCA(LPCSTR lpszSrc, LPCSTR lpszCmp)
BOOL WINAPI SHFlushSFCacheWrap(void)
HRESULT WINAPI SHPackDispParamsV(DISPPARAMS *params, VARIANTARG *args, UINT cnt, __ms_va_list valist)
DWORD WINAPI SHGetAppCompatFlags(DWORD dwUnknown)
struct tagPOLICYDATA * LPPOLICYDATA
HRESULT WINAPIV IUnknown_CPContainerInvokeParam(IUnknown *container, REFIID riid, DISPID dispId, VARIANTARG *buffer, DWORD cParams,...)
DWORD WINAPI SHCheckMenuItem(HMENU hMenu, UINT uID, BOOL bCheck)
DWORD WINAPI SHGetFileInfoWrapW(LPCWSTR path, DWORD dwFileAttributes, SHFILEINFOW *psfi, UINT sizeofpsfi, UINT flags)
HRESULT WINAPI SHWeakQueryInterface(IUnknown *pUnk, IUnknown *pInner, IID *riid, LPVOID *ppv)
BOOL WINAPI GetStringType3ExW(LPWSTR src, INT count, LPWORD type)
#define OBJCOMPAT_OTNEEDSSFCACHE
void WINAPI IUnknown_AtomicRelease(IUnknown **lpUnknown)
#define OBJCOMPAT_NEEDSFILESYSANCESTOR
HRESULT WINAPI IConnectionPoint_InvokeWithCancel(IConnectionPoint *iCP, DISPID dispId, DISPPARAMS *dispParams, DWORD unknown1, DWORD unknown2)
HRESULT WINAPI IUnknown_HasFocusIO(IUnknown *lpUnknown)
DWORD WINAPI SHGetIniStringW(LPCWSTR appName, LPCWSTR keyName, LPWSTR out, DWORD outLen, LPCWSTR filename)
HRESULT WINAPI IUnknown_ProfferService(IUnknown *lpUnknown, REFGUID service, IServiceProvider *pService, DWORD *pCookie)
HRESULT WINAPI IUnknown_EnableModeless(IUnknown *lpUnknown, BOOL bModeless)
WORD WINAPI VerQueryValueWrapW(LPVOID pBlock, LPCWSTR lpSubBlock, LPVOID *lplpBuffer, UINT *puLen)
HRESULT WINAPI ConnectToConnectionPoint(IUnknown *lpUnkSink, REFIID riid, BOOL fConnect, IUnknown *lpUnknown, LPDWORD lpCookie, IConnectionPoint **lppCP)
BOOL WINAPI PageSetupDlgWrapW(LPPAGESETUPDLGW pagedlg)
DWORD WINAPI SHWaitForSendMessageThread(HANDLE hand, DWORD dwTimeout)
HRESULT WINAPI CLSIDFromStringWrap(LPCWSTR idstr, CLSID *id)
DWORD WINAPI SHFillRectClr(HDC hDC, LPCRECT pRect, COLORREF cRef)
BOOL WINAPI SHGetPathFromIDListWrapW(LPCITEMIDLIST pidl, LPWSTR pszPath)
LRESULT CALLBACK SHDefWindowProc(HWND hWnd, UINT uMessage, WPARAM wParam, LPARAM lParam)
UINT WINAPI SHEnableMenuItem(HMENU hMenu, UINT wItemID, BOOL bEnable)
LPCSTR WINAPI PathSkipLeadingSlashesA(LPCSTR lpszSrc)
INT WINAPIV ShellMessageBoxWrapW(HINSTANCE hInstance, HWND hWnd, LPCWSTR lpText, LPCWSTR lpCaption, UINT uType,...)
HRESULT WINAPI IUnknown_OnFocusOCS(IUnknown *lpUnknown, BOOL fGotFocus)
DWORD WINAPI SHGetObjectCompatFlags(IUnknown *pUnk, const CLSID *clsid)
HRESULT WINAPI IUnknown_QueryService(IUnknown *, REFGUID, REFIID, LPVOID *)
#define OBJCOMPAT_CTXMENU_LIMITEDQI
DWORD WINAPI SHGetMachineInfo(DWORD dwFlags)
BOOL WINAPI MLIsMLHInstance(HINSTANCE hInst)
INT WINAPI SHFileOperationWrapW(LPSHFILEOPSTRUCTW lpFileOp)
HRESULT WINAPI SHCreatePropertyBagOnRegKey(HKEY hKey, LPCWSTR subkey, DWORD grfMode, REFIID riid, void **ppv)
INT WINAPI SHFormatDateTimeW(const FILETIME UNALIGNED *fileTime, DWORD *flags, LPWSTR buf, UINT size)
HRESULT WINAPI SHCoCreateInstanceAC(REFCLSID rclsid, LPUNKNOWN pUnkOuter, DWORD dwClsContext, REFIID iid, LPVOID *ppv)
HRESULT WINAPI SHIsExpandableFolder(LPSHELLFOLDER lpFolder, LPCITEMIDLIST pidl)
BOOL WINAPI PlaySoundWrapW(LPCWSTR pszSound, HMODULE hmod, DWORD fdwSound)
struct tagPOLICYDATA POLICYDATA
HRESULT WINAPI SKAllocValueW(DWORD flags, LPCWSTR subkey, LPCWSTR value, DWORD *type, LPVOID *data, DWORD *count)
BOOL WINAPI SHIsChildOrSelf(HWND hParent, HWND hChild)
DWORD WINAPI WhichPlatform(void)
DWORD SHLWAPI_ThreadRef_index
COLORREF WINAPI ColorHLSToRGB(WORD wHue, WORD wLuminosity, WORD wSaturation)
HRESULT WINAPI IUnknown_Exec(IUnknown *lpUnknown, REFGUID pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
HRESULT WINAPI IUnknown_GetClassID(IUnknown *lpUnknown, CLSID *clsid)
DWORD WINAPI SHGetCurColorRes(void)
BOOL WINAPI MLFreeLibrary(HMODULE hModule)
INT WINAPI SHStringFromGUIDW(REFGUID guid, LPWSTR lpszDest, INT cchMax)
BOOL WINAPI IsCharCntrlW(WCHAR wc)
PVOID WINAPI SHInterlockedCompareExchange(PVOID *dest, PVOID xchg, PVOID compare)
DWORD WINAPI SHWinHelpOnDemandW(HWND hwnd, LPCWSTR helpfile, DWORD flags1, VOID *ptr1, DWORD flags2)
UINT WINAPI SHDefExtractIconWrapW(LPCWSTR pszIconFile, int iIndex, UINT uFlags, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize)
BOOL WINAPI FDSA_Destroy(FDSA_info *info)
HRESULT WINAPI SHInvokeDefaultCommand(HWND hWnd, IShellFolder *lpFolder, LPCITEMIDLIST lpApidl)
PVOID WINAPI SHLockShared(HANDLE hShared, DWORD dwProcId)
HRESULT WINAPI SHInvokeCommand(HWND, IShellFolder *, LPCITEMIDLIST, DWORD)
BOOL WINAPI SHIsSameObject(IUnknown *lpInt1, IUnknown *lpInt2)
INT WINAPI SHFormatDateTimeA(const FILETIME UNALIGNED *fileTime, DWORD *flags, LPSTR buf, UINT size)
DWORD WINAPI SHRestrictionLookup(DWORD policy, LPCWSTR initial, LPPOLICYDATA polTable, LPDWORD polArr)
BOOL WINAPI ShellExecuteExWrapW(LPSHELLEXECUTEINFOW lpExecInfo)
HWND WINAPI SHCreateWorkerWindowW(WNDPROC wndProc, HWND hWndParent, DWORD dwExStyle, DWORD dwStyle, HMENU hMenu, LONG_PTR wnd_extra)
HRESULT WINAPI IUnknown_SetOwner(IUnknown *iface, IUnknown *pUnk)
HRESULT WINAPI SHGetInverseCMAP(LPDWORD dest, DWORD dwSize)
HRESULT WINAPI IUnknown_GetSite(LPUNKNOWN lpUnknown, REFIID iid, PVOID *lppSite)
#define OBJCOMPAT_NOTAFILESYSTEM
DWORD WINAPI SHGetRestriction(LPCWSTR lpSubKey, LPCWSTR lpSubName, LPCWSTR lpValue)
HRESULT WINAPI SHIShellFolder_EnumObjects(LPSHELLFOLDER lpFolder, HWND hwnd, SHCONTF flags, IEnumIDList **ppenum)
HRESULT WINAPI IUnknown_GetWindow(IUnknown *lpUnknown, HWND *lphWnd)
BOOL WINAPI GetOpenFileNameWrapW(LPOPENFILENAMEW ofn)
VOID WINAPI FixSlashesAndColonW(LPWSTR lpwstr)
HRESULT WINAPI QISearch(void *base, const QITAB *table, REFIID riid, void **ppv)
#define SHFORMATDT_UNSUPPORTED_FLAGS
HANDLE WINAPI SHSetTimerQueueTimer(HANDLE hQueue, WAITORTIMERCALLBACK pfnCallback, LPVOID pContext, DWORD dwDueTime, DWORD dwPeriod, LPCSTR lpszLibrary, DWORD dwFlags)
#define OBJCOMPAT_UNBINDABLE
HICON WINAPI ExtractIconWrapW(HINSTANCE hInstance, LPCWSTR lpszExeFileName, UINT nIconIndex)
#define OBJCOMPAT_NEEDSSTORAGEANCESTOR
DWORD WINAPI SHLoadFromPropertyBag(IUnknown *lpUnknown, IPropertyBag *lpPropBag)
HRESULT(WINAPI * DllGetVersion_func)(DLLVERSIONINFO *)
DWORD WINAPI GetFileVersionInfoSizeWrapW(LPCWSTR filename, LPDWORD handle)
BOOL WINAPI FDSA_DeleteItem(FDSA_info *info, DWORD where)
BOOL WINAPI IsCharDigitW(WCHAR wc)
HRESULT WINAPI SKGetValueW(DWORD flags, LPCWSTR subkey, LPCWSTR value, DWORD *type, void *data, DWORD *count)
HRESULT WINAPIV SHPackDispParams(DISPPARAMS *params, VARIANTARG *args, UINT cnt,...)
BOOL WINAPI SHSkipJunction(IBindCtx *pbc, const CLSID *pclsid)
struct SHELL_USER_SID SHELL_USER_SID
static const struct objcompat_entry objcompat_table[]
struct _enumWndData enumWndData
struct SHELL_USER_PERMISSION SHELL_USER_PERMISSION
BOOL WINAPI SHFreeShared(HANDLE hShared, DWORD dwProcId)
static HRESULT SHLWAPI_InvokeByIID(IConnectionPoint *iCP, REFIID iid, DISPID dispId, DISPPARAMS *dispParams)
DWORD WINAPI SHRemoveAllSubMenus(HMENU hMenu)
HMODULE WINAPI SHPinDllOfCLSID(REFIID refiid)
BOOL WINAPI IsCharBlankW(WCHAR wc)
DWORD WINAPI StrCmpICA(LPCSTR lpszSrc, LPCSTR lpszCmp)
HRESULT WINAPI IUnknown_OnFocusChangeIS(LPUNKNOWN lpUnknown, LPUNKNOWN pFocusObject, BOOL bFocus)
#define OBJCOMPAT_NO_WEBVIEW
HRESULT WINAPI IConnectionPoint_SimpleInvoke(IConnectionPoint *iCP, DISPID dispId, DISPPARAMS *dispParams)
UINT WINAPI ZoneComputePaneSize(HWND hwnd)
COLORREF WINAPI ColorAdjustLuma(COLORREF cRGB, int dwLuma, BOOL bUnknown)
void WINAPI SHPropagateMessage(HWND hWnd, UINT uiMsgId, WPARAM wParam, LPARAM lParam, BOOL bSend)
DWORD WINAPI WNetGetLastErrorWrapW(LPDWORD lpError, LPWSTR lpErrorBuf, DWORD nErrorBufSize, LPWSTR lpNameBuf, DWORD nNameBufSize)
static WORD ConvertHue(int wHue, WORD wMid1, WORD wMid2)
HRESULT WINAPI MayQSForward(IUnknown *lpUnknown, PVOID lpReserved, REFGUID riidCmdGrp, ULONG cCmds, OLECMD *prgCmds, OLECMDTEXT *pCmdText)
DWORD WINAPI StrCmpCW(LPCWSTR lpszSrc, LPCWSTR lpszCmp)
HINSTANCE shlwapi_hInstance
#define FDSA_FLAG_INTERNAL_ALLOC
struct SHELL_USER_SID * PSHELL_USER_SID
DWORD WINAPI WNetRestoreConnectionWrapW(HWND hwndOwner, LPWSTR lpszDevice)
UINT WINAPI DragQueryFileWrapW(HDROP hDrop, UINT lFile, LPWSTR lpszFile, UINT lLength)
struct SHELL_USER_PERMISSION * PSHELL_USER_PERMISSION
BOOL WINAPI SHLoadMenuPopup(HINSTANCE hInst, LPCWSTR szName)
static BOOL CALLBACK SHLWAPI_EnumChildProc(HWND hWnd, LPARAM lParam)
HRESULT WINAPI MayExecForward(IUnknown *lpUnknown, INT iUnk, REFGUID pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
HKEY WINAPI SHGetShellKey(DWORD flags, LPCWSTR sub_key, BOOL create)
HRESULT WINAPI SKSetValueW(DWORD flags, LPCWSTR subkey, LPCWSTR value, DWORD type, void *data, DWORD count)
#define OBJCOMPAT_COCREATESHELLFOLDERONLY
PSECURITY_DESCRIPTOR WINAPI GetShellSecurityDescriptor(const PSHELL_USER_PERMISSION *apUserPerm, int cUserPerm)
BOOL WINAPI SHAboutInfoW(LPWSTR, DWORD)
int WINAPI SHSearchMapInt(const int *lpKeys, const int *lpValues, int iLen, int iKey)
DWORD WINAPI StrCmpNICA(LPCSTR lpszSrc, LPCSTR lpszCmp, DWORD len)
DWORD WINAPI StrCmpNCA(LPCSTR lpszSrc, LPCSTR lpszCmp, INT len)
HRESULT WINAPI IUnknown_QueryServiceForWebBrowserApp(IUnknown *lpUnknown, REFGUID riid, LPVOID *lppOut)
INT WINAPI ZoneCheckUrlExW(LPWSTR szURL, PVOID pUnknown, DWORD dwUnknown2, DWORD dwUnknown3, DWORD dwUnknown4, DWORD dwUnknown5, DWORD dwUnknown6, DWORD dwUnknown7)
HWND WINAPI SHSetParentHwnd(HWND hWnd, HWND hWndParent)
DWORD WINAPI StrCmpICW(LPCWSTR lpszSrc, LPCWSTR lpszCmp)
void WINAPI SHChangeNotifyWrap(LONG wEventId, UINT uFlags, LPCVOID dwItem1, LPCVOID dwItem2)
void WINAPI SHUnregisterClassesA(HINSTANCE hInst, LPCSTR *lppClasses, INT iCount)
LPITEMIDLIST WINAPI SHBrowseForFolderWrapW(LPBROWSEINFOW lpBi)
BOOL WINAPI SHGetNewLinkInfoWrapW(LPCWSTR pszLinkTo, LPCWSTR pszDir, LPWSTR pszName, BOOL *pfMustCopy, UINT uFlags)
BOOL WINAPI GetFileVersionInfoWrapW(LPCWSTR filename, DWORD handle, DWORD datasize, LPVOID data)
INT WINAPI SHVerbExistsNA(LPSTR verb, PVOID pUnknown, PVOID pUnknown2, DWORD dwUnknown3)
HMODULE WINAPI MLLoadLibraryA(LPCSTR new_mod, HMODULE inst_hwnd, DWORD dwCrossCodePage)
DWORD WINAPI SHMenuIndexFromID(HMENU hMenu, UINT uID)
BOOL WINAPI PrintDlgWrapW(LPPRINTDLGW printdlg)
HRESULT WINAPI SHGetViewStatePropertyBag(LPCITEMIDLIST pidl, LPWSTR bag_name, DWORD flags, REFIID riid, void **ppv)
DWORD WINAPI StrCmpNCW(LPCWSTR lpszSrc, LPCWSTR lpszCmp, INT len)
BOOL WINAPI FDSA_Initialize(DWORD block_size, DWORD inc, FDSA_info *info, void *mem, DWORD init_blocks)
BOOL WINAPI IsCharPunctW(WCHAR wc)
BOOL WINAPI SHUnlockShared(LPVOID lpView)
void WINAPI SHUnregisterClassesW(HINSTANCE hInst, LPCWSTR *lppClasses, INT iCount)
HRESULT WINAPI RegisterDefaultAcceptHeaders(LPBC lpBC, IUnknown *lpUnknown)
VOID WINAPI ColorRGBToHLS(COLORREF cRGB, LPWORD pwHue, LPWORD pwLuminance, LPWORD pwSaturation)
HRESULT WINAPI IUnknown_SetSite(IUnknown *obj, IUnknown *site)
DWORD WINAPI MLSetMLHInstance(HINSTANCE hInst, HANDLE hHeap)
HRESULT WINAPI GetAcceptLanguagesW(LPWSTR langbuf, LPDWORD buflen)
INT WINAPI SHStringFromGUIDA(REFGUID guid, LPSTR lpszDest, INT cchMax)
DWORD WINAPI SHRegisterClassA(WNDCLASSA *wndclass)
BOOL WINAPI SHAboutInfoA(LPSTR lpszDest, DWORD dwDestLen)
BOOL WINAPI SHQueueUserWorkItem(LPTHREAD_START_ROUTINE pfnCallback, LPVOID pContext, LONG lPriority, DWORD_PTR dwTag, DWORD_PTR *pdwId, LPCSTR pszModule, DWORD dwFlags)
HRESULT WINAPI IConnectionPoint_OnChanged(IConnectionPoint *lpCP, DISPID dispID)
HRESULT WINAPI SHPropertyBag_ReadLONG(IPropertyBag *ppb, LPCWSTR pszPropName, LPLONG pValue)
HRESULT WINAPI SKDeleteValueW(DWORD flags, LPCWSTR subkey, LPCWSTR value)
DWORD WINAPI SHWinHelpOnDemandA(HWND hwnd, LPCSTR helpfile, DWORD flags1, VOID *ptr1, DWORD flags2)
DWORD WINAPI SHGetValueW(HKEY hKey, LPCWSTR lpszSubKey, LPCWSTR lpszValue, LPDWORD pwType, LPVOID pvData, LPDWORD pcbData)
DWORD WINAPI SHQueryValueExW(HKEY hKey, LPCWSTR lpszValue, LPDWORD lpReserved, LPDWORD pwType, LPVOID pvData, LPDWORD pcbData)
LPWSTR WINAPI StrCatBuffW(LPWSTR lpszStr, LPCWSTR lpszCat, INT cchMax)
LPWSTR WINAPI StrCpyNW(LPWSTR dst, LPCWSTR src, int count)
HRESULT WINAPI SHLoadIndirectString(LPCWSTR src, LPWSTR dst, UINT dst_len, void **reserved)
BOOL WINAPI StrToIntExW(LPCWSTR lpszStr, DWORD dwFlags, LPINT lpiRet)
BOOL WINAPI GetFileVersionInfoW(LPCWSTR filename, DWORD handle, DWORD datasize, LPVOID data)
BOOL WINAPI VerQueryValueW(LPCVOID pBlock, LPCWSTR lpSubBlock, LPVOID *lplpBuffer, PUINT puLen)
DWORD WINAPI GetFileVersionInfoSizeW(LPCWSTR filename, LPDWORD handle)
static void *static void *static LPDIRECTPLAY IUnknown * pUnk
static unsigned char buff[32768]
HANDLE NTAPI CreateFileMappingA(IN HANDLE hFile, IN LPSECURITY_ATTRIBUTES lpFileMappingAttributes, IN DWORD flProtect, IN DWORD dwMaximumSizeHigh, IN DWORD dwMaximumSizeLow, IN LPCSTR lpName)
WDF_INTERRUPT_POLICY policy
GLint GLint GLint GLint GLint x
GLuint GLuint GLsizei GLenum type
GLuint GLuint GLsizei count
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
GLenum const GLfloat * params
GLenum GLuint GLenum GLsizei const GLchar * buf
GLuint GLsizei GLsizei * length
GLenum GLuint GLsizei bufsize
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
HLOCAL NTAPI LocalAlloc(UINT uFlags, SIZE_T dwBytes)
VOID NTAPI GlobalMemoryStatus(LPMEMORYSTATUS lpBuffer)
HLOCAL NTAPI LocalFree(HLOCAL hMem)
BOOL WINAPI GetCurrentHwProfileA(LPHW_PROFILE_INFOA lpHwProfileInfo)
HRESULT WINAPI SHDefExtractIconW(LPCWSTR pszIconFile, int iIndex, UINT uFlags, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize)
VOID WINAPI CoTaskMemFree(LPVOID ptr)
static LRESULT WINAPI wndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
#define PROCESS_DUP_HANDLE
#define InterlockedCompareExchangePointer
static DWORD block_size(DWORD block)
BOOL WINAPI GetStringTypeW(DWORD type, LPCWSTR src, INT count, LPWORD chartype)
LCID WINAPI GetUserDefaultLCID(void)
const char * appName(const char *argv0)
int WINAPI lstrcmpiA(LPCSTR lpString1, LPCSTR lpString2)
int WINAPI lstrcmpiW(LPCWSTR lpString1, LPCWSTR lpString2)
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
int WINAPI lstrcmpW(LPCWSTR lpString1, LPCWSTR lpString2)
int WINAPI lstrcmpA(LPCSTR lpString1, LPCSTR lpString2)
TCHAR szTitle[MAX_LOADSTRING]
#define memcpy(s1, s2, n)
#define memmove(s1, s2, n)
#define ERROR_FILE_NOT_FOUND
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
#define sprintf(buf, format,...)
static PEXPLICIT_ACCESSW *static HMODULE hmod
const IID IID_IObjectWithSite
static DWORD DWORD void LPSTR DWORD cch
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
static HANDLE ULONG_PTR dwData
static WAITORTIMERCALLBACK
static IActiveScriptSite * site
static const struct access_res create[16]
static __ms_va_list valist
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
@ SHKEY_Subkey_Associations
@ SHKEY_Subkey_ResourceName
static VARIANTARG static DISPID
INTERNETFEATURELIST feature
struct _SECURITY_DESCRIPTOR SECURITY_DESCRIPTOR
struct _ACCESS_ALLOWED_ACE ACCESS_ALLOWED_ACE
#define _Out_writes_(size)
#define VER_PLATFORM_WIN32_NT
#define VER_PLATFORM_WIN32_WINDOWS
#define VER_PLATFORM_WIN32s
#define LOCALE_USER_DEFAULT
interface IBindCtx * LPBC
BSTR WINAPI SysAllocString(LPCOLESTR str)
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
const GUID IID_IConnectionPointContainer
const GUID IID_IPropertyNotifySink
const GUID IID_IOleWindow
const GUID IID_IEnumFORMATETC
const GUID IID_IOleControlSite
BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST pidl, LPWSTR pszPath)
BOOL WINAPI PlaySoundW(LPCWSTR pszSoundW, HMODULE hmod, DWORD fdwSound)
static const WCHAR szName[]
const GUID IID_IPersistPropertyBag
#define IsEqualGUID(rguid1, rguid2)
#define IsEqualIID(riid1, riid2)
DWORD WINAPI GetVersion()
_Check_return_ _CRTIMP _CONST_RETURN char *__cdecl strrchr(_In_z_ const char *_Str, _In_ int _Ch)
BOOL WINAPI SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR pSecurityDescriptor, BOOL bDaclPresent, PACL pDacl, BOOL bDaclDefaulted)
HICON WINAPI ExtractIconW(HINSTANCE hInstance, LPCWSTR lpszFile, UINT nIconIndex)
DWORD_PTR WINAPI SHGetFileInfoW(LPCWSTR path, DWORD dwFileAttributes, SHFILEINFOW *psfi, UINT sizeofpsfi, UINT flags)
_In_ LPCSTR _Out_ BOOL * pfMustCopy
BOOL WINAPI SHGetNewLinkInfoW(LPCWSTR pszLinkTo, LPCWSTR pszDir, LPWSTR pszName, BOOL *pfMustCopy, UINT uFlags)
BOOL WINAPI DECLSPEC_HOTPATCH ShellExecuteExW(LPSHELLEXECUTEINFOW sei)
int WINAPI SHFileOperationW(LPSHFILEOPSTRUCTW lpFileOp)
#define IInputObjectSite_Release(p)
#define IInputObject_TranslateAcceleratorIO(p, a)
#define IInputObject_HasFocusIO(p)
#define IQueryInfo_Release(p)
#define IInputObject_Release(p)
#define IQueryInfo_GetInfoFlags(p, a)
#define IInputObjectSite_OnFocusChangeIS(p, a, b)
#define IInputObject_UIActivateIO(p, a, b)
#define OS_WIN2000TERMINAL
#define OS_WIN95ORGREATER
#define OS_WIN2000ORGREATER_ALT
#define OS_SMALLBUSINESSSERVER
#define OS_WIN98ORGREATER
#define OS_WIN2000ADVSERVER
#define OS_WIN2000ORGREATER
#define OS_TERMINALSERVER
#define OS_TERMINALCLIENT
#define OS_WIN32SORGREATER
#define OS_WIN2000DATACENTER
#define OS_TERMINALREMOTEADMIN
#define OS_FASTUSERSWITCHING
#define OS_PERSONALTERMINALSERVER
#define OS_WELCOMELOGONUI
struct _DllVersionInfo DLLVERSIONINFO
HRESULT WINAPI SHPropertyBag_WriteRECTL(IPropertyBag *ppb, LPCWSTR pszPropName, const RECTL *prcl)
HRESULT WINAPI SHPropertyBag_ReadDWORD(IPropertyBag *ppb, LPCWSTR pszPropName, DWORD *pdwValue)
HRESULT WINAPI SHPropertyBag_ReadSHORT(IPropertyBag *ppb, LPCWSTR pszPropName, SHORT *psValue)
HRESULT WINAPI SHPropertyBag_ReadGUID(IPropertyBag *ppb, LPCWSTR pszPropName, GUID *pguid)
BOOL WINAPI SHPropertyBag_ReadBOOLOld(IPropertyBag *ppb, LPCWSTR pszPropName, BOOL bDefValue)
HRESULT WINAPI SHPropertyBag_ReadPOINTS(IPropertyBag *ppb, LPCWSTR pszPropName, POINTS *ppts)
HRESULT WINAPI SHPropertyBag_WriteBOOL(IPropertyBag *ppb, LPCWSTR pszPropName, BOOL bValue)
HRESULT WINAPI SHPropertyBag_ReadPOINTL(IPropertyBag *ppb, LPCWSTR pszPropName, POINTL *pptl)
HRESULT WINAPI SHPropertyBag_WriteGUID(IPropertyBag *ppb, LPCWSTR pszPropName, const GUID *pguid)
HRESULT WINAPI SHPropertyBag_WriteSHORT(IPropertyBag *ppb, LPCWSTR pszPropName, SHORT sValue)
HRESULT WINAPI SHPropertyBag_ReadStr(IPropertyBag *ppb, LPCWSTR pszPropName, LPWSTR pszDst, int cchMax)
HRESULT WINAPI SHPropertyBag_ReadBSTR(IPropertyBag *ppb, LPCWSTR pszPropName, BSTR *pbstr)
HRESULT WINAPI SHPropertyBag_ReadRECTL(IPropertyBag *ppb, LPCWSTR pszPropName, RECTL *prcl)
HRESULT WINAPI SHPropertyBag_Delete(IPropertyBag *ppb, LPCWSTR pszPropName)
PVOID WINAPI SHLockSharedEx(HANDLE hData, DWORD dwProcessId, BOOL bWriteAccess)
HRESULT WINAPI SHPropertyBag_ReadStream(IPropertyBag *ppb, LPCWSTR pszPropName, IStream **ppStream)
HRESULT WINAPI SHPropertyBag_ReadBOOL(IPropertyBag *ppb, LPCWSTR pszPropName, BOOL *pbValue)
HRESULT WINAPI SHLoadRegUIStringA(HKEY hkey, LPCSTR value, LPSTR buf, DWORD size)
HRESULT WINAPI SHPropertyBag_WriteStr(IPropertyBag *ppb, LPCWSTR pszPropName, LPCWSTR pszValue)
HRESULT WINAPI SHPropertyBag_WriteStream(IPropertyBag *ppb, LPCWSTR pszPropName, IStream *pStream)
HRESULT WINAPI SHPropertyBag_WritePOINTL(IPropertyBag *ppb, LPCWSTR pszPropName, const POINTL *pptl)
HRESULT WINAPI SHPropertyBag_WritePOINTS(IPropertyBag *ppb, LPCWSTR pszPropName, const POINTS *ppts)
HRESULT WINAPI SHPropertyBag_WriteLONG(IPropertyBag *ppb, LPCWSTR pszPropName, LONG lValue)
HRESULT WINAPI SHPropertyBag_ReadType(IPropertyBag *ppb, LPCWSTR pszPropName, VARIANTARG *pvarg, VARTYPE vt)
HRESULT WINAPI SHPropertyBag_WriteDWORD(IPropertyBag *ppb, LPCWSTR pszPropName, DWORD dwValue)
ITEMIDLIST UNALIGNED * LPITEMIDLIST
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
DWORD dwInheritAccessMask
SID_IDENTIFIER_AUTHORITY sidAuthority
ULONG dwOSVersionInfoSize
TW_UINT32 TW_UINT16 TW_UINT16 MSG
HRESULT WINAPI DECLSPEC_HOTPATCH VariantChangeType(VARIANTARG *pvargDest, VARIANTARG *pvargSrc, USHORT wFlags, VARTYPE vt)
HRESULT WINAPI DECLSPEC_HOTPATCH VariantClear(VARIANTARG *pVarg)
void WINAPI VariantInit(VARIANTARG *pVarg)
#define FORMAT_MESSAGE_FROM_STRING
#define FILE_MAP_ALL_ACCESS
DWORD WINAPI GetCurrentProcessId(void)
#define FORMAT_MESSAGE_ALLOCATE_BUFFER
#define DOCKINFO_UNDOCKED
DWORD(WINAPI * LPTHREAD_START_ROUTINE)(LPVOID)
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD dwTimeout
_In_ ULONG _In_ CLIPOBJ _In_ RECTL * prcl
_In_ ULONG _In_opt_ PVOID pvData
#define __ms_va_end(list)
#define __ms_va_start(list, arg)
#define E_NOT_SUFFICIENT_BUFFER
#define DISP_E_BADVARTYPE
#define DRAGDROP_E_NOTREGISTERED
#define HRESULT_FROM_WIN32(x)
int WINAPI GetObjectW(_In_ HANDLE h, _In_ int c, _Out_writes_bytes_opt_(c) LPVOID pv)
int WINAPI GetDeviceCaps(_In_opt_ HDC, _In_ int)
COLORREF WINAPI SetBkColor(_In_ HDC, _In_ COLORREF)
BOOL WINAPI ExtTextOutA(_In_ HDC hdc, _In_ int x, _In_ int y, _In_ UINT options, _In_opt_ const RECT *lprect, _In_reads_opt_(c) LPCSTR lpString, _In_ UINT c, _In_reads_opt_(c) const INT *lpDx)
HFONT WINAPI CreateFontIndirectW(_In_ const LOGFONTW *)
HPALETTE WINAPI CreateHalftonePalette(_In_opt_ HDC)
#define WT_EXECUTEINIOTHREAD
#define WT_EXECUTELONGFUNCTION
#define HKEY_LOCAL_MACHINE
#define HKEY_CURRENT_USER
#define HKEY_CLASSES_ROOT
int WINAPI ReleaseDC(_In_opt_ HWND, _In_ HDC)
#define SetWindowLongPtrA
HMENU WINAPI CreatePopupMenu(void)
UINT WINAPI GetMenuDefaultItem(_In_ HMENU hMenu, _In_ UINT fByPos, _In_ UINT gmdiFlags)
HWND WINAPI CreateWindowExA(_In_ DWORD dwExStyle, _In_opt_ LPCSTR lpClassName, _In_opt_ LPCSTR lpWindowName, _In_ DWORD dwStyle, _In_ int X, _In_ int Y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam)
HANDLE WINAPI GetPropA(_In_ HWND, _In_ LPCSTR)
BOOL WINAPI UnregisterClassA(_In_ LPCSTR, HINSTANCE)
LRESULT WINAPI DefWindowProcW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
int WINAPI GetMenuItemCount(_In_opt_ HMENU)
LRESULT WINAPI DefWindowProcA(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI PostMessageW(_In_opt_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
HWND WINAPI SetParent(_In_ HWND, _In_opt_ HWND)
LONG WINAPI SetWindowLongW(_In_ HWND, _In_ int, _In_ LONG)
LONG WINAPI GetWindowLongW(_In_ HWND, _In_ int)
#define IS_INTRESOURCE(i)
ATOM WINAPI RegisterClassW(_In_ CONST WNDCLASSW *)
LRESULT WINAPI SendMessageA(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
#define SPI_GETICONTITLELOGFONT
HCURSOR WINAPI LoadCursorW(_In_opt_ HINSTANCE, _In_ LPCWSTR)
BOOL WINAPI EnumChildWindows(_In_opt_ HWND, _In_ WNDENUMPROC, _In_ LPARAM)
int WINAPI MessageBoxW(_In_opt_ HWND hWnd, _In_opt_ LPCWSTR lpText, _In_opt_ LPCWSTR lpCaption, _In_ UINT uType)
LRESULT WINAPI SendMessageTimeoutW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM, _In_ UINT, _In_ UINT, _Out_opt_ PDWORD_PTR)
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
DWORD WINAPI CheckMenuItem(_In_ HMENU, _In_ UINT, _In_ UINT)
BOOL WINAPI IsWindowUnicode(_In_ HWND)
DWORD WINAPI MsgWaitForMultipleObjectsEx(_In_ DWORD nCount, _In_reads_opt_(nCount) CONST HANDLE *pHandles, _In_ DWORD dwMilliseconds, _In_ DWORD dwWakeMask, _In_ DWORD dwFlags)
ATOM WINAPI RegisterClassA(_In_ CONST WNDCLASSA *)
HMENU WINAPI GetSubMenu(_In_ HMENU, _In_ int)
BOOL WINAPI IsChild(_In_ HWND, _In_ HWND)
LRESULT WINAPI SendMessageTimeoutA(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM, _In_ UINT, _In_ UINT, _Out_opt_ PDWORD_PTR)
BOOL WINAPI PeekMessageW(_Out_ LPMSG, _In_opt_ HWND, _In_ UINT, _In_ UINT, _In_ UINT)
HWND WINAPI CreateWindowExW(_In_ DWORD dwExStyle, _In_opt_ LPCWSTR lpClassName, _In_opt_ LPCWSTR lpWindowName, _In_ DWORD dwStyle, _In_ int X, _In_ int Y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam)
BOOL WINAPI RemoveMenu(_In_ HMENU, _In_ UINT, _In_ UINT)
BOOL WINAPI SetPropW(_In_ HWND, _In_ LPCWSTR, _In_opt_ HANDLE)
HDC WINAPI GetDC(_In_opt_ HWND)
BOOL WINAPI GetClassInfoA(_In_opt_ HINSTANCE, _In_ LPCSTR, _Out_ LPWNDCLASSA)
BOOL WINAPI SystemParametersInfoW(_In_ UINT uiAction, _In_ UINT uiParam, _Inout_opt_ PVOID pvParam, _In_ UINT fWinIni)
#define MAKEINTRESOURCEA(i)
HWND WINAPI GetParent(_In_ HWND)
HANDLE WINAPI GetPropW(_In_ HWND, _In_ LPCWSTR)
BOOL WINAPI DestroyMenu(_In_ HMENU)
BOOL WINAPI GetMenuItemInfoW(_In_ HMENU, _In_ UINT, _In_ BOOL, _Inout_ LPMENUITEMINFOW)
BOOL WINAPI UnregisterClassW(_In_ LPCWSTR, HINSTANCE)
HMENU WINAPI LoadMenuW(_In_opt_ HINSTANCE, _In_ LPCWSTR)
LRESULT(CALLBACK * WNDPROC)(HWND, UINT, WPARAM, LPARAM)
BOOL WINAPI GetClassInfoW(_In_opt_ HINSTANCE, _In_ LPCWSTR, _Out_ LPWNDCLASSW)
#define SetWindowLongPtrW
UINT WINAPI RegisterClipboardFormatA(_In_ LPCSTR)
BOOL WINAPI EnableMenuItem(_In_ HMENU, _In_ UINT, _In_ UINT)
BOOL WINAPI PostMessageA(_In_opt_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
HANDLE WINAPI RemovePropA(_In_ HWND, _In_ LPCSTR)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
HCURSOR WINAPI LoadCursorA(_In_opt_ HINSTANCE, _In_ LPCSTR)
DWORD WINAPI WNetRestoreConnectionW(HWND hwndOwner, LPCWSTR lpszDevice)
DWORD WINAPI WNetGetLastErrorW(LPDWORD lpError, LPWSTR lpErrorBuf, DWORD nErrorBufSize, LPWSTR lpNameBuf, DWORD nNameBufSize)
#define DUPLICATE_SAME_ACCESS
#define DUPLICATE_CLOSE_SOURCE
struct _OSVERSIONINFOA OSVERSIONINFOA
struct _TOKEN_USER * PTOKEN_USER
#define ACCESS_ALLOWED_ACE_TYPE
#define ACCESS_DENIED_ACE_TYPE
#define SECURITY_DESCRIPTOR_REVISION
#define SECURITY_NULL_SID_AUTHORITY
static unsigned int block