?? wimadll.h
字號:
// CreateCDIsoIma : Create an Image Object by loading CDRom ISO image
// lpFn : Filename of .ISO file
// inject,...cannot be used
HIMA WIMAAPI CreateCDIsoIma(LPCSTR lpFn);
// OpenFatLargeFile : Open a large disk image (hard disk image)
// hWnd : parent window for progress window
// lpFn : FileName
// dwPosFileBegin : position in file (usualy 0)
// dwPosFileBegin : position in file, high (usualy 0), for file > 4GB
// fReadOnlyAsked : if the file must be opened in read-only mode
HIMA WIMAAPI OpenFatLargeFile(HWND hWnd,LPCSTR lpFn,DWORD dwPosInFile,DWORD dwPosInFileHigh,BOOL fReadOnlyAsked);
HIMA WIMAAPI OpenFatLargeFileCB(HWND hWnd,EVENTNOTIFCALLBACK pEventNotifCallBack,LPVOID lpUsrParam,
LPCSTR lpFn,DWORD dwPosInFile,DWORD dwPosInFileHigh,BOOL fReadOnlyAsked);
HIMA WIMAAPI OpenLargeImageFile(HWND hWnd,LPCSTR lpFn,DWORD dwPosInFile,DWORD dwPosInFileHigh,BOOL fReadOnlyAsked);
HIMA WIMAAPI OpenLargeImageFileCB(HWND hWnd,EVENTNOTIFCALLBACK pEventNotifCallBack,LPVOID lpUsrParam,
LPCSTR lpFn,DWORD dwPosInFile,DWORD dwPosInFileHigh,BOOL fReadOnlyAsked);
// DeleteIma : Delete an Image Object.
void WIMAAPI DeleteIma(HIMA);
// Read an image file (.IMA or .IMZ)
// hWnd : parent window for progress window
// lpFn : FileName
// lpfCompr : pointer to Boolean (will receive TRUE if file is compressed)
// dwPosFileBegin : position in file (usualy 0, except in WLZ)
BOOL WIMAAPI ReadImaFile(HIMA hIma,HWND hWnd,LPCSTR lpFn,
LPBOOL lpfCompr,DWORD dwPosFileBegin);
BOOL WIMAAPI ReadImaFileEx(HIMA hIma,HWND hWnd,LPCSTR lpFn,
LPBOOL lpfCompr,DWORD dwPosFileBegin,
LPCSTR lpszPassword);
BOOL WIMAAPI ReadImaFileExCB(HIMA hIma,
HWND hWnd,EVENTNOTIFCALLBACK pEventNotifCallBack,LPVOID lpUsrParam,
LPCSTR lpFn,
LPBOOL lpfCompr,DWORD dwPosFileBegin,
LPCSTR lpszPassword);
// WriteImaFile : WriteCompressed image
// hWnd : parent window for progress window
// lpFn : FileName
// fTruncate : TRUE if you want truncate unused part of image
// fCompress : TRUE if you want compress
// iLevelCompress : used is fCompress is TRUE, level of compress (1 to 9)
// dwPosBeginWrite : position in file (usualy 0)
// lpNameInCompr : alternate name in compressed file (can be NULL)
BOOL WIMAAPI WriteImaFile(HIMA hIma,HWND hWnd,LPCSTR lpFn,BOOL fTruncate,
BOOL fCompress,int iLevelCompress,
DWORD dwPosBeginWrite,LPCSTR lpNameInCompr);
BOOL WIMAAPI WriteImaFileEx(HIMA hIma,HWND hWnd,LPCSTR lpFn,BOOL fTruncate,
BOOL fCompress,int iLevelCompress,
DWORD dwPosBeginWrite,LPCSTR lpNameInCompr,
DWORD dwCryptMethod,LPCSTR lpszPassword);
BOOL WIMAAPI WriteImaFileExCB(HIMA hIma,
HWND hWnd,EVENTNOTIFCALLBACK pEventNotifCallBack,LPVOID lpUsrParam,
LPCSTR lpFn,BOOL fTruncate,
BOOL fCompress,int iLevelCompress,
DWORD dwPosBeginWrite,LPCSTR lpNameInCompr,
DWORD dwCryptMethod,LPCSTR lpszPassword);
// ReadFloppy : Read a floppy
// hWnd : parent window for progress window
// bFloppy : Floppy to read (0 for A:)
// caRead : USED, or ALL (ALL if you want read unused part of floppy)
BOOL WIMAAPI ReadFloppy(HIMA hIma,HWND hWnd,BYTE bFloppy,CHOICEAPP caRead);
// ReadFloppyCB : do not display user interface but call CallBack
BOOL WIMAAPI ReadFloppyCB(HIMA hIma,HWND hWnd,
EVENTNOTIFCALLBACK pEventNotifCallBack,LPVOID lpUsrParam,
BYTE bFloppy,CHOICEAPP caRead);
// WriteFloppy : Write a floppy
// hWnd : parent window for progress window
// bFloppy : Floppy to write (0 for A:)
// caFormat : NOTHING or ALL (ALL for format)
// caWrite : USED or ALL
// caCompare : NOTHING, USED or ALL
// fCheckDiskBeforeWrite : if you want check disk is empty
BOOL WIMAAPI WriteFloppy(HIMA hIma,HWND hWnd,BYTE bFloppy,CHOICEAPP caFormat,
CHOICEAPP caWrite,CHOICEAPP caCompare,
BYTE fCheckDiskBeforeWrite);
// WriteFloppyCB : do not display user interface but call CallBack
BOOL WIMAAPI WriteFloppyCB(HIMA hIma,HWND hWnd,
EVENTNOTIFCALLBACK pEventNotifCallBack,LPVOID lpUsrParam,
BYTE bFloppy,CHOICEAPP caFormat,
CHOICEAPP caWrite,CHOICEAPP caCompare,
BYTE fCheckDiskBeforeWrite);
// Create a directory in the image
// lpDir : Directory name
BOOL WIMAAPI MkDir(HIMA hIma,LPCSTR lpDir);
// Change current directory by name
// lpDir : Directory name
BOOL WIMAAPI ChszDir(HIMA hIma,LPCSTR lpDir);
// Change current directory by mode
// bMode : CDM_ROOT or CDM_UPPER (equiv. to cd \ and cd ..)
BOOL WIMAAPI ChDir(HIMA hIma,BYTE bMode);
// Change current directory by mode
// bMode : CDM_ROOT or CDM_UPPER or CDM_ENTRY (equiv. to cd \ and cd ..)
BOOL WIMAAPI ChDirPos(HIMA hIma,BYTE bMode,DWORD dwPosDir);
// InjectFile : Inject a file in floppy
// lpFn : file to inject
// lpDwSize : Pointer to DWORD that will receive the size. Can be NULL.
// lpTooBig : Pointer to BOOL, become TRUE if file too big to be injected
// (if InjectFile return FALSE). Can be NULL.
// lpNameWhenInjected : if not NULL, contain a new name in the image
// (if the file must have another name when injected). Can be NULL.
// for the CB version, the only event is DWEV_PROGRESSPERCENT
BOOL WIMAAPI InjectFile(HIMA hIma,LPCSTR lpFn,
LPDWORD lpDwSize,LPBOOL lpTooBig,
LPCSTR lpNameWhenInjected);
BOOL WIMAAPI InjectFileCB(HIMA hIma,
EVENTNOTIFCALLBACK pEventNotifCallBack,LPVOID lpUsrParam,
LPCSTR lpFn,LPDWORD lpDwSize,
LPBOOL lpTooBig,LPCSTR lpNameWhenInjected);
// MakeEmptyImage : make an empty image
// iNotypeDisk : 4=720K,6=1440K,7=2880K,8=DMF2048,9=DMF1024,10=1680K
// 0=160K,1=180K,2=320K,3=360K,5=1200K (old, no ! :-))
BOOL WIMAAPI MakeEmptyImage(HIMA hIma,int iNoTypeDisk);
// MakeEmptyImageEx : make an empty image
// lpszBootSectorGeom : contain a boot sector with the geometry of needed image
// lpszBootSectorCode : contain the boot sector code (can be NULL to standard code)
BOOL WIMAAPI MakeEmptyImageEx(HIMA hIma,LPCSTR lpszBootSectorGeom,LPCSTR lpszBootSectorCode);
// BuildImaNewFormat : Defrag (and pehaps change format)
// Success: return new Image object (hOldIma is destroyed)
// Error : Return NULL, hOldIma is not destroyed
// fNewTypeDisk : TRUE: change format using iNotypeDisk, FALSE: Just defrag
// iNotypeDisk : 4=720K,6=1440K,7=2880K,8=DMF2048,9=DMF1024,10=1680K
// 0=160K,1=180K,2=320K,3=360K,5=1200K (old, no ! :-))
HIMA WIMAAPI BuildImaNewFormat(HIMA hOldIma,BOOL fNewTypeDisk,int iNoTypeDisk);
// BuildImaNewFormat : Defrag (and pehaps change format)
// hNewIma will receive the new image and must have been created
// lpszBootSectForGeometry : contain a boot sector with geometry of new image
// fDiscardOldIma : TRUE to delete hOldIma (if BuildImaNewFormatEx has success)
BOOL WIMAAPI BuildImaNewFormatEx(HIMA hOldIma,HIMA hNewIma,BOOL fNewTypeDisk,
LPCSTR lpszBootSectForGeometry,BOOL fDiscardOldIma);
BOOL WIMAAPI BuildImaNewFormatExCB(HIMA hOldIma,HIMA hNewIma,
EVENTNOTIFCALLBACK pEventNotifCallBack,LPVOID lpUsrParam,
BOOL fNewTypeDisk,
LPCSTR lpszBootSectForGeometry,BOOL fDiscardOldIma);
// Create an empty FAT16 image file, by specifying number of sector and number of root entry
// This API is supported, but obsolete (MakeEmptyImageEx is better)
BOOL WIMAAPI BuildFat16EmptyImageFromSize(LPCTSTR lpszFileName,DWORD dwNbSector,DWORD dwNbRootEntry);
// InitWimaSdk : Init the DLL and use hinstdll for resource
#define DEBENUSTD "ENU"
#define BASEENUSTD (10000)
// default lpDeb value is "ENU" and wBase is BASEENUSTD
BOOL WIMAAPI InitWimaSdk(HINSTANCE hinstdll,LPCSTR lpDeb,WORD wBase);
// GetCurDir : Get the name of current directory
// lpBuf : buffer that will receive the name
// uiMaxSize : the size of buffer
BOOL WIMAAPI GetCurDir(HIMA hIma,LPSTR lpBuf,UINT uiMaxSize);
// GetNbEntryCurDir : Get the number of entry of cur directory
DWORD WIMAAPI GetNbEntryCurDir(HIMA hIma);
// GetDirInfo : Get info about the entry of cur directory
// LPDIRINFO : array of DIRINFO that will receive the info
// (use GetNbEntryCurDir for know the size needed)
// bSort : specify how the file must be sort
// (SORT_NONE, SORT_NAME, SORT_EXT, SORT_SIZE or SORT_DATE)
BOOL WIMAAPI GetDirInfo(HIMA hIma,LPDIRINFO lpdi,BYTE bSort);
// Sort : Resort the array obtained by GetDirInfo
BOOL WIMAAPI Sort(HIMA hIma,LPDIRINFO lpdi,BYTE bSort);
BOOL WIMAAPI RefreshInternalBufferDirInfo(HIMA hIma,BYTE bSort,LPDWORD lpdwNumberItem);
BOOL WIMAAPI GetBufferDirInfoItem(HIMA hIma,LPDIRINFO lpdiItem,DWORD dwItemPos);
BOOL WIMAAPI ReSortBufferDirInfo(HIMA hIma,BYTE bSort);
// GetLabel : Get the label of Image
// lpBuf : will receive the label
BOOL WIMAAPI GetLabel(HIMA hIma,LPSTR lpBuf);
// SetLabel : Set the label of Image
// lpBuf : contain the new label
BOOL WIMAAPI SetLabel(HIMA hIma,LPCSTR lpBuf);
// ExtractFile : Extract one file
// uiPosDir : The uiPosInDir fields in DIRINFO structure that describe
// the file
// lpPath : Path where extract the file
// lpFullName: will receive the exact full name of created file. Can be NULL
// for the CB version, the only event is DWEV_PROGRESSPERCENT
BOOL WIMAAPI ExtractFile(HIMA hIma,DWORD dwPosDir,LPCSTR lpPath,LPSTR lpFullName);
BOOL WIMAAPI ExtractFileCB(HIMA hIma,
EVENTNOTIFCALLBACK pEventNotifCallBack,LPVOID lpUsrParam,
DWORD dwPosDir,LPCSTR lpPath,LPSTR lpFullName);
BOOL WIMAAPI ExtractFileVirtual(HIMA hIma,
FILEIOCALLBACK pFileIoCallBack,DWORD dwMaxVirtualBufSize,LPVOID lpParamUsrExtractOut,
DWORD dwPosDir,LPCSTR lpPath,LPSTR lpFullName);
BOOL WIMAAPI ExtractFileVirtualCB(HIMA hIma,
FILEIOCALLBACK pFileIoCallBack,DWORD dwMaxVirtualBufSize,LPVOID lpParamUsrExtractOut,
EVENTNOTIFCALLBACK pEventNotifCallBack,LPVOID lpUsrParam,
DWORD dwPosDir,LPCSTR lpPath,LPSTR lpFullName);
// CheckSpaceForFile : Check you've space for inject a file of dwSize bytes
BOOL WIMAAPI CheckSpaceForFile(HIMA hIma,DWORD dwSize);
// to know if an inject is possible but need replace
// lpFn : contain the name of file to be injected
// lpDwSize : will receive the size of old file with same name. Can be NULL
// lpNameWhenInjected : if not NULL, contain a new name in the image
// lpShortName : will receive the short (8) name of file in image. Can be NULL
// lpShortExt : will receive the short (3) ext of file in image. Can be NULL
// (if the file must have another name when injected)
BOOL WIMAAPI IfInjectPossibleButNeedReplace(HIMA hIma,LPCSTR lpFn,
LPDWORD lpDwSize,LPSTR lpShortName,
LPSTR lpShortExt,LPCSTR lpNameWhenInjected);
// RmDir : Remove a directory
// unPosDir : The uiPosInDir fields in DIRINFO structure that describe
// the file
BOOL WIMAAPI RmDir(HIMA hIma,UINT uiPosDir);
// DeleteFileNameExt
// Delete a file in the image
// for filling lpNom and lpExt, use data obtained from GetDirInfo
// lpNom : pointer to array of 8 chars (name of 8.3 name, use DIRINFO.nom)
// lpExt : pointer to array of 3 chars (ext of 8.3 name, use DIRINFO.ext)
// fRealDel : TRUE to really delete, FALSE to only test if delete is possible
BOOL WIMAAPI DeleteFileNameExt(HIMA hIma,LPCSTR lpNom,LPCSTR lpExt,BOOL fRealDel);
// MoveFileToDir
// Move a file from current directory to another directory
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -