=======================================================================
UNLHA32.DLL Ver 0.97 API à¾t@C
=======================================================================
l (Jan.17,1998)
-----------------------------------------------------------------------
%1. e API Ìà¾B
%a UnlhaGetVersion
%b UnlhaGetRunning
%c UnlhaGetBackGroundMode
%d UnlhaSetBackGroundMode
%e UnlhaGetCursorMode
%f UnlhaSetCursorMode
%h UnlhaSetCursorInterval
%i Unlha
%j UnlhaCheckArchive
%k UnlhaGetFileCount
%l UnlhaQueryFunctionList
%m UnlhaConfigDialog
%o UnlhaExtractMem
%p UnlhaCompressMem
%q UnlhaOpenArchive
%r UnlhaCloseArchive
%s UnlhaFindFirst
%t UnlhaFindNext
%u UnlhaGetArcFileName
%v UnlhaGetArcFileSize
%w UnlhaGetArcOriginalSize
%x UnlhaGetArcCompressedSize
%y UnlhaGetArcRatio
%z UnlhaGetArcDate
%A UnlhaGetArcTime
%B UnlhaGetArcOSType
%C UnlhaIsSFXFile
%D UnlhaGetFileName
%E UnlhaGetMethod
%F UnlhaGetOriginalSize
%G UnlhaGetCompressedSize
%H UnlhaGetRatio
%I UnlhaGetDate
%J UnlhaGetTime
%K UnlhaGetWriteTime
%L UnlhaGetCreateTime
%M UnlhaGetAccessTime
%N UnlhaGetCRC
%O UnlhaGetAttribute
%P UnlhaGetOSType
%2. INDIVIDUALINFO Ì\¢
%3. WXgÌÝèl
%4. Unlha()ÌÔ·G[R[hÆ»ÌÓ¡
%5. »Ì¼
-----------------------------------------------------------------------
@bZ[WÖWÉ¢ÄÍ WINMES.TXT ðQƵľ³¢B
-----------------------------------------------------------------------
%1. e API Ìà¾B
-----------------------------------------------------------------------
-----------------------------------------------------------------------
%a WORD WINAPI UnlhaGetVersion(VOID)
-----------------------------------------------------------------------
@\
UNLHA32.DLL Ì»ÝÌo[WðԵܷB±±ÅÌÔplÍCWX
gÌ UnlhaVersion Ée¿³êÜ·B
ßèl
»ÝÌo[W 1 -> Version 0.01
100 -> Version 1.00
»Ì¼
dlÏXÈǪ é©àµêܹñÌÅo[WÌ`FbNð§µÜ
·B
-----------------------------------------------------------------------
%b BOOL WINAPI UnlhaGetRunning(VOID)
-----------------------------------------------------------------------
@\
»Ý UNLHA32.DLL ª®ì©Û©ð¾Ü·B API ðÄÑo·OÉ®ì
©Û©ð`FbNµ½Ù¤ª¢¢Åµå¤B
ßèl
ÀsÅ êÎ TRUE ðԵܷB
ÀsÅȯêÎ FALSE ðԵܷB
-----------------------------------------------------------------------
%c BOOL WINAPI UnlhaGetBackGroundMode(VOID)
-----------------------------------------------------------------------
@\
UNLHA32.DLL ªobNOEh[h©Û©ð¾Ü·B
ßèl
obNOEh[hÅ êÎ TRUE ðԵܷB
ñobNOEh[hÅ êÎ FALSE ðԵܷB
-----------------------------------------------------------------------
%d BOOL WINAPI UnlhaSetBackGroundMode(const BOOL _bBackGroundMode)
-----------------------------------------------------------------------
@\
UNLHA32.DLL ÌobNOEh[hðÝèµÜ·B
ø
obNOEh[hÌêÍ TRUE ðnµÜ·B
ñobNOEh[hÌêÍ FALSE ðnµÜ·B
ßèl
³íI¹Ìê TRUE ðԵܷB
®ìÅÏXūȩÁ½êâC øªÔá¢ÌêÉÍ FALSE ðÔ
µÜ·B
Ó
±±ÅÌuobNOEh[hvÆ¢¤ÌÍCêÊIÈÓ¡ÅÍÈC
uUNLHA32.DLL ª®ìÉbZ[WE[vðÜí·vÆ¢¤Ó¡Å·B
LHA.DLL ªCÊíɨ¢ÄÍCbZ[WE[vðêØÜí³¸CÊ
ÆµÄ LHA.DLL ª®ìÍVXeªXgbv·é\Æ¢¤à̾Á½
ÌÅCu¼Ì^XNÉð¾¯n·vÆ¢¤Ó¡ÅÌwobNOE
h[hxðwèū鿤ÉÈÁĢܵ½B
]ÁÄCWin95/NT ÅÍC±±ÅÌwèÍÙÆñÇÓ¡ªÈ¢ÌÅC ±Ì
API ðgÁÄ®ì[hðwè·éKvÍ èܹñBLHA.DLL ÆÌÝ·
«Ì½ßÉ API ª¶Ý·é¾¯Å·B
½¾µC Win32s ÅÍbZ[WE[vðÜíµÄÌ^XN¾nµªË
RƵÄÓ¡ðàÁĢܷÌÅCWin32s ãÅÌ®ìðzè·éêÍC
±Ì API ÅÌ[hwèÉÍÓªKvÅ·B
ȨC ±Ì API Å FALSE ðwèµ½êÅàCUNLHA32.DLL ÍKvÅ
áÀÌpxÅbZ[W[vðÜí·æ¤ÉÈÁĢܷB
-----------------------------------------------------------------------
%e BOOL WINAPI UnlhaGetCursorMode(VOID)
-----------------------------------------------------------------------
@\
UNLHA32.DLL Ì®ìÉJ[\ð\¦·é[h©Û©ð¾Ü·B
ßèl
J[\\¦[hÅ êÎ TRUE ðԵܷB
J[\ñ\¦[hÅ êÎ FALSE ðԵܷB
-----------------------------------------------------------------------
%f BOOL WINAPI UnlhaSetCursorMode(const BOOL _CursorMode)
-----------------------------------------------------------------------
@\
UNLHA32.DLL Ì®ìÉJ[\ð\¦·é[h©Û©ðÝèµÜ·B
ø
J[\\¦[hÅÝêÎ TRUE ðnµÜ·B
J[\ñ\¦[hÅÝêÎ FALSE ðnµÜ·B
ßèl
³íI¹Ìê TRUE ðԵܷB
®ìÅÏXūȩÁ½êâC øªÔá¢ÌêÉÍ FALSE ðÔ
µÜ·B
»Ì¼
LHA.DLL ÌlÈñ]J[\ÍT|[gµÄ¢È¢ÌÅÀÛÍÆ©ÌJ[
\ð\¦·é©Û©ÌÓ¡µ© èܹñB
-----------------------------------------------------------------------
%g WORD WINAPI UnlhaGetCursorInterval(VOID)
-----------------------------------------------------------------------
@\
J[\Ìñ]¬xð¾Ü·
ßèl
J[\Ìñ]¬ximsec)
»Ì¼
ÄÑoµÄàG[ÉÍÈèܹñªñ]J[\ðT|[gµÄ¢È¢
ÌųӡŷB
-----------------------------------------------------------------------
%h BOOL WINAPI UnlhaSetCursorInterval(const WORD _Interval)
-----------------------------------------------------------------------
@\
J[\Ìñ]¬xðÝèµÜ·
AµCUNLHA32.DLLÌ®ìÉÍÏXūܹñB
ø
J[\Ìñ]¬ximsec)
ftHgÍ 80 (msec) Å·B
ßèl
³íI¹Ìê TRUE ðԵܷB
®ìÅÏXūȩÁ½êÉÍ FALSE ðԵܷB
»Ì¼
G[ÉÍÈèܹñªCñ]J[\ðT|[gµÄ¢È¢ÌÅÝèÍ
³Ó¡Å·BêÝèlÍL¯·éæ¤ÉÈÁĢܷB
-----------------------------------------------------------------------
%i int WINAPI Unlha(const HWND _hwnd, LPCSTR _szCmdLine,
LPSTR _szOutput, const DWORD _dwSize)
-----------------------------------------------------------------------
@\
eíÌÉìðs¢Ü·B
ø
_hwnd UNLHA32.DLL ðÄÑo·AvÌEBhEÌnhB
UNLHA32.DLL ÍÀsɱÌEBhEÉ뵀 EnableWin-
dow() ðÀsµEBhEÌ®ìð}§µÜ·BEBhE
ª¶ÝµÈ¢R\[AvÌêâCwè·éKvÌÈ
¢êÍ NULL ðnµÜ·B
_szCmdLine UNLHA32.DLL Én·R}h̶ñB DOS ÅÌ LHA.EXE
ƯlÌà̪wèūܷB½¾µCARJ.EXE Ìæ¤Éð
t@CÉIvVðwè·éæ¤È±ÆÍūܹ
ñBR}hÉ¢ÄÍ COMMAND.TXT ðQÆB
_szOutput UNLHA32.DLL ªÊðÔ·½ßÌobt@BLHA.EXE ªR
\[É\¦·éÌÆ¯lÌà̪C±Ìobt@Éi[³
êÜ·B
_dwSize obt@ÌTCYBUNLHA32.DLL ªÔ·ÊÌTCYæèw
è³ê½TCYª¬³¢êÍwèTCYÜÅoͳêÜ·B
ßèl
³íI¹Ì 0B
G[ª¶µ½ê 0 ÈOÌBG[R[hÉ¢ÄÍ UNLHA32.
H ðQÆB
»Ì¼
WJæfBNgª¶ÝµÈ¢êÍ쬷é©â¢í¹ÄÜ·B
u¢¢¦vðIðµ½êÍ ERROR_MAKEDIRECTORY ÌG[ÉÈèÜ·B
-----------------------------------------------------------------------
%j BOOL WINAPI UnlhaCheckArchive(LPCSTR _szFileName,
const int _iMode)
-----------------------------------------------------------------------
@\
wèt@Cª LZH t@CƵijµ¢©Ç¤©ðԵܷB
ø
_szFileName `FbN·×« LZH t@CÌt@C¼B
_iMode `FbN[hB
CHECKARCHIVE_RAPID ÈÕ[hB i[t@CÌ CRC `FbNÍ
(0) sí¸Cwb_ÌÝ`FbNµÜ·B±Ì[
hÍeccãÌÉt@CÅÉÔª|
©éÌðh®½ßÅ©çRÂÚÜÅÌt@C
wb_É¢ÄÌÝ`FbNðs¢Ü·B
ܽCwb_ª©Â©çÈ¢êÍt@CÌ
æª 128K ÜÅwb_Ìõðs¢Ü·B
CHECKARCHIVE_BASIC ÈÕ[hB0 ÌêÆáÁı¿çÍSÄÌ
(1) t@Cwb_É¢Ä`FbNµÜ·B
CHECKARCHIVE_FULLCRC µ§[hB i[t@CÌ CRC à`FbN
(2) µÜ·B½¾µCt@Cª«ÜêÈ¢¾
¯ÅWJªsíê鱯ÉÈéÌÅÀs
Ôª·ÈèÜ·B
@ȺÌtOÍãLÌtOÆgÝí¹Äg¢Ü·B
CHECKARCHIVE_RECOVERY j¹wb_ð³B±ÌtOðwè·éÆC
(4) j¹wb_ð³µÄC»êÈ~Ìi[t@C
ÖÌANZXªÂ\ÉÈèÜ·B
CHECKARCHIVE_SFX ©ÈðɩǤ©ðmFBÊíɨ¢ÄÍ
(8) ÉÆF¯³ê½êÉÍ TRUE ðԵܷªC
±ÌtOðwè·éÆC©ÈðÉÆF¯
³ê½êÉ©ÈðÉÌíÞð çí·
lðԵܷB
CHECKARCHIVE_ALL CHECKARCHIVE_RAPID ðwèµ½êÉC wb
(16) _õðt@CÌ·×ÄÌÌæÉ¢Äs¢
½¢êÉwèµÜ·B
ßèl
LZH t@CÌ FALSE ÈOB ÊíÍ 1 ðԵܷBɪ©
ÈðÉÌêÅC ©Â CHECKARCHIVE_SFX
ªwè³ê½êÍC ãq·é UnlhaIsSFX-
File() ÌÔplÉ 0x8000 ðÁ¦½lðÔ
µÜ·B
t@Cªs³Ì FALSEB
»Ì¼
CHECKARCHIVE_RECOVERY ÍC±Ì API ƵÄÍsKÈàÌÅ·ª "-jc"
XCb`t«Åj¹wb_Ì éÉÌWJðs¢½¢ê̽ßɶ
Ý·éàÌÅ·B Unlha() Å»Ìæ¤ÈÉðµ¢½¢ÌÉC »ÌOÌ
UnlhaCheckArchive() ÅuLZH ÉÅÍÈ¢vÆ»f³ê½ÌÅÍ¢èà
ÌÈÌÅcB(^^;)
Ó
©ÈðÉÉ¢ÄÍCÉ©ÌÉ©ÈðÉŠ鱯ð¦·t
Oâo[WÌîñª¶Ý·éí¯ÅÍ èܹñÌÅC©Èð
ÉÌo[WÉæÁÄͳµF¯Å«È¢êª èÜ·B
-----------------------------------------------------------------------
%k int WINAPI UnlhaGetFileCount(LPCSTR _szArcFile)
-----------------------------------------------------------------------
@\
wè³ê½Ét@CÉi[³êÄ¢ét@Cð¾Ü·B
ø
_szArcFile i[t@Cð¾½¢Ét@C¼B
ßèl
i[t@Cð¾éBG[ÌÆ«Í -1 ðÔ·B
-----------------------------------------------------------------------
%l BOOL WINAPI UnlhaQueryFunctionList(const int _iFunction)
-----------------------------------------------------------------------
@\
wè³ê½ API ªgpÂ\©Ç¤©ð¾Ü·B
ø
_iFunction API ð¦·êlÈlBïÌIÈlÉ¢ÄÍ Unlha.
H ðQƵĺ³¢B
ßèl
API ªgpÂ\ÈçÎ TRUE ðÔµCgps\ÈçÎ FALSE ðԵܷB
_iFunction ɳøÈlðnµ½êà FALSE ðԵܷB
-----------------------------------------------------------------------
%m BOOL WINAPI UnlhaConfigDialog(const HWND _hwnd,
LPSTR _szOptionBuffer, const int _iMode)
-----------------------------------------------------------------------
@\
îfBNgâIvVªwè³êÈ©Á½êÌ®ìðwèµÜ
·B
wèÂ\ÈàÌÍC
@1:@WJÌîfBNgBܽC»ÌÝèµ½fBNgðL
øÉ·é©Ç¤©B
@2:@fBNgÉ¢ÄCÎfBNgÆ·é©âÎfBNg
Æ·é©ÌwèB(-jf0 | -jf1)
3:@ã«Ì®ìB(-jyo1 | -jyo0 | -jn)
4:@Agr
[gàWJ·é©Ç¤©B(-a0 | -a1)
5:@µ§Èt@CT[`ð·é©Ç¤©B(-p0 | -p1)
6:@fBNgì¬ÌmFð·é©Ç¤©B(-jyd0 | -jyd1)
7:@WJæÌfBXNÌó«ª é©ðmF·é©Ç¤©B(-f0 | -f1)
8:@ÉàÌfBNgîñðLøÆ·é©Ç¤©B(-gj0 | -gj1)
9:@i»OtÌ\¦û@B(-gn0 | -gn1)
10:@ÈÕ_CAOÅWJóµð\¦·é©Ç¤©B(-gn2)
Å·B
ø
_hwnd UNLHA32.DLL ðÄÑo·AvÌEBhEÌnhB
_szOptionBuffer ARCHIVER.INI É«ÜêéàeƯlÌ®ìðs¤
×ÌR}h¶ñð¾é½ßÌobt@Ì|C^B
pÓ·éobt@Í 513 oCgÈãÆ·é±ÆB
_iMode WJƳkÌÇ¿çÉ¢ÄÌàÌ©ðwèµÜ·B
½¾µCUNLHA32.DLL ÅͱÌwèͳ³êÜ·B
UNPACK_CONFIG_MODE 1 WJÉ¢ÄÌIvVðwèB
PACK_CONFIG_MODE 2 ³kÉ¢ÄÌIvVðwèB
ßèl
UNLHA32.DLL ªùÉÀsÌ ERROR_ALREADY_RUNNING
Ý説÷µ½ TRUE
ÝèªoÈ©Á½i³êÈ©Á½j FALSE
Ü½ÍæÁI¹
Ó
UnlhaConfigDialog() ªÔ·R}hñÉÍC±ÌãÅྷé Extract-
Attribute yÑ RegardECommand ÌÝèÍÜÜêܹñBܽC_CA
OÅwèµ½îfBNgÍR}hñÉÍÜÜêܹñB
»Ì¼
ÝèÍ WXgÌ Software\ArchiverDll ȺɫÜêÜ·B A[
JCo DLL ÔŤÊÉgíêé Archiver\Common àÅÝè³êéIvV
É¢ÄÍC UNARJ32.DLL ¼ÌA[JCo DLL ÅÌÝèÌe¿ð
ó¯Ü·B
UNLHA32.DLL ;¦IÉWJæfBNgâIvVªwè³êÈ©Á
½êÉCàµWXgÉYÌȪlªÝè³êÄ¢êλêðgp
µÜ·BR}hCž¦IÉwè³ê½êÍCR}hwèªD
æIÉgp³êÜ·BWXgÉàwè³êĢȢêÍCUNLHA32.
DLL {ÌftHgÌ®ìÆÈèÜ·BUNLHA32.DLL ÉWXgÌÝ
èðgíÈ¢æ¤É³¹éÉÍ "-+" IvVðwèµÄº³¢BȨC
UnlhaConfigDialog() ªÔ·R}hñÉÍ "-+" IvVªÜÜêÄ
¢Ü·B
-----------------------------------------------------------------------
%o int WINAPI UnlhaExtractMem(const HWND _hwnd, LPCSTR _szCmdLine,
LPBYTE _szBuffer, const DWORD _dwSize, time_t *_lpTime,
LPWORD _lpwAttr, LPDWORD _lpdwWriteSize)
-----------------------------------------------------------------------
@\
obt@ÖWJµÜ·B
ø
_hwnd UNLHA32.DLL ðÄÑo·AvÌEBhEÌnhB
UNLHA32.DLL ÍÀsɱÌEBhEÉ뵀 EnableWin-
dow() ðÀsµEBhEÌ®ìð}§µÜ·BEBhE
ª¶ÝµÈ¢R\[AvÌêâCwè·éKvÌÈ
¢êÍ NULL ðnµÜ·B
_szCmdLine UNLHA32.DLL Én·R}h̶ñBUnlha() Ư¶àÌ
ªwèūܷªCR}hͳ³êÜ·B
_lpBuffer WJC[Wði[·éobt@B
_dwSize obt@ÌTCYBUNLHA32.DLL ªÔ·ÊÌTCYæèw
è³ê½TCYª¬³¢êÍwèTCYÜÅoͳêÜ·B
_lpTime WJ³ê½t@CÌ UTC ÅÌ^CX^vð¾Ü·B
KvÈ¢êÍ NULL ðwèµÜ·B
_lpwAttr WJ³ê½t@CÌ®«ð¾Ü·B KvÈ¢êÍ NULL
ðwèµÜ·B
_lpdwWriteSize
WJÌÊ«Üê½TCYð¾Ü·B KvÈ¢êÍ
NULL ðwèµÜ·B
ßèl
³íI¹Ì 0B
G[ª¶µ½ê 0 ÈOÌB
»Ì¼
API Ì«iãCÉât@C¼ÉChJ[hðg¤ÌͳӡÆv
íêÜ·B
-----------------------------------------------------------------------
%p int WINAPI UnlhaCompressMem(const HWND _hwnd, LPCSTR _szCmdLine,
const LPBYTE _szBuffer, const DWORD _dwSize,
const time_t *_lpTime, const LPWORD _lpwAttr,
LPDWORD _lpdwWriteSize)
-----------------------------------------------------------------------
@\
obt@Ìàeð³kµÄÉÉi[µÜ·B
ø
_hwnd UNLHA32.DLL ðÄÑo·AvÌEBhEÌnhB
UNLHA32.DLL ÍÀsɱÌEBhEÉ뵀 EnableWin-
dow() ðÀsµEBhEÌ®ìð}§µÜ·BEBhE
ª¶ÝµÈ¢R\[AvÌêâCwè·éKvÌÈ
¢êÍ NULL ðnµÜ·B
_szCmdLine UNLHA32.DLL Én·R}h̶ñBt@C¼ÆµÄw
èµ½à̪i[̼OÉÈèÜ·B
_lpBuffer ³k·éC[Wði[µ½obt@B
_dwSize C[WÌTCYB
_lpTime i[·éð UTC ÅwèµÜ·BNULL ðwè·éƳk
ðsÁ½_̪gp³êÜ·B
_lpwAttr i[·é®«ðwèµÜ·BNULL ðwè·éÆ FA_ARCH Æ
ÝȳêÜ·B
_lpdwWriteSize
³kãÌTCYð¾Ü·BKvÈ¢Æ«Í NULL ðwèµÜ
·B
ßèl
³íI¹Ì 0B
G[ª¶µ½ê 0 ÈOÌB
»Ì¼
API Ì«iãCÉât@C¼ÉChJ[hðg¤ÌͳӡÆv
íêÜ·B
--------------------------------------------------------------------------
ÈºÌ OpenArchive nÌ API ÍCãLÅྵ½ Unlha nÌ API ÆÌ¬ÝÍÅ
«Ü¹ñÌÅӵľ³¢B
--------------------------------------------------------------------------
-----------------------------------------------------------------------
%q HARC WINAPI UnlhaOpenArchive(const HWND _hwnd, LPCSTR _szFileName,
const DWORD _dwMode)
-----------------------------------------------------------------------
@\
nhÆÉt@CðÑt¯Ü·B
ø
_hwnd UNLHA32.DLL ðÄÑo·AvÌEBhEÌnhB
_szFileName Ét@C¼B
_dwMode UnlhaFindFirst() ÌÌ[hB
M_INIT_FILE_USE WXgÌÝèðpB
M_REGARDLESS_INIT_FILE WXgÌÝèð³B
"-+" Ư¶B
M_CHECK_ALL_PATH t@C¼ÌõÉSpX
ðõ·éB"-p" Ư¶B
M_CHECK_FILENAME_ONLY õÉt@C¼ÌÝðÎ
ÛÆ·éB"-p-" Ư¶B
M_USE_DRIVE_LETTER i[t@CÌfBNg
îñÉ¢Ä[gfBN
gàp·éB"-jf" Ư
¶B
M_NOT_USE_DRIVE_LETTER i[t@CÌ[gfB
Ngîñð³·éB
M_RECOVERY_ON j¹wb_ð³µÄCÈ~
Ìi[t@CÉANZXÅ
«éæ¤É·éB"-jc" Ư
¶B
M_ERROR_MESSAGE_ON G[ÉbZ[Wð\¦
·éB"-gm-" Ư¶B
M_ERROR_MESSAGE_OFF G[ÉbZ[Wð\¦
µÈ¢B"-gm" Ư¶B
ßèl
wèÌÉt@CÉε½nhBG[Í NULL ðԵܷB
Ó
»o[WÅÍC¯É¡Ìnhðp·éÍūܹñB(^^;)
Unlha() Ì[`ðp·é½ßÉO[oÏðgpµÄ¢éÌ
ÅcB
-----------------------------------------------------------------------
%r int WINAPI _export UnlhaCloseArchive(HARC _harc)
-----------------------------------------------------------------------
@\
UnlhaOpenArchive() Åèt¯½nhððú·éB
ø
_harc UnlhaOpenArchive() ÅÔ³ê½nhB
ßèl
³íI¹ÉOªÔ³êÜ·B
-----------------------------------------------------------------------
%s int WINAPI UnlhaFindFirst(HARC _harc, LPCSTR _szWildName,
INDIVIDUALINFO FAR *lpSubInfo)
-----------------------------------------------------------------------
@\
ÅÌi[t@CÌîñð¾Ü·B
ø
_harc UnlhaOpenArchive() ÅÔ³ê½nhB
_szWildName õ·ét@C¼Bt@C¼Í¡wèªÂ\B
_lpSubInfo ÊðÔ·½ßÌ INDIVIDUALINFO ^Ì\¢ÌÖÌ|C
^BÊðKvƵȢêÍ NULL ðwèūܷB
ßèl
0 ³íI¹B_lpSubInfo Åwè³ê½ÏÉi[t@C
Ìîñði[·éB
-1 õI¹B
Ó
UnlhaFindFirst() ÆÌ UnlhaFindNext() ÅÍCAPI ÌÌI¹É
HARC ÅÖAt¯çêÄ¢éÉðêU¶édlÉÈÁĢܷB »Ì
½ßC ±êçÌ API ÉæéõÅ}b`·éxÉt@CÌJªsí
ê鱯ÉÈèCÂ«ÉæÁÄÍiÁÉt@CÖWÉtbNª|©Á
Ä¢éêjªñíÉdÈéÂ\«ª èÜ·BÁÉEBXõ
\tgÅÉÌ`FbNªsíê鿤ÉÝè³êÄ¢éêÍCÜé
Åñ¾æ¤ÉÈ鱯ª èÜ·B(^^;;
-----------------------------------------------------------------------
%t int WINAPI UnlhaFindNext(HARC _harc,
INDIVIDUALINFO FAR *_lpSubInfo)
-----------------------------------------------------------------------
@\
QÔÚÈ~Ìi[t@CÌîñð¾Ü·B
ø
_harc UnlhaOpenArchive() ÅÔ³ê½nhB
_lpSubInfo ÊðÔ·½ßÌ INDIVIDUALINFO ^Ì\¢ÌÖÌ|C
^BÊðKvƵȢêÍ NULL ðwèūܷB
ßèl
0 ³íI¹B_lpSubInfo Åwè³ê½ÏÉi[t@C
Ìîñði[·éB
-1 õI¹B
-----------------------------------------------------------------------
%u int WINAPI UnlhaGetArcFileName(HARC _harc,
LPSTR _lpBuffer, const int _nSize)
-----------------------------------------------------------------------
@\
Ét@C¼ð¾Ü·B
ø
_lpBuffer t@C¼ði[·éobt@B
_nSize obt@ÌTCYB
ßèl
³íI¹ÍOðԵܷB
-----------------------------------------------------------------------
%v DWORD WINAPI UnlhaGetArcFileSize(HARC _harc)
-----------------------------------------------------------------------
@\
Ét@CÌTCYð¾Ü·B
ßèl
Ét@CÌTCYBG[ÉÍ -1 ðԵܷB
-----------------------------------------------------------------------
%w DWORD WINAPI UnlhaGetArcOriginalSize(HARC _harc)
-----------------------------------------------------------------------
@\
õÉ}b`µ½t@CÌTCYÌvð¾Ü·BUnlhaFindNext() Ì
õªI¹µ½ãÅÈ¢ÆÔplÉÓ¡Í èܹñBõÌêÍ»
êÜÅÉ}b`µ½t@CÌTCYÌvÆÈèÜ·B
ßèl
vTCYBG[ÉÍ -1 ðԵܷB
-----------------------------------------------------------------------
%x DWORD WINAPI UnlhaGetArcCompressedSize(HARC _harc)
-----------------------------------------------------------------------
@\
õÉ}b`µ½t@C̳kTCYÌvð¾Ü·B
ßèl
³kTCYÌvBG[ÉÍ -1 ðԵܷB
Ó
UnlhaFindNext() ÌõªI¹µÄ©çÄÑo·æ¤ÉµÄ¾³¢B
-----------------------------------------------------------------------
%y WORD WINAPI UnlhaGetArcRatio(HARC _harc)
-----------------------------------------------------------------------
@\
õÉ}b`µ½t@CÌSÌ̳k¦ð¾Ü·B
ßèl
SÌ̳k¦BG[ÉÍ -1B
Ó
UnlhaFindNext() ÌõªI¹µÄ©çÄÑo·æ¤ÉµÄ¾³¢B
-----------------------------------------------------------------------
%z WORD WINAPI UnlhaGetArcDate(HARC _harc)
-----------------------------------------------------------------------
@\
Ét@CÌútð¾Ü·B
ßèl
Ét@CÌútBG[ÉÍ -1B `®Í INDIVIDUALINFO \¢
ÌÉi[³êéàÌÆ¯¶Å·B
-----------------------------------------------------------------------
%A WORD WINAPI UnlhaGetArcTime(HARC _harc)
-----------------------------------------------------------------------
@\
Ét@CÌð¾Ü·B
ßèl
Ét@CÌBG[ÉÍ -1B `®Í INDIVIDUALINFO \¢
ÌÉi[³êéàÌÆ¯¶Å·B
-----------------------------------------------------------------------
%B UINT WINAPI UnlhaGetArcOSType(HARC _harc)
-----------------------------------------------------------------------
@\
Ét@Cì¬Égp³ê½nrÌíÞð¾Ü·B
ßèl
nrÌíÞB
O MS-DOS
Q UNIX
S MAC-OS
T OS/2
PO »Ì¼
PP OS9
PQ OS/68K
PR OS/386
PS HUMAN
PT CP/M
PU FLEX
PV Runser
PW WindowsNT
PX Windows95
|P G[
-----------------------------------------------------------------------
%C int WINAPI UnlhaIsSFXFile(HARC _harc)
-----------------------------------------------------------------------
@\
Ét@Cª©Èðt@C©Ç¤©ð¾Ü·B
ßèl
Ét@CÌíÞð çí·ÌlðԵܷBG[ÌêÍ|P
ðԵܷB
SFX_NOT 0 ©ÈðÉ(SFX)ÅÍÈ¢
SFX_DOS_213S 1 LHA's SFX 2.13 È~Ì small DosSFX
SFX_DOS_250S 2 LHA's SFX 2.50 È~Ì small DosSFX
SFX_DOS_265S 3 LHA's SFX 2.65 È~Ì small DosSFX
SFX_DOS_213L 51 LHA's SFX 2.13 È~Ì large DosSFX
SFX_DOS_250L 52 LHA's SFX 2.50 È~Ì large DosSFX
SFX_DOS_265L 53 LHA's SFX 2.65 È~Ì large DosSFX
SFX_WIN16_213_1 1001 LHA's SFX 2.13.w16.1 È~Ì WinSFX
SFX_WIN16_213_2 1002 LHA's SFX 2.13.w16.2 È~Ì WinSFX
SFX_WIN16_213_3 1003 üÇÅ LHA's SFX 2.13.w16.3 WinSFX
SFX_WIN16_250_1 1011 UNLHA32.DLL Æ©ÌüÇÅ WinSFXM 2.50
SFX_WIN16_255_1 1021 WinSFXM 2.55.w16.4 È~
SFX_WIN32_213_1 2001 LHA's SFX 2.13.w32.1 È~Ì WinSFX32
SFX_WIN32_213_3 2002 üÇÅ LHA's SFX 2.13.w32.3 WinSFX32
SFX_WIN32_250_1 2011 UNLHA32.DLL Æ©ÌüÇÅ WinSFX32M
SFX_WIN32_250_6 2012 WinSFX32M 2.50.w32.6 È~
SFX_LZHSFX_1002 2051 Explorer g£j
[Å쬳êé LZHSFX
1.0.0.2 È~Ì WinSFX32
SFX_LZHSFX_1100 2052 Explorer g£j
[Å쬳êé LZHSFX
1.1.0.0 È~Ì WinSFX32
SFX_LZHAUTO_0002 2101 Explorer g£j
[Å쬳êé LZHAUTO
0.0.0.2 È~Ì WinSFX32
SFX_LZHAUTO_1002 2102 Explorer g£j
[Å쬳êé LZHAUTO
1.0.0.2 È~Ì WinSFX32
SFX_LZHAUTO_1100 2103 Explorer g£j
[Å쬳êé LZHAUTO
1.1.0.0 È~Ì WinSFX32
Ó
©ÈðÉÉ¢ÄÍCÉ©ÌÉ©ÈðÉŠ鱯ð¦·t
Oâo[WÌîñª¶Ý·éí¯ÅÍ èܹñÌÅC©Èð
ÉÌo[WÉæÁÄͳµF¯Å«È¢êª èÜ·B
ܽCUNLHA32.DLL ÍãLÌ LHA.EXECt@C}l[Wg£j
[C
Explorer g£j
[C»êÆ UNLHA32.DLL ©gªì¬·éàÌÈOÌ
©ÈðÉÍF¯Å«Ü¹ñB
-----------------------------------------------------------------------
%D int WINAPI UnlhaGetFileName(HARC _harc,
LPSTR _lpBuffer, const int _nSize)
-----------------------------------------------------------------------
@\
i[t@CÌt@C¼ð¾Ü·B
ø
_lpBuffer t@C¼ði[·éobt@B
_nSize obt@ÌTCYB
ßèl
³íI¹ÉÍOªÔ³êC_lpBuffer Ét@C¼ªi[³êÜ·B
-----------------------------------------------------------------------
%E int WINAPI UnlhaGetMethod(HARC _harc,
LPSTR _lpBuffer, const int _nSize)
-----------------------------------------------------------------------
@\
i[t@C̳k@ð¾Ü·B
ø
_lpBuffer t@C¼ði[·éobt@B
_nSize obt@ÌTCYB
ßèl
³íI¹ÉÍOªÔ³êC_lpBuffer ɳk@𦷶ñªi[³ê
Ü·B ¶ñÍêXgÅ\¦³êé "lh5" Æ¢Á½`®ÌàÌÆ
ÈèÜ·B
-----------------------------------------------------------------------
%F DWORD WINAPI UnlhaGetOriginalSize(HARC _harc)
-----------------------------------------------------------------------
@\
i[t@CÌTCYð¾Ü·B
ßèl
i[t@CÌTCYBG[Í -1B
-----------------------------------------------------------------------
%G DWORD WINAPI UnlhaGetCompressedSize(HARC _harc)
-----------------------------------------------------------------------
@\
i[t@C̳kTCYð¾Ü·B
ßèl
i[t@C̳kTCYBG[Í -1B
-----------------------------------------------------------------------
%H WORD WINAPI UnlhaGetRatio(HARC _harc)
-----------------------------------------------------------------------
@\
i[t@C̳k¦ð¾Ü·B
ßèl
i[t@C̳k¦BG[Í -1B
-----------------------------------------------------------------------
%I WORD WINAPI UnlhaGetDate(HARC _harc)
-----------------------------------------------------------------------
@\
i[t@CÌútð¾Ü·B
ßèl
i[t@CÌútBG[Í -1B
-----------------------------------------------------------------------
%J WORD WINAPI UnlhaGetTime(HARC _harc)
-----------------------------------------------------------------------
@\
i[t@CÌð¾Ü·B
ßèl
i[t@CÌBG[Í -1B
-----------------------------------------------------------------------
%K DWORD WINAPI UnlhaGetWriteTime(HARC _harc)
-----------------------------------------------------------------------
@\
i[t@CÌÅIXVúð¾Ü·B
ßèl
i[t@CÌ UNIX `®Ì UTC ÉæéXVúBG[Í -1B
Ó
ãqÌ UnlhaGetCreateTime()CUnlhaGetAccessTime() à¯l¾ªC±ê
çðÛ¶·éwb_Ìdlª³®èµÄ¢È¢ÌÅCÈé×gpðT
¦é±ÆB
-----------------------------------------------------------------------
%L DWORD WINAPI UnlhaGetCreateTime(HARC _harc)
-----------------------------------------------------------------------
@\
i[t@CÌì¬úð¾Ü·B
ßèl
i[t@CÌ UNIX `®Ì UTC Éæéì¬úBG[Í -1B
-----------------------------------------------------------------------
%M DWORD WINAPI UnlhaGetAccessTime(HARC _harc)
-----------------------------------------------------------------------
@\
i[t@CÌQÆúð¾Ü·B
ßèl
i[t@CÌ UNIX `®Ì UTC ÉæéQÆúBG[Í -1B
-----------------------------------------------------------------------
%N DWORD WINAPI UnlhaGetCRC(HARC _harc)
-----------------------------------------------------------------------
@\
i[t@CÌ`FbNTð¾Ü·B
ßèl
i[t@CÌ`FbNTBG[Í -1B
-----------------------------------------------------------------------
%O int WINAPI UnlhaGetAttribute(HARC _harc)
-----------------------------------------------------------------------
@\
i[t@CÌ®«ð¾Ü·B
ßèl
i[t@CÌ®«BG[Í -1B
P FA_RDONLY ÇÝÝêpt@CB
Q FA_HIDDEN s®«t@CB
S FA_SYSTEM VXet@CB
W FA_LABEL {
[xB
PU FA_DIREC fBNgB
RQ FA_ARCH Û¶rbgB
-----------------------------------------------------------------------
%P UINT WINAPI UnlhaGetOSType(HARC _harc)
-----------------------------------------------------------------------
@\
i[t@Cªì¬³ê½nrð¾Ü·B
ßèl
nrð¦·lB
-----------------------------------------------------------------------
%2. INDIVIDUALINFO Ì\¢
-----------------------------------------------------------------------
\¢Ìè`
typedef struct {
DWORD dwOriginalSize;
DWORD dwCompressedSize;
DWORD dwCRC;
UINT uFlag;
UINT uOSType;
WORD wRatio;
WORD wDate;
WORD wTime;
char szFileName[FNAME_MAX32 + 1];
char dummy1[3];
char szAttribute[8];
char szMode[8];
}@INDIVIDUALINFO;
oÌà¾
dwOriginalSize t@CÌTCYB
dwCompressedSize ³kãÌTCYB
dwCRC i[t@CÌ`FbNTp CRCB½¾µC
ãÊ 16 bit ÍíÉOB
uFlag WJâeXgðsÁ½êCi[t@CÌ
ʪԳêÜ·B R[hÍ Unlha() ª
Ô·àÌÆ¯¶B»Ì¼ÌêÍOB
uOSType ±Ìt@CÌì¬Égíê½nrB
wRatio ³k¦B½¾µCp[~Å\µÄ èÜ·B
wDate útBãÊ©çVrbgªPXWON©çÌN
CSrbgªCcèÌTrbgªúð
\·B
wTime BãÊ©çTrbgªÔCUrbgªªC
cèÌTrbgªbðQÅÁ½àÌB
szFileName A[JCut@C¼B
szAttribute i[t@CÌ®«B'l' R}hÅÌX
goÍÆ¯¶B
szMode _~[BUNLHA32.DLL Åͳk`®Ì¶ñª
üÁĢܷB
-----------------------------------------------------------------------
%3. WXgÌÝèl
-----------------------------------------------------------------------
@Win32s ÅÅÍC¼Oª·×ÄL[ÆÈèClàSÄ REG_SZ ÆÈèÜ·B
HKEY_CURRENT_USER\\Software\\ArchiverDll\\Common
DefaultDir : REG_SZ
îfBNgBÅãÍ '\' © ':' ÅIí鱯B
DirectoryMode : REG_DWORD
WJÉâÎfBNgðgp·é©CÎfBN
gðgp·é©ÌtOB
0 : ÎfBNgB "-jf0" ðwèµ
½êƯ¶B
1 : âÎfBNgBiftHgj
OverWriteMode : REG_DWORD
WJt@CÌã«Ì®ìB
0 : íÉã«B "-jyo" ðwèµ½ê
Ư¶B
1 : ã«·é©mFB(ftHg)
2 : 㫵ȢB"-jn" ðwèµ½ê
Ư¶B
ExtractAttribute : REG_DWORD
Agr
[gàWJ·é©Ç¤©ÌtOB
0 : WJµÈ¢B
1 : WJ·éB(ftHg)
JunkDirectory : REG_DWORD
'x' ½ßðwèÉà 'e' ½ßƩȵÄÀs·é©
Ǥ©ÌtOB
0 : 'x' ½ßðÀsB(ftHg)
1 : 'e' ½ßðÀsB"-gj" ðwèµ½ê
Ư¶B
HKEY_CURRENT_USER\\Software\\ArchiverDll\\UNLHA32
MatchLevel : REG_DWORD
µ§Èt@CT[`ð·é©Ç¤©ÌtOB
0 : µÈ¢B(ftHg)
1 : ·éB"-p" ðwèµ½êÆ¯¶B
DiskSpaceCheck : REG_DWORD
WJæÌfBXNÌó«ÌmFð·é©Ç¤©ÌtOB
0 : mFðµÈ¢B(ftHg)
1 : mFð·éB"-jd" ðwèµ½êÆ
¯¶B
MakeDirectoryMode : REG_DWORD
fBNgì¬ÌmFð·é©Ç¤©ÌtOB
0 : mFð·éB(ftHg)
1 : mFðµÈ¢B"-jyc" ðwèµ½ê
Ư¶B
TotalBar : REG_DWORD
WJt@CÌvð 100% Ƶ½i»Otð\¦·
é©Ç¤©ÌtOB½¾µCÉt@CðQxÇÝ
·é±ÆÉÈéÌÅÉÔª©©èÜ·B
0 : \¦µÈ¢B(ftHg)
1 : \¦·éB
FDDCheck : REG_DWORD
FDD hCuÌêÉãLÌv[hÅÌOt\¦
Ì}§ðs¤©Ç¤©ÌtOBHDD ÌfoCXÅÍ
ÉÌQxÇÝðsÁÄà³ÙÇCÉÈçÈ¢öxÅ·
ªCFDD ÅÍ©ÈèÒ½³ê鱯ÉÈéÌÅftH
gÅÍÊí\¦ðs¤æ¤ÉÈÁĢܷB
0 : }§ðsíÈ¢B
1 : }§ðs¤B(ftHg)
FVMode : REG_DWORD
WJt@C¼ÆOt¾¯ÌÈÕ\¦Æ·é©Ç¤©
ÌtO
0 : Êí\¦B(ftHg)
1 : ÈÕ\¦B
UnlhaVersion : REG_DWORD
UnlhaGetVersion() ÌÔplð[U[ªwèµ½¢ê
ÉÝè·éB
119 : ±Ìê 119 ðÔ·æ¤ÉÈèÜ·B
Ver 1.19 ÌÓ¡B
InitOption : REG_SZ
Unlha() n API ÅÌȪlðÝè·éB ®ÍR}
hwè¶ñƯ¶ÈÌÅCCOMMAND.TXT ðQÆB±±
ÅÌwèÍ UnlhaConfigDialog() ÅÌwèæèDæx
ª³çÉá¢B
CauseOption : REG_SZ
ãÌ InitOption ÆáÁÄC±¿çÍK¸±±ÅÌwè
ªLøÆÈéBAvª¯¶XCb`ðwèµÄ¢
½ÆµÄàC»êͳ³êéB
±ÌÚÍC COÅÌgpÈÇuh0 `®ÈOÌwb_
ªµ¦È¢ÌÅCÆÉ© h0 `®Å·×ĵ½¢v
cÈÇÆ¢Á½êÉgp·éàÌÅ ÁÄCÊíÍg
p·éKvªÈ¢BgpÉÍ\ªÓðv·éB
-----------------------------------------------------------------------
%4. Unlha()ÌÔ·G[R[hÆ»ÌÓ¡
-----------------------------------------------------------------------
¡x FYt@CÉ¢ÄÌðXLbv·é¾¯ÅCî{IÉÀsð
~·é±ÆÍ èܹñB
ERROR_DISK_SPACE
WJ·é×ÌfBXNÌ󫪫èܹñB
ERROR_READ_ONLY
WJæÌt@CÍ[hI[Å·B
ERROR_USER_SKIP
[U[ÉæÁÄWJðXLbv³êܵ½B
ERROR_FILE_CRC
i[t@CÌ`FbNTªÁĢܹñB
ERROR_FILE_OPEN
WJÉt@CðJ¯Ü¹ñŵ½B
ERROR_MORE_FRESH
æèVµ¢t@CªWJæÉ¶ÝµÄ¢Ü·B
ERROR_NOT_EXIST
t@CÍWJæÉ¶ÝµÄ¢Ü¹ñB
¡G[ Fv½IÈG[Å»Ì_ÅÀsð~µÜ·B
ERROR_MAKEDIRECTORY
fBNgªì¬Å«Ü¹ñB
ERROR_CANNOT_WRITE
WJÉ«ÝG[ª¶¶Üµ½B
ERROR_HUFFMAN_CODE
LZH t@CÌnt}R[hªóêĢܷB
ERROR_COMMENT_HEADER
LZH t@CÌRgwb_ªóêĢܷB
ERROR_HEADER_CRC
LZH t@CÌwb_Ì`FbNTªÁĢܹñB
ERROR_HEADER_BROKEN
LZH t@CÌwb_ªóêĢܷB
ERROR_ARC_FILE_OPEN
LZH t@CðJªoܹñB
ERROR_NOT_ARC_FILE
LZH t@C¼Ìw誳êĢܹñB
ERROR_CANNOT_READ
LZH t@CÌÇÝÝÉÇÝÝG[ªoܵ½B
ERROR_FILE_STYLE
wè³ê½t@CÍ LZH t@CÅÍ èܹñB
ERROR_COMMAND_NAME
R}hwèªÔáÁĢܷB
ERROR_MORE_HEAP_MEMORY
ìÆp̽ßÌq[vªs«µÄ¢Ü·B
ERROR_ENOUGH_MEMORY
O[oªs«µÄ¢Ü·B
ERROR_ALREADY_RUNNING
ùÉ UNLHA32.DLL ª®ìÅ·B
ERROR_USER_CANCEL
[U[ÉæÁÄWJðf³êܵ½B
ERROR_HARC_ISNOT_OPENED
UnlhaOpenArchive() ÅÉt@CÆnhðÖAt¯éOÉ Unlha-
FindFirst() Ì API ðgpµÜµ½B
ERROR_NOT_SEARCH_MODE
UnlhaFindFirst() ðgp·éOÉ UnlhaFindNext() ªÄÎê½BܽÍC
±êçðÄÑo·OÉ UnlhaGetFileName() Ì API ªÄÎê½B
ERROR_NOT_SUPPORT
UNLHA32.DLL ÅT|[g³êĢȢ API ªgp³êܵ½B
ERROR_TIME_STAMP
útyÑÔÌwè`®ªÔáÁĢܷB
ERROR_TMP_OPEN
ìÆt@CªI[vūܹñB
ERROR_LONG_FILE_NAME
fBNgÌpXª··¬Ü·B
ERROR_ARC_READ_ONLY
«Ýêp®«ÌÉt@CÉηéìÍūܹñB
ERROR_SAME_NAME_FILE
·Åɯ¶¼OÌt@CªÉÉi[³êĢܷB
ERROR_NOT_FIND_ARC_FILE
wè³ê½fBNgÉÍ LZH t@Cª èܹñŵ½B
ERROR_RESPONSE_READ
X|Xt@CÌÇÝÝÉG[ª¶µÜµ½B
ERROR_NOT_FILENAME
t@C¼ÌwèªKvÅ·B
ERROR_TMP_COPY
ìÆt@CÌÉÖ̫ߵªÅ«Ü¹ñŵ½B
-----------------------------------------------------------------------
%5. »Ì¼
-----------------------------------------------------------------------
UnlhaOpenArchive ÈÇÅÔ³êénhÌw·O[oÍ GMEM_MOVE-
ABLE ÆÈÁĢܷÌÅCQÆÉÍbN·éæ¤É¨è¢µÜ·¡iO[o
ÈÌÅÇÌÝ¿ bNµÈ¯êÎÈèܹñªcB^^;jȨCAv¤
ž¦IÉ GlobalFree ·éKvÍ èܹñBªCðúµÄ¨¢½Ù¤ª
ÌÁïð³¦çêÜ·B
=======================================================================
Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.