2012.09.07 11:29

※ XingAPI COM 버전

  1. Visual C++ 6.0 을 이용하여 ATL로 제작되었습니다.

  2. 3개의 콤포넌트로 제작되었고 대부분의 XingAPI DLL의 기능을 지원합니다.

  3. XingAPI DLL을 Rapping 하여 개발되었으므로 XingAPI DLL버전 관련 파일과 같은 폴더에 있어야 합니다.

 

※ XingAPI COM 버전의 장점

  1. COM(혹은 ActiveX)를 지원하는 윈도우즈 프로그래밍 언어(Excel도 가능)에서 XingAPI를 사용하실 수 있습니다.

  2. XingAPI DLL 버전의 어려운 개념을 내부적으로 처리하므로 개발이 쉽습니다.

  3. 10여개의 Property/Method/Event로 개발이 가능합니다.

 

※ Res 파일

  - Res 파일은 TR구조를 정의한 파일입니다.

  - DLL버전에서 사용하는 구조체를 사용하는 대신 Res 파일을 사용합니다.

  - XAQuery / XAReal 에서 Res 파일을 입력해주면(ResFileName / LoadFromResFile) Component가 Res 파일을 분석하게 되고

   이후에는 Block명과 Field명으로 접근을 할 수 있게 됩니다.

  - Res 파일은 COM 버전 파일이 있는 폴더에 같이 있거나 하위 폴더에 있어야 합니다.

 

※ XingAPI COM 버전 Component 설명 및 Property / Method / Event 설명

  1. XASession

    - Connect / Login / Logout 을 처리합니다.

    - 기타 Utility Function 을 제공합니다.

  이름 설명 반환값 인자 참조
Property ConnectTimeOut 서버연결시도시간 (1/1000초단위), 기본값은 -1(10초)     ETK_Connect()
SendPacketSize 전송 Packet Size, 기본값은 -1     ETK_Connect()
Method IsLoadAPI X-ing API DLL의 초기화 여부를 반환합니다.
False를 반환할 경우 XingAPI DLL의 위치를 확인하세요
True : 초기화 되어있음
False : 초기화가 되어있지 않음
-  
ConnectServer 서버와 연결합니다.  True : 연결성공
False : 연결실패
szServerIP : 서버주소
szServerPort : 서버포트
ETK_Connect()
DisconnectServer 서버와 연결을 종료합니다.  - - ETK_Disconnect()
IsConnected 서버와의 연결여부를 반환합니다.  True : 연결되어있음
False : 연결되어있지않음
- ETK_IsConnected()
Login 서버에 로그인합니다.  True : 로그인 전송성공
False : 로그인 전송실패
szID : 사용자 아이디
szPwd : 사용자 비밀번호
szCertPwd : 공인인증 비밀번호
nServerType : 서버Type
bShowCertErrDlg : 공인인증에러화면표시
ETK_Login()
Logout 서버에서 로그아웃합니다.  True : 로그인 전송성공
False : 로그인 전송실패
- ETK_Logout()
GetAccountListCount 계좌의 개수를 반환합니다.  계좌 개수 - ETK_GetAccountListCount()
GetAccountList 계좌번호를 반환합니다.  계좌번호 nIndex : 계좌번호 인덱스 ETK_GetAccountList()
GetETKMedia ETK_GetETKMedia() 당사매체 - ETK_GetETKMedia()
GetCommMedia 통신매체를 반환합니다.  통신매체 - ETK_GetCommMedia()
GetServerName 접속한 서버의 이름을 반환합니다.  접속서버명 - ETK_GetServerName()
GetClientIP PC의 IP를 반환합니다.  PC IP - ETK_GetClientIP()
GetLastError 마지막에 발생한 Error Code를 반환합니다.  Error Code - ETK_GetLastError()
GetErrorMessage Error Code에 대한 메시지를 반환합니다.  에러 메시지 nErrorCode ETK_GetErrorMessage()
Event Disconnect 서버와의 연결이 끊어졌을때 발생합니다.    - XM_DISCONNECT
Login 서버와의 로그인이 끝나면 발생합니다.    szCode : 코드
szMsg : 메시지
XM_LOGIN
Logout 서버와의 로그아웃이 끝나면 발생합니다.    - XM_LOGOUT

 

  2. XAQuery

    - 조회TR을 처리합니다.

    - 한개의 Object는 지정된 하나의 TR만 처리할 수 있습니다.

    - 하나의 조회(서버전송->서버수신)이 완료된 이후에 다음 조회를 할 수 있습니다.

      만약 동시에 여러개의 조회를 전송하려면 전송하려는 수만큼 Object를 생성해야 합니다.

    - 수신된 데이터는 다음 조회까지 데이터를 가지고 있습니다.

    - Data Type 에 의존하지 않으므로 DLL버전처럼 데이터를 처리하지 않습니다.

  이름 설명 반환값 인자 참조
Property ResFileName  RES 파일을 지정       
IsNext 연속조회 여부, 연속조회가 있는지 확인할때 사용합니다.      
Method LoadFromResFile RES 파일을 지정  True : 성공
False : 실패
szFileName : Res 파일명  
GetFieldData Block의 Field Data를 취득한다.  Data szBlockName : Block명
szFieldName : Field명
nOccursIndex : Block의 Occurs Index
 
SetFieldData Block의 Field Data를 설정한다.  - szBlockName : Block명
szFieldName : Field명
nOccursIndex : Block의 Occurs Index
szData : Data
 
GetBlockCount Block이 Occurs 일 경우 Occurs의 개수를 취득한다. Block 안의 Occurs 개수 -  
SetBlockCount Block의 개수를 설정한다. InBlock 시에만 사용한다. - Block 안의 Occurs 개수  
Request 조회TR을 요청한다.  True : 성공
False : 실패
bNext : 다음조회일 경우는 TRUE
          그렇지 않으면 FALSE
ETK_Request()
ClearBlock 지정한 Block 의 내용을 삭제한다. - szBlockName : Block 명  
Event ReceiveData 서버로부터 데이터를 수신했을때의 이벤트 - - XM_RECEIVE_DATA
ReceiveMessage 서버로부터 메시지를 수신했을때의 이벤트 - bIsSystemError
szMessageCode
szMessage
XM_RECEIVE_DATA

 

  3. XAReal

    - 실시간TR을 처리합니다.

    - 수신된 데이터는 다음 데이터가 수신될때까지 유지합니다.

    - Data Type 에 의존하지 않으므로 DLL버전처럼 데이터를 처리하지 않습니다.

  이름 설명 반환값 인자 참조
Property ResFileName  RES 파일을 지정       
Method LoadFromResFile RES 파일을 지정  True : 성공
False : 실패
szFileName : Res 파일명  
AdviseRealData TR 등록 - - ETK_AdviseRealData()
UnadviseRealData  TR 해제 - - ETK_UnadviseRealData()
GetFieldData  Block 의 Field Data를 취득한다. Data szBlockName : Block명
szFieldName : Field명
 
SetFieldData  Block 의 Field Data를 설정한다. - szBlockName : Block명
szFieldName : Field명
szData : Data
 
Event ReceiveRealData 서버로부터 데이터를 수신했을때의 이벤트   - XM_RECEIVE_REAL_DATA
Posted by 스노우볼^^

댓글을 달아 주세요