⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mpichconfigdlg.cpp

📁 MPICH是MPI的重要研究,提供了一系列的接口函数,为并行计算的实现提供了编程环境.
💻 CPP
📖 第 1 页 / 共 4 页
字号:
// MPICHConfigDlg.cpp : implementation file//#include "stdafx.h"#include "MPIConfig.h"#include "MPICHConfigDlg.h"#include "FindHostsDlg.h"#include "qvs.h"#include "mpd.h"#include "mpdutil.h"#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endif#define USER_MSG_DISABLE   WM_USER + 1#define USER_MSG_ENABLE    WM_USER + 2#define USER_MSG_NUM_STEPS WM_USER + 3#define USER_MSG_STEPIT    WM_USER + 4#define USER_MSG_GETHOST   WM_USER + 5/////////////////////////////////////////////////////////////////////////////// CMPICHConfigDlg dialogCMPICHConfigDlg::CMPICHConfigDlg(CWnd* pParent /*=NULL*/)	: CDialog(CMPICHConfigDlg::IDD, pParent){	//{{AFX_DATA_INIT(CMPICHConfigDlg)	m_add_hostname = _T("");	m_color_no = FALSE;	m_color_yes = TRUE;	m_bdots = FALSE;	m_bcolor = FALSE;	m_dots_no = FALSE;	m_dots_yes = TRUE;	m_host_color_no = FALSE;	m_bhost_color = FALSE;	m_host_color_yes = TRUE;	m_bhost_dots = FALSE;	m_host_dots_no = FALSE;	m_host_dots_yes = TRUE;	m_bhost_hosts = FALSE;	m_host_hosts = _T("");	m_host_jobhost = _T("");	m_host_jobhost_no = TRUE;	m_host_jobhost_pwd = _T(MPD_DEFAULT_PASSPHRASE);	m_host_jobhost_yes = FALSE;	m_bhost_launch = FALSE;	m_host_launch = 10;	m_bhost_mapping = FALSE;	m_host_mapping_no = FALSE;	m_host_mapping_yes = TRUE;	m_bhost_popup_debug = FALSE;	m_host_popup_debug_no = FALSE;	m_host_popup_debug_yes = TRUE;	m_config_host = _T("");	m_bhost_use_jobhost = FALSE;	m_bhost_use_jobhost_pwd = FALSE;	m_bhosts = TRUE;	m_hosts = _T("");	m_jobhost = _T("");	m_jobhost_no = TRUE;	m_jobhost_pwd = _T(MPD_DEFAULT_PASSPHRASE);	m_jobhost_yes = FALSE;	m_blaunch = FALSE;	m_launch = 10;	m_bmapping = FALSE;	m_mapping_no = FALSE;	m_mapping_yes = TRUE;	m_mpd_phrase = _T("");	m_nofm = _T("");	m_bpopup_debug = FALSE;	m_popup_debug_no = FALSE;	m_popup_debug_yes = TRUE;	m_buse_jobhost = FALSE;	m_buse_jobhost_pwd = FALSE;	m_bshow_config = FALSE;	m_config_host_msg = _T("");	m_bcatch = FALSE;	m_catch_no = TRUE;	m_catch_yes = FALSE;	m_bhost_catch = FALSE;	m_host_catch_no = TRUE;	m_host_catch_yes = FALSE;	m_bcodes = FALSE;	m_codes_no = TRUE;	m_codes_yes = FALSE;	m_bhost_codes = FALSE;	m_host_codes_no = TRUE;	m_host_codes_yes = FALSE;	m_blogfile = FALSE;	m_logfile = _T("");	m_logfile_no = TRUE;	m_logfile_yes = FALSE;	m_bhost_logfile = FALSE;	m_host_logfile = _T("");	m_host_logfile_no = TRUE;	m_host_logfile_yes = FALSE;	//}}AFX_DATA_INIT	m_bToggle = false;	m_bHostToggle = false;	m_buse_default_passphrase = true;	strcpy(m_pszPhrase, MPD_DEFAULT_PASSPHRASE);	m_nPort = MPD_DEFAULT_PORT;	m_hApplyBtnThread = NULL;}void CMPICHConfigDlg::DoDataExchange(CDataExchange* pDX){	CDialog::DoDataExchange(pDX);	//{{AFX_DATA_MAP(CMPICHConfigDlg)	DDX_Control(pDX, IDC_REDIRECT_MPD_STATIC, m_logfile_static);	DDX_Control(pDX, IDC_HOST_REDIRECT_MPD_YES, m_host_logfile_yes_btn);	DDX_Control(pDX, IDC_HOST_REDIRECT_MPD_NO, m_host_logfile_no_btn);	DDX_Control(pDX, IDC_HOST_REDIRECT_MPD_EDIT, m_host_logfile_edit);	DDX_Control(pDX, IDC_HOST_REDIRECT_MPD_CHK, m_host_logfile_chk);	DDX_Control(pDX, IDC_REDIRECT_MPD_YES, m_logfile_yes_btn);	DDX_Control(pDX, IDC_REDIRECT_MPD_NO, m_logfile_no_btn);	DDX_Control(pDX, IDC_REDIRECT_MPD_EDIT, m_logfile_edit);	DDX_Control(pDX, IDC_HOST_CODES_YES, m_host_codes_yes_btn);	DDX_Control(pDX, IDC_HOST_CODES_NO, m_host_codes_no_btn);	DDX_Control(pDX, IDC_HOST_CODES_CHK, m_host_codes_chk);	DDX_Control(pDX, IDC_CODES_YES, m_codes_yes_btn);	DDX_Control(pDX, IDC_CODES_NO, m_codes_no_btn);	DDX_Control(pDX, IDC_HOST_MSG_STATIC, m_config_host_msg_static);	DDX_Control(pDX, IDC_HOST_CATCH_YES, m_host_catch_yes_btn);	DDX_Control(pDX, IDC_HOST_CATCH_NO, m_host_catch_no_btn);	DDX_Control(pDX, IDC_HOST_CATCH_CHK, m_host_catch_chk);	DDX_Control(pDX, IDC_CATCH_YES, m_catch_yes_btn);	DDX_Control(pDX, IDC_CATCH_NO, m_catch_no_btn);	DDX_Control(pDX, IDC_HOST_STATIC, m_config_host_static);	DDX_Control(pDX, IDC_MODIFY_STATIC, m_modify_static);	DDX_Control(pDX, IDC_USE_JOBHOST_PWD_CHK, m_use_jobhost_pwd_chk);	DDX_Control(pDX, IDC_TOGGLE_BTN, m_toggle_btn);	DDX_Control(pDX, IDC_PROGRESS, m_progress);	DDX_Control(pDX, IDC_POPUP_DEBUG_YES, m_popup_debug_yes_btn);	DDX_Control(pDX, IDC_POPUP_DEBUG_NO, m_popup_debug_no_btn);	DDX_Control(pDX, IDC_MPD_PHRASE, m_mpd_phrase_edit);	DDX_Control(pDX, IDC_MODIFY_BTN, m_modify_btn);	DDX_Control(pDX, IDC_MAPPING_YES, m_mapping_yes_btn);	DDX_Control(pDX, IDC_MAPPING_NO, m_mapping_no_btn);	DDX_Control(pDX, IDC_LAUNCH_EDIT, m_launch_edit);	DDX_Control(pDX, IDC_JOBHOST_YES, m_jobhost_yes_btn);	DDX_Control(pDX, IDC_JOBHOST_STATIC, m_jobhost_static);	DDX_Control(pDX, IDC_JOBHOST_PWD_EDIT, m_jobhost_pwd_edit);	DDX_Control(pDX, IDC_JOBHOST_NO, m_jobhost_no_btn);	DDX_Control(pDX, IDC_JOBHOST_EDIT, m_jobhost_edit);	DDX_Control(pDX, IDC_HOSTS_EDIT, m_hosts_edit);	DDX_Control(pDX, IDC_HOST_USE_JOBHOST_PWD_CHK, m_host_use_jobhost_pwd_chk);	DDX_Control(pDX, IDC_HOST_USE_JOBHOST_CHK, m_host_use_jobhost_chk);	DDX_Control(pDX, IDC_HOST_TOGGLE_BTN, m_host_toggle_btn);	DDX_Control(pDX, IDC_HOST_POPUP_DEBUG_YES, m_host_popup_debug_yes_btn);	DDX_Control(pDX, IDC_HOST_POPUP_DEBUG_NO, m_host_popup_debug_no_btn);	DDX_Control(pDX, IDC_HOST_POPUP_DEBUG_CHK, m_host_popup_debug_chk);	DDX_Control(pDX, IDC_HOST_MAPPING_YES, m_host_mapping_yes_btn);	DDX_Control(pDX, IDC_HOST_MAPPING_NO, m_host_mapping_no_btn);	DDX_Control(pDX, IDC_HOST_MAPPING_CHK, m_host_mapping_chk);	DDX_Control(pDX, IDC_HOST_LIST, m_host_list);	DDX_Control(pDX, IDC_HOST_LAUNCH_EDIT, m_host_launch_edit);	DDX_Control(pDX, IDC_HOST_LAUNCH_CHK, m_host_launch_chk);	DDX_Control(pDX, IDC_HOST_HOSTS_CHK, m_host_hosts_chk);	DDX_Control(pDX, IDC_HOST_DOTS_CHK, m_host_dots_chk);	DDX_Control(pDX, IDC_HOST_COLOR_CHK, m_host_color_chk);	DDX_Control(pDX, IDC_HOST_JOBHOST_YES, m_host_jobhost_yes_btn);	DDX_Control(pDX, IDC_HOST_JOBHOST_PWD_EDIT, m_host_jobhost_pwd_edit);	DDX_Control(pDX, IDC_HOST_JOBHOST_NO, m_host_jobhost_no_btn);	DDX_Control(pDX, IDC_HOST_JOBHOST_EDIT, m_host_jobhost_edit);	DDX_Control(pDX, IDC_HOST_HOSTS_EDIT, m_host_hosts_edit);	DDX_Control(pDX, IDC_HOST_DOTS_YES, m_host_dots_yes_btn);	DDX_Control(pDX, IDC_HOST_DOTS_NO, m_host_dots_no_btn);	DDX_Control(pDX, IDC_HOST_COLOR_YES, m_host_color_yes_btn);	DDX_Control(pDX, IDC_HOST_COLOR_NO, m_host_color_no_btn);	DDX_Control(pDX, IDC_DOTS_YES, m_dots_yes_btn);	DDX_Control(pDX, IDC_DOTS_NO, m_dots_no_btn);	DDX_Control(pDX, IDC_COLOR_YES, m_color_yes_btn);	DDX_Control(pDX, IDC_COLOR_NO, m_color_no_btn);	DDX_Control(pDX, IDC_APPLY_SINGLE_BTN, m_apply_single_btn);	DDX_Control(pDX, IDC_APPLY_BTN, m_apply_btn);	DDX_Control(pDX, IDC_ADD_BTN, m_add_btn);	DDX_Text(pDX, IDC_ADD_HOSTNAME, m_add_hostname);	DDX_Check(pDX, IDC_COLOR_NO, m_color_no);	DDX_Check(pDX, IDC_COLOR_YES, m_color_yes);	DDX_Check(pDX, IDC_DOTS_CHK, m_bdots);	DDX_Check(pDX, IDC_COLOR_CHK, m_bcolor);	DDX_Check(pDX, IDC_DOTS_NO, m_dots_no);	DDX_Check(pDX, IDC_DOTS_YES, m_dots_yes);	DDX_Check(pDX, IDC_HOST_COLOR_NO, m_host_color_no);	DDX_Check(pDX, IDC_HOST_COLOR_CHK, m_bhost_color);	DDX_Check(pDX, IDC_HOST_COLOR_YES, m_host_color_yes);	DDX_Check(pDX, IDC_HOST_DOTS_CHK, m_bhost_dots);	DDX_Check(pDX, IDC_HOST_DOTS_NO, m_host_dots_no);	DDX_Check(pDX, IDC_HOST_DOTS_YES, m_host_dots_yes);	DDX_Check(pDX, IDC_HOST_HOSTS_CHK, m_bhost_hosts);	DDX_Text(pDX, IDC_HOST_HOSTS_EDIT, m_host_hosts);	DDX_Text(pDX, IDC_HOST_JOBHOST_EDIT, m_host_jobhost);	DDX_Check(pDX, IDC_HOST_JOBHOST_NO, m_host_jobhost_no);	DDX_Text(pDX, IDC_HOST_JOBHOST_PWD_EDIT, m_host_jobhost_pwd);	DDX_Check(pDX, IDC_HOST_JOBHOST_YES, m_host_jobhost_yes);	DDX_Check(pDX, IDC_HOST_LAUNCH_CHK, m_bhost_launch);	DDX_Text(pDX, IDC_HOST_LAUNCH_EDIT, m_host_launch);	DDV_MinMaxInt(pDX, m_host_launch, 1, 1000);	DDX_Check(pDX, IDC_HOST_MAPPING_CHK, m_bhost_mapping);	DDX_Check(pDX, IDC_HOST_MAPPING_NO, m_host_mapping_no);	DDX_Check(pDX, IDC_HOST_MAPPING_YES, m_host_mapping_yes);	DDX_Check(pDX, IDC_HOST_POPUP_DEBUG_CHK, m_bhost_popup_debug);	DDX_Check(pDX, IDC_HOST_POPUP_DEBUG_NO, m_host_popup_debug_no);	DDX_Check(pDX, IDC_HOST_POPUP_DEBUG_YES, m_host_popup_debug_yes);	DDX_Text(pDX, IDC_HOST_STATIC, m_config_host);	DDX_Check(pDX, IDC_HOST_USE_JOBHOST_CHK, m_bhost_use_jobhost);	DDX_Check(pDX, IDC_HOST_USE_JOBHOST_PWD_CHK, m_bhost_use_jobhost_pwd);	DDX_Check(pDX, IDC_HOSTS_CHK, m_bhosts);	DDX_Text(pDX, IDC_HOSTS_EDIT, m_hosts);	DDX_Text(pDX, IDC_JOBHOST_EDIT, m_jobhost);	DDX_Check(pDX, IDC_JOBHOST_NO, m_jobhost_no);	DDX_Text(pDX, IDC_JOBHOST_PWD_EDIT, m_jobhost_pwd);	DDX_Check(pDX, IDC_JOBHOST_YES, m_jobhost_yes);	DDX_Check(pDX, IDC_LAUNCH_CHK, m_blaunch);	DDX_Text(pDX, IDC_LAUNCH_EDIT, m_launch);	DDV_MinMaxInt(pDX, m_launch, 1, 1000);	DDX_Check(pDX, IDC_MAPPING_CHK, m_bmapping);	DDX_Check(pDX, IDC_MAPPING_NO, m_mapping_no);	DDX_Check(pDX, IDC_MAPPING_YES, m_mapping_yes);	DDX_Text(pDX, IDC_MPD_PHRASE, m_mpd_phrase);	DDX_Text(pDX, IDC_N_OF_M_STATIC, m_nofm);	DDX_Check(pDX, IDC_POPUP_DEBUG_CHK, m_bpopup_debug);	DDX_Check(pDX, IDC_POPUP_DEBUG_NO, m_popup_debug_no);	DDX_Check(pDX, IDC_POPUP_DEBUG_YES, m_popup_debug_yes);	DDX_Check(pDX, IDC_USE_JOBHOST_CHK, m_buse_jobhost);	DDX_Check(pDX, IDC_USE_JOBHOST_PWD_CHK, m_buse_jobhost_pwd);	DDX_Check(pDX, IDC_SHOW_CONFIG_CHK, m_bshow_config);	DDX_Control(pDX, IDC_MPD_PHRASE_DEFAULT_RADIO, m_mpd_default_radio);	DDX_Text(pDX, IDC_HOST_MSG_STATIC, m_config_host_msg);	DDX_Check(pDX, IDC_CATCH_CHK, m_bcatch);	DDX_Check(pDX, IDC_CATCH_NO, m_catch_no);	DDX_Check(pDX, IDC_CATCH_YES, m_catch_yes);	DDX_Check(pDX, IDC_HOST_CATCH_CHK, m_bhost_catch);	DDX_Check(pDX, IDC_HOST_CATCH_NO, m_host_catch_no);	DDX_Check(pDX, IDC_HOST_CATCH_YES, m_host_catch_yes);	DDX_Check(pDX, IDC_CODES_CHK, m_bcodes);	DDX_Check(pDX, IDC_CODES_NO, m_codes_no);	DDX_Check(pDX, IDC_CODES_YES, m_codes_yes);	DDX_Check(pDX, IDC_HOST_CODES_CHK, m_bhost_codes);	DDX_Check(pDX, IDC_HOST_CODES_NO, m_host_codes_no);	DDX_Check(pDX, IDC_HOST_CODES_YES, m_host_codes_yes);	DDX_Check(pDX, IDC_REDIRECT_MPD_CHK, m_blogfile);	DDX_Text(pDX, IDC_REDIRECT_MPD_EDIT, m_logfile);	DDX_Check(pDX, IDC_REDIRECT_MPD_NO, m_logfile_no);	DDX_Check(pDX, IDC_REDIRECT_MPD_YES, m_logfile_yes);	DDX_Check(pDX, IDC_HOST_REDIRECT_MPD_CHK, m_bhost_logfile);	DDX_Text(pDX, IDC_HOST_REDIRECT_MPD_EDIT, m_host_logfile);	DDX_Check(pDX, IDC_HOST_REDIRECT_MPD_NO, m_host_logfile_no);	DDX_Check(pDX, IDC_HOST_REDIRECT_MPD_YES, m_host_logfile_yes);	//}}AFX_DATA_MAP}BEGIN_MESSAGE_MAP(CMPICHConfigDlg, CDialog)	//{{AFX_MSG_MAP(CMPICHConfigDlg)	ON_BN_CLICKED(IDC_ADD_BTN, OnAddBtn)	ON_BN_CLICKED(IDC_SELECT_BTN, OnSelectBtn)	ON_BN_CLICKED(IDC_MPD_PHRASE_RADIO, OnMpdPhraseRadio)	ON_BN_CLICKED(IDC_MPD_PHRASE_DEFAULT_RADIO, OnMpdPhraseDefaultRadio)	ON_BN_CLICKED(IDC_TOGGLE_BTN, OnToggleBtn)	ON_BN_CLICKED(IDC_HOSTS_CHK, OnHostsChk)	ON_BN_CLICKED(IDC_LAUNCH_CHK, OnLaunchChk)	ON_BN_CLICKED(IDC_USE_JOBHOST_CHK, OnUseJobhostChk)	ON_BN_CLICKED(IDC_JOBHOST_YES, OnJobhostYes)	ON_BN_CLICKED(IDC_JOBHOST_NO, OnJobhostNo)	ON_BN_CLICKED(IDC_USE_JOBHOST_PWD_CHK, OnUseJobhostPwdChk)	ON_BN_CLICKED(IDC_COLOR_CHK, OnColorChk)	ON_BN_CLICKED(IDC_COLOR_YES, OnColorYes)	ON_BN_CLICKED(IDC_COLOR_NO, OnColorNo)	ON_BN_CLICKED(IDC_DOTS_CHK, OnDotsChk)	ON_BN_CLICKED(IDC_DOTS_YES, OnDotsYes)	ON_BN_CLICKED(IDC_DOTS_NO, OnDotsNo)	ON_BN_CLICKED(IDC_MAPPING_CHK, OnMappingChk)	ON_BN_CLICKED(IDC_MAPPING_YES, OnMappingYes)	ON_BN_CLICKED(IDC_MAPPING_NO, OnMappingNo)	ON_BN_CLICKED(IDC_POPUP_DEBUG_CHK, OnPopupDebugChk)	ON_BN_CLICKED(IDC_POPUP_DEBUG_YES, OnPopupDebugYes)	ON_BN_CLICKED(IDC_POPUP_DEBUG_NO, OnPopupDebugNo)	ON_BN_CLICKED(IDC_APPLY_BTN, OnApplyBtn)	ON_BN_CLICKED(IDC_APPLY_SINGLE_BTN, OnApplySingleBtn)	ON_BN_CLICKED(IDC_HOST_TOGGLE_BTN, OnHostToggleBtn)	ON_BN_CLICKED(IDC_HOST_HOSTS_CHK, OnHostHostsChk)	ON_BN_CLICKED(IDC_HOST_LAUNCH_CHK, OnHostLaunchChk)	ON_BN_CLICKED(IDC_HOST_USE_JOBHOST_CHK, OnHostUseJobhostChk)	ON_BN_CLICKED(IDC_HOST_JOBHOST_YES, OnHostJobhostYes)	ON_BN_CLICKED(IDC_HOST_JOBHOST_NO, OnHostJobhostNo)	ON_BN_CLICKED(IDC_HOST_USE_JOBHOST_PWD_CHK, OnHostUseJobhostPwdChk)	ON_BN_CLICKED(IDC_HOST_COLOR_CHK, OnHostColorChk)	ON_BN_CLICKED(IDC_HOST_COLOR_YES, OnHostColorYes)	ON_BN_CLICKED(IDC_HOST_COLOR_NO, OnHostColorNo)	ON_BN_CLICKED(IDC_HOST_DOTS_CHK, OnHostDotsChk)	ON_BN_CLICKED(IDC_HOST_DOTS_YES, OnHostDotsYes)	ON_BN_CLICKED(IDC_HOST_DOTS_NO, OnHostDotsNo)	ON_BN_CLICKED(IDC_HOST_MAPPING_CHK, OnHostMappingChk)	ON_BN_CLICKED(IDC_HOST_MAPPING_YES, OnHostMappingYes)	ON_BN_CLICKED(IDC_HOST_MAPPING_NO, OnHostMappingNo)	ON_BN_CLICKED(IDC_HOST_POPUP_DEBUG_CHK, OnHostPopupDebugChk)	ON_BN_CLICKED(IDC_HOST_POPUP_DEBUG_YES, OnHostPopupDebugYes)	ON_BN_CLICKED(IDC_HOST_POPUP_DEBUG_NO, OnHostPopupDebugNo)	ON_BN_CLICKED(IDC_MODIFY_BTN, OnModifyBtn)	ON_BN_CLICKED(IDC_SHOW_CONFIG_CHK, OnShowConfigChk)	ON_NOTIFY(LVN_KEYDOWN, IDC_HOST_LIST, OnKeydownHostList)	ON_WM_CLOSE()	ON_NOTIFY(LVN_ITEMCHANGING, IDC_HOST_LIST, OnItemchangingHostList)	ON_BN_CLICKED(IDC_HOST_CATCH_CHK, OnHostCatchChk)	ON_BN_CLICKED(IDC_HOST_CATCH_YES, OnHostCatchYes)	ON_BN_CLICKED(IDC_HOST_CATCH_NO, OnHostCatchNo)	ON_BN_CLICKED(IDC_CATCH_CHK, OnCatchChk)	ON_BN_CLICKED(IDC_CATCH_YES, OnCatchYes)	ON_BN_CLICKED(IDC_CATCH_NO, OnCatchNo)	ON_BN_CLICKED(IDC_HOST_CODES_YES, OnHostCodesYes)	ON_BN_CLICKED(IDC_HOST_CODES_NO, OnHostCodesNo)	ON_BN_CLICKED(IDC_HOST_CODES_CHK, OnHostCodesChk)	ON_BN_CLICKED(IDC_CODES_CHK, OnCodesChk)	ON_BN_CLICKED(IDC_CODES_YES, OnCodesYes)	ON_BN_CLICKED(IDC_CODES_NO, OnCodesNo)	ON_BN_CLICKED(IDC_REDIRECT_MPD_CHK, OnRedirectMpdChk)	ON_BN_CLICKED(IDC_REDIRECT_MPD_NO, OnRedirectMpdNo)	ON_BN_CLICKED(IDC_REDIRECT_MPD_YES, OnRedirectMpdYes)	ON_BN_CLICKED(IDC_HOST_REDIRECT_MPD_CHK, OnHostRedirectMpdChk)	ON_BN_CLICKED(IDC_HOST_REDIRECT_MPD_NO, OnHostRedirectMpdNo)	ON_BN_CLICKED(IDC_HOST_REDIRECT_MPD_YES, OnHostRedirectMpdYes)	//}}AFX_MSG_MAPEND_MESSAGE_MAP()/////////////////////////////////////////////////////////////////////////////// CMPICHConfigDlg message handlersvoid CMPICHConfigDlg::ParseRegistry(){    HKEY tkey;    DWORD result, len;    char name[100];        // Set the defaults.    m_nPort = MPD_DEFAULT_PORT;    len = 100;    GetComputerName(name, &len);    m_add_hostname = name;        m_bNeedPassword = true;    // Open the root key    if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, MPD_REGISTRY_KEY,	0, KEY_ALL_ACCESS, &tkey) != ERROR_SUCCESS)    {	printf("Unable to open SOFTWARE\\MPICH\\MPD registry key, error %d\n", GetLastError());	return;    }        // Read the port    len = sizeof(int);    result = RegQueryValueEx(tkey, "port", 0, NULL, (unsigned char *)&m_nPort, &len);        // Check to see if a passphrase has been set and set it to the default if necessary.    len = 100;    result = RegQueryValueEx(tkey, "phrase", 0, NULL, (unsigned char *)m_pszPhrase, &len);    if (result == ERROR_SUCCESS)	m_bNeedPassword = false;        RegCloseKey(tkey);}void CMPICHConfigDlg::OnAddBtn() {    UpdateData();        if (m_add_hostname.GetLength() != 0)    {	CString str;	int n = m_host_list.GetItemCount();	if (n != LB_ERR)	{	    bool bFound = false;	    for (int i=0; i<n; i++)	    {		str = m_host_list.GetItemText(i, 0);		if (str.CompareNoCase(m_add_hostname) == 0)		{		    bFound = true;		    //break;		}	    }	    if (!bFound)	    {		m_host_list.InsertItem(0, m_add_hostname);		GetHostsString();		UpdateData(FALSE);	    }	}    }}void CMPICHConfigDlg::OnSelectBtn() {    CFindHostsDlg dlg;    UpdateData();    if (dlg.DoModal() == IDOK)    {	QVS_Container qvs;	char str[100];	m_host_list.DeleteAllItems();	qvs.decode_string((char*)(LPCTSTR)dlg.m_encoded_hosts);	if (qvs.first(str, 100))	{	    m_host_list.InsertItem(0, str);	    while (qvs.next(str, 100))	    {		m_host_list.InsertItem(0, str);	    }	}	GetHostsString();    }}void CMPICHConfigDlg::OnMpdPhraseRadio() {    m_mpd_phrase_edit.EnableWindow();    m_buse_default_passphrase = false;    m_bNeedPassword = true;}void CMPICHConfigDlg::OnMpdPhraseDefaultRadio() {    m_mpd_phrase_edit.EnableWindow(FALSE);    m_buse_default_passphrase = true;}void CMPICHConfigDlg::OnToggleBtn() {    UpdateData();    m_bToggle = !m_bToggle;        m_bcolor = m_bToggle;    m_bdots = m_bToggle;    m_bhosts = m_bToggle;    m_blaunch = m_bToggle;    m_bmapping = m_bToggle;    m_bpopup_debug = m_bToggle;    m_buse_jobhost = m_bToggle;    m_bcatch = m_bToggle;    m_bcodes = m_bToggle;    m_blogfile = m_bToggle;    UpdateData(FALSE);    OnColorChk();    OnDotsChk();    OnHostsChk();    OnLaunchChk();    OnMappingChk();    OnPopupDebugChk();    OnUseJobhostChk();    OnCatchChk();    OnCodesChk();    OnRedirectMpdChk();}void CMPICHConfigDlg::OnHostsChk() {    UpdateData();    m_hosts_edit.EnableWindow(m_bhosts);    UpdateApplyButtonStates();}void CMPICHConfigDlg::OnLaunchChk() {    UpdateData();    m_launch_edit.EnableWindow(m_blaunch);    UpdateApplyButtonStates();}void CMPICHConfigDlg::OnUseJobhostChk() {    UpdateData();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -