xref: /reactos/dll/win32/shell32/stubs.cpp (revision 016acd17)
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 LPWSTR
21 WINAPI
22 ShortSizeFormatW(LONGLONG llNumber)
23 {
24     FIXME("ShortSizeFormatW() stub\n");
25     return NULL;
26 }
27 
28 /*
29  * Unimplemented
30  */
31 EXTERN_C BOOL
32 WINAPI
33 SHFindComputer(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2)
34 {
35     FIXME("SHFindComputer() stub\n");
36     return FALSE;
37 }
38 
39 /*
40  * Unimplemented
41  */
42 EXTERN_C BOOL
43 WINAPI
44 PathIsEqualOrSubFolder(LPWSTR lpFolder, LPWSTR lpSubFolder)
45 {
46     FIXME("PathIsEqualOrSubFolder() stub\n");
47     return FALSE;
48 }
49 
50 EXTERN_C HRESULT
51 WINAPI
52 SHGetUnreadMailCountW(HKEY hKeyUser,
53                       LPCWSTR pszMailAddress,
54                       DWORD *pdwCount,
55                       FILETIME *pFileTime,
56                       LPWSTR pszShellExecuteCommand,
57                       int cchShellExecuteCommand)
58 {
59     FIXME("SHGetUnreadMailCountW() stub\n");
60     return E_FAIL;
61 }
62 
63 /*
64  * Unimplemented
65  */
66 EXTERN_C HRESULT
67 WINAPI
68 SHSetUnreadMailCountW(LPCWSTR pszMailAddress,
69                       DWORD dwCount,
70                       LPCWSTR pszShellExecuteCommand)
71 {
72     FIXME("SHSetUnreadMailCountW() stub\n");
73     return E_FAIL;
74 }
75 
76 /*
77  * Unimplemented
78  */
79 EXTERN_C HRESULT
80 WINAPI
81 SHEnumerateUnreadMailAccountsW(HKEY user,
82                                DWORD idx,
83                                LPWSTR mailaddress,
84                                INT mailaddresslen)
85 {
86     FIXME("SHEnumerateUnreadMailAccountsW(%p %d %p %d) stub\n",
87         user, idx, mailaddress, mailaddresslen);
88     return E_NOTIMPL;
89 }
90 
91 /*
92  * Unimplemented
93  */
94 EXTERN_C VOID
95 WINAPI
96 CheckDiskSpace(VOID)
97 {
98     FIXME("CheckDiskSpace() stub\n");
99 }
100 
101 /*
102  * Unimplemented
103  */
104 EXTERN_C VOID
105 WINAPI
106 SHReValidateDarwinCache(VOID)
107 {
108     FIXME("SHReValidateDarwinCache() stub\n");
109 }
110 
111 /*
112  * Unimplemented
113  */
114 EXTERN_C HRESULT
115 WINAPI
116 CopyStreamUI(IStream *pSrc, IStream *pDst, IProgressDialog *pProgDlg)
117 {
118     FIXME("CopyStreamUI() stub\n");
119     return E_FAIL;
120 }
121 
122 /*
123  * Unimplemented
124  */
125 EXTERN_C FILEDESCRIPTOR*
126 WINAPI
127 GetFileDescriptor(FILEGROUPDESCRIPTOR *pFileGroupDesc, BOOL bUnicode, INT iIndex, LPWSTR lpName)
128 {
129     FIXME("GetFileDescriptor() stub\n");
130     return NULL;
131 }
132 
133 /*
134  * Unimplemented
135  */
136 EXTERN_C BOOL
137 WINAPI
138 MakeShellURLFromPathW(LPCWSTR lpPath, LPWSTR lpUrl, INT cchMax)
139 {
140     FIXME("MakeShellURLFromPathW() stub\n");
141     lpUrl = NULL;
142     return FALSE;
143 }
144 
145 /*
146  * Unimplemented
147  */
148 EXTERN_C BOOL
149 WINAPI
150 MakeShellURLFromPathA(LPCSTR lpPath, LPSTR lpUrl, INT cchMax)
151 {
152     WCHAR szPath[MAX_PATH], szURL[MAX_PATH];
153     BOOL ret;
154     SHAnsiToUnicode(lpPath, szPath, _countof(szPath));
155     ret = MakeShellURLFromPathW(szPath, szURL, _countof(szURL));
156     SHUnicodeToAnsi(szURL, lpUrl, cchMax);
157     return ret;
158 }
159 
160 /*
161  * Unimplemented
162  */
163 EXTERN_C HRESULT
164 WINAPI
165 SHParseDarwinIDFromCacheW(LPCWSTR lpUnknown1, LPWSTR lpUnknown2)
166 {
167     FIXME("SHParseDarwinIDFromCacheW() stub\n");
168     lpUnknown2 = NULL;
169     return E_FAIL;
170 }
171 
172 /*
173  * Unimplemented
174  */
175 EXTERN_C HRESULT
176 WINAPI
177 SHMultiFileProperties(IDataObject *pDataObject, DWORD dwFlags)
178 {
179     FIXME("SHMultiFileProperties() stub\n");
180     return E_FAIL;
181 }
182 
183 /*
184  * Unimplemented
185  */
186 EXTERN_C HRESULT
187 WINAPI
188 SHCopyMonikerToTemp(IMoniker *pMoniker, LPCWSTR lpInput, LPWSTR lpOutput, INT cchMax)
189 {
190     /* Unimplemented in XP SP3 */
191     TRACE("SHCopyMonikerToTemp() stub\n");
192     return E_FAIL;
193 }
194 
195 /*
196  * Unimplemented
197  */
198 EXTERN_C HLOCAL
199 WINAPI
200 CheckWinIniForAssocs(VOID)
201 {
202     FIXME("CheckWinIniForAssocs() stub\n");
203     return NULL;
204 }
205 
206 /*
207  * Unimplemented
208  */
209 EXTERN_C HRESULT
210 WINAPI
211 SHGetSetFolderCustomSettingsW(LPSHFOLDERCUSTOMSETTINGSW pfcs,
212                               LPCWSTR pszPath,
213                               DWORD dwReadWrite)
214 {
215     FIXME("SHGetSetFolderCustomSettingsW() stub\n");
216     return E_FAIL;
217 }
218 
219 /*
220  * Unimplemented
221  */
222 EXTERN_C HRESULT
223 WINAPI
224 SHGetSetFolderCustomSettingsA(LPSHFOLDERCUSTOMSETTINGSA pfcs,
225                               LPCSTR pszPath,
226                               DWORD dwReadWrite)
227 {
228     FIXME("SHGetSetFolderCustomSettingsA() stub\n");
229     return E_FAIL;
230 }
231 
232 /*
233  * Unimplemented
234  */
235 EXTERN_C BOOL
236 WINAPI
237 SHOpenPropSheetA(LPCSTR lpCaption,
238                  HKEY hKeys[],
239                  UINT uCount,
240                  const CLSID *pClsID,
241                  IDataObject *pDataObject,
242                  IShellBrowser *pShellBrowser,
243                  LPCSTR lpStartPage)
244 {
245     FIXME("SHOpenPropSheetA() stub\n");
246     return FALSE;
247 }
248 
249 /*
250  * Unimplemented
251  */
252 EXTERN_C BOOL
253 WINAPI
254 SHOpenPropSheetW(LPCWSTR lpCaption,
255                  HKEY hKeys[],
256                  UINT uCount,
257                  const CLSID *pClsID,
258                  IDataObject *pDataObject,
259                  IShellBrowser *pShellBrowser,
260                  LPCWSTR lpStartPage)
261 {
262     FIXME("SHOpenPropSheetW() stub\n");
263     return FALSE;
264 }
265 
266 /*
267  * Unimplemented
268  */
269 EXTERN_C VOID
270 WINAPI
271 CDefFolderMenu_MergeMenu(HINSTANCE hInstance,
272                          UINT uMainMerge,
273                          UINT uPopupMerge,
274                          LPQCMINFO lpQcmInfo)
275 {
276     FIXME("CDefFolderMenu_MergeMenu() stub\n");
277 }
278 
279 /*
280  * Unimplemented
281  */
282 EXTERN_C HRESULT
283 WINAPI
284 CDefFolderMenu_Create(LPITEMIDLIST pidlFolder,
285                       HWND hwnd,
286                       UINT uidl,
287                       PCUITEMID_CHILD_ARRAY *apidl,
288                       IShellFolder *psf,
289                       LPFNDFMCALLBACK lpfn,
290                       HKEY hProgID,
291                       HKEY hBaseProgID,
292                       IContextMenu **ppcm)
293 {
294     FIXME("CDefFolderMenu_Create() stub\n");
295     return E_FAIL;
296 }
297 
298 /*
299  * Unimplemented
300  */
301 EXTERN_C VOID
302 WINAPI
303 SHWaitOp_Operate(LPVOID lpUnknown1, DWORD dwUnknown2)
304 {
305     FIXME("SHWaitOp_Operate() stub\n");
306 }
307 
308 /*
309  * Unimplemented
310  */
311 EXTERN_C INT
312 WINAPI
313 RealDriveTypeFlags(INT iDrive, BOOL bUnknown)
314 {
315     FIXME("RealDriveTypeFlags() stub\n");
316     return 1;
317 }
318 
319 /*
320  * Unimplemented
321  */
322 EXTERN_C LPWSTR
323 WINAPI
324 StrRStrW(LPWSTR lpSrc, LPWSTR lpLast, LPWSTR lpSearch)
325 {
326     FIXME("StrRStrW() stub\n");
327     return NULL;
328 }
329 
330 /*
331  * Unimplemented
332  */
333 EXTERN_C LPWSTR
334 WINAPI
335 StrRStrA(LPSTR lpSrc, LPSTR lpLast, LPSTR lpSearch)
336 {
337     FIXME("StrRStrA() stub\n");
338     return NULL;
339 }
340 
341 /*
342  * Unimplemented
343  */
344 EXTERN_C LONG
345 WINAPI
346 ShellHookProc(INT iCode, WPARAM wParam, LPARAM lParam)
347 {
348     /* Unimplemented in WinXP SP3 */
349     TRACE("ShellHookProc() stub\n");
350     return 0;
351 }
352 
353 /*
354  * Unimplemented
355  */
356 EXTERN_C VOID
357 WINAPI
358 ShellExec_RunDLL(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow)
359 {
360     FIXME("ShellExec_RunDLL() stub\n");
361 }
362 
363 /*
364  * Unimplemented
365  */
366 EXTERN_C VOID
367 WINAPI
368 ShellExec_RunDLLA(HWND hwnd, HINSTANCE hInstance, LPSTR pszCmdLine, int nCmdShow)
369 {
370     FIXME("ShellExec_RunDLLA() stub\n");
371 }
372 
373 /*
374  * Unimplemented
375  */
376 EXTERN_C VOID
377 WINAPI
378 ShellExec_RunDLLW(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow)
379 {
380     FIXME("ShellExec_RunDLLW() stub\n");
381 }
382 
383 /*
384  * Unimplemented
385  */
386 EXTERN_C BOOL
387 WINAPI
388 SheShortenPathW(LPWSTR lpPath, BOOL bShorten)
389 {
390     FIXME("SheShortenPathW() stub\n");
391     return FALSE;
392 }
393 
394 /*
395  * Unimplemented
396  */
397 EXTERN_C BOOL
398 WINAPI
399 SheShortenPathA(LPSTR lpPath, BOOL bShorten)
400 {
401     BOOL ret;
402     WCHAR szPath[MAX_PATH];
403     MultiByteToWideChar(CP_ACP, 0, lpPath, -1, szPath, _countof(szPath));
404     ret = SheShortenPathW(szPath, bShorten);
405     WideCharToMultiByte(CP_ACP, 0, szPath, -1, lpPath, MAX_PATH, NULL, NULL);
406     return ret;
407 }
408 
409 /*
410  * Unimplemented
411  */
412 EXTERN_C INT
413 WINAPI
414 SheSetCurDrive(INT iIndex)
415 {
416     FIXME("SheSetCurDrive() stub\n");
417     return 1;
418 }
419 
420 /*
421  * Unimplemented
422  */
423 EXTERN_C INT
424 WINAPI
425 SheGetPathOffsetW(LPWSTR lpPath)
426 {
427     FIXME("SheGetPathOffsetW() stub\n");
428     return 0;
429 }
430 
431 /*
432  * Unimplemented
433  */
434 EXTERN_C BOOL
435 WINAPI
436 SheGetDirExW(LPWSTR lpDrive,
437              LPDWORD lpCurDirLen,
438              LPWSTR lpCurDir)
439 {
440     FIXME("SheGetDirExW() stub\n");
441     return FALSE;
442 }
443 
444 /*
445  * Unimplemented
446  */
447 EXTERN_C INT
448 WINAPI
449 SheGetCurDrive(VOID)
450 {
451     FIXME("SheGetCurDrive() stub\n");
452     return 1;
453 }
454 
455 /*
456  * Unimplemented
457  */
458 EXTERN_C INT
459 WINAPI
460 SheFullPathW(LPWSTR lpFullName, DWORD dwPathSize, LPWSTR lpBuffer)
461 {
462     FIXME("SheFullPathW() stub\n");
463     return 0;
464 }
465 
466 /*
467  * Unimplemented
468  */
469 EXTERN_C INT
470 WINAPI
471 SheFullPathA(LPSTR lpFullName, DWORD dwPathSize, LPSTR lpBuffer)
472 {
473     FIXME("SheFullPathA() stub\n");
474     return 0;
475 }
476 
477 /*
478  * Unimplemented
479  */
480 EXTERN_C BOOL
481 WINAPI
482 SheConvertPathW(LPWSTR lpCmd, LPWSTR lpFileName, UINT uCmdLen)
483 {
484     FIXME("SheConvertPathW() stub\n");
485     return FALSE;
486 }
487 
488 /*
489  * Unimplemented
490  */
491 EXTERN_C INT
492 WINAPI
493 SheChangeDirExW(LPWSTR lpDir)
494 {
495     FIXME("SheChangeDirExW() stub\n");
496     return 0;
497 }
498 
499 /*
500  * Unimplemented
501  */
502 EXTERN_C INT
503 WINAPI
504 SheChangeDirExA(LPSTR lpDir)
505 {
506     FIXME("SheChangeDirExA() stub\n");
507     return 0;
508 }
509 
510 /*
511  * Unimplemented
512  */
513 EXTERN_C BOOL
514 WINAPI
515 SHInvokePrinterCommandW(HWND hwnd,
516                         UINT uAction,
517                         LPCWSTR lpBuf1,
518                         LPCWSTR lpBuf2,
519                         BOOL fModal)
520 {
521     FIXME("SHInvokePrinterCommandW() stub\n");
522     return FALSE;
523 }
524 
525 /*
526  * Unimplemented
527  */
528 EXTERN_C BOOL
529 WINAPI
530 SHInvokePrinterCommandA(HWND hwnd,
531                         UINT uAction,
532                         LPCSTR lpBuf1,
533                         LPCSTR lpBuf2,
534                         BOOL fModal)
535 {
536     FIXME("SHInvokePrinterCommandA() stub\n");
537     return FALSE;
538 }
539 
540 /*
541  * Unimplemented
542  */
543 EXTERN_C BOOL
544 WINAPI
545 SHCreateProcessAsUserW(PSHCREATEPROCESSINFOW pscpi)
546 {
547     FIXME("SHCreateProcessAsUserW() stub\n");
548     return FALSE;
549 }
550 
551 /*
552  * Unimplemented
553  */
554 EXTERN_C HINSTANCE
555 WINAPI
556 RealShellExecuteExA(HWND hwnd,
557                     LPCSTR lpOperation,
558                     LPCSTR lpFile,
559                     LPCSTR lpParameters,
560                     LPCSTR lpDirectory,
561                     LPSTR lpReturn,
562                     LPCSTR lpTitle,
563                     LPSTR lpReserved,
564                     WORD nShowCmd,
565                     HANDLE *lpProcess,
566                     DWORD dwFlags)
567 {
568     FIXME("RealShellExecuteExA() stub\n");
569     return NULL;
570 }
571 
572 /*
573  * Unimplemented
574  */
575 EXTERN_C HINSTANCE
576 WINAPI
577 RealShellExecuteExW(HWND hwnd,
578                     LPCWSTR lpOperation,
579                     LPCWSTR lpFile,
580                     LPCWSTR lpParameters,
581                     LPCWSTR lpDirectory,
582                     LPWSTR lpReturn,
583                     LPCWSTR lpTitle,
584                     LPWSTR lpReserved,
585                     WORD nShowCmd,
586                     HANDLE *lpProcess,
587                     DWORD dwFlags)
588 {
589     FIXME("RealShellExecuteExW() stub\n");
590     return NULL;
591 }
592 
593 /*
594  * Implemented
595  */
596 EXTERN_C HINSTANCE
597 WINAPI
598 RealShellExecuteA(HWND hwnd,
599                   LPCSTR lpOperation,
600                   LPCSTR lpFile,
601                   LPCSTR lpParameters,
602                   LPCSTR lpDirectory,
603                   LPSTR lpReturn,
604                   LPCSTR lpTitle,
605                   LPSTR lpReserved,
606                   WORD nShowCmd,
607                   HANDLE *lpProcess)
608 {
609     return RealShellExecuteExA(hwnd,
610                                lpOperation,
611                                lpFile,
612                                lpParameters,
613                                lpDirectory,
614                                lpReturn,
615                                lpTitle,
616                                lpReserved,
617                                nShowCmd,
618                                lpProcess,
619                                0);
620 }
621 
622 /*
623  * Implemented
624  */
625 EXTERN_C HINSTANCE
626 WINAPI
627 RealShellExecuteW(HWND hwnd,
628                   LPCWSTR lpOperation,
629                   LPCWSTR lpFile,
630                   LPCWSTR lpParameters,
631                   LPCWSTR lpDirectory,
632                   LPWSTR lpReturn,
633                   LPCWSTR lpTitle,
634                   LPWSTR lpReserved,
635                   WORD nShowCmd,
636                   HANDLE *lpProcess)
637 {
638     return RealShellExecuteExW(hwnd,
639                                lpOperation,
640                                lpFile,
641                                lpParameters,
642                                lpDirectory,
643                                lpReturn,
644                                lpTitle,
645                                lpReserved,
646                                nShowCmd,
647                                lpProcess,
648                                0);
649 }
650 
651 /*
652  * Unimplemented
653  */
654 EXTERN_C VOID
655 WINAPI
656 PrintersGetCommand_RunDLL(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow)
657 {
658     FIXME("PrintersGetCommand_RunDLL() stub\n");
659 }
660 
661 /*
662  * Unimplemented
663  */
664 EXTERN_C VOID
665 WINAPI
666 PrintersGetCommand_RunDLLA(HWND hwnd, HINSTANCE hInstance, LPSTR pszCmdLine, int nCmdShow)
667 {
668     FIXME("PrintersGetCommand_RunDLLA() stub\n");
669 }
670 
671 /*
672  * Unimplemented
673  */
674 EXTERN_C VOID
675 WINAPI
676 PrintersGetCommand_RunDLLW(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow)
677 {
678     FIXME("PrintersGetCommand_RunDLLW() stub\n");
679 }
680 
681 /*
682  * Unimplemented
683  */
684 EXTERN_C IShellFolderViewCB*
685 WINAPI
686 SHGetShellFolderViewCB(HWND hwnd)
687 {
688     FIXME("SHGetShellFolderViewCB() stub\n");
689     return NULL;
690 }
691 
692 /*
693  * Unimplemented
694  */
695 EXTERN_C INT
696 WINAPI
697 SHLookupIconIndexA(LPCSTR lpName, INT iIndex, UINT uFlags)
698 {
699     FIXME("SHLookupIconIndexA() stub\n");
700     return 0;
701 }
702 
703 /*
704  * Unimplemented
705  */
706 EXTERN_C INT
707 WINAPI
708 SHLookupIconIndexW(LPCWSTR lpName, INT iIndex, UINT uFlags)
709 {
710     FIXME("SHLookupIconIndexW() stub\n");
711     return 0;
712 }
713 
714 /*
715  * Unimplemented
716  */
717 EXTERN_C HANDLE
718 WINAPI
719 PifMgr_OpenProperties(LPCWSTR lpAppPath, LPCWSTR lpPifPath, UINT hInfIndex, UINT options)
720 {
721     FIXME("PifMgr_OpenProperties() stub\n");
722     return 0;
723 }
724 
725 /*
726  * Unimplemented
727  */
728 EXTERN_C INT
729 WINAPI
730 PifMgr_GetProperties(HANDLE hHandle, LPCSTR lpName, LPVOID lpUnknown, INT iUnknown, UINT uUnknown)
731 {
732     FIXME("PifMgr_GetProperties() stub\n");
733     return 0;
734 }
735 
736 /*
737  * Unimplemented
738  */
739 EXTERN_C INT
740 WINAPI
741 PifMgr_SetProperties(HANDLE hHandle, LPCSTR lpName, LPCVOID lpUnknown, INT iUnknown, UINT uUnknown)
742 {
743     FIXME("PifMgr_SetProperties() stub\n");
744     return 0;
745 }
746 
747 /*
748  * Unimplemented
749  */
750 EXTERN_C HRESULT
751 WINAPI
752 SHStartNetConnectionDialogA(HWND hwnd,
753                             LPCSTR pszRemoteName,
754                             DWORD dwType)
755 {
756     FIXME("SHStartNetConnectionDialogA() stub\n");
757     return E_FAIL;
758 }
759 
760 /*
761  * Unimplemented
762  */
763 EXTERN_C HRESULT
764 WINAPI
765 SHStartNetConnectionDialogW(HWND hwnd,
766                             LPCWSTR pszRemoteName,
767                             DWORD dwType)
768 {
769     FIXME("SHStartNetConnectionDialogW() stub\n");
770     return E_FAIL;
771 }
772 
773 /*
774  * Unimplemented
775  */
776 EXTERN_C HANDLE
777 WINAPI
778 PifMgr_CloseProperties(HANDLE hHandle, UINT uUnknown)
779 {
780     FIXME("PifMgr_CloseProperties() stub\n");
781     return NULL;
782 }
783 
784 /*
785  * Unimplemented
786  */
787 EXTERN_C BOOL
788 WINAPI
789 DAD_DragEnterEx2(HWND hwndTarget,
790                  POINT ptStart,
791                  IDataObject *pdtObject)
792 {
793     FIXME("DAD_DragEnterEx2() stub\n");
794     return FALSE;
795 }
796 
797 /*
798  * Unimplemented
799  */
800 EXTERN_C BOOL
801 WINAPI
802 IsSuspendAllowed(VOID)
803 {
804     FIXME("IsSuspendAllowed() stub\n");
805     return FALSE;
806 }
807 
808 /*
809  * Unimplemented
810  */
811 EXTERN_C UINT
812 WINAPI
813 SHGetNetResource(LPVOID lpUnknown1, UINT iIndex, LPVOID lpUnknown2, UINT cchMax)
814 {
815     FIXME("SHGetNetResource() stub\n");
816     return 0;
817 }
818 
819 /*
820  * Unimplemented
821  */
822 EXTERN_C BOOL
823 WINAPI
824 DragQueryInfo(HDROP hDrop, DRAGINFO *pDragInfo)
825 {
826     FIXME("DragQueryInfo() stub\n");
827     return FALSE;
828 }
829 
830 /*
831  * Unimplemented
832  */
833 EXTERN_C LPVOID
834 WINAPI
835 DDECreatePostNotify(LPVOID lpUnknown)
836 {
837     FIXME("DDECreatePostNotify() stub\n");
838     return NULL;
839 }
840 
841 /*
842  * Unimplemented
843  */
844 EXTERN_C BOOL
845 WINAPI
846 SHIsBadInterfacePtr(LPVOID pv, UINT ucb)
847 {
848     FIXME("SHIsBadInterfacePtr() stub\n");
849     return FALSE;
850 }
851 
852 /*
853  * Unimplemented
854  */
855 EXTERN_C BOOL
856 WINAPI
857 Activate_RunDLL(DWORD dwProcessId, LPVOID lpUnused1, LPVOID lpUnused2, LPVOID lpUnused3)
858 {
859     FIXME("Activate_RunDLL() stub\n");
860     return FALSE;
861 }
862 
863 /*
864  * Unimplemented
865  */
866 EXTERN_C VOID
867 WINAPI
868 AppCompat_RunDLLW(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow)
869 {
870     FIXME("AppCompat_RunDLLW() stub\n");
871 }
872 
873 /*
874  * Unimplemented
875  */
876 EXTERN_C VOID
877 WINAPI
878 Control_RunDLLAsUserW(HWND hwnd, HINSTANCE hInstance, LPWSTR pszCmdLine, int nCmdShow)
879 {
880     FIXME("Control_RunDLLAsUserW() stub\n");
881 }
882 
883 /*
884  * Unimplemented
885  */
886 EXTERN_C UINT
887 WINAPI
888 DragQueryFileAorW(HDROP hDrop, UINT iIndex, LPWSTR lpFile, UINT ucb, BOOL bUnicode, BOOL bShorten)
889 {
890     FIXME("DragQueryFileAorW() stub\n");
891     return 0;
892 }
893 
894 /*
895  * Unimplemented
896  */
897 EXTERN_C DWORD
898 WINAPI
899 SHNetConnectionDialog(HWND hwndOwner,
900                       LPCWSTR lpstrRemoteName,
901                       DWORD dwType)
902 {
903     FIXME("SHNetConnectionDialog() stub\n");
904     return ERROR_INVALID_PARAMETER;
905 }
906 
907 /*
908  * Unimplemented
909  */
910 EXTERN_C BOOL
911 WINAPI
912 DAD_SetDragImageFromListView(HWND hwnd, POINT pt)
913 {
914     FIXME("DAD_SetDragImageFromListView() stub\n");
915     return FALSE;
916 }
917 
918 /*
919  * Unimplemented
920  */
921 EXTERN_C void
922 WINAPI
923 SHHandleDiskFull(HWND hwndOwner, UINT uDrive)
924 {
925     FIXME("SHHandleDiskFull() stub\n");
926 }
927 
928 /*
929  * Unimplemented
930  */
931 EXTERN_C BOOL
932 WINAPI
933 ILGetPseudoNameW(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2, LPWSTR szStr, INT iUnknown)
934 {
935     /* Unimplemented in WinXP SP3 */
936     TRACE("ILGetPseudoNameW() stub\n");
937     *szStr = 0;
938     return FALSE;
939 }
940 
941 /*
942  * Unimplemented
943  */
944 EXTERN_C VOID
945 WINAPI
946 SHGlobalDefect(DWORD dwUnknown)
947 {
948     /* Unimplemented in WinXP SP3 */
949     TRACE("SHGlobalDefect() stub\n");
950 }
951 
952 /*
953  * Unimplemented
954  */
955 EXTERN_C LPITEMIDLIST
956 WINAPI
957 Printers_GetPidl(LPCITEMIDLIST pidl, LPCWSTR lpName, DWORD dwUnknown1, DWORD dwUnknown2)
958 {
959     FIXME("Printers_GetPidl() stub\n");
960     return NULL;
961 }
962 
963 /*
964  * Unimplemented
965  */
966 EXTERN_C INT
967 WINAPI
968 Int64ToString(LONGLONG llInt64,
969               LPWSTR lpOut,
970               UINT uSize,
971               BOOL bUseFormat,
972               NUMBERFMT *pNumberFormat,
973               DWORD dwNumberFlags)
974 {
975     FIXME("Int64ToString() stub\n");
976     return 0;
977 }
978 
979 /*
980  * Unimplemented
981  */
982 EXTERN_C INT
983 WINAPI
984 LargeIntegerToString(LARGE_INTEGER *pLargeInt,
985                      LPWSTR lpOut,
986                      UINT uSize,
987                      BOOL bUseFormat,
988                      NUMBERFMT *pNumberFormat,
989                      DWORD dwNumberFlags)
990 {
991     FIXME("LargeIntegerToString() stub\n");
992     return 0;
993 }
994 
995 /*
996  * Unimplemented
997  */
998 EXTERN_C LONG
999 WINAPI
1000 Printers_AddPrinterPropPages(LPVOID lpUnknown1, LPVOID lpUnknown2)
1001 {
1002     FIXME("Printers_AddPrinterPropPages() stub\n");
1003     return 0;
1004 }
1005 
1006 /*
1007  * Unimplemented
1008  */
1009 EXTERN_C WORD
1010 WINAPI
1011 ExtractIconResInfoA(HANDLE hHandle,
1012                     LPSTR lpFile,
1013                     WORD wIndex,
1014                     LPWORD lpSize,
1015                     LPHANDLE lpIcon)
1016 {
1017     FIXME("ExtractIconResInfoA() stub\n");
1018     return 0;
1019 }
1020 
1021 /*
1022  * Unimplemented
1023  */
1024 EXTERN_C WORD
1025 WINAPI
1026 ExtractIconResInfoW(HANDLE hHandle,
1027                     LPWSTR lpFile,
1028                     WORD wIndex,
1029                     LPWORD lpSize,
1030                     LPHANDLE lpIcon)
1031 {
1032     FIXME("ExtractIconResInfoW() stub\n");
1033     return 0;
1034 }
1035 
1036 /*
1037  * Unimplemented
1038  */
1039 EXTERN_C DWORD
1040 WINAPI
1041 ExtractVersionResource16W(LPWSTR lpName, LPHANDLE lpHandle)
1042 {
1043     FIXME("ExtractVersionResource16W() stub\n");
1044     return 0;
1045 }
1046 
1047 /*
1048  * Unimplemented
1049  */
1050 EXTERN_C BOOL*
1051 WINAPI
1052 FindExeDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
1053 {
1054     FIXME("FindExeDlgProc() stub\n");
1055     return 0;
1056 }
1057 
1058 /*
1059  * Unimplemented
1060  */
1061 EXTERN_C HANDLE
1062 WINAPI
1063 InternalExtractIconListW(HANDLE hHandle,
1064                          LPWSTR lpFileName,
1065                          LPINT lpCount)
1066 {
1067     FIXME("InternalExtractIconListW() stub\n");
1068     return NULL;
1069 }
1070 
1071 /*
1072  * Unimplemented
1073  */
1074 EXTERN_C HANDLE
1075 WINAPI
1076 InternalExtractIconListA(HANDLE hHandle,
1077                          LPSTR lpFileName,
1078                          LPINT lpCount)
1079 {
1080     FIXME("InternalExtractIconListA() stub\n");
1081     return NULL;
1082 }
1083 
1084 /*
1085  * Unimplemented
1086  */
1087 EXTERN_C HRESULT
1088 WINAPI
1089 FirstUserLogon(LPWSTR lpUnknown1, LPWSTR lpUnknown2)
1090 {
1091     FIXME("FirstUserLogon() stub\n");
1092     return E_FAIL;
1093 }
1094 
1095 /*
1096  * Unimplemented
1097  */
1098 EXTERN_C HRESULT
1099 WINAPI
1100 SHSetFolderPathA(int csidl,
1101                  HANDLE hToken,
1102                  DWORD dwFlags,
1103                  LPCSTR pszPath)
1104 {
1105     FIXME("SHSetFolderPathA() stub\n");
1106     return E_FAIL;
1107 }
1108 
1109 /*
1110  * Unimplemented
1111  */
1112 EXTERN_C HRESULT
1113 WINAPI
1114 SHSetFolderPathW(int csidl,
1115                  HANDLE hToken,
1116                  DWORD dwFlags,
1117                  LPCWSTR pszPath)
1118 {
1119     FIXME("SHSetFolderPathW() stub\n");
1120     return E_FAIL;
1121 }
1122 
1123 /*
1124  * Unimplemented
1125  */
1126 EXTERN_C HRESULT
1127 WINAPI
1128 SHGetUserPicturePathW(LPCWSTR lpPath, int csidl, LPVOID lpUnknown)
1129 {
1130     FIXME("SHGetUserPicturePathW() stub\n");
1131     return E_FAIL;
1132 }
1133 
1134 /*
1135  * Unimplemented
1136  */
1137 EXTERN_C HRESULT
1138 WINAPI
1139 SHSetUserPicturePathW(LPCWSTR lpPath, int csidl, LPVOID lpUnknown)
1140 {
1141     FIXME("SHGetUserPicturePathA() stub\n");
1142     return E_FAIL;
1143 }
1144 
1145 /*
1146  * Unimplemented
1147  */
1148 EXTERN_C BOOL
1149 WINAPI
1150 SHOpenEffectiveToken(LPVOID Token)
1151 {
1152     FIXME("SHOpenEffectiveToken() stub\n");
1153     return FALSE;
1154 }
1155 
1156 /*
1157  * Unimplemented
1158  */
1159 EXTERN_C BOOL
1160 WINAPI
1161 SHTestTokenPrivilegeW(HANDLE hToken, LPDWORD ReturnLength)
1162 {
1163     FIXME("SHTestTokenPrivilegeW() stub\n");
1164     return FALSE;
1165 }
1166 
1167 /*
1168  * Unimplemented
1169  */
1170 EXTERN_C BOOL
1171 WINAPI
1172 SHShouldShowWizards(LPVOID lpUnknown)
1173 {
1174     FIXME("SHShouldShowWizards() stub\n");
1175     return FALSE;
1176 }
1177 
1178 /*
1179  * Unimplemented
1180  */
1181 EXTERN_C BOOL
1182 WINAPI
1183 PathIsSlowW(LPCWSTR pszFile, DWORD dwFileAttr)
1184 {
1185     FIXME("PathIsSlowW() stub\n");
1186     return FALSE;
1187 }
1188 
1189 /*
1190  * Unimplemented
1191  */
1192 EXTERN_C BOOL
1193 WINAPI
1194 PathIsSlowA(LPCSTR pszFile, DWORD dwFileAttr)
1195 {
1196     FIXME("PathIsSlowA() stub\n");
1197     return FALSE;
1198 }
1199 
1200 /*
1201  * Unimplemented
1202  */
1203 EXTERN_C DWORD
1204 WINAPI
1205 SHGetUserDisplayName(LPWSTR lpName, PULONG puSize)
1206 {
1207     FIXME("SHGetUserDisplayName() stub\n");
1208     wcscpy(lpName, L"UserName");
1209     return ERROR_SUCCESS;
1210 }
1211 
1212 /*
1213  * Unimplemented
1214  */
1215 EXTERN_C DWORD
1216 WINAPI
1217 SHGetProcessDword(DWORD dwUnknown1, DWORD dwUnknown2)
1218 {
1219     /* Unimplemented in WinXP SP3 */
1220     TRACE("SHGetProcessDword() stub\n");
1221     return 0;
1222 }
1223 
1224 /*
1225  * Unimplemented
1226  */
1227 EXTERN_C LPVOID
1228 WINAPI
1229 SHGetUserSessionId(HANDLE hHandle)
1230 {
1231     FIXME("SHGetUserSessionId() stub\n");
1232     return NULL;
1233 }
1234 
1235 EXTERN_C
1236 DWORD WINAPI CheckStagingArea(VOID)
1237 {
1238     /* Called by native explorer */
1239     return 0;
1240 }
1241 
1242 EXTERN_C
1243 DWORD WINAPI SHGetComputerDisplayNameW(DWORD param1, DWORD param2, DWORD param3, DWORD param4)
1244 {
1245     FIXME("SHGetComputerDisplayNameW() stub\n");
1246     return E_FAIL;
1247 }
1248 
1249 /*
1250  * Unimplemented
1251  */
1252 EXTERN_C HINSTANCE
1253 WINAPI
1254 SHGetShellStyleHInstance(VOID)
1255 {
1256     FIXME("SHGetShellStyleHInstance() stub\n");
1257     return NULL;
1258 }
1259