1 /* 2 * COPYRIGHT: See COPYING in the top level directory 3 * PROJECT: shell32.dll 4 * FILE: dll/win32/shell32/stubs.c 5 * PURPOSE: shell32.dll stubs 6 * PROGRAMMER: Dmitry Chapyshev (dmitry@reactos.org) 7 * NOTES: If you implement a function, remove it from this file 8 * UPDATE HISTORY: 9 * 03/02/2009 Created 10 */ 11 12 13 #include "precomp.h" 14 15 WINE_DEFAULT_DEBUG_CHANNEL(shell); 16 17 /* 18 * Unimplemented 19 */ 20 EXTERN_C HRESULT 21 WINAPI 22 SHGetUnreadMailCountW(HKEY hKeyUser, 23 LPCWSTR pszMailAddress, 24 DWORD *pdwCount, 25 FILETIME *pFileTime, 26 LPWSTR pszShellExecuteCommand, 27 int cchShellExecuteCommand) 28 { 29 FIXME("SHGetUnreadMailCountW() stub\n"); 30 return E_FAIL; 31 } 32 33 /* 34 * Unimplemented 35 */ 36 EXTERN_C HRESULT 37 WINAPI 38 SHSetUnreadMailCountW(LPCWSTR pszMailAddress, 39 DWORD dwCount, 40 LPCWSTR pszShellExecuteCommand) 41 { 42 FIXME("SHSetUnreadMailCountW() stub\n"); 43 return E_FAIL; 44 } 45 46 /* 47 * Unimplemented 48 */ 49 EXTERN_C HRESULT 50 WINAPI 51 SHEnumerateUnreadMailAccountsW(HKEY user, 52 DWORD idx, 53 LPWSTR mailaddress, 54 INT mailaddresslen) 55 { 56 FIXME("SHEnumerateUnreadMailAccountsW(%p %d %p %d) stub\n", 57 user, idx, mailaddress, mailaddresslen); 58 return E_NOTIMPL; 59 } 60 61 /* 62 * Unimplemented 63 */ 64 EXTERN_C VOID 65 WINAPI 66 CheckDiskSpace(VOID) 67 { 68 FIXME("CheckDiskSpace() stub\n"); 69 } 70 71 /* 72 * Unimplemented 73 */ 74 EXTERN_C VOID 75 WINAPI 76 SHReValidateDarwinCache(VOID) 77 { 78 FIXME("SHReValidateDarwinCache() stub\n"); 79 } 80 81 /* 82 * Unimplemented 83 */ 84 EXTERN_C FILEDESCRIPTOR* 85 WINAPI 86 GetFileDescriptor(FILEGROUPDESCRIPTOR *pFileGroupDesc, BOOL bUnicode, INT iIndex, LPWSTR lpName) 87 { 88 FIXME("GetFileDescriptor() stub\n"); 89 return NULL; 90 } 91 92 /* 93 * Unimplemented 94 */ 95 EXTERN_C BOOL 96 WINAPI 97 MakeShellURLFromPathW(LPCWSTR lpPath, LPWSTR lpUrl, INT cchMax) 98 { 99 FIXME("MakeShellURLFromPathW() stub\n"); 100 lpUrl = NULL; 101 return FALSE; 102 } 103 104 /* 105 * Unimplemented 106 */ 107 EXTERN_C BOOL 108 WINAPI 109 MakeShellURLFromPathA(LPCSTR lpPath, LPSTR lpUrl, INT cchMax) 110 { 111 WCHAR szPath[MAX_PATH], szURL[MAX_PATH]; 112 BOOL ret; 113 SHAnsiToUnicode(lpPath, szPath, _countof(szPath)); 114 ret = MakeShellURLFromPathW(szPath, szURL, _countof(szURL)); 115 SHUnicodeToAnsi(szURL, lpUrl, cchMax); 116 return ret; 117 } 118 119 /* 120 * Unimplemented 121 */ 122 EXTERN_C HRESULT 123 WINAPI 124 SHParseDarwinIDFromCacheW(LPCWSTR lpUnknown1, LPWSTR lpUnknown2) 125 { 126 FIXME("SHParseDarwinIDFromCacheW() stub\n"); 127 lpUnknown2 = NULL; 128 return E_FAIL; 129 } 130 131 static HRESULT DataObject_GetHIDACount(IDataObject *pdo) 132 { 133 if (!pdo) 134 return E_INVALIDARG; 135 CDataObjectHIDA cida(pdo); 136 HRESULT hr = cida.hr(); 137 return SUCCEEDED(hr) ? cida->cidl : hr; 138 } 139 140 /* 141 * Unimplemented 142 */ 143 EXTERN_C HRESULT 144 WINAPI 145 SHMultiFileProperties(IDataObject *pDataObject, DWORD dwFlags) 146 { 147 FIXME("SHMultiFileProperties() stub\n"); 148 149 // Temporary workaround to display a property sheet if possible 150 if (DataObject_GetHIDACount(pDataObject) == 1) 151 return SHELL32_ShowPropertiesDialog(pDataObject); 152 153 if (pDataObject) 154 { 155 HWND hWnd; 156 if (FAILED(IUnknown_GetWindow(pDataObject, &hWnd))) // Will probably not work but we have no other option 157 hWnd = NULL; 158 SHELL_ErrorBox(hWnd, HRESULT_FROM_WIN32(ERROR_NOT_SUPPORTED)); 159 } 160 161 return E_FAIL; 162 } 163 164 /* 165 * Unimplemented 166 */ 167 EXTERN_C HRESULT 168 WINAPI 169 SHCopyMonikerToTemp(IMoniker *pMoniker, LPCWSTR lpInput, LPWSTR lpOutput, INT cchMax) 170 { 171 /* Unimplemented in XP SP3 */ 172 TRACE("SHCopyMonikerToTemp() stub\n"); 173 return E_FAIL; 174 } 175 176 /* 177 * Unimplemented 178 */ 179 EXTERN_C HLOCAL 180 WINAPI 181 CheckWinIniForAssocs(VOID) 182 { 183 FIXME("CheckWinIniForAssocs() stub\n"); 184 return NULL; 185 } 186 187 /* 188 * Unimplemented 189 */ 190 EXTERN_C HRESULT 191 WINAPI 192 SHGetSetFolderCustomSettingsW(LPSHFOLDERCUSTOMSETTINGSW pfcs, 193 LPCWSTR pszPath, 194 DWORD dwReadWrite) 195 { 196 FIXME("SHGetSetFolderCustomSettingsW() stub\n"); 197 return E_FAIL; 198 } 199 200 /* 201 * Unimplemented 202 */ 203 EXTERN_C HRESULT 204 WINAPI 205 SHGetSetFolderCustomSettingsA(LPSHFOLDERCUSTOMSETTINGSA pfcs, 206 LPCSTR pszPath, 207 DWORD dwReadWrite) 208 { 209 FIXME("SHGetSetFolderCustomSettingsA() stub\n"); 210 return E_FAIL; 211 } 212 213 /* 214 * Unimplemented 215 */ 216 EXTERN_C VOID 217 WINAPI 218 CDefFolderMenu_MergeMenu(HINSTANCE hInstance, 219 UINT uMainMerge, 220 UINT uPopupMerge, 221 LPQCMINFO lpQcmInfo) 222 { 223 FIXME("CDefFolderMenu_MergeMenu() stub\n"); 224 } 225 226 /* 227 * Unimplemented 228 */ 229 EXTERN_C HRESULT 230 WINAPI 231 CDefFolderMenu_Create(LPITEMIDLIST pidlFolder, 232 HWND hwnd, 233 UINT uidl, 234 PCUITEMID_CHILD_ARRAY *apidl, 235 IShellFolder *psf, 236 LPFNDFMCALLBACK lpfn, 237 HKEY hProgID, 238 HKEY hBaseProgID, 239 IContextMenu **ppcm) 240 { 241 FIXME("CDefFolderMenu_Create() stub\n"); 242 return E_FAIL; 243 } 244 245 /* 246 * Unimplemented 247 */ 248 EXTERN_C VOID 249 WINAPI 250 SHWaitOp_Operate(LPVOID lpUnknown1, DWORD dwUnknown2) 251 { 252 FIXME("SHWaitOp_Operate() stub\n"); 253 } 254 255 /* 256 * Unimplemented 257 */ 258 EXTERN_C INT 259 WINAPI 260 RealDriveTypeFlags(INT iDrive, BOOL bUnknown) 261 { 262 FIXME("RealDriveTypeFlags() stub\n"); 263 return 1; 264 } 265 266 /* 267 * Unimplemented 268 */ 269 EXTERN_C LPWSTR 270 WINAPI 271 StrRStrW(LPWSTR lpSrc, LPWSTR lpLast, LPWSTR lpSearch) 272 { 273 FIXME("StrRStrW() stub\n"); 274 return NULL; 275 } 276 277 /* 278 * Unimplemented 279 */ 280 EXTERN_C LPWSTR 281 WINAPI 282 StrRStrA(LPSTR lpSrc, LPSTR lpLast, LPSTR lpSearch) 283 { 284 FIXME("StrRStrA() stub\n"); 285 return NULL; 286 } 287 288 /* 289 * Unimplemented 290 */ 291 EXTERN_C LONG 292 WINAPI 293 ShellHookProc(INT iCode, WPARAM wParam, LPARAM lParam) 294 { 295 /* Unimplemented in WinXP SP3 */ 296 TRACE("ShellHookProc() stub\n"); 297 return 0; 298 } 299 300 /* 301 * Unimplemented 302 */ 303 EXTERN_C VOID 304 WINAPI 305 ShellExec_RunDLL(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow) 306 { 307 FIXME("ShellExec_RunDLL() stub\n"); 308 } 309 310 /* 311 * Unimplemented 312 */ 313 EXTERN_C VOID 314 WINAPI 315 ShellExec_RunDLLA(HWND hwnd, HINSTANCE hInstance, LPSTR pszCmdLine, int nCmdShow) 316 { 317 FIXME("ShellExec_RunDLLA() stub\n"); 318 } 319 320 /* 321 * Unimplemented 322 */ 323 EXTERN_C VOID 324 WINAPI 325 ShellExec_RunDLLW(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow) 326 { 327 FIXME("ShellExec_RunDLLW() stub\n"); 328 } 329 330 /* 331 * Unimplemented 332 */ 333 EXTERN_C BOOL 334 WINAPI 335 SheShortenPathW(LPWSTR lpPath, BOOL bShorten) 336 { 337 FIXME("SheShortenPathW() stub\n"); 338 return FALSE; 339 } 340 341 /* 342 * Unimplemented 343 */ 344 EXTERN_C BOOL 345 WINAPI 346 SheShortenPathA(LPSTR lpPath, BOOL bShorten) 347 { 348 BOOL ret; 349 WCHAR szPath[MAX_PATH]; 350 MultiByteToWideChar(CP_ACP, 0, lpPath, -1, szPath, _countof(szPath)); 351 ret = SheShortenPathW(szPath, bShorten); 352 WideCharToMultiByte(CP_ACP, 0, szPath, -1, lpPath, MAX_PATH, NULL, NULL); 353 return ret; 354 } 355 356 /* 357 * Unimplemented 358 */ 359 EXTERN_C INT 360 WINAPI 361 SheSetCurDrive(INT iIndex) 362 { 363 FIXME("SheSetCurDrive() stub\n"); 364 return 1; 365 } 366 367 /* 368 * Unimplemented 369 */ 370 EXTERN_C INT 371 WINAPI 372 SheGetPathOffsetW(LPWSTR lpPath) 373 { 374 FIXME("SheGetPathOffsetW() stub\n"); 375 return 0; 376 } 377 378 /* 379 * Unimplemented 380 */ 381 EXTERN_C BOOL 382 WINAPI 383 SheGetDirExW(LPWSTR lpDrive, 384 LPDWORD lpCurDirLen, 385 LPWSTR lpCurDir) 386 { 387 FIXME("SheGetDirExW() stub\n"); 388 return FALSE; 389 } 390 391 /* 392 * Unimplemented 393 */ 394 EXTERN_C INT 395 WINAPI 396 SheGetCurDrive(VOID) 397 { 398 FIXME("SheGetCurDrive() stub\n"); 399 return 1; 400 } 401 402 /* 403 * Unimplemented 404 */ 405 EXTERN_C INT 406 WINAPI 407 SheFullPathW(LPWSTR lpFullName, DWORD dwPathSize, LPWSTR lpBuffer) 408 { 409 FIXME("SheFullPathW() stub\n"); 410 return 0; 411 } 412 413 /* 414 * Unimplemented 415 */ 416 EXTERN_C INT 417 WINAPI 418 SheFullPathA(LPSTR lpFullName, DWORD dwPathSize, LPSTR lpBuffer) 419 { 420 FIXME("SheFullPathA() stub\n"); 421 return 0; 422 } 423 424 /* 425 * Unimplemented 426 */ 427 EXTERN_C BOOL 428 WINAPI 429 SheConvertPathW(LPWSTR lpCmd, LPWSTR lpFileName, UINT uCmdLen) 430 { 431 FIXME("SheConvertPathW() stub\n"); 432 return FALSE; 433 } 434 435 /* 436 * Unimplemented 437 */ 438 EXTERN_C INT 439 WINAPI 440 SheChangeDirExW(LPWSTR lpDir) 441 { 442 FIXME("SheChangeDirExW() stub\n"); 443 return 0; 444 } 445 446 /* 447 * Unimplemented 448 */ 449 EXTERN_C INT 450 WINAPI 451 SheChangeDirExA(LPSTR lpDir) 452 { 453 FIXME("SheChangeDirExA() stub\n"); 454 return 0; 455 } 456 457 /* 458 * Unimplemented 459 */ 460 EXTERN_C BOOL 461 WINAPI 462 SHInvokePrinterCommandW(HWND hwnd, 463 UINT uAction, 464 LPCWSTR lpBuf1, 465 LPCWSTR lpBuf2, 466 BOOL fModal) 467 { 468 FIXME("SHInvokePrinterCommandW() stub\n"); 469 return FALSE; 470 } 471 472 /* 473 * Unimplemented 474 */ 475 EXTERN_C BOOL 476 WINAPI 477 SHInvokePrinterCommandA(HWND hwnd, 478 UINT uAction, 479 LPCSTR lpBuf1, 480 LPCSTR lpBuf2, 481 BOOL fModal) 482 { 483 FIXME("SHInvokePrinterCommandA() stub\n"); 484 return FALSE; 485 } 486 487 /* 488 * Unimplemented 489 */ 490 EXTERN_C BOOL 491 WINAPI 492 SHCreateProcessAsUserW(PSHCREATEPROCESSINFOW pscpi) 493 { 494 FIXME("SHCreateProcessAsUserW() stub\n"); 495 return FALSE; 496 } 497 498 /* 499 * Unimplemented 500 */ 501 EXTERN_C VOID 502 WINAPI 503 PrintersGetCommand_RunDLL(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow) 504 { 505 FIXME("PrintersGetCommand_RunDLL() stub\n"); 506 } 507 508 /* 509 * Unimplemented 510 */ 511 EXTERN_C VOID 512 WINAPI 513 PrintersGetCommand_RunDLLA(HWND hwnd, HINSTANCE hInstance, LPSTR pszCmdLine, int nCmdShow) 514 { 515 FIXME("PrintersGetCommand_RunDLLA() stub\n"); 516 } 517 518 /* 519 * Unimplemented 520 */ 521 EXTERN_C VOID 522 WINAPI 523 PrintersGetCommand_RunDLLW(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow) 524 { 525 FIXME("PrintersGetCommand_RunDLLW() stub\n"); 526 } 527 528 /* 529 * Unimplemented 530 */ 531 EXTERN_C IShellFolderViewCB* 532 WINAPI 533 SHGetShellFolderViewCB(HWND hwnd) 534 { 535 FIXME("SHGetShellFolderViewCB() stub\n"); 536 return NULL; 537 } 538 539 /* 540 * Unimplemented 541 */ 542 EXTERN_C INT 543 WINAPI 544 SHLookupIconIndexA(LPCSTR lpName, INT iIndex, UINT uFlags) 545 { 546 FIXME("SHLookupIconIndexA() stub\n"); 547 return 0; 548 } 549 550 /* 551 * Unimplemented 552 */ 553 EXTERN_C INT 554 WINAPI 555 SHLookupIconIndexW(LPCWSTR lpName, INT iIndex, UINT uFlags) 556 { 557 FIXME("SHLookupIconIndexW() stub\n"); 558 return 0; 559 } 560 561 /* 562 * Unimplemented 563 */ 564 EXTERN_C HANDLE 565 WINAPI 566 PifMgr_OpenProperties(LPCWSTR lpAppPath, LPCWSTR lpPifPath, UINT hInfIndex, UINT options) 567 { 568 FIXME("PifMgr_OpenProperties() stub\n"); 569 return 0; 570 } 571 572 /* 573 * Unimplemented 574 */ 575 EXTERN_C INT 576 WINAPI 577 PifMgr_GetProperties(HANDLE hHandle, LPCSTR lpName, LPVOID lpUnknown, INT iUnknown, UINT uUnknown) 578 { 579 FIXME("PifMgr_GetProperties() stub\n"); 580 return 0; 581 } 582 583 /* 584 * Unimplemented 585 */ 586 EXTERN_C INT 587 WINAPI 588 PifMgr_SetProperties(HANDLE hHandle, LPCSTR lpName, LPCVOID lpUnknown, INT iUnknown, UINT uUnknown) 589 { 590 FIXME("PifMgr_SetProperties() stub\n"); 591 return 0; 592 } 593 594 /* 595 * Unimplemented 596 */ 597 EXTERN_C HRESULT 598 WINAPI 599 SHStartNetConnectionDialogW( 600 _In_ HWND hwnd, 601 _In_ LPCWSTR pszRemoteName, 602 _In_ DWORD dwType) 603 { 604 FIXME("SHStartNetConnectionDialogW() stub\n"); 605 return E_FAIL; 606 } 607 608 /* 609 * Unimplemented 610 */ 611 EXTERN_C HANDLE 612 WINAPI 613 PifMgr_CloseProperties(HANDLE hHandle, UINT uUnknown) 614 { 615 FIXME("PifMgr_CloseProperties() stub\n"); 616 return NULL; 617 } 618 619 /* 620 * Unimplemented 621 */ 622 EXTERN_C BOOL 623 WINAPI 624 DAD_DragEnterEx2(HWND hwndTarget, 625 POINT ptStart, 626 IDataObject *pdtObject) 627 { 628 FIXME("DAD_DragEnterEx2() stub\n"); 629 return FALSE; 630 } 631 632 /* 633 * Unimplemented 634 */ 635 EXTERN_C UINT 636 WINAPI 637 SHGetNetResource(LPVOID lpUnknown1, UINT iIndex, LPVOID lpUnknown2, UINT cchMax) 638 { 639 FIXME("SHGetNetResource() stub\n"); 640 return 0; 641 } 642 643 /* 644 * Unimplemented 645 */ 646 EXTERN_C BOOL 647 WINAPI 648 DragQueryInfo(HDROP hDrop, DRAGINFO *pDragInfo) 649 { 650 FIXME("DragQueryInfo() stub\n"); 651 return FALSE; 652 } 653 654 /* 655 * Unimplemented 656 */ 657 EXTERN_C LPVOID 658 WINAPI 659 DDECreatePostNotify(LPVOID lpUnknown) 660 { 661 FIXME("DDECreatePostNotify() stub\n"); 662 return NULL; 663 } 664 665 /* 666 * Unimplemented 667 */ 668 EXTERN_C BOOL 669 WINAPI 670 SHIsBadInterfacePtr(LPVOID pv, UINT ucb) 671 { 672 FIXME("SHIsBadInterfacePtr() stub\n"); 673 return FALSE; 674 } 675 676 /* 677 * Unimplemented 678 */ 679 EXTERN_C VOID 680 WINAPI 681 AppCompat_RunDLLW(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow) 682 { 683 FIXME("AppCompat_RunDLLW() stub\n"); 684 } 685 686 /* 687 * Unimplemented 688 */ 689 EXTERN_C VOID 690 WINAPI 691 Control_RunDLLAsUserW(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow) 692 { 693 FIXME("Control_RunDLLAsUserW() stub\n"); 694 } 695 696 /* 697 * Unimplemented 698 */ 699 EXTERN_C UINT 700 WINAPI 701 DragQueryFileAorW(HDROP hDrop, UINT iIndex, LPWSTR lpFile, UINT ucb, BOOL bUnicode, BOOL bShorten) 702 { 703 FIXME("DragQueryFileAorW() stub\n"); 704 return 0; 705 } 706 707 /* 708 * Unimplemented 709 */ 710 EXTERN_C DWORD 711 WINAPI 712 SHNetConnectionDialog(HWND hwndOwner, 713 LPCWSTR lpstrRemoteName, 714 DWORD dwType) 715 { 716 FIXME("SHNetConnectionDialog() stub\n"); 717 return ERROR_INVALID_PARAMETER; 718 } 719 720 /* 721 * Unimplemented 722 */ 723 EXTERN_C BOOL 724 WINAPI 725 DAD_SetDragImageFromListView(HWND hwnd, POINT pt) 726 { 727 FIXME("DAD_SetDragImageFromListView() stub\n"); 728 return FALSE; 729 } 730 731 /* 732 * Unimplemented 733 */ 734 EXTERN_C void 735 WINAPI 736 SHHandleDiskFull(HWND hwndOwner, UINT uDrive) 737 { 738 FIXME("SHHandleDiskFull() stub\n"); 739 } 740 741 /* 742 * Unimplemented 743 */ 744 EXTERN_C BOOL 745 WINAPI 746 ILGetPseudoNameW(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2, LPWSTR szStr, INT iUnknown) 747 { 748 /* Unimplemented in WinXP SP3 */ 749 TRACE("ILGetPseudoNameW() stub\n"); 750 *szStr = 0; 751 return FALSE; 752 } 753 754 /* 755 * Unimplemented 756 */ 757 EXTERN_C VOID 758 WINAPI 759 SHGlobalDefect(DWORD dwUnknown) 760 { 761 /* Unimplemented in WinXP SP3 */ 762 TRACE("SHGlobalDefect() stub\n"); 763 } 764 765 /* 766 * Unimplemented 767 */ 768 EXTERN_C LPITEMIDLIST 769 WINAPI 770 Printers_GetPidl(LPCITEMIDLIST pidl, LPCWSTR lpName, DWORD dwUnknown1, DWORD dwUnknown2) 771 { 772 FIXME("Printers_GetPidl() stub\n"); 773 return NULL; 774 } 775 776 /* 777 * Unimplemented 778 */ 779 EXTERN_C LONG 780 WINAPI 781 Printers_AddPrinterPropPages(LPVOID lpUnknown1, LPVOID lpUnknown2) 782 { 783 FIXME("Printers_AddPrinterPropPages() stub\n"); 784 return 0; 785 } 786 787 /* 788 * Unimplemented 789 */ 790 EXTERN_C WORD 791 WINAPI 792 ExtractIconResInfoW( 793 _In_ HANDLE hHandle, 794 _In_ LPCWSTR lpFileName, 795 _In_ WORD wIndex, 796 _Out_ LPWORD lpSize, 797 _Out_ LPHANDLE lpIcon) 798 { 799 FIXME("ExtractIconResInfoW() stub\n"); 800 return 0; 801 } 802 803 /* 804 * Unimplemented 805 */ 806 EXTERN_C DWORD 807 WINAPI 808 ExtractVersionResource16W(LPWSTR lpName, LPHANDLE lpHandle) 809 { 810 FIXME("ExtractVersionResource16W() stub\n"); 811 return 0; 812 } 813 814 /* 815 * Unimplemented 816 */ 817 EXTERN_C BOOL* 818 WINAPI 819 FindExeDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) 820 { 821 FIXME("FindExeDlgProc() stub\n"); 822 return 0; 823 } 824 825 /* 826 * Unimplemented 827 */ 828 EXTERN_C HANDLE 829 WINAPI 830 InternalExtractIconListW(HANDLE hHandle, 831 LPWSTR lpFileName, 832 LPINT lpCount) 833 { 834 FIXME("InternalExtractIconListW() stub\n"); 835 return NULL; 836 } 837 838 /* 839 * Unimplemented 840 */ 841 EXTERN_C HANDLE 842 WINAPI 843 InternalExtractIconListA(HANDLE hHandle, 844 LPSTR lpFileName, 845 LPINT lpCount) 846 { 847 FIXME("InternalExtractIconListA() stub\n"); 848 return NULL; 849 } 850 851 /* 852 * Unimplemented 853 */ 854 EXTERN_C HRESULT 855 WINAPI 856 FirstUserLogon(LPWSTR lpUnknown1, LPWSTR lpUnknown2) 857 { 858 FIXME("FirstUserLogon() stub\n"); 859 return E_FAIL; 860 } 861 862 /* 863 * Unimplemented 864 */ 865 EXTERN_C HRESULT 866 WINAPI 867 SHSetFolderPathW( 868 _In_ INT csidl, 869 _In_ HANDLE hToken, 870 _In_ DWORD dwFlags, 871 _In_ LPCWSTR pszPath) 872 { 873 FIXME("SHSetFolderPathW() stub\n"); 874 return E_FAIL; 875 } 876 877 /* 878 * Unimplemented 879 */ 880 EXTERN_C HRESULT 881 WINAPI 882 SHGetUserPicturePathW(LPCWSTR lpPath, int csidl, LPVOID lpUnknown) 883 { 884 FIXME("SHGetUserPicturePathW() stub\n"); 885 return E_FAIL; 886 } 887 888 /* 889 * Unimplemented 890 */ 891 EXTERN_C HRESULT 892 WINAPI 893 SHSetUserPicturePathW(LPCWSTR lpPath, int csidl, LPVOID lpUnknown) 894 { 895 FIXME("SHGetUserPicturePathA() stub\n"); 896 return E_FAIL; 897 } 898 899 /* 900 * Unimplemented 901 */ 902 EXTERN_C BOOL 903 WINAPI 904 PathIsSlowW( 905 _In_ LPCWSTR pszFile, 906 _In_ DWORD dwAttr) 907 { 908 FIXME("PathIsSlowW() stub\n"); 909 return FALSE; 910 } 911 912 /* 913 * Unimplemented 914 */ 915 EXTERN_C DWORD 916 WINAPI 917 SHGetProcessDword(DWORD dwUnknown1, DWORD dwUnknown2) 918 { 919 /* Unimplemented in WinXP SP3 */ 920 TRACE("SHGetProcessDword() stub\n"); 921 return 0; 922 } 923 924 EXTERN_C 925 DWORD WINAPI CheckStagingArea(VOID) 926 { 927 /* Called by native explorer */ 928 return 0; 929 } 930 931 EXTERN_C 932 DWORD WINAPI SHGetComputerDisplayNameW(DWORD param1, DWORD param2, DWORD param3, DWORD param4) 933 { 934 FIXME("SHGetComputerDisplayNameW() stub\n"); 935 return E_FAIL; 936 } 937