/[AnywhereTS-MSSQL]/trunk/TSAdminTool/Globals.cs
ViewVC logotype

Diff of /trunk/TSAdminTool/Globals.cs

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 92 by william, Fri Jul 13 20:56:44 2012 UTC revision 93 by william, Sat Jul 14 02:35:50 2012 UTC
# Line 12  namespace AnywhereTS Line 12  namespace AnywhereTS
12  {  {
13      public static class ATSGlobals      public static class ATSGlobals
14      {      {
15            #region Global Definitions
16          // Version          // Version
17          public const string strDatabaseVersion = "1.0.0.4"; // The version string for the ATS database          public const string strDatabaseVersion = "1.0.0.4"; // The version string for the ATS database
18          public const string strDatabaseName = "AnywhereTS"; // THe name of the ATS database          public const string strDatabaseName = "AnywhereTS"; // THe name of the ATS database
# Line 61  namespace AnywhereTS Line 62  namespace AnywhereTS
62    
63          // Client connect time options          // Client connect time options
64          public static int[,] ScreenResolutions = new int[,] { { 640, 480 }, { 800, 600 }, { 1024, 600 }, { 1024, 768 }, { 1152, 864 }, { 1280, 768 }, { 1280, 800 }, { 1280, 960 }, { 1280, 1024 }, { 1368, 768 }, { 1400, 1050 }, { 1440, 900 }, { 1440, 1050 }, { 1600, 1000 }, { 1600, 1024 }, { 1600, 1200 }, { 1680, 1050 }, { 1792, 1344 }, { 1856, 1392 }, { 1920, 1080 }, { 1920, 1200 }, { 1920, 1440 } };          public static int[,] ScreenResolutions = new int[,] { { 640, 480 }, { 800, 600 }, { 1024, 600 }, { 1024, 768 }, { 1152, 864 }, { 1280, 768 }, { 1280, 800 }, { 1280, 960 }, { 1280, 1024 }, { 1368, 768 }, { 1400, 1050 }, { 1440, 900 }, { 1440, 1050 }, { 1600, 1000 }, { 1600, 1024 }, { 1600, 1200 }, { 1680, 1050 }, { 1792, 1344 }, { 1856, 1392 }, { 1920, 1080 }, { 1920, 1200 }, { 1920, 1440 } };
65    #endregion
66            #region static ATSGlobals()
67          // Constructor          // Constructor
68          static ATSGlobals()          static ATSGlobals()
69          {          {
# Line 127  namespace AnywhereTS Line 129  namespace AnywhereTS
129              SelectedSoundAdaptersFile = SoundAdaptersA;              SelectedSoundAdaptersFile = SoundAdaptersA;
130    
131          }          }
132            #endregion
133    
134            #region public static string GetATSRegValueString(string regValue)
135          // Get a registry string          // Get a registry string
136          public static string GetATSRegValueString(string regValue)          public static string GetATSRegValueString(string regValue)
137          {          {
138              return GetRegValue(strATSregRoot, regValue);              return GetRegValue(strATSregRoot, regValue);
139          }          }
140            #endregion
141    
142            #region public static int GetATSRegValueInt(string regValue)
143          // Get a registry integer from the application key          // Get a registry integer from the application key
144          public static int GetATSRegValueInt(string regValue)          public static int GetATSRegValueInt(string regValue)
145          {          {
146              return GetRegValueInt(strATSregRoot, regValue);              return GetRegValueInt(strATSregRoot, regValue);
147          }          }
148            #endregion
149    
150            #region public static void SetATSRegValue(string regValue, int value)
151          // Set a registry integer in the the application key          // Set a registry integer in the the application key
152          public static void SetATSRegValue(string regValue, int value)          public static void SetATSRegValue(string regValue, int value)
153          {          {
154              SetRegValue(strATSregRoot, regValue, value);              SetRegValue(strATSregRoot, regValue, value);
155          }          }
156            #endregion
157    
158            #region public static void SetATSRegValue(string regValue, string value)
159          // Set a registry string in the the application key          // Set a registry string in the the application key
160          public static void SetATSRegValue(string regValue, string value)          public static void SetATSRegValue(string regValue, string value)
161          {          {
162              SetRegValue(strATSregRoot, regValue, value);              SetRegValue(strATSregRoot, regValue, value);
163          }          }
164            #endregion
165    
166            #region public static string GetRegValue(string regKey, string regValue)
167          // Get a registry string          // Get a registry string
168          public static string GetRegValue(string regKey, string regValue)          public static string GetRegValue(string regKey, string regValue)
169          {          {
# Line 224  namespace AnywhereTS Line 235  namespace AnywhereTS
235                  else                  else
236                  {                  {
237                      MessageBox.Show("Error when reading from registry (55222). Value missing. Key: " + regKey + " Value: " + regValue);                      MessageBox.Show("Error when reading from registry (55222). Value missing. Key: " + regKey + " Value: " + regValue);
238                      using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))                      using (log4net.NDC.Push(string.Format("key={0}", regKey)))
239                      {                      {
240                          using (log4net.NDC.Push("Value is missing"))                          using (log4net.NDC.Push("Value is missing"))
241                          {                          {
# Line 249  namespace AnywhereTS Line 260  namespace AnywhereTS
260              }              }
261              return ""; // No value could be retrieved from registry              return ""; // No value could be retrieved from registry
262          }          }
263            #endregion
264    
265            #region public static int GetRegValueInt(string regKey, string regValue)
266          // Get a registry integer          // Get a registry integer
267          public static int GetRegValueInt(string regKey, string regValue)          public static int GetRegValueInt(string regKey, string regValue)
268          {          {
# Line 325  namespace AnywhereTS Line 338  namespace AnywhereTS
338                  {                  {
339                      MessageBox.Show("Error when reading from registry (55222). Value missing. Key: " + regKey + " Value: " + regValue);                      MessageBox.Show("Error when reading from registry (55222). Value missing. Key: " + regKey + " Value: " + regValue);
340                                    
341                          using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))                          using (log4net.NDC.Push(string.Format("key={0}", regKey)))
342                          {                          {
343                              using (log4net.NDC.Push("Value is missing"))                              using (log4net.NDC.Push("Value is missing"))
344                              {                              {
# Line 353  namespace AnywhereTS Line 366  namespace AnywhereTS
366              }              }
367              return 0; // No value could be retrieved from registry              return 0; // No value could be retrieved from registry
368          }          }
369            #endregion
370    
371            #region public static void SetRegValue(string regKey, string regValue, int value)
372          // Set a registry integer          // Set a registry integer
373          public static void SetRegValue(string regKey, string regValue, int value)          public static void SetRegValue(string regKey, string regValue, int value)
374          {          {
# Line 440  namespace AnywhereTS Line 455  namespace AnywhereTS
455                  Application.Exit();                  Application.Exit();
456              }              }
457          }          }
458            #endregion
459    
460            #region public static void SetRegValue(string regKey, string regValue, string value)
461          // Set a registry string          // Set a registry string
462          public static void SetRegValue(string regKey, string regValue, string value)          public static void SetRegValue(string regKey, string regValue, string value)
463          {          {
# Line 526  namespace AnywhereTS Line 543  namespace AnywhereTS
543                  Application.Exit();                  Application.Exit();
544              }              }
545          }          }
546            #endregion
547    
548            #region public static bool RegValueExists(string regKey, string regValue)
549          // Check if a registry int value exists          // Check if a registry int value exists
550          public static bool RegValueExists(string regKey, string regValue)          public static bool RegValueExists(string regKey, string regValue)
551          {          {
# Line 609  namespace AnywhereTS Line 628  namespace AnywhereTS
628              }              }
629              return false; // No value could be retrieved from registry              return false; // No value could be retrieved from registry
630          }          }
631            #endregion
632    
633            #region public static string IsValidMAC(string macAddress)
634          // Validate MAC a MAC address.          // Validate MAC a MAC address.
635          public static string IsValidMAC(string macAddress)          public static string IsValidMAC(string macAddress)
636          {          {
# Line 635  namespace AnywhereTS Line 656  namespace AnywhereTS
656                  return result;                  return result;
657              }              }
658          }          }
659            #endregion
660    
661            #region public static string GetMacFromATSname(string name)
662          // Try to extract a mac address from an ATS client name in the format 'ATSxxxxxxxxxxxx', where xxxxxxxxxx is a mac address.          // Try to extract a mac address from an ATS client name in the format 'ATSxxxxxxxxxxxx', where xxxxxxxxxx is a mac address.
663          public static string GetMacFromATSname(string name)          public static string GetMacFromATSname(string name)
664          {          {
# Line 656  namespace AnywhereTS Line 679  namespace AnywhereTS
679              // We have a MAC address              // We have a MAC address
680              return strMac;              return strMac;
681          }          }
682            #endregion
683          
684            #region public static void CreateRegistryValues()
685          // Create all needed registry values          // Create all needed registry values
686          public static void CreateRegistryValues()          public static void CreateRegistryValues()
687          {          {
# Line 707  namespace AnywhereTS Line 732  namespace AnywhereTS
732                  CreateRegistryValue(strTFTPD32RegRoot + @"\DHCP", "IP_Pool", 335601418);                  CreateRegistryValue(strTFTPD32RegRoot + @"\DHCP", "IP_Pool", 335601418);
733                  CreateRegistryValue(strTFTPD32RegRoot + @"\DHCP", "Mask", 65535);                  CreateRegistryValue(strTFTPD32RegRoot + @"\DHCP", "Mask", 65535);
734                  CreateRegistryValue(strTFTPD32RegRoot + @"\DHCP", "PoolSize", 200);                  CreateRegistryValue(strTFTPD32RegRoot + @"\DHCP", "PoolSize", 200);
735              }                          }
736          }          }
737            #endregion
738    
739            #region public static void CreateRegistryValue(string regKey, string regValue, int value)
740          // If a registry key does not exist, create it with the given default value          // If a registry key does not exist, create it with the given default value
741          public static void CreateRegistryValue(string regKey, string regValue, int value)          public static void CreateRegistryValue(string regKey, string regValue, int value)        
742          {          {
743              Microsoft.Win32.RegistryKey objRegkey;              using (log4net.NDC.Push(string.Format("key={0} name={1} data={2}",regKey, regValue, value)))
               
             try  
744              {              {
745                  objRegkey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(regKey);                  Logging.ATSAdminLog.InfoFormat(@"Creating value in Registry: {0}\{1}={2}", regKey, regValue, value);
746              }                  Microsoft.Win32.RegistryKey objRegkey;
747              catch (ArgumentNullException e)  
748              {                  try
                 MessageBox.Show("Error when reading from registry. Installation info missing, please run the " + ATSGlobals.ApplicationName + " installation program. (92411)");  
                 using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))  
749                  {                  {
750                      using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))                      objRegkey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(regKey);
751                    }
752                    catch (ArgumentNullException e)
753                    {
754                        MessageBox.Show("Error when reading from registry. Installation info missing, please run the " + ATSGlobals.ApplicationName + " installation program. (92411)");
755                        using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))
756                      {                      {
757                          using (log4net.NDC.Push("Installation info missing"))                          using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))
758                          {                          {
759                              Logging.ATSAdminLog.Error("Error when reading from registry.");                              using (log4net.NDC.Push("Installation info missing"))
760                                {
761                                    Logging.ATSAdminLog.Error("Failed to create value in registry");
762                                }
763                          }                          }
764                      }                      }
765                        Application.Exit();
766                        return;
767                  }                  }
768                  Application.Exit();                  catch (SecurityException e)
                 return;  
             }  
             catch (SecurityException e)  
             {  
                 MessageBox.Show("Error when reading from registry. You do not have the necessary permission (92412). Key: "+ regKey + " Value: " + regValue + " Error details:" + e.Message);  
                 using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))  
769                  {                  {
770                      using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))                      MessageBox.Show("Error when reading from registry. You do not have the necessary permission (92412). Key: " + regKey + " Value: " + regValue + " Error details:" + e.Message);
771                        using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))
772                      {                      {
773                          using (log4net.NDC.Push("Invalid user rights"))                          using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))
774                          {                          {
775                              Logging.ATSAdminLog.Error("Error when reading from registry.");                              using (log4net.NDC.Push("Invalid user rights"))
776                                {
777                                    Logging.ATSAdminLog.Error("Failed to create value in registry");
778                                }
779                          }                          }
780                      }                      }
781                        Application.Exit();
782                        return;
783                  }                  }
784                  Application.Exit();                  catch (Exception e)
                 return;  
             }  
             catch (Exception e)  
             {  
                 MessageBox.Show("Error when reading from registry (92413). Key: " + regKey + " Value: " + regValue + " Error details:" + e.Message);  
                 using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))  
785                  {                  {
786                      using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))                      MessageBox.Show("Error when reading from registry (92413). Key: " + regKey + " Value: " + regValue + " Error details:" + e.Message);
787                        using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))
788                      {                      {
789                              Logging.ATSAdminLog.Error("Error when reading from registry.");                          using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))
790                                                    {
791                                Logging.ATSAdminLog.Error("Failed to create value in registry");
792    
793                            }
794                      }                      }
795                        Application.Exit();
796                        return;
797                  }                  }
798                  Application.Exit();  
799                  return;                  if (objRegkey != null)
800              }                  {
801                                    if (objRegkey.GetValue(regValue) == null)
802              if (objRegkey != null)                      {   // No reg value, create one
803              {                          SetRegValue(regKey, regValue, value);
804                  if (objRegkey.GetValue(regValue) == null)                      }
                 {   // No reg value, create one  
                     SetRegValue(regKey, regValue, value);  
805                  }                  }
806              }                  else
807              else                  {
808              {                      MessageBox.Show("Error when reading from registry (95221). Key missing. Key: " + regKey + " Value: " + strRegTFTP_root);
809                  MessageBox.Show("Error when reading from registry (95221). Key missing. Key: " + regKey + " Value: " + strRegTFTP_root);  
             
810                      using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))                      using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))
811                      {                      {
812                              Logging.ATSAdminLog.Error("Error when reading from registry.");                                                  Logging.ATSAdminLog.Error("Failed to create value in registry");
813                      }                      }
814                    
815                  Application.Exit();                      Application.Exit();
816                    }
817                    Logging.ATSAdminLog.InfoFormat(@"Created value in Registry: {0}\{1}={2}", regKey, regValue, value);
818              }              }
819          }          }
820    #endregion
821    
822            #region public static void CreateRegistryValue(string regKey, string regValue, string value)
   
823          // If a registry key does not exist, create it with the given default value          // If a registry key does not exist, create it with the given default value
824          public static void CreateRegistryValue(string regKey, string regValue, string value)          public static void CreateRegistryValue(string regKey, string regValue, string value)
825          {          {
826              Microsoft.Win32.RegistryKey objRegkey;              using (log4net.NDC.Push(string.Format("key={0} name={1} data={2}", regKey, regValue, value)))
   
             try  
827              {              {
828                  objRegkey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(regKey);                  Logging.ATSAdminLog.InfoFormat(@"Creating value in Registry: {0}\{1}={2}", regKey, regValue, value);
829              }                  Microsoft.Win32.RegistryKey objRegkey;
830              catch (ArgumentNullException e)  
831              {                  try
                 MessageBox.Show("Error when reading from registry. Installation info missing, please run the " + ATSGlobals.ApplicationName + " installation program. (92411)");  
                 using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))  
832                  {                  {
833                      using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))                      objRegkey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(regKey);
834                    }
835                    catch (ArgumentNullException e)
836                    {
837                        MessageBox.Show("Error when reading from registry. Installation info missing, please run the " + ATSGlobals.ApplicationName + " installation program. (92411)");
838                        using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))
839                      {                      {
840                          using (log4net.NDC.Push("Installation info missing"))                          using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))
841                          {                          {
842                              Logging.ATSAdminLog.Error("Error when reading from registry.");                              using (log4net.NDC.Push("Installation info missing"))
843                                {
844                                    Logging.ATSAdminLog.Error("Failed to create value in registry");
845                                }
846                          }                          }
847                      }                      }
848                        Application.Exit();
849                        return;
850                  }                  }
851                  Application.Exit();                  catch (SecurityException e)
                 return;  
             }  
             catch (SecurityException e)  
             {  
                 MessageBox.Show("Error when reading from registry. You do not have the necessary permission (92412). Key: " + regKey + " Value: " + regValue + " Error details:" + e.Message);  
                 using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))  
852                  {                  {
853                      using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))                      MessageBox.Show("Error when reading from registry. You do not have the necessary permission (92412). Key: " + regKey + " Value: " + regValue + " Error details:" + e.Message);
854                        using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))
855                      {                      {
856                          using (log4net.NDC.Push("Invalid users rights"))                          using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))
857                          {                          {
858                              Logging.ATSAdminLog.Error("Error when reading from registry.");                              using (log4net.NDC.Push("Invalid users rights"))
859                                {
860                                    Logging.ATSAdminLog.Error("Failed to create value in registry");
861                                }
862                          }                          }
863                      }                      }
864                        Application.Exit();
865                        return;
866                  }                  }
867                  Application.Exit();                  catch (Exception e)
                 return;  
             }  
             catch (Exception e)  
             {  
                 MessageBox.Show("Error when reading from registry (92413). Key: " + regKey + " Value: " + regValue + " Error details:" + e.Message);  
                 using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))  
868                  {                  {
869                      using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))                      MessageBox.Show("Error when reading from registry (92413). Key: " + regKey + " Value: " + regValue + " Error details:" + e.Message);
870                        using (log4net.NDC.Push(string.Format("SqlException: MESSAGE={0}{1}Diagnostics:{1}{2}", e.Message, System.Environment.NewLine, e.ToString())))
871                      {                      {
872                              Logging.ATSAdminLog.Error("Error when reading from registry.");                                                  using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))
873                            {
874                                Logging.ATSAdminLog.Error("Failed to create value in registry");
875                            }
876                      }                      }
877                        Application.Exit();
878                        return;
879                  }                  }
                 Application.Exit();  
                 return;  
             }  
880    
881              if (objRegkey != null)                  if (objRegkey != null)
882              {                  {
883                  if (objRegkey.GetValue(regValue) == null)                      if (objRegkey.GetValue(regValue) == null)
884                  {   // No reg value, create one                      {   // No reg value, create one
885                      SetRegValue(regKey, regValue, value);                          SetRegValue(regKey, regValue, value);
886                        }
887                  }                  }
888              }                  else
889              else                  {
890              {                      MessageBox.Show("Error when reading from registry (95221). Key missing. Key: " + regKey + " Value: " + strRegTFTP_root);
891                  MessageBox.Show("Error when reading from registry (95221). Key missing. Key: " + regKey + " Value: " + strRegTFTP_root);  
               
892                      using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))                      using (log4net.NDC.Push(string.Format("key={0} value={1}", regKey, regValue)))
893                      {                      {
894                              Logging.ATSAdminLog.Error("Error when reading from registry.");                                                Logging.ATSAdminLog.Error("Failed to create value in registry");
895                      }                      }
896                    
897                  Application.Exit();                      Application.Exit();
898                    }
899                    Logging.ATSAdminLog.InfoFormat(@"Created value in Registry: {0}\{1}={2}", regKey, regValue, value);
900              }              }
901          }          }
902            #endregion
903    
904            #region public static bool ExtractIntegers(string integers, char separator, out int[] parsed_integers)
905          // Extract two integers from a string, separated by a character          // Extract two integers from a string, separated by a character
906          // Result: True = extraction ok, false = invalid string.          // Result: True = extraction ok, false = invalid string.
907          // twointegers: String with two integers, separated by a character          // twointegers: String with two integers, separated by a character
908          // separator: the character separating the strings          // separator: the character separating the strings
909          // value1: (out) The first integer in the string          // value1: (out) The first integer in the string
910          // value2: (out) The second integer in the string          // value2: (out) The second integer in the string
911          public static bool ExtractIntegers(string twointegers, char separator, out int value1, out int value2)          public static bool ExtractIntegers(string integers, char separator, out int[] parsed_integers)
912          {          {
913              string[] parts;              string[] parts;
914              value1 = 0; // Default              parsed_integers = new int[0];
915              value2 = 0; // Default              parts = integers.Split(separator);
916              parts = twointegers.Split(separator);  
917              if (parts.Length != 2)              List<int> t_ints = new List<int>();
918    
919                foreach (string t in parts)
920              {              {
921                  return false;                  t_ints.Add(Convert.ToInt32(t));
922              }              }
923              // Convert and return              parsed_integers = t_ints.ToArray();    
             value1 = Convert.ToInt32(parts[0]); // Default  
             value2 = Convert.ToInt32(parts[1]); // Default  
924              return true;              return true;
925          }          }
926            #endregion
927      } // Class ATSGlobals      } // Class ATSGlobals
928  } // Namespace Anywhere TS  } // Namespace Anywhere TS

Legend:
Removed from v.92  
changed lines
  Added in v.93

  ViewVC Help
Powered by ViewVC 1.1.22