ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/AnywhereTS-MSSQL/trunk/TSAdminTool/ATSAmdin.Installer.cs
Revision: 149
Committed: Sun Jul 15 11:21:36 2012 UTC (11 years, 4 months ago) by william
File size: 3314 byte(s)
Log Message:

File Contents

# User Rev Content
1 william 145 using System;
2     using System.Collections;
3     using System.Collections.Generic;
4     using System.ComponentModel;
5     using System.Configuration.Install;
6     using System.Linq;
7 william 149 using System.Reflection;
8 william 145
9    
10     namespace AnywhereTS
11     {
12     [RunInstaller(true)]
13     public partial class ATSAmdin : System.Configuration.Install.Installer
14     {
15     public ATSAmdin()
16     {
17     InitializeComponent();
18     }
19 william 149
20     public override void Install(IDictionary stateSaver)
21     {
22     base.Install(stateSaver);
23     string path = this.Context.Parameters["targetdir"];
24     Logging.SetLogPath(path);
25     //// load files into app domain
26     //AssemblyName asm_log4net = Assembly.LoadFile(string.Format(@"{0}\log4net.dll", path)).GetName();
27     //AssemblyName asm_logging = Assembly.LoadFile(string.Format(@"{0}\AnywhereTS.Logging.dll", path)).GetName();
28     //AppDomain.CurrentDomain.Load(asm_log4net);
29     //AppDomain.CurrentDomain.Load(asm_logging);
30    
31     using (log4net.NDC.Push("Logged from ATSAdmin.Installer"))
32     {
33     // setup database
34     string DBServer = this.Context.Parameters["DBSERVER"];
35     string DBInstance = this.Context.Parameters["DBINSTANCE"];
36     // Log the entered data
37     Logging.ATSAdminLog.DebugFormat("Server={0} Instance={1}", DBServer, DBInstance);
38     CreateRegistryConfigKeys();
39     ATSGlobals.SetATSRegValue(ProSupport.strRegDatabaseServer, DBServer);
40     ATSGlobals.SetATSRegValue(ProSupport.strRegDatabaseInstance, DBInstance);
41     // install the database
42     try
43     {
44     AnywhereTS.DatabaseSupport dbsup = new DatabaseSupport();
45     dbsup.SetupDatabase();
46     }
47     catch (Exception ex)
48     {
49     // database install failed
50     throw ex;
51     }
52     }
53     }
54    
55     private void CreateRegistryConfigKeys()
56     {
57     Microsoft.Win32.RegistryKey key =null;
58     if (IntPtr.Size == 8)
59     { // 64 bit OS
60     //string t = @"SOFTWARE\Wow6432Node\" + ATSGlobals.ApplicationName + @"\ts-config";
61     key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Wow6432Node\", true);
62     key.CreateSubKey("TFTPD32").CreateSubKey("DHCP");
63     key = key.CreateSubKey(ATSGlobals.ApplicationName).CreateSubKey("ts-config");
64     }
65     else
66     { // 32 bit OS
67     //strATSregRoot = @"SOFTWARE\" + ATSGlobals.ApplicationName + @"\ts-config";
68     key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("Software",true);
69     key.CreateSubKey("TFTPD32").CreateSubKey("DHCP");
70     key = key.CreateSubKey(ATSGlobals.ApplicationName).CreateSubKey("ts-config");
71     }
72    
73     // AdminVersion = 2
74     key.SetValue("AdminVersion", 2);
75     // RunFirstTime = 1
76     key.SetValue("RunFirstTime", 1);
77     ATSGlobals.CreateRegistryValues();
78     }
79 william 145 }
80     }