diff --git a/dlls/shell32/changenotify.c b/dlls/shell32/changenotify.c index 3ceb929c369..1451890444c 100644 --- a/dlls/shell32/changenotify.c +++ b/dlls/shell32/changenotify.c @@ -178,6 +178,19 @@ SHChangeNotifyDeregister( return DeleteNode((LPNOTIFICATIONLIST)hNotify);; } +/************************************************************************* + * SHChangeNotifyUpdateEntryList [SHELL32.5] + */ +BOOL WINAPI +SHChangeNotifyUpdateEntryList(DWORD unknown1, DWORD unknown2, + DWORD unknown3, DWORD unknown4) +{ + FIXME("(0x%08lx, 0x%08lx, 0x%08lx, 0x%08lx)\n", + unknown1, unknown2, unknown3, unknown4); + + return -1; +} + /************************************************************************* * SHChangeNotify [SHELL32.@] */ diff --git a/dlls/shell32/shell32.spec b/dlls/shell32/shell32.spec index c133a07e884..6e02cd7fb9d 100644 --- a/dlls/shell32/shell32.spec +++ b/dlls/shell32/shell32.spec @@ -23,7 +23,7 @@ debug_channels (exec pidl shell shlctrl) 2 stdcall SHChangeNotifyRegister(long long long long long long) SHChangeNotifyRegister 4 stdcall SHChangeNotifyDeregister (long) SHChangeNotifyDeregister - 5 stub SHChangeNotifyUpdateEntryList@16 + 5 stdcall SHChangeNotifyUpdateEntryList (long long long long) SHChangeNotifyUpdateEntryList 9 stub PifMgr_OpenProperties@16 10 stub PifMgr_GetProperties@20 11 stub PifMgr_SetProperties@20 @@ -92,7 +92,7 @@ debug_channels (exec pidl shell shlctrl) 80 stdcall DragFinish(long) DragFinish 81 stdcall DragQueryFile(long long ptr long) DragQueryFileA 82 stdcall DragQueryFileA(long long ptr long) DragQueryFileA - 83 stub CIDLData_CreateFromIDArray + 83 stdcall CIDLData_CreateFromIDArray(ptr long ptr ptr) CIDLData_CreateFromIDArray 84 stub SHIsBadInterfacePtr 85 forward OpenRegStream shlwapi.SHOpenRegStreamA 86 stdcall SHRegisterDragDrop(long ptr) SHRegisterDragDrop diff --git a/dlls/shell32/shellord.c b/dlls/shell32/shellord.c index 976b2f7bf54..ca28b662684 100644 --- a/dlls/shell32/shellord.c +++ b/dlls/shell32/shellord.c @@ -19,8 +19,10 @@ #include "shlobj.h" #include "shell32_main.h" #include "undocshell.h" +#include "pidl.h" DEFAULT_DEBUG_CHANNEL(shell); +DECLARE_DEBUG_CHANNEL(pidl); /************************************************************************* * ParseFieldA [internal] @@ -1441,3 +1443,37 @@ DWORD WINAPI SHDestroyPropSheetExtArray(DWORD a) FIXME("(%08lx)stub\n", a); return 0; } + +/************************************************************************* + * CIDLData_CreateFromIDArray [SHELL32.83] + * + * Create IDataObject from PIDLs?? + */ +HRESULT WINAPI CIDLData_CreateFromIDArray( + LPCITEMIDLIST pidlFolder, + DWORD cpidlFiles, + LPCITEMIDLIST *lppidlFiles, + LPDATAOBJECT *ppdataObject) +{ + INT i; + HWND hwnd = 0; /*FIXME: who should be hwnd of owner? set to desktop */ + BOOL boldpidl; + + if (TRACE_ON(shell)) { + TRACE("(%p, %ld, %p, %p)\n", pidlFolder, cpidlFiles, + lppidlFiles, ppdataObject); + boldpidl = TRACE_ON(pidl); + __SET_DEBUGGING(__DBCL_TRACE, __wine_dbch_shell, FALSE); + __SET_DEBUGGING(__DBCL_TRACE, __wine_dbch_pidl, TRUE); + pdump (pidlFolder); + for (i=0; i