/[H7]/trunk/H7 Server/ServerInit.cpp
ViewVC logotype

Annotation of /trunk/H7 Server/ServerInit.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 33 - (hide annotations) (download)
Wed Jan 31 17:22:59 2007 UTC (17 years, 4 months ago) by hedin
File size: 2120 byte(s)
Made the selection of baud rate work (well, make everything work - including multiple clients)
1 hedin 33 #include "stdafx.h"
2     #include "Resource.h"
3     #include "H7 ServerDlg.h"
4    
5     bool CH7ServerDlg::ServerInit(void)
6     {
7     unsigned int i;
8     CRegKey reg;
9     // Sets values in baud-rate combo box
10     m_BaudRate.AddString("1200");
11     m_BaudRate.AddString("2400");
12     m_BaudRate.AddString("4800"); // Don't work, used for error test.
13     m_BaudRate.AddString("9600");
14     m_BaudRate.AddString("19200");
15    
16     unsigned long Baud;
17     CString GetBaud;
18     reg.Create(HKEY_LOCAL_MACHINE, "SOFTWARE\\Projekt\\Server");
19     reg.QueryDWORDValue("BaudRate", Baud);
20    
21     switch (Baud)
22     {
23     case 1200:
24     m_BaudRate.SetCurSel(0);
25     break;
26     case 2400:
27     m_BaudRate.SetCurSel(1);
28     break;
29     case 4800:
30     m_BaudRate.SetCurSel(2);
31     break;
32     case 9600:
33     m_BaudRate.SetCurSel(3);
34     break;
35     case 19200:
36     m_BaudRate.SetCurSel(4);
37     break;
38     default:
39     m_BaudRate.SetCurSel(3);
40     break;
41     }
42    
43     m_BaudRate.GetWindowText(GetBaud);
44     reg.SetDWORDValue("BaudRate", atoi(GetBaud) );
45    
46     // Checks how many COM ports there are.
47     std::vector<CString> Serial = GetAvailableComPorts();
48     for (i=0; i<Serial.size(); i++)
49     m_Serial.AddString(Serial[i]);
50    
51     // Load saved settings from regedit.
52     unsigned long Port;
53     unsigned long BaudRate;
54    
55     // Used to format the loaded values.
56     CString TPort;
57     CString TBaudRate;
58    
59     reg.Create(HKEY_LOCAL_MACHINE, "SOFTWARE\\Projekt\\Server");
60     reg.QueryDWORDValue("Port", Port);
61     reg.QueryDWORDValue("BaudRate", BaudRate);
62    
63     char LoadCom[20];
64     unsigned long size = 20;
65     reg.QueryStringValue("Serial", LoadCom, &size);
66    
67     TPort.Format("%d", Port);
68     TBaudRate.Format("%d", BaudRate);
69    
70     m_Port.SetWindowText(TPort);
71     m_BaudRate.SetWindowText(TBaudRate);
72     m_Serial.SetWindowText(LoadCom);
73    
74     if( Serial.size() == 0 ){
75     MessageBox( "No (free) serial port's found" );
76     return false;
77     }
78     // Checks for valid COM port in regedit.
79     for (i=0; i< Serial.size() ; i++)
80     {
81     if (LoadCom == Serial[i])
82     {
83     m_Serial.SetCurSel(i);
84     break;
85     }
86     }
87     if (i == Serial.size() )
88     {
89     m_Serial.SetCurSel(0);
90     reg.SetStringValue("Serial", Serial[0]);
91     }
92     reg.Close();
93     return true;
94     }

  ViewVC Help
Powered by ViewVC 1.1.20