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