// ConfigEnvDlg.cpp : implementation file // #include "stdafx.h" #include "hookmsg.h" #include "ConfigEnvDlg.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CConfigEnvDlg dialog CConfigEnvDlg::CConfigEnvDlg(CWnd* pParent /*=NULL*/) : CDialog(CConfigEnvDlg::IDD, pParent) { //{{AFX_DATA_INIT(CConfigEnvDlg) m_strScreenNum = _T(""); m_nMoney1 = 0; m_nMoney2 = 0; m_nStockChkInterval = 0; m_nMoney3 = 0; m_nMoney4 = 0; m_n7121ClickDelay = 0; m_nLimitCall = 0; m_n7121DbClickContinuePauseTime = 0; m_lTradeCount = 0; m_lTradeMoney = 0; //}}AFX_DATA_INIT } void CConfigEnvDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CConfigEnvDlg) DDX_Control(pDX, IDC_CONFIGENV_MESU_HOTKEY4, m_hMesuHotKey4); DDX_Control(pDX, IDC_CONFIGENV_MESU_HOTKEY3, m_hMesuHotKey3); DDX_Control(pDX, IDC_CONFIGENV_MESU_HOTKEY2, m_hMesuHotKey2); DDX_Control(pDX, IDC_CONFIGENV_MESU_HOTKEY1, m_hMesuHotKey1); DDX_Control(pDX, IDC_CONFIGENV_ETC_NP_CODEINPUT_HOTKEY, m_hNPInputCode_HotKey); DDX_Control(pDX, IDC_CONFIGENV_MESU_LEVEL_COMBO4, m_cbMesuLevel4); DDX_Control(pDX, IDC_CONFIGENV_MESU_LEVEL_COMBO3, m_cbMesuLevel3); DDX_Control(pDX, IDC_CONFIGENV_MESU_LEVEL_COMBO2, m_cbMesuLevel2); DDX_Control(pDX, IDC_CONFIGENV_MESU_LEVEL_COMBO1, m_cbMesuLevel1); DDX_Control(pDX, IDC_CONFIGENV_ETC_HOOKLOCKUNLOCK_HOTKEY, m_hHookLockUnlock_HotKey); DDX_Text(pDX, IDC_CONFIGENV_FINALJOB_SCREENNUM_EDIT, m_strScreenNum); DDV_MaxChars(pDX, m_strScreenNum, 4); DDX_Text(pDX, IDC_CONFIGENV_MESU_TOTALMONEY_EDIT1, m_nMoney1); DDV_MinMaxLong(pDX, m_nMoney1, 0, 100000000); DDX_Text(pDX, IDC_CONFIGENV_MESU_TOTALMONEY_EDIT2, m_nMoney2); DDV_MinMaxLong(pDX, m_nMoney2, 0, 100000000); DDX_Text(pDX, IDC_CONFIGENV_ETC_STOCKCHECKINTERVAL_EDIT, m_nStockChkInterval); DDV_MinMaxLong(pDX, m_nStockChkInterval, 0, 36000); DDX_Text(pDX, IDC_CONFIGENV_MESU_TOTALMONEY_EDIT3, m_nMoney3); DDV_MinMaxLong(pDX, m_nMoney3, 0, 100000000); DDX_Text(pDX, IDC_CONFIGENV_MESU_TOTALMONEY_EDIT4, m_nMoney4); DDV_MinMaxLong(pDX, m_nMoney4, 0, 100000000); DDX_Text(pDX, IDC_CONFIGENV_FINALJOB_7121DELAY_EDIT, m_n7121ClickDelay); DDV_MinMaxLong(pDX, m_n7121ClickDelay, 0, 3000); DDX_Text(pDX, IDC_CONFIGENV_LIMITCALL_EDIT, m_nLimitCall); DDX_Text(pDX, IDC_CONFIGENV_7121DbClickContinuePauseTime_EDIT, m_n7121DbClickContinuePauseTime); DDV_MinMaxLong(pDX, m_n7121DbClickContinuePauseTime, 0, 60000); DDX_Text(pDX, IDC_CONFIGENV_TRADECOUNT_EDIT, m_lTradeCount); DDX_Text(pDX, IDC_CONFIGENV_TRADEMONEY_EDIT, m_lTradeMoney); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CConfigEnvDlg, CDialog) //{{AFX_MSG_MAP(CConfigEnvDlg) ON_BN_CLICKED(IDC_CONFIGENV_RELOADALLCONDITIONFILE_BTN, OnConfigenvReloadAllConditionFileBtn) ON_BN_CLICKED(IDC_CONFIGENV_TRADECOUNT_CHECK, OnConfigenvTradecountCheck) ON_BN_CLICKED(IDC_CONFIGENV_TRADEMONEY_CHECK, OnConfigenvTrademoneyCheck) ON_BN_CLICKED(IDC_CONFIGENV_LOWMONEYINFODLG_CHECK, OnConfigenvLowmoneyinfodlgCheck) ON_BN_CLICKED(IDC_CONFIGENV_MESU_CHECK1, OnConfigenvMesuCheck1) ON_BN_CLICKED(IDC_CONFIGENV_MESU_CHECK2, OnConfigenvMesuCheck2) ON_BN_CLICKED(IDC_CONFIGENV_MESU_CHECK3, OnConfigenvMesuCheck3) ON_BN_CLICKED(IDC_CONFIGENV_MESU_CHECK4, OnConfigenvMesuCheck4) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CConfigEnvDlg message handlers BOOL CConfigEnvDlg::OnInitDialog() { CDialog::OnInitDialog(); Load(); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void CConfigEnvDlg::OnOK() { Save(); CDialog::OnOK(); } void CConfigEnvDlg::Load() { ((CButton*)GetDlgItem( IDC_CONFIGENV_HOGARULE1_CHECK ))->SetCheck(g_theApp.m_bHogaLevelCalc); ((CButton*)GetDlgItem( IDC_CONFIGENV_HOTKEYCODEINPUTRULE1_CHECK ))->SetCheck(g_theApp.m_bHotkeyCodeInputRule1); ((CButton*)GetDlgItem( IDC_CONFIGENV_TOPMOSTWINDOW_CHECK ))->SetCheck(g_theApp.m_bTopmostWnd); m_hHookLockUnlock_HotKey.SetHotKey( g_AppEnv.LockUnlockHotKey.wVk, g_AppEnv.LockUnlockHotKey.wModifier ); m_hNPInputCode_HotKey.SetHotKey( g_AppEnv.NP_InputCodeHotKey.wVk, g_AppEnv.NP_InputCodeHotKey.wModifier ); ((CButton*)GetDlgItem( IDC_CONFIGENV_7121DBCLICK_STOP_CHECK ))->SetCheck(g_AppEnv.b7121DbClickStop); ((CButton*)GetDlgItem( IDC_CONFIGENV_7121DBCLICK_CHECK ))->SetCheck(g_AppEnv.b7121DbClick); ((CButton*)GetDlgItem( IDC_CONFIGENV_ETC_USESOUNDEFFECT_CHECK ))->SetCheck(g_AppEnv.bUseSoundEffect); ((CButton*)GetDlgItem( IDC_CONFIGENV_ETC_TIMESYNC_CHECK ))->SetCheck(g_AppEnv.bTimeSync); ((CButton*)GetDlgItem( IDC_CONFIGENV_CANCEL_NOTCONTRACTEDCANCEL_CHECK ))->SetCheck(g_AppEnv.bNotContractedCancel); //~! ((CButton*)GetDlgItem( IDC_CONFIGENV_SUCCESSIVE_BUY_CHECK ))->SetCheck(g_AppEnv.bSuccessiveBuy); ((CButton*)GetDlgItem( IDC_CONFIGENV_JINPUTANDSTOP1_CHECK ))->SetCheck(g_AppEnv.bJInputAndStop1); ((CButton*)GetDlgItem( IDC_CONFIGENV_JINPUTANDSTOP2_CHECK ))->SetCheck(g_AppEnv.bJInputAndStop2); ((CButton*)GetDlgItem( IDC_CONFIGENV_LOWMONEYINFODLG_CHECK ))->SetCheck(g_AppEnv.bLowmoneyInfoDlg); m_cbMesuLevel1.SetCurSel(g_AppEnv.Level1-1); m_cbMesuLevel2.SetCurSel(g_AppEnv.Level2-1); m_cbMesuLevel3.SetCurSel(g_AppEnv.Level3-1); m_cbMesuLevel4.SetCurSel(g_AppEnv.Level4-1); m_nMoney1 = g_AppEnv.Money1; m_nMoney2 = g_AppEnv.Money2; m_nMoney3 = g_AppEnv.Money3; m_nMoney4 = g_AppEnv.Money4; m_strScreenNum = g_AppEnv.strScreenNumber; m_n7121DbClickContinuePauseTime = g_AppEnv.n7121DbClickContinuePauseTime; m_nStockChkInterval = g_AppEnv.StockCheckInterval; m_n7121ClickDelay = g_AppEnv.n7121Delay; m_nLimitCall = g_AppEnv.LimitCall; ((CButton*)GetDlgItem( IDC_CONFIGENV_TRADECOUNT_CHECK ))->SetCheck(g_AppEnv.bTradeCountCheck); ((CButton*)GetDlgItem( IDC_CONFIGENV_TRADEMONEY_CHECK ))->SetCheck(g_AppEnv.bTradeMoneyCheck); ((CWnd*)GetDlgItem( IDC_CONFIGENV_TRADECOUNT_EDIT ))->EnableWindow( g_AppEnv.bTradeCountCheck ); ((CWnd*)GetDlgItem( IDC_CONFIGENV_TRADEMONEY_EDIT ))->EnableWindow( g_AppEnv.bTradeMoneyCheck ); m_lTradeCount = g_AppEnv.lTradeCount; m_lTradeMoney = g_AppEnv.lTradeMoney; ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK1 ))->SetCheck(g_AppEnv.bMesuUsingMacro1); ((CWnd*)GetDlgItem( IDC_CONFIGENV_MESU_HOTKEY1 ))->EnableWindow( g_AppEnv.bMesuUsingMacro1 ); m_hMesuHotKey1.SetHotKey( g_AppEnv.MesuHotKey1.wVk, g_AppEnv.MesuHotKey1.wModifier ); ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK2 ))->SetCheck(g_AppEnv.bMesuUsingMacro2); ((CWnd*)GetDlgItem( IDC_CONFIGENV_MESU_HOTKEY2 ))->EnableWindow( g_AppEnv.bMesuUsingMacro2 ); m_hMesuHotKey2.SetHotKey( g_AppEnv.MesuHotKey2.wVk, g_AppEnv.MesuHotKey2.wModifier ); ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK3 ))->SetCheck(g_AppEnv.bMesuUsingMacro3); ((CWnd*)GetDlgItem( IDC_CONFIGENV_MESU_HOTKEY3 ))->EnableWindow( g_AppEnv.bMesuUsingMacro3 ); m_hMesuHotKey3.SetHotKey( g_AppEnv.MesuHotKey3.wVk, g_AppEnv.MesuHotKey3.wModifier ); ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK4 ))->SetCheck(g_AppEnv.bMesuUsingMacro4); ((CWnd*)GetDlgItem( IDC_CONFIGENV_MESU_HOTKEY4 ))->EnableWindow( g_AppEnv.bMesuUsingMacro4 ); m_hMesuHotKey4.SetHotKey( g_AppEnv.MesuHotKey4.wVk, g_AppEnv.MesuHotKey4.wModifier ); UpdateData(FALSE); } void CConfigEnvDlg::Save() { UpdateData(); g_theApp.m_bHogaLevelCalc = ((CButton*)GetDlgItem( IDC_CONFIGENV_HOGARULE1_CHECK ))->GetCheck(); g_theApp.m_bHotkeyCodeInputRule1 = ((CButton*)GetDlgItem( IDC_CONFIGENV_HOTKEYCODEINPUTRULE1_CHECK ))->GetCheck(); g_theApp.m_bTopmostWnd = ((CButton*)GetDlgItem( IDC_CONFIGENV_TOPMOSTWINDOW_CHECK ))->GetCheck(); m_hHookLockUnlock_HotKey.GetHotKey( g_AppEnv.LockUnlockHotKey.wVk, g_AppEnv.LockUnlockHotKey.wModifier ); m_hNPInputCode_HotKey.GetHotKey( g_AppEnv.NP_InputCodeHotKey.wVk, g_AppEnv.NP_InputCodeHotKey.wModifier ); g_AppEnv.b7121DbClickStop = ((CButton*)GetDlgItem( IDC_CONFIGENV_7121DBCLICK_STOP_CHECK ))->GetCheck(); g_AppEnv.b7121DbClick = ((CButton*)GetDlgItem( IDC_CONFIGENV_7121DBCLICK_CHECK ))->GetCheck(); g_AppEnv.bUseSoundEffect = ((CButton*)GetDlgItem( IDC_CONFIGENV_ETC_USESOUNDEFFECT_CHECK ))->GetCheck(); g_AppEnv.bTimeSync = ((CButton*)GetDlgItem( IDC_CONFIGENV_ETC_TIMESYNC_CHECK ))->GetCheck(); g_AppEnv.bNotContractedCancel = ((CButton*)GetDlgItem( IDC_CONFIGENV_CANCEL_NOTCONTRACTEDCANCEL_CHECK ))->GetCheck(); //~! g_AppEnv.bSuccessiveBuy = ((CButton*)GetDlgItem( IDC_CONFIGENV_SUCCESSIVE_BUY_CHECK ))->GetCheck(); g_AppEnv.bJInputAndStop1 = ((CButton*)GetDlgItem( IDC_CONFIGENV_JINPUTANDSTOP1_CHECK ))->GetCheck(); g_AppEnv.bJInputAndStop2 = ((CButton*)GetDlgItem( IDC_CONFIGENV_JINPUTANDSTOP2_CHECK ))->GetCheck(); g_AppEnv.bLowmoneyInfoDlg = ((CButton*)GetDlgItem( IDC_CONFIGENV_LOWMONEYINFODLG_CHECK ))->GetCheck(); int nIndex; nIndex = m_cbMesuLevel1.GetCurSel(); if(nIndex != LB_ERR) g_AppEnv.Level1 = nIndex+1; nIndex = m_cbMesuLevel2.GetCurSel(); if(nIndex != LB_ERR) g_AppEnv.Level2 = nIndex+1; nIndex = m_cbMesuLevel3.GetCurSel(); if(nIndex != LB_ERR) g_AppEnv.Level3 = nIndex+1; nIndex = m_cbMesuLevel4.GetCurSel(); if(nIndex != LB_ERR) g_AppEnv.Level4 = nIndex+1; g_AppEnv.Money1 = m_nMoney1; g_AppEnv.Money2 = m_nMoney2; g_AppEnv.Money3 = m_nMoney3; g_AppEnv.Money4 = m_nMoney4; strncpy( g_AppEnv.strScreenNumber, (LPSTR)(LPCTSTR)m_strScreenNum, 4 ); g_AppEnv.n7121DbClickContinuePauseTime = m_n7121DbClickContinuePauseTime; g_AppEnv.StockCheckInterval = m_nStockChkInterval; g_AppEnv.n7121Delay = m_n7121ClickDelay; g_AppEnv.LimitCall = m_nLimitCall; g_AppEnv.bTradeCountCheck = ((CButton*)GetDlgItem( IDC_CONFIGENV_TRADECOUNT_CHECK ))->GetCheck(); g_AppEnv.bTradeMoneyCheck = ((CButton*)GetDlgItem( IDC_CONFIGENV_TRADEMONEY_CHECK ))->GetCheck(); g_AppEnv.lTradeCount = m_lTradeCount; g_AppEnv.lTradeMoney = m_lTradeMoney; g_AppEnv.bMesuUsingMacro1 = ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK1 ))->GetCheck(); m_hMesuHotKey1.GetHotKey( g_AppEnv.MesuHotKey1.wVk, g_AppEnv.MesuHotKey1.wModifier ); g_AppEnv.bMesuUsingMacro2 = ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK2 ))->GetCheck(); m_hMesuHotKey2.GetHotKey( g_AppEnv.MesuHotKey2.wVk, g_AppEnv.MesuHotKey2.wModifier ); g_AppEnv.bMesuUsingMacro3 = ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK3 ))->GetCheck(); m_hMesuHotKey3.GetHotKey( g_AppEnv.MesuHotKey3.wVk, g_AppEnv.MesuHotKey3.wModifier ); g_AppEnv.bMesuUsingMacro4 = ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK4 ))->GetCheck(); m_hMesuHotKey4.GetHotKey( g_AppEnv.MesuHotKey4.wVk, g_AppEnv.MesuHotKey4.wModifier ); } void CConfigEnvDlg::OnConfigenvReloadAllConditionFileBtn() { // Config.ini DEBUG_SECTION ´Ù½Ã Àбâ. g_ConfigINI.ReadConfigEnvFromINI_DEBUG_SECTION(); // °ø½Ã_Ưº°Á¾¸ñÄÚµå.txt g_pStockData->ReadFileSpecialCodeByPublish(); // °ÅºÎ_ÀüÀå°Å·¡ºÎÁøÁ¾¸ñÄÚµå.txt g_pStockData->ReadFileExclusionCodeFromFile(); // ¼öµ¿_Á¾¸ñÄÚµå.txt g_pStockData->ReadFileManualInputCodeFromFile(); // Á¶°Ç½Ä ÆÄÀÏ ÀçÀû¿ë. g_Condition.Refresh(); ::MessageBox(NULL, "¸ðµç Á¶°Ç½Ä ¹× Á¾¸ñÄÚµå ȯ°æ¼³Á¤ÆÄÀÏÀ» ÀçÀû¿ëÇÏ¿´½À´Ï´Ù.", "Á¶°Ç½Ä ¹× Á¾¸ñÄÚµå ÀçÀû¿ë", MB_OK|MB_ICONINFORMATION|MB_TOPMOST ); } /* void CConfigEnvDlg::OnTestJumoonButton() { UpdateData(); CEdit *pEdit = (CEdit*)GetDlgItem( IDC_TEST_JCODE_EDIT ); CString strCCode; pEdit->GetWindowText( strCCode ); strCCode.MakeUpper(); if( strCCode.GetLength() != 6 ) { AfxMessageBox( "Á¾¸ñÄڵ带 Á¤È®ÇÏ°Ô ÀÔ·ÂÇϼ¼¿ä. ¿¹) A00660" ); return; } int nRet = MessageBox( "½ÇÁ¦ ¸Å¸ÅÁÖ¹®À» ½ÇÇàÇÕ´Ï´Ù.\n" "¸Åµµ·¹º§°ú ±Ý¾×¼³Á¤À» È®ÀÎÇØ ÁֽʽÿÀ.\n" "°è¼ÓÇϽðڽÀ´Ï±î?", "ÁÖ¹®È®ÀÎ", MB_YESNO ); if( nRet == IDNO ) return; int nIndex = m_cbMesuLevel1.GetCurSel(); if(nIndex != LB_ERR) g_AppEnv.Level = nIndex+1; g_AppEnv.Money = m_nMoney; try { HRESULT hr; CString strErrorMsg; IDibPtr sjbobj; hr = sjbobj.CreateInstance(CLSID_StockJpbid2); if (FAILED(hr)) _com_raise_error(hr); sjbobj->SetInputValue( 0, (LPCSTR)strCCode ); short nBR = sjbobj->BlockRequest(); long nOrder = 10; long lLevelMoney = sjbobj->GetDataValue(0, (long)(g_AppEnv.Level-1)); // nÂ÷ ¸ÅµµÈ£°¡. long lLowCheck = sjbobj->GetDataValue(1, (long)1); // 2Â÷ ¸Å¼öÈ£°¡.(ÇÏÇѰ¡ üũ). sjbobj.Release(); if( lLowCheck == 0 || lLevelMoney == 0 ) { if( lLevelMoney == 0 ) strErrorMsg += "[»óÇѰ¡]"; if( lLowCheck == 0 ) strErrorMsg += "[ÇÏÇѰ¡]"; strErrorMsg += " Á¾¸ñÀÔ´Ï´Ù."; MessageBox( strErrorMsg, "¸Å¸ÅÁ¤º¸", MB_OK|MB_ICONINFORMATION ); } else { nOrder = g_AppEnv.Money/lLevelMoney; nOrder = nOrder - (nOrder%10); CString strAccount; ICpTdUtilPtr objTdUtil; hr = objTdUtil.CreateInstance(CLSID_CpTdUtil); if (FAILED(hr)) _com_raise_error(hr); _variant_t vtStrAccount = objTdUtil->GetAccountNumber(); if( vtStrAccount.vt == (VT_BSTR | VT_ARRAY) ) { SAFEARRAY *psa = vtStrAccount.parray; BSTR* bstrArray; SafeArrayAccessData( psa, (void**)&bstrArray ); strAccount = *bstrArray; SafeArrayUnaccessData( psa ); } objTdUtil.Release(); ICpTdDibPtr obj; hr = obj.CreateInstance(CLSID_CpTd0311); if (FAILED(hr)) _com_raise_error(hr); obj->SetInputValue( 0, (long)2 ); // ÁÖ¹®±¸ºÐ. obj->SetInputValue( 1, (LPCSTR)strAccount ); // °èÁ¹øÈ£. obj->SetInputValue( 2, (long)10 ); // °èÁ±¸ºÐ. obj->SetInputValue( 3, (LPCSTR)strCCode ); // Á¾¸ñÄÚµå. obj->SetInputValue( 4, (long)nOrder ); // ÁÖ¹®¼ö·®. obj->SetInputValue( 5, (long)lLevelMoney ); // ÁÖ¹®´Ü°¡. obj->SetInputValue( 6, (LPCSTR)"00" ); // ¸Å¸Å±¸ºÐ. short nRet = obj->BlockRequest(); if( nRet != 0 ) { strErrorMsg = "Åë½Å¿¡·¯ :"; if (0 != obj->GetDibStatus()) { strErrorMsg += obj->GetDibMsg1(); strErrorMsg += obj->GetDibMsg2(); strErrorMsg.TrimRight(); AfxMessageBox(strErrorMsg); } } else { CString str=""; str += obj->GetDibMsg1(); MessageBox( str, "¸Å¸ÅÁ¤º¸", MB_OK|MB_ICONINFORMATION ); } obj.Release(); } } catch( _com_error e ) { AfxMessageBox("¸Å¸ÅÅ×½ºÆ® ½ÇÇàÁß ¹®Á¦°¡ ¹ß»ýÇÏ¿´½À´Ï´Ù."); } } */ void CConfigEnvDlg::OnConfigenvTradecountCheck() { BOOL bCheck = ((CButton*)GetDlgItem( IDC_CONFIGENV_TRADECOUNT_CHECK ))->GetCheck(); ((CWnd*)GetDlgItem( IDC_CONFIGENV_TRADECOUNT_EDIT ))->EnableWindow( bCheck ); } void CConfigEnvDlg::OnConfigenvTrademoneyCheck() { BOOL bCheck = ((CButton*)GetDlgItem( IDC_CONFIGENV_TRADEMONEY_CHECK ))->GetCheck(); ((CWnd*)GetDlgItem( IDC_CONFIGENV_TRADEMONEY_EDIT ))->EnableWindow( bCheck ); } void CConfigEnvDlg::OnConfigenvLowmoneyinfodlgCheck() { BOOL bCheck = ((CButton*)GetDlgItem( IDC_CONFIGENV_LOWMONEYINFODLG_CHECK ))->GetCheck(); if( bCheck ) { TCHAR szFilePath[_MAX_PATH]={0,}; ::GetModuleFileName(NULL, szFilePath, _MAX_PATH); *(strrchr( szFilePath, '\\' ) + 1) = 0; strcat( szFilePath, "\\HLStockWindow.exe" ); SHELLEXECUTEINFO ShExecInfo; ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO); ShExecInfo.fMask = NULL; ShExecInfo.hwnd = NULL; ShExecInfo.lpVerb = NULL; ShExecInfo.lpFile = szFilePath; ShExecInfo.lpParameters = NULL; ShExecInfo.lpDirectory = NULL; ShExecInfo.nShow = SW_SHOW; ShExecInfo.hInstApp = NULL; BOOL bSuccess = ShellExecuteEx(&ShExecInfo); if( bSuccess == FALSE ) ((CButton*)GetDlgItem( IDC_CONFIGENV_LOWMONEYINFODLG_CHECK ))->SetCheck( FALSE ); } else { HWND hTagretWnd = ::FindWindow( "HLStockWindow_Dialog", NULL ); if( ::IsWindow( hTagretWnd ) ) ::SendMessage(hTagretWnd, WM_CLOSE, 0, 0); } } void CConfigEnvDlg::OnConfigenvMesuCheck1() { BOOL bCheck = ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK1 ))->GetCheck(); ((CWnd*)GetDlgItem( IDC_CONFIGENV_MESU_HOTKEY1 ))->EnableWindow( bCheck ); } void CConfigEnvDlg::OnConfigenvMesuCheck2() { BOOL bCheck = ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK2 ))->GetCheck(); ((CWnd*)GetDlgItem( IDC_CONFIGENV_MESU_HOTKEY2 ))->EnableWindow( bCheck ); } void CConfigEnvDlg::OnConfigenvMesuCheck3() { BOOL bCheck = ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK3 ))->GetCheck(); ((CWnd*)GetDlgItem( IDC_CONFIGENV_MESU_HOTKEY3 ))->EnableWindow( bCheck ); } void CConfigEnvDlg::OnConfigenvMesuCheck4() { BOOL bCheck = ((CButton*)GetDlgItem( IDC_CONFIGENV_MESU_CHECK4 ))->GetCheck(); ((CWnd*)GetDlgItem( IDC_CONFIGENV_MESU_HOTKEY4 ))->EnableWindow( bCheck ); }