Press "Enter" to skip to content

[태그:] Visual Studio

Visual Studio C# 개발시 ActiveX(OCX) 추가하기

키움API로 자동거래 시스템을 만들어 보려고 하는데 OpenAPI가 Ocx로 제공되는데 추가 하는게 완전 헷깔려서 기록합니다.

1. 도구 상자에 OCX 를 추가하여 컨트롤 나오게하기

메뉴 -> 도구(T) -> 도구 상자 항목 선택(X) -> COM 구성 요소 탭 선택

간혹 크리스탈 리포트 베이직 어쩌구 하면서 설치 파일을 요구하지만 취소를 몇번 눌러준다.

저 같은 경우 삽입하려고 하는 것이 KHOpenAPI Control 인데.. 처음에는 안나타날 겁니다.

그럴경우에는 “찾아보기(B)…” 버튼을 클릭해서 삽입하고자 하는 ActiveX(OCX) 파일을 찾아서 지정합니다.

이제 폼 디자인화면으로 이동하면 도구 상자 -> 구성 요소 에 방금 추가한 ActiveX(OCX) 컨트롤이 보입니다.

2. OpenAPI의 경우 KHOpenAPILib를 참조 추가해줘야 한다.

솔루션 탐색기에서 참조 에서 마우스 우클릭 -> 참조추가(R) 를 선택한다.

참조 관리자가 뜨면 좌측에서 “COM” 선택 -> 우측 상단 검색에서 KH만 입력하면 검색되서 나온다.

KHOpenAPILib 체크박스를 체크해서 참조 추가 한다.

이제서야 OCX를 C# 프로젝트에서 사용할 수 있게 설정이 끝났다.

C# 버전 자동증가, 빌드 날짜 자동으로 넣기

AssemblyInfo.cs 파일 수정
원래

[assembly: AssemblyVersion( “1.0.0.0” )] 

[assembly: AssemblyVersion( "1.0.0.0" )] 

으로 되어 있는 것을

[assembly: AssemblyVersion( "1.0.0.*" )]  

맨 마지막 0을 *로 변경하면 자동으로 빌드번호 및 수정번호가 들어감.

빌드전 이벤트 명령줄에 다음 추가
———————————————————————————————————————-
FOR /f %%a IN (‘WMIC OS GET LocalDateTime ^| FIND “+”‘) DO SET DTS=%%a  SET COMPILEDATETIME=%DTS:~0,8%-%DTS:~8,10%  echo %COMPILEDATETIME% > “$(ProjectDir)\Resources\BuildDate.txt”
———————————————————————————————————————-
컴파일할때마다
연월일-시분초.밀리초 포맷으로 컴파일 일시를 BuildDate.txt 파일 생성 시킴

리소스에 다음 파일 추가
$(ProjectDir)\Resources\BuildDate.txt
*주의 : 한번이라도 컴파일을 시도해서 BuildDate.txt 파일이 생성되게 해야 리소스에 추가할 파일을 선택할 수 있음… 아님 수동으로 파일을 만들어 넣덩가…

출력하고 싶은 곳에 다음 코드의 strVer을 출력하면 됨
string strVer = “Ver. ” + System.Reflection.Assembly.GetExecutingAssembly( ).GetName( ).Version + ” Build. ” + Properties.Resources.BuildDate;

대략 이렇게 출력됨
Ver. 1.0.0.517 Build. 20171213-111032.488

끝.