초기화 Category

## Method YOA_Initial

- Implemented Module:
  YuantaAPI.dll, YuantaCOM.dll

  유안타증권 티레이더 오픈 API를 사용하기 위해 초기화를 하는 메소드입니다.

  API 모듈이 초기화되지 않으면, 다른 모든 Method가 동작하지 않습니다. 그러니 API 사용 시작부분에 꼭 호출해야만 합니다.

- - ### 메소드 원형

    DLL Method COM Method
    Type | Method
    --- | ---
    long | YOA_Initial ( LPCTSTR szURL, HWND hWnd, LPCTSTR szPath, long nStartMsgID )
    LONG | YOA_Initial ( BSTR szURL, BSTR szPath )

  - ### 매개변수

    - ### szURL [DLL/COM]

      `연결할 HTS 서버 URL 입니다.`
      - 국내 모의투자 접속 : "simul.tradar.api.com"
      - 국내/해외주식 운영서버 접속 : "real.tradar.api.com"
      - 해외선물옵션 모의투자 접속 : "simul.tradarglobal.api.com"
      - 해외선물옵션 운영서버 접속 : "real.tradarglobal.api.com"

    - ### hWhd [DLL]

      `시스템 메시지를 받을 Windows Handle 입니다.`

    - ### szPath [DLL/COM]

      `API 모듈을 찾는 Path 입니다.`
      - 이 Path를 기준으로 DLL, TR명세서를 로드합니다.
      - 빈문자열을 입력하면 사용자 프로그램의 실행위치를 기준으로 동작합니다.

    - ### nStartMsgID [DLL]

      `응답 메시지 시작 ID 입니다.`
      - 주어진 값에 API에서 정의한 값을 더해서 메세지로 보내게 됩니다.
      cf) nStartMsgID + CMD_RECEIVE_ERROR

            * 정의 값 참조
               CMD_YOA_FAIL          값(-1) : API Call 실패
               CMD_YOA_SUCESS        값(1)  : API Call 성공
               CMD_SYSTEM_MESSAGE    값(2)  : System Message
               CMD_LOGIN             값(3)  : 서버로부터 로그인 결과를 받았을 때
               CMD_RECEIVE_ERROR     값(4)  : 서버로부터 오류를 받았을 때
               CMD_RECEIVE_DATA      값(5)  : Request로 요청한 데이터를 받았을 때
               CMD_RECEIVE_REAL_DATA 값(6)  : RegistAuto로 등록한 실시간을 받았을 때

  - ### 반환값

    DLL Return COM Return
    Type | Description
    --- | ---
    long | 성공 시, 1000(RESULT_SUCCESS)이 반환됩니다. 실패 시, -1(RESULT_FAIL)이 반환됩니다.
    LONG | 성공 시, 1000(RESULT_SUCCESS)이 반환됩니다. 실패 시, -1(RESULT_FAIL)이 반환됩니다.

  - ### 예시

    DLL Return COM Return
    제공하는 샘플소스에서 발췌한 예시입니다.
        if ( RESULT_SUCCESS == YOA_Initial( _T("simul.tradar.api.com"), GetSafeHwnd(), NULL, WM_USER) )
        {
        	AfxMessageBox( _T("유안타 Open API가 초기화되었습니다.") );
        }
        else
        {
        	AfxMessageBox( _T("유안타 Open API가 초기화에 실패하였습니다.") );
        }
        if (CommDef.RESULT_SUCCESS == m_iYuantaAPI.YOA_Initial("simul.tradar.api.com", ""))
        {
            LogMessage("유안타 Open API가 초기화되었습니다.");
        }
        else
        {
            LogMessage("유안타 Open API가 초기화에 실패하였습니다.", CommDef.YOALOG_ERROR);
        }

  COPYRIGHT @ Yuanta Securities Korea Co., Ltd. ALL RIGHT RESERVED.