본문 바로가기
트레이딩

NH선물. API DLL 활용 개발 첫 시작점.

by 리치굿맨 2018. 7. 14.


 

개요

 

NH선물의 DLL 을 Visual C++ 2015 프로젝트(프로젝트명 : CyFinAPI )에서 활용하기 위한 초기 설정상황들 정리.

NH선물 API 인 정규 DLL 을 내 프로젝트에 임포팅하는 방법은 explicit linking 방식 이용한다. 


사전필수준비사항.  
NH 선물의 API 개요및 리소스 확보된 상태. 상세보기 : http://igotit.tistory.com/1731

1. NH선물 DLL 활용위한 파일들 배치처리. 
2. Visual C++ 프로젝트에서 NH선물 DLL explicit linking 처리를 주목적으로 하는 클래스 INHAPI 생성. 

주의사항. 
2018년 7월 26일 시점
- NH선물 DLL, OCX 모두 Visual C++ 2015 에서 만든 만든 프로젝트에서는 로그인 과정도 정상적으로 수행되지 않은 문제점 있다. Visual C++ 2010 버전에서 작업된 것은 정상 작동함. 
- 예제로 배포된 Visual C++ 2010 샘플프로젝트를 Visual C++ 2015 에서 빌드하여 실행해봐도 로그인도 정상수행되지 않음. 


 


 




NH선물 DLL 파일 처리1.- 내 프로젝트(CyFinAPI) 실행경로. 


NH선물 API 인 CommDll.dll  실행시 필요한 모든 파일들을 내 프로그램의 실행경로 하위 1개의 폴더 (예 : Bin_CyDevice6 ) 에 모두 배치한다. 


동영상. 

- N선물 DLL 실행관련모든파일및 폴더 내 프로그램의 실행환경으로 모두 복사하기. 

- 이중엔 시험용 프로그램인 CommTest.exe 등도 있으나 관리간소함을 위하여 그냥 모두 복사하는걸로 해두자. 



NH선물 DLL 파일 처리2.- 내 프로젝트(CyFinAPI) 소스 경로. 

CyFinAPI 소스코드 작업시 인클루드 시켜야할 파일들을 NH선물 전용폴더(예: Header_CyDevice6 ) 에 모두 배치한다. 


동영상.






인클루드 시켜야할 각 파일들의 의미는 아래와 같다. 


AAQ23101.h           주문체결 TR 헤더

AAQ23301.h           주문체결 상세 TR 헤더

AAQ40101.h           미결제 TR 헤더

HCQ01112.h           호가 시세 TR 헤더

HCQ01120.h           현재가 시세 TR 헤더

Commexport.h         CommDll.h 외부공개 함수를 정의한 헤더

CommHeaderDef.h     통신구조체 정의한 헤더

ostrdm.h               실시간 TR 정의 헤더







프로젝트에서 클래스 INHAPI 생성. 

- 프로젝트 소스 의 폴더 Header_CyDevice6 에  INHAPI.h 파일 신규 생성하고 클래스 정의 및 함수 구현 코딩. 즉,간결함을 위해 .cpp  별도 생성하지 않기로 함. 


동영상. 

- 클래스 INHAPI 생성과정 상세. 




이후 코딩. 

- 상기 생성한 클래스 INHAPI 를 클래스 CCyDevice6_UITDlg 에서 멤버변수 inhAPI 로 선언하여 활용. 


public:

 INHAPI inhAPI; // NH선물 DLL explicit linking 등의 처리 수행하는 클래스. 


클래스 INHAPI 의 세부 구현은 XingAPI 에서의 클래스 IXingAPI와 동일 구조로 구현한다. 



///1733.










///

댓글0


.    
현물 |선물 인버스 |선물 USDT     현물 | 선물 USDT |봇제작툴/카피트레이딩     현물 |선물 인버스 |선물 USDT     .