Files
CPRobot/CPRobotDlg.cpp
2013-07-04 09:36:04 +00:00

218 lines
4.7 KiB
C++

// CPRobotDlg.cpp : 구현 파일
//
#include "stdafx.h"
#include "CPRobot.h"
#include "CPRobotDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
ICpTdUtilPtr g_pTdUtil = NULL;
CCPRobotDlg::CCPRobotDlg(CWnd* pParent /*=NULL*/)
: CDialog(CCPRobotDlg::IDD, pParent)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
void CCPRobotDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CCPRobotDlg, CDialog)
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
//}}AFX_MSG_MAP
ON_BN_CLICKED(IDC_BUTTON_REFRESH_BALANCE, &CCPRobotDlg::OnBnClickedButtonRefreshBalance)
ON_WM_CREATE()
ON_WM_DESTROY()
END_MESSAGE_MAP()
// CCPRobotDlg 메시지 처리기
BOOL CCPRobotDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// 이 대화 상자의 아이콘을 설정합니다. 응용 프로그램의 주 창이 대화 상자가 아닐 경우에는
// 프레임워크가 이 작업을 자동으로 수행합니다.
SetIcon(m_hIcon, TRUE); // 큰 아이콘을 설정합니다.
SetIcon(m_hIcon, FALSE); // 작은 아이콘을 설정합니다.
// TODO: 여기에 추가 초기화 작업을 추가합니다.
return TRUE; // 포커스를 컨트롤에 설정하지 않으면 TRUE를 반환합니다.
}
int CCPRobotDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDialog::OnCreate(lpCreateStruct) == -1)
return -1;
// TODO: Add your specialized creation code here
CoInitialize(NULL);
g_pTdUtil.CreateInstance(__uuidof(CpTdUtil));
short iInitResult = g_pTdUtil->TradeInit(0);
switch(iInitResult)
{
case -1:
MessageBox("TradeInit 오류");
return -2;
break;
case 1:
MessageBox("업무 키 잘못 입력됨");
return -2;
break;
case 2:
MessageBox("계좌 비밀번호 잘못 입력됨");
return -2;
break;
case 3:
MessageBox("취소됨");
return -2;
break;
}
return 0;
}
void CCPRobotDlg::OnDestroy()
{
CDialog::OnDestroy();
// TODO: Add your message handler code here
g_pTdUtil.Release();
CoUninitialize();
}
BOOL CCPRobotDlg::DestroyWindow()
{
// TODO: Add your specialized code here and/or call the base class
return CDialog::DestroyWindow();
}
// 대화 상자에 최소화 단추를 추가할 경우 아이콘을 그리려면
// 아래 코드가 필요합니다. 문서/뷰 모델을 사용하는 MFC 응용 프로그램의 경우에는
// 프레임워크에서 이 작업을 자동으로 수행합니다.
void CCPRobotDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // 그리기를 위한 디바이스 컨텍스트
SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
// 클라이언트 사각형에서 아이콘을 가운데에 맞춥니다.
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
// 아이콘을 그립니다.
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
}
// 사용자가 최소화된 창을 끄는 동안에 커서가 표시되도록 시스템에서
// 이 함수를 호출합니다.
HCURSOR CCPRobotDlg::OnQueryDragIcon()
{
return static_cast<HCURSOR>(m_hIcon);
}
void CCPRobotDlg::OnBnClickedButtonRefreshBalance()
{
// TODO: Add your control notification handler code here
ICpTdDibPtr pTd0721 = NULL;
pTd0721.CreateInstance(__uuidof(CpTd0721F));
pTd0721->SetInputValue(0, "117126165");
pTd0721->SetInputValue(1, "50");
pTd0721->SetInputValue(2, "50");
pTd0721->SetInputValue(3, "10");
CString Message;
do
{
pTd0721->BlockRequest();
Message = "현금주문가능액 : ";
Message += pTd0721->GetHeaderValue(10);
SetDlgItemText(IDC_STATIC_BALANCE, Message.GetString());
//Message = "";
//Message += "현금결제예탁액 : ";
//Message += pTd0721->GetHeaderValue(3);
//Message += "\n현금주문가능액 : ";
//Message += pTd0721->GetHeaderValue(10);
//MessageBox(Message);
} while (pTd0721->Continue);
pTd0721.Release();
//try
//{
// CComPtr<IUnknown> comPtr;
// comPtr.CoCreateInstance(__uuidof(CpStockCode));
// CComPtr<ICpStockCode> stockCodeComPtr;
// comPtr.QueryInterface(&stockCodeComPtr);
// char *code = "035420";
// _bstr_t name = stockCodeComPtr->CodeToName(code);
// CString msg = "Code : ";
// msg += code;
// msg += ", Name : ";
// msg += (char*)name;
// MessageBox(msg, "", MB_OK);
// //HRESULT hr = pBalance.CreateInstance(__uuidof(CpTd0721F));
// //if(SUCCEEDED(hr))
// //{
// // int aaa = pBalance->GetHeaderValue(3);
// // CString kkk;
// // kkk.Format("result : %d", aaa);
// // MessageBox("", kkk, MB_OK);
// // pBalance = NULL;
// //}
// //else
// //{
// // MessageBox("CreateInstance(__uuidof(CpTd0721F) failure", "", MB_OK);
// //}
//}
//catch (_com_error e)
//{
// MessageBox(e.ErrorMessage(), "CpTd0721F 초기화 실패", MB_OK|MB_ICONSTOP);
//}
}