--- trunk/H7 Server/H7 ServerDlg.cpp 2007/01/31 17:05:15 32 +++ trunk/H7 Server/H7 ServerDlg.cpp 2007/01/31 17:22:59 33 @@ -121,6 +121,7 @@ ON_BN_CLICKED(IDC_Start, OnBnClickedStart) ON_BN_CLICKED(IDC_TEST, OnBnClickedTest) ON_BN_CLICKED(IDC_RESTART, OnBnClickedRestart) + ON_BN_CLICKED(IDC_STOP, OnBnClickedStop) END_MESSAGE_MAP() @@ -162,7 +163,7 @@ OnOK(); return false; } - + m_First = true; /**********************************************************************/ return TRUE; // return TRUE unless you set the focus to a control } @@ -216,34 +217,45 @@ return static_cast(m_hIcon); } +void CH7ServerDlg::OnBnClickedRestart() +{ + StartSerial(); +} + void CH7ServerDlg::OnBnClickedStart() { // Add's user defined Baud-Rate to regedit before the server start. CRegKey reg; - CString Baud; - m_BaudRate.GetWindowText(Baud); + CString Baud = "9600"; +// m_BaudRate.GetWindowText(Baud); reg.Create(HKEY_LOCAL_MACHINE, "SOFTWARE\\Projekt\\Server"); reg.SetDWORDValue("BaudRate", atoi(Baud) ); StartTcp(); StartSerial(); + UpdateClient(); } int CH7ServerDlg::StartTcp(void) { // Get the TCP Port number from regedit. + CString Current_Port; unsigned long Port; + m_Port.GetWindowText(Current_Port); CRegKey reg; reg.Create(HKEY_LOCAL_MACHINE, "SOFTWARE\\Projekt\\Server"); + reg.SetDWORDValue("Port",atoi(Current_Port) ); reg.QueryDWORDValue("Port", Port); reg.Close(); -// Restats the TCP Connection +// Restarts the TCP Connection TcpServer.Close(); - TcpServer.Create(Port); - TcpServer.Listen(); + if (!TcpServer.Create(Port)) + MessageBox("Crap"); + if (!TcpServer.Listen()) + MessageBox("Loads of crap"); // Prints TCP Port number to the status box. CString tmp; @@ -253,117 +265,12 @@ return 0; } -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) ); - - CString tmp; - m_Serial.GetWindowText(tmp); - reg.SetStringValue("Serial",tmp); - reg.Close(); - StartTcp(); - StartSerial(); -} - void CH7ServerDlg::OnBnClickedTest() { - + CWaitCursor wait; + UpdateClient(); } -bool CH7ServerDlg::ServerInit(void) -{ - unsigned int i; - CRegKey reg; -// 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"); - unsigned long Baud; - CString GetBaud; - reg.Create(HKEY_LOCAL_MACHINE, "SOFTWARE\\Projekt\\Server"); - reg.QueryDWORDValue("BaudRate", Baud); - - switch (Baud) - { - case 1200: - m_BaudRate.SetCurSel(0); - break; - case 2400: - m_BaudRate.SetCurSel(1); - break; - case 4800: - m_BaudRate.SetCurSel(2); - break; - case 9600: - m_BaudRate.SetCurSel(3); - break; - case 19200: - m_BaudRate.SetCurSel(4); - break; - default: - m_BaudRate.SetCurSel(3); - break; - } - - m_BaudRate.GetWindowText(GetBaud); - reg.SetDWORDValue("BaudRate", atoi(GetBaud) ); - -// Checks how many COM ports there are. - std::vector Serial = GetAvailableComPorts(); - for (i=0; i