ServerInfo.cpp 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. // ServerInfo.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "newclient.h"
  5. #include "ServerInfo.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CServerInfo dialog
  13. extern SERVER_INFO serverinfo[MAXIPNUMBER];
  14. CServerInfo::CServerInfo(CWnd* pParent /*=NULL*/)
  15. : CDialog(CServerInfo::IDD, pParent)
  16. {
  17. //{{AFX_DATA_INIT(CServerInfo)
  18. m_channelnum = 0;
  19. m_servername = _T("");
  20. m_serverport = 0;
  21. m_serverPSW = _T("");
  22. m_username = _T("");
  23. m_PPPOEIP = _T("");
  24. m_SerialNum = _T("");
  25. m_MultiIp = _T("");
  26. //}}AFX_DATA_INIT
  27. }
  28. void CServerInfo::DoDataExchange(CDataExchange* pDX)
  29. {
  30. CDialog::DoDataExchange(pDX);
  31. //{{AFX_DATA_MAP(CServerInfo)
  32. DDX_Control(pDX, IDC_SVRIP, m_ipctrl);
  33. DDX_Control(pDX, IDC_COMBOSVRTYPE, m_servertype);
  34. DDX_Text(pDX, IDC_CHANNELNUM, m_channelnum);
  35. DDX_Text(pDX, IDC_SVRNAME, m_servername);
  36. DDX_Text(pDX, IDC_SVRPORT, m_serverport);
  37. DDX_Text(pDX, IDC_SVRPSW, m_serverPSW);
  38. DDX_Text(pDX, IDC_SVRUSERNAME, m_username);
  39. DDX_Text(pDX, IDC_PPPOEIP, m_PPPOEIP);
  40. DDX_Text(pDX, IDC_SERIALNUM, m_SerialNum);
  41. DDX_Text(pDX, IDC_SVRMULTIIP, m_MultiIp);
  42. //}}AFX_DATA_MAP
  43. }
  44. BEGIN_MESSAGE_MAP(CServerInfo, CDialog)
  45. //{{AFX_MSG_MAP(CServerInfo)
  46. ON_BN_CLICKED(IDC_EXIT, OnExit)
  47. ON_BN_CLICKED(IDC_SVROK, OnSvrok)
  48. ON_BN_CLICKED(IDC_BUTTONGETIP, OnButtongetip)
  49. //}}AFX_MSG_MAP
  50. END_MESSAGE_MAP()
  51. /////////////////////////////////////////////////////////////////////////////
  52. // CServerInfo message handlers
  53. void CServerInfo::OnExit()
  54. {
  55. // TODO: Add your control notification handler code here
  56. CDialog::OnOK();
  57. }
  58. BOOL CServerInfo::OnInitDialog()
  59. {
  60. CDialog::OnInitDialog();
  61. // TODO: Add extra initialization here
  62. if(serverinfo[m_iServerNum].m_iServerChannelNumber == -1)
  63. {
  64. m_channelnum= 8;
  65. m_serverport = 8000;
  66. m_servertype.SetCurSel(0);
  67. }
  68. else
  69. {
  70. m_servername.Format(serverinfo[m_iServerNum].m_csServerName);
  71. m_username.Format("%s",serverinfo[m_iServerNum].m_csServerAdminName);
  72. m_serverPSW.Format("%s",serverinfo[m_iServerNum].m_csServerAdminPasswd);
  73. m_channelnum = serverinfo[m_iServerNum].m_iServerChannelNumber;
  74. m_ipctrl.SetAddress(serverinfo[m_iServerNum].m_dwServerIPvalue);
  75. m_MultiIp.Format(serverinfo[m_iServerNum].m_csServerMultiIP);
  76. m_serverport = serverinfo[m_iServerNum].m_wServerPort;
  77. if (serverinfo[m_iServerNum].m_wServerType == 30)
  78. {
  79. m_servertype.SetCurSel(m_servertype.FindString(-1, "IPCAM"));
  80. }
  81. else if (serverinfo[m_iServerNum].m_wServerType == 40)
  82. {
  83. m_servertype.SetCurSel(m_servertype.FindString(-1, "IPDOME"));
  84. }
  85. else if (serverinfo[m_iServerNum].m_wServerType == 50)
  86. {
  87. m_servertype.SetCurSel(m_servertype.FindString(-1, "IPMOD"));
  88. }
  89. else
  90. {
  91. m_servertype.SetCurSel(serverinfo[m_iServerNum].m_wServerType - 1);
  92. }
  93. m_SerialNum.Format(serverinfo[m_iServerNum].m_csSerialNumber);
  94. m_PPPOEIP.Format("");
  95. }
  96. UpdateData(FALSE);
  97. return TRUE; // return TRUE unless you set the focus to a control
  98. // EXCEPTION: OCX Property Pages should return FALSE
  99. }
  100. void CServerInfo::OnCancel()
  101. {
  102. // TODO: Add extra cleanup here
  103. // CDialog::OnCancel();
  104. }
  105. void CServerInfo::OnSvrok()
  106. {
  107. // TODO: Add your control notification handler code here
  108. }
  109. void CServerInfo::OnButtongetip()
  110. {
  111. // TODO: Add your control notification handler code here
  112. char sTemp[20];
  113. char sTemp1[100];
  114. CString sBuf;
  115. NET_DVR_DEVICECFG devicecfg;
  116. DWORD dwReturned;
  117. char GetIP[16];
  118. if(!NET_DVR_GetDVRConfig(serverinfo[m_iServerNum].m_lServerID, NET_DVR_GET_DEVICECFG, 0, &devicecfg, sizeof(NET_DVR_DEVICECFG), &dwReturned))
  119. {
  120. sBuf.Format("获取服务器配置信息失败: NET_DVR_GET_DEVICECFG = %d \n", NET_DVR_GetLastError());
  121. AfxMessageBox(sBuf);
  122. return;
  123. }
  124. sprintf(sTemp, "%s", devicecfg.sDVRName);
  125. sprintf(sTemp1, "%s", m_SerialNum);
  126. if(!NET_DVR_GetDVRIPByResolveSvr("218.108.8.179", 7071, (BYTE *)sTemp, strlen(sTemp), (BYTE *)sTemp1, strlen(sTemp1), GetIP))
  127. {
  128. sBuf.Format("NET_DVR_GetDVRIPByResolveSvr = %d \n", NET_DVR_GetLastError());
  129. AfxMessageBox(sBuf);
  130. }
  131. else
  132. {
  133. m_PPPOEIP.Format("%s", GetIP);
  134. }
  135. TRACE("m_PPPOEIP is %s\n", m_PPPOEIP);
  136. UpdateData(FALSE);
  137. }