12 modified files
reactos/include/wine
diff -u -r1.3 -r1.4
--- shlguid.h 6 Jan 2004 17:21:34 -0000 1.3
+++ shlguid.h 29 Jun 2004 13:40:40 -0000 1.4
@@ -1,62 +1,24 @@
-/*
- * Copyright (C) 1999 Juergen Schmied
+/* $Id: shlguid.h,v 1.4 2004/06/29 13:40:40 gvg Exp $
*
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * Compatibility header
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * This header is wrapper to allow compilation of Wine DLLs under ReactOS
+ * build system. It contains definitions commonly refered to as Wineisms
+ * and definitions that are missing in w32api.
*/
+#include_next <shlguid.h>
+
#ifndef __WINE_SHLGUID_H
#define __WINE_SHLGUID_H
-#define DEFINE_SHLGUID(name, l, w1, w2) DEFINE_OLEGUID(name,l,w1,w2)
-
DEFINE_SHLGUID(CLSID_ShellDesktop, 0x00021400L, 0, 0);
DEFINE_SHLGUID(CLSID_ShellLink, 0x00021401L, 0, 0);
-DEFINE_SHLGUID(CATID_BrowsableShellExt, 0x00021490L, 0, 0);
-DEFINE_SHLGUID(CATID_BrowseInPlace, 0x00021491L, 0, 0);
-DEFINE_SHLGUID(CATID_DeskBand, 0x00021492L, 0, 0);
-DEFINE_SHLGUID(CATID_InfoBand, 0x00021493L, 0, 0);
-DEFINE_SHLGUID(CATID_CommBand, 0x00021494L, 0, 0);
-
-/* shell32 formatids */
-DEFINE_SHLGUID(FMTID_Intshcut, 0x000214A0L, 0, 0);
-DEFINE_SHLGUID(FMTID_InternetSite, 0x000214A1L, 0, 0);
-
/* command group ids */
DEFINE_SHLGUID(CGID_Explorer, 0x000214D0L, 0, 0);
DEFINE_SHLGUID(CGID_ShellDocView, 0x000214D1L, 0, 0);
-DEFINE_SHLGUID(CGID_ShellServiceObject, 0x000214D2L, 0, 0);
-DEFINE_SHLGUID(CGID_ExplorerBarDoc, 0x000214D3L, 0, 0);
-
-DEFINE_SHLGUID(IID_INewShortcutHookA, 0x000214E1L, 0, 0);
-DEFINE_SHLGUID(IID_IShellIcon, 0x000214E5L, 0, 0);
-DEFINE_SHLGUID(IID_IShellPropSheetExt, 0x000214E9L, 0, 0);
-DEFINE_SHLGUID(IID_IShellDetails, 0x000214ECL, 0, 0);
-DEFINE_SHLGUID(IID_IDelayedRelease, 0x000214EDL, 0, 0);
-DEFINE_SHLGUID(IID_IShellCopyHookA, 0x000214EFL, 0, 0);
-DEFINE_SHLGUID(IID_IFileViewerA, 0x000214F0L, 0, 0);
-DEFINE_SHLGUID(IID_IFileViewerSite, 0x000214F3L, 0, 0);
-DEFINE_SHLGUID(IID_IPropSheetPage, 0x000214F6L, 0, 0);
-DEFINE_SHLGUID(IID_INewShortcutHookW, 0x000214F7L, 0, 0);
-DEFINE_SHLGUID(IID_IFileViewerW, 0x000214F8L, 0, 0);
-DEFINE_SHLGUID(IID_IShellCopyHookW, 0x000214FCL, 0, 0);
-DEFINE_SHLGUID(IID_IRemoteComputer, 0x000214FEL, 0, 0);
-DEFINE_SHLGUID(IID_IQueryInfo, 0x00021500L, 0, 0);
-/* avoid duplicate definitions with shobjidl.h (FIXME) */
-#ifdef __REACTOS__
DEFINE_SHLGUID(IID_IExtractIconA, 0x000214EBL, 0, 0);
DEFINE_SHLGUID(IID_IExtractIconW, 0x000214FAL, 0, 0);
DEFINE_SHLGUID(IID_IContextMenu, 0x000214E4L, 0, 0);
@@ -70,48 +32,20 @@
DEFINE_SHLGUID(IID_IShellLinkA, 0x000214EEL, 0, 0);
DEFINE_SHLGUID(IID_IEnumIDList, 0x000214F2L, 0, 0);
DEFINE_SHLGUID(IID_IShellLinkW, 0x000214F9L, 0, 0);
-#endif
-/* DEFINE_SHLGUID(IID_IShellExecuteHookA, 0x000214F5L, 0, 0); */
-/* DEFINE_SHLGUID(IID_IShellExecuteHookW, 0x000214FBL, 0, 0); */
+DEFINE_SHLGUID(IID_IShellExecuteHookA, 0x000214F5L, 0, 0);
+DEFINE_SHLGUID(IID_IShellExecuteHookW, 0x000214FBL, 0, 0);
DEFINE_GUID(SID_STopLevelBrowser, 0x4C96BE40L, 0x915C, 0x11CF, 0x99, 0xD3, 0x00, 0xAA, 0x00, 0x4A, 0xE8, 0x37);
-#define SID_SShellBrowser IID_IShellBrowser
-
-#define IID_IFileViewer WINELIB_NAME_AW(IID_IFileViewer)
-#define IID_IShellLink WINELIB_NAME_AW(IID_IShellLink)
-#define IID_IExtractIcon WINELIB_NAME_AW(IID_IExtractIcon)
-#define IID_IShellCopyHook WINELIB_NAME_AW(IID_IShellCopyHook)
-#define IID_IShellExecuteHook WINELIB_NAME_AW(IID_IShellExecuteHook)
-#define IID_INewShortcutHook WINELIB_NAME_AW(IID_INewShortcutHook)
-
-DEFINE_GUID (IID_IDockingWindow, 0x012dd920L, 0x7B26, 0x11D0, 0x8C, 0xA9, 0x00, 0xA0, 0xC9, 0x2D, 0xBF, 0xE8);
-DEFINE_GUID (IID_IDockingWindowSite, 0x2A342FC2L, 0x7B26, 0x11D0, 0x8C, 0xA9, 0x00, 0xA0, 0xC9, 0x2D, 0xBF, 0xE8);
-
-/****************************************************************************
- * the next IID's are the namespace elements of the pidls
- */
DEFINE_GUID(CLSID_NetworkPlaces, 0x208D2C60, 0x3AEA, 0x1069, 0xA2, 0xD7, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D);
-DEFINE_GUID(CLSID_NetworkDomain, 0x46e06680, 0x4bf0, 0x11d1, 0x83, 0xee, 0x00, 0xa0, 0xc9, 0x0d, 0xc8, 0x49);
-DEFINE_GUID(CLSID_NetworkServer, 0xc0542a90, 0x4bf0, 0x11d1, 0x83, 0xee, 0x00, 0xa0, 0xc9, 0x0d, 0xc8, 0x49);
-DEFINE_GUID(CLSID_NetworkShare, 0x54a754c0, 0x4bf0, 0x11d1, 0x83, 0xee, 0x00, 0xa0, 0xc9, 0x0d, 0xc8, 0x49);
DEFINE_GUID(CLSID_MyComputer, 0x20D04FE0, 0x3AEA, 0x1069, 0xA2, 0xD8, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D);
DEFINE_GUID(CLSID_Internet, 0x871C5380, 0x42A0, 0x1069, 0xA2, 0xEA, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D);
DEFINE_GUID(CLSID_ShellFSFolder, 0xF3364BA0, 0x65B9, 0x11CE, 0xA9, 0xBA, 0x00, 0xAA, 0x00, 0x4A, 0xE8, 0x37);
DEFINE_GUID(CLSID_RecycleBin, 0x645FF040, 0x5081, 0x101B, 0x9F, 0x08, 0x00, 0xAA, 0x00, 0x2F, 0x95, 0x4E);
DEFINE_GUID(CLSID_ControlPanel, 0x21EC2020, 0x3AEA, 0x1069, 0xA2, 0xDD, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D);
-DEFINE_GUID(CLSID_Printers, 0x2227A280, 0x3AEA, 0x1069, 0xA2, 0xDE, 0x08, 0x00, 0x2B, 0x30, 0x30, 0x9D);
-DEFINE_GUID(CLSID_MyDocuments, 0x450d8fba, 0xad25, 0x11d0, 0x98, 0xa8, 0x08, 0x00, 0x36, 0x1b, 0x11, 0x03);
DEFINE_GUID(IID_IQueryAssociations, 0xc46ca590, 0x3c3f, 0x11d2, 0xbe, 0xe6, 0x00, 0x00, 0xf8, 0x05, 0xca, 0x57);
DEFINE_GUID(CLSID_DragDropHelper, 0x4657278a, 0x411b, 0x11d2, 0x83, 0x9a, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
-#define PID_FINDDATA 0
-#define PID_NETRESOURCE 1
-#define PID_DESCRIPTIONID 2
-#define PID_WHICHFOLDER 3
-#define PID_NETWORKLOCATION 4
-#define PID_COMPUTERNAME 5
-
-#endif /* __WINE_SHLGUID_H */
+#endif /* __WINE_SHLOBJ_H */
reactos/include/wine
diff -u -r1.3 -r1.4
--- shlobj.h 16 Feb 2004 21:46:11 -0000 1.3
+++ shlobj.h 29 Jun 2004 13:40:40 -0000 1.4
@@ -1,129 +1,24 @@
-/*
- * Copyright (C) the Wine project
+/* $Id: shlobj.h,v 1.4 2004/06/29 13:40:40 gvg Exp $
*
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * Compatibility header
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ * This header is wrapper to allow compilation of Wine DLLs under ReactOS
+ * build system. It contains definitions commonly refered to as Wineisms
+ * and definitions that are missing in w32api.
*/
-#ifndef __WINE_SHLOBJ_H
-#define __WINE_SHLOBJ_H
-
-#include <ole2.h>
-#include <commctrl.h>
-#include <prsht.h>
-#include <shlguid.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* defined(__cplusplus) */
+#include <winnetwk.h>
-#include <pshpack1.h>
+#include_next <shlobj.h>
-#include <shtypes.h>
+#include <shlguid.h>
#include <shobjidl.h>
+#ifndef __WINE_SHLOBJ_H
+#define __WINE_SHLOBJ_H
-LPVOID WINAPI SHAlloc(ULONG);
-HRESULT WINAPI SHCoCreateInstance(LPCWSTR,const CLSID*,IUnknown*,REFIID,LPVOID*);
-HRESULT WINAPI SHCreateStdEnumFmtEtc(DWORD,const FORMATETC *,IEnumFORMATETC**);
-BOOL WINAPI SHFindFiles(LPCITEMIDLIST,LPCITEMIDLIST);
-void WINAPI SHFree(LPVOID);
-BOOL WINAPI SHGetPathFromIDListA(LPCITEMIDLIST pidl,LPSTR pszPath);
-BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST pidl,LPWSTR pszPath);
-#define SHGetPathFromIDList WINELIB_NAME_AW(SHGetPathFromIDList)
-HRESULT WINAPI SHILCreateFromPath(LPCWSTR,LPITEMIDLIST*,DWORD*);
-LPITEMIDLIST WINAPI SHSimpleIDListFromPath(LPCWSTR);
-int WINAPI SHMapPIDLToSystemImageListIndex(IShellFolder*,LPCITEMIDLIST,int*);
-
-LPITEMIDLIST WINAPI ILAppendID(LPITEMIDLIST,LPCSHITEMID,BOOL);
-LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST);
-LPITEMIDLIST WINAPI ILCloneFirst(LPCITEMIDLIST);
-LPITEMIDLIST WINAPI ILCreateFromPathA(LPCSTR);
-LPITEMIDLIST WINAPI ILCreateFromPathW(LPCWSTR);
-#define ILCreateFromPath WINELIB_NAME_AW(ILCreateFromPath)
-LPITEMIDLIST WINAPI ILCombine(LPCITEMIDLIST,LPCITEMIDLIST);
-LPITEMIDLIST WINAPI ILFindChild(LPCITEMIDLIST,LPCITEMIDLIST);
-LPITEMIDLIST WINAPI ILFindLastID(LPCITEMIDLIST);
-void WINAPI ILFree(LPITEMIDLIST);
-LPITEMIDLIST WINAPI ILGetNext(LPCITEMIDLIST);
-UINT WINAPI ILGetSize(LPCITEMIDLIST);
-BOOL WINAPI ILIsEqual(LPCITEMIDLIST,LPCITEMIDLIST);
-BOOL WINAPI ILIsParent(LPCITEMIDLIST,LPCITEMIDLIST,BOOL);
-BOOL WINAPI ILRemoveLastID(LPCITEMIDLIST);
-
-HRESULT WINAPI SHCoCreateInstance(LPCWSTR, const CLSID*, LPUNKNOWN, REFIID, LPVOID*);
-
-BOOL WINAPI SHGetPathFromIDListA (LPCITEMIDLIST pidl,LPSTR pszPath);
-BOOL WINAPI SHGetPathFromIDListW (LPCITEMIDLIST pidl,LPWSTR pszPath);
-#define SHGetPathFromIDList WINELIB_NAME_AW(SHGetPathFromIDList)
-
-/*****************************************************************************
- * Predeclare interfaces
- */
-typedef struct IShellIcon IShellIcon, *LPSHELLICON;
-
-
-/*****************************************************************************
- * IContextMenu interface
- */
-
-
-/* DATAOBJECT_InitShellIDList*/
-#define CFSTR_SHELLIDLIST "Shell IDList Array" /* CF_IDLIST */
-
-extern UINT cfShellIDList;
-
-typedef struct
-{ UINT cidl;
- UINT aoffset[1];
-} CIDA, *LPIDA;
-
-#define CFSTR_SHELLIDLISTOFFSET "Shell Object Offsets" /* CF_OBJECTPOSITIONS */
-#define CFSTR_NETRESOURCES "Net Resource" /* CF_NETRESOURCE */
-
-/* DATAOBJECT_InitFileGroupDesc */
-#define CFSTR_FILEDESCRIPTORA "FileGroupDescriptor" /* CF_FILEGROUPDESCRIPTORA */
-extern UINT cfFileGroupDesc;
-
-#define CFSTR_FILEDESCRIPTORW "FileGroupDescriptorW" /* CF_FILEGROUPDESCRIPTORW */
-
-/* DATAOBJECT_InitFileContents*/
-#define CFSTR_FILECONTENTS "FileContents" /* CF_FILECONTENTS */
-extern UINT cfFileContents;
-
-#define CFSTR_FILENAMEA "FileName" /* CF_FILENAMEA */
-#define CFSTR_FILENAMEW "FileNameW" /* CF_FILENAMEW */
-#define CFSTR_PRINTERGROUP "PrinterFriendlyName" /* CF_PRINTERS */
-#define CFSTR_FILENAMEMAPA "FileNameMap" /* CF_FILENAMEMAPA */
-#define CFSTR_FILENAMEMAPW "FileNameMapW" /* CF_FILENAMEMAPW */
-#define CFSTR_SHELLURL "UniformResourceLocator"
-#define CFSTR_PREFERREDDROPEFFECT "Preferred DropEffect"
-#define CFSTR_PERFORMEDDROPEFFECT "Performed DropEffect"
-#define CFSTR_PASTESUCCEEDED "Paste Succeeded"
-#define CFSTR_INDRAGLOOP "InShellDragLoop"
-
-#define CFSTR_FILENAME WINELIB_NAME_AW(CFSTR_FILENAME)
-
-
-/************************************************************************
-* IShellView interface
-*/
-
-typedef GUID SHELLVIEWID;
#define SV_CLASS_NAME ("SHELLDLL_DefView")
-#define FCIDM_SHVIEWFIRST 0x0000
/* undocumented */
#define FCIDM_SHVIEW_ARRANGE 0x7001
#define FCIDM_SHVIEW_DELETE 0x7011
@@ -154,8 +49,6 @@
#define FCIDM_SHVIEW_EXPLORE 0x7101 /* FIXME */
#define FCIDM_SHVIEW_OPEN 0x7102 /* FIXME */
-#define FCIDM_SHVIEWLAST 0x7fff
-#define FCIDM_BROWSERFIRST 0xA000
/* undocumented toolbar items from stddlg's*/
#define FCIDM_TB_UPFOLDER 0xA001
#define FCIDM_TB_NEWFOLDER 0xA002
@@ -163,719 +56,16 @@
#define FCIDM_TB_REPORTVIEW 0xA004
#define FCIDM_TB_DESKTOP 0xA005 /* FIXME */
-#define FCIDM_BROWSERLAST 0xbf00
-#define FCIDM_GLOBALFIRST 0x8000
-#define FCIDM_GLOBALLAST 0x9fff
-
-/*
-* Global submenu IDs and separator IDs
-*/
-#define FCIDM_MENU_FILE (FCIDM_GLOBALFIRST+0x0000)
-#define FCIDM_MENU_EDIT (FCIDM_GLOBALFIRST+0x0040)
-#define FCIDM_MENU_VIEW (FCIDM_GLOBALFIRST+0x0080)
-#define FCIDM_MENU_VIEW_SEP_OPTIONS (FCIDM_GLOBALFIRST+0x0081)
-#define FCIDM_MENU_TOOLS (FCIDM_GLOBALFIRST+0x00c0)
-#define FCIDM_MENU_TOOLS_SEP_GOTO (FCIDM_GLOBALFIRST+0x00c1)
-#define FCIDM_MENU_HELP (FCIDM_GLOBALFIRST+0x0100)
-#define FCIDM_MENU_FIND (FCIDM_GLOBALFIRST+0x0140)
-#define FCIDM_MENU_EXPLORE (FCIDM_GLOBALFIRST+0x0150)
-#define FCIDM_MENU_FAVORITES (FCIDM_GLOBALFIRST+0x0170)
-
-/* control IDs known to the view */
-#define FCIDM_TOOLBAR (FCIDM_BROWSERFIRST + 0)
-#define FCIDM_STATUS (FCIDM_BROWSERFIRST + 1)
-
-
-/****************************************************************************
- * IShellIcon interface
- */
-
-#define INTERFACE IShellIcon
-#define IShellIcon_METHODS \
- IUnknown_METHODS \
- STDMETHOD(GetIconOf)(THIS_ LPCITEMIDLIST pidl, UINT flags, LPINT lpIconIndex) PURE;
-ICOM_DEFINE(IShellIcon, IUnknown)
-#undef INTERFACE
-
-#ifdef COBJMACROS
-/*** IUnknown methods ***/
-#define IShellIcon_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
-#define IShellIcon_AddRef(p) (p)->lpVtbl->AddRef(p)
-#define IShellIcon_Release(p) (p)->lpVtbl->Release(p)
-/*** IShellIcon methods ***/
-#define IShellIcon_GetIconOf(p,a,b,c) (p)->lpVtbl->GetIconOf(p,a,b,c)
-#endif
-
-/****************************************************************************
-* SHAddToRecentDocs API
-*/
-#define SHARD_PIDL 0x00000001L
-#define SHARD_PATHA 0x00000002L
-#define SHARD_PATHW 0x00000003L
-#define SHARD_PATH WINELIB_NAME_AW(SHARD_PATH)
-
-DWORD WINAPI SHAddToRecentDocs(UINT uFlags, LPCVOID pv);
-
-/****************************************************************************
- * SHBrowseForFolder API
- */
-typedef INT (CALLBACK *BFFCALLBACK)(HWND hwnd, UINT uMsg, LPARAM lParam, LPARAM lpData);
-
-typedef struct tagBROWSEINFOA {
- HWND hwndOwner;
- LPCITEMIDLIST pidlRoot;
- LPSTR pszDisplayName;
- LPCSTR lpszTitle;
- UINT ulFlags;
- BFFCALLBACK lpfn;
- LPARAM lParam;
- INT iImage;
-} BROWSEINFOA, *PBROWSEINFOA, *LPBROWSEINFOA;
-
-typedef struct tagBROWSEINFOW {
- HWND hwndOwner;
- LPCITEMIDLIST pidlRoot;
- LPWSTR pszDisplayName;
- LPCWSTR lpszTitle;
- UINT ulFlags;
- BFFCALLBACK lpfn;
- LPARAM lParam;
- INT iImage;
-} BROWSEINFOW, *PBROWSEINFOW, *LPBROWSEINFOW;
-
-#define BROWSEINFO WINELIB_NAME_AW(BROWSEINFO)
-#define PBROWSEINFO WINELIB_NAME_AW(PBROWSEINFO)
-#define LPBROWSEINFO WINELIB_NAME_AW(LPBROWSEINFO)
-
-/* Browsing for directory. */
-#define BIF_RETURNONLYFSDIRS 0x0001
-#define BIF_DONTGOBELOWDOMAIN 0x0002
-#define BIF_STATUSTEXT 0x0004
-#define BIF_RETURNFSANCESTORS 0x0008
-#define BIF_EDITBOX 0x0010
-#define BIF_VALIDATE 0x0020
-#define BIF_NEWDIALOGSTYLE 0x0040
-
-#define BIF_BROWSEFORCOMPUTER 0x1000
-#define BIF_BROWSEFORPRINTER 0x2000
-#define BIF_BROWSEINCLUDEFILES 0x4000
-
-/* message from browser */
-#define BFFM_INITIALIZED 1
-#define BFFM_SELCHANGED 2
-#define BFFM_VALIDATEFAILEDA 3 /* lParam:szPath ret:1(cont),0(EndDialog) */
-#define BFFM_VALIDATEFAILEDW 4 /* lParam:wzPath ret:1(cont),0(EndDialog) */
-
-/* messages to browser */
-#define BFFM_SETSTATUSTEXTA (WM_USER+100)
-#define BFFM_ENABLEOK (WM_USER+101)
-#define BFFM_SETSELECTIONA (WM_USER+102)
-#define BFFM_SETSELECTIONW (WM_USER+103)
-#define BFFM_SETSTATUSTEXTW (WM_USER+104)
-#define BFFM_SETOKTEXT (WM_USER+105)
-#define BFFM_SETEXPANDED (WM_USER+106)
-
-LPITEMIDLIST WINAPI SHBrowseForFolderA(LPBROWSEINFOA lpbi);
-LPITEMIDLIST WINAPI SHBrowseForFolderW(LPBROWSEINFOW lpbi);
-#define SHBrowseForFolder WINELIB_NAME_AW(SHBrowseForFolder)
-#define BFFM_SETSTATUSTEXT WINELIB_NAME_AW(BFFM_SETSTATUSTEXT)
-#define BFFM_SETSELECTION WINELIB_NAME_AW(BFFM_SETSELECTION)
-#define BFFM_VALIDATEFAILED WINELIB_NAME_AW(BFFM_VALIDATEFAILED)
-
-/****************************************************************************
-* SHGetDataFromIDList API
-*/
-#define SHGDFIL_FINDDATA 1
-#define SHGDFIL_NETRESOURCE 2
-#define SHGDFIL_DESCRIPTIONID 3
-
-#define SHDID_ROOT_REGITEM 1
-#define SHDID_FS_FILE 2
-#define SHDID_FS_DIRECTORY 3
-#define SHDID_FS_OTHER 4
-#define SHDID_COMPUTER_DRIVE35 5
-#define SHDID_COMPUTER_DRIVE525 6
-#define SHDID_COMPUTER_REMOVABLE 7
-#define SHDID_COMPUTER_FIXED 8
-#define SHDID_COMPUTER_NETDRIVE 9
-#define SHDID_COMPUTER_CDROM 10
-#define SHDID_COMPUTER_RAMDISK 11
-#define SHDID_COMPUTER_OTHER 12
-#define SHDID_NET_DOMAIN 13
-#define SHDID_NET_SERVER 14
-#define SHDID_NET_SHARE 15
-#define SHDID_NET_RESTOFNET 16
-#define SHDID_NET_OTHER 17
-#define SHDID_COMPUTER_IMAGING 18
-#define SHDID_COMPUTER_AUDIO 19
-#define SHDID_COMPUTER_SHAREDDOCS 20
-
-typedef struct _SHDESCRIPTIONID
-{ DWORD dwDescriptionId;
- CLSID clsid;
-} SHDESCRIPTIONID, *LPSHDESCRIPTIONID;
-
-HRESULT WINAPI SHGetDataFromIDListA(LPSHELLFOLDER psf, LPCITEMIDLIST pidl, int nFormat, LPVOID pv, int cb);
-HRESULT WINAPI SHGetDataFromIDListW(LPSHELLFOLDER psf, LPCITEMIDLIST pidl, int nFormat, LPVOID pv, int cb);
-#define SHGetDataFromIDList WINELIB_NAME_AW(SHGetDataFromIDList)
-
-BOOL WINAPI SHGetSpecialFolderPathA (HWND hwndOwner, LPSTR szPath, int nFolder, BOOL bCreate);
-BOOL WINAPI SHGetSpecialFolderPathW (HWND hwndOwner, LPWSTR szPath, int nFolder, BOOL bCreate);
-#define SHGetSpecialFolderPath WINELIB_NAME_AW(SHGetSpecialFolderPath)
-
-/****************************************************************************
-* shlview structures
-*/
-
-/*
-* IShellFolderViewCallback Callback
-* This "callback" is called by the shells default IShellView implementation (that
-* we got using SHCreateShellViewEx()), to notify us of the various things that
-* are happening to the shellview (and ask for things too).
-*
-* You don't have to support anything here - anything you don't want to
-* handle, the shell will do itself if you just return E_NOTIMPL. This parameters
-* that the shell passes to this function are entirely undocumented.
-*
-* HOWEVER, as the cabview sample as originally written used this callback, the
-* writers implemented the callback mechanism on top of their own IShellView.
-* Look there for some clues on what to do here.
-*/
-
-typedef HRESULT (CALLBACK *SHELLVIEWPROC)(DWORD dwUserParam,LPSHELLFOLDER psf,
- HWND hwnd,UINT uMsg,UINT wParam,LPARAM lParam);
-
-/* NF valid values for the "viewmode" item of the SHELLTEMPLATE*/
-#define NF_INHERITVIEW 0x0000
-#define NF_LOCALVIEW 0x0001
-
-typedef struct _SHELLVIEWDATA /* idl */
-{ DWORD dwSize;
- LPSHELLFOLDER pShellFolder;
- DWORD dwUserParam;
- LPCITEMIDLIST pidl;
- DWORD v3; /* always 0 */
- SHELLVIEWPROC pCallBack;
- DWORD viewmode; /* NF_* enum */
-} SHELLVIEWDATA, * LPSHELLVIEWDATA;
-
-HRESULT WINAPI SHGetMalloc(LPMALLOC *lpmal) ;
-
-/**********************************************************************
- * SHGetSetSettings ()
- */
-
-typedef struct
-{
- BOOL fShowAllObjects : 1;
- BOOL fShowExtensions : 1;
- BOOL fNoConfirmRecycle : 1;
-
- BOOL fShowSysFiles : 1;
- BOOL fShowCompColor : 1;
- BOOL fDoubleClickInWebView : 1;
- BOOL fDesktopHTML : 1;
- BOOL fWin95Classic : 1;
- BOOL fDontPrettyPath : 1;
- BOOL fShowAttribCol : 1;
- BOOL fMapNetDrvBtn : 1;
- BOOL fShowInfoTip : 1;
- BOOL fHideIcons : 1;
- BOOL fWebView : 1;
- BOOL fFilter : 1;
- BOOL fShowSuperHidden : 1;
- BOOL fNoNetCrawling : 1;
-
- DWORD dwWin95Unused;
- UINT uWin95Unused;
- LONG lParamSort;
- int iSortDirection;
- UINT version;
- UINT uNotUsed;
- BOOL fSepProcess: 1;
- BOOL fStartPanelOn: 1;
- BOOL fShowStartPage: 1;
- UINT fSpareFlags : 13;
-} SHELLSTATE, *LPSHELLSTATE;
-
-/**********************************************************************
- * SHGetSettings ()
- */
-typedef struct
-{ BOOL fShowAllObjects : 1;
- BOOL fShowExtensions : 1;
- BOOL fNoConfirmRecycle : 1;
- BOOL fShowSysFiles : 1;
-
- BOOL fShowCompColor : 1;
- BOOL fDoubleClickInWebView : 1;
- BOOL fDesktopHTML : 1;
- BOOL fWin95Classic : 1;
-
- BOOL fDontPrettyPath : 1;
- BOOL fShowAttribCol : 1;
- BOOL fMapNetDrvBtn : 1;
- BOOL fShowInfoTip : 1;
-
- BOOL fHideIcons : 1;
- UINT fRestFlags : 3;
-} SHELLFLAGSTATE, * LPSHELLFLAGSTATE;
-
-VOID WINAPI SHGetSettings(LPSHELLFLAGSTATE lpsfs, DWORD dwMask);
-
-#define SSF_SHOWALLOBJECTS 0x0001
-#define SSF_SHOWEXTENSIONS 0x0002
-#define SSF_SHOWCOMPCOLOR 0x0008
-#define SSF_SHOWSYSFILES 0x0020
-#define SSF_DOUBLECLICKINWEBVIEW 0x0080
-#define SSF_SHOWATTRIBCOL 0x0100
-#define SSF_DESKTOPHTML 0x0200
-#define SSF_WIN95CLASSIC 0x0400
-#define SSF_DONTPRETTYPATH 0x0800
-#define SSF_SHOWINFOTIP 0x2000
-#define SSF_MAPNETDRVBUTTON 0x1000
-#define SSF_NOCONFIRMRECYCLE 0x8000
-#define SSF_HIDEICONS 0x4000
-
-/****************************************************************************
-* SHRestricted API
-*/
-typedef enum RESTRICTIONS
-{
- REST_NONE = 0x00000000,
- REST_NORUN = 0x00000001,
- REST_NOCLOSE = 0x00000002,
- REST_NOSAVESET = 0x00000004,
- REST_NOFILEMENU = 0x00000008,
- REST_NOSETFOLDERS = 0x00000010,
- REST_NOSETTASKBAR = 0x00000020,
- REST_NODESKTOP = 0x00000040,
- REST_NOFIND = 0x00000080,
- REST_NODRIVES = 0x00000100,
- REST_NODRIVEAUTORUN = 0x00000200,
- REST_NODRIVETYPEAUTORUN = 0x00000400,
- REST_NONETHOOD = 0x00000800,
- REST_STARTBANNER = 0x00001000,
- REST_RESTRICTRUN = 0x00002000,
- REST_NOPRINTERTABS = 0x00004000,
- REST_NOPRINTERDELETE = 0x00008000,
- REST_NOPRINTERADD = 0x00010000,
- REST_NOSTARTMENUSUBFOLDERS = 0x00020000,
- REST_MYDOCSONNET = 0x00040000,
- REST_NOEXITTODOS = 0x00080000,
- REST_ENFORCESHELLEXTSECURITY = 0x00100000,
- REST_LINKRESOLVEIGNORELINKINFO = 0x00200000,
- REST_NOCOMMONGROUPS = 0x00400000,
- REST_SEPARATEDESKTOPPROCESS = 0x00800000,
- REST_NOWEB = 0x01000000,
- REST_NOTRAYCONTEXTMENU = 0x02000000,
- REST_NOVIEWCONTEXTMENU = 0x04000000,
- REST_NONETCONNECTDISCONNECT = 0x08000000,
- REST_STARTMENULOGOFF = 0x10000000,
- REST_NOSETTINGSASSIST = 0x20000000,
- REST_NOINTERNETICON = 0x40000001,
- REST_NORECENTDOCSHISTORY,
- REST_NORECENTDOCSMENU,
- REST_NOACTIVEDESKTOP,
- REST_NOACTIVEDESKTOPCHANGES,
- REST_NOFAVORITESMENU,
- REST_CLEARRECENTDOCSONEXIT,
- REST_CLASSICSHELL,
- REST_NOCUSTOMIZEWEBVIEW,
-
- REST_NOHTMLWALLPAPER = 0x40000010,
- REST_NOCHANGINGWALLPAPER,
- REST_NODESKCOMP,
- REST_NOADDDESKCOMP,
- REST_NODELDESKCOMP,
- REST_NOCLOSEDESKCOMP,
- REST_NOCLOSE_DRAGDROPBAND,
- REST_NOMOVINGBAND,
- REST_NOEDITDESKCOMP,
- REST_NORESOLVESEARCH,
- REST_NORESOLVETRACK,
- REST_FORCECOPYACLWITHFILE,
- REST_NOLOGO3CHANNELNOTIFY,
- REST_NOFORGETSOFTWAREUPDATE,
- REST_NOSETACTIVEDESKTOP,
- REST_NOUPDATEWINDOWS,
- REST_NOCHANGESTARMENU, /* 0x40000020 */
- REST_NOFOLDEROPTIONS,
- REST_HASFINDCOMPUTERS,
- REST_INTELLIMENUS,
- REST_RUNDLGMEMCHECKBOX,
- REST_ARP_ShowPostSetup,
- REST_NOCSC,
- REST_NOCONTROLPANEL,
- REST_ENUMWORKGROUP,
- REST_ARP_NOARP,
- REST_ARP_NOREMOVEPAGE,
- REST_ARP_NOADDPAGE,
- REST_ARP_NOWINSETUPPAGE,
- REST_GREYMSIADS,
- REST_NOCHANGEMAPPEDDRIVELABEL,
- REST_NOCHANGEMAPPEDDRIVECOMMENT,
- REST_MaxRecentDocs, /* 0x40000030 */
- REST_NONETWORKCONNECTIONS,
- REST_FORCESTARTMENULOGOFF,
- REST_NOWEBVIEW,
- REST_NOCUSTOMIZETHISFOLDER,
- REST_NOENCRYPTION,
-
- REST_ALLOWFRENCHENCRYPTION, /* not documented */
-
- REST_DONTSHOWSUPERHIDDEN,
- REST_NOSHELLSEARCHBUTTON,
- REST_NOHARDWARETAB,
- REST_NORUNASINSTALLPROMPT,
- REST_PROMPTRUNASINSTALLNETPATH,
- REST_NOMANAGEMYCOMPUTERVERB,
- REST_NORECENTDOCSNETHOOD,
- REST_DISALLOWRUN,
- REST_NOWELCOMESCREEN,
- REST_RESTRICTCPL, /* 0x40000040 */
- REST_DISALLOWCPL,
- REST_NOSMBALLOONTIP,
- REST_NOSMHELP,
- REST_NOWINKEYS,
- REST_NOENCRYPTONMOVE,
- REST_NOLOCALMACHINERUN,
- REST_NOCURRENTUSERRUN,
- REST_NOLOCALMACHINERUNONCE,
- REST_NOCURRENTUSERRUNONCE,
- REST_FORCEACTIVEDESKTOPON,
- REST_NOCOMPUTERSNEARME,
- REST_NOVIEWONDRIVE,
- REST_NONETCRAWL,
- REST_NOSHAREDDOCUMENTS,
- REST_NOSMMYDOCS,
- REST_NOSMMYPICS, /* 0x40000050 */
- REST_ALLOWBITBUCKDRIVES,
- REST_NONLEGACYSHELLMODE,
- REST_NOCONTROLPANELBARRICADE,
- REST_NOSTARTPAGE,
- REST_NOAUTOTRAYNOTIFY,
- REST_NOTASKGROUPING,
- REST_NOCDBURNING,
- REST_MYCOMPNOPROP,
- REST_MYDOCSNOPROP,
- REST_NOSTARTPANEL,
- REST_NODISPLAYAPPEARANCEPAGE,
- REST_NOTHEMESTAB,
- REST_NOVISUALSTYLECHOICE,
- REST_NOSIZECHOICE,
- REST_NOCOLORCHOICE,
- REST_SETVISUALSTYLE, /* 0x40000060 */
- REST_STARTRUNNOHOMEPATH,
- REST_NOUSERNAMEINSTARTPANEL,
- REST_NOMYCOMPUTERICON,
- REST_NOSMNETWORKPLACES,
- REST_NOSMPINNEDLIST,
- REST_NOSMMYMUSIC,
- REST_NOSMEJECTPC,
- REST_NOSMMOREPROGRAMS,
- REST_NOSMMFUPROGRAMS,
- REST_NOTRAYITEMSDISPLAY,
- REST_NOTOOLBARSONTASKBAR,
- /* 0x4000006C
- 0x4000006D
- 0x4000006E */
- REST_NOSMCONFIGUREPROGRAMS = 0x4000006F,
- REST_HIDECLOCK, /* 0x40000070 */
- REST_NOLOWDISKSPACECHECKS,
- REST_NOENTIRENETWORK,
- REST_NODESKTOPCLEANUP,
- REST_BITBUCKNUKEONDELETE,
- REST_BITBUCKCONFIRMDELETE,
- REST_BITBUCKNOPROP,
- REST_NODISPBACKGROUND,
- REST_NODISPSCREENSAVEPG,
- REST_NODISPSETTINGSPG,
- REST_NODISPSCREENSAVEPREVIEW,
- REST_NODISPLAYCPL,
- REST_HIDERUNASVERB,
- REST_NOTHUMBNAILCACHE,
- REST_NOSTRCMPLOGICAL,
- REST_NOPUBLISHWIZARD,
- REST_NOONLINEPRINTSWIZARD, /* 0x40000080 */
- REST_NOWEBSERVICES,
- REST_ALLOWUNHASHEDWEBVIEW,
- REST_ALLOWLEGACYWEBVIEW,
- REST_REVERTWEBVIEWSECURITY,
-
- REST_INHERITCONSOLEHANDLES = 0x40000086,
-
- REST_NODISCONNECT = 0x41000001,
- REST_NOSECURITY,
- REST_NOFILEASSOCIATE, /* 0x41000003 */
-} RESTRICTIONS;
-
-DWORD WINAPI SHRestricted(RESTRICTIONS rest);
-
-/****************************************************************************
-* SHChangeNotify API
-*/
-typedef struct _SHChangeNotifyEntry
-{
- LPCITEMIDLIST pidl;
- BOOL fRecursive;
-} SHChangeNotifyEntry;
-
-#define SHCNE_RENAMEITEM 0x00000001
-#define SHCNE_CREATE 0x00000002
-#define SHCNE_DELETE 0x00000004
-#define SHCNE_MKDIR 0x00000008
-#define SHCNE_RMDIR 0x00000010
-#define SHCNE_MEDIAINSERTED 0x00000020
-#define SHCNE_MEDIAREMOVED 0x00000040
-#define SHCNE_DRIVEREMOVED 0x00000080
-#define SHCNE_DRIVEADD 0x00000100
-#define SHCNE_NETSHARE 0x00000200
-#define SHCNE_NETUNSHARE 0x00000400
-#define SHCNE_ATTRIBUTES 0x00000800
-#define SHCNE_UPDATEDIR 0x00001000
-#define SHCNE_UPDATEITEM 0x00002000
-#define SHCNE_SERVERDISCONNECT 0x00004000
-#define SHCNE_UPDATEIMAGE 0x00008000
-#define SHCNE_DRIVEADDGUI 0x00010000
-#define SHCNE_RENAMEFOLDER 0x00020000
-#define SHCNE_FREESPACE 0x00040000
-
-#define SHCNE_EXTENDED_EVENT 0x04000000
-#define SHCNE_ASSOCCHANGED 0x08000000
-#define SHCNE_DISKEVENTS 0x0002381F
-#define SHCNE_GLOBALEVENTS 0x0C0581E0
-#define SHCNE_ALLEVENTS 0x7FFFFFFF
-#define SHCNE_INTERRUPT 0x80000000
-
-#define SHCNEE_ORDERCHANGED 0x0002L
-#define SHCNEE_MSI_CHANGE 0x0004L
-#define SHCNEE_MSI_UNINSTALL 0x0005L
-
-#define SHCNF_IDLIST 0x0000
-#define SHCNF_PATHA 0x0001
-#define SHCNF_PRINTERA 0x0002
-#define SHCNF_DWORD 0x0003
-#define SHCNF_PATHW 0x0005
-#define SHCNF_PRINTERW 0x0006
-#define SHCNF_TYPE 0x00FF
-#define SHCNF_FLUSH 0x1000
-#define SHCNF_FLUSHNOWAIT 0x2000
-
-#define SHCNF_PATH WINELIB_NAME_AW(SHCNF_PATH)
-#define SHCNF_PRINTER WINELIB_NAME_AW(SHCNF_PRINTER)
-
-void WINAPI SHChangeNotify(LONG wEventId, UINT uFlags, LPCVOID dwItem1, LPCVOID dwItem2);
-
-/*
- * IShellChangeNotify
- */
-typedef struct IShellChangeNotify IShellChangeNotify, *LPSHELLCHANGENOTIFY;
-
-#define INTERFACE IShellChangeNotify
-#define IShellChangeNotify_METHODS \
- IUnknown_METHODS \
- STDMETHOD(OnChange)(THIS_ LONG lEvent, LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2) PURE;
-
-ICOM_DEFINE(IShellChangeNotify, IUnknown)
-#undef INTERFACE
-
-#ifdef COBJMACROS
-/*** IUnknown methods ***/
-#define IShellChangeNotify_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
-#define IShellChangeNotify_AddRef(p) (p)->lpVtbl->AddRef(p)
-#define IShellChangeNotify_Release(p) (p)->lpVtbl->Release(p)
-/*** IShellChangeNotify methods ***/
-#define IShellChangeNotify_OnChange(p,a,b,c) (p)->lpVtbl->OnChange(p,a,b,c)
-#endif
-
-typedef struct _SHChangeDWORDAsIDList {
- USHORT cb;
- DWORD dwItem1;
- DWORD dwItem2;
- USHORT cbZero;
-} SHChangeDWORDAsIDList, *LPSHChangeDWORDAsIDList;
-
-typedef struct _SHChangeProductKeyAsIDList {
- USHORT cb;
- WCHAR wszProductKey[39];
- USHORT cbZero;
-} SHChangeProductKeyAsIDList, *LPSHChangeProductKeyAsIDList;
-
-ULONG WINAPI SHChangeNotifyRegister(HWND hwnd, int fSources, LONG fEvents, UINT wMsg,
- int cEntries, SHChangeNotifyEntry *pshcne);
-BOOL WINAPI SHChangeNotifyDeregister(ULONG ulID);
-HANDLE WINAPI SHChangeNotification_Lock(HANDLE hChangeNotification, DWORD dwProcessId,
- LPITEMIDLIST **pppidl, LONG *plEvent);
-BOOL WINAPI SHChangeNotification_Unlock(HANDLE hLock);
-
-HRESULT WINAPI SHGetRealIDL(IShellFolder *psf, LPCITEMIDLIST pidlSimple, LPITEMIDLIST * ppidlReal);
-
-/****************************************************************************
-* SHCreateDirectory API
-*/
-DWORD WINAPI SHCreateDirectory(HWND, LPCVOID);
-DWORD WINAPI SHCreateDirectoryExA(HWND, LPCSTR, LPSECURITY_ATTRIBUTES);
-DWORD WINAPI SHCreateDirectoryExW(HWND, LPCWSTR, LPSECURITY_ATTRIBUTES);
-
-/****************************************************************************
-* SHGetSpecialFolderLocation API
-*/
-HRESULT WINAPI SHGetSpecialFolderLocation(HWND hwndOwner, int nFolder, LPITEMIDLIST * ppidl);
-HRESULT WINAPI SHGetFolderLocation(HWND hwndOwner, int nFolder, HANDLE hToken, DWORD dwReserved, LPITEMIDLIST *ppidl);
-
-#define CSIDL_DESKTOP 0x0000
-#define CSIDL_INTERNET 0x0001
-#define CSIDL_PROGRAMS 0x0002
-#define CSIDL_CONTROLS 0x0003
-#define CSIDL_PRINTERS 0x0004
-#define CSIDL_PERSONAL 0x0005
-#define CSIDL_FAVORITES 0x0006
-#define CSIDL_STARTUP 0x0007
-#define CSIDL_RECENT 0x0008
-#define CSIDL_SENDTO 0x0009
-#define CSIDL_BITBUCKET 0x000a
-#define CSIDL_STARTMENU 0x000b
-#define CSIDL_MYDOCUMENTS 0x000c
-#define CSIDL_MYMUSIC 0x000d
-#define CSIDL_MYVIDEO 0x000e
-#define CSIDL_DESKTOPDIRECTORY 0x0010
-#define CSIDL_DRIVES 0x0011
-#define CSIDL_NETWORK 0x0012
-#define CSIDL_NETHOOD 0x0013
-#define CSIDL_FONTS 0x0014
-#define CSIDL_TEMPLATES 0x0015
-#define CSIDL_COMMON_STARTMENU 0x0016
-#define CSIDL_COMMON_PROGRAMS 0X0017
-#define CSIDL_COMMON_STARTUP 0x0018
-#define CSIDL_COMMON_DESKTOPDIRECTORY 0x0019
-#define CSIDL_APPDATA 0x001a
-#define CSIDL_PRINTHOOD 0x001b
-#define CSIDL_LOCAL_APPDATA 0x001c
-#define CSIDL_ALTSTARTUP 0x001d
-#define CSIDL_COMMON_ALTSTARTUP 0x001e
-#define CSIDL_COMMON_FAVORITES 0x001f
-#define CSIDL_INTERNET_CACHE 0x0020
-#define CSIDL_COOKIES 0x0021
-#define CSIDL_HISTORY 0x0022
-#define CSIDL_COMMON_APPDATA 0x0023
-#define CSIDL_WINDOWS 0x0024
-#define CSIDL_SYSTEM 0x0025
-#define CSIDL_PROGRAM_FILES 0x0026
-#define CSIDL_MYPICTURES 0x0027
-#define CSIDL_PROFILE 0x0028
-#define CSIDL_SYSTEMX86 0x0029
-#define CSIDL_PROGRAM_FILESX86 0x002a
-#define CSIDL_PROGRAM_FILES_COMMON 0x002b
-#define CSIDL_PROGRAM_FILES_COMMONX86 0x002c
-#define CSIDL_COMMON_TEMPLATES 0x002d
-#define CSIDL_COMMON_DOCUMENTS 0x002e
-#define CSIDL_COMMON_ADMINTOOLS 0x002f
-#define CSIDL_ADMINTOOLS 0x0030
-#define CSIDL_CONNECTIONS 0x0031
-#define CSIDL_COMMON_MUSIC 0x0035
-#define CSIDL_COMMON_PICTURES 0x0036
-#define CSIDL_COMMON_VIDEO 0x0037
-#define CSIDL_RESOURCES 0x0038
-#define CSIDL_RESOURCES_LOCALIZED 0x0039
-#define CSIDL_COMMON_OEM_LINKS 0x003a
-#define CSIDL_CDBURN_AREA 0x003b
-#define CSIDL_COMPUTERSNEARME 0x003d
-#define CSIDL_PROFILES 0x003e
#define CSIDL_FOLDER_MASK 0x00ff
-#define CSIDL_FLAG_PER_USER_INIT 0x0800
-#define CSIDL_FLAG_NO_ALIAS 0x1000
-#define CSIDL_FLAG_DONT_VERIFY 0x4000
-#define CSIDL_FLAG_CREATE 0x8000
-
-#define CSIDL_FLAG_MASK 0xff00
-
-/****************************************************************************
- * SHGetDesktopFolder API
- */
-DWORD WINAPI SHGetDesktopFolder(IShellFolder * *);
-
-/****************************************************************************
- * SHBindToParent API
- */
-HRESULT WINAPI SHBindToParent(LPCITEMIDLIST pidl, REFIID riid, LPVOID *ppv, LPCITEMIDLIST *ppidlLast);
-
-/****************************************************************************
-* SHDefExtractIcon API
-*/
-HRESULT WINAPI SHDefExtractIconA(LPCSTR pszIconFile, int iIndex, UINT uFlags,
- HICON* phiconLarge, HICON* phiconSmall, UINT nIconSize);
-HRESULT WINAPI SHDefExtractIconW(LPCWSTR pszIconFile, int iIndex, UINT uFlags,
- HICON* phiconLarge, HICON* phiconSmall, UINT nIconSize);
-#define SHDefExtractIcon WINELIB_NAME_AW(SHDefExtractIcon)
-/*
- * DROPFILES for CF_HDROP and CF_PRINTERS
- */
-typedef struct _DROPFILES
-{
- DWORD pFiles;
- POINT pt;
- BOOL fNC;
- BOOL fWide;
-} DROPFILES, *LPDROPFILES;
-
-#include <poppack.h>
+LPVOID WINAPI SHAlloc(ULONG);
+void WINAPI SHFree(LPVOID);
+int WINAPI SHMapPIDLToSystemImageListIndex(IShellFolder*,LPCITEMIDLIST,int*);
/*****************************************************************************
* IFileSystemBindData interface
*/
-#ifndef __IFileSystemBindData_FWD_DEFINED__
-#define __IFileSystemBindData_FWD_DEFINED__
-typedef struct IFileSystemBindData IFileSystemBindData;
-#endif
-
-typedef IFileSystemBindData *LPFILESYSTEMBINDDATA;
-
-#ifndef __IFileSystemBindData_INTERFACE_DEFINED__
-#define __IFileSystemBindData_INTERFACE_DEFINED__
-
DEFINE_GUID(IID_IFileSystemBindData, 0x01e18d10, 0x4d8b, 0x11d2, 0x85,0x5d, 0x00,0x60,0x08,0x05,0x93,0x67);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-struct IFileSystemBindData : public IUnknown
-{
- virtual HRESULT STDMETHODCALLTYPE GetFindData(
- WIN32_FIND_DATAW* pfd) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetFindData(
- const WIN32_FIND_DATAW* pfd) = 0;
-
-};
-#else
-typedef struct IFileSystemBindDataVtbl IFileSystemBindDataVtbl;
-struct IFileSystemBindData {
- const IFileSystemBindDataVtbl* lpVtbl;
-};
-struct IFileSystemBindDataVtbl {
- ICOM_MSVTABLE_COMPAT_FIELDS
-
- /*** IUnknown methods ***/
- HRESULT (STDMETHODCALLTYPE *QueryInterface)(
- IFileSystemBindData* This,
- REFIID riid,
- void** ppvObject);
-
- ULONG (STDMETHODCALLTYPE *AddRef)(
- IFileSystemBindData* This);
-
- ULONG (STDMETHODCALLTYPE *Release)(
- IFileSystemBindData* This);
-
- /*** IFileSystemBindData methods ***/
- HRESULT (STDMETHODCALLTYPE *GetFindData)(
- IFileSystemBindData* This,
- WIN32_FIND_DATAW* pfd);
-
- HRESULT (STDMETHODCALLTYPE *SetFindData)(
- IFileSystemBindData* This,
- const WIN32_FIND_DATAW* pfd);
-
-};
/*** IUnknown methods ***/
#define IFileSystemBindData_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
@@ -885,73 +75,4 @@
#define IFileSystemBindData_GetFindData(p,a) (p)->lpVtbl->GetFindData(p,a)
#define IFileSystemBindData_SetFindData(p,a) (p)->lpVtbl->SetFindData(p,a)
-#endif
-
-#define IFileSystemBindData_METHODS \
- ICOM_MSVTABLE_COMPAT_FIELDS \
- /*** IUnknown methods ***/ \
- STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
- STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
- STDMETHOD_(ULONG,Release)(THIS) PURE; \
- /*** IFileSystemBindData methods ***/ \
- STDMETHOD_(HRESULT,GetFindData)(THIS_ WIN32_FIND_DATAW* pfd) PURE; \
- STDMETHOD_(HRESULT,SetFindData)(THIS_ const WIN32_FIND_DATAW* pfd) PURE;
-
-#endif /* __IFileSystemBindData_INTERFACE_DEFINED__ */
-
-
-/****************************************************************************
- * Drag And Drop Routines
- */
-
-/* DAD_AutoScroll sample structure */
-#define NUM_POINTS 3
-typedef struct
-{
- int iNextSample;
- DWORD dwLastScroll;
- BOOL bFull;
- POINT pts[NUM_POINTS];
- DWORD dwTimes[NUM_POINTS];
-} AUTO_SCROLL_DATA;
-
-BOOL WINAPI DAD_SetDragImage(HIMAGELIST,LPPOINT);
-BOOL WINAPI DAD_DragEnterEx(HWND,POINT);
-BOOL WINAPI DAD_DragEnterEx2(HWND,POINT,IDataObject*);
-BOOL WINAPI DAD_DragMove(POINT);
-BOOL WINAPI DAD_DragLeave(void);
-BOOL WINAPI DAD_AutoScroll(HWND,AUTO_SCROLL_DATA*,LPPOINT);
-HRESULT WINAPI SHDoDragDrop(HWND,IDataObject*,IDropSource*,DWORD,LPDWORD);
-
-
-/****************************************************************************
- * Cabinet functions
- */
-
-typedef struct {
- WORD cLength;
- WORD nVersion;
- BOOL fFullPathTitle:1;
- BOOL fSaveLocalView:1;
- BOOL fNotShell:1;
- BOOL fSimpleDefault:1;
- BOOL fDontShowDescBar:1;
- BOOL fNewWindowMode:1;
- BOOL fShowCompColor:1;
- BOOL fDontPrettyNames:1;
- BOOL fAdminsCreateCommonGroups:1;
- UINT fUnusedFlags:7;
- UINT fMenuEnumFilter;
-} CABINETSTATE, *LPCABINETSTATE;
-
-#define CABINETSTATE_VERSION 2
-
-BOOL WINAPI ReadCabinetState(CABINETSTATE *, int);
-BOOL WINAPI WriteCabinetState(CABINETSTATE *);
-
-
-#ifdef __cplusplus
-} /* extern "C" */
-#endif /* defined(__cplusplus) */
-
#endif /* __WINE_SHLOBJ_H */
reactos/include/wine
diff -u -r1.3 -r1.4
--- shobjidl.h 6 Jan 2004 22:15:15 -0000 1.3
+++ shobjidl.h 29 Jun 2004 13:40:40 -0000 1.4
@@ -1,4240 +1,41 @@
-/*** Autogenerated by WIDL 0.1 from shobjidl.idl - Do not edit ***/
-#include <rpc.h>
-#include <rpcndr.h>
-
-#ifndef __WIDL_SHOBJIDL_H
-#define __WIDL_SHOBJIDL_H
-#ifdef __cplusplus
-extern "C" {
-#endif
-#include <objidl.h>
-#include <oleidl.h>
-#include <oaidl.h>
-#include <shtypes.h>
-#include <servprov.h>
-#include <comcat.h>
-#ifndef __IPersistFolder_FWD_DEFINED__
-#define __IPersistFolder_FWD_DEFINED__
-typedef struct IPersistFolder IPersistFolder;
-#endif
-
-typedef IPersistFolder *LPPERSISTFOLDER;
-
-/*****************************************************************************
- * IPersistFolder interface
- */
-#ifndef __IPersistFolder_INTERFACE_DEFINED__
-#define __IPersistFolder_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IPersistFolder, 0x000214ea, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-struct IPersistFolder : public IPersist
-{
- virtual HRESULT STDMETHODCALLTYPE Initialize(
- LPCITEMIDLIST pidl) = 0;
-
-};
-#else
-typedef struct IPersistFolderVtbl IPersistFolderVtbl;
-struct IPersistFolder {
- const IPersistFolderVtbl* lpVtbl;
-};
-struct IPersistFolderVtbl {
- ICOM_MSVTABLE_COMPAT_FIELDS
-
- /*** IUnknown methods ***/
- HRESULT (STDMETHODCALLTYPE *QueryInterface)(
- IPersistFolder* This,
- REFIID riid,
- void** ppvObject);
-
- ULONG (STDMETHODCALLTYPE *AddRef)(
- IPersistFolder* This);
-
- ULONG (STDMETHODCALLTYPE *Release)(
- IPersistFolder* This);
-
- /*** IPersist methods ***/
- HRESULT (STDMETHODCALLTYPE *GetClassID)(
- IPersistFolder* This,
- CLSID* pClassID);
-
- /*** IPersistFolder methods ***/
- HRESULT (STDMETHODCALLTYPE *Initialize)(
- IPersistFolder* This,
- LPCITEMIDLIST pidl);
-
-};
-
-/*** IUnknown methods ***/
-#define IPersistFolder_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
-#define IPersistFolder_AddRef(p) (p)->lpVtbl->AddRef(p)
-#define IPersistFolder_Release(p) (p)->lpVtbl->Release(p)
-/*** IPersist methods ***/
-#define IPersistFolder_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
-/*** IPersistFolder methods ***/
-#define IPersistFolder_Initialize(p,a) (p)->lpVtbl->Initialize(p,a)
-
-#endif
-
-#define IPersistFolder_METHODS \
- ICOM_MSVTABLE_COMPAT_FIELDS \
- /*** IUnknown methods ***/ \
- STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
- STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
- STDMETHOD_(ULONG,Release)(THIS) PURE; \
- /*** IPersist methods ***/ \
- STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \
- /*** IPersistFolder methods ***/ \
- STDMETHOD_(HRESULT,Initialize)(THIS_ LPCITEMIDLIST pidl) PURE;
-
-HRESULT CALLBACK IPersistFolder_Initialize_Proxy(
- IPersistFolder* This,
- LPCITEMIDLIST pidl);
-void __RPC_STUB IPersistFolder_Initialize_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-
-#endif /* __IPersistFolder_INTERFACE_DEFINED__ */
-
-#ifndef __IPersistFolder2_FWD_DEFINED__
-#define __IPersistFolder2_FWD_DEFINED__
-typedef struct IPersistFolder2 IPersistFolder2;
-#endif
-
-typedef IPersistFolder2 *LPPERSISTFOLDER2;
-
-/*****************************************************************************
- * IPersistFolder2 interface
- */
-#ifndef __IPersistFolder2_INTERFACE_DEFINED__
-#define __IPersistFolder2_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IPersistFolder2, 0x1ac3d9f0, 0x175c, 0x11d1, 0x95,0xbe, 0x00,0x60,0x97,0x97,0xea,0x4f);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-struct IPersistFolder2 : public IPersistFolder
-{
- virtual HRESULT STDMETHODCALLTYPE GetCurFolder(
- LPITEMIDLIST* ppidl) = 0;
-
-};
-#else
-typedef struct IPersistFolder2Vtbl IPersistFolder2Vtbl;
-struct IPersistFolder2 {
- const IPersistFolder2Vtbl* lpVtbl;
-};
-struct IPersistFolder2Vtbl {
- ICOM_MSVTABLE_COMPAT_FIELDS
-
- /*** IUnknown methods ***/
- HRESULT (STDMETHODCALLTYPE *QueryInterface)(
- IPersistFolder2* This,
- REFIID riid,
- void** ppvObject);
-
- ULONG (STDMETHODCALLTYPE *AddRef)(
- IPersistFolder2* This);
-
- ULONG (STDMETHODCALLTYPE *Release)(
- IPersistFolder2* This);
-
- /*** IPersist methods ***/
- HRESULT (STDMETHODCALLTYPE *GetClassID)(
- IPersistFolder2* This,
- CLSID* pClassID);
-
- /*** IPersistFolder methods ***/
- HRESULT (STDMETHODCALLTYPE *Initialize)(
- IPersistFolder2* This,
- LPCITEMIDLIST pidl);
-
- /*** IPersistFolder2 methods ***/
- HRESULT (STDMETHODCALLTYPE *GetCurFolder)(
- IPersistFolder2* This,
- LPITEMIDLIST* ppidl);
-
-};
-
-/*** IUnknown methods ***/
-#define IPersistFolder2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
-#define IPersistFolder2_AddRef(p) (p)->lpVtbl->AddRef(p)
-#define IPersistFolder2_Release(p) (p)->lpVtbl->Release(p)
-/*** IPersist methods ***/
-#define IPersistFolder2_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
-/*** IPersistFolder methods ***/
-#define IPersistFolder2_Initialize(p,a) (p)->lpVtbl->Initialize(p,a)
-/*** IPersistFolder2 methods ***/
-#define IPersistFolder2_GetCurFolder(p,a) (p)->lpVtbl->GetCurFolder(p,a)
-
-#endif
-
-#define IPersistFolder2_METHODS \
- ICOM_MSVTABLE_COMPAT_FIELDS \
- /*** IUnknown methods ***/ \
- STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
- STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
- STDMETHOD_(ULONG,Release)(THIS) PURE; \
- /*** IPersist methods ***/ \
- STDMETHOD_(HRESULT,GetClassID)(THIS_ CLSID* pClassID) PURE; \
- /*** IPersistFolder methods ***/ \
- STDMETHOD_(HRESULT,Initialize)(THIS_ LPCITEMIDLIST pidl) PURE; \
- /*** IPersistFolder2 methods ***/ \
- STDMETHOD_(HRESULT,GetCurFolder)(THIS_ LPITEMIDLIST* ppidl) PURE;
-
-HRESULT CALLBACK IPersistFolder2_GetCurFolder_Proxy(
- IPersistFolder2* This,
- LPITEMIDLIST* ppidl);
-void __RPC_STUB IPersistFolder2_GetCurFolder_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-
-#endif /* __IPersistFolder2_INTERFACE_DEFINED__ */
-
-#ifndef __IEnumIDList_FWD_DEFINED__
-#define __IEnumIDList_FWD_DEFINED__
-typedef struct IEnumIDList IEnumIDList;
-#endif
-
-typedef IEnumIDList *LPENUMIDLIST;
-
-/*****************************************************************************
- * IEnumIDList interface
- */
-#ifndef __IEnumIDList_INTERFACE_DEFINED__
-#define __IEnumIDList_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IEnumIDList, 0x000214f2, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-struct IEnumIDList : public IUnknown
-{
- virtual HRESULT STDMETHODCALLTYPE Next(
- ULONG celt,
- LPITEMIDLIST* rgelt,
- ULONG* pceltFetched) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Skip(
- ULONG celt) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Reset(
- ) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Clone(
- IEnumIDList** ppenum) = 0;
-
-};
-#else
-typedef struct IEnumIDListVtbl IEnumIDListVtbl;
-struct IEnumIDList {
- const IEnumIDListVtbl* lpVtbl;
-};
-struct IEnumIDListVtbl {
- ICOM_MSVTABLE_COMPAT_FIELDS
-
- /*** IUnknown methods ***/
- HRESULT (STDMETHODCALLTYPE *QueryInterface)(
- IEnumIDList* This,
- REFIID riid,
- void** ppvObject);
-
- ULONG (STDMETHODCALLTYPE *AddRef)(
- IEnumIDList* This);
-
- ULONG (STDMETHODCALLTYPE *Release)(
- IEnumIDList* This);
-
- /*** IEnumIDList methods ***/
- HRESULT (STDMETHODCALLTYPE *Next)(
- IEnumIDList* This,
- ULONG celt,
- LPITEMIDLIST* rgelt,
- ULONG* pceltFetched);
-
- HRESULT (STDMETHODCALLTYPE *Skip)(
- IEnumIDList* This,
- ULONG celt);
-
- HRESULT (STDMETHODCALLTYPE *Reset)(
- IEnumIDList* This);
-
- HRESULT (STDMETHODCALLTYPE *Clone)(
- IEnumIDList* This,
- IEnumIDList** ppenum);
-
-};
-
-/*** IUnknown methods ***/
-#define IEnumIDList_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
-#define IEnumIDList_AddRef(p) (p)->lpVtbl->AddRef(p)
-#define IEnumIDList_Release(p) (p)->lpVtbl->Release(p)
-/*** IEnumIDList methods ***/
-#define IEnumIDList_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
-#define IEnumIDList_Skip(p,a) (p)->lpVtbl->Skip(p,a)
-#define IEnumIDList_Reset(p) (p)->lpVtbl->Reset(p)
-#define IEnumIDList_Clone(p,a) (p)->lpVtbl->Clone(p,a)
-
-#endif
-
-#define IEnumIDList_METHODS \
- ICOM_MSVTABLE_COMPAT_FIELDS \
- /*** IUnknown methods ***/ \
- STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
- STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
- STDMETHOD_(ULONG,Release)(THIS) PURE; \
- /*** IEnumIDList methods ***/ \
- STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, LPITEMIDLIST* rgelt, ULONG* pceltFetched) PURE; \
- STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \
- STDMETHOD_(HRESULT,Reset)(THIS) PURE; \
- STDMETHOD_(HRESULT,Clone)(THIS_ IEnumIDList** ppenum) PURE;
-
-HRESULT CALLBACK IEnumIDList_Next_Proxy(
- IEnumIDList* This,
- ULONG celt,
- LPITEMIDLIST* rgelt,
- ULONG* pceltFetched);
-void __RPC_STUB IEnumIDList_Next_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IEnumIDList_Skip_Proxy(
- IEnumIDList* This,
- ULONG celt);
-void __RPC_STUB IEnumIDList_Skip_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IEnumIDList_Reset_Proxy(
- IEnumIDList* This);
-void __RPC_STUB IEnumIDList_Reset_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IEnumIDList_Clone_Proxy(
- IEnumIDList* This,
- IEnumIDList** ppenum);
-void __RPC_STUB IEnumIDList_Clone_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-
-#endif /* __IEnumIDList_INTERFACE_DEFINED__ */
-
-#ifndef __IShellFolder_FWD_DEFINED__
-#define __IShellFolder_FWD_DEFINED__
-typedef struct IShellFolder IShellFolder;
-#endif
-
-typedef IShellFolder *LPSHELLFOLDER;
-
-typedef enum tagSHGDN {
- SHGDN_NORMAL = 0,
- SHGDN_INFOLDER = 1,
- SHGDN_FOREDITING = 0x1000,
- SHGDN_INCLUDE_NONFILESYS = 0x2000,
- SHGDN_FORADDRESSBAR = 0x4000,
- SHGDN_FORPARSING = 0x8000
-} SHGNO;
-
-typedef DWORD SHGDNF;
-
-enum tagSHCONTF {
- SHCONTF_FOLDERS = 32,
- SHCONTF_NONFOLDERS = 64,
- SHCONTF_INCLUDEHIDDEN = 128,
- SHCONTF_INIT_ON_FIRST_NEXT = 256,
- SHCONTF_NETPRINTERSRCH = 512,
- SHCONTF_SHAREABLE = 1024,
- SHCONTF_STORAGE = 2048
-};
-
-typedef DWORD SHCONTF;
-
-#define SFGAO_CANCOPY DROPEFFECT_COPY
-#define SFGAO_CANMOVE DROPEFFECT_MOVE
-#define SFGAO_CANLINK DROPEFFECT_LINK
-#define SFGAO_CANRENAME 0x00000010L
-#define SFGAO_CANDELETE 0x00000020L
-#define SFGAO_HASPROPSHEET 0x00000040L
-#define SFGAO_DROPTARGET 0x00000100L
-#define SFGAO_CAPABILITYMASK 0x00000177L
-#define SFGAO_LINK 0x00010000L
-#define SFGAO_SHARE 0x00020000L
-#define SFGAO_READONLY 0x00040000L
-#define SFGAO_GHOSTED 0x00080000L
-#define SFGAO_HIDDEN 0x00080000L
-#define SFGAO_DISPLAYATTRMASK 0x000F0000L
-#define SFGAO_FILESYSANCESTOR 0x10000000L
-#define SFGAO_FOLDER 0x20000000L
-#define SFGAO_FILESYSTEM 0x40000000L
-#define SFGAO_HASSUBFOLDER 0x80000000L
-#define SFGAO_CONTENTSMASK 0x80000000L
-#define SFGAO_VALIDATE 0x01000000L
-#define SFGAO_REMOVABLE 0x02000000L
-#define SFGAO_COMPRESSED 0x04000000L
-#define SFGAO_BROWSABLE 0x08000000L
-#define SFGAO_NONENUMERATED 0x00100000L
-#define SFGAO_NEWCONTENT 0x00200000L
-typedef ULONG SFGAOF;
-
-/*****************************************************************************
- * IShellFolder interface
- */
-#ifndef __IShellFolder_INTERFACE_DEFINED__
-#define __IShellFolder_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IShellFolder, 0x000214e6, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-struct IShellFolder : public IUnknown
-{
- virtual HRESULT STDMETHODCALLTYPE ParseDisplayName(
- HWND hwndOwner,
- LPBC pbcReserved,
- LPOLESTR lpszDisplayName,
- ULONG* pchEaten,
- LPITEMIDLIST* ppidl,
- ULONG* pdwAttributes) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnumObjects(
- HWND hwndOwner,
- SHCONTF grfFlags,
- IEnumIDList** ppenumIDList) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE BindToObject(
- LPCITEMIDLIST pidl,
- LPBC pbcReserved,
- REFIID riid,
- void** ppvOut) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE BindToStorage(
- LPCITEMIDLIST pidl,
- LPBC pbcReserved,
- REFIID riid,
- void** ppvObj) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CompareIDs(
- LPARAM lParam,
- LPCITEMIDLIST pidl1,
- LPCITEMIDLIST pidl2) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE CreateViewObject(
- HWND hwndOwner,
- REFIID riid,
- void** ppvOut) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetAttributesOf(
- UINT cidl,
- LPCITEMIDLIST* apidl,
- SFGAOF* rgfInOut) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetUIObjectOf(
- HWND hwndOwner,
- UINT cidl,
- LPCITEMIDLIST* apidl,
- REFIID riid,
- UINT* prgfInOut,
- void** ppvOut) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDisplayNameOf(
- LPCITEMIDLIST pidl,
- SHGDNF uFlags,
- STRRET* lpName) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE SetNameOf(
- HWND hwnd,
- LPCITEMIDLIST pidl,
- LPCOLESTR lpszName,
- SHGDNF uFlags,
- LPITEMIDLIST* ppidlOut) = 0;
-
-};
-#else
-typedef struct IShellFolderVtbl IShellFolderVtbl;
-struct IShellFolder {
- const IShellFolderVtbl* lpVtbl;
-};
-struct IShellFolderVtbl {
- ICOM_MSVTABLE_COMPAT_FIELDS
-
- /*** IUnknown methods ***/
- HRESULT (STDMETHODCALLTYPE *QueryInterface)(
- IShellFolder* This,
- REFIID riid,
- void** ppvObject);
-
- ULONG (STDMETHODCALLTYPE *AddRef)(
- IShellFolder* This);
-
- ULONG (STDMETHODCALLTYPE *Release)(
- IShellFolder* This);
-
- /*** IShellFolder methods ***/
- HRESULT (STDMETHODCALLTYPE *ParseDisplayName)(
- IShellFolder* This,
- HWND hwndOwner,
- LPBC pbcReserved,
- LPOLESTR lpszDisplayName,
- ULONG* pchEaten,
- LPITEMIDLIST* ppidl,
- ULONG* pdwAttributes);
-
- HRESULT (STDMETHODCALLTYPE *EnumObjects)(
- IShellFolder* This,
- HWND hwndOwner,
- SHCONTF grfFlags,
- IEnumIDList** ppenumIDList);
-
- HRESULT (STDMETHODCALLTYPE *BindToObject)(
- IShellFolder* This,
- LPCITEMIDLIST pidl,
- LPBC pbcReserved,
- REFIID riid,
- void** ppvOut);
-
- HRESULT (STDMETHODCALLTYPE *BindToStorage)(
- IShellFolder* This,
- LPCITEMIDLIST pidl,
- LPBC pbcReserved,
- REFIID riid,
- void** ppvObj);
-
- HRESULT (STDMETHODCALLTYPE *CompareIDs)(
- IShellFolder* This,
- LPARAM lParam,
- LPCITEMIDLIST pidl1,
- LPCITEMIDLIST pidl2);
-
- HRESULT (STDMETHODCALLTYPE *CreateViewObject)(
- IShellFolder* This,
- HWND hwndOwner,
- REFIID riid,
- void** ppvOut);
-
- HRESULT (STDMETHODCALLTYPE *GetAttributesOf)(
- IShellFolder* This,
- UINT cidl,
- LPCITEMIDLIST* apidl,
- SFGAOF* rgfInOut);
-
- HRESULT (STDMETHODCALLTYPE *GetUIObjectOf)(
- IShellFolder* This,
- HWND hwndOwner,
- UINT cidl,
- LPCITEMIDLIST* apidl,
- REFIID riid,
- UINT* prgfInOut,
- void** ppvOut);
-
- HRESULT (STDMETHODCALLTYPE *GetDisplayNameOf)(
- IShellFolder* This,
- LPCITEMIDLIST pidl,
- SHGDNF uFlags,
- STRRET* lpName);
-
- HRESULT (STDMETHODCALLTYPE *SetNameOf)(
- IShellFolder* This,
- HWND hwnd,
- LPCITEMIDLIST pidl,
- LPCOLESTR lpszName,
- SHGDNF uFlags,
- LPITEMIDLIST* ppidlOut);
-
-};
-
-/*** IUnknown methods ***/
-#define IShellFolder_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
-#define IShellFolder_AddRef(p) (p)->lpVtbl->AddRef(p)
-#define IShellFolder_Release(p) (p)->lpVtbl->Release(p)
-/*** IShellFolder methods ***/
-#define IShellFolder_ParseDisplayName(p,a,b,c,d,e,f) (p)->lpVtbl->ParseDisplayName(p,a,b,c,d,e,f)
-#define IShellFolder_EnumObjects(p,a,b,c) (p)->lpVtbl->EnumObjects(p,a,b,c)
-#define IShellFolder_BindToObject(p,a,b,c,d) (p)->lpVtbl->BindToObject(p,a,b,c,d)
-#define IShellFolder_BindToStorage(p,a,b,c,d) (p)->lpVtbl->BindToStorage(p,a,b,c,d)
-#define IShellFolder_CompareIDs(p,a,b,c) (p)->lpVtbl->CompareIDs(p,a,b,c)
-#define IShellFolder_CreateViewObject(p,a,b,c) (p)->lpVtbl->CreateViewObject(p,a,b,c)
-#define IShellFolder_GetAttributesOf(p,a,b,c) (p)->lpVtbl->GetAttributesOf(p,a,b,c)
-#define IShellFolder_GetUIObjectOf(p,a,b,c,d,e,f) (p)->lpVtbl->GetUIObjectOf(p,a,b,c,d,e,f)
-#define IShellFolder_GetDisplayNameOf(p,a,b,c) (p)->lpVtbl->GetDisplayNameOf(p,a,b,c)
-#define IShellFolder_SetNameOf(p,a,b,c,d,e) (p)->lpVtbl->SetNameOf(p,a,b,c,d,e)
-
-#endif
-
-#define IShellFolder_METHODS \
- ICOM_MSVTABLE_COMPAT_FIELDS \
- /*** IUnknown methods ***/ \
- STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
- STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
- STDMETHOD_(ULONG,Release)(THIS) PURE; \
- /*** IShellFolder methods ***/ \
- STDMETHOD_(HRESULT,ParseDisplayName)(THIS_ HWND hwndOwner, LPBC pbcReserved, LPOLESTR lpszDisplayName, ULONG* pchEaten, LPITEMIDLIST* ppidl, ULONG* pdwAttributes) PURE; \
- STDMETHOD_(HRESULT,EnumObjects)(THIS_ HWND hwndOwner, SHCONTF grfFlags, IEnumIDList** ppenumIDList) PURE; \
- STDMETHOD_(HRESULT,BindToObject)(THIS_ LPCITEMIDLIST pidl, LPBC pbcReserved, REFIID riid, void** ppvOut) PURE; \
- STDMETHOD_(HRESULT,BindToStorage)(THIS_ LPCITEMIDLIST pidl, LPBC pbcReserved, REFIID riid, void** ppvObj) PURE; \
- STDMETHOD_(HRESULT,CompareIDs)(THIS_ LPARAM lParam, LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2) PURE; \
- STDMETHOD_(HRESULT,CreateViewObject)(THIS_ HWND hwndOwner, REFIID riid, void** ppvOut) PURE; \
- STDMETHOD_(HRESULT,GetAttributesOf)(THIS_ UINT cidl, LPCITEMIDLIST* apidl, SFGAOF* rgfInOut) PURE; \
- STDMETHOD_(HRESULT,GetUIObjectOf)(THIS_ HWND hwndOwner, UINT cidl, LPCITEMIDLIST* apidl, REFIID riid, UINT* prgfInOut, void** ppvOut) PURE; \
- STDMETHOD_(HRESULT,GetDisplayNameOf)(THIS_ LPCITEMIDLIST pidl, SHGDNF uFlags, STRRET* lpName) PURE; \
- STDMETHOD_(HRESULT,SetNameOf)(THIS_ HWND hwnd, LPCITEMIDLIST pidl, LPCOLESTR lpszName, SHGDNF uFlags, LPITEMIDLIST* ppidlOut) PURE;
-
-HRESULT CALLBACK IShellFolder_ParseDisplayName_Proxy(
- IShellFolder* This,
- HWND hwndOwner,
- LPBC pbcReserved,
- LPOLESTR lpszDisplayName,
- ULONG* pchEaten,
- LPITEMIDLIST* ppidl,
- ULONG* pdwAttributes);
-void __RPC_STUB IShellFolder_ParseDisplayName_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IShellFolder_EnumObjects_Proxy(
- IShellFolder* This,
- HWND hwndOwner,
- SHCONTF grfFlags,
- IEnumIDList** ppenumIDList);
-void __RPC_STUB IShellFolder_EnumObjects_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IShellFolder_BindToObject_Proxy(
- IShellFolder* This,
- LPCITEMIDLIST pidl,
- LPBC pbcReserved,
- REFIID riid,
- void** ppvOut);
-void __RPC_STUB IShellFolder_BindToObject_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IShellFolder_BindToStorage_Proxy(
- IShellFolder* This,
- LPCITEMIDLIST pidl,
- LPBC pbcReserved,
- REFIID riid,
- void** ppvObj);
-void __RPC_STUB IShellFolder_BindToStorage_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IShellFolder_CompareIDs_Proxy(
- IShellFolder* This,
- LPARAM lParam,
- LPCITEMIDLIST pidl1,
- LPCITEMIDLIST pidl2);
-void __RPC_STUB IShellFolder_CompareIDs_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IShellFolder_CreateViewObject_Proxy(
- IShellFolder* This,
- HWND hwndOwner,
- REFIID riid,
- void** ppvOut);
-void __RPC_STUB IShellFolder_CreateViewObject_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IShellFolder_GetAttributesOf_Proxy(
- IShellFolder* This,
- UINT cidl,
- LPCITEMIDLIST* apidl,
- SFGAOF* rgfInOut);
-void __RPC_STUB IShellFolder_GetAttributesOf_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IShellFolder_GetUIObjectOf_Proxy(
- IShellFolder* This,
- HWND hwndOwner,
- UINT cidl,
- LPCITEMIDLIST* apidl,
- REFIID riid,
- UINT* prgfInOut,
- void** ppvOut);
-void __RPC_STUB IShellFolder_GetUIObjectOf_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IShellFolder_GetDisplayNameOf_Proxy(
- IShellFolder* This,
- LPCITEMIDLIST pidl,
- SHGDNF uFlags,
- STRRET* lpName);
-void __RPC_STUB IShellFolder_GetDisplayNameOf_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IShellFolder_SetNameOf_Proxy(
- IShellFolder* This,
- HWND hwnd,
- LPCITEMIDLIST pidl,
- LPCOLESTR lpszName,
- SHGDNF uFlags,
- LPITEMIDLIST* ppidlOut);
-void __RPC_STUB IShellFolder_SetNameOf_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-
-#endif /* __IShellFolder_INTERFACE_DEFINED__ */
-
-#ifndef __IEnumExtraSearch_FWD_DEFINED__
-#define __IEnumExtraSearch_FWD_DEFINED__
-typedef struct IEnumExtraSearch IEnumExtraSearch;
-#endif
-
-typedef IEnumExtraSearch *LPENUMEXTRASEARCH;
-
-typedef struct {
- GUID guidSearch;
- WCHAR wszFriendlyName[80];
- WCHAR wszUrl[2084];
-} EXTRASEARCH, *LPEXTRASEARCH;
-
-/*****************************************************************************
- * IEnumExtraSearch interface
- */
-#ifndef __IEnumExtraSearch_INTERFACE_DEFINED__
-#define __IEnumExtraSearch_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IEnumExtraSearch, 0x0e700be1, 0x9db6, 0x11d1, 0xa1,0xce, 0x00,0xc0,0x4f,0xd7,0x5d,0x13);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-struct IEnumExtraSearch : public IUnknown
-{
- virtual HRESULT STDMETHODCALLTYPE Next(
- ULONG celt,
- EXTRASEARCH* rgelt,
- ULONG* pceltFetched) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Skip(
- ULONG celt) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Reset(
- ) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE Clone(
- IEnumExtraSearch** ppenum) = 0;
-
-};
-#else
-typedef struct IEnumExtraSearchVtbl IEnumExtraSearchVtbl;
-struct IEnumExtraSearch {
- const IEnumExtraSearchVtbl* lpVtbl;
-};
-struct IEnumExtraSearchVtbl {
- ICOM_MSVTABLE_COMPAT_FIELDS
-
- /*** IUnknown methods ***/
- HRESULT (STDMETHODCALLTYPE *QueryInterface)(
- IEnumExtraSearch* This,
- REFIID riid,
- void** ppvObject);
-
- ULONG (STDMETHODCALLTYPE *AddRef)(
- IEnumExtraSearch* This);
-
- ULONG (STDMETHODCALLTYPE *Release)(
- IEnumExtraSearch* This);
-
- /*** IEnumExtraSearch methods ***/
- HRESULT (STDMETHODCALLTYPE *Next)(
- IEnumExtraSearch* This,
- ULONG celt,
- EXTRASEARCH* rgelt,
- ULONG* pceltFetched);
-
- HRESULT (STDMETHODCALLTYPE *Skip)(
- IEnumExtraSearch* This,
- ULONG celt);
-
- HRESULT (STDMETHODCALLTYPE *Reset)(
- IEnumExtraSearch* This);
-
- HRESULT (STDMETHODCALLTYPE *Clone)(
- IEnumExtraSearch* This,
- IEnumExtraSearch** ppenum);
-
-};
-
-/*** IUnknown methods ***/
-#define IEnumExtraSearch_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
-#define IEnumExtraSearch_AddRef(p) (p)->lpVtbl->AddRef(p)
-#define IEnumExtraSearch_Release(p) (p)->lpVtbl->Release(p)
-/*** IEnumExtraSearch methods ***/
-#define IEnumExtraSearch_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
-#define IEnumExtraSearch_Skip(p,a) (p)->lpVtbl->Skip(p,a)
-#define IEnumExtraSearch_Reset(p) (p)->lpVtbl->Reset(p)
-#define IEnumExtraSearch_Clone(p,a) (p)->lpVtbl->Clone(p,a)
-
-#endif
-
-#define IEnumExtraSearch_METHODS \
- ICOM_MSVTABLE_COMPAT_FIELDS \
- /*** IUnknown methods ***/ \
- STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
- STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
- STDMETHOD_(ULONG,Release)(THIS) PURE; \
- /*** IEnumExtraSearch methods ***/ \
- STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, EXTRASEARCH* rgelt, ULONG* pceltFetched) PURE; \
- STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \
- STDMETHOD_(HRESULT,Reset)(THIS) PURE; \
- STDMETHOD_(HRESULT,Clone)(THIS_ IEnumExtraSearch** ppenum) PURE;
-
-HRESULT CALLBACK IEnumExtraSearch_Next_Proxy(
- IEnumExtraSearch* This,
- ULONG celt,
- EXTRASEARCH* rgelt,
- ULONG* pceltFetched);
-void __RPC_STUB IEnumExtraSearch_Next_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IEnumExtraSearch_Skip_Proxy(
- IEnumExtraSearch* This,
- ULONG celt);
-void __RPC_STUB IEnumExtraSearch_Skip_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IEnumExtraSearch_Reset_Proxy(
- IEnumExtraSearch* This);
-void __RPC_STUB IEnumExtraSearch_Reset_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-HRESULT CALLBACK IEnumExtraSearch_Clone_Proxy(
- IEnumExtraSearch* This,
- IEnumExtraSearch** ppenum);
-void __RPC_STUB IEnumExtraSearch_Clone_Stub(
- struct IRpcStubBuffer* This,
- struct IRpcChannelBuffer* pRpcChannelBuffer,
- PRPC_MESSAGE pRpcMessage,
- DWORD* pdwStubPhase);
-
-#endif /* __IEnumExtraSearch_INTERFACE_DEFINED__ */
-
-#ifndef __IShellFolder2_FWD_DEFINED__
-#define __IShellFolder2_FWD_DEFINED__
-typedef struct IShellFolder2 IShellFolder2;
-#endif
-
-typedef enum {
- SHCOLSTATE_TYPE_STR = 0x1,
- SHCOLSTATE_TYPE_INT = 0x2,
- SHCOLSTATE_TYPE_DATE = 0x3,
- SHCOLSTATE_TYPEMASK = 0xf,
- SHCOLSTATE_ONBYDEFAULT = 0x10,
- SHCOLSTATE_SLOW = 0x20,
- SHCOLSTATE_EXTENDED = 0x40,
- SHCOLSTATE_SECONDARYUI = 0x80,
- SHCOLSTATE_HIDDEN = 0x100,
- SHCOLSTATE_PREFER_VARCMP = 0x200
-} SHCOLSTATE;
-
-typedef DWORD SHCOLSTATEF;
-
-typedef struct {
- GUID fmtid;
- DWORD pid;
-} SHCOLUMNID, *LPSHCOLUMNID;
-
-typedef const SHCOLUMNID *LPCSHCOLUMNID;
-
-/*****************************************************************************
- * IShellFolder2 interface
- */
-#ifndef __IShellFolder2_INTERFACE_DEFINED__
-#define __IShellFolder2_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IShellFolder2, 0x93f2f68c, 0x1d1b, 0x11d3, 0xa3,0x0e, 0x00,0xc0,0x4f,0x79,0xab,0xd1);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-struct IShellFolder2 : public IShellFolder
-{
- virtual HRESULT STDMETHODCALLTYPE GetDefaultSearchGUID(
- GUID* lpguid) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE EnumSearches(
- IEnumExtraSearch** ppenum) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDefaultColumn(
- DWORD dwReserved,
- ULONG* pSort,
- ULONG* pDisplay) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDefaultColumnState(
- UINT iColumn,
- SHCOLSTATEF* pcsFlags) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDetailsEx(
- LPCITEMIDLIST pidl,
- const SHCOLUMNID* pscid,
- VARIANT* pv) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE GetDetailsOf(
- LPCITEMIDLIST pidl,
- UINT iColumn,
- SHELLDETAILS* psd) = 0;
-
- virtual HRESULT STDMETHODCALLTYPE MapColumnToSCID(
- UINT iColumn,
- SHCOLUMNID* pscid) = 0;
-
-};
-#else
-typedef struct IShellFolder2Vtbl IShellFolder2Vtbl;
-struct IShellFolder2 {
- const IShellFolder2Vtbl* lpVtbl;
-};
-struct IShellFolder2Vtbl {
- ICOM_MSVTABLE_COMPAT_FIELDS
-
- /*** IUnknown methods ***/
- HRESULT (STDMETHODCALLTYPE *QueryInterface)(
- IShellFolder2* This,
- REFIID riid,
- void** ppvObject);
-
- ULONG (STDMETHODCALLTYPE *AddRef)(
- IShellFolder2* This);
-
- ULONG (STDMETHODCALLTYPE *Release)(
- IShellFolder2* This);
-
- /*** IShellFolder methods ***/
- HRESULT (STDMETHODCALLTYPE *ParseDisplayName)(
- IShellFolder2* This,
- HWND hwndOwner,
- LPBC pbcReserved,
- LPOLESTR lpszDisplayName,
- ULONG* pchEaten,
- LPITEMIDLIST* ppidl,
- ULONG* pdwAttributes);
-
- HRESULT (STDMETHODCALLTYPE *EnumObjects)(
- IShellFolder2* This,
- HWND hwndOwner,
- SHCONTF grfFlags,
- IEnumIDList** ppenumIDList);
-
- HRESULT (STDMETHODCALLTYPE *BindToObject)(
- IShellFolder2* This,
- LPCITEMIDLIST pidl,
- LPBC pbcReserved,
- REFIID riid,
- void** ppvOut);
-
- HRESULT (STDMETHODCALLTYPE *BindToStorage)(
- IShellFolder2* This,
- LPCITEMIDLIST pidl,
- LPBC pbcReserved,
- REFIID riid,
- void** ppvObj);
-
- HRESULT (STDMETHODCALLTYPE *CompareIDs)(
- IShellFolder2* This,
- LPARAM lParam,
- LPCITEMIDLIST pidl1,
- LPCITEMIDLIST pidl2);
-
- HRESULT (STDMETHODCALLTYPE *CreateViewObject)(
- IShellFolder2* This,
- HWND hwndOwner,
- REFIID riid,
- void** ppvOut);
-
- HRESULT (STDMETHODCALLTYPE *GetAttributesOf)(
- IShellFolder2* This,
- UINT cidl,
- LPCITEMIDLIST* apidl,
- SFGAOF* rgfInOut);
-
- HRESULT (STDMETHODCALLTYPE *GetUIObjectOf)(
- IShellFolder2* This,
- HWND hwndOwner,
- UINT cidl,
- LPCITEMIDLIST* apidl,
- REFIID riid,
- UINT* prgfInOut,
- void** ppvOut);
-
- HRESULT (STDMETHODCALLTYPE *GetDisplayNameOf)(
- IShellFolder2* This,
- LPCITEMIDLIST pidl,
- SHGDNF uFlags,
- STRRET* lpName);
-
- HRESULT (STDMETHODCALLTYPE *SetNameOf)(
- IShellFolder2* This,
- HWND hwnd,
- LPCITEMIDLIST pidl,
- LPCOLESTR lpszName,
- SHGDNF uFlags,
- LPITEMIDLIST* ppidlOut);
-
- /*** IShellFolder2 methods ***/
- HRESULT (STDMETHODCALLTYPE *GetDefaultSearchGUID)(
[truncated at 1000 lines; 3291 more skipped]
reactos/include/wine
diff -u -r1.1 -r1.2
--- winnetwk.h 1 Feb 2004 19:48:44 -0000 1.1
+++ winnetwk.h 29 Jun 2004 13:40:40 -0000 1.2
@@ -1,383 +1,16 @@
-/*
- * Copyright (C) the Wine project
+/* $Id: winnetwk.h,v 1.2 2004/06/29 13:40:40 gvg Exp $
*
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
+ * Compatibility header
*
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-
-#ifndef _WINNETWK_H_
-#define _WINNETWK_H_
-
-/*
- * Network types
- */
-
-#define WNNC_NET_MSNET 0x00010000
-#define WNNC_NET_LANMAN 0x00020000
-#define WNNC_NET_NETWARE 0x00030000
-#define WNNC_NET_VINES 0x00040000
-#define WNNC_NET_10NET 0x00050000
-#define WNNC_NET_LOCUS 0x00060000
-#define WNNC_NET_SUN_PC_NFS 0x00070000
-#define WNNC_NET_LANSTEP 0x00080000
-#define WNNC_NET_9TILES 0x00090000
-#define WNNC_NET_LANTASTIC 0x000A0000
-#define WNNC_NET_AS400 0x000B0000
-#define WNNC_NET_FTP_NFS 0x000C0000
-#define WNNC_NET_PATHWORKS 0x000D0000
-#define WNNC_NET_LIFENET 0x000E0000
-#define WNNC_NET_POWERLAN 0x000F0000
-#define WNNC_NET_BWNFS 0x00100000
-#define WNNC_NET_COGENT 0x00110000
-#define WNNC_NET_FARALLON 0x00120000
-#define WNNC_NET_APPLETALK 0x00130000
-#define WNNC_NET_INTERGRAPH 0x00140000
-
-/*
- * Network resources
- */
-
-#define RESOURCE_CONNECTED 0x00000001
-#define RESOURCE_GLOBALNET 0x00000002
-#define RESOURCE_REMEMBERED 0x00000003
-#define RESOURCE_RECENT 0x00000004
-#define RESOURCE_CONTEXT 0x00000005
-
-#define RESOURCETYPE_ANY 0x00000000
-#define RESOURCETYPE_DISK 0x00000001
-#define RESOURCETYPE_PRINT 0x00000002
-#define RESOURCETYPE_RESERVED 0x00000008
-#define RESOURCETYPE_UNKNOWN 0xFFFFFFFF
-
-#define RESOURCEUSAGE_CONNECTABLE 0x00000001
-#define RESOURCEUSAGE_CONTAINER 0x00000002
-#define RESOURCEUSAGE_NOLOCALDEVICE 0x00000004
-#define RESOURCEUSAGE_SIBLING 0x00000008
-#define RESOURCEUSAGE_ATTACHED 0x00000010
-#define RESOURCEUSAGE_ALL (RESOURCEUSAGE_CONNECTABLE | RESOURCEUSAGE_CONTAINER | RESOURCEUSAGE_ATTACHED)
-#define RESOURCEUSAGE_RESERVED 0x80000000
-
-#define RESOURCEDISPLAYTYPE_GENERIC 0x00000000
-#define RESOURCEDISPLAYTYPE_DOMAIN 0x00000001
-#define RESOURCEDISPLAYTYPE_SERVER 0x00000002
-#define RESOURCEDISPLAYTYPE_SHARE 0x00000003
-#define RESOURCEDISPLAYTYPE_FILE 0x00000004
-#define RESOURCEDISPLAYTYPE_GROUP 0x00000005
-#define RESOURCEDISPLAYTYPE_NETWORK 0x00000006
-#define RESOURCEDISPLAYTYPE_ROOT 0x00000007
-#define RESOURCEDISPLAYTYPE_SHAREADMIN 0x00000008
-#define RESOURCEDISPLAYTYPE_DIRECTORY 0x00000009
-#define RESOURCEDISPLAYTYPE_TREE 0x0000000A
-
-typedef struct {
- DWORD dwScope;
- DWORD dwType;
- DWORD dwDisplayType;
- DWORD dwUsage;
- LPSTR lpLocalName;
- LPSTR lpRemoteName;
- LPSTR lpComment ;
- LPSTR lpProvider;
-} NETRESOURCEA,*LPNETRESOURCEA;
-
-typedef struct {
- DWORD dwScope;
- DWORD dwType;
- DWORD dwDisplayType;
- DWORD dwUsage;
- LPWSTR lpLocalName;
- LPWSTR lpRemoteName;
- LPWSTR lpComment ;
- LPWSTR lpProvider;
-} NETRESOURCEW,*LPNETRESOURCEW;
-
-DECL_WINELIB_TYPE_AW(NETRESOURCE)
-DECL_WINELIB_TYPE_AW(LPNETRESOURCE)
-
-
-/*
- * Network connections
- */
-
-#define NETPROPERTY_PERSISTENT 1
-
-#define CONNECT_UPDATE_PROFILE 0x00000001
-#define CONNECT_UPDATE_RECENT 0x00000002
-#define CONNECT_TEMPORARY 0x00000004
-#define CONNECT_INTERACTIVE 0x00000008
-#define CONNECT_PROMPT 0x00000010
-#define CONNECT_NEED_DRIVE 0x00000020
-#define CONNECT_REFCOUNT 0x00000040
-#define CONNECT_REDIRECT 0x00000080
-#define CONNECT_LOCALDRIVE 0x00000100
-#define CONNECT_CURRENT_MEDIA 0x00000200
-
-DWORD WINAPI WNetAddConnectionA(LPCSTR,LPCSTR,LPCSTR);
-DWORD WINAPI WNetAddConnectionW(LPCWSTR,LPCWSTR,LPCWSTR);
-#define WNetAddConnection WINELIB_NAME_AW(WNetAddConnection)
-DWORD WINAPI WNetAddConnection2A(LPNETRESOURCEA,LPCSTR,LPCSTR,DWORD);
-DWORD WINAPI WNetAddConnection2W(LPNETRESOURCEW,LPCWSTR,LPCWSTR,DWORD);
-#define WNetAddConnection2 WINELIB_NAME_AW(WNetAddConnection2)
-DWORD WINAPI WNetAddConnection3A(HWND,LPNETRESOURCEA,LPCSTR,LPCSTR,DWORD);
-DWORD WINAPI WNetAddConnection3W(HWND,LPNETRESOURCEW,LPCWSTR,LPCWSTR,DWORD);
-#define WNetAddConnection3 WINELIB_NAME_AW(WNetAddConnection3)
-DWORD WINAPI WNetCancelConnectionA(LPCSTR,BOOL);
-DWORD WINAPI WNetCancelConnectionW(LPCWSTR,BOOL);
-#define WNetCancelConnection WINELIB_NAME_AW(WNetCancelConnection)
-DWORD WINAPI WNetCancelConnection2A(LPCSTR,DWORD,BOOL);
-DWORD WINAPI WNetCancelConnection2W(LPCWSTR,DWORD,BOOL);
-#define WNetCancelConnection2 WINELIB_NAME_AW(WNetCancelConnection2)
-DWORD WINAPI WNetGetConnectionA(LPCSTR,LPSTR,LPDWORD);
-DWORD WINAPI WNetGetConnectionW(LPCWSTR,LPWSTR,LPDWORD);
-#define WNetGetConnection WINELIB_NAME_AW(WNetGetConnection)
-DWORD WINAPI WNetUseConnectionA(HWND,LPNETRESOURCEA,LPCSTR,LPCSTR,DWORD,LPSTR,LPDWORD,LPDWORD);
-DWORD WINAPI WNetUseConnectionW(HWND,LPNETRESOURCEW,LPCWSTR,LPCWSTR,DWORD,LPWSTR,LPDWORD,LPDWORD);
-#define WNetUseConnection WINELIB_NAME_AW(WNetUseConnection)
-DWORD WINAPI WNetSetConnectionA(LPCSTR,DWORD,LPVOID);
-DWORD WINAPI WNetSetConnectionW(LPCWSTR,DWORD,LPVOID);
-#define WNetSetConnection WINELIB_NAME_AW(WNetSetConnection)
-
-/*
- * Network connection dialogs
- */
-
-typedef struct {
- DWORD cbStructure; /* size of this structure in bytes */
- HWND hwndOwner; /* owner window for the dialog */
- LPNETRESOURCEA lpConnRes;/* Requested Resource info */
- DWORD dwFlags; /* flags (see below) */
- DWORD dwDevNum; /* number of devices connected to */
-} CONNECTDLGSTRUCTA, *LPCONNECTDLGSTRUCTA;
-typedef struct {
- DWORD cbStructure; /* size of this structure in bytes */
- HWND hwndOwner; /* owner window for the dialog */
- LPNETRESOURCEW lpConnRes;/* Requested Resource info */
- DWORD dwFlags; /* flags (see below) */
- DWORD dwDevNum; /* number of devices connected to */
-} CONNECTDLGSTRUCTW, *LPCONNECTDLGSTRUCTW;
-
-DECL_WINELIB_TYPE_AW(CONNECTDLGSTRUCT)
-DECL_WINELIB_TYPE_AW(LPCONNECTDLGSTRUCT)
-
-#define CONNDLG_RO_PATH 0x00000001 /* Resource path should be read-only */
-#define CONNDLG_CONN_POINT 0x00000002 /* Netware -style movable connection point enabled */
-#define CONNDLG_USE_MRU 0x00000004 /* Use MRU combobox */
-#define CONNDLG_HIDE_BOX 0x00000008 /* Hide persistent connect checkbox */
-#define CONNDLG_PERSIST 0x00000010 /* Force persistent connection */
-#define CONNDLG_NOT_PERSIST 0x00000020 /* Force connection NOT persistent */
-
-typedef struct {
- DWORD cbStructure; /* size of this structure in bytes */
- HWND hwndOwner; /* owner window for the dialog */
- LPSTR lpLocalName; /* local device name */
- LPSTR lpRemoteName; /* network resource name */
- DWORD dwFlags; /* flags */
-} DISCDLGSTRUCTA, *LPDISCDLGSTRUCTA;
-typedef struct {
- DWORD cbStructure; /* size of this structure in bytes */
- HWND hwndOwner; /* owner window for the dialog */
- LPWSTR lpLocalName; /* local device name */
- LPWSTR lpRemoteName; /* network resource name */
- DWORD dwFlags; /* flags */
-} DISCDLGSTRUCTW, *LPDISCDLGSTRUCTW;
-
-DECL_WINELIB_TYPE_AW(DISCDLGSTRUCT)
-DECL_WINELIB_TYPE_AW(LPDISCDLGSTRUCT)
-
-#define DISC_UPDATE_PROFILE 0x00000001
-#define DISC_NO_FORCE 0x00000040
-
-DWORD WINAPI WNetConnectionDialog(HWND,DWORD);
-DWORD WINAPI WNetDisconnectDialog(HWND,DWORD);
-DWORD WINAPI WNetConnectionDialog1A(LPCONNECTDLGSTRUCTA);
-DWORD WINAPI WNetConnectionDialog1W(LPCONNECTDLGSTRUCTW);
-#define WNetConnectionDialog1 WINELIB_NAME_AW(WNetConnectionDialog1)
-DWORD WINAPI WNetDisconnectDialog1A(LPDISCDLGSTRUCTA);
-DWORD WINAPI WNetDisconnectDialog1W(LPDISCDLGSTRUCTW);
-#define WNetDisconnectDialog1 WINELIB_NAME_AW(WNetDisconnectDialog1)
-
-/*
- * Network browsing
+ * This header is wrapper to allow compilation of Wine DLLs under ReactOS
+ * build system. It contains definitions commonly refered to as Wineisms
+ * and definitions that are missing in w32api.
*/
-DWORD WINAPI WNetOpenEnumA(DWORD,DWORD,DWORD,LPNETRESOURCEA,LPHANDLE);
-DWORD WINAPI WNetOpenEnumW(DWORD,DWORD,DWORD,LPNETRESOURCEW,LPHANDLE);
-#define WNetOpenEnum WINELIB_NAME_AW(WNetOpenEnum)
-DWORD WINAPI WNetEnumResourceA(HANDLE,LPDWORD,LPVOID,LPDWORD);
-DWORD WINAPI WNetEnumResourceW(HANDLE,LPDWORD,LPVOID,LPDWORD);
-#define WNetEnumResource WINELIB_NAME_AW(WNetEnumResource)
-DWORD WINAPI WNetGetResourceInformationA(LPNETRESOURCEA,LPVOID,LPDWORD,LPSTR*);
-DWORD WINAPI WNetGetResourceInformationW(LPNETRESOURCEW,LPVOID,LPDWORD,LPWSTR*);
-#define WNetGetResourceInformation WINELIB_NAME_AW(WNetGetResourceInformation)
-DWORD WINAPI WNetGetResourceParentA(LPNETRESOURCEA,LPVOID,LPDWORD);
-DWORD WINAPI WNetGetResourceParentW(LPNETRESOURCEW,LPVOID,LPDWORD);
-#define WNetGetResourceParent WINELIB_NAME_AW(WNetGetResourceParent)
-DWORD WINAPI WNetCloseEnum(HANDLE);
-
-/*
- * Universal naming
- */
-
-#define UNIVERSAL_NAME_INFO_LEVEL 0x00000001
-#define REMOTE_NAME_INFO_LEVEL 0x00000002
-
-typedef struct {
- LPSTR lpUniversalName;
-} UNIVERSAL_NAME_INFOA, *LPUNIVERSAL_NAME_INFOA;
-typedef struct {
- LPWSTR lpUniversalName;
-} UNIVERSAL_NAME_INFOW, *LPUNIVERSAL_NAME_INFOW;
-
-DECL_WINELIB_TYPE_AW(UNIVERSAL_NAME_INFO)
-DECL_WINELIB_TYPE_AW(LPUNIVERSAL_NAME_INFO)
-
-typedef struct {
- LPSTR lpUniversalName;
- LPSTR lpConnectionName;
- LPSTR lpRemainingPath;
-}REMOTE_NAME_INFOA, *LPREMOTE_NAME_INFOA;
-typedef struct {
- LPWSTR lpUniversalName;
- LPWSTR lpConnectionName;
- LPWSTR lpRemainingPath;
-}REMOTE_NAME_INFOW, *LPREMOTE_NAME_INFOW;
-
-DECL_WINELIB_TYPE_AW(REMOTE_NAME_INFO)
-DECL_WINELIB_TYPE_AW(LPREMOTE_NAME_INFO)
-
-DWORD WINAPI WNetGetUniversalNameA(LPCSTR,DWORD,LPVOID,LPDWORD);
-DWORD WINAPI WNetGetUniversalNameW(LPCWSTR,DWORD,LPVOID,LPDWORD);
-#define WNetGetUniversalName WINELIB_NAME_AW(WNetGetUniversalName)
-
-/*
- * Other
- */
-
-DWORD WINAPI WNetGetUserA(LPCSTR,LPSTR,LPDWORD);
-DWORD WINAPI WNetGetUserW(LPCWSTR,LPWSTR,LPDWORD);
-#define WNetGetUser WINELIB_NAME_AW(WNetGetUser)
-
-#define WNFMT_MULTILINE 0x01
-#define WNFMT_ABBREVIATED 0x02
-#define WNFMT_INENUM 0x10
-#define WNFMT_CONNECTION 0x20
-
-DWORD WINAPI WNetGetProviderNameA(DWORD,LPSTR,LPDWORD);
-DWORD WINAPI WNetGetProviderNameW(DWORD,LPWSTR,LPDWORD);
-#define WNetGetProviderName WINELIB_NAME_AW(WNetGetProviderName)
-
-typedef struct {
- DWORD cbStructure;
- DWORD dwProviderVersion;
- DWORD dwStatus;
- DWORD dwCharacteristics;
- DWORD dwHandle;
- WORD wNetType;
- DWORD dwPrinters;
- DWORD dwDrives;
-} NETINFOSTRUCT, *LPNETINFOSTRUCT;
-
-#define NETINFO_DLL16 0x00000001
-#define NETINFO_DISKRED 0x00000004
-#define NETINFO_PRINTERRED 0x00000008
-
-DWORD WINAPI WNetGetNetworkInformationA(LPCSTR,LPNETINFOSTRUCT);
-DWORD WINAPI WNetGetNetworkInformationW(LPCWSTR,LPNETINFOSTRUCT);
-#define WNetGetNetworkInformation WINELIB_NAME_AW(WNetGetNetworkInformation)
+#include_next <winnetwk.h>
-
-/*
- * Status codes
- */
-
-DWORD WINAPI WNetGetLastErrorA(LPDWORD,LPSTR,DWORD,LPSTR,DWORD);
-DWORD WINAPI WNetGetLastErrorW(LPDWORD,LPWSTR,DWORD,LPWSTR,DWORD);
-#define WNetGetLastError WINELIB_NAME_AW(WNetGetLastError)
-
-#define WN_SUCCESS NO_ERROR
-#define WN_NO_ERROR NO_ERROR
-#define WN_NOT_SUPPORTED ERROR_NOT_SUPPORTED
-#define WN_CANCEL ERROR_CANCELLED
-#define WN_RETRY ERROR_RETRY
-#define WN_NET_ERROR ERROR_UNEXP_NET_ERR
-#define WN_MORE_DATA ERROR_MORE_DATA
-#define WN_BAD_POINTER ERROR_INVALID_ADDRESS
-#define WN_BAD_VALUE ERROR_INVALID_PARAMETER
-#define WN_BAD_USER ERROR_BAD_USERNAME
-#define WN_BAD_PASSWORD ERROR_INVALID_PASSWORD
-#define WN_ACCESS_DENIED ERROR_ACCESS_DENIED
-#define WN_FUNCTION_BUSY ERROR_BUSY
-#define WN_WINDOWS_ERROR ERROR_UNEXP_NET_ERR
-#define WN_OUT_OF_MEMORY ERROR_NOT_ENOUGH_MEMORY
-#define WN_NO_NETWORK ERROR_NO_NETWORK
-#define WN_EXTENDED_ERROR ERROR_EXTENDED_ERROR
-#define WN_BAD_LEVEL ERROR_INVALID_LEVEL
-#define WN_BAD_HANDLE ERROR_INVALID_HANDLE
-#define WN_NOT_INITIALIZING ERROR_ALREADY_INITIALIZED
-#define WN_NO_MORE_DEVICES ERROR_NO_MORE_DEVICES
-
-#define WN_NOT_CONNECTED ERROR_NOT_CONNECTED
-#define WN_OPEN_FILES ERROR_OPEN_FILES
-#define WN_DEVICE_IN_USE ERROR_DEVICE_IN_USE
-#define WN_BAD_NETNAME ERROR_BAD_NET_NAME
-#define WN_BAD_LOCALNAME ERROR_BAD_DEVICE
-#define WN_ALREADY_CONNECTED ERROR_ALREADY_ASSIGNED
-#define WN_DEVICE_ERROR ERROR_GEN_FAILURE
-#define WN_CONNECTION_CLOSED ERROR_CONNECTION_UNAVAIL
-#define WN_NO_NET_OR_BAD_PATH ERROR_NO_NET_OR_BAD_PATH
-#define WN_BAD_PROVIDER ERROR_BAD_PROVIDER
-#define WN_CANNOT_OPEN_PROFILE ERROR_CANNOT_OPEN_PROFILE
-#define WN_BAD_PROFILE ERROR_BAD_PROFILE
-#define WN_BAD_DEV_TYPE ERROR_BAD_DEV_TYPE
-#define WN_DEVICE_ALREADY_REMEMBERED ERROR_DEVICE_ALREADY_REMEMBERED
-
-#define WN_NO_MORE_ENTRIES ERROR_NO_MORE_ITEMS
-#define WN_NOT_CONTAINER ERROR_NOT_CONTAINER
-
-#define WN_NOT_AUTHENTICATED ERROR_NOT_AUTHENTICATED
-#define WN_NOT_LOGGED_ON ERROR_NOT_LOGGED_ON
-#define WN_NOT_VALIDATED ERROR_NO_LOGON_SERVERS
-
-
-/*
- * Multinet (for Shell)
- */
-
-typedef struct {
- DWORD cbStructure;
- DWORD dwFlags;
- DWORD dwSpeed;
- DWORD dwDelay;
- DWORD dwOptDataSize;
-} NETCONNECTINFOSTRUCT,*LPNETCONNECTINFOSTRUCT;
-
-#define WNCON_FORNETCARD 0x00000001
-#define WNCON_NOTROUTED 0x00000002
-#define WNCON_SLOWLINK 0x00000004
-#define WNCON_DYNAMIC 0x00000008
-
-DWORD WINAPI MultinetGetConnectionPerformanceA(LPNETRESOURCEA,LPNETCONNECTINFOSTRUCT);
-DWORD WINAPI MultinetGetConnectionPerformanceW(LPNETRESOURCEW,LPNETCONNECTINFOSTRUCT);
-#define MultinetGetConnectionPerformance WINELIB_NAME_AW(MultinetGetConnectionPerformance)
-DWORD WINAPI MultinetGetErrorTextA(DWORD,DWORD,DWORD);
-DWORD WINAPI MultinetGetErrorTextW(DWORD,DWORD,DWORD);
-#define MultinetGetErrorText WINELIB_NAME_AW(MultinetGetErrorText)
-
-/*
- * Password cache
- */
+#ifndef __WINE_WINNETWK_H
+#define __WINE_WINNETWK_H
/* WNetEnumCachedPasswords */
typedef struct tagPASSWORD_CACHE_ENTRY
@@ -392,8 +25,5 @@
typedef BOOL (CALLBACK *ENUMPASSWORDPROC)(PASSWORD_CACHE_ENTRY *, DWORD);
UINT WINAPI WNetEnumCachedPasswords( LPSTR, WORD, BYTE, ENUMPASSWORDPROC, DWORD);
-DWORD WINAPI WNetGetCachedPassword( LPSTR, WORD, LPSTR, LPWORD, BYTE );
-DWORD WINAPI WNetCachePassword( LPSTR, WORD, LPSTR, WORD, BYTE, WORD );
-
-#endif /* _WINNETWK_H_ */
+#endif /* __WINE_WINNETWK_H */
reactos/w32api/include
diff -u -r1.1 -r1.2
--- shlguid.h 21 Feb 2004 09:20:34 -0000 1.1
+++ shlguid.h 29 Jun 2004 13:40:40 -0000 1.2
@@ -9,8 +9,14 @@
#endif
#define DEFINE_SHLGUID(n,l,w1,w2) DEFINE_GUID(n,l,w1,w2,0xC0,0,0,0,0,0,0,0x46)
#define SID_SShellBrowser IID_IShellBrowser
+extern const GUID CLSID_MyComputer;
extern const GUID CLSID_ShellDesktop;
extern const GUID CLSID_ShellLink;
+extern const GUID CLSID_ControlPanel;
+extern const GUID CLSID_Internet;
+extern const GUID CLSID_NetworkPlaces;
+extern const GUID CLSID_RecycleBin;
+extern const GUID CLSID_ShellFSFolder;
extern const GUID FMTID_Intshcut;
extern const GUID FMTID_InternetSite;
extern const GUID CGID_Explorer;
reactos/w32api/include
diff -u -r1.2 -r1.3
--- shlobj.h 28 Feb 2004 20:14:33 -0000 1.2
+++ shlobj.h 29 Jun 2004 13:40:40 -0000 1.3
@@ -332,6 +332,50 @@
#define SVGIO_ALLVIEW 2
#define SV2GV_CURRENTVIEW ((UINT)-1)
#define SV2GV_DEFAULTVIEW ((UINT)-2)
+#define SHCNE_RENAMEITEM 0x00000001
+#define SHCNE_CREATE 0x00000002
+#define SHCNE_DELETE 0x00000004
+#define SHCNE_MKDIR 0x00000008
+#define SHCNE_RMDIR 0x00000010
+#define SHCNE_MEDIAINSERTED 0x00000020
+#define SHCNE_MEDIAREMOVED 0x00000040
+#define SHCNE_DRIVEREMOVED 0x00000080
+#define SHCNE_DRIVEADD 0x00000100
+#define SHCNE_NETSHARE 0x00000200
+#define SHCNE_NETUNSHARE 0x00000400
+#define SHCNE_ATTRIBUTES 0x00000800
+#define SHCNE_UPDATEDIR 0x00001000
+#define SHCNE_UPDATEITEM 0x00002000
+#define SHCNE_SERVERDISCONNECT 0x00004000
+#define SHCNE_UPDATEIMAGE 0x00008000
+#define SHCNE_DRIVEADDGUI 0x00010000
+#define SHCNE_RENAMEFOLDER 0x00020000
+#define SHCNE_FREESPACE 0x00040000
+#define SHCNE_EXTENDED_EVENT 0x04000000
+#define SHCNE_ASSOCCHANGED 0x08000000
+#define SHCNE_DISKEVENTS 0x0002381F
+#define SHCNE_GLOBALEVENTS 0x0C0581E0
+#define SHCNE_ALLEVENTS 0x7FFFFFFF
+#define SHCNE_INTERRUPT 0x80000000
+#define SHCNEE_ORDERCHANGED 0x0002L
+#define SHCNEE_MSI_CHANGE 0x0004L
+#define SHCNEE_MSI_UNINSTALL 0x0005L
+#define SHCNF_IDLIST 0x0000
+#define SHCNF_PATHA 0x0001
+#define SHCNF_PRINTERA 0x0002
+#define SHCNF_DWORD 0x0003
+#define SHCNF_PATHW 0x0005
+#define SHCNF_PRINTERW 0x0006
+#define SHCNF_TYPE 0x00FF
+#define SHCNF_FLUSH 0x1000
+#define SHCNF_FLUSHNOWAIT 0x2000
+#ifdef UNICODE
+#define SHCNF_PATH SHCNF_PATHW
+#define SHCNF_PRINTER SHCNF_PRINTERW
+#else
+#define SHCNF_PATH SHCNF_PATHA
+#define SHCNF_PRINTER SHCNF_PRINTERA
+#endif
typedef ULONG SFGAOF;
typedef DWORD SHGDNF;
@@ -516,6 +560,205 @@
int csidl;
} PERSIST_FOLDER_TARGET_INFO;
#endif
+typedef struct _SHChangeNotifyEntry
+{
+ LPCITEMIDLIST pidl;
+ BOOL fRecursive;
+} SHChangeNotifyEntry;
+#define NUM_POINTS 3
+typedef struct
+{
+ int iNextSample;
+ DWORD dwLastScroll;
+ BOOL bFull;
+ POINT pts[NUM_POINTS];
+ DWORD dwTimes[NUM_POINTS];
+} AUTO_SCROLL_DATA;
+typedef struct
+{
+ WORD cLength;
+ WORD nVersion;
+ BOOL fFullPathTitle:1;
+ BOOL fSaveLocalView:1;
+ BOOL fNotShell:1;
+ BOOL fSimpleDefault:1;
+ BOOL fDontShowDescBar:1;
+ BOOL fNewWindowMode:1;
+ BOOL fShowCompColor:1;
+ BOOL fDontPrettyNames:1;
+ BOOL fAdminsCreateCommonGroups:1;
+ UINT fUnusedFlags:7;
+ UINT fMenuEnumFilter;
+} CABINETSTATE, *LPCABINETSTATE;
+typedef enum RESTRICTIONS
+{
+ REST_NONE = 0x00000000,
+ REST_NORUN = 0x00000001,
+ REST_NOCLOSE = 0x00000002,
+ REST_NOSAVESET = 0x00000004,
+ REST_NOFILEMENU = 0x00000008,
+ REST_NOSETFOLDERS = 0x00000010,
+ REST_NOSETTASKBAR = 0x00000020,
+ REST_NODESKTOP = 0x00000040,
+ REST_NOFIND = 0x00000080,
+ REST_NODRIVES = 0x00000100,
+ REST_NODRIVEAUTORUN = 0x00000200,
+ REST_NODRIVETYPEAUTORUN = 0x00000400,
+ REST_NONETHOOD = 0x00000800,
+ REST_STARTBANNER = 0x00001000,
+ REST_RESTRICTRUN = 0x00002000,
+ REST_NOPRINTERTABS = 0x00004000,
+ REST_NOPRINTERDELETE = 0x00008000,
+ REST_NOPRINTERADD = 0x00010000,
+ REST_NOSTARTMENUSUBFOLDERS = 0x00020000,
+ REST_MYDOCSONNET = 0x00040000,
+ REST_NOEXITTODOS = 0x00080000,
+ REST_ENFORCESHELLEXTSECURITY = 0x00100000,
+ REST_LINKRESOLVEIGNORELINKINFO = 0x00200000,
+ REST_NOCOMMONGROUPS = 0x00400000,
+ REST_SEPARATEDESKTOPPROCESS = 0x00800000,
+ REST_NOWEB = 0x01000000,
+ REST_NOTRAYCONTEXTMENU = 0x02000000,
+ REST_NOVIEWCONTEXTMENU = 0x04000000,
+ REST_NONETCONNECTDISCONNECT = 0x08000000,
+ REST_STARTMENULOGOFF = 0x10000000,
+ REST_NOSETTINGSASSIST = 0x20000000,
+ REST_NOINTERNETICON = 0x40000001,
+ REST_NORECENTDOCSHISTORY,
+ REST_NORECENTDOCSMENU,
+ REST_NOACTIVEDESKTOP,
+ REST_NOACTIVEDESKTOPCHANGES,
+ REST_NOFAVORITESMENU,
+ REST_CLEARRECENTDOCSONEXIT,
+ REST_CLASSICSHELL,
+ REST_NOCUSTOMIZEWEBVIEW,
+
+ REST_NOHTMLWALLPAPER = 0x40000010,
+ REST_NOCHANGINGWALLPAPER,
+ REST_NODESKCOMP,
+ REST_NOADDDESKCOMP,
+ REST_NODELDESKCOMP,
+ REST_NOCLOSEDESKCOMP,
+ REST_NOCLOSE_DRAGDROPBAND,
+ REST_NOMOVINGBAND,
+ REST_NOEDITDESKCOMP,
+ REST_NORESOLVESEARCH,
+ REST_NORESOLVETRACK,
+ REST_FORCECOPYACLWITHFILE,
+ REST_NOLOGO3CHANNELNOTIFY,
+ REST_NOFORGETSOFTWAREUPDATE,
+ REST_NOSETACTIVEDESKTOP,
+ REST_NOUPDATEWINDOWS,
+ REST_NOCHANGESTARMENU, /* 0x40000020 */
+ REST_NOFOLDEROPTIONS,
+ REST_HASFINDCOMPUTERS,
+ REST_INTELLIMENUS,
+ REST_RUNDLGMEMCHECKBOX,
+ REST_ARP_ShowPostSetup,
+ REST_NOCSC,
+ REST_NOCONTROLPANEL,
+ REST_ENUMWORKGROUP,
+ REST_ARP_NOARP,
+ REST_ARP_NOREMOVEPAGE,
+ REST_ARP_NOADDPAGE,
+ REST_ARP_NOWINSETUPPAGE,
+ REST_GREYMSIADS,
+ REST_NOCHANGEMAPPEDDRIVELABEL,
+ REST_NOCHANGEMAPPEDDRIVECOMMENT,
+ REST_MaxRecentDocs, /* 0x40000030 */
+ REST_NONETWORKCONNECTIONS,
+ REST_FORCESTARTMENULOGOFF,
+ REST_NOWEBVIEW,
+ REST_NOCUSTOMIZETHISFOLDER,
+ REST_NOENCRYPTION,
+
+ REST_ALLOWFRENCHENCRYPTION, /* not documented */
+
+ REST_DONTSHOWSUPERHIDDEN,
+ REST_NOSHELLSEARCHBUTTON,
+ REST_NOHARDWARETAB,
+ REST_NORUNASINSTALLPROMPT,
+ REST_PROMPTRUNASINSTALLNETPATH,
+ REST_NOMANAGEMYCOMPUTERVERB,
+ REST_NORECENTDOCSNETHOOD,
+ REST_DISALLOWRUN,
+ REST_NOWELCOMESCREEN,
+ REST_RESTRICTCPL, /* 0x40000040 */
+ REST_DISALLOWCPL,
+ REST_NOSMBALLOONTIP,
+ REST_NOSMHELP,
+ REST_NOWINKEYS,
+ REST_NOENCRYPTONMOVE,
+ REST_NOLOCALMACHINERUN,
+ REST_NOCURRENTUSERRUN,
+ REST_NOLOCALMACHINERUNONCE,
+ REST_NOCURRENTUSERRUNONCE,
+ REST_FORCEACTIVEDESKTOPON,
+ REST_NOCOMPUTERSNEARME,
+ REST_NOVIEWONDRIVE,
+ REST_NONETCRAWL,
+ REST_NOSHAREDDOCUMENTS,
+ REST_NOSMMYDOCS,
+ REST_NOSMMYPICS, /* 0x40000050 */
+ REST_ALLOWBITBUCKDRIVES,
+ REST_NONLEGACYSHELLMODE,
+ REST_NOCONTROLPANELBARRICADE,
+ REST_NOSTARTPAGE,
+ REST_NOAUTOTRAYNOTIFY,
+ REST_NOTASKGROUPING,
+ REST_NOCDBURNING,
+ REST_MYCOMPNOPROP,
+ REST_MYDOCSNOPROP,
+ REST_NOSTARTPANEL,
+ REST_NODISPLAYAPPEARANCEPAGE,
+ REST_NOTHEMESTAB,
+ REST_NOVISUALSTYLECHOICE,
+ REST_NOSIZECHOICE,
+ REST_NOCOLORCHOICE,
+ REST_SETVISUALSTYLE, /* 0x40000060 */
+ REST_STARTRUNNOHOMEPATH,
+ REST_NOUSERNAMEINSTARTPANEL,
+ REST_NOMYCOMPUTERICON,
+ REST_NOSMNETWORKPLACES,
+ REST_NOSMPINNEDLIST,
+ REST_NOSMMYMUSIC,
+ REST_NOSMEJECTPC,
+ REST_NOSMMOREPROGRAMS,
+ REST_NOSMMFUPROGRAMS,
+ REST_NOTRAYITEMSDISPLAY,
+ REST_NOTOOLBARSONTASKBAR,
+ /* 0x4000006C
+ 0x4000006D
+ 0x4000006E */
+ REST_NOSMCONFIGUREPROGRAMS = 0x4000006F,
+ REST_HIDECLOCK, /* 0x40000070 */
+ REST_NOLOWDISKSPACECHECKS,
+ REST_NOENTIRENETWORK,
+ REST_NODESKTOPCLEANUP,
+ REST_BITBUCKNUKEONDELETE,
+ REST_BITBUCKCONFIRMDELETE,
+ REST_BITBUCKNOPROP,
+ REST_NODISPBACKGROUND,
+ REST_NODISPSCREENSAVEPG,
+ REST_NODISPSETTINGSPG,
+ REST_NODISPSCREENSAVEPREVIEW,
+ REST_NODISPLAYCPL,
+ REST_HIDERUNASVERB,
+ REST_NOTHUMBNAILCACHE,
+ REST_NOSTRCMPLOGICAL,
+ REST_NOPUBLISHWIZARD,
+ REST_NOONLINEPRINTSWIZARD, /* 0x40000080 */
+ REST_NOWEBSERVICES,
+ REST_ALLOWUNHASHEDWEBVIEW,
+ REST_ALLOWLEGACYWEBVIEW,
+ REST_REVERTWEBVIEWSECURITY,
+
+ REST_INHERITCONSOLEHANDLES = 0x40000086,
+
+ REST_NODISCONNECT = 0x41000001,
+ REST_NOSECURITY,
+ REST_NOFILEASSOCIATE, /* 0x41000003 */
+} RESTRICTIONS;
DECLARE_ENUMERATOR_(IEnumIDList,LPITEMIDLIST);
typedef IEnumIDList *LPENUMIDLIST;
@@ -848,7 +1091,7 @@
#define IShellFolder_BindToObject(T,a,b,c,d) (T)->lpVtbl->BindToObject(T,a,b,c,d)
#define IShellFolder_BindToStorage(T,a,b,c,d) (T)->lpVtbl->BindToStorage(T,a,b,c,d)
#define IShellFolder_CompareIDs(T,a,b,c) (T)->lpVtbl->CompareIDs(T,a,b,c)
-#define IShellFolder_CreateViewObject(T,a,b) (T)->lpVtbl->CreateViewObject(T,a,b)
+#define IShellFolder_CreateViewObject(T,a,b,c) (T)->lpVtbl->CreateViewObject(T,a,b,c)
#define IShellFolder_GetAttributesOf(T,a,b,c) (T)->lpVtbl->GetAttributesOf(T,a,b,c)
#define IShellFolder_GetUIObjectOf(T,a,b,c,d,e,f) (T)->lpVtbl->GetUIObjectOf(T,a,b,c,d,e,f)
#define IShellFolder_GetDisplayNameOf(T,a,b,c) (T)->lpVtbl->GetDisplayNameOf(T,a,b,c)
@@ -1394,6 +1637,12 @@
HRESULT WINAPI SHCoCreateInstance(LPCWSTR,REFCLSID,IUnknown*,REFIID,void**);
#endif
+int WINAPI RestartDialog(HWND,LPCWSTR,UINT);
+int WINAPI RestartDialogEx(HWND,LPCWSTR,UINT,UINT);
+
+ULONG WINAPI SHChangeNotifyRegister(HWND,int,LONG,UINT,int,SHChangeNotifyEntry *);
+BOOL WINAPI SHChangeNotifyDeregister(ULONG);
+
#ifdef UNICODE
typedef IShellExecuteHookW IShellExecuteHook;
typedef IShellLinkW IShellLink;
reactos/w32api/include
diff -u -r1.1 -r1.2
--- winnetwk.h 21 Feb 2004 09:20:34 -0000 1.1
+++ winnetwk.h 29 Jun 2004 13:40:40 -0000 1.2
@@ -277,7 +277,7 @@
DWORD APIENTRY WNetGetNetworkInformationA(LPCSTR,LPNETINFOSTRUCT);
DWORD APIENTRY WNetGetNetworkInformationW(LPCWSTR,LPNETINFOSTRUCT);
DWORD APIENTRY WNetGetResourceInformationA(LPNETRESOURCEA,LPVOID,LPDWORD,LPSTR*);
-DWORD APIENTRY WNetGetResourceInformationW(LPNETRESOURCEA,LPVOID,LPDWORD,LPWSTR*);
+DWORD APIENTRY WNetGetResourceInformationW(LPNETRESOURCEW,LPVOID,LPDWORD,LPWSTR*);
DWORD APIENTRY WNetGetLastErrorA(PDWORD,LPSTR,DWORD,LPSTR,DWORD);
DWORD APIENTRY WNetGetLastErrorW(PDWORD,LPWSTR,DWORD,LPWSTR,DWORD);
DWORD APIENTRY MultinetGetConnectionPerformanceA(LPNETRESOURCEA,LPNETCONNECTINFOSTRUCT);
reactos/lib/shell32
diff -u -r1.4 -r1.5
--- shlfileop.c 28 Feb 2004 19:12:46 -0000 1.4
+++ shlfileop.c 29 Jun 2004 13:40:40 -0000 1.5
@@ -545,7 +545,7 @@
* ERROR_ALREADY_EXISTS when the directory already exists
* ERROR_FILENAME_EXCED_RANGE if the filename was to long to process
*/
-DWORD WINAPI SHCreateDirectoryExA(HWND hWnd, LPCSTR path, LPSECURITY_ATTRIBUTES sec)
+int WINAPI SHCreateDirectoryExA(HWND hWnd, LPCSTR path, LPSECURITY_ATTRIBUTES sec)
{
WCHAR wPath[MAX_PATH];
TRACE("(%p, %s, %p)\n",hWnd, debugstr_a(path), sec);
@@ -557,9 +557,9 @@
/*************************************************************************
* SHCreateDirectoryExW [SHELL32.@]
*/
-DWORD WINAPI SHCreateDirectoryExW(HWND hWnd, LPCWSTR path, LPSECURITY_ATTRIBUTES sec)
+int WINAPI SHCreateDirectoryExW(HWND hWnd, LPCWSTR path, LPSECURITY_ATTRIBUTES sec)
{
- DWORD ret = ERROR_BAD_PATHNAME;
+ int ret = ERROR_BAD_PATHNAME;
TRACE("(%p, %s, %p)\n",hWnd, debugstr_w(path), sec);
if (PathIsRelativeW(path))
reactos/lib/shell32
diff -u -r1.3 -r1.4
--- shellord.c 16 Feb 2004 21:46:12 -0000 1.3
+++ shellord.c 29 Jun 2004 13:40:40 -0000 1.4
@@ -612,9 +612,8 @@
* NOTES
* exported by name
*
- * FIXME: ?? MSDN shows this as a VOID
*/
-DWORD WINAPI SHAddToRecentDocs (UINT uFlags,LPCVOID pv)
+void WINAPI SHAddToRecentDocs (UINT uFlags,LPCVOID pv)
{
/* If list is a string list lpfnCompare has the following prototype
* int CALLBACK MRUCompareString(LPCSTR s1, LPCSTR s2)
@@ -653,20 +652,20 @@
ret=SHADD_get_policy( "NoRecentDocsHistory", &type, &data, &datalen);
if ((ret > 0) && (ret != ERROR_FILE_NOT_FOUND)) {
ERR("Error %d getting policy \"NoRecentDocsHistory\"\n", ret);
- return 0;
+ return;
}
if (ret == ERROR_SUCCESS) {
if (!( (type == REG_DWORD) ||
((type == REG_BINARY) && (datalen == 4)) )) {
ERR("Error policy data for \"NoRecentDocsHistory\" not formated correctly, type=%ld, len=%ld\n",
type, datalen);
- return 0;
+ return;
}
TRACE("policy value for NoRecentDocsHistory = %08lx\n", data[0]);
/* now test the actual policy value */
if ( data[0] != 0)
- return 0;
+ return;
}
/* Open key to where the necessary info is
@@ -679,7 +678,7 @@
"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer",
0, 0, 0, KEY_READ, 0, &HCUbasekey, 0)) {
ERR("Failed to create 'Software\\Microsoft\\Windows\\CurrentVersion\\Explorer'\n");
- return 0;
+ return;
}
/* Get path to user's "Recent" directory
@@ -729,7 +728,7 @@
*/
RegDeleteKeyA(HCUbasekey, "RecentDocs");
RegCloseKey(HCUbasekey);
- return 0;
+ return;
}
/* Have data to add, the jobs to be done:
@@ -785,7 +784,7 @@
/* MRU failed */
ERR("MRU processing failed, handle zero\n");
RegCloseKey(HCUbasekey);
- return 0;
+ return;
}
len = lstrlenA(doc_name);
pos = FindMRUData(mruhandle, doc_name, len, 0);
@@ -934,7 +933,7 @@
/* all done */
RegCloseKey(HCUbasekey);
- return 0;
+ return;
}
/*************************************************************************
reactos/lib/shell32
diff -u -r1.3 -r1.4
--- shellole.c 23 Jan 2004 21:44:15 -0000 1.3
+++ shellole.c 29 Jun 2004 13:40:40 -0000 1.4
@@ -495,7 +495,7 @@
/*************************************************************************
* SHGetDesktopFolder [SHELL32.@]
*/
-DWORD WINAPI SHGetDesktopFolder(IShellFolder **psf)
+HRESULT WINAPI SHGetDesktopFolder(IShellFolder **psf)
{
HRESULT hres = S_OK;
TRACE("\n");
reactos/lib/shell32
diff -u -r1.5 -r1.6
--- shell32_main.c 22 Mar 2004 21:40:12 -0000 1.5
+++ shell32_main.c 29 Jun 2004 13:40:40 -0000 1.6
@@ -706,7 +706,7 @@
* the shell process and release it immediately
*/
-DWORD WINAPI SHLoadInProc (REFCLSID rclsid)
+HRESULT WINAPI SHLoadInProc (REFCLSID rclsid)
{
void *ptr = NULL;
reactos/lib/shell32
diff -u -r1.20 -r1.21
--- pidl.c 9 Apr 2004 20:24:24 -0000 1.20
+++ pidl.c 29 Jun 2004 13:40:40 -0000 1.21
@@ -204,7 +204,7 @@
* NOTES
* when pidl=Desktop return=FALSE
*/
-BOOL WINAPI ILRemoveLastID(LPCITEMIDLIST pidl)
+BOOL WINAPI ILRemoveLastID(LPITEMIDLIST pidl)
{
TRACE_(shell)("pidl=%p\n",pidl);
CVSspam 0.2.8