From e7e430d2f53f0b89fd68efcdc215c13ba98e70a0 Mon Sep 17 00:00:00 2001 From: marco Date: Sun, 3 Feb 2008 21:14:38 +0000 Subject: [PATCH] * getfileinfoex + small delphi compat fix (tbstr) git-svn-id: trunk@10195 - --- packages/winunits-base/src/activex.pp | 4 ++-- rtl/win/wininc/ascdef.inc | 1 + rtl/win/wininc/ascfun.inc | 1 + rtl/win/wininc/struct.inc | 1 + rtl/win/wininc/unidef.inc | 1 + rtl/win/wininc/unifun.inc | 1 + 6 files changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/winunits-base/src/activex.pp b/packages/winunits-base/src/activex.pp index 1fae7de98b..8b0b588c91 100644 --- a/packages/winunits-base/src/activex.pp +++ b/packages/winunits-base/src/activex.pp @@ -1771,7 +1771,7 @@ TYPE 72 : ( pvarVal : ^PROPVARIANT ); end; PROPVARIANT=TPROPVARIANT; - + TagPROPVARIANT = TPROPVARIANT; // Unknwn.idl // IUnknown is in classesh.inc @@ -3723,7 +3723,7 @@ type const oleaut32dll = 'oleaut32.dll'; - function SysAllocString(psz: pointer): Integer; stdcall; external oleaut32dll name 'SysAllocString'; + function SysAllocString(psz: pointer): TBStr; stdcall; external oleaut32dll name 'SysAllocString'; function SysAllocStringLen(psz: pointer; len:dword): Integer; stdcall; external oleaut32dll name 'SysAllocStringLen'; procedure SysFreeString(bstr:pointer); stdcall; external oleaut32dll name 'SysFreeString'; function SysStringLen(bstr:pointer):UINT; stdcall; external oleaut32dll name 'SysStringLen'; diff --git a/rtl/win/wininc/ascdef.inc b/rtl/win/wininc/ascdef.inc index 6371afc43f..646525a09d 100644 --- a/rtl/win/wininc/ascdef.inc +++ b/rtl/win/wininc/ascdef.inc @@ -117,6 +117,7 @@ function QueryDosDevice(lpDeviceName:LPCSTR; lpTargetPath:LPSTR; ucchMax:DWORD): function CreateFile(lpFileName:LPCSTR; dwDesiredAccess:DWORD; dwShareMode:DWORD; lpSecurityAttributes:LPSECURITY_ATTRIBUTES; dwCreationDisposition:DWORD;dwFlagsAndAttributes:DWORD; hTemplateFile:HANDLE):HANDLE; external 'kernel32' name 'CreateFileA'; function SetFileAttributes(lpFileName:LPCSTR; dwFileAttributes:DWORD):WINBOOL; external 'kernel32' name 'SetFileAttributesA'; function GetFileAttributes(lpFileName:LPCSTR):DWORD; external 'kernel32' name 'GetFileAttributesA'; +function GetFileAttributesEx(lpFileName:LPCSTR; fInfoLevelId:TGET_FILEEX_INFO_LEVELS; lpFileInformation:pointer):BOOL;stdcall; external 'kernel32' name 'GetFileAttributesExA'; function GetCompressedFileSize(lpFileName:LPCSTR; lpFileSizeHigh:LPDWORD):DWORD; external 'kernel32' name 'GetCompressedFileSizeA'; function DeleteFile(lpFileName:LPCSTR):WINBOOL; external 'kernel32' name 'DeleteFileA'; function SearchPath(lpPath:LPCSTR; lpFileName:LPCSTR; lpExtension:LPCSTR; nBufferLength:DWORD; lpBuffer:LPSTR;lpFilePart:LPSTR):DWORD; external 'kernel32' name 'SearchPathA'; diff --git a/rtl/win/wininc/ascfun.inc b/rtl/win/wininc/ascfun.inc index 4452680653..b18db2e953 100644 --- a/rtl/win/wininc/ascfun.inc +++ b/rtl/win/wininc/ascfun.inc @@ -116,6 +116,7 @@ function QueryDosDeviceA(lpDeviceName:LPCSTR; lpTargetPath:LPSTR; ucchMax:DWORD) function CreateFileA(lpFileName:LPCSTR; dwDesiredAccess:DWORD; dwShareMode:DWORD; lpSecurityAttributes:LPSECURITY_ATTRIBUTES; dwCreationDisposition:DWORD;dwFlagsAndAttributes:DWORD; hTemplateFile:HANDLE):HANDLE; external 'kernel32' name 'CreateFileA'; function SetFileAttributesA(lpFileName:LPCSTR; dwFileAttributes:DWORD):WINBOOL; external 'kernel32' name 'SetFileAttributesA'; function GetFileAttributesA(lpFileName:LPCSTR):DWORD; external 'kernel32' name 'GetFileAttributesA'; +function GetFileAttributesExA(lpFileName:LPCSTR; fInfoLevelId:GET_FILEEX_INFO_LEVELS; lpFileInformation:pointer):BOOL;stdcall; external 'kernel32' name 'GetFileAttributesExA'; function GetCompressedFileSizeA(lpFileName:LPCSTR; lpFileSizeHigh:LPDWORD):DWORD; external 'kernel32' name 'GetCompressedFileSizeA'; function DeleteFileA(lpFileName:LPCSTR):WINBOOL; external 'kernel32' name 'DeleteFileA'; function SearchPathA(lpPath:LPCSTR; lpFileName:LPCSTR; lpExtension:LPCSTR; nBufferLength:DWORD; lpBuffer:LPSTR;lpFilePart:LPSTR):DWORD; external 'kernel32' name 'SearchPathA'; diff --git a/rtl/win/wininc/struct.inc b/rtl/win/wininc/struct.inc index b379d9ab02..61caf4cd0e 100644 --- a/rtl/win/wininc/struct.inc +++ b/rtl/win/wininc/struct.inc @@ -7211,6 +7211,7 @@ type _GET_FILEEX_INFO_LEVELS = (GetFileExInfoStandard, GetFileExMaxInfoLevel); GET_FILEEX_INFO_LEVELS = _GET_FILEEX_INFO_LEVELS; TGetFileExInfoLevels = GET_FILEEX_INFO_LEVELS; + TGet_FileEx_Info_Levels = GET_FILEEX_INFO_LEVELS; tagBSTRBLOB = record cbsize : ULONG; diff --git a/rtl/win/wininc/unidef.inc b/rtl/win/wininc/unidef.inc index 2e523ab872..bc1a0407d4 100644 --- a/rtl/win/wininc/unidef.inc +++ b/rtl/win/wininc/unidef.inc @@ -116,6 +116,7 @@ function QueryDosDevice(lpDeviceName:LPCWSTR; lpTargetPath:LPWSTR; ucchMax:DWORD function CreateFile(lpFileName:LPCWSTR; dwDesiredAccess:DWORD; dwShareMode:DWORD; lpSecurityAttributes:LPSECURITY_ATTRIBUTES; dwCreationDisposition:DWORD;dwFlagsAndAttributes:DWORD; hTemplateFile:HANDLE):HANDLE; external 'kernel32' name 'CreateFileW'; function SetFileAttributes(lpFileName:LPCWSTR; dwFileAttributes:DWORD):WINBOOL; external 'kernel32' name 'SetFileAttributesW'; function GetFileAttributes(lpFileName:LPCWSTR):DWORD; external 'kernel32' name 'GetFileAttributesW'; +function GetFileAttributesExW(lpFileName:LPCWSTR; fInfoLevelId:GET_FILEEX_INFO_LEVELS; lpFileInformation:LPVOID):BOOL; external 'kernel32' name 'GetFileAttributesExW'; function GetCompressedFileSize(lpFileName:LPCWSTR; lpFileSizeHigh:LPDWORD):DWORD; external 'kernel32' name 'GetCompressedFileSizeW'; function DeleteFile(lpFileName:LPCWSTR):WINBOOL; external 'kernel32' name 'DeleteFileW'; function SearchPath(lpPath:LPCWSTR; lpFileName:LPCWSTR; lpExtension:LPCWSTR; nBufferLength:DWORD; lpBuffer:LPWSTR;lpFilePart:LPWSTR):DWORD; external 'kernel32' name 'SearchPathW'; diff --git a/rtl/win/wininc/unifun.inc b/rtl/win/wininc/unifun.inc index f6eed28f10..49def4c5cd 100644 --- a/rtl/win/wininc/unifun.inc +++ b/rtl/win/wininc/unifun.inc @@ -116,6 +116,7 @@ function QueryDosDeviceW(lpDeviceName:LPCWSTR; lpTargetPath:LPWSTR; ucchMax:DWOR function CreateFileW(lpFileName:LPCWSTR; dwDesiredAccess:DWORD; dwShareMode:DWORD; lpSecurityAttributes:LPSECURITY_ATTRIBUTES; dwCreationDisposition:DWORD;dwFlagsAndAttributes:DWORD; hTemplateFile:HANDLE):HANDLE; external 'kernel32' name 'CreateFileW'; function SetFileAttributesW(lpFileName:LPCWSTR; dwFileAttributes:DWORD):WINBOOL; external 'kernel32' name 'SetFileAttributesW'; function GetFileAttributesW(lpFileName:LPCWSTR):DWORD; external 'kernel32' name 'GetFileAttributesW'; +function GetFileAttributesExW(lpFileName:LPCWSTR; fInfoLevelId:GET_FILEEX_INFO_LEVELS; lpFileInformation:LPVOID):BOOL; stdcall; external 'kernel32' name 'GetFileAttributesExW'; function GetCompressedFileSizeW(lpFileName:LPCWSTR; lpFileSizeHigh:LPDWORD):DWORD; external 'kernel32' name 'GetCompressedFileSizeW'; function DeleteFileW(lpFileName:LPCWSTR):WINBOOL; external 'kernel32' name 'DeleteFileW'; function SearchPathW(lpPath:LPCWSTR; lpFileName:LPCWSTR; lpExtension:LPCWSTR; nBufferLength:DWORD; lpBuffer:LPWSTR;lpFilePart:LPWSTR):DWORD; external 'kernel32' name 'SearchPathW';