--- trunk/H7 Server/H7 ServerDlg.cpp 2007/01/29 10:44:29 3 +++ trunk/H7 Server/H7 ServerDlg.cpp 2007/01/29 14:35:42 8 @@ -5,12 +5,40 @@ #include "H7 Server.h" #include "H7 ServerDlg.h" #include ".\h7 serverdlg.h" +#include #ifdef _DEBUG #define new DEBUG_NEW #endif + std::vector GetAvailableComPorts() + { + std::vector ports; + + for (int i = 1; i < 20; i++) + { + CString port; + port.Format("COM%d", i); + + + HANDLE handle = CreateFile(port, + GENERIC_READ | GENERIC_WRITE, + 0, + 0, + OPEN_EXISTING, + 0, + NULL); + + if (handle != INVALID_HANDLE_VALUE) + { + CloseHandle(handle); + ports.push_back(port); + } + } + return ports; + } + // CAboutDlg dialog used for App About class CAboutDlg : public CDialog @@ -70,6 +98,8 @@ ON_WM_QUERYDRAGICON() //}}AFX_MSG_MAP ON_BN_CLICKED(IDC_Start, OnBnClickedStart) + ON_BN_CLICKED(IDC_TEST, OnBnClickedTest) + ON_BN_CLICKED(IDC_RESTART, OnBnClickedRestart) END_MESSAGE_MAP() @@ -104,8 +134,46 @@ /**********************************************************************/ // TODO: Add extra initialization here - - + + // Sets values in baud-rate combo box + m_BaudRate.AddString("1200"); + m_BaudRate.AddString("2400"); + m_BaudRate.AddString("4800"); // Don't work, used for error test. + m_BaudRate.AddString("9600"); + m_BaudRate.AddString("19200"); + + // Checks how many COM ports there are. + std::vector Serial = GetAvailableComPorts(); + for (unsigned int i=0; i ****************/ + CString Port = ""; + + m_Port.GetWindowText(Port); +// Saving Port number in regedit as int + CRegKey reg; + reg.Create(HKEY_LOCAL_MACHINE, "SOFTWARE\\Projekt\\Server"); + reg.SetDWORDValue("Port", atoi(Port) ); + reg.Close(); +// Debug info to the status edit box. m_Status.SetWindowText(Port); +//**************** ****************/ + StartTcp(); } -/*CString CH7ServerDlg::SetTcpPort(CString Port) -{ - CString Tmp; - m_Port.GetWindowText(Tmp); -// if( Tmp ) -// Port = atoi(Tmp); - MessageBox(Port); - return Port; +void CH7ServerDlg::OnBnClickedRestart() +{ + CWaitCursor wait; // Musen viser timeglas. + CString Port; + m_Port.GetWindowText(Port); + CRegKey reg; + reg.Create(HKEY_LOCAL_MACHINE, "SOFTWARE\\Projekt\\Server"); + reg.SetDWORDValue("Port", atoi(Port) ); + StartTcp(); } -*/ \ No newline at end of file