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