?? wimadll.h
字號(hào):
#ifdef UNICODE
error(NOT DESIGNED FOR UNICODE)
#endif
#ifndef WIN32
error(DESIGNED FOR WIN32 ONLY)
#endif
#ifdef __cplusplus
extern "C"
{
#endif
struct str_ima_handle { int unused; };
typedef struct str_ima_handle FAR * HIMA;
#define WIMAAPI WINAPI
#ifndef CALLBACK_FILEIO_DEFINED
#define CALLBACK_FILEIO_DEFINED
typedef BOOL (WINAPI* FILEIOCALLBACK) (LPCVOID lpData,
DWORD dwDataSize,
LPVOID lpUsrParam);
#endif
#ifndef TYPEDISKH
typedef enum
{
NOTHING=0,
USED,
ALL,
BEGINFLOPPY,
ONLYBOOT
} CHOICEAPP;
#endif
#ifndef _INC_DISK
#ifndef MAXLFN
#define MAXLFN 256
#endif
typedef struct
{
char nom[8];
char ext[3];
char szCompactName[13];
BYTE bAttr;
BYTE dir_CreateMSec;
WORD dir_CreateDate;
WORD DosTime;
WORD DosDate;
BOOL fIsSubDir;
BOOL fSel; // for private use of client app.
BOOL fLfnEntry;
DWORD dwSize;
UINT uiPosInDir;
DWORD dwLocalisation;
DWORD dwTrueSize;
char longname[MAXLFN];
WORD dir_CreateTime;
WORD dir_LastAccessDate;
} DIRINFO;
typedef DIRINFO* LPDIRINFO; // for info, huge in win16 WinImage
#ifndef EVENTNOTIF_DEFINED
#define EVENTNOTIF_DEFINED
typedef DWORD (WINAPI* EVENTNOTIFCALLBACK) (DWORD dwEvent,
DWORD dwEventParam,DWORD dwWin32Err,
LPVOID lpParam,LPVOID lpUsrParam);
// dwEvent contain a DWEV_xxx value, see below
// lpUsrParam contain user param gived to function
#define DWEV_ERRORSUPINFO ((DWORD)0x7fff0001)
// IO Error with supplemental info (in ReadFloppy and WriteFloppy)
// dwEventParam = WinImage error number (see below), Bios like error number
// dwWin32Err : Win32 error number, like GetLastError()
// lpParam * pointer to an ERROR_SUPINFO structure
// return value : IDRETRY (4), IDABORT (3), IDIGNORE (5) or IDCANCEL (2)
// dwEventParam = 0x01 "Internal error 1\n"
// dwEventParam = 0x02 "Address mark not found"
// dwEventParam = 0x03 "Diskette is write-protected"
// dwEventParam = 0x04 "Sector not found"
// dwEventParam = 0x08 "DMA overflow"
// dwEventParam = 0x09 "Internal error 9"
// dwEventParam = 0x10 "Error in reading"
// dwEventParam = 0x20 "Error in floppy adapter"
// dwEventParam = 0x40 "Track not found"
// dwEventParam = 0x80 "There is no floppy in the drive"
// dwEventParam = 0x100 "Floppies do not match"
#define DWEV_ERRORWIN32 ((DWORD)0x7fff0002)
// Win32 IO Error in ReadFloppy and WriteFloppy and ReadLargeIma and WriteLargeIma
// dwEventParam = WinImage error number (see DWEV_ERRORSUPINFO), Bios like error number or 0
// dwWin32Err : Win32 error number, like GetLastError()
// return value : IDRETRY to retry (when possible)
// elsewhere (IDCANCEL or 0) to stop
#define DWEV_ERRORCANTACCESS ((DWORD)0x7fff0003)
// in ReadFloppy* and WriteFloppy*
// "Drive cannot be accessed - Check to see if another application is using it"
// return value not used
#define DWEV_ERRORDRIVEEMPTY ((DWORD)0x7fff0004)
// in ReadFloppy* and WriteFloppy*
// "There is no floppy in the drive"
// return value not used
#define DWEV_ERROR_NOT_MATCH ((DWORD)0x7fff0005)
// in ReadFloppy*
// "Floppies do not match"
// return value not used
#define DWEV_UNSTDFMT ((DWORD)0x7fff0006)
// in ReadFloppy* and WriteFloppy*
// "The current image format differs from the standard format for this disk drive"
// return value : IDCANCEL to abort, IDOK (1) or any other value to continue,
#define DWEV_UNSUPFMT ((DWORD)0x7fff0007)
// in WriteFloppy* and WriteLargeIma
// "The current image format is not supported by the disk drive"
// return value not used
#define DWEV_DIFFTYPEDISK ((DWORD)0x7fff0008)
// in WriteFloppy*
// "Disk and image formats do not match\nDo you want to reformat it?"
// return IDYES (6) or IDNO (7). IDNO stop, any other value continue
#define DWEV_DISKHASDATA ((DWORD)0x7fff0009)
// in WriteFloppy*
// "Disk is not empty, all data on your disk will be lost!\nDo you want to continue?"
// return IDYES (6) or IDNO (7). IDNO stop, any other value continue
#define DWEV_PROGRESSPERCENT ((DWORD)0x7fff000a)
// Give % progress info
// dwEventParam between 0 and 100
// for ExtractFile and InjectFile, lpParam contain a PROGRESSFILE_SUPINFO structure
// return value : IDCANCEL (2) to stop, 0 (or any other value) to continue
#define DWEV_ERRORASPI ((DWORD)0x7fff000b)
// Aspi error in WimLargeReadAspiCDImage*
// dwEventParam contain first sector number of range error
// return value : IDABORT, IDRETRY or IDIGNORE
#define DWEV_ERRORWRITEIMAGEFILE ((DWORD)0x7fff000c)
// error in writing image file in WimLargeReadAspiCDImage*
// dwWin32Err : Win32 error number, like GetLastError()
#define DWEV_ERRORIOCTL ((DWORD)0x7fff000d)
// IOCTL error when reading Disk partition under Win9x
// dwEventParam is Int25/26 error value
// return value : IDCANCEL or IDRETRY
#define DWEV_ROOTREADDONE ((DWORD)0x7fff000e)
// when reading FAT image, say when the root is read
// return value is not used
#ifndef LOCATEERROR_DEFINED
#define LOCATEERROR_DEFINED
typedef enum
{
ON_FORMAT=0,
ON_READ,
ON_WRITE,
ON_COMPARE
} LOCATEERROR;
#endif
#ifndef SUPINFOSTRUCT_DEFINED
#define SUPINFOSTRUCT_DEFINED
typedef struct
{
DWORD dwSizeStruct;
LOCATEERROR LocErr;
DWORD dwHead;
DWORD dwTrack;
DWORD dwPosLow;
DWORD dwPosHigh;
DWORD dwStyleAnswer;
DWORD dwErrNumber;
LPCTSTR lpszErrorText;
} ERROR_SUPINFO;
// for ExtractFile and InjectFile, in event DWEV_PROGRESSPERCENT lpParam contain a
// PROGRESSFILE_SUPINFO structure
typedef struct
{
DWORD dwSizeStruct;
DWORD dwCurrentPos;
DWORD dwReserved1;
DWORD dwTotalSize;
DWORD dwReserved2;
LPCTSTR lpszName;
LPCTSTR lpszFullName;
} PROGRESSFILE_SUPINFO;
#endif
#endif
#endif
#ifndef SORT_NONE
#define SORT_NONE 72
#define SORT_NAME 73
#define SORT_EXT 74
#define SORT_SIZE 75
#define SORT_DATE 76
#endif
#ifndef CDM_ROOT
#define CDM_ROOT 50
#define CDM_UPPER 51
#define CDM_ENTRY 52 // use ChszDir
#endif
typedef enum
{
NO_FLOPPY=0,
FLOPPY_360,
FLOPPY_12M,
FLOPPY_720,
FLOPPY_144,
FLOPPY_288,
LDISK_REMOVABLE,
LDISK_HARDDISK,
LDISK_CDROM,
FLOPPY_LS120
} DRIVEINFO;
// HWND_NO_PROGRESS : hWnd parameter to ReadImaFile or WriteImaFile to have no
// WinImage progress bar window
#define HWND_NO_PROGRESS ((HWND)INVALID_HANDLE_VALUE)
// CreateMemFatHima : Create an Image Object.
// you need call ReadImaFile, ReadFloppy or MakeEmptyImage
HIMA WIMAAPI CreateMemFatHima();
// CreateMemHfsHima : Create an Image Object for Mac floppy.
// you need call ReadImaFile, ReadFloppy
// extract, inject... cannot be used
HIMA WIMAAPI CreateMemHfsHima();
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -