From 2ae36e271599ea723348132dd7c8a7e139162d18 Mon Sep 17 00:00:00 2001 From: xj qian <qianxj15@sina.com> Date: 星期一, 01 七月 2024 13:16:02 +0800 Subject: [PATCH] update print preview --- jrj/xframe/win32/xfile.hpp | 73 +++++++++++++++++++----------------- 1 files changed, 38 insertions(+), 35 deletions(-) diff --git a/jrj/xframe/win32/xfile.hpp b/jrj/xframe/win32/xfile.hpp index 37e1bb1..fc74fd5 100644 --- a/jrj/xframe/win32/xfile.hpp +++ b/jrj/xframe/win32/xfile.hpp @@ -3,6 +3,7 @@ #include "system/base.hpp" #include "win.hpp" +#if _XWIN #define CALLBACK __stdcall #define MAX_PATH 260 @@ -72,81 +73,83 @@ } WIN32_FIND_DATAW; - extern "C" { - namespace win32 - { - bool WINAPI GetSaveFileNameW(OPENFILENAMEW&);//native from "comdlg32.dll" alias "GetSaveFileNameW"; - bool WINAPI GetOpenFileNameW(OPENFILENAMEW&);//native from "comdlg32.dll" alias "GetOpenFileNameW"; + //namespace win32 + //{ + bool WINAPI GetSaveFileNameW(OPENFILENAMEW*);//native from "comdlg32.dll" alias "GetSaveFileNameW"; + bool WINAPI GetOpenFileNameW(OPENFILENAMEW*);//native from "comdlg32.dll" alias "GetOpenFileNameW"; - HANDLE WINAPI FindFirstFileW(const WCHAR* lpFileName, WIN32_FIND_DATAW& lpFindFileData); //native from "kernel32.dll" alias "FindFirstFileW"; //根据文件名查找文件,一旦不再需要,应该用FindClose函数关闭这个句柄 - HANDLE WINAPI FindNextFileW(HANDLE hFindFile, WIN32_FIND_DATAW& lpFindFileData); //native from "kernel32.dll" alias "FindNextFileW"; //继续查找FindFirstFile函数搜索后的文件 ,HANDLE hFindFile搜索的文件句柄 函数执行的时候搜索的是此句柄的下一文件。非零表示成功,零表示失败。如不再有与指定条件相符的文件,会将GetLastError设置成ERROR_NO_MORE_FILES + HANDLE WINAPI FindFirstFileW(const WCHAR* lpFileName, WIN32_FIND_DATAW* lpFindFileData); //native from "kernel32.dll" alias "FindFirstFileW"; //根据文件名查找文件,一旦不再需要,应该用FindClose函数关闭这个句柄 + BOOL WINAPI FindNextFileW(HANDLE hFindFile, WIN32_FIND_DATAW* lpFindFileData); //native from "kernel32.dll" alias "FindNextFileW"; //继续查找FindFirstFile函数搜索后的文件 ,HANDLE hFindFile搜索的文件句柄 函数执行的时候搜索的是此句柄的下一文件。非零表示成功,零表示失败。如不再有与指定条件相符的文件,会将GetLastError设置成ERROR_NO_MORE_FILES bool WINAPI FindClose(HANDLE hFindFile); //native from "kernel32.dll" alias "FindClose"; //关闭由FindFirstFile函数创建的一个搜索句柄。返回非零表示成功,零表示失败。会设置GetLastError - int WINAPI CreateFileW(LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile); //native from "kernel32.dll" alias "CreateFileW"; - int WINAPI OpenFile(LPCSTR lpFileName, OFSTRUCT lpReOpenBuff, UINT wStyle); //native from "kernel32.dll" alias "OpenFile"; + HANDLE WINAPI CreateFileW(LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile); //native from "kernel32.dll" alias "CreateFileW"; + HFILE WINAPI OpenFile(LPCSTR lpFileName, OFSTRUCT* lpReOpenBuff, UINT wStyle); //native from "kernel32.dll" alias "OpenFile"; int WINAPI SetFilePointer(HANDLE hFile, LONG lDistanceToMove, LONG* lpDistanceToMoveHigh, DWORD dwMoveMethod); //native from "kernel32.dll" alias "SetFilePointer"; int WINAPI ReadFile(HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped); //native from "kernel32.dll" alias "ReadFile"; int WINAPI WriteFile(HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped); //native from "kernel32.dll" alias "ReadFile"; int WINAPI CloseHandle(HANDLE hFile); //native from "kernel32.dll" alias "CloseHandle"; - int WINAPI GetFileSize(HANDLE hFile, int lpFileSizeHigh); //native from "kernel32.dll" alias "GetFileSize"; - } + int WINAPI GetFileSize(HANDLE hFile, DWORD* lpFileSizeHigh); //native from "kernel32.dll" alias "GetFileSize"; + //} } +#endif + class xfile { public: - static bool WINAPI GetSaveFileName(OPENFILENAMEW& OpenFileName) + static bool GetSaveFileName(OPENFILENAMEW& OpenFileName) { - return win32::GetSaveFileNameW(OpenFileName); + return ::GetSaveFileNameW(&OpenFileName); } - static bool WINAPI GetOpenFileName(OPENFILENAMEW& SaveFileName) + static bool GetOpenFileName(OPENFILENAMEW& SaveFileName) { - return win32::GetOpenFileNameW(SaveFileName); + return ::GetOpenFileNameW(&SaveFileName); } - static HANDLE WINAPI FindFirstFile(const WCHAR* lpFileName, WIN32_FIND_DATAW& lpFindFileData) + static HANDLE FindFirstFile(const WCHAR* lpFileName, WIN32_FIND_DATAW& lpFindFileData) { - return win32::FindFirstFileW(lpFileName, lpFindFileData); + return ::FindFirstFileW(lpFileName, &lpFindFileData); } - static HANDLE WINAPI FindNextFile(HANDLE hFindFile, WIN32_FIND_DATAW& lpFindFileData) + static BOOL FindNextFile(HANDLE hFindFile, WIN32_FIND_DATAW& lpFindFileData) { - return win32::FindNextFileW(hFindFile, lpFindFileData); + return ::FindNextFileW(hFindFile, &lpFindFileData); } - static bool WINAPI FindClose(HANDLE hFindFile) + static bool FindClose(HANDLE hFindFile) { - return win32::FindClose(hFindFile); + return ::FindClose(hFindFile); } - static int WINAPI CreateFile(LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile) + static HANDLE CreateFile(LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile) { - return win32::CreateFileW(lpFileName, dwDesiredAccess, dwShareMode, lpSecurityAttributes, dwCreationDisposition, dwFlagsAndAttributes, hTemplateFile); + return ::CreateFileW(lpFileName, dwDesiredAccess, dwShareMode, lpSecurityAttributes, dwCreationDisposition, dwFlagsAndAttributes, hTemplateFile); } - static int WINAPI OpenFile(LPCSTR lpFileName, OFSTRUCT lpReOpenBuff, UINT wStyle) + static HFILE OpenFile(LPCSTR lpFileName, OFSTRUCT& lpReOpenBuff, UINT wStyle) { - return win32::OpenFile(lpFileName, lpReOpenBuff, wStyle); + return ::OpenFile(lpFileName, &lpReOpenBuff, wStyle); } - static int WINAPI SetFilePointer(HANDLE hFile, LONG lDistanceToMove, LONG* lpDistanceToMoveHigh, DWORD dwMoveMethod) + static int SetFilePointer(HANDLE hFile, LONG lDistanceToMove, LONG* lpDistanceToMoveHigh, DWORD dwMoveMethod) { - return win32::SetFilePointer(hFile, lDistanceToMove, lpDistanceToMoveHigh, dwMoveMethod); + return ::SetFilePointer(hFile, lDistanceToMove, lpDistanceToMoveHigh, dwMoveMethod); } - static int WINAPI ReadFile(HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped) + static int ReadFile(HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped) { - return win32::ReadFile(hFile, lpBuffer, nNumberOfBytesToRead, lpNumberOfBytesRead, lpOverlapped); + return ::ReadFile(hFile, lpBuffer, nNumberOfBytesToRead, lpNumberOfBytesRead, lpOverlapped); } - static int WINAPI WriteFile(HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped) + static int WriteFile(HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped) { - return win32::WriteFile(hFile, lpBuffer, nNumberOfBytesToRead, lpNumberOfBytesRead, lpOverlapped); + return ::WriteFile(hFile, lpBuffer, nNumberOfBytesToRead, lpNumberOfBytesRead, lpOverlapped); } - static int WINAPI CloseHandle(HANDLE hFile) + static int CloseHandle(HANDLE hFile) { - return win32::CloseHandle(hFile); + return ::CloseHandle(hFile); } - static int WINAPI GetFileSize(HANDLE hFile, int lpFileSizeHigh) + static int GetFileSize(HANDLE hFile, DWORD& lpFileSizeHigh) { - return win32::GetFileSize(hFile, lpFileSizeHigh); + return ::GetFileSize(hFile, &lpFileSizeHigh); } }; + -- Gitblit v1.9.3