Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
55fc5c8a
Commit
55fc5c8a
authored
Dec 07, 2022
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
include: Use proper dllimports for shell32 functions.
parent
9be166e2
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
230 additions
and
211 deletions
+230
-211
Makefile.in
dlls/shell32/Makefile.in
+1
-0
shellapi.h
include/shellapi.h
+69
-64
shlobj.h
include/shlobj.h
+140
-134
shobjidl.idl
include/shobjidl.idl
+20
-13
No files found.
dlls/shell32/Makefile.in
View file @
55fc5c8a
EXTRADEFS
=
-D_SHELL32_
MODULE
=
shell32.dll
IMPORTLIB
=
shell32
IMPORTS
=
uuid shlwapi user32 gdi32 advapi32
...
...
include/shellapi.h
View file @
55fc5c8a
...
...
@@ -23,6 +23,14 @@
extern
"C"
{
#endif
/* defined(__cplusplus) */
#ifndef WINSHELLAPI
#ifdef _SHELL32_
# define WINSHELLAPI
#else
# define WINSHELLAPI DECLSPEC_IMPORT
#endif
#endif
#ifndef _WIN64
#include <pshpack1.h>
#endif
...
...
@@ -52,12 +60,12 @@ typedef struct _DRAGINFOW
DECL_WINELIB_TYPE_AW
(
DRAGINFO
)
DECL_WINELIB_TYPE_AW
(
LPDRAGINFO
)
void
WINAPI
DragAcceptFiles
(
HWND
hWnd
,
BOOL
b
);
UINT
WINAPI
DragQueryFileA
(
HDROP
hDrop
,
UINT
lFile
,
LPSTR
lpszFile
,
UINT
lLength
);
UINT
WINAPI
DragQueryFileW
(
HDROP
hDrop
,
UINT
lFile
,
LPWSTR
lpszFile
,
UINT
lLength
);
#define DragQueryFile WINELIB_NAME_AW(DragQueryFile)
void
WINAPI
DragFinish
(
HDROP
h
);
BOOL
WINAPI
DragQueryPoint
(
HDROP
hDrop
,
POINT
*
p
);
WINSHELLAPI
void
WINAPI
DragAcceptFiles
(
HWND
hWnd
,
BOOL
b
);
WINSHELLAPI
UINT
WINAPI
DragQueryFileA
(
HDROP
hDrop
,
UINT
lFile
,
LPSTR
lpszFile
,
UINT
lLength
);
WINSHELLAPI
UINT
WINAPI
DragQueryFileW
(
HDROP
hDrop
,
UINT
lFile
,
LPWSTR
lpszFile
,
UINT
lLength
);
#define
DragQueryFile WINELIB_NAME_AW(DragQueryFile)
WINSHELLAPI
void
WINAPI
DragFinish
(
HDROP
h
);
WINSHELLAPI
BOOL
WINAPI
DragQueryPoint
(
HDROP
hDrop
,
POINT
*
p
);
...
...
@@ -97,7 +105,7 @@ typedef struct _AppBarData
LPARAM
lParam
;
}
APPBARDATA
,
*
PAPPBARDATA
;
UINT_PTR
WINAPI
SHAppBarMessage
(
DWORD
,
PAPPBARDATA
);
WINSHELLAPI
UINT_PTR
WINAPI
SHAppBarMessage
(
DWORD
,
PAPPBARDATA
);
/******************************************
* SHGetFileInfo
...
...
@@ -140,15 +148,15 @@ typedef struct tagSHFILEINFOW
DECL_WINELIB_TYPE_AW
(
SHFILEINFO
)
DWORD_PTR
WINAPI
SHGetFileInfoA
(
LPCSTR
,
DWORD
,
SHFILEINFOA
*
,
UINT
,
UINT
);
DWORD_PTR
WINAPI
SHGetFileInfoW
(
LPCWSTR
,
DWORD
,
SHFILEINFOW
*
,
UINT
,
UINT
);
WINSHELLAPI
DWORD_PTR
WINAPI
SHGetFileInfoA
(
LPCSTR
,
DWORD
,
SHFILEINFOA
*
,
UINT
,
UINT
);
WINSHELLAPI
DWORD_PTR
WINAPI
SHGetFileInfoW
(
LPCWSTR
,
DWORD
,
SHFILEINFOW
*
,
UINT
,
UINT
);
#define SHGetFileInfo WINELIB_NAME_AW(SHGetFileInfo)
/******************************************
* SHGetImageList
*/
HRESULT
WINAPI
SHGetImageList
(
INT
,
REFIID
,
void
**
);
WINSHELLAPI
HRESULT
WINAPI
SHGetImageList
(
INT
,
REFIID
,
void
**
);
#define SHIL_LARGE 0x0
#define SHIL_SMALL 0x1
...
...
@@ -222,8 +230,8 @@ typedef struct _SHFILEOPSTRUCTW
#define SHFILEOPSTRUCT WINELIB_NAME_AW(SHFILEOPSTRUCT)
#define LPSHFILEOPSTRUCT WINELIB_NAME_AW(LPSHFILEOPSTRUCT)
int
WINAPI
SHFileOperationA
(
LPSHFILEOPSTRUCTA
lpFileOp
);
int
WINAPI
SHFileOperationW
(
LPSHFILEOPSTRUCTW
lpFileOp
);
WINSHELLAPI
int
WINAPI
SHFileOperationA
(
LPSHFILEOPSTRUCTA
lpFileOp
);
WINSHELLAPI
int
WINAPI
SHFileOperationW
(
LPSHFILEOPSTRUCTW
lpFileOp
);
#define SHFileOperation WINELIB_NAME_AW(SHFileOperation)
typedef
struct
_SHNAMEMAPPINGA
...
...
@@ -245,15 +253,15 @@ typedef struct _SHNAMEMAPPINGW
DECL_WINELIB_TYPE_AW
(
SHNAMEMAPPING
)
DECL_WINELIB_TYPE_AW
(
LPSHNAMEMAPPING
)
void
WINAPI
SHFreeNameMappings
(
HANDLE
hNameMappings
);
WINSHELLAPI
void
WINAPI
SHFreeNameMappings
(
HANDLE
hNameMappings
);
/******************************************
* ShellExecute
*/
HINSTANCE
WINAPI
ShellExecuteA
(
HWND
,
LPCSTR
,
LPCSTR
,
LPCSTR
,
LPCSTR
,
INT
);
HINSTANCE
WINAPI
ShellExecuteW
(
HWND
,
LPCWSTR
,
LPCWSTR
,
LPCWSTR
,
LPCWSTR
,
INT
);
#define ShellExecute WINELIB_NAME_AW(ShellExecute)
WINSHELLAPI
HINSTANCE
WINAPI
ShellExecuteA
(
HWND
,
LPCSTR
,
LPCSTR
,
LPCSTR
,
LPCSTR
,
INT
);
WINSHELLAPI
HINSTANCE
WINAPI
ShellExecuteW
(
HWND
,
LPCWSTR
,
LPCWSTR
,
LPCWSTR
,
LPCWSTR
,
INT
);
#define
ShellExecute WINELIB_NAME_AW(ShellExecute)
#define SE_ERR_FNF 2
/* file not found */
#define SE_ERR_PNF 3
/* path not found */
...
...
@@ -336,12 +344,12 @@ typedef struct _SHELLEXECUTEINFOW
#define SHELLEXECUTEINFO WINELIB_NAME_AW(SHELLEXECUTEINFO)
#define LPSHELLEXECUTEINFO WINELIB_NAME_AW(LPSHELLEXECUTEINFO)
BOOL
WINAPI
ShellExecuteExA
(
LPSHELLEXECUTEINFOA
lpExecInfo
);
BOOL
WINAPI
ShellExecuteExW
(
LPSHELLEXECUTEINFOW
lpExecInfo
);
WINSHELLAPI
BOOL
WINAPI
ShellExecuteExA
(
LPSHELLEXECUTEINFOA
lpExecInfo
);
WINSHELLAPI
BOOL
WINAPI
ShellExecuteExW
(
LPSHELLEXECUTEINFOW
lpExecInfo
);
#define ShellExecuteEx WINELIB_NAME_AW(ShellExecuteEx)
void
WINAPI
WinExecErrorA
(
HWND
hwnd
,
INT
error
,
LPCSTR
lpstrFileName
,
LPCSTR
lpstrTitle
);
void
WINAPI
WinExecErrorW
(
HWND
hwnd
,
INT
error
,
LPCWSTR
lpstrFileName
,
LPCWSTR
lpstrTitle
);
WINSHELLAPI
void
WINAPI
WinExecErrorA
(
HWND
hwnd
,
INT
error
,
LPCSTR
lpstrFileName
,
LPCSTR
lpstrTitle
);
WINSHELLAPI
void
WINAPI
WinExecErrorW
(
HWND
hwnd
,
INT
error
,
LPCWSTR
lpstrFileName
,
LPCWSTR
lpstrTitle
);
#define WinExecError WINELIB_NAME_AW(WinExecError)
/******************************************
...
...
@@ -445,12 +453,11 @@ typedef struct _NOTIFYICONIDENTIFIER
DECL_WINELIB_TYPE_AW
(
NOTIFYICONDATA
)
DECL_WINELIB_TYPE_AW
(
PNOTIFYICONDATA
)
BOOL
WINAPI
Shell_NotifyIconA
(
DWORD
dwMessage
,
PNOTIFYICONDATAA
lpData
);
BOOL
WINAPI
Shell_NotifyIconW
(
DWORD
dwMessage
,
PNOTIFYICONDATAW
lpData
);
WINSHELLAPI
BOOL
WINAPI
Shell_NotifyIconA
(
DWORD
dwMessage
,
PNOTIFYICONDATAA
lpData
);
WINSHELLAPI
BOOL
WINAPI
Shell_NotifyIconW
(
DWORD
dwMessage
,
PNOTIFYICONDATAW
lpData
);
#define Shell_NotifyIcon WINELIB_NAME_AW(Shell_NotifyIcon)
HRESULT
WINAPI
Shell_NotifyIconGetRect
(
const
NOTIFYICONIDENTIFIER
*
identifier
,
RECT
*
iconLocation
);
WINSHELLAPI
HRESULT
WINAPI
Shell_NotifyIconGetRect
(
const
NOTIFYICONIDENTIFIER
*
identifier
,
RECT
*
iconLocation
);
/* pre IE 5.0 */
#define NOTIFYICONDATAA_V1_SIZE FIELD_OFFSET(NOTIFYICONDATAA, szTip[64])
...
...
@@ -474,9 +481,9 @@ HRESULT WINAPI Shell_NotifyIconGetRect(const NOTIFYICONIDENTIFIER* identifier, R
#define SHGNLI_NOUNIQUE 0x04
#define SHGNLI_NOLNK 0x08
BOOL
WINAPI
SHGetNewLinkInfoA
(
LPCSTR
,
LPCSTR
,
LPSTR
,
BOOL
*
,
UINT
);
BOOL
WINAPI
SHGetNewLinkInfoW
(
LPCWSTR
,
LPCWSTR
,
LPWSTR
,
BOOL
*
,
UINT
);
#define SHGetNewLinkInfo WINELIB_NAME_AW(SHGetNewLinkInfo)
WINSHELLAPI
BOOL
WINAPI
SHGetNewLinkInfoA
(
LPCSTR
,
LPCSTR
,
LPSTR
,
BOOL
*
,
UINT
);
WINSHELLAPI
BOOL
WINAPI
SHGetNewLinkInfoW
(
LPCWSTR
,
LPCWSTR
,
LPWSTR
,
BOOL
*
,
UINT
);
#define
SHGetNewLinkInfo WINELIB_NAME_AW(SHGetNewLinkInfo)
/******************************************
* Recycle bin
...
...
@@ -489,11 +496,11 @@ typedef struct _SHQUERYRBINFO
DWORDLONG
i64NumItems
;
}
SHQUERYRBINFO
,
*
LPSHQUERYRBINFO
;
HRESULT
WINAPI
SHEmptyRecycleBinA
(
HWND
,
LPCSTR
,
DWORD
);
HRESULT
WINAPI
SHEmptyRecycleBinW
(
HWND
,
LPCWSTR
,
DWORD
);
WINSHELLAPI
HRESULT
WINAPI
SHEmptyRecycleBinA
(
HWND
,
LPCSTR
,
DWORD
);
WINSHELLAPI
HRESULT
WINAPI
SHEmptyRecycleBinW
(
HWND
,
LPCWSTR
,
DWORD
);
#define SHEmptyRecycleBin WINELIB_NAME_AW(SHEmptyRecycleBin)
HRESULT
WINAPI
SHQueryRecycleBinA
(
LPCSTR
,
LPSHQUERYRBINFO
);
HRESULT
WINAPI
SHQueryRecycleBinW
(
LPCWSTR
,
LPSHQUERYRBINFO
);
WINSHELLAPI
HRESULT
WINAPI
SHQueryRecycleBinA
(
LPCSTR
,
LPSHQUERYRBINFO
);
WINSHELLAPI
HRESULT
WINAPI
SHQueryRecycleBinW
(
LPCWSTR
,
LPSHQUERYRBINFO
);
#define SHQueryRecycleBin WINELIB_NAME_AW(SHQueryRecycleBin)
/******************************************
...
...
@@ -535,7 +542,7 @@ typedef enum
QUNS_APP
=
7
}
QUERY_USER_NOTIFICATION_STATE
;
HRESULT
WINAPI
SHQueryUserNotificationState
(
QUERY_USER_NOTIFICATION_STATE
*
);
WINSHELLAPI
HRESULT
WINAPI
SHQueryUserNotificationState
(
QUERY_USER_NOTIFICATION_STATE
*
);
typedef
enum
SHSTOCKICONID
{
...
...
@@ -663,38 +670,36 @@ typedef struct _SHSTOCKICONINFO
#define SHGSI_SMALLICON SHGFI_SMALLICON
#define SHGSI_SHELLICONSIZE SHGFI_SHELLICONSIZE
HRESULT
WINAPI
SHGetStockIconInfo
(
SHSTOCKICONID
,
UINT
,
SHSTOCKICONINFO
*
);
LPWSTR
*
WINAPI
CommandLineToArgvW
(
LPCWSTR
,
int
*
);
HICON
WINAPI
ExtractIconA
(
HINSTANCE
,
LPCSTR
,
UINT
);
HICON
WINAPI
ExtractIconW
(
HINSTANCE
,
LPCWSTR
,
UINT
);
#define ExtractIcon WINELIB_NAME_AW(ExtractIcon)
HICON
WINAPI
ExtractAssociatedIconA
(
HINSTANCE
,
LPSTR
,
LPWORD
);
HICON
WINAPI
ExtractAssociatedIconW
(
HINSTANCE
,
LPWSTR
,
LPWORD
);
#define ExtractAssociatedIcon WINELIB_NAME_AW(ExtractAssociatedIcon)
HICON
WINAPI
ExtractAssociatedIconExA
(
HINSTANCE
,
LPSTR
,
LPWORD
,
LPWORD
);
HICON
WINAPI
ExtractAssociatedIconExW
(
HINSTANCE
,
LPWSTR
,
LPWORD
,
LPWORD
);
#define ExtractAssociatedIconEx WINELIB_NAME_AW(ExtractAssociatedIconEx)
UINT
WINAPI
ExtractIconExA
(
LPCSTR
,
INT
,
HICON
*
,
HICON
*
,
UINT
);
UINT
WINAPI
ExtractIconExW
(
LPCWSTR
,
INT
,
HICON
*
,
HICON
*
,
UINT
);
#define ExtractIconEx WINELIB_NAME_AW(ExtractIconEx)
HINSTANCE
WINAPI
FindExecutableA
(
LPCSTR
,
LPCSTR
,
LPSTR
);
HINSTANCE
WINAPI
FindExecutableW
(
LPCWSTR
,
LPCWSTR
,
LPWSTR
);
#define FindExecutable WINELIB_NAME_AW(FindExecutable)
BOOL
WINAPI
ShellAboutA
(
HWND
,
LPCSTR
,
LPCSTR
,
HICON
);
BOOL
WINAPI
ShellAboutW
(
HWND
,
LPCWSTR
,
LPCWSTR
,
HICON
);
#define ShellAbout WINELIB_NAME_AW(ShellAbout)
int
WINAPIV
ShellMessageBoxA
(
HINSTANCE
,
HWND
,
LPCSTR
,
LPCSTR
,
UINT
,...);
int
WINAPIV
ShellMessageBoxW
(
HINSTANCE
,
HWND
,
LPCWSTR
,
LPCWSTR
,
UINT
,...);
#define ShellMessageBox WINELIB_NAME_AW(ShellMessageBox)
DWORD
WINAPI
DoEnvironmentSubstA
(
LPSTR
,
UINT
);
DWORD
WINAPI
DoEnvironmentSubstW
(
LPWSTR
,
UINT
);
#define DoEnvironmentSubst WINELIB_NAME_AW(DoEnvironmentSubst)
HRESULT
WINAPI
SHEnumerateUnreadMailAccountsA
(
HKEY
,
DWORD
,
LPSTR
,
INT
);
HRESULT
WINAPI
SHEnumerateUnreadMailAccountsW
(
HKEY
,
DWORD
,
LPWSTR
,
INT
);
#define SHEnumerateUnreadMailAccounts WINELIB_NAME_AW(SHEnumerateUnreadMailAccounts)
HRESULT
WINAPI
SHGetPropertyStoreForWindow
(
HWND
,
REFIID
,
void
**
);
WINSHELLAPI
HRESULT
WINAPI
SHGetStockIconInfo
(
SHSTOCKICONID
,
UINT
,
SHSTOCKICONINFO
*
);
WINSHELLAPI
LPWSTR
*
WINAPI
CommandLineToArgvW
(
LPCWSTR
,
int
*
);
WINSHELLAPI
HICON
WINAPI
ExtractIconA
(
HINSTANCE
,
LPCSTR
,
UINT
);
WINSHELLAPI
HICON
WINAPI
ExtractIconW
(
HINSTANCE
,
LPCWSTR
,
UINT
);
#define ExtractIcon WINELIB_NAME_AW(ExtractIcon)
WINSHELLAPI
HICON
WINAPI
ExtractAssociatedIconA
(
HINSTANCE
,
LPSTR
,
LPWORD
);
WINSHELLAPI
HICON
WINAPI
ExtractAssociatedIconW
(
HINSTANCE
,
LPWSTR
,
LPWORD
);
#define ExtractAssociatedIcon WINELIB_NAME_AW(ExtractAssociatedIcon)
WINSHELLAPI
HICON
WINAPI
ExtractAssociatedIconExA
(
HINSTANCE
,
LPSTR
,
LPWORD
,
LPWORD
);
WINSHELLAPI
HICON
WINAPI
ExtractAssociatedIconExW
(
HINSTANCE
,
LPWSTR
,
LPWORD
,
LPWORD
);
#define ExtractAssociatedIconEx WINELIB_NAME_AW(ExtractAssociatedIconEx)
WINSHELLAPI
UINT
WINAPI
ExtractIconExA
(
LPCSTR
,
INT
,
HICON
*
,
HICON
*
,
UINT
);
WINSHELLAPI
UINT
WINAPI
ExtractIconExW
(
LPCWSTR
,
INT
,
HICON
*
,
HICON
*
,
UINT
);
#define ExtractIconEx WINELIB_NAME_AW(ExtractIconEx)
WINSHELLAPI
HINSTANCE
WINAPI
FindExecutableA
(
LPCSTR
,
LPCSTR
,
LPSTR
);
WINSHELLAPI
HINSTANCE
WINAPI
FindExecutableW
(
LPCWSTR
,
LPCWSTR
,
LPWSTR
);
#define FindExecutable WINELIB_NAME_AW(FindExecutable)
WINSHELLAPI
BOOL
WINAPI
ShellAboutA
(
HWND
,
LPCSTR
,
LPCSTR
,
HICON
);
WINSHELLAPI
BOOL
WINAPI
ShellAboutW
(
HWND
,
LPCWSTR
,
LPCWSTR
,
HICON
);
#define ShellAbout WINELIB_NAME_AW(ShellAbout)
WINSHELLAPI
int
WINAPIV
ShellMessageBoxA
(
HINSTANCE
,
HWND
,
LPCSTR
,
LPCSTR
,
UINT
,...);
WINSHELLAPI
int
WINAPIV
ShellMessageBoxW
(
HINSTANCE
,
HWND
,
LPCWSTR
,
LPCWSTR
,
UINT
,...);
#define ShellMessageBox WINELIB_NAME_AW(ShellMessageBox)
WINSHELLAPI
DWORD
WINAPI
DoEnvironmentSubstA
(
LPSTR
,
UINT
);
WINSHELLAPI
DWORD
WINAPI
DoEnvironmentSubstW
(
LPWSTR
,
UINT
);
#define DoEnvironmentSubst WINELIB_NAME_AW(DoEnvironmentSubst)
WINSHELLAPI
HRESULT
WINAPI
SHEnumerateUnreadMailAccountsA
(
HKEY
,
DWORD
,
LPSTR
,
INT
);
WINSHELLAPI
HRESULT
WINAPI
SHEnumerateUnreadMailAccountsW
(
HKEY
,
DWORD
,
LPWSTR
,
INT
);
#define SHEnumerateUnreadMailAccounts WINELIB_NAME_AW(SHEnumerateUnreadMailAccounts)
WINSHELLAPI
HRESULT
WINAPI
SHGetPropertyStoreForWindow
(
HWND
,
REFIID
,
void
**
);
#ifdef __cplusplus
}
/* extern "C" */
...
...
include/shlobj.h
View file @
55fc5c8a
...
...
@@ -34,6 +34,14 @@
extern
"C"
{
#endif
/* defined(__cplusplus) */
#ifndef WINSHELLAPI
#ifdef _SHELL32_
# define WINSHELLAPI
#else
# define WINSHELLAPI DECLSPEC_IMPORT
#endif
#endif
/* Except for specific structs, this header is byte packed */
#include <pshpack1.h>
...
...
@@ -66,58 +74,59 @@ enum
typedef
int
GPFIDL_FLAGS
;
UINT
WINAPI
SHAddFromPropSheetExtArray
(
HPSXA
,
LPFNADDPROPSHEETPAGE
,
LPARAM
);
LPVOID
WINAPI
SHAlloc
(
ULONG
)
__WINE_ALLOC_SIZE
(
1
);
HRESULT
WINAPI
SHCoCreateInstance
(
LPCWSTR
,
const
CLSID
*
,
IUnknown
*
,
REFIID
,
LPVOID
*
);
HPSXA
WINAPI
SHCreatePropSheetExtArray
(
HKEY
,
LPCWSTR
,
UINT
);
HPSXA
WINAPI
SHCreatePropSheetExtArrayEx
(
HKEY
,
LPCWSTR
,
UINT
,
IDataObject
*
);
HRESULT
WINAPI
SHCreateQueryCancelAutoPlayMoniker
(
IMoniker
**
);
HRESULT
WINAPI
SHCreateShellItem
(
LPCITEMIDLIST
,
IShellFolder
*
,
LPCITEMIDLIST
,
IShellItem
**
);
DWORD
WINAPI
SHCLSIDFromStringA
(
LPCSTR
,
CLSID
*
);
DWORD
WINAPI
SHCLSIDFromStringW
(
LPCWSTR
,
CLSID
*
);
#define SHCLSIDFromString WINELIB_NAME_AW(SHCLSIDFromString)
HRESULT
WINAPI
SHCreateStdEnumFmtEtc
(
DWORD
,
const
FORMATETC
*
,
IEnumFORMATETC
**
);
void
WINAPI
SHDestroyPropSheetExtArray
(
HPSXA
);
BOOL
WINAPI
SHFindFiles
(
LPCITEMIDLIST
,
LPCITEMIDLIST
);
DWORD
WINAPI
SHFormatDrive
(
HWND
,
UINT
,
UINT
,
UINT
);
void
WINAPI
SHFree
(
LPVOID
);
BOOL
WINAPI
GetFileNameFromBrowse
(
HWND
,
LPWSTR
,
DWORD
,
LPCWSTR
,
LPCWSTR
,
LPCWSTR
,
LPCWSTR
);
HRESULT
WINAPI
SHGetInstanceExplorer
(
IUnknown
**
);
HRESULT
WINAPI
SHGetFolderPathAndSubDirA
(
HWND
,
int
,
HANDLE
,
DWORD
,
LPCSTR
,
LPSTR
);
HRESULT
WINAPI
SHGetFolderPathAndSubDirW
(
HWND
,
int
,
HANDLE
,
DWORD
,
LPCWSTR
,
LPWSTR
);
#define SHGetFolderPathAndSubDir WINELIB_NAME_AW(SHGetFolderPathAndSubDir)
HRESULT
WINAPI
SHGetKnownFolderIDList
(
REFKNOWNFOLDERID
,
DWORD
,
HANDLE
,
PIDLIST_ABSOLUTE
*
);
HRESULT
WINAPI
SHGetKnownFolderItem
(
REFKNOWNFOLDERID
,
KNOWN_FOLDER_FLAG
,
HANDLE
,
REFIID
,
void
**
);
HRESULT
WINAPI
SHGetKnownFolderPath
(
REFKNOWNFOLDERID
,
DWORD
,
HANDLE
,
PWSTR
*
);
BOOL
WINAPI
SHGetPathFromIDListA
(
LPCITEMIDLIST
,
LPSTR
);
BOOL
WINAPI
SHGetPathFromIDListW
(
LPCITEMIDLIST
,
LPWSTR
);
#define SHGetPathFromIDList WINELIB_NAME_AW(SHGetPathFromIDList)
BOOL
WINAPI
SHGetPathFromIDListEx
(
PCIDLIST_ABSOLUTE
,
WCHAR
*
,
DWORD
,
GPFIDL_FLAGS
);
INT
WINAPI
SHHandleUpdateImage
(
LPCITEMIDLIST
);
HRESULT
WINAPI
SHILCreateFromPath
(
LPCWSTR
,
LPITEMIDLIST
*
,
DWORD
*
);
HRESULT
WINAPI
SHLoadOLE
(
LPARAM
);
HRESULT
WINAPI
SHOpenFolderAndSelectItems
(
PCIDLIST_ABSOLUTE
,
UINT
,
PCUITEMID_CHILD_ARRAY
,
DWORD
);
HRESULT
WINAPI
SHParseDisplayName
(
LPCWSTR
,
IBindCtx
*
,
LPITEMIDLIST
*
,
SFGAOF
,
SFGAOF
*
);
HRESULT
WINAPI
SHPathPrepareForWriteA
(
HWND
,
IUnknown
*
,
LPCSTR
,
DWORD
);
HRESULT
WINAPI
SHPathPrepareForWriteW
(
HWND
,
IUnknown
*
,
LPCWSTR
,
DWORD
);
#define SHPathPrepareForWrite WINELIB_NAME_AW(SHPathPrepareForWrite)
UINT
WINAPI
SHReplaceFromPropSheetExtArray
(
HPSXA
,
UINT
,
LPFNADDPROPSHEETPAGE
,
LPARAM
);
LPITEMIDLIST
WINAPI
SHSimpleIDListFromPath
(
LPCWSTR
);
BOOL
WINAPI
SHRunControlPanel
(
LPCWSTR
,
HWND
);
int
WINAPI
SHMapPIDLToSystemImageListIndex
(
IShellFolder
*
,
LPCITEMIDLIST
,
int
*
);
HRESULT
WINAPI
SHStartNetConnectionDialog
(
HWND
,
LPCSTR
,
DWORD
);
VOID
WINAPI
SHUpdateImageA
(
LPCSTR
,
INT
,
UINT
,
INT
);
VOID
WINAPI
SHUpdateImageW
(
LPCWSTR
,
INT
,
UINT
,
INT
);
#define SHUpdateImage WINELIB_NAME_AW(SHUpdateImage)
int
WINAPI
RestartDialog
(
HWND
,
LPCWSTR
,
DWORD
);
int
WINAPI
RestartDialogEx
(
HWND
,
LPCWSTR
,
DWORD
,
DWORD
);
int
WINAPI
DriveType
(
int
);
int
WINAPI
RealDriveType
(
int
,
BOOL
);
int
WINAPI
IsNetDrive
(
int
);
BOOL
WINAPI
IsUserAnAdmin
(
void
);
UINT
WINAPI
Shell_MergeMenus
(
HMENU
,
HMENU
,
UINT
,
UINT
,
UINT
,
ULONG
);
BOOL
WINAPI
Shell_GetImageLists
(
HIMAGELIST
*
,
HIMAGELIST
*
);
BOOL
WINAPI
SignalFileOpen
(
PCIDLIST_ABSOLUTE
);
WINSHELLAPI
UINT
WINAPI
SHAddFromPropSheetExtArray
(
HPSXA
,
LPFNADDPROPSHEETPAGE
,
LPARAM
);
WINSHELLAPI
LPVOID
WINAPI
SHAlloc
(
ULONG
)
__WINE_ALLOC_SIZE
(
1
);
WINSHELLAPI
HRESULT
WINAPI
SHCoCreateInstance
(
LPCWSTR
,
const
CLSID
*
,
IUnknown
*
,
REFIID
,
LPVOID
*
);
WINSHELLAPI
HPSXA
WINAPI
SHCreatePropSheetExtArray
(
HKEY
,
LPCWSTR
,
UINT
);
WINSHELLAPI
HPSXA
WINAPI
SHCreatePropSheetExtArrayEx
(
HKEY
,
LPCWSTR
,
UINT
,
IDataObject
*
);
WINSHELLAPI
HRESULT
WINAPI
SHCreateQueryCancelAutoPlayMoniker
(
IMoniker
**
);
WINSHELLAPI
HRESULT
WINAPI
SHCreateShellItem
(
LPCITEMIDLIST
,
IShellFolder
*
,
LPCITEMIDLIST
,
IShellItem
**
);
WINSHELLAPI
DWORD
WINAPI
SHCLSIDFromStringA
(
LPCSTR
,
CLSID
*
);
WINSHELLAPI
DWORD
WINAPI
SHCLSIDFromStringW
(
LPCWSTR
,
CLSID
*
);
#define SHCLSIDFromString WINELIB_NAME_AW(SHCLSIDFromString)
WINSHELLAPI
HRESULT
WINAPI
SHCreateStdEnumFmtEtc
(
DWORD
,
const
FORMATETC
*
,
IEnumFORMATETC
**
);
WINSHELLAPI
void
WINAPI
SHDestroyPropSheetExtArray
(
HPSXA
);
WINSHELLAPI
BOOL
WINAPI
SHFindFiles
(
LPCITEMIDLIST
,
LPCITEMIDLIST
);
WINSHELLAPI
DWORD
WINAPI
SHFormatDrive
(
HWND
,
UINT
,
UINT
,
UINT
);
WINSHELLAPI
void
WINAPI
SHFree
(
LPVOID
);
WINSHELLAPI
BOOL
WINAPI
GetFileNameFromBrowse
(
HWND
,
LPWSTR
,
DWORD
,
LPCWSTR
,
LPCWSTR
,
LPCWSTR
,
LPCWSTR
);
WINSHELLAPI
HRESULT
WINAPI
SHGetInstanceExplorer
(
IUnknown
**
);
WINSHELLAPI
HRESULT
WINAPI
SHGetFolderPathAndSubDirA
(
HWND
,
int
,
HANDLE
,
DWORD
,
LPCSTR
,
LPSTR
);
WINSHELLAPI
HRESULT
WINAPI
SHGetFolderPathAndSubDirW
(
HWND
,
int
,
HANDLE
,
DWORD
,
LPCWSTR
,
LPWSTR
);
#define SHGetFolderPathAndSubDir WINELIB_NAME_AW(SHGetFolderPathAndSubDir)
WINSHELLAPI
HRESULT
WINAPI
SHGetKnownFolderIDList
(
REFKNOWNFOLDERID
,
DWORD
,
HANDLE
,
PIDLIST_ABSOLUTE
*
);
WINSHELLAPI
HRESULT
WINAPI
SHGetKnownFolderItem
(
REFKNOWNFOLDERID
,
KNOWN_FOLDER_FLAG
,
HANDLE
,
REFIID
,
void
**
);
WINSHELLAPI
HRESULT
WINAPI
SHGetKnownFolderPath
(
REFKNOWNFOLDERID
,
DWORD
,
HANDLE
,
PWSTR
*
);
WINSHELLAPI
BOOL
WINAPI
SHGetPathFromIDListA
(
LPCITEMIDLIST
,
LPSTR
);
WINSHELLAPI
BOOL
WINAPI
SHGetPathFromIDListW
(
LPCITEMIDLIST
,
LPWSTR
);
#define SHGetPathFromIDList WINELIB_NAME_AW(SHGetPathFromIDList)
WINSHELLAPI
BOOL
WINAPI
SHGetPathFromIDListEx
(
PCIDLIST_ABSOLUTE
,
WCHAR
*
,
DWORD
,
GPFIDL_FLAGS
);
WINSHELLAPI
INT
WINAPI
SHHandleUpdateImage
(
LPCITEMIDLIST
);
WINSHELLAPI
HRESULT
WINAPI
SHILCreateFromPath
(
LPCWSTR
,
LPITEMIDLIST
*
,
DWORD
*
);
WINSHELLAPI
HRESULT
WINAPI
SHLoadOLE
(
LPARAM
);
WINSHELLAPI
HRESULT
WINAPI
SHOpenFolderAndSelectItems
(
PCIDLIST_ABSOLUTE
,
UINT
,
PCUITEMID_CHILD_ARRAY
,
DWORD
);
WINSHELLAPI
HRESULT
WINAPI
SHParseDisplayName
(
LPCWSTR
,
IBindCtx
*
,
LPITEMIDLIST
*
,
SFGAOF
,
SFGAOF
*
);
WINSHELLAPI
HRESULT
WINAPI
SHPathPrepareForWriteA
(
HWND
,
IUnknown
*
,
LPCSTR
,
DWORD
);
WINSHELLAPI
HRESULT
WINAPI
SHPathPrepareForWriteW
(
HWND
,
IUnknown
*
,
LPCWSTR
,
DWORD
);
#define SHPathPrepareForWrite WINELIB_NAME_AW(SHPathPrepareForWrite)
WINSHELLAPI
UINT
WINAPI
SHReplaceFromPropSheetExtArray
(
HPSXA
,
UINT
,
LPFNADDPROPSHEETPAGE
,
LPARAM
);
WINSHELLAPI
LPITEMIDLIST
WINAPI
SHSimpleIDListFromPath
(
LPCWSTR
);
WINSHELLAPI
BOOL
WINAPI
SHRunControlPanel
(
LPCWSTR
,
HWND
);
WINSHELLAPI
int
WINAPI
SHMapPIDLToSystemImageListIndex
(
IShellFolder
*
,
LPCITEMIDLIST
,
int
*
);
WINSHELLAPI
HRESULT
WINAPI
SHStartNetConnectionDialog
(
HWND
,
LPCSTR
,
DWORD
);
WINSHELLAPI
VOID
WINAPI
SHUpdateImageA
(
LPCSTR
,
INT
,
UINT
,
INT
);
WINSHELLAPI
VOID
WINAPI
SHUpdateImageW
(
LPCWSTR
,
INT
,
UINT
,
INT
);
#define SHUpdateImage WINELIB_NAME_AW(SHUpdateImage)
WINSHELLAPI
int
WINAPI
RestartDialog
(
HWND
,
LPCWSTR
,
DWORD
);
WINSHELLAPI
int
WINAPI
RestartDialogEx
(
HWND
,
LPCWSTR
,
DWORD
,
DWORD
);
WINSHELLAPI
int
WINAPI
DriveType
(
int
);
WINSHELLAPI
int
WINAPI
RealDriveType
(
int
,
BOOL
);
WINSHELLAPI
int
WINAPI
IsNetDrive
(
int
);
WINSHELLAPI
BOOL
WINAPI
IsUserAnAdmin
(
void
);
WINSHELLAPI
UINT
WINAPI
Shell_MergeMenus
(
HMENU
,
HMENU
,
UINT
,
UINT
,
UINT
,
ULONG
);
WINSHELLAPI
BOOL
WINAPI
Shell_GetImageLists
(
HIMAGELIST
*
,
HIMAGELIST
*
);
WINSHELLAPI
BOOL
WINAPI
SignalFileOpen
(
PCIDLIST_ABSOLUTE
);
BOOL
WINAPI
ImportPrivacySettings
(
LPCWSTR
,
BOOL
*
,
BOOL
*
);
#define SHFMT_ERROR __MSABI_LONG(0xFFFFFFFF)
/* Error on last format, drive may be formattable */
...
...
@@ -147,7 +156,7 @@ BOOL WINAPI ImportPrivacySettings(LPCWSTR, BOOL*, BOOL*);
#define OFASI_EDIT 0x0001
#define OFASI_OPENDESKTOP 0x0002
BOOL
WINAPI
SHObjectProperties
(
HWND
,
DWORD
,
LPCWSTR
,
LPCWSTR
);
WINSHELLAPI
BOOL
WINAPI
SHObjectProperties
(
HWND
,
DWORD
,
LPCWSTR
,
LPCWSTR
);
#define PCS_FATAL 0x80000000
#define PCS_REPLACEDCHAR 0x00000001
...
...
@@ -155,7 +164,7 @@ BOOL WINAPI SHObjectProperties(HWND,DWORD,LPCWSTR,LPCWSTR);
#define PCS_TRUNCATED 0x00000004
#define PCS_PATHTOOLONG 0x00000008
int
WINAPI
PathCleanupSpec
(
LPCWSTR
,
LPWSTR
);
WINSHELLAPI
int
WINAPI
PathCleanupSpec
(
LPCWSTR
,
LPWSTR
);
/* SHOpenWithDialog API */
...
...
@@ -179,7 +188,7 @@ typedef struct
}
OPENASINFO
;
#include <poppack.h>
HRESULT
WINAPI
SHOpenWithDialog
(
HWND
,
const
OPENASINFO
*
);
WINSHELLAPI
HRESULT
WINAPI
SHOpenWithDialog
(
HWND
,
const
OPENASINFO
*
);
/* Shell_MergeMenus flags */
#define MM_ADDSEPARATOR 0x00000001
...
...
@@ -861,7 +870,7 @@ DECLARE_INTERFACE_(IActiveDesktop, IUnknown)
#define SHARD_PATHW __MSABI_LONG(0x00000003)
#define SHARD_PATH WINELIB_NAME_AW(SHARD_PATH)
void
WINAPI
SHAddToRecentDocs
(
UINT
,
LPCVOID
);
WINSHELLAPI
void
WINAPI
SHAddToRecentDocs
(
UINT
,
LPCVOID
);
/****************************************************************************
* SHBrowseForFolder API
...
...
@@ -932,8 +941,8 @@ typedef struct tagBROWSEINFOW {
#define BFFM_SETOKTEXT (WM_USER+105)
#define BFFM_SETEXPANDED (WM_USER+106)
LPITEMIDLIST
WINAPI
SHBrowseForFolderA
(
LPBROWSEINFOA
lpbi
);
LPITEMIDLIST
WINAPI
SHBrowseForFolderW
(
LPBROWSEINFOW
lpbi
);
WINSHELLAPI
LPITEMIDLIST
WINAPI
SHBrowseForFolderA
(
LPBROWSEINFOA
lpbi
);
WINSHELLAPI
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)
...
...
@@ -966,7 +975,7 @@ typedef struct _CSFV
#include <poppack.h>
HRESULT
WINAPI
SHCreateShellFolderViewEx
(
LPCSFV
pshfvi
,
IShellView
**
ppshv
);
WINSHELLAPI
HRESULT
WINAPI
SHCreateShellFolderViewEx
(
LPCSFV
pshfvi
,
IShellView
**
ppshv
);
/* SHCreateShellFolderViewEx callback messages */
#define SFVM_MERGEMENU 1
...
...
@@ -1038,7 +1047,7 @@ typedef struct _SFV_CREATE
#include <poppack.h>
HRESULT
WINAPI
SHCreateShellFolderView
(
const
SFV_CREATE
*
pscfv
,
IShellView
**
ppsv
);
WINSHELLAPI
HRESULT
WINAPI
SHCreateShellFolderView
(
const
SFV_CREATE
*
pscfv
,
IShellView
**
ppsv
);
/* Types and definitions for the SFM_* parameters */
#include <pshpack8.h>
...
...
@@ -1086,10 +1095,7 @@ typedef struct _TBINFO
* SHShellFolderView_Message API
*/
LRESULT
WINAPI
SHShellFolderView_Message
(
HWND
hwndCabinet
,
UINT
uMessage
,
LPARAM
lParam
);
WINSHELLAPI
LRESULT
WINAPI
SHShellFolderView_Message
(
HWND
hwndCabinet
,
UINT
uMessage
,
LPARAM
lParam
);
/* SHShellFolderView_Message messages */
#define SFVM_REARRANGE 0x0001
...
...
@@ -1153,15 +1159,15 @@ typedef struct _SHDESCRIPTIONID
#include <poppack.h>
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
);
WINSHELLAPI
HRESULT
WINAPI
SHGetDataFromIDListA
(
LPSHELLFOLDER
psf
,
LPCITEMIDLIST
pidl
,
int
nFormat
,
LPVOID
pv
,
int
cb
);
WINSHELLAPI
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
);
WINSHELLAPI
BOOL
WINAPI
SHGetSpecialFolderPathA
(
HWND
hwndOwner
,
LPSTR
szPath
,
int
nFolder
,
BOOL
bCreate
);
WINSHELLAPI
BOOL
WINAPI
SHGetSpecialFolderPathW
(
HWND
hwndOwner
,
LPWSTR
szPath
,
int
nFolder
,
BOOL
bCreate
);
#define SHGetSpecialFolderPath WINELIB_NAME_AW(SHGetSpecialFolderPath)
HRESULT
WINAPI
SHGetMalloc
(
LPMALLOC
*
lpmal
)
;
WINSHELLAPI
HRESULT
WINAPI
SHGetMalloc
(
LPMALLOC
*
lpmal
)
;
/**********************************************************************
* SHGetSetSettings ()
...
...
@@ -1226,7 +1232,7 @@ typedef struct
UINT
:
15
;
/* Required for proper binary layout with gcc */
}
SHELLFLAGSTATE
,
*
LPSHELLFLAGSTATE
;
VOID
WINAPI
SHGetSettings
(
LPSHELLFLAGSTATE
lpsfs
,
DWORD
dwMask
);
WINSHELLAPI
VOID
WINAPI
SHGetSettings
(
LPSHELLFLAGSTATE
lpsfs
,
DWORD
dwMask
);
#define SSF_SHOWALLOBJECTS 0x0001
#define SSF_SHOWEXTENSIONS 0x0002
...
...
@@ -1415,7 +1421,7 @@ typedef enum RESTRICTIONS
REST_NOFILEASSOCIATE
,
/* 0x41000003 */
}
RESTRICTIONS
;
DWORD
WINAPI
SHRestricted
(
RESTRICTIONS
rest
);
WINSHELLAPI
DWORD
WINAPI
SHRestricted
(
RESTRICTIONS
rest
);
/****************************************************************************
* SHChangeNotify API
...
...
@@ -1476,7 +1482,7 @@ typedef struct _SHChangeNotifyEntry
#define SHCNRF_RecursiveInterrupt 0x1000
#define SHCNRF_NewDelivery 0x8000
void
WINAPI
SHChangeNotify
(
LONG
wEventId
,
UINT
uFlags
,
LPCVOID
dwItem1
,
LPCVOID
dwItem2
);
WINSHELLAPI
void
WINAPI
SHChangeNotify
(
LONG
wEventId
,
UINT
uFlags
,
LPCVOID
dwItem1
,
LPCVOID
dwItem2
);
typedef
enum
{
...
...
@@ -1596,22 +1602,22 @@ typedef struct _SHChangeProductKeyAsIDList {
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
);
WINSHELLAPI
ULONG
WINAPI
SHChangeNotifyRegister
(
HWND
hwnd
,
int
fSources
,
LONG
fEvents
,
UINT
wMsg
,
int
cEntries
,
SHChangeNotifyEntry
*
pshcne
);
WINSHELLAPI
BOOL
WINAPI
SHChangeNotifyDeregister
(
ULONG
ulID
);
WINSHELLAPI
HANDLE
WINAPI
SHChangeNotification_Lock
(
HANDLE
hChangeNotification
,
DWORD
dwProcessId
,
LPITEMIDLIST
**
pppidl
,
LONG
*
plEvent
);
WINSHELLAPI
BOOL
WINAPI
SHChangeNotification_Unlock
(
HANDLE
hLock
);
HRESULT
WINAPI
SHGetRealIDL
(
IShellFolder
*
psf
,
LPCITEMIDLIST
pidlSimple
,
LPITEMIDLIST
*
ppidlReal
);
WINSHELLAPI
HRESULT
WINAPI
SHGetRealIDL
(
IShellFolder
*
psf
,
LPCITEMIDLIST
pidlSimple
,
LPITEMIDLIST
*
ppidlReal
);
/****************************************************************************
* SHCreateDirectory API
*/
DWORD
WINAPI
SHCreateDirectory
(
HWND
,
LPCVOID
);
int
WINAPI
SHCreateDirectoryExA
(
HWND
,
LPCSTR
,
LPSECURITY_ATTRIBUTES
);
int
WINAPI
SHCreateDirectoryExW
(
HWND
,
LPCWSTR
,
LPSECURITY_ATTRIBUTES
);
#define SHCreateDirectoryEx WINELIB_NAME_AW(SHCreateDirectoryEx)
WINSHELLAPI
DWORD
WINAPI
SHCreateDirectory
(
HWND
,
LPCVOID
);
WINSHELLAPI
int
WINAPI
SHCreateDirectoryExA
(
HWND
,
LPCSTR
,
LPSECURITY_ATTRIBUTES
);
WINSHELLAPI
int
WINAPI
SHCreateDirectoryExW
(
HWND
,
LPCWSTR
,
LPSECURITY_ATTRIBUTES
);
#define
SHCreateDirectoryEx WINELIB_NAME_AW(SHCreateDirectoryEx)
/****************************************************************************
* SHGetSetFolderCustomSettings API
...
...
@@ -1651,13 +1657,13 @@ typedef struct {
}
SHFOLDERCUSTOMSETTINGS
,
*
LPSHFOLDERCUSTOMSETTINGS
;
#include <poppack.h>
HRESULT
WINAPI
SHGetSetFolderCustomSettings
(
LPSHFOLDERCUSTOMSETTINGS
pfcs
,
PCWSTR
pszPath
,
DWORD
dwReadWrite
);
WINSHELLAPI
HRESULT
WINAPI
SHGetSetFolderCustomSettings
(
LPSHFOLDERCUSTOMSETTINGS
pfcs
,
PCWSTR
pszPath
,
DWORD
dwReadWrite
);
/****************************************************************************
* SHGetSpecialFolderLocation API
*/
HRESULT
WINAPI
SHGetSpecialFolderLocation
(
HWND
hwndOwner
,
int
nFolder
,
LPITEMIDLIST
*
ppidl
);
HRESULT
WINAPI
SHGetFolderLocation
(
HWND
hwndOwner
,
int
nFolder
,
HANDLE
hToken
,
DWORD
dwReserved
,
LPITEMIDLIST
*
ppidl
);
WINSHELLAPI
HRESULT
WINAPI
SHGetSpecialFolderLocation
(
HWND
hwndOwner
,
int
nFolder
,
LPITEMIDLIST
*
ppidl
);
WINSHELLAPI
HRESULT
WINAPI
SHGetFolderLocation
(
HWND
hwndOwner
,
int
nFolder
,
HANDLE
hToken
,
DWORD
dwReserved
,
LPITEMIDLIST
*
ppidl
);
/****************************************************************************
* SHGetFolderPath API
...
...
@@ -1667,9 +1673,9 @@ typedef enum {
SHGFP_TYPE_DEFAULT
=
1
}
SHGFP_TYPE
;
HRESULT
WINAPI
SHGetFolderPathA
(
HWND
hwnd
,
int
nFolder
,
HANDLE
hToken
,
DWORD
dwFlags
,
LPSTR
pszPath
);
HRESULT
WINAPI
SHGetFolderPathW
(
HWND
hwnd
,
int
nFolder
,
HANDLE
hToken
,
DWORD
dwFlags
,
LPWSTR
pszPath
);
#define SHGetFolderPath WINELIB_NAME_AW(SHGetFolderPath)
WINSHELLAPI
HRESULT
WINAPI
SHGetFolderPathA
(
HWND
hwnd
,
int
nFolder
,
HANDLE
hToken
,
DWORD
dwFlags
,
LPSTR
pszPath
);
WINSHELLAPI
HRESULT
WINAPI
SHGetFolderPathW
(
HWND
hwnd
,
int
nFolder
,
HANDLE
hToken
,
DWORD
dwFlags
,
LPWSTR
pszPath
);
#define
SHGetFolderPath WINELIB_NAME_AW(SHGetFolderPath)
#define CSIDL_DESKTOP 0x0000
#define CSIDL_INTERNET 0x0001
...
...
@@ -1740,21 +1746,21 @@ HRESULT WINAPI SHGetFolderPathW(HWND hwnd, int nFolder, HANDLE hToken, DWORD dwF
/****************************************************************************
* SHGetDesktopFolder API
*/
HRESULT
WINAPI
SHGetDesktopFolder
(
IShellFolder
*
*
);
WINSHELLAPI
HRESULT
WINAPI
SHGetDesktopFolder
(
IShellFolder
*
*
);
/****************************************************************************
* SHBindToParent API
*/
HRESULT
WINAPI
SHBindToParent
(
LPCITEMIDLIST
pidl
,
REFIID
riid
,
LPVOID
*
ppv
,
LPCITEMIDLIST
*
ppidlLast
);
WINSHELLAPI
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)
WINSHELLAPI
HRESULT
WINAPI
SHDefExtractIconA
(
LPCSTR
pszIconFile
,
int
iIndex
,
UINT
uFlags
,
HICON
*
phiconLarge
,
HICON
*
phiconSmall
,
UINT
nIconSize
);
WINSHELLAPI
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
...
...
@@ -1840,8 +1846,8 @@ typedef struct {
#define CABINETSTATE_VERSION 2
BOOL
WINAPI
ReadCabinetState
(
CABINETSTATE
*
,
int
);
BOOL
WINAPI
WriteCabinetState
(
CABINETSTATE
*
);
WINSHELLAPI
BOOL
WINAPI
ReadCabinetState
(
CABINETSTATE
*
,
int
);
WINSHELLAPI
BOOL
WINAPI
WriteCabinetState
(
CABINETSTATE
*
);
/****************************************************************************
* Path Manipulation Routines
...
...
@@ -1863,11 +1869,11 @@ BOOL WINAPI WriteCabinetState(CABINETSTATE *);
#define PRF_DONTFINDLNK 0x08
#define PRF_REQUIREABSOLUTE 0x10
VOID
WINAPI
PathGetShortPath
(
LPWSTR
pszPath
);
LONG
WINAPI
PathProcessCommand
(
LPCWSTR
,
LPWSTR
,
int
,
DWORD
);
int
WINAPI
PathResolve
(
LPWSTR
,
PZPCWSTR
,
UINT
);
BOOL
WINAPI
PathYetAnotherMakeUniqueName
(
LPWSTR
,
LPCWSTR
,
LPCWSTR
,
LPCWSTR
);
BOOL
WINAPI
Win32DeleteFile
(
LPCWSTR
);
WINSHELLAPI
VOID
WINAPI
PathGetShortPath
(
LPWSTR
pszPath
);
WINSHELLAPI
LONG
WINAPI
PathProcessCommand
(
LPCWSTR
,
LPWSTR
,
int
,
DWORD
);
WINSHELLAPI
int
WINAPI
PathResolve
(
LPWSTR
,
PZPCWSTR
,
UINT
);
WINSHELLAPI
BOOL
WINAPI
PathYetAnotherMakeUniqueName
(
LPWSTR
,
LPCWSTR
,
LPCWSTR
,
LPCWSTR
);
WINSHELLAPI
BOOL
WINAPI
Win32DeleteFile
(
LPCWSTR
);
/****************************************************************************
* Drag And Drop Routines
...
...
@@ -1884,13 +1890,13 @@ typedef struct
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
);
WINSHELLAPI
BOOL
WINAPI
DAD_SetDragImage
(
HIMAGELIST
,
LPPOINT
);
WINSHELLAPI
BOOL
WINAPI
DAD_DragEnterEx
(
HWND
,
POINT
);
WINSHELLAPI
BOOL
WINAPI
DAD_DragEnterEx2
(
HWND
,
POINT
,
IDataObject
*
);
WINSHELLAPI
BOOL
WINAPI
DAD_DragMove
(
POINT
);
WINSHELLAPI
BOOL
WINAPI
DAD_DragLeave
(
void
);
WINSHELLAPI
BOOL
WINAPI
DAD_AutoScroll
(
HWND
,
AUTO_SCROLL_DATA
*
,
LPPOINT
);
WINSHELLAPI
HRESULT
WINAPI
SHDoDragDrop
(
HWND
,
IDataObject
*
,
IDropSource
*
,
DWORD
,
LPDWORD
);
/****************************************************************************
* Internet shortcut properties
...
...
@@ -1909,23 +1915,23 @@ HRESULT WINAPI SHDoDragDrop(HWND,IDataObject*,IDropSource*,DWORD,LPDWORD);
#define PID_IS_COMMENT 13
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
);
HRESULT
WINAPI
ILLoadFromStream
(
LPSTREAM
,
LPITEMIDLIST
*
);
BOOL
WINAPI
ILRemoveLastID
(
LPITEMIDLIST
);
HRESULT
WINAPI
ILSaveToStream
(
LPSTREAM
,
LPCITEMIDLIST
);
WINSHELLAPI
LPITEMIDLIST
WINAPI
ILAppendID
(
LPITEMIDLIST
,
LPCSHITEMID
,
BOOL
);
WINSHELLAPI
LPITEMIDLIST
WINAPI
ILClone
(
LPCITEMIDLIST
);
WINSHELLAPI
LPITEMIDLIST
WINAPI
ILCloneFirst
(
LPCITEMIDLIST
);
WINSHELLAPI
LPITEMIDLIST
WINAPI
ILCreateFromPathA
(
LPCSTR
);
WINSHELLAPI
LPITEMIDLIST
WINAPI
ILCreateFromPathW
(
LPCWSTR
);
#define
ILCreateFromPath WINELIB_NAME_AW(ILCreateFromPath)
WINSHELLAPI
LPITEMIDLIST
WINAPI
ILCombine
(
LPCITEMIDLIST
,
LPCITEMIDLIST
);
WINSHELLAPI
LPITEMIDLIST
WINAPI
ILFindChild
(
LPCITEMIDLIST
,
LPCITEMIDLIST
);
WINSHELLAPI
LPITEMIDLIST
WINAPI
ILFindLastID
(
LPCITEMIDLIST
);
WINSHELLAPI
void
WINAPI
ILFree
(
LPITEMIDLIST
);
WINSHELLAPI
LPITEMIDLIST
WINAPI
ILGetNext
(
LPCITEMIDLIST
);
WINSHELLAPI
UINT
WINAPI
ILGetSize
(
LPCITEMIDLIST
);
WINSHELLAPI
BOOL
WINAPI
ILIsEqual
(
LPCITEMIDLIST
,
LPCITEMIDLIST
);
WINSHELLAPI
BOOL
WINAPI
ILIsParent
(
LPCITEMIDLIST
,
LPCITEMIDLIST
,
BOOL
);
WINSHELLAPI
HRESULT
WINAPI
ILLoadFromStream
(
LPSTREAM
,
LPITEMIDLIST
*
);
WINSHELLAPI
BOOL
WINAPI
ILRemoveLastID
(
LPITEMIDLIST
);
WINSHELLAPI
HRESULT
WINAPI
ILSaveToStream
(
LPSTREAM
,
LPCITEMIDLIST
);
static
inline
BOOL
ILIsEmpty
(
LPCITEMIDLIST
pidl
)
{
...
...
@@ -1948,17 +1954,17 @@ typedef struct {
#include <poppack.h>
HRESULT
WINAPI
SHCreateDefaultContextMenu
(
const
DEFCONTEXTMENU
*
pdcm
,
REFIID
riid
,
void
**
ppv
);
WINSHELLAPI
HRESULT
WINAPI
SHCreateDefaultContextMenu
(
const
DEFCONTEXTMENU
*
pdcm
,
REFIID
riid
,
void
**
ppv
);
typedef
HRESULT
(
CALLBACK
*
LPFNDFMCALLBACK
)(
IShellFolder
*
,
HWND
,
IDataObject
*
,
UINT
,
WPARAM
,
LPARAM
);
HRESULT
WINAPI
CDefFolderMenu_Create2
(
LPCITEMIDLIST
pidlFolder
,
HWND
hwnd
,
UINT
cidl
,
LPCITEMIDLIST
*
apidl
,
IShellFolder
*
psf
,
LPFNDFMCALLBACK
lpfn
,
UINT
nKeys
,
const
HKEY
*
ahkeys
,
IContextMenu
**
ppcm
);
WINSHELLAPI
HRESULT
WINAPI
CDefFolderMenu_Create2
(
LPCITEMIDLIST
pidlFolder
,
HWND
hwnd
,
UINT
cidl
,
LPCITEMIDLIST
*
apidl
,
IShellFolder
*
psf
,
LPFNDFMCALLBACK
lpfn
,
UINT
nKeys
,
const
HKEY
*
ahkeys
,
IContextMenu
**
ppcm
);
int
WINAPI
PickIconDlg
(
HWND
owner
,
WCHAR
*
path
,
UINT
path_len
,
int
*
index
);
HRESULT
WINAPI
SHLimitInputEdit
(
HWND
hwnd
,
IShellFolder
*
folder
);
WINSHELLAPI
int
WINAPI
PickIconDlg
(
HWND
owner
,
WCHAR
*
path
,
UINT
path_len
,
int
*
index
);
WINSHELLAPI
HRESULT
WINAPI
SHLimitInputEdit
(
HWND
hwnd
,
IShellFolder
*
folder
);
#include <poppack.h>
...
...
include/shobjidl.idl
View file @
55fc5c8a
...
...
@@ -37,6 +37,13 @@ import "shobjidl_core.idl";
cpp_quote
(
"/* FIXME: #include <sherrors.h> */"
)
cpp_quote
(
"#ifndef WINSHELLAPI"
)
cpp_quote
(
"#ifdef _SHELL32_"
)
cpp_quote
(
"# define WINSHELLAPI"
)
cpp_quote
(
"#else"
)
cpp_quote
(
"# define WINSHELLAPI DECLSPEC_IMPORT"
)
cpp_quote
(
"#endif"
)
cpp_quote
(
"#endif"
)
/*****************************************************************************
*
IPersistFolder
interface
...
...
@@ -654,18 +661,18 @@ typedef [v1_enum] enum DATAOBJ_GET_ITEM_FLAGS
}
DATAOBJ_GET_ITEM_FLAGS
;
cpp_quote
(
"DEFINE_ENUM_FLAG_OPERATORS(DATAOBJ_GET_ITEM_FLAGS)"
)
cpp_quote
(
"HRESULT WINAPI SHGetNameFromIDList(PCIDLIST_ABSOLUTE pidl, SIGDN sigdnName, PWSTR *ppszName);"
)
cpp_quote
(
"HRESULT WINAPI SHCreateItemFromParsingName(PCWSTR pszPath, IBindCtx *pbc, REFIID riid, void **ppv);"
)
cpp_quote
(
"HRESULT WINAPI SHCreateItemFromIDList(PCIDLIST_ABSOLUTE pidl, REFIID riid, void **ppv);"
)
cpp_quote
(
"HRESULT WINAPI SHCreateItemFromRelativeName(IShellItem *parent, PCWSTR name, IBindCtx *pbc, REFIID riid, void **ppv);"
)
cpp_quote
(
"HRESULT WINAPI SHGetItemFromDataObject(IDataObject *pdtobj, DATAOBJ_GET_ITEM_FLAGS dwFlags, REFIID riid, void **ppv);"
)
cpp_quote
(
"HRESULT WINAPI SHGetIDListFromObject(IUnknown *punk, PIDLIST_ABSOLUTE *ppidl);"
)
cpp_quote
(
"HRESULT WINAPI SHGetItemFromObject(IUnknown *punk, REFIID riid, void **ppv);"
)
cpp_quote
(
"HRESULT WINAPI SHCreateShellItemArray(PCIDLIST_ABSOLUTE pidlParent, IShellFolder* psf, UINT cidl, PCUITEMID_CHILD_ARRAY ppidl, IShellItemArray **ppsiItemArray);"
)
cpp_quote
(
"HRESULT WINAPI SHCreateShellItemArrayFromShellItem(IShellItem *psi, REFIID riid, void **ppv);"
)
cpp_quote
(
"HRESULT WINAPI SHCreateShellItemArrayFromIDLists(UINT cidl, PCIDLIST_ABSOLUTE_ARRAY pidl_array, IShellItemArray **psia);"
)
cpp_quote
(
"HRESULT WINAPI SHCreateItemInKnownFolder(REFKNOWNFOLDERID rfid, DWORD flags, PCWSTR filename, REFIID riid, void **ppv);"
)
cpp_quote
(
"HRESULT WINAPI SHCreateShellItemArrayFromDataObject(IDataObject *pdo, REFIID riid, void **ppv);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHGetNameFromIDList(PCIDLIST_ABSOLUTE pidl, SIGDN sigdnName, PWSTR *ppszName);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHCreateItemFromParsingName(PCWSTR pszPath, IBindCtx *pbc, REFIID riid, void **ppv);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHCreateItemFromIDList(PCIDLIST_ABSOLUTE pidl, REFIID riid, void **ppv);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHCreateItemFromRelativeName(IShellItem *parent, PCWSTR name, IBindCtx *pbc, REFIID riid, void **ppv);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHGetItemFromDataObject(IDataObject *pdtobj, DATAOBJ_GET_ITEM_FLAGS dwFlags, REFIID riid, void **ppv);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHGetIDListFromObject(IUnknown *punk, PIDLIST_ABSOLUTE *ppidl);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHGetItemFromObject(IUnknown *punk, REFIID riid, void **ppv);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHCreateShellItemArray(PCIDLIST_ABSOLUTE pidlParent, IShellFolder* psf, UINT cidl, PCUITEMID_CHILD_ARRAY ppidl, IShellItemArray **ppsiItemArray);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHCreateShellItemArrayFromShellItem(IShellItem *psi, REFIID riid, void **ppv);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHCreateShellItemArrayFromIDLists(UINT cidl, PCIDLIST_ABSOLUTE_ARRAY pidl_array, IShellItemArray **psia);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHCreateItemInKnownFolder(REFKNOWNFOLDERID rfid, DWORD flags, PCWSTR filename, REFIID riid, void **ppv);"
)
cpp_quote
(
"
WINSHELLAPI
HRESULT WINAPI SHCreateShellItemArrayFromDataObject(IDataObject *pdo, REFIID riid, void **ppv);"
)
/*****************************************************************************
*
IShellItemFilter
interface
...
...
@@ -3791,7 +3798,7 @@ typedef enum ASSOC_FILTER
ASSOC_FILTER_NONE = 0,
ASSOC_FILTER_RECOMMENDED
} ASSOC_FILTER;
cpp_quote("HRESULT WINAPI SHAssocEnumHandlers(PCWSTR extra, ASSOC_FILTER filter, IEnumAssocHandlers **handlersenum);")
cpp_quote("
WINSHELLAPI
HRESULT WINAPI SHAssocEnumHandlers(PCWSTR extra, ASSOC_FILTER filter, IEnumAssocHandlers **handlersenum);")
[
uuid(1df0d7f1-b267-4d28-8b10-12e23202a5c4),
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment