📄 testdlg.cpp
字号:
case NET_UDPSOCKS5SEND:
TRACE( "\nUDP socket using socks5 send message receive." );
break;
default:
break;
}
return NULL;
}
void CTestDlg::OnBnClickedopttcp()
{
GetDlgItem(IDC_lblTCPMode)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_optServe)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_optClient)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_chkGroup)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_optRoot)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_optLeaf)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_lblGroup)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_ipGroup)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_chkProxy)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_lblProxyIP)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_ipProxy)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_lblProxyPort)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_txtProxyPort)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_chkCheck)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_lblProxyUser)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_txtProxyUser)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_lblProxyPass)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_txtProxyPass)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_lblProxyAlloPort)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_btnOpen)->ShowWindow( SW_HIDE );
((CButton*)GetDlgItem(IDC_optServe))->SetCheck( 0 );
((CButton*)GetDlgItem(IDC_optClient))->SetCheck( 1 );
((CButton*)GetDlgItem(IDC_optByte))->SetCheck( 0 );
((CButton*)GetDlgItem(IDC_optText))->SetCheck( 1 );
((CButton*)GetDlgItem(IDC_optRoot))->SetCheck( 0 );
((CButton*)GetDlgItem(IDC_optLeaf))->SetCheck( 1 );
((CButton*)GetDlgItem(IDC_chkProxy))->SetCheck( 0 );
((CButton*)GetDlgItem(IDC_chkCheck))->SetCheck( 0 );
((CButton*)GetDlgItem(IDC_chkGroup))->SetCheck( 0 );
OnBnClickedoptclient();
m_bSocMode = true;
}
void CTestDlg::OnBnClickedoptudp()
{
GetDlgItem(IDC_lblTCPMode)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_optServe)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_optClient)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_chkGroup)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_optRoot)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_optLeaf)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblGroup)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_ipGroup)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblLocalPort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_txtLocalPort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblIP)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_ipRemote)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblRemotePort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_txtRemotePort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_chkProxy)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblProxyIP)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_ipProxy)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblProxyPort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_txtProxyPort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_chkCheck)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblProxyUser)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_txtProxyUser)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblProxyPass)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_txtProxyPass)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblProxyAlloPort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_btnListen)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_btnConnect)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_btnOpen)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblSubSoc)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_txtSocSub)->ShowWindow( SW_HIDE );
((CButton*)GetDlgItem(IDC_optServe))->SetCheck( 0 );
((CButton*)GetDlgItem(IDC_optClient))->SetCheck( 1 );
((CButton*)GetDlgItem(IDC_optByte))->SetCheck( 0 );
((CButton*)GetDlgItem(IDC_optText))->SetCheck( 1 );
((CButton*)GetDlgItem(IDC_optRoot))->SetCheck( 0 );
((CButton*)GetDlgItem(IDC_optLeaf))->SetCheck( 1 );
((CButton*)GetDlgItem(IDC_chkProxy))->SetCheck( 0 );
((CButton*)GetDlgItem(IDC_chkCheck))->SetCheck( 0 );
((CButton*)GetDlgItem(IDC_chkGroup))->SetCheck( 0 );
OnBnClickedchkcheck();
OnBnClickedchkproxy();
OnBnClickedchkgroup();
OnBnClickedchkgroup();
m_bSocMode = false;
}
void CTestDlg::OnBnClickedoptserve()
{
GetDlgItem(IDC_btnListen)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_btnConnect)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_lblLocalPort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_txtLocalPort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblRemotePort)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_txtRemotePort)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_lblSubSoc)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_txtSocSub)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblIP)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_ipRemote)->ShowWindow( SW_HIDE );
m_bTCPMode = true;
}
void CTestDlg::OnBnClickedoptclient()
{
GetDlgItem(IDC_btnListen)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_btnConnect)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblLocalPort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_txtLocalPort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblRemotePort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_txtRemotePort)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_lblSubSoc)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_txtSocSub)->ShowWindow( SW_HIDE );
GetDlgItem(IDC_lblIP)->ShowWindow( SW_SHOW );
GetDlgItem(IDC_ipRemote)->ShowWindow( SW_SHOW );
m_bTCPMode = false;
}
void CTestDlg::OnBnClickedopttext()
{
return;
}
void CTestDlg::OnBnClickedoptbyte()
{
return;
}
void CTestDlg::OnBnClickedchkgroup()
{
if( ((CButton*)GetDlgItem(IDC_chkGroup))->GetCheck() )
{
GetDlgItem(IDC_chkProxy)->EnableWindow( false );
GetDlgItem(IDC_lblProxyIP)->EnableWindow( false );
GetDlgItem(IDC_ipProxy)->EnableWindow( false );
GetDlgItem(IDC_lblProxyPort)->EnableWindow( false );
GetDlgItem(IDC_txtProxyPort)->EnableWindow( false );
GetDlgItem(IDC_chkCheck)->EnableWindow( false );
GetDlgItem(IDC_lblProxyUser)->EnableWindow( false );
GetDlgItem(IDC_txtProxyUser)->EnableWindow( false );
GetDlgItem(IDC_lblProxyPass)->EnableWindow( false );
GetDlgItem(IDC_txtProxyPass)->EnableWindow( false );
GetDlgItem(IDC_optRoot)->EnableWindow( true );
GetDlgItem(IDC_optLeaf)->EnableWindow( true );
GetDlgItem(IDC_lblGroup)->EnableWindow( true );
GetDlgItem(IDC_ipGroup)->EnableWindow( true );
}
else
{
GetDlgItem(IDC_chkProxy)->EnableWindow( true );
if( ((CButton*)GetDlgItem(IDC_chkProxy))->GetCheck() )
{
GetDlgItem(IDC_lblProxyIP)->EnableWindow( true );
GetDlgItem(IDC_ipProxy)->EnableWindow( true );
GetDlgItem(IDC_lblProxyPort)->EnableWindow( true );
GetDlgItem(IDC_txtProxyPort)->EnableWindow( true );
GetDlgItem(IDC_chkCheck)->EnableWindow( true );
if( ((CButton*)GetDlgItem(IDC_chkCheck))->GetCheck() )
{
GetDlgItem(IDC_lblProxyUser)->EnableWindow( true );
GetDlgItem(IDC_txtProxyUser)->EnableWindow( true );
GetDlgItem(IDC_lblProxyPass)->EnableWindow( true );
GetDlgItem(IDC_txtProxyPass)->EnableWindow( true );
}
else
{
GetDlgItem(IDC_lblProxyUser)->EnableWindow( false );
GetDlgItem(IDC_txtProxyUser)->EnableWindow( false );
GetDlgItem(IDC_lblProxyPass)->EnableWindow( false );
GetDlgItem(IDC_txtProxyPass)->EnableWindow( false );
}
}
else
{
GetDlgItem(IDC_lblProxyIP)->EnableWindow( false );
GetDlgItem(IDC_ipProxy)->EnableWindow( false );
GetDlgItem(IDC_lblProxyPort)->EnableWindow( false );
GetDlgItem(IDC_txtProxyPort)->EnableWindow( false );
GetDlgItem(IDC_chkCheck)->EnableWindow( false );
GetDlgItem(IDC_lblProxyUser)->EnableWindow( false );
GetDlgItem(IDC_txtProxyUser)->EnableWindow( false );
GetDlgItem(IDC_lblProxyPass)->EnableWindow( false );
GetDlgItem(IDC_txtProxyPass)->EnableWindow( false );
}
GetDlgItem(IDC_optRoot)->EnableWindow( false );
GetDlgItem(IDC_optLeaf)->EnableWindow( false );
GetDlgItem(IDC_lblGroup)->EnableWindow( false );
GetDlgItem(IDC_ipGroup)->EnableWindow( false );
}
}
void CTestDlg::OnBnClickedoptroot()
{
return;
}
void CTestDlg::OnBnClickedoptleaf()
{
return;
}
void CTestDlg::OnBnClickedchkproxy()
{
if( ((CButton*)GetDlgItem(IDC_chkProxy))->GetCheck() )
{
GetDlgItem(IDC_chkGroup)->EnableWindow( false );
GetDlgItem(IDC_optRoot)->EnableWindow( false );
GetDlgItem(IDC_optLeaf)->EnableWindow( false );
GetDlgItem(IDC_lblGroup)->EnableWindow( false );
GetDlgItem(IDC_ipGroup)->EnableWindow( false );
GetDlgItem(IDC_lblProxyIP)->EnableWindow( true );
GetDlgItem(IDC_ipProxy)->EnableWindow( true );
GetDlgItem(IDC_chkCheck)->EnableWindow( true );
GetDlgItem(IDC_lblProxyPort)->EnableWindow( true );
GetDlgItem(IDC_txtProxyPort)->EnableWindow( true );
((CButton*)GetDlgItem(IDC_chkCheck))->SetCheck(0);
OnBnClickedchkcheck();
}
else
{
GetDlgItem(IDC_chkGroup)->EnableWindow( true );
if( ((CButton*)GetDlgItem(IDC_chkGroup))->GetCheck() )
{
GetDlgItem(IDC_optRoot)->EnableWindow( true );
GetDlgItem(IDC_optLeaf)->EnableWindow( true );
GetDlgItem(IDC_lblGroup)->EnableWindow( true );
GetDlgItem(IDC_ipGroup)->EnableWindow( true );
}
else
{
GetDlgItem(IDC_optRoot)->EnableWindow( false );
GetDlgItem(IDC_optLeaf)->EnableWindow( false );
GetDlgItem(IDC_lblGroup)->EnableWindow( false );
GetDlgItem(IDC_ipGroup)->EnableWindow( false );
}
GetDlgItem(IDC_lblProxyIP)->EnableWindow( false );
GetDlgItem(IDC_ipProxy)->EnableWindow( false );
GetDlgItem(IDC_chkCheck)->EnableWindow( false );
GetDlgItem(IDC_lblProxyPort)->EnableWindow( false );
GetDlgItem(IDC_txtProxyPort)->EnableWindow( false );
((CButton*)GetDlgItem(IDC_chkCheck))->SetCheck(0);
OnBnClickedchkcheck();
}
}
void CTestDlg::OnBnClickedchkcheck()
{
if( ((CButton*)GetDlgItem(IDC_chkCheck))->GetCheck() )
{
GetDlgItem(IDC_lblProxyUser)->EnableWindow( true );
GetDlgItem(IDC_txtProxyUser)->EnableWindow( true );
GetDlgItem(IDC_lblProxyPass)->EnableWindow( true );
GetDlgItem(IDC_txtProxyPass)->EnableWindow( true );
}
else
{
GetDlgItem(IDC_lblProxyUser)->EnableWindow( false );
GetDlgItem(IDC_txtProxyUser)->EnableWindow( false );
GetDlgItem(IDC_lblProxyPass)->EnableWindow( false );
GetDlgItem(IDC_txtProxyPass)->EnableWindow( false );
}
}
void CTestDlg::OnBnClickedbtnlisten()
{
CString strLocalPort;
if( m_bOpen )
{
MessageBox( "socket已经打开!", "提示" );
return;
}
GetDlgItem(IDC_txtLocalPort)->GetWindowText( strLocalPort );
socServe.SetBufferLen( 8192 );
socServe.SetSocketNotify( m_hWnd, WM_NETMES );
if( !socServe.OpenSocket( atoi( strLocalPort ) ) )
{
m_bOpen = true;
}
else
{
MessageBox( "服务socket打开失败!", "错误" );
return;
}
GetDlgItem(IDC_lblMode)->EnableWindow( false );
GetDlgItem(IDC_optTCP)->EnableWindow( false );
GetDlgItem(IDC_optUDP)->EnableWindow( false );
GetDlgItem(IDC_lblTCPMode)->EnableWindow( false );
GetDlgItem(IDC_optServe)->EnableWindow( false );
GetDlgItem(IDC_optClient)->EnableWindow( false );
GetDlgItem(IDC_btnOpen)->EnableWindow( false );
GetDlgItem(IDC_btnConnect)->EnableWindow( false );
GetDlgItem(IDC_btnListen)->EnableWindow( false );
}
void CTestDlg::OnBnClickedbtnconnect()
{
BYTE pucIP[4];
int nRemotePort;
int nLocalPort;
CString strRemotePort;
CString strLocalPort;
if( m_bOpen )
{
MessageBox( "socket已经打开!", "提示" );
return;
}
GetDlgItem(IDC_txtLocalPort)->GetWindowText( strLocalPort );
GetDlgItem(IDC_txtRemotePort)->GetWindowText( strRemotePort );
nRemotePort = atoi( strRemotePort.GetBuffer( strRemotePort.GetLength() ) );
nLocalPort = atoi( strLocalPort.GetBuffer( strLocalPort.GetLength() ) );
((CIPAddressCtrl*)GetDlgItem(IDC_ipRemote))->GetAddress( pucIP[0], pucIP[1], pucIP[2], pucIP[3] );
socClient.SetBufferLen( 8192 );
socClient.SetSocketNotify( m_hWnd, WM_NETMES );
if( !socClient.OpenSocket( pucIP, nRemotePort, nLocalPort ) )
{
m_bOpen = true;
}
else
{
MessageBox( "客户socket打开失败!", "错误" );
return;
}
GetDlgItem(IDC_lblMode)->EnableWindow( false );
GetDlgItem(IDC_optTCP)->EnableWindow( false );
GetDlgItem(IDC_optUDP)->EnableWindow( false );
GetDlgItem(IDC_lblTCPMode)->EnableWindow( false );
GetDlgItem(IDC_optServe)->EnableWindow( false );
GetDlgItem(IDC_optClient)->EnableWindow( false );
GetDlgItem(IDC_btnOpen)->EnableWindow( false );
GetDlgItem(IDC_btnConnect)->EnableWindow( false );
GetDlgItem(IDC_btnListen)->EnableWindow( false );
}
void CTestDlg::OnBnClickedbtnopen()
{
BYTE pucIP[4];
CString strLocalPort;
CString strProxyPort;
CString strProxyAlloPort;
CString strUser;
CString strPass;
if( m_bOpen )
{
MessageBox( "socket已经打开!", "提示" );
return;
}
GetDlgItem(IDC_txtLocalPort)->GetWindowText( strLocalPort );
socUDP.SetBufferLen( 4096 );
socUDP.SetSocketNotify( m_hWnd, WM_NETMES );
socSocks5.SetBufferLen( 4096 );
socSocks5.SetSocketNotify( m_hWnd, WM_NETMES );
if( ((CButton*)GetDlgItem(IDC_chkProxy))->GetCheck() )
{
GetDlgItem(IDC_txtProxyPort)->GetWindowText( strProxyPort );
((CIPAddressCtrl*)GetDlgItem(IDC_ipProxy))->GetAddress(
pucIP[0], pucIP[1], pucIP[2], pucIP[3] );
if( ((CButton*)GetDlgItem(IDC_chkCheck))->GetCheck() )
{
GetDlgItem(IDC_txtProxyUser)->GetWindowText( strUser );
GetDlgItem(IDC_txtProxyPass)->GetWindowText( strPass );
if( !socSocks5.OpenSocket( pucIP, atoi( strProxyPort ), atoi( strLocalPort ),
NULL, strUser, strPass ) )
{
m_bOpen = true;
m_bUDPMode = false;
}
else
{
MessageBox( "UDP socket using socks 5打开失败!", "错误" );
return;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -