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

Contents of /trunk/H7 Server/ServerInit.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 33 - (show annotations) (download)
Wed Jan 31 17:22:59 2007 UTC (17 years, 3 months ago) by hedin
File size: 2120 byte(s)
Made the selection of baud rate work (well, make everything work - including multiple clients)
1 #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