From a3268ccbe4e64effd016edf83376ac4a7c1d3ae7 Mon Sep 17 00:00:00 2001
From: LiFan <2308045698@qq.com>
Date: 星期五, 28 六月 2024 12:24:59 +0800
Subject: [PATCH] update

---
 jrj/xframe/win32/xfile.hpp |  114 ++++++++++++++++++++-------------------------------------
 1 files changed, 40 insertions(+), 74 deletions(-)

diff --git a/jrj/xframe/win32/xfile.hpp b/jrj/xframe/win32/xfile.hpp
index aa59820..37e1bb1 100644
--- a/jrj/xframe/win32/xfile.hpp
+++ b/jrj/xframe/win32/xfile.hpp
@@ -5,16 +5,6 @@
 
 #define CALLBACK    __stdcall
 #define MAX_PATH    260
-typedef unsigned short WORD;
-typedef unsigned int UINT;
-typedef char CHAR;
-typedef unsigned char BYTE;
-typedef wchar_t WCHAR;
-typedef void* HANDLE;
-typedef const char* LPCSTR;
-typedef void* LPVOID;
-typedef DWORD* LPDWORD;
-typedef const void* LPCVOID;
 
 typedef void* LPSECURITY_ATTRIBUTES;
 typedef UINT_PTR(CALLBACK* LPOFNHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
@@ -81,106 +71,82 @@
 	WCHAR  cAlternateFileName[14];
 } WIN32_FIND_DATAW;
 
-typedef struct _OVERLAPPED {
-	ULONG_PTR Internal;
-	ULONG_PTR InternalHigh;
-	union {
-		struct {
-			DWORD Offset;
-			DWORD OffsetHigh;
-		} DUMMYSTRUCTNAME;
-		LPVOID Pointer;
-	} DUMMYUNIONNAME;
 
-	HANDLE  hEvent;
-} OVERLAPPED, * LPOVERLAPPED;
-
-
-#define OFS_MAXPATHNAME 128
-typedef struct _OFSTRUCT {
-	BYTE cBytes;
-	BYTE fFixedDisk;
-	WORD nErrCode;
-	WORD Reserved1;
-	WORD Reserved2;
-	CHAR szPathName[OFS_MAXPATHNAME];
-} OFSTRUCT;
 
 extern "C"
 {
-	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
-	bool  WINAPI FindClose(HANDLE hFindFile); //native from "kernel32.dll" alias "FindClose";	//关闭由FindFirstFile函数创建的一个搜索句柄。返回非零表示成功,零表示失败。会设置GetLastError 
+		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
+		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";
-	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 GetKeyState(HANDLE nVirtKey); //native from "user32.dll" alias "GetKeyState";
+		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";
+		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";
+	}
 }
 
 class xfile
 {
-	bool  WINAPI GetSaveFileName(OPENFILENAMEW& OpenFileName)
+public:
+	static bool  WINAPI GetSaveFileName(OPENFILENAMEW& OpenFileName)
 	{
-		return GetSaveFileNameW(OpenFileName);
+		return win32::GetSaveFileNameW(OpenFileName);
 	}
-	bool  WINAPI GetOpenFileName(OPENFILENAMEW& SaveFileName)
+	static bool  WINAPI GetOpenFileName(OPENFILENAMEW& SaveFileName)
 	{
-		return GetOpenFileName(SaveFileName);
+		return win32::GetOpenFileNameW(SaveFileName);
 	}
 
-	HANDLE WINAPI FindFirstFile(const WCHAR* lpFileName, WIN32_FIND_DATAW& lpFindFileData)
+	static HANDLE WINAPI FindFirstFile(const WCHAR* lpFileName, WIN32_FIND_DATAW& lpFindFileData)
 	{
-		return FindFirstFileW(lpFileName, lpFindFileData);
+		return win32::FindFirstFileW(lpFileName, lpFindFileData);
 	}
 
-	HANDLE WINAPI FindNextFile(HANDLE hFindFile, WIN32_FIND_DATAW& lpFindFileData)
+	static HANDLE WINAPI FindNextFile(HANDLE hFindFile, WIN32_FIND_DATAW& lpFindFileData)
 	{
-		return FindNextFileW(hFindFile, lpFindFileData);
+		return win32::FindNextFileW(hFindFile, lpFindFileData);
 	}
-	bool  WINAPI FindClose(HANDLE hFindFile)
+	static bool  WINAPI FindClose(HANDLE hFindFile)
 	{
-		return FindClose(hFindFile);
+		return win32::FindClose(hFindFile);
 	}
 
-	int  WINAPI CreateFile(LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile)
+	static int  WINAPI CreateFile(LPCWSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile)
 	{
-		return CreateFileW(lpFileName, dwDesiredAccess, dwShareMode, lpSecurityAttributes, dwCreationDisposition, dwFlagsAndAttributes, hTemplateFile);
+		return win32::CreateFileW(lpFileName, dwDesiredAccess, dwShareMode, lpSecurityAttributes, dwCreationDisposition, dwFlagsAndAttributes, hTemplateFile);
 	}
 
-	int  WINAPI  OpenFile(LPCSTR lpFileName, OFSTRUCT lpReOpenBuff, UINT wStyle)
+	static int  WINAPI  OpenFile(LPCSTR lpFileName, OFSTRUCT lpReOpenBuff, UINT wStyle)
 	{
-		return OpenFile(lpFileName, lpReOpenBuff, wStyle);
+		return win32::OpenFile(lpFileName, lpReOpenBuff, wStyle);
 	}
-	int  WINAPI SetFilePointer(HANDLE hFile, LONG lDistanceToMove, LONG* lpDistanceToMoveHigh, DWORD dwMoveMethod)
+	static int  WINAPI SetFilePointer(HANDLE hFile, LONG lDistanceToMove, LONG* lpDistanceToMoveHigh, DWORD dwMoveMethod)
 	{
-		return SetFilePointer(hFile, lDistanceToMove, lpDistanceToMoveHigh, dwMoveMethod);
+		return win32::SetFilePointer(hFile, lDistanceToMove, lpDistanceToMoveHigh, dwMoveMethod);
 	}
-	int  WINAPI ReadFile(HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped)
+	static int  WINAPI ReadFile(HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped)
 	{
-		return ReadFile(hFile, lpBuffer, nNumberOfBytesToRead, lpNumberOfBytesRead, lpOverlapped);
+		return win32::ReadFile(hFile, lpBuffer, nNumberOfBytesToRead, lpNumberOfBytesRead, lpOverlapped);
 	}
-	int  WINAPI WriteFile(HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped)
+	static int  WINAPI WriteFile(HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped)
 	{
-		return WriteFile(hFile, lpBuffer, nNumberOfBytesToRead, lpNumberOfBytesRead, lpOverlapped);
+		return win32::WriteFile(hFile, lpBuffer, nNumberOfBytesToRead, lpNumberOfBytesRead, lpOverlapped);
 	}
-	int  WINAPI CloseHandle(HANDLE hFile)
+	static int  WINAPI CloseHandle(HANDLE hFile)
 	{
-		return  CloseHandle(hFile);
+		return  win32::CloseHandle(hFile);
 	}
-	int  WINAPI GetFileSize(HANDLE hFile, int lpFileSizeHigh)
+	static int  WINAPI GetFileSize(HANDLE hFile, int lpFileSizeHigh)
 	{
-		return GetFileSize(hFile, lpFileSizeHigh);
-	}
-	int  WINAPI GetKeyState(HANDLE nVirtKey)
-	{
-		return GetKeyState(nVirtKey);
+		return win32::GetFileSize(hFile, lpFileSizeHigh);
 	}
 };

--
Gitblit v1.9.3