2 * Shell Library definitions
11 #endif /* defined(__cplusplus) */
13 /****************************************************************************
16 extern void SHELL_LoadRegistry(void);
18 /* global functions used from shell32 */
19 extern HINSTANCE
SHELL_FindExecutable(LPCSTR
,LPCSTR
,LPSTR
);
20 extern HGLOBAL16 WINAPI
InternalExtractIcon16(HINSTANCE16
,LPCSTR
,UINT16
,WORD
);
22 /****************************************************************************
25 /****************************************************************************
28 #define SHELL_ERROR_SUCCESS 0L
29 #define SHELL_ERROR_BADDB 1L
30 #define SHELL_ERROR_BADKEY 2L
31 #define SHELL_ERROR_CANTOPEN 3L
32 #define SHELL_ERROR_CANTREAD 4L
33 #define SHELL_ERROR_CANTWRITE 5L
34 #define SHELL_ERROR_OUTOFMEMORY 6L
35 #define SHELL_ERROR_INVALID_PARAMETER 7L
36 #define SHELL_ERROR_ACCESS_DENIED 8L
38 /****************************************************************************
39 * common shell file structures
41 /******************************
44 typedef struct { /* structure for dropped files */
47 BOOL16 fInNonClientArea
;
48 /* memory block with filenames follows */
49 } DROPFILESTRUCT16
, *LPDROPFILESTRUCT16
;
51 typedef struct { /* structure for dropped files */
54 BOOL fInNonClientArea
;
56 /* memory block with filenames follows */
57 } DROPFILESTRUCT
, *LPDROPFILESTRUCT
;
60 /****************************************************************************
61 * SHITEMID, ITEMIDLIST, PIDL API
65 { WORD cb
; /* nr of bytes in this item */
66 BYTE abID
[1];/* first byte in this item */
67 } SHITEMID
,*LPSHITEMID
;
68 typedef LPSHITEMID
const LPCSHITEMID
;
71 { SHITEMID mkid
; /* first itemid in list */
72 } ITEMIDLIST
,*LPITEMIDLIST
,*LPCITEMIDLIST
;
75 BOOL WINAPI
SHGetPathFromIDListA (LPCITEMIDLIST pidl
,LPSTR pszPath
);
76 BOOL WINAPI
SHGetPathFromIDListW (LPCITEMIDLIST pidl
,LPWSTR pszPath
);
77 #define SHGetPathFromIDList WINELIB_NAME_AW(SHGetPathFromIDList)
79 /****************************************************************************
80 * SHAddToRecentDocs API
82 #define SHARD_PIDL 0x00000001L
83 #define SHARD_PATH 0x00000002L
85 DWORD WINAPI
SHAddToRecentDocs(UINT uFlags
, LPCVOID pv
);
87 /****************************************************************************
88 * SHGetSpecialFolderLocation API
90 HRESULT WINAPI
SHGetSpecialFolderLocation(HWND
, INT
, LPITEMIDLIST
*);
92 /****************************************************************************
96 #define CSIDL_DESKTOP 0x0000
97 #define CSIDL_PROGRAMS 0x0002
98 #define CSIDL_CONTROLS 0x0003
99 #define CSIDL_PRINTERS 0x0004
100 #define CSIDL_PERSONAL 0x0005
101 #define CSIDL_FAVORITES 0x0006
102 #define CSIDL_STARTUP 0x0007
103 #define CSIDL_RECENT 0x0008
104 #define CSIDL_SENDTO 0x0009
105 #define CSIDL_BITBUCKET 0x000a
106 #define CSIDL_STARTMENU 0x000b
107 #define CSIDL_DESKTOPDIRECTORY 0x0010
108 #define CSIDL_DRIVES 0x0011
109 #define CSIDL_NETWORK 0x0012
110 #define CSIDL_NETHOOD 0x0013
111 #define CSIDL_FONTS 0x0014
112 #define CSIDL_TEMPLATES 0x0015
113 #define CSIDL_COMMON_STARTMENU 0x0016
114 #define CSIDL_COMMON_PROGRAMS 0X0017
115 #define CSIDL_COMMON_STARTUP 0x0018
116 #define CSIDL_COMMON_DESKTOPDIRECTORY 0x0019
117 #define CSIDL_APPDATA 0x001a
118 #define CSIDL_PRINTHOOD 0x001b
119 #define CSIDL_ALTSTARTUP 0x001d
120 #define CSIDL_COMMON_ALTSTARTUP 0x001e
121 #define CSIDL_COMMON_FAVORITES 0x001f
122 #define CSIDL_INTERNET_CACHE 0x0020
123 #define CSIDL_COOKIES 0x0021
124 #define CSIDL_HISTORY 0x0022
128 #endif /* defined(__cplusplus) */
130 #endif /* __WINE_SHELL_H */