rizin/librz/analysis/d/functions-windows_shellapi.sdb.txt
Anton Kochkov 3c59df7e98
Refactor RzTypes to use structs instead of SDB + New Tree-Sitter based C Parser (#1047)
- Removed oldshell version of `t` (types) commands
- Removed `tk` command because types storage switched to the hashtable
- Added `tfc` command to show the calling convention of the function or set it
- Added `tsl` (RZ_OUTPUT_MODE_LONG) to show structure members' sizes and offsets
- Added `tul` (RZ_OUTPUT_MODE_LONG) to show union members' sizes
- Switched the types storage to the hashtable instead of SDB
- Added load and export from/to SDB for standard type libraries and serialization for Projects
- Changed all `char *type` occurences to the proper `RzType`
- Added `RzCallable` type for the function/class method types
- Changed all function types API to use the `RzCallable` API
- Switched the function types (`RzCallable`) storage to the hashtable instead of SDB
- Added a connection between `RzAnalysisFunction` and `RzCallable` - `rz_analysis_function_derive_type()` API function to derive new `RzCallable` type from the `RzAnalysisFunction` even if it doesn't exist in the RzTypeDB.
- Moved type links to the RzAnalysis where they belong
- Removed TCC and MPC-based parsers
- Added Tree-Sitter-based parser for C grammar (see `librz/type/parser/*`)
- Reworked type databases in `librz/analysis/d/` to be consistent with C standard, libc, platform-specific definitions
- Switched the type links from `char *` to `RzType`
- Switched the type links from SDB to the hashtable
- Added concept of the "type paths", e.g. `a.b[20].c` where `b` is a member of `a` (`a` is either structure or a union) and `c` is a member of `b`, and `b` is an array where we take 20-th element.
- Added concept of the typeclasses (a bit similar to Haskell) for numerical types: `None` (the most generic one), `Num` (includes `Integral` and `Floating`), `Integral` (includes `Signed Integral` and `Unsigned Integral`), `Floating`.
- Added concept of type equality (`rz_types_equal(a, b)` API function)
- Added Doxygen documentation to every API function in the `librz/type/*`.
- Updated the project format from **V2** to **V3**, added migration.
2021-07-20 01:46:45 +08:00

426 lines
14 KiB
Text

### shellapi.h ###
AssocCreateForClasses=func
func.AssocCreateForClasses.args=4
func.AssocCreateForClasses.arg.0=const ASSOCIATIONELEMENT *,rgClasses
func.AssocCreateForClasses.arg.1=ULONG,cClasses
func.AssocCreateForClasses.arg.2=REFIID,riid
func.AssocCreateForClasses.arg.3=void **,ppv
func.AssocCreateForClasses.ret=HRESULT
CommandLineToArgvW=func
func.CommandLineToArgvW.args=2
func.CommandLineToArgvW.arg.0=LPCWSTR,lpCmdLine
func.CommandLineToArgvW.arg.1=int *,pNumArgs
func.CommandLineToArgvW.ret=LPWSTR *
DoEnvironmentSubstA=func
func.DoEnvironmentSubstA.args=2
func.DoEnvironmentSubstA.arg.0=LPSTR,pszSrc
func.DoEnvironmentSubstA.arg.1=UINT,cchSrc
func.DoEnvironmentSubstA.ret=DWORD
DoEnvironmentSubstW=func
func.DoEnvironmentSubstW.args=2
func.DoEnvironmentSubstW.arg.0=LPWSTR,pszSrc
func.DoEnvironmentSubstW.arg.1=UINT,cchSrc
func.DoEnvironmentSubstW.ret=DWORD
DragAcceptFiles=func
func.DragAcceptFiles.args=2
func.DragAcceptFiles.arg.0=HWND,hWnd
func.DragAcceptFiles.arg.1=BOOL,fAccept
func.DragAcceptFiles.ret=void
DragFinish=func
func.DragFinish.args=1
func.DragFinish.arg.0=HDROP,hDrop
func.DragFinish.ret=void
DragQueryFileA=func
func.DragQueryFileA.args=4
func.DragQueryFileA.arg.0=HDROP,hDrop
func.DragQueryFileA.arg.1=UINT,iFile
func.DragQueryFileA.arg.2=LPSTR,lpszFile
func.DragQueryFileA.arg.3=UINT,cch
func.DragQueryFileA.ret=UINT
DragQueryFileW=func
func.DragQueryFileW.args=4
func.DragQueryFileW.arg.0=HDROP,hDrop
func.DragQueryFileW.arg.1=UINT,iFile
func.DragQueryFileW.arg.2=LPWSTR,lpszFile
func.DragQueryFileW.arg.3=UINT,cch
func.DragQueryFileW.ret=UINT
DragQueryPoint=func
func.DragQueryPoint.args=2
func.DragQueryPoint.arg.0=HDROP,hDrop
func.DragQueryPoint.arg.1=POINT *,ppt
func.DragQueryPoint.ret=BOOL
DuplicateIcon=func
func.DuplicateIcon.args=2
func.DuplicateIcon.arg.0=HINSTANCE,hInst
func.DuplicateIcon.arg.1=HICON,hIcon
func.DuplicateIcon.ret=HICON
ExtractAssociatedIconA=func
func.ExtractAssociatedIconA.args=3
func.ExtractAssociatedIconA.arg.0=HINSTANCE,hInst
func.ExtractAssociatedIconA.arg.1=LPSTR,pszIconPath
func.ExtractAssociatedIconA.arg.2=WORD *,piIcon
func.ExtractAssociatedIconA.ret=HICON
ExtractAssociatedIconExA=func
func.ExtractAssociatedIconExA.args=4
func.ExtractAssociatedIconExA.arg.0=HINSTANCE,hInst
func.ExtractAssociatedIconExA.arg.1=LPSTR,pszIconPath
func.ExtractAssociatedIconExA.arg.2=WORD *,piIconIndex
func.ExtractAssociatedIconExA.arg.3=WORD *,piIconId
func.ExtractAssociatedIconExA.ret=HICON
ExtractAssociatedIconExW=func
func.ExtractAssociatedIconExW.args=4
func.ExtractAssociatedIconExW.arg.0=HINSTANCE,hInst
func.ExtractAssociatedIconExW.arg.1=LPWSTR,pszIconPath
func.ExtractAssociatedIconExW.arg.2=WORD *,piIconIndex
func.ExtractAssociatedIconExW.arg.3=WORD *,piIconId
func.ExtractAssociatedIconExW.ret=HICON
ExtractAssociatedIconW=func
func.ExtractAssociatedIconW.args=3
func.ExtractAssociatedIconW.arg.0=HINSTANCE,hInst
func.ExtractAssociatedIconW.arg.1=LPWSTR,pszIconPath
func.ExtractAssociatedIconW.arg.2=WORD *,piIcon
func.ExtractAssociatedIconW.ret=HICON
ExtractIconA=func
func.ExtractIconA.args=3
func.ExtractIconA.arg.0=HINSTANCE,hInst
func.ExtractIconA.arg.1=LPCSTR,pszExeFileName
func.ExtractIconA.arg.2=UINT,nIconIndex
func.ExtractIconA.ret=HICON
ExtractIconExA=func
func.ExtractIconExA.args=5
func.ExtractIconExA.arg.0=LPCSTR,lpszFile
func.ExtractIconExA.arg.1=int,nIconIndex
func.ExtractIconExA.arg.2=HICON *,phiconLarge
func.ExtractIconExA.arg.3=HICON *,phiconSmall
func.ExtractIconExA.arg.4=UINT,nIcons
func.ExtractIconExA.ret=UINT
ExtractIconExW=func
func.ExtractIconExW.args=5
func.ExtractIconExW.arg.0=LPCWSTR,lpszFile
func.ExtractIconExW.arg.1=int,nIconIndex
func.ExtractIconExW.arg.2=HICON *,phiconLarge
func.ExtractIconExW.arg.3=HICON *,phiconSmall
func.ExtractIconExW.arg.4=UINT,nIcons
func.ExtractIconExW.ret=UINT
ExtractIconW=func
func.ExtractIconW.args=3
func.ExtractIconW.arg.0=HINSTANCE,hInst
func.ExtractIconW.arg.1=LPCWSTR,pszExeFileName
func.ExtractIconW.arg.2=UINT,nIconIndex
func.ExtractIconW.ret=HICON
FindExecutableA=func
func.FindExecutableA.args=3
func.FindExecutableA.arg.0=LPCSTR,lpFile
func.FindExecutableA.arg.1=LPCSTR,lpDirectory
func.FindExecutableA.arg.2=LPSTR,lpResult
func.FindExecutableA.ret=HINSTANCE
FindExecutableW=func
func.FindExecutableW.args=3
func.FindExecutableW.arg.0=LPCWSTR,lpFile
func.FindExecutableW.arg.1=LPCWSTR,lpDirectory
func.FindExecutableW.arg.2=LPWSTR,lpResult
func.FindExecutableW.ret=HINSTANCE
InitNetworkAddressControl=func
func.InitNetworkAddressControl.args=0
func.InitNetworkAddressControl.ret=BOOL
IsLFNDriveA=func
func.IsLFNDriveA.args=1
func.IsLFNDriveA.arg.0=LPCSTR,pszPath
func.IsLFNDriveA.ret=BOOL
IsLFNDriveW=func
func.IsLFNDriveW.args=1
func.IsLFNDriveW.arg.0=LPCWSTR,pszPath
func.IsLFNDriveW.ret=BOOL
SHAppBarMessage=func
func.SHAppBarMessage.args=2
func.SHAppBarMessage.arg.0=DWORD,dwMessage
func.SHAppBarMessage.arg.1=PAPPBARDATA,pData
func.SHAppBarMessage.ret=UINT_PTR
SHCreateProcessAsUserW=func
func.SHCreateProcessAsUserW.args=1
func.SHCreateProcessAsUserW.arg.0=PSHCREATEPROCESSINFOW,pscpi
func.SHCreateProcessAsUserW.ret=BOOL
SHEmptyRecycleBinA=func
func.SHEmptyRecycleBinA.args=3
func.SHEmptyRecycleBinA.arg.0=HWND,hwnd
func.SHEmptyRecycleBinA.arg.1=LPCSTR,pszRootPath
func.SHEmptyRecycleBinA.arg.2=DWORD,dwFlags
func.SHEmptyRecycleBinA.ret=HRESULT
SHEmptyRecycleBinW=func
func.SHEmptyRecycleBinW.args=3
func.SHEmptyRecycleBinW.arg.0=HWND,hwnd
func.SHEmptyRecycleBinW.arg.1=LPCWSTR,pszRootPath
func.SHEmptyRecycleBinW.arg.2=DWORD,dwFlags
func.SHEmptyRecycleBinW.ret=HRESULT
SHEvaluateSystemCommandTemplate=func
func.SHEvaluateSystemCommandTemplate.args=4
func.SHEvaluateSystemCommandTemplate.arg.0=PCWSTR,pszCmdTemplate
func.SHEvaluateSystemCommandTemplate.arg.1=PWSTR *,ppszApplication
func.SHEvaluateSystemCommandTemplate.arg.2=PWSTR *,ppszCommandLine
func.SHEvaluateSystemCommandTemplate.arg.3=PWSTR *,ppszParameters
func.SHEvaluateSystemCommandTemplate.ret=HRESULT
SHFileOperationA=func
func.SHFileOperationA.args=1
func.SHFileOperationA.arg.0=LPSHFILEOPSTRUCTA,lpFileOp
func.SHFileOperationA.ret=int
SHFileOperationW=func
func.SHFileOperationW.args=1
func.SHFileOperationW.arg.0=LPSHFILEOPSTRUCTW,lpFileOp
func.SHFileOperationW.ret=int
SHFreeNameMappings=func
func.SHFreeNameMappings.args=1
func.SHFreeNameMappings.arg.0=HANDLE,hNameMappings
func.SHFreeNameMappings.ret=void
SHGetDiskFreeSpaceExA=func
func.SHGetDiskFreeSpaceExA.args=4
func.SHGetDiskFreeSpaceExA.arg.0=LPCSTR,pszDirectoryName
func.SHGetDiskFreeSpaceExA.arg.1=ULARGE_INTEGER *,pulFreeBytesAvailableToCaller
func.SHGetDiskFreeSpaceExA.arg.2=ULARGE_INTEGER *,pulTotalNumberOfBytes
func.SHGetDiskFreeSpaceExA.arg.3=ULARGE_INTEGER *,pulTotalNumberOfFreeBytes
func.SHGetDiskFreeSpaceExA.ret=BOOL
SHGetDiskFreeSpaceExW=func
func.SHGetDiskFreeSpaceExW.args=4
func.SHGetDiskFreeSpaceExW.arg.0=LPCWSTR,pszDirectoryName
func.SHGetDiskFreeSpaceExW.arg.1=ULARGE_INTEGER *,pulFreeBytesAvailableToCaller
func.SHGetDiskFreeSpaceExW.arg.2=ULARGE_INTEGER *,pulTotalNumberOfBytes
func.SHGetDiskFreeSpaceExW.arg.3=ULARGE_INTEGER *,pulTotalNumberOfFreeBytes
func.SHGetDiskFreeSpaceExW.ret=BOOL
SHGetFileInfoA=func
func.SHGetFileInfoA.args=5
func.SHGetFileInfoA.arg.0=LPCSTR,pszPath
func.SHGetFileInfoA.arg.1=DWORD,dwFileAttributes
func.SHGetFileInfoA.arg.2=SHFILEINFOA *,psfi
func.SHGetFileInfoA.arg.3=UINT,cbFileInfo
func.SHGetFileInfoA.arg.4=UINT,uFlags
func.SHGetFileInfoA.ret=DWORD_PTR
SHGetFileInfoW=func
func.SHGetFileInfoW.args=5
func.SHGetFileInfoW.arg.0=LPCWSTR,pszPath
func.SHGetFileInfoW.arg.1=DWORD,dwFileAttributes
func.SHGetFileInfoW.arg.2=SHFILEINFOW *,psfi
func.SHGetFileInfoW.arg.3=UINT,cbFileInfo
func.SHGetFileInfoW.arg.4=UINT,uFlags
func.SHGetFileInfoW.ret=DWORD_PTR
SHGetImageList=func
func.SHGetImageList.args=3
func.SHGetImageList.arg.0=int,iImageList
func.SHGetImageList.arg.1=REFIID,riid
func.SHGetImageList.arg.2=void **,ppvObj
func.SHGetImageList.ret=HRESULT
SHGetLocalizedName=func
func.SHGetLocalizedName.args=4
func.SHGetLocalizedName.arg.0=PCWSTR,pszPath
func.SHGetLocalizedName.arg.1=PWSTR,pszResModule
func.SHGetLocalizedName.arg.2=UINT,cch
func.SHGetLocalizedName.arg.3=int *,pidsRes
func.SHGetLocalizedName.ret=HRESULT
SHGetNewLinkInfoA=func
func.SHGetNewLinkInfoA.args=5
func.SHGetNewLinkInfoA.arg.0=LPCSTR,pszLinkTo
func.SHGetNewLinkInfoA.arg.1=LPCSTR,pszDir
func.SHGetNewLinkInfoA.arg.2=LPSTR,pszName
func.SHGetNewLinkInfoA.arg.3=BOOL *,pfMustCopy
func.SHGetNewLinkInfoA.arg.4=UINT,uFlags
func.SHGetNewLinkInfoA.ret=BOOL
SHGetNewLinkInfoW=func
func.SHGetNewLinkInfoW.args=5
func.SHGetNewLinkInfoW.arg.0=LPCWSTR,pszLinkTo
func.SHGetNewLinkInfoW.arg.1=LPCWSTR,pszDir
func.SHGetNewLinkInfoW.arg.2=LPWSTR,pszName
func.SHGetNewLinkInfoW.arg.3=BOOL *,pfMustCopy
func.SHGetNewLinkInfoW.arg.4=UINT,uFlags
func.SHGetNewLinkInfoW.ret=BOOL
SHGetPropertyStoreForWindow=func
func.SHGetPropertyStoreForWindow.args=3
func.SHGetPropertyStoreForWindow.arg.0=HWND,hwnd
func.SHGetPropertyStoreForWindow.arg.1=REFIID,riid
func.SHGetPropertyStoreForWindow.arg.2=void **,ppv
func.SHGetPropertyStoreForWindow.ret=HRESULT
SHGetStockIconInfo=func
func.SHGetStockIconInfo.args=3
func.SHGetStockIconInfo.arg.0=SHSTOCKICONID,siid
func.SHGetStockIconInfo.arg.1=UINT,uFlags
func.SHGetStockIconInfo.arg.2=SHSTOCKICONINFO *,psii
func.SHGetStockIconInfo.ret=HRESULT
SHInvokePrinterCommandA=func
func.SHInvokePrinterCommandA.args=5
func.SHInvokePrinterCommandA.arg.0=HWND,hwnd
func.SHInvokePrinterCommandA.arg.1=UINT,uAction
func.SHInvokePrinterCommandA.arg.2=LPCSTR,lpBuf1
func.SHInvokePrinterCommandA.arg.3=LPCSTR,lpBuf2
func.SHInvokePrinterCommandA.arg.4=BOOL,fModal
func.SHInvokePrinterCommandA.ret=BOOL
SHInvokePrinterCommandW=func
func.SHInvokePrinterCommandW.args=5
func.SHInvokePrinterCommandW.arg.0=HWND,hwnd
func.SHInvokePrinterCommandW.arg.1=UINT,uAction
func.SHInvokePrinterCommandW.arg.2=LPCWSTR,lpBuf1
func.SHInvokePrinterCommandW.arg.3=LPCWSTR,lpBuf2
func.SHInvokePrinterCommandW.arg.4=BOOL,fModal
func.SHInvokePrinterCommandW.ret=BOOL
SHIsFileAvailableOffline=func
func.SHIsFileAvailableOffline.args=2
func.SHIsFileAvailableOffline.arg.0=PCWSTR,pwszPath
func.SHIsFileAvailableOffline.arg.1=DWORD *,pdwStatus
func.SHIsFileAvailableOffline.ret=HRESULT
SHLoadNonloadedIconOverlayIdentifiers=func
func.SHLoadNonloadedIconOverlayIdentifiers.args=0
func.SHLoadNonloadedIconOverlayIdentifiers.ret=HRESULT
SHQueryRecycleBinA=func
func.SHQueryRecycleBinA.args=2
func.SHQueryRecycleBinA.arg.0=LPCSTR,pszRootPath
func.SHQueryRecycleBinA.arg.1=LPSHQUERYRBINFO,pSHQueryRBInfo
func.SHQueryRecycleBinA.ret=HRESULT
SHQueryRecycleBinW=func
func.SHQueryRecycleBinW.args=2
func.SHQueryRecycleBinW.arg.0=LPCWSTR,pszRootPath
func.SHQueryRecycleBinW.arg.1=LPSHQUERYRBINFO,pSHQueryRBInfo
func.SHQueryRecycleBinW.ret=HRESULT
SHQueryUserNotificationState=func
func.SHQueryUserNotificationState.args=1
func.SHQueryUserNotificationState.arg.0=QUERY_USER_NOTIFICATION_STATE *,pquns
func.SHQueryUserNotificationState.ret=HRESULT
SHRemoveLocalizedName=func
func.SHRemoveLocalizedName.args=1
func.SHRemoveLocalizedName.arg.0=PCWSTR,pszPath
func.SHRemoveLocalizedName.ret=HRESULT
SHSetLocalizedName=func
func.SHSetLocalizedName.args=3
func.SHSetLocalizedName.arg.0=PCWSTR,pszPath
func.SHSetLocalizedName.arg.1=PCWSTR,pszResModule
func.SHSetLocalizedName.arg.2=int,idsRes
func.SHSetLocalizedName.ret=HRESULT
ShellAboutA=func
func.ShellAboutA.args=4
func.ShellAboutA.arg.0=HWND,hWnd
func.ShellAboutA.arg.1=LPCSTR,szApp
func.ShellAboutA.arg.2=LPCSTR,szOtherStuff
func.ShellAboutA.arg.3=HICON,hIcon
func.ShellAboutA.ret=INT
ShellAboutW=func
func.ShellAboutW.args=4
func.ShellAboutW.arg.0=HWND,hWnd
func.ShellAboutW.arg.1=LPCWSTR,szApp
func.ShellAboutW.arg.2=LPCWSTR,szOtherStuff
func.ShellAboutW.arg.3=HICON,hIcon
func.ShellAboutW.ret=INT
ShellExecuteA=func
func.ShellExecuteA.args=6
func.ShellExecuteA.arg.0=HWND,hwnd
func.ShellExecuteA.arg.1=LPCSTR,lpOperation
func.ShellExecuteA.arg.2=LPCSTR,lpFile
func.ShellExecuteA.arg.3=LPCSTR,lpParameters
func.ShellExecuteA.arg.4=LPCSTR,lpDirectory
func.ShellExecuteA.arg.5=INT,nShowCmd
func.ShellExecuteA.ret=HINSTANCE
ShellExecuteExA=func
func.ShellExecuteExA.args=1
func.ShellExecuteExA.arg.0=SHELLEXECUTEINFOA *,pExecInfo
func.ShellExecuteExA.ret=BOOL
ShellExecuteExW=func
func.ShellExecuteExW.args=1
func.ShellExecuteExW.arg.0=SHELLEXECUTEINFOW *,pExecInfo
func.ShellExecuteExW.ret=BOOL
ShellExecuteW=func
func.ShellExecuteW.args=6
func.ShellExecuteW.arg.0=HWND,hwnd
func.ShellExecuteW.arg.1=LPCWSTR,lpOperation
func.ShellExecuteW.arg.2=LPCWSTR,lpFile
func.ShellExecuteW.arg.3=LPCWSTR,lpParameters
func.ShellExecuteW.arg.4=LPCWSTR,lpDirectory
func.ShellExecuteW.arg.5=INT,nShowCmd
func.ShellExecuteW.ret=HINSTANCE
ShellMessageBoxA=func
func.ShellMessageBoxA.args=6
func.ShellMessageBoxA.arg.0=HINSTANCE,hAppInst
func.ShellMessageBoxA.arg.1=HWND,hWnd
func.ShellMessageBoxA.arg.2=LPCSTR,lpcText
func.ShellMessageBoxA.arg.3=LPCSTR,lpcTitle
func.ShellMessageBoxA.arg.4=UINT,fuStyle
func.ShellMessageBoxA.arg.5=,...
func.ShellMessageBoxA.ret=int
ShellMessageBoxW=func
func.ShellMessageBoxW.args=6
func.ShellMessageBoxW.arg.0=HINSTANCE,hAppInst
func.ShellMessageBoxW.arg.1=HWND,hWnd
func.ShellMessageBoxW.arg.2=LPCWSTR,lpcText
func.ShellMessageBoxW.arg.3=LPCWSTR,lpcTitle
func.ShellMessageBoxW.arg.4=UINT,fuStyle
func.ShellMessageBoxW.arg.5=,...
func.ShellMessageBoxW.ret=int
Shell_NotifyIconA=func
func.Shell_NotifyIconA.args=2
func.Shell_NotifyIconA.arg.0=DWORD,dwMessage
func.Shell_NotifyIconA.arg.1=PNOTIFYICONDATAA,lpData
func.Shell_NotifyIconA.ret=BOOL
Shell_NotifyIconGetRect=func
func.Shell_NotifyIconGetRect.args=2
func.Shell_NotifyIconGetRect.arg.0=const NOTIFYICONIDENTIFIER *,identifier
func.Shell_NotifyIconGetRect.arg.1=RECT *,iconLocation
func.Shell_NotifyIconGetRect.ret=HRESULT
Shell_NotifyIconW=func
func.Shell_NotifyIconW.args=2
func.Shell_NotifyIconW.arg.0=DWORD,dwMessage
func.Shell_NotifyIconW.arg.1=PNOTIFYICONDATAW,lpData
func.Shell_NotifyIconW.ret=BOOL