' PBXB64 V15 declarations for shell32.inc
#IF NOT %DEF(PBX_SHELL32_PBI)
#DEFINE PBX_SHELL32_PBI
#include once "win_types.inc"
#include once "win_consts.inc"

DECLARE FUNCTION ShellExecuteA LIB "shell32.dll" ALIAS "ShellExecuteA" (BYVAL hwnd AS QUAD, BYVAL lpOperation AS ASCIIZ PTR, BYVAL lpFile AS ASCIIZ PTR, BYVAL lpParameters AS ASCIIZ PTR, BYVAL lpDirectory AS ASCIIZ PTR, BYVAL nShowCmd AS LONG) AS QUAD
DECLARE FUNCTION ShellExecuteW LIB "shell32.dll" ALIAS "ShellExecuteW" (BYVAL hwnd AS QUAD, BYVAL lpOperation AS WSTRING, BYVAL lpFile AS WSTRING, BYVAL lpParameters AS WSTRING, BYVAL lpDirectory AS WSTRING, BYVAL nShowCmd AS LONG) AS QUAD
DECLARE FUNCTION ShellExecuteExA LIB "shell32.dll" ALIAS "ShellExecuteExA" (BYVAL pExecInfo AS QUAD) AS LONG
DECLARE FUNCTION ShellExecuteExW LIB "shell32.dll" ALIAS "ShellExecuteExW" (BYVAL pExecInfo AS QUAD) AS LONG
DECLARE FUNCTION SHGetFolderPathA LIB "shell32.dll" ALIAS "SHGetFolderPathA" (BYVAL hwnd AS QUAD, BYVAL csidl AS LONG, BYVAL hToken AS QUAD, BYVAL dwFlags AS DWORD, BYVAL pszPath AS QUAD) AS LONG
DECLARE FUNCTION SHGetFolderPathW LIB "shell32.dll" ALIAS "SHGetFolderPathW" (BYVAL hwnd AS QUAD, BYVAL csidl AS LONG, BYVAL hToken AS QUAD, BYVAL dwFlags AS DWORD, BYVAL pszPath AS QUAD) AS LONG
DECLARE FUNCTION CommandLineToArgvW LIB "shell32.dll" ALIAS "CommandLineToArgvW" (BYVAL lpCmdLine AS WSTRING, BYVAL pNumArgs AS QUAD) AS QUAD
DECLARE FUNCTION DragQueryFileA LIB "shell32.dll" ALIAS "DragQueryFileA" (BYVAL hDrop AS QUAD, BYVAL iFile AS LONG, BYVAL lpszFile AS QUAD, BYVAL cch AS LONG) AS LONG
DECLARE FUNCTION DragQueryFileW LIB "shell32.dll" ALIAS "DragQueryFileW" (BYVAL hDrop AS QUAD, BYVAL iFile AS LONG, BYVAL lpszFile AS QUAD, BYVAL cch AS LONG) AS LONG
DECLARE SUB DragFinish LIB "shell32.dll" ALIAS "DragFinish" (BYVAL hDrop AS QUAD)

#ENDIF
