16 #ifndef INVALID_HANDLE_VALUE 17 #define INVALID_HANDLE_VALUE (0xFFFFFFFF) 20 #ifndef INVALID_SET_FILE_POINTER 21 #define INVALID_SET_FILE_POINTER ((DWORD)-1) 70 const char* mode_fopen = NULL;
71 DWORD dwDesiredAccess,dwCreationDisposition,dwShareMode,dwFlagsAndAttributes ;
75 dwDesiredAccess = dwShareMode = dwFlagsAndAttributes = 0;
79 dwDesiredAccess = GENERIC_READ;
80 dwCreationDisposition = OPEN_EXISTING;
81 dwShareMode = FILE_SHARE_READ;
86 dwDesiredAccess = GENERIC_WRITE | GENERIC_READ;
87 dwCreationDisposition = OPEN_EXISTING;
92 dwDesiredAccess = GENERIC_WRITE | GENERIC_READ;
93 dwCreationDisposition = CREATE_ALWAYS;
96 if ((filename!=NULL) && (dwDesiredAccess != 0))
97 hFile = CreateFile((LPCTSTR)filename, dwDesiredAccess, dwShareMode, NULL,
98 dwCreationDisposition, dwFlagsAndAttributes, NULL);
128 if (!ReadFile(hFile, buf, size, &ret, NULL))
130 DWORD dwErr = GetLastError();
131 if (dwErr == ERROR_HANDLE_EOF)
152 if (!WriteFile(hFile, buf, size, &ret, NULL))
154 DWORD dwErr = GetLastError();
155 if (dwErr == ERROR_HANDLE_EOF)
173 DWORD dwSet = SetFilePointer(hFile, 0, NULL, FILE_CURRENT);
176 DWORD dwErr = GetLastError();
192 DWORD dwMoveMethod=0xFFFFFFFF;
201 dwMoveMethod = FILE_CURRENT;
204 dwMoveMethod = FILE_END;
207 dwMoveMethod = FILE_BEGIN;
214 DWORD dwSet = SetFilePointer(hFile, offset, NULL, dwMoveMethod);
217 DWORD dwErr = GetLastError();
269 pzlib_filefunc_def->opaque=NULL;
#define ZLIB_FILEFUNC_MODE_READWRITEFILTER
void fill_win32_filefunc(zlib_filefunc_def *pzlib_filefunc_def)
typedef uLong(ZCALLBACK *read_file_func) OF((voidpf opaque
uLong ZCALLBACK win32_read_file_func(voidpf opaque, voidpf stream, void *buf, uLong size)
long ZCALLBACK win32_seek_file_func(voidpf opaque, voidpf stream, uLong offset, int origin)
voidpf ZCALLBACK win32_open_file_func(voidpf opaque, const char *filename, int mode)
int ZCALLBACK win32_error_file_func(voidpf opaque, voidpf stream)
#define ZLIB_FILEFUNC_MODE_CREATE
#define ZLIB_FILEFUNC_SEEK_SET
uLong ZCALLBACK win32_write_file_func(voidpf opaque, voidpf stream, const void *buf, uLong size)
long ZCALLBACK win32_tell_file_func(voidpf opaque, voidpf stream)
#define ZLIB_FILEFUNC_SEEK_END
open_file_func zopen_file
#define INVALID_HANDLE_VALUE
#define ZLIB_FILEFUNC_SEEK_CUR
typedef long(ZCALLBACK *tell_file_func) OF((voidpf opaque
typedef int(ZCALLBACK *close_file_func) OF((voidpf opaque
voidpf ZCALLBACK win32_open_file_func OF((voidpf opaque, const char *filename, int mode))
int ZCALLBACK win32_close_file_func(voidpf opaque, voidpf stream)
#define ZLIB_FILEFUNC_MODE_EXISTING
#define INVALID_SET_FILE_POINTER
#define ZLIB_FILEFUNC_MODE_READ
typedef voidpf(ZCALLBACK *open_file_func) OF((voidpf opaque