
	RoAddr.dll Wrapper Component - TRoAddrDll
		scene/1.4 - 2004/05/19
		for RoAddr.dll Interface 1
			after Ver.20040515a
		by  / RagnaMusik
		   - ragnarok@reharmonize.net
		   - http:/reharmonize.net/ragnarok/

y Tv z

RagnarokOnline̎xc[RoAddr.dllDelphiŎg߂̃bp[R|[lgłB
tH[ɂ؂ƗƂŊȒPRoAddr.dll̋@\gp邱Ƃo܂AB
RoAddr.dll Ver.20040515aiInterface1jȍ~ΏۂƂȂĂ܂B
Interfaceł͐ɎgpłȂƎv܂̂łӂB

y g z

CXg[[Ragnarok]^uRoAddrDllR|[lgo^܂B
tH[ɓ\tăvOLoad\bhĂяoDLLǂݍ܂܂B
ωNRoAddr.dll̃R[obNɑΉeCxĝ
Cxg֐ōDȏsĂB
ڂRoAddr.dllƈꏏɔzzĂRoAddrDef.hQƂĂB

y ڍ׉ z

- Load\bh -
Load\bhDLL̓ǂݍ݂s܂B
Load\bhRO_RoAddrInit()ĂяoĂ܂B
R[obN֐RoAddrCallBack()o^ȂSetCallBackvpeBfalseɂĂB
R[obN֐o^̈uParamɂUserParamvpeB܂B
ǂݍ݂ɎsERoAddrDllNX𐶐܂B
̂ƂɂDLLsĂ܂̂ŁAG[s
exceptERoAddrDll߂܂ĂB
ȂALoad\bhĂяoORoAddrDirvpeBRoAddr.dll̂
fBNgpXĂKv܂B

- Unload\bh -
Unload\bhDLL̉s܂B
ꉞG[ɂDLL͍̉sĂłAsłgpč\܂B

- GetNowParam\bh -
overloadwňɂĕԂlႢ܂B
ZoneBIPAddress܂PCharŕԂĂ̂ŎgȂ牽ƂLXgĂijB

- JobToStr\bh -
0->Novicê悤ɕϊ鏬֐łB
PCharŕԂ̂œKɎgĂB

- MapNameConv\bh -
ROPARAM_MAPNAMẼ}bvi:pronterajRagMap.iniŎw肵ɕϊ܂B
RagMap.iniRoAddr.iniƓfBNgɓKv܂B

- ShowDllVersion\bh -
݂RoAddr.dll̃o[W𕶎ŕԂ܂B
'RoAddr.dll Ver.20030529a Interface 1 Public Test'ĂȊłB

- RO_GetNextPacket\bh -
PPChar^PChar^ւ̃|C^łB
pPbg֘A͂ƎMȂ̂ŃAhoCX肢܂ijB

- DllOptionvpeB -
D揇ʂdopNONE < dopPOLLING,dopGETPACKET,dopWNDWATCH < dopALLłB
dopNONE܂߂ĂA𓯎Ɋ܂߂Ƃ炪D悳܂B
dopALL܂߂Ƒ̃IvVׂ͂Ċ܂܂܂B
WdopNONEƓłB

- ErrorProcvpeB -
TrueɂƃR[obNROMSG_ERRORԂĂiOnErrorCxgOjA
wParamROERROR_NOTFOUNDINI,ROERROR_INVALIDINI,ROERROR_NOUTFOUNDRAGEXȄꍇ
G[R|[lgōs܂B
̑wParam̏ꍇOnErrorCxgN܂B
G[sꂽꍇOnErrorCxg͔܂B

- TestVerAllowvpeB -
TrueɂƋIɃeXgo[W܂B
DLLeXgo[W̍ۂɊmF_CAOoȂȂ܂B

- Cxge -
{I-1Ԃ悤ɂĂB
OnErrorCxgŃG[oꍇ0Ԃ悤ɂĂB
ڂRoAddrDef.hQƂĂB

y Tv\[X z

SampletH_ɃTv\[XĂ܂B
QlɂĂB
RpCۂRoAddrDll1.RoAddrDirRoAddr.dll̃pXKv܂B

y  z

Windows2000SP3+Delphi7 ProfessionalŃRpCmFĂ܂B
# Borland C++ BuilderłgƂƂ...

y Ɛӎ z

ׂĎȐӔCł̎gp肢܂B

y gp z

{IɂRɃvOɑgݍŒč\܂B
AȂ炻͂ŊłB
\[X̂Ĕzzۂɂ͂ł邾A肢܂B
ς\܂񂪁Aς̂zzۂɂ͂̎|𖾋LĂB
ƃoOׂ炱苳ĂBXIɂł\܂񂯂ǁB

y T|[g z

LWebTCgBBS܂̓[ɂď܂B
ӌoO񍐒ǉė~֐ȂǂȂǂCyɂǂB

y ӎ z

ERoAddr.dll̍Lay
E#ro_tools̕X
肪Ƃ܂B

y XV z

2004/05/19 Wed : scene/1.4
		RoAddr.dll Ver.20040515aɑΉigςĂ܂񂪁jB
		Export֐̒`@ςĂ݂B
2004/04/16 Fri : scene/1.3a
		o[WsɃANZXᔽosCB
2003/12/03 Wed : scene/1.3
		RoAddr.dll Ver.20031010aɑΉB
		萔ROPARAM_SCPAGEǉB
		V񎟐E̒萔ǉB
2003/07/10 Thu : scene/1.2
		RoAddr.dll Ver.20030708aɑΉ
		ipPbg͈Íꂽ܂ܓ͂܂jB
		萔ROPARAM_AIDǉB
		inis̃G[ύXB
2003/05/06 Tue : scene/1.1
		RoAddr.dll Ver.20030506aɑΉB
		ȉǉB
		RO_GetNextPacket\bh
		RO_CheckDllVersion\bh
		RO_SplitDllVersion\bh
		MapNameConv\bh
		ShowDllVersion\bh
2003/05/03 Sat : scene/1.0 JB

y t@X z

[ Property ]
DllName: String			// RoAddr.dll̃t@Cw
DllOption: TDllOptions		// RoAddr.dll̎gpIvVw
	dopNONE			// Ȃ
	dopPOLLING		// |[Os
	dopGETPACKET		// pPbg
	dopWNDWATCH		// RÕEBhEԂ𒲂ׂ
	dopALL			// SIvVݒ
DllVersion: TDllVersion		// RoAddr.dll̑Ήo[WwiRoAddrDef.hQƁj
	Day: Word		// [X
	IFVer: Word		// C^[tFCXo[W
	IsTest: Boolean		// eXgo[Wǂ
	Month: Word		// [X
	Number: Word		// [Xio[
	Year: Word		// [XN
ErrorProc: Boolean		// DLLǂݍݎɃR|[lgŃG[s
RoAddrDir: String		// RoAddr.dll̒uĂfBNgw
SetCallBack: Boolean		// DLLǂݍݎɃR[obN֐Zbg邩
TestVerAllow: Boolean		// DLLeXgo[Wł邱ƂIɋ邩
UserParam: Pointer		// R[obN֐ZbgɓnuParam

[ Method ]
Load				// RoAddr.dllǂݍ
Unload				// RoAddr.dll
GetNowParam(RoParam)		// ݂̃Xe[^XԂ
JobToStr(Job)			// Job̐l𕶎ɕϊ
MapNameConv(MapName)		// }bvRagMap.inĩ}bvɕϊ
ShowDllVersion			// RoAddr.dll̃o[WԂ
RO_*				// RoAddr.dllExport֐

[ Event ]
OnError				// G[
OnGetPacket			// pPbgǂݎ莞
OnParamChange			// Xe[^Xω
OnStateChange			// RȌԕω
OnWndStateChange		// RÕEBhEԕω

[ Const ]
{ NXiJobj }
CN_NOVICE = $00;		// Novice
CN_SWORDMAN = $01;		// Swordman
CN_MAGICIAN = $02;		// Magician
CN_ARCHER = $03;		// Archer
CN_ACOLYTE = $04;		// Acolyte
CN_MERCHANT = $05;		// Merchant
CN_THIEF = $06;			// Thief
CN_KNIGHT = $07;		// Knight
CN_PRIEST = $08;		// Priest
CN_WIZARD = $09;		// Wizard
CN_BLACKSMITH = $0A;		// Blacksmith
CN_HUNTER = $0B;		// Hunter
CN_ASSASSIN = $0C;		// Assassin
CN_CRUSADER = $0E;		// Crusader
CN_MONK = $0F;			// Monk
CN_SAGE = $10;			// Sage
CN_ROGUE = $11;			// Rogue
CN_ALCHEMIST = $12;		// Alchemist
CN_BARD = $13;			// Bard
CN_DANCER = $14;			// Dancer

{ from RoAddrDef.h }

{ R[obNʒm̗R }
ROMSG_ERROR = $00;		// DLLŃG[
ROMSG_STATECHANGE = $01;	// OiN̏Ԃω
ROMSG_PARAMCHANGE = $02;	// p[^̏Ԃω
ROMSG_GETPACKET = $03;		// pPbg󂯎
ROMSG_WNDSTATECHANGE = $04;	// OiÑEBhEԂω

{ RoAddr.dll̎gpIvV
  RO_RoAddrInit()RO_SetUseOptions()̂ꂩŎw }
ROOPTION_NONE = $00;		// ȂɂȂ
ROOPTION_POLLING = $01;		// |[O邩ǂ
ROOPTION_GETPACKET = $02;	// pPbge邩ǂ
ROOPTION_WNDWATCH = $04;	// RÕEBhEԂ𒲂ׂ邩ǂ
ROOPTION_ALL = $7FFFFFFF;	// SIvV

{ OiN̏ }
ROSTATE_NOTFOUND = $00;		// OiN݂Ȃ(NĂȂ)
ROSTATE_LOGIN = $01;		// OCorLZ
ROSTATE_GAME = $02;		// Q[

{ OiÑEBhȄ }
ROWNDSTATE_NOTFOUND = $00;	// OiNȂ(NĂȂ)
ROWNDSTATE_FOREGROUND = $01;	// ANeBu
ROWNDSTATE_MINIMIZED = $02;	// ŏĂ
ROWNDSTATE_BACKGROUND = $03;	// ANeBu

{ p[^wD
  0xFF ܂łunsigned longDHPƂExpƂWeightƂD
  0x100ȍ~null-termDIPAddressƂCharNameƂD}
ROPARAM_JOBCLASS = $00;
ROPARAM_HP = $01;
ROPARAM_HPMAX = $02;
ROPARAM_SP = $03;
ROPARAM_SPMAX = $04;
ROPARAM_BASELV = $05;
ROPARAM_BASEEXP = $06;
ROPARAM_BASEEXPNEXT = $07;
ROPARAM_JOBLV = $08;
ROPARAM_JOBEXP = $09;
ROPARAM_JOBEXPNEXT = $0A;
ROPARAM_WEIGHT = $0B;
ROPARAM_WEIGHTMAX = $0C;
ROPARAM_EFFECTSTATE = $0D;
ROPARAM_CARTNUM = $0E;
ROPARAM_CARTNUMMAX = $0F;
ROPARAM_CARTWEIGHT = $10;
ROPARAM_CARTWEIGHTMAX = $11;
ROPARAM_ZENY = $12;
ROPARAM_PETID = $13;
ROPARAM_PETMODIFIED = $14;
ROPARAM_PETSPRITETYPE = $15;
ROPARAM_PETLV = $16;
ROPARAM_PETFULLNESS = $17;
ROPARAM_PETRELATION = $18;
ROPARAM_PETACCESSORY = $19;
ROPARAM_PACKETLENGTH = $1A;
ROPARAM_AID = $1B;
ROPARAM_SCPAGE = $1C;
ROPARAM_MAPNAME = $0100;	// (const char * )
ROPARAM_MAPNAMERSW = $0101;	// (const char * )
ROPARAM_CHARNAME = $0102;	// (const char * )
ROPARAM_CHARIPADDRESS = $0103;	// (const char * )
ROPARAM_ZONEIPADDRESS = $0104;	// (const char * )
ROPARAM_ZONEBIPADDRESS = $0105;	// (SOCKADDR_IN *)
ROPARAM_PETNAME	= $0106;	// (const char  *)

{ G[R[h }
ROERROR_NOERROR = $00;		// ɃG[Ȃ
ROERROR_NOMEMORY = $01;		// mۂłȂ
ROERROR_NOTINITIALIZED = $02;	// ܂IĂȂ
ROERROR_NOTFOUNDINI = $03;	// RoAddr.iniȂ
ROERROR_INVALIDINI = $04;	// RoAddr.inisorÂȂ
ROERROR_DOWNLOADFAILED = $05;	// RoAddr.ini_E[hłȂ
ROERROR_NOTFOUNDNEWINI = $06;	// RoAddr.ini̐Vo[W܂Ȃ
ROERROR_NOTFOUNDRAGEXE = $07;	// Ragexe.exe(or Sakexe.exe)dllƓtH_ɂ݂Ȃ

{ RoAddrDef.h ܂ }

[EOF]