Files
firestorm/Gameleap/code/mw4/Tools/PatchIT/PatchApply/Patchwin.h
T
Cyd 2b8ca921cb Initial full mirror of c:\VWE (source + assets + toolchain + outputs) via Git LFS
Complete disaster-recovery snapshot: engine/game source, game data assets,
VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive.
Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false,
no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
2026-06-24 21:28:16 -05:00

136 lines
3.9 KiB
C

/*-------------------------------------------------------------------------*\
| |
| FILE: PATCHWIN.H |
| |
| |
| RTPatch Patch Apply DLL API Header File |
| ver. 6.00 |
| |
| |
| (C) Copyright Pocket Soft, Inc. 1997-2001. All Rights Reserved. |
| |
\*-------------------------------------------------------------------------*/
#ifndef PATCHWIN_INCLUDED
#define PATCHWIN_INCLUDED
# include <windows.h>
/*-----------------------------------------------------------------------*\
| C++ name mangling prevention -- beginning of block |
\*-----------------------------------------------------------------------*/
# ifdef __cplusplus
extern "C" {
# endif /*__cplusplus */
# ifdef _WIN32
// STRUCTURES
struct FileAttrib {
unsigned Flags;
unsigned Attributes;
FILETIME ChangedTime;
FILETIME CreateTime;
FILETIME AccessTime;
unsigned long Size;
};
struct PatchAsyncParm {
long Position;
long Count;
void * Buffer;
};
struct PatchUserFileParm {
wchar_t * OldName;
wchar_t * NewName;
unsigned SelfReg;
unsigned Shared;
unsigned Backup;
};
// CONSTANTS
# define PATCH_SUCCESS 0
# define PATCH_BUSY -1
// Attrib Flags
# define ATTRIB_ATTRIBUTE 0x1
# define ATTRIB_CHANGED_DATE 0x2
# define ATTRIB_CREATE_DATE 0x4
# define ATTRIB_ACCESS_DATE 0x8
# define ATTRIB_SIZE 0x10
int /* ErrCode */
__declspec( dllimport ) CALLBACK
RTPatchSetOpen( int Handle, HANDLE (CALLBACK *FileOpenPtr)( wchar_t *, int ) );
int /* ErrCode */
__declspec( dllimport ) CALLBACK
RTPatchSetDirWalk( int Handle,
int (CALLBACK *DirWalkPtr)( wchar_t *, int, WIN32_FIND_DATAW * ) );
int /* ErrCode */
__declspec( dllimport ) CALLBACK
RTPatchSetCreate( int Handle,
HANDLE (CALLBACK *FileCreatePtr)(wchar_t * ) );
int /* ErrCode */
__declspec( dllimport ) CALLBACK
RTPatchSetDelete( int Handle,
int (CALLBACK *FileDeletePtr)(wchar_t * ) );
int /* ErrCode */
__declspec( dllimport ) CALLBACK
RTPatchSetRename( int Handle,
int (CALLBACK *FileRenamePtr)(wchar_t *, wchar_t * ) );
int /* ErrCode */
__declspec( dllimport ) CALLBACK
RTPatchSetAttribSet( int Handle,
int (CALLBACK *FileAttribSetPtr)(wchar_t *, struct FileAttrib *) );
int /* ErrCode */
__declspec( dllimport ) CALLBACK
RTPatchSetAttribGet( int Handle,
int (CALLBACK *FileAttribGetPtr)(wchar_t *, struct FileAttrib *) );
UINT
__declspec( dllimport )
CALLBACK RTPatchApply32( LPSTR CmdLine,
LPVOID (CALLBACK * CallBackFn)(UINT, LPVOID),
BOOL WaitFlag);
UINT
__declspec( dllimport )
__cdecl RTPatchApply32NoCall( LPSTR CmdLine );
# else
struct PatchAsyncParm {
long Position;
long Count;
void * Buffer;
}
struct PatchUserFileParm {
wchar_t * OldName;
wchar_t * NewName;
unsigned long SelfReg;
unsigned long Shared;
unsigned long Backup;
}
UINT CALLBACK RTPatchApply( LPSTR CmdLine,
LPVOID (CALLBACK * CallBackFn)(UINT, LPVOID),
BOOL WaitFlag);
UINT _far _cdecl RTPatchApplyNoCall( LPSTR CmdLine );
# endif
/*-----------------------------------------------------------------------*\
C++ name mangling prevention -- end of block
\*-----------------------------------------------------------------------*/
# ifdef __cplusplus
};
# endif
# endif /* PATCHWIN_INCLUDED */