40#include "shdeprecated.h"
51#include "wine/unicode.h"
103 TRACE(
"(%p,%ld,%ld,%08lx,%08lx)\n", hShared, dwDstProcId, dwSrcProcId,
108 TRACE(
"Returning handle NULL\n");
113 if (dwDstProcId == dwMyProcId)
121 if (dwSrcProcId == dwMyProcId)
133 if (dwSrcProcId != dwMyProcId)
137 if (dwDstProcId != dwMyProcId)
141 TRACE(
"Returning handle %p\n", hRet);
173 TRACE(
"(%p,%ld,%ld)\n", lpvData,
dwSize, dwProcId);
225 TRACE(
"(%p %d %d)\n", hShared, dwProcId, bWriteAccess);
238 return (
char *) pMapped +
sizeof(
DWORD);
265 TRACE(
"(%p %ld)\n", hShared, dwProcId);
275 return (
char *) pMapped +
sizeof(
DWORD);
295 TRACE(
"(%p)\n", lpView);
317 TRACE(
"(%p %ld)\n", hShared, dwProcId);
348 static const WCHAR szProperty[] = {
'{',
'D',
'0',
'F',
'C',
'A',
'4',
'2',
'0',
349 '-',
'D',
'3',
'F',
'5',
'-',
'1',
'1',
'C',
'F',
'-',
'B',
'2',
'1',
'1',
'-',
'0',
350 '0',
'A',
'A',
'0',
'0',
'4',
'A',
'E',
'8',
'3',
'7',
'}',
'\0' };
355 IWebBrowserApp* pBrowser;
357 TRACE(
"(%p, %p)\n", lpBC, lpUnknown);
374 char szKeyBuff[128], szValueBuff[128];
375 DWORD dwKeySize, dwValueSize, dwRet = 0, dwCount = 0, dwNumValues, dwType;
376 FORMATETC* formatList, *
format;
379 TRACE(
"Registering formats and creating IEnumFORMATETC instance\n");
382 "Version\\Internet Settings\\Accepted Documents", &hDocs))
391 dwKeySize =
sizeof(szKeyBuff);
392 dwRet =
RegEnumValueA(hDocs,dwCount,szKeyBuff,&dwKeySize,0,&dwType,0,0);
396 dwNumValues = dwCount;
399 format = formatList =
malloc(dwCount *
sizeof(FORMATETC));
415 while(!dwRet && dwCount < dwNumValues)
417 dwKeySize =
sizeof(szKeyBuff);
418 dwValueSize =
sizeof(szValueBuff);
419 dwRet =
RegEnumValueA(hDocs, dwCount, szKeyBuff, &dwKeySize, 0, &dwType,
420 (
PBYTE)szValueBuff, &dwValueSize);
463 IEnumFORMATETC_Release(pIEnumFormatEtc);
474 TRACE(
"Retrieved IEnumFORMATETC property\n");
477 pIEnumFormatEtc =
NULL;
479 if (
hr ==
S_OK && pIEnumFormatEtc)
482 hr = IEnumFORMATETC_Clone(pIEnumFormatEtc, &pClone);
487 IEnumFORMATETC_Release(pClone);
490 IUnknown_Release(pIUnknown);
496 IWebBrowserApp_Release(pBrowser);
520 sprintf(xguid,
"{%08lX-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
550 static const WCHAR wszFormat[] = {
'{',
'%',
'0',
'8',
'l',
'X',
'-',
'%',
'0',
'4',
'X',
'-',
'%',
'0',
'4',
'X',
'-',
551 '%',
'0',
'2',
'X',
'%',
'0',
'2',
'X',
'-',
'%',
'0',
'2',
'X',
'%',
'0',
'2',
'X',
'%',
'0',
'2',
'X',
'%',
'0',
'2',
552 'X',
'%',
'0',
'2',
'X',
'%',
'0',
'2',
'X',
'}',0};
611 static const WCHAR szIEKey[] = {
'S',
'O',
'F',
'T',
'W',
'A',
'R',
'E',
'\\',
612 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'I',
'n',
't',
'e',
'r',
'n',
'e',
't',
613 ' ',
'E',
'x',
'p',
'l',
'o',
'r',
'e',
'r',
'\0' };
614 static const WCHAR szWinNtKey[] = {
'S',
'O',
'F',
'T',
'W',
'A',
'R',
'E',
'\\',
615 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
' ',
616 'N',
'T',
'\\',
'C',
'u',
'r',
'r',
'e',
'n',
't',
'V',
'e',
'r',
's',
'i',
'o',
'n',
'\0' };
617 static const WCHAR szWinKey[] = {
'S',
'O',
'F',
'T',
'W',
'A',
'R',
'E',
'\\',
618 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
619 'C',
'u',
'r',
'r',
'e',
'n',
't',
'V',
'e',
'r',
's',
'i',
'o',
'n',
'\0' };
620 static const WCHAR szRegKey[] = {
'S',
'O',
'F',
'T',
'W',
'A',
'R',
'E',
'\\',
621 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'I',
'n',
't',
'e',
'r',
'n',
'e',
't',
622 ' ',
'E',
'x',
'p',
'l',
'o',
'r',
'e',
'r',
'\\',
623 'R',
'e',
'g',
'i',
's',
't',
'r',
'a',
't',
'i',
'o',
'n',
'\0' };
624 static const WCHAR szVersion[] = {
'V',
'e',
'r',
's',
'i',
'o',
'n',
'\0' };
625 static const WCHAR szCustomized[] = {
'C',
'u',
's',
't',
'o',
'm',
'i',
'z',
'e',
'd',
626 'V',
'e',
'r',
's',
'i',
'o',
'n',
'\0' };
627 static const WCHAR szOwner[] = {
'R',
'e',
'g',
'i',
's',
't',
'e',
'r',
'e',
'd',
628 'O',
'w',
'n',
'e',
'r',
'\0' };
629 static const WCHAR szOrg[] = {
'R',
'e',
'g',
'i',
's',
't',
'e',
'r',
'e',
'd',
630 'O',
'r',
'g',
'a',
'n',
'i',
'z',
'a',
't',
'i',
'o',
'n',
'\0' };
631 static const WCHAR szProduct[] = {
'P',
'r',
'o',
'd',
'u',
'c',
't',
'I',
'd',
'\0' };
632 static const WCHAR szUpdate[] = {
'I',
'E',
'A',
'K',
633 'U',
'p',
'd',
'a',
't',
'e',
'U',
'r',
'l',
'\0' };
634 static const WCHAR szHelp[] = {
'I',
'E',
'A',
'K',
635 'H',
'e',
'l',
'p',
'S',
't',
'r',
'i',
'n',
'g',
'\0' };
658 dwLen = 30 - dwStrLen;
660 szCustomized, &dwType,
buff+dwStrLen, &dwLen);
724 ULONG cCmds, OLECMD *prgCmds, OLECMDTEXT* pCmdText)
728 TRACE(
"(%p,%p,%ld,%p,%p)\n",lpUnknown, pguidCmdGroup, cCmds, prgCmds, pCmdText);
734 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IOleCommandTarget,
739 hRet = IOleCommandTarget_QueryStatus(lpOle, pguidCmdGroup, cCmds,
741 IOleCommandTarget_Release(lpOle);
768 TRACE(
"(%p,%p,%ld,%ld,%p,%p)\n",lpUnknown, pguidCmdGroup, nCmdID,
769 nCmdexecopt, pvaIn, pvaOut);
775 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IOleCommandTarget,
779 hRet = IOleCommandTarget_Exec(lpOle, pguidCmdGroup, nCmdID,
780 nCmdexecopt, pvaIn, pvaOut);
781 IOleCommandTarget_Release(lpOle);
812 if (new_flags !=
ret)
876 if(!lpUnknown || (fConnect && !lpUnkSink))
883 (
void**)&lpContainer);
886 hRet = IConnectionPointContainer_FindConnectionPoint(lpContainer,
riid, &lpCP);
891 hRet = IConnectionPoint_Unadvise(lpCP, *lpCookie);
893 hRet = IConnectionPoint_Advise(lpCP, lpUnkSink, lpCookie);
901 IConnectionPoint_Release(lpCP);
904 IConnectionPointContainer_Release(lpContainer);
923 if (lpszSrc && lpszSrc[0] ==
'/' && lpszSrc[1] ==
'/')
946 TRACE(
"(%p %p)\n", lpInt1, lpInt2);
948 if (!lpInt1 || !lpInt2)
951 if (lpInt1 == lpInt2)
954 if (IUnknown_QueryInterface(lpInt1, &
IID_IUnknown, (
void**)&lpUnknown1) !=
S_OK)
957 if (IUnknown_QueryInterface(lpInt2, &
IID_IUnknown, (
void**)&lpUnknown2) !=
S_OK)
959 IUnknown_Release(lpUnknown1);
963 ret = lpUnknown1 == lpUnknown2;
965 IUnknown_Release(lpUnknown1);
966 IUnknown_Release(lpUnknown2);
993 TRACE(
"(%p,%p)\n", lpUnknown, lphWnd);
998 hRet = IUnknown_QueryInterface(lpUnknown, &
IID_IOleWindow, (
void**)&lpOle);
1002 hRet = IUnknown_QueryInterface(lpUnknown,&IID_IShellView, (
void**)&lpOle);
1006 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IInternetSecurityMgrSite,
1016 hRet = IOleWindow_GetWindow((
IOleWindow*)lpOle, lphWnd);
1017 IUnknown_Release(lpOle);
1019 TRACE(
"Returning HWND=%p\n", *lphWnd);
1044 if (!iface)
return E_FAIL;
1046 hr = IUnknown_QueryInterface(iface, &IID_IShellService, (
void**)&service);
1049 hr = IShellService_SetOwner(service,
pUnk);
1050 IShellService_Release(service);
1084 hr = IUnknown_QueryInterface(lpUnknown, &
IID_IPersist, (
void**)&persist);
1087 hr = IUnknown_QueryInterface(lpUnknown, &IID_IPersistFolder, (
void**)&persist);
1092 hr = IPersist_GetClassID(persist,
clsid);
1093 IPersist_Release(persist);
1110 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IServiceProvider,
1113 if (hRet ==
S_OK && pService)
1115 TRACE(
"QueryInterface returned (IServiceProvider*)%p\n", pService);
1118 hRet = IServiceProvider_QueryService(pService,
sid,
riid, lppOut);
1120 TRACE(
"(IServiceProvider*)%p returned (IUnknown*)%p\n", pService, *lppOut);
1122 IServiceProvider_Release(pService);
1160 hr = IOleCommandTarget_Exec(
target,
group, cmdId, cmdOpt, pIn, pOut);
1161 IOleCommandTarget_Release(
target);
1164 TRACE(
"<-- hr=0x%08lx\n",
hr);
1198 hr = IProfferService_ProfferService(proffer, service, pService, pCookie);
1201 hr = IProfferService_RevokeService(proffer, *pCookie);
1205 IProfferService_Release(proffer);
1230 IInputObject*
object =
NULL;
1237 ret = IUnknown_QueryInterface(
unknown, &IID_IInputObject, (
LPVOID*) &
object);
1322 data.uiMsgId = uiMsgId;
1351 TRACE(
"%p\n", hMenu);
1353 while (iItemCount >= 0)
1397 TRACE(
"%p, %u, %d\n", hMenu,
uID, bCheck);
1426 DWORD dwEffect = DROPEFFECT_LINK | DROPEFFECT_MOVE | DROPEFFECT_COPY;
1429 TRACE(
"%p %p 0x%08lx %p %p\n", pDrop, pDataObj, grfKeyState, lpPt, pdwEffect);
1435 pdwEffect = &dwEffect;
1437 IDropTarget_DragEnter(pDrop, pDataObj, grfKeyState, *lpPt, pdwEffect);
1439 if (*pdwEffect != DROPEFFECT_NONE)
1440 return IDropTarget_Drop(pDrop, pDataObj, grfKeyState, *lpPt, pdwEffect);
1442 IDropTarget_DragLeave(pDrop);
1464 TRACE(
"(%p,%p)\n", lpUnknown, lpPropBag);
1472 hRet = IPersistPropertyBag_Load(lpPPBag, lpPropBag,
NULL);
1473 IPersistPropertyBag_Release(lpPPBag);
1498 TRACE(
"(%p,%p,0x%08lx)\n", lpUnknown, lpMsg, dwModifiers);
1505 hRet = IOleControlSite_TranslateAccelerator(lpCSite, lpMsg, dwModifiers);
1506 IOleControlSite_Release(lpCSite);
1531 TRACE(
"(%p, %d)\n", lpUnknown, fGotFocus);
1538 hRet = IOleControlSite_OnFocus(lpCSite, fGotFocus);
1539 IOleControlSite_Release(lpCSite);
1552 static const DWORD service_id[] = { 0xd12f26b2, 0x11d0d90a, 0xaa000d83, 0x83435b00 };
1554 static const DWORD function_id[] = { 0xd12f26b1, 0x11d0d90a, 0xaa000d83, 0x83435b00 };
1558 TRACE(
"(%p,%p,%p,%p,%p)\n", lpUnknown, lpArg1, lpArg2, lpArg3, lpArg4);
1560 if (lpUnknown && lpArg4)
1563 (
REFGUID)function_id, (
void**)&lpUnkInner);
1572 hRet = IParseDisplayName_ParseDisplayName((LPPARSEDISPLAYNAME)lpUnkInner,
1573 lpArg1, lpArg2, lpArg3, lpArg4);
1574 IUnknown_Release(lpUnkInner);
1658 if ((
int)(dwTimeout = dwEndTicks -
GetTickCount()) <= 0)
1688 if (lpFolder && pidl)
1690 hRet = IShellFolder_GetUIObjectOf(lpFolder,
NULL, 1, &pidl, &IID_IQueryInfo,
1691 NULL, (
void**)&lpInfo);
1758 if (lpKeys && lpValues)
1764 if (lpKeys[
i] == iKey)
1786 TRACE(
"(%p, %d, %s, %d, %p, %p)\n",
1787 lpUnknown, nUnknown,
wine_dbgstr_guid(riidCmdGrp), cCmds, prgCmds, pCmdText);
1791 return OLECMDERR_E_NOTSUPPORTED;
1798 OLECMD *prgCmds, OLECMDTEXT* pCmdText)
1800 FIXME(
"(%p,%p,%p,%ld,%p,%p) - stub\n",
1801 lpUnknown,
lpReserved, riidCmdGrp, cCmds, prgCmds, pCmdText);
1823 TRACE(
"(%p, %d, %s, %d, %d, %p, %p)\n", lpUnknown, nUnknown,
1826 OLECMD
cmd = { nCmdID };
1829 return OLECMDERR_E_NOTSUPPORTED;
1831 return IUnknown_Exec(lpUnknown, pguidCmdGroup, nCmdID, nCmdexecopt, pvaIn, pvaOut);
1838 FIXME(
"(%p,%d,%p,%ld,%ld,%p,%p) - stub!\n", lpUnknown, iUnk, pguidCmdGroup,
1839 nCmdID, nCmdexecopt, pvaIn, pvaOut);
1856 CMD_FLAG_SUPPORTED_BASIC = 0x1,
1857 CMD_FLAG_SUPPORTED_ADVANCED = 0x2,
1858 CMD_FLAG_NOT_SUPPORTED = 0x4,
1863 if ((
LONG)cCmds <= 0)
1864 return OLECMDERR_E_NOTSUPPORTED;
1868 for (iCmd = 0; iCmd < cCmds; ++iCmd)
1870 cmdID = prgCmds[iCmd].cmdID;
1871 if (cmdID <= OLECMDID_PROPERTIES)
1873 cmdFlags |= CMD_FLAG_NOT_SUPPORTED;
1877 if (cmdID <= OLECMDID_PASTE || cmdID == OLECMDID_SELECTALL)
1879 cmdFlags |= CMD_FLAG_SUPPORTED_BASIC;
1883 if (cmdID <= OLECMDID_UPDATECOMMANDS ||
1884 (OLECMDID_HIDETOOLBARS <= cmdID && cmdID != OLECMDID_ENABLE_INTERACTION))
1886 cmdFlags |= CMD_FLAG_NOT_SUPPORTED;
1890 cmdFlags |= CMD_FLAG_SUPPORTED_ADVANCED;
1898 return OLECMDERR_E_UNKNOWNGROUP;
1900 return OLECMDERR_E_NOTSUPPORTED;
1903 for (iCmd = 0; iCmd < cCmds; ++iCmd)
1905 cmdID = prgCmds[iCmd].cmdID;
1906 if (cmdID == OLECMDID_SELECTALL ||
1907 (OLECMDID_SHOWFIND <= cmdID && cmdID <= OLECMDID_SHOWPRINT))
1909 cmdFlags |= CMD_FLAG_SUPPORTED_BASIC;
1915 if (!cmdFlags || (cmdFlags & CMD_FLAG_NOT_SUPPORTED))
1916 return OLECMDERR_E_NOTSUPPORTED;
1923 FIXME(
"(%p,%ld,%p) - stub!\n", pguidCmdGroup, cCmds, prgCmds);
1947 else if(hParent ==
hChild)
1966#define FDSA_FLAG_INTERNAL_ALLOC 0x01
1984 info->num_items = 0;
1987 info->blocks_alloced = init_blocks;
2020 if(where >
info->num_items)
2021 where =
info->num_items;
2023 if(
info->num_items >=
info->blocks_alloced)
2026 if(
info->flags & 0x1)
2030 void *old_mem =
info->mem;
2038 if(where < info->num_items)
2041 (
char*)
info->mem + where *
info->block_size,
2042 (
info->num_items - where) *
info->block_size);
2059 if(where >=
info->num_items)
2062 if(where < info->num_items - 1)
2065 (
char*)
info->mem + (where + 1) *
info->block_size,
2066 (
info->num_items - where - 1) *
info->block_size);
2069 0,
info->block_size);
2097 HFONT hOldFont, hNewFont;
2104 GetObjectW(hOldFont,
sizeof(lfOldFont), &lfOldFont);
2119 hNewFont = hOldFont;
2122 if (hOldFont != hNewFont)
2179 strcpy(
string,
"CLSID\\");
2181 strcat(
string,
"\\InProcServer32");
2223 TRACE(
"(%p,%p,%d)\n",
hInst, lppClasses, iCount);
2243 TRACE(
"(%p,%p,%d)\n",
hInst, lppClasses, iCount);
2295 static const char szClass[] =
"WorkerA";
2299 TRACE(
"(%p, %p, 0x%08lx, 0x%08lx, %p, 0x%08Ix)\n",
2335#define SHELL_NO_POLICY 0xffffffff
2338static const WCHAR strRegistryPolicyW[] = {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
'M',
'i',
'c',
'r',
'o',
2339 's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
2340 'C',
'u',
'r',
'r',
'e',
'n',
't',
'V',
'e',
'r',
's',
'i',
'o',
'n',
2341 '\\',
'P',
'o',
'l',
'i',
'c',
'i',
'e',
's',0};
2366 lpSubKey =
L"Software\\Microsoft\\Windows\\CurrentVersion\\Policies";
2370 dwSize =
sizeof(dwValue);
2374 dwSize =
sizeof(dwValue);
2434 if (!polTable || !polArr)
2439 for (;polTable->
appstr; polTable++, polArr++)
2441 for (;polTable->
policy; polTable++, polArr++)
2484 if(
pUnk && pInner) {
2485 hret = IUnknown_QueryInterface(pInner,
riid,
ppv);
2488 TRACE(
"-- 0x%08lx\n", hret);
2506 TRACE(
"(%p,%p)\n", lpDest, lppUnknown);
2511 IUnknown_AddRef(lpDest);
2512 IUnknown_Release(*lppUnknown);
2555 static const WCHAR szClass[] = {
'W',
'o',
'r',
'k',
'e',
'r',
'W', 0 };
2559 TRACE(
"(%p, %p, 0x%08lx, 0x%08lx, %p, 0x%08Ix)\n",
2610 TRACE(
"%p %p %p\n",
hWnd, lpFolder, lpApidl);
2632 while(iter-- >
args) {
2640 switch(
V_VT(iter)) {
2693 DISPPARAMS* dispParams)
2698 DISPPARAMS*
params = dispParams;
2700 HRESULT result = IConnectionPoint_EnumConnections(iCP, &enumerator);
2708 while(IEnumConnections_Next(enumerator, 1, &rgcd,
NULL)==
S_OK)
2711 if ((iid &&
SUCCEEDED(IUnknown_QueryInterface(rgcd.pUnk, iid, (
LPVOID*)&dispIface))) ||
2715 IDispatch_Release(dispIface);
2717 IUnknown_Release(rgcd.pUnk);
2720 IEnumConnections_Release(enumerator);
2729 DISPID dispId, DISPPARAMS* dispParams,
2735 FIXME(
"(%p)->(0x%lx %p %lx %lx) partial stub\n", iCP, dispId, dispParams, unknown1, unknown2);
2737 result = IConnectionPoint_GetConnectionInterface(iCP, &iid);
2755 DISPPARAMS* dispParams)
2760 TRACE(
"(%p)->(0x%lx %p)\n",iCP,dispId,dispParams);
2762 result = IConnectionPoint_GetConnectionInterface(iCP, &iid);
2790 TRACE(
"(%p,0x%8lX)\n", lpCP, dispID);
2794 hRet = IConnectionPoint_EnumConnections(lpCP, &lpEnum);
2799 CONNECTDATA connData;
2803 while (IEnumConnections_Next(lpEnum, 1, &connData, &ulFetched) ==
S_OK)
2808 IPropertyNotifySink_OnChanged(lpSink, dispID);
2809 IPropertyNotifySink_Release(lpSink);
2811 IUnknown_Release(connData.pUnk);
2814 IEnumConnections_Release(lpEnum);
2834 DISPPARAMS dispParams = {
buffer,
NULL, cParams, 0};
2844 result = IConnectionPointContainer_FindConnectionPoint(iCPC,
riid, &iCP);
2845 IConnectionPointContainer_Release(iCPC);
2854 IConnectionPoint_Release(iCP);
2878 TRACE(
"(%p,0x%8lX)\n", lpUnknown, dispID);
2888 IConnectionPointContainer_Release(lpCPC);
2891 IConnectionPoint_Release(lpCP);
3082#define IsIface(type) SUCCEEDED((hRet = IUnknown_QueryInterface(lpUnknown, &IID_##type, (void**)&lpObj)))
3083#define IShellBrowser_EnableModeless IShellBrowser_EnableModelessSB
3084#define EnableModeless(type) type##_EnableModeless((type*)lpObj, bModeless)
3110 TRACE(
"(%p,%d)\n", lpUnknown, bModeless);
3128 IUnknown_Release(lpObj);
3182 TRACE(
"(%p, %p, %p, %lu)\n",
hWnd, lpFolder, lpApidl, dwCommandId);
3188 hRet = IShellFolder_GetUIObjectOf(lpFolder,
hWnd, 1, &lpApidl,
3189 &IID_IContextMenu, 0, (
void**)&iContext);
3198 hQuery = IContextMenu_QueryContextMenu(iContext, hMenu, 0, 1, 0x7FFF,
3199 dwCommandId ? CMF_NORMAL : CMF_DEFAULTONLY);
3205 if (dwCommandId != (
UINT)-1)
3207 CMINVOKECOMMANDINFO cmIci;
3209 memset(&cmIci,0,
sizeof(cmIci));
3210 cmIci.cbSize =
sizeof(cmIci);
3211 cmIci.fMask = CMIC_MASK_ASYNCOK;
3220 hRet = IContextMenu_InvokeCommand(iContext, &cmIci);
3225 IContextMenu_Release(iContext);
3280 FIXME(
"(%s,%p,%ld) semi-stub!\n",
debugstr_a(new_mod), inst_hwnd, dwCrossCodePage);
3282 if (!
len ||
len >=
sizeof(mod_path))
return NULL;
3304 FIXME(
"(%s,%p,%ld) semi-stub!\n",
debugstr_w(new_mod), inst_hwnd, dwCrossCodePage);
3332 TRACE(
"(0x%8lx,%d,%d)\n", cRGB, dwLuma, bUnknown);
3340 FIXME(
"Ignoring luma adjustment\n");
3377 return WNetGetLastErrorW(lpError, lpErrorBuf, nErrorBufSize, lpNameBuf, nNameBufSize);
3427 return IShellFolder_EnumObjects(lpFolder,
hwnd,
flags, ppenum);
3433 wHue = wHue > 240 ? wHue - 240 : wHue < 0 ? wHue + 240 : wHue;
3437 else if (wHue > 120)
3442 return ((wHue * (wMid2 - wMid1) + 20) / 40) + wMid1;
3446#define GET_RGB(h) (ConvertHue(h, wMid1, wMid2) * 255 + 120) / 240
3470 WORD wGreen, wBlue, wMid1, wMid2;
3472 if (wLuminosity > 120)
3473 wMid2 = wSaturation + wLuminosity - (wSaturation * wLuminosity + 120) / 240;
3475 wMid2 = ((wSaturation + 240) * wLuminosity + 120) / 240;
3477 wMid1 = wLuminosity * 2 - wMid2;
3483 return RGB(wRed, wGreen, wBlue);
3486 wRed = wLuminosity * 255 / 240;
3487 return RGB(wRed, wRed, wRed);
3594 FIXME(
"(0x%08lx)stub\n",
x);
3694 IInputObject* lpInput =
NULL;
3697 TRACE(
"(%p,%p)\n", lpUnknown, lpMsg);
3700 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IInputObject,
3726 IInputObject* lpInput =
NULL;
3729 TRACE(
"(%p)\n", lpUnknown);
3732 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IInputObject,
3765 int wR, wG, wB, wMax, wMin, wHue, wLuminosity, wSaturation;
3767 TRACE(
"(%08lx,%p,%p,%p)\n", cRGB, pwHue, pwLuminance, pwSaturation);
3773 wMax =
max(wR,
max(wG, wB));
3774 wMin =
min(wR,
min(wG, wB));
3777 wLuminosity = ((wMax + wMin) * 240 + 255) / 510;
3789 int wDelta = wMax - wMin, wRNorm, wGNorm, wBNorm;
3792 if (wLuminosity <= 120)
3793 wSaturation = ((wMax + wMin)/2 + wDelta * 240) / (wMax + wMin);
3795 wSaturation = ((510 - wMax - wMin)/2 + wDelta * 240) / (510 - wMax - wMin);
3798 wRNorm = (wDelta/2 + wMax * 40 - wR * 40) / wDelta;
3799 wGNorm = (wDelta/2 + wMax * 40 - wG * 40) / wDelta;
3800 wBNorm = (wDelta/2 + wMax * 40 - wB * 40) / wDelta;
3803 wHue = wBNorm - wGNorm;
3804 else if (wG == wMax)
3805 wHue = 80 + wRNorm - wBNorm;
3807 wHue = 160 + wGNorm - wRNorm;
3810 else if (wHue > 240)
3816 *pwLuminance = wLuminosity;
3818 *pwSaturation = wSaturation;
3822typedef struct tagLOGPALETTEMAX
3827} LOGPALETTEMAX, *PLOGPALETTEMAX;
3838 HPALETTE hHalftonePalette;
3840 const UINT nExtractCount = 10;
3847 if (!hHalftonePalette)
3849 data.palVersion = 0x300;
3861 &
data.palPalEntry[nSecondBlockStart]);
3903 FIXME(
" - returning bogus address for SHGetInverseCMAP\n");
3929 TRACE(
"%p %u\n", hMenu, wID);
3931 while (nIter < nCount)
3937 TRACE(
"ret %d\n", nIter);
3993 FIXME(
"(0x%08lx) stub\n", dwUnknown);
4024 static WCHAR szSkipBinding[] = {
'S',
'k',
'i',
'p',
' ',
4025 'B',
'i',
'n',
'd',
'i',
'n',
'g',
' ',
'C',
'L',
'S',
'I',
'D',
'\0' };
4032 if (
SUCCEEDED(IBindCtx_GetObjectParam(pbc, szSkipBinding, &lpUnk)))
4040 IUnknown_Release(lpUnk);
4069 static const WCHAR explorerW[] = {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
4070 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
4071 'C',
'u',
'r',
'r',
'e',
'n',
't',
'V',
'e',
'r',
's',
'i',
'o',
'n',
'\\',
4072 'E',
'x',
'p',
'l',
'o',
'r',
'e',
'r',
'\\'};
4073 static const WCHAR shellW[] = {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
4074 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
4075 'S',
'h',
'e',
'l',
'l',
'\\'};
4076 static const WCHAR shell_no_roamW[] = {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
4077 'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
4078 'S',
'h',
'e',
'l',
'l',
'N',
'o',
'R',
'o',
'a',
'm',
'\\'};
4079 static const WCHAR classesW[] = {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
4080 'C',
'l',
'a',
's',
's',
'e',
's',
'\\'};
4082 static const WCHAR localized_resource_nameW[] = {
'L',
'o',
'c',
'a',
'l',
'i',
'z',
'e',
'd',
4083 'R',
'e',
's',
'o',
'u',
'r',
'c',
'e',
'N',
'a',
'm',
'e',
'\\'};
4084 static const WCHAR handlersW[] = {
'H',
'a',
'n',
'd',
'l',
'e',
'r',
's',
'\\'};
4085 static const WCHAR associationsW[] = {
'A',
's',
's',
'o',
'c',
'i',
'a',
't',
'i',
'o',
'n',
's',
'\\'};
4086 static const WCHAR volatileW[] = {
'V',
'o',
'l',
'a',
't',
'i',
'l',
'e',
'\\'};
4087 static const WCHAR mui_cacheW[] = {
'M',
'U',
'I',
'C',
'a',
'c',
'h',
'e',
'\\'};
4088 static const WCHAR file_extsW[] = {
'F',
'i',
'l',
'e',
'E',
'x',
't',
's',
'\\'};
4092 int size_key, size_subkey, size_user;
4098 if(
flags == 0x1ffff)
4101 switch(
flags&0xff0) {
4104 size_key =
sizeof(explorerW);
4108 size_key =
sizeof(shellW);
4111 key = shell_no_roamW;
4112 size_key =
sizeof(shell_no_roamW);
4116 size_key =
sizeof(classesW);
4119 FIXME(
"unsupported flags (0x%08lx)\n",
flags);
4123 switch(
flags&0xff000) {
4129 subkey = localized_resource_nameW;
4130 size_subkey =
sizeof(localized_resource_nameW);
4134 size_subkey =
sizeof(handlersW);
4137 subkey = associationsW;
4138 size_subkey =
sizeof(associationsW);
4142 size_subkey =
sizeof(volatileW);
4145 subkey = mui_cacheW;
4146 size_subkey =
sizeof(mui_cacheW);
4149 subkey = file_extsW;
4150 size_subkey =
sizeof(file_extsW);
4153 FIXME(
"unsupported flags (0x%08lx)\n",
flags);
4164 ERR(
"Out of memory\n");
4172 memcpy(
path+(size_key+size_subkey)/
sizeof(
WCHAR), sub_key, size_user);
4173 path[(size_key+size_subkey+size_user)/
sizeof(
WCHAR)] =
'\0';
4196 if(lPriority || dwTag || pdwId || pszModule ||
dwFlags)
4197 FIXME(
"Unsupported arguments\n");
4222 dwDueTime, dwPeriod,
dwFlags))
4233 IInputObjectSite *pIOS =
NULL;
4236 TRACE(
"(%p, %p, %s)\n", lpUnknown, pFocusObject, bFocus ?
"TRUE" :
"FALSE");
4240 hRet = IUnknown_QueryInterface(lpUnknown, &IID_IInputObjectSite,
4421 pszTitle = lpCaption;
4435 WARN(
"Failed to load id %d\n",
LOWORD(lpText));
4516 TRACE(
"%p %d\n", apUserPerm, cUserPerm);
4518 if (apUserPerm ==
NULL || cUserPerm <= 0)
4525 acl_size =
sizeof(
ACL);
4527 for(sid_count = 0; sid_count < cUserPerm; sid_count++)
4552 }
else if (
sid->dwUserID==0)
4554 0, 0, 0, 0, 0, 0, &
pSid);
4557 0, 0, 0, 0, 0, 0, &
pSid);
4561 sidlist[sid_count] =
pSid;
4578 for(
i = 0;
i < sid_count;
i++)
4613 for(
i = 0;
i < sid_count;
i++)
4615 if (!cur_user || sidlist[
i] != cur_user)
4670#define SHFORMATDT_UNSUPPORTED_FLAGS (FDTF_RELATIVE | FDTF_LTRDATE | FDTF_RTLDATE | FDTF_NOAUTOREADINGORDER)
4690 static const WCHAR sep1[] = {
',',
' ',0};
4691 static const WCHAR sep2[] = {
' ',0};
4723#undef SHFORMATDT_UNSUPPORTED_FLAGS
4771 FIXME(
"(%s,%p,%lx,%lx,%lx,%lx,%lx,%lx) STUB\n",
debugstr_w(szURL),
pUnknown, dwUnknown2,
4772 dwUnknown3, dwUnknown4, dwUnknown5, dwUnknown6, dwUnknown7);
4793 FIXME(
"(%s, %p, %p, %li) STUB\n",verb,
pUnknown, pUnknown2, dwUnknown3);
4820 &IID_IServiceProvider, (
PVOID*)&pSP);
4897VariantArrayToBuffer(
4903 LONG LowerBound, UpperBound;
4915 ((
LONG)cbSize <= UpperBound - LowerBound + 1) &&
4939 hr = IPropertyBag_Read(ppb, pszPropName, pvarg,
NULL);
4947 return VariantChangeTypeForRead(pvarg,
vt);
4962 if (!ppb || !pszPropName || !pbValue)
4970 *pbValue = (
V_BOOL(&varg) == VARIANT_TRUE);
4991 return V_BOOL(&varg) == VARIANT_TRUE;
5006 if (!ppb || !pszPropName || !psValue)
5014 *psValue =
V_UI2(&varg);
5044 if (!ppb || !pszPropName || !
pValue)
5057 if (!pszPropName || !ppb || !
pValue)
5060 hr = IPropertyBag_Read(ppb, pszPropName, &
var,
NULL);
5085 if (!ppb || !pszPropName || !pdwValue)
5093 *pdwValue =
V_UI4(&varg);
5110 if (!ppb || !pszPropName || !pbstr)
5137 if (!ppb || !pszPropName || !pszDst)
5165 if (!ppb || !pszPropName || !
pptl)
5204 if (!ppb || !pszPropName || !ppts)
5232 if (!ppb || !pszPropName || !
prcl)
5282 if (!ppb || !pszPropName || !pguid)
5296 bRet = VariantArrayToBuffer(&vari, pguid,
sizeof(*pguid));
5323 if (!ppb || !pszPropName || !ppStream)
5333 hr = IUnknown_QueryInterface(
V_UNKNOWN(&vari), &IID_IStream, (
void **)ppStream);
5350 if (!ppb || !pszPropName)
5357 return IPropertyBag_Write(ppb, pszPropName, &vari);
5371 if (!ppb || !pszPropName)
5378 V_BOOL(&vari) = (bValue ? VARIANT_TRUE : VARIANT_FALSE);
5379 return IPropertyBag_Write(ppb, pszPropName, &vari);
5393 if (!ppb || !pszPropName)
5400 V_UI2(&vari) = sValue;
5401 return IPropertyBag_Write(ppb, pszPropName, &vari);
5417 if (!ppb || !pszPropName)
5424 V_I4(&vari) = lValue;
5425 return IPropertyBag_Write(ppb, pszPropName, &vari);
5439 if (!ppb || !pszPropName)
5446 V_UI4(&vari) = dwValue;
5447 return IPropertyBag_Write(ppb, pszPropName, &vari);
5464 if (!ppb || !pszPropName)
5475 hr = IPropertyBag_Write(ppb, pszPropName, &vari);
5492 if (!ppb || !pszPropName || !pguid)
5513 if (!ppb || !pszPropName || !pStream)
5521 return IPropertyBag_Write(ppb, pszPropName, &vari);
5537 if (!ppb || !pszPropName || !
pptl)
5582 if (!ppb || !pszPropName || !ppts)
5606 if (!ppb || !pszPropName || !
prcl)
5664#define OBJCOMPAT_OTNEEDSSFCACHE 0x00000001
5665#define OBJCOMPAT_NO_WEBVIEW 0x00000002
5666#define OBJCOMPAT_UNBINDABLE 0x00000004
5667#define OBJCOMPAT_PINDLL 0x00000008
5668#define OBJCOMPAT_NEEDSFILESYSANCESTOR 0x00000010
5669#define OBJCOMPAT_NOTAFILESYSTEM 0x00000020
5670#define OBJCOMPAT_CTXMENU_NOVERBS 0x00000040
5671#define OBJCOMPAT_CTXMENU_LIMITEDQI 0x00000080
5672#define OBJCOMPAT_COCREATESHELLFOLDERONLY 0x00000100
5673#define OBJCOMPAT_NEEDSSTORAGEANCESTOR 0x00000200
5674#define OBJCOMPAT_NOLEGACYWEBVIEW 0x00000400
5675#define OBJCOMPAT_CTXMENU_XPQCMFLAGS 0x00001000
5676#define OBJCOMPAT_NOIPROPERTYSTORE 0x00002000
5686 { {
'C',
'O',
'C',
'R',
'E',
'A',
'T',
'E',
'S',
'H',
'E',
'L',
'L',
'F',
'O',
'L',
'D',
'E',
'R',
'O',
'N',
'L',
'Y',0},
5688 { {
'C',
'T',
'X',
'M',
'E',
'N',
'U',
'_',
'L',
'I',
'M',
'I',
'T',
'E',
'D',
'Q',
'I',0},
5690 { {
'C',
'T',
'X',
'M',
'E',
'N',
'U',
'_',
'N',
'O',
'V',
'E',
'R',
'B',
'S',0},
5692 { {
'C',
'T',
'X',
'M',
'E',
'N',
'U',
'_',
'X',
'P',
'Q',
'C',
'M',
'F',
'L',
'A',
'G',
'S',0},
5694 { {
'N',
'E',
'E',
'D',
'S',
'F',
'I',
'L',
'E',
'S',
'Y',
'S',
'A',
'N',
'C',
'E',
'S',
'T',
'O',
'R',0},
5696 { {
'N',
'E',
'E',
'D',
'S',
'S',
'T',
'O',
'R',
'A',
'G',
'E',
'A',
'N',
'C',
'E',
'S',
'T',
'O',
'R',0},
5698 { {
'N',
'O',
'I',
'P',
'R',
'O',
'P',
'E',
'R',
'T',
'Y',
'S',
'T',
'O',
'R',
'E',0},
5700 { {
'N',
'O',
'L',
'E',
'G',
'A',
'C',
'Y',
'W',
'E',
'B',
'V',
'I',
'E',
'W',0},
5702 { {
'N',
'O',
'T',
'A',
'F',
'I',
'L',
'E',
'S',
'Y',
'S',
'T',
'E',
'M',0},
5704 { {
'N',
'O',
'_',
'W',
'E',
'B',
'V',
'I',
'E',
'W',0},
5706 { {
'O',
'T',
'N',
'E',
'E',
'D',
'S',
'S',
'F',
'C',
'A',
'C',
'H',
'E',0},
5708 { {
'P',
'I',
'N',
'D',
'L',
'L',0},
5710 { {
'U',
'N',
'B',
'I',
'N',
'D',
'A',
'B',
'L',
'E',0},
5729 static const WCHAR compatpathW[] =
5730 {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
'\\',
5731 'W',
'i',
'n',
'd',
'o',
'w',
's',
'\\',
'C',
'u',
'r',
'r',
'e',
'n',
't',
'V',
'e',
'r',
's',
'i',
'o',
'n',
'\\',
5732 'S',
'h',
'e',
'l',
'l',
'C',
'o',
'm',
'p',
'a',
't',
'i',
'b',
'i',
'l',
'i',
't',
'y',
'\\',
5733 'O',
'b',
'j',
'e',
'c',
't',
's',
'\\',
'%',
's',0};
5746 FIXME(
"iface not handled\n");
5796 PVOID pvOrgParam = pvParam;
5802 case SPI_GETANIMATION:
5803 case SPI_SETANIMATION:
5804 uiParam = animinfo.
cbSize =
sizeof(animinfo);
5806 pvParam = &animinfo;
5808 case SPI_SETDRAGFULLWINDOWS:
5809 case SPI_SETFONTSMOOTHING:
5810 uiParam = *(
BOOL*)pvParam;
5812 case SPI_GETDRAGFULLWINDOWS:
5813 case SPI_GETFONTSMOOTHING:
5817 if (uiAction < 0x1000)
5819 else if (uiAction & 1)
5825 if (uiAction == SPI_GETANIMATION)
WINBASEAPI _Check_return_ _Out_ AppPolicyProcessTerminationMethod * policy
#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 LPITEMIDLIST WINAPI SHBrowseForFolderW(LPBROWSEINFOW lpbi)
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 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 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)
HRESULT WINAPI StringFromCLSID(REFCLSID clsid, LPOLESTR *str)
HRESULT WINAPI CLSIDFromString(LPCOLESTR str, LPCLSID clsid)
HRESULT WINAPI DECLSPEC_HOTPATCH CoCreateInstance(REFCLSID rclsid, IUnknown *outer, DWORD cls_context, REFIID riid, void **obj)
void WINAPI CoTaskMemFree(void *ptr)
static const WCHAR empty[1]
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]
#define GetProcAddress(x, y)
#define INVALID_HANDLE_VALUE
#define GetCurrentProcess()
#define WideCharToMultiByte
#define MultiByteToWideChar
static const WCHAR version[]
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)
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 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)
BOOL WINAPI GetStringTypeW(DWORD type, LPCWSTR src, INT count, LPWORD chartype)
#define IS_INTRESOURCE(x)
BOOL WINAPI StrToIntExW(const WCHAR *str, DWORD flags, INT *ret)
LPSTR WINAPI CharNextA(const char *ptr)
WCHAR *WINAPI StrCatBuffW(WCHAR *str, const WCHAR *cat, INT max_len)
HRESULT WINAPI SHLoadIndirectString(const WCHAR *src, WCHAR *dst, UINT dst_len, void **reserved)
WCHAR *WINAPI StrCpyNW(WCHAR *dst, const WCHAR *src, int count)
ULONG WINAPI DECLSPEC_HOTPATCH GetTickCount(void)
DWORD WINAPI GetVersion(void)
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 REFPROPVARIANT PROPVAR_CHANGE_FLAGS VARTYPE vt
_ACRTIMP void *__cdecl _recalloc(void *, size_t, size_t) __WINE_ALLOC_SIZE(2
_ACRTIMP int __cdecl wcscmp(const wchar_t *, const wchar_t *)
_ACRTIMP int __cdecl memcmp(const void *, const void *, size_t)
_ACRTIMP size_t __cdecl strlen(const char *)
_ACRTIMP char *__cdecl strrchr(const char *, int)
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)
HRESULT WINAPI IUnknown_QueryService(IUnknown *obj, REFGUID sid, REFIID iid, void **out)
DWORD WINAPI SHQueryValueExW(HKEY hkey, const WCHAR *name, DWORD *reserved, DWORD *type, void *buff, DWORD *buff_len)
DWORD WINAPI SHGetValueW(HKEY hkey, const WCHAR *subkey, const WCHAR *value, DWORD *type, void *data, DWORD *data_len)
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)
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)
BOOL WINAPI GUIDFromStringA(LPCSTR idstr, CLSID *id)
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)
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 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)
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)
BOOL WINAPI SHFlushSFCacheWrap(void)
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
#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)
#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 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)
static HRESULT iunknown_query_service(IUnknown *, REFGUID, REFIID, LPVOID *)
BOOL WINAPI MLFreeLibrary(HMODULE hModule)
INT WINAPI SHStringFromGUIDW(REFGUID guid, LPWSTR lpszDest, INT cchMax)
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)
#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)
#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)
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)
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)
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 SHPackDispParamsV(DISPPARAMS *params, VARIANTARG *args, UINT cnt, va_list valist)
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)
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)
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)
BOOL WINAPI FDSA_Initialize(DWORD block_size, DWORD inc, FDSA_info *info, void *mem, DWORD init_blocks)
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)
DWORD WINAPI MLSetMLHInstance(HINSTANCE hInst, HANDLE hHeap)
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)
EXTERN_C HRESULT WINAPI SHInvokeCommandWithFlagsAndSite(_In_opt_ HWND hWnd, _In_opt_ IUnknown *pUnk, _In_ IShellFolder *pShellFolder, _In_ LPCITEMIDLIST pidl, _In_ UINT fCMIC, _In_opt_ LPCSTR pszVerb)
EXTERN_C ULONG WINAPI GetProcessOsVersion(void)
#define MAKE_HRESULT(sev, fac, code)
static void *static void *static LPDIRECTPLAY IUnknown * pUnk
HANDLE NTAPI CreateFileMappingA(IN HANDLE hFile, IN LPSECURITY_ATTRIBUTES lpFileMappingAttributes, IN DWORD flProtect, IN DWORD dwMaximumSizeHigh, IN DWORD dwMaximumSizeLow, IN LPCSTR lpName)
GLint GLint GLint GLint GLint x
GLuint GLuint GLsizei count
GLuint GLuint GLsizei GLenum type
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
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)
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)
static LRESULT WINAPI wndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
#define PROCESS_DUP_HANDLE
HRESULT QueryService([in] REFGUID guidService, [in] REFIID riid, [out] void **ppvObject)
#define InterlockedCompareExchangePointer
static DWORD block_size(DWORD block)
const char * appName(const char *argv0)
LPWSTR WINAPI lstrcatW(LPWSTR lpString1, LPCWSTR lpString2)
TCHAR szTitle[MAX_LOADSTRING]
PTHREAD_START_ROUTINE LPTHREAD_START_ROUTINE
#define memcpy(s1, s2, n)
#define memmove(s1, s2, n)
#define ERROR_FILE_NOT_FOUND
PSDBQUERYRESULT_VISTA PVOID DWORD * dwSize
static NTSTATUS *static PWSTR CURDIR *static HMODULE hmod
static WAITORTIMERCALLBACK
static const struct access_res create[16]
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
struct _SECURITY_DESCRIPTOR SECURITY_DESCRIPTOR
struct _ACCESS_ALLOWED_ACE ACCESS_ALLOWED_ACE
_In_ LPWSTR _In_ DWORD _In_ DWORD _In_ DWORD dwFlags
_In_ LPWSTR _In_ DWORD _In_ LPCVOID pvData
#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)
_In_opt_ LPCSTR _In_opt_ LPCSTR pszValue
_In_opt_ void _In_ DWORD _In_opt_ LPTHREAD_START_ROUTINE pfnCallback
struct _DllVersionInfo DLLVERSIONINFO
static __inline const char * wine_dbgstr_guid(const GUID *id)
#define _WIN32_WINNT_VISTA
BOOL WINAPI SetSecurityDescriptorDacl(PSECURITY_DESCRIPTOR pSecurityDescriptor, BOOL bDaclPresent, PACL pDacl, BOOL bDaclDefaulted)
static const char *static const char const char DWORD void DWORD *static const char const char DWORD void DWORD *static const char DWORD DWORD void * buff
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)
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)
EXTERN_C BOOL WINAPI SHBoolSystemParametersInfo(UINT uiAction, PVOID pvParam)
HRESULT WINAPI SHPropertyBag_ReadBSTR(IPropertyBag *ppb, LPCWSTR pszPropName, BSTR *pbstr)
VOID WINAPI FixSlashesAndColonA(_Inout_ LPSTR lpstr)
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
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)
wchar_t tm const _CrtWcstime_Writes_and_advances_ptr_ count wchar_t ** out
UINT WINAPI GetPaletteEntries(HPALETTE hpal, UINT iStartIndex, UINT cEntries, LPPALETTEENTRY ppe)
#define FORMAT_MESSAGE_FROM_STRING
#define FILE_MAP_ALL_ACCESS
DWORD WINAPI GetCurrentProcessId(void)
#define FORMAT_MESSAGE_ALLOCATE_BUFFER
#define DOCKINFO_UNDOCKED
_In_ ULONG _In_ CLIPOBJ _In_ RECTL * prcl
static HRESULT HRESULT_FROM_WIN32(unsigned int x)
#define DISP_E_BADVARTYPE
#define DRAGDROP_E_NOTREGISTERED
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)
HPALETTE WINAPI CreatePalette(_In_reads_(_Inexpressible_(2 *sizeof(WORD)+plpal->palNumEntries *sizeof(PALETTEENTRY))) const LOGPALETTE *)
HDC WINAPI CreateCompatibleDC(_In_opt_ HDC hdc)
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)
UINT WINAPI GetSystemPaletteEntries(_In_ HDC hdc, _In_ UINT iStart, _In_ UINT cEntries, _Out_writes_opt_(cEntries) LPPALETTEENTRY pPalEntries)
HFONT WINAPI CreateFontIndirectW(_In_ const LOGFONTW *)
BOOL WINAPI DeleteDC(_In_ HDC)
HPALETTE WINAPI CreateHalftonePalette(_In_opt_ HDC)
_In_ DWORD _In_ int _In_ int _In_opt_ LPNLSVERSIONINFO _In_opt_ LPVOID lpReserved
#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)
HWND WINAPI SetParent(_In_ HWND, _In_opt_ HWND)
LONG WINAPI SetWindowLongW(_In_ HWND, _In_ int, _In_ LONG)
LONG WINAPI GetWindowLongW(_In_ HWND, _In_ int)
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)
#define SPIF_UPDATEINIFILE
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 _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