ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/AnywhereTS-MSSQL/trunk/TSControlPanel/CPanel.Installer.cs
(Generate patch)

Comparing trunk/TSControlPanel/CPanel.Installer.cs (file contents):
Revision 166 by william, Mon Jul 16 10:34:12 2012 UTC vs.
Revision 167 by william, Mon Jul 16 10:40:55 2012 UTC

--- trunk/TSControlPanel/CPanel.Installer.cs	2012/07/16 10:34:12	166
+++ trunk/TSControlPanel/CPanel.Installer.cs	2012/07/16 10:40:55	167
@@ -18,9 +18,23 @@ namespace AnywhereTS
         #region install
         public override void Install(IDictionary stateSaver)
         {
+            base.Install(stateSaver);
+            string path = this.Context.Parameters["targetdir"];
+            Logging.UpdateLogPath(string.Format(@"{0}\logs", path));
             using (log4net.NDC.Push("Logged from TSControlPanel.Installer"))
             {
-                CreateRegistryConfigKeys();
+                try
+                {
+                    CreateRegistryConfigKeys();
+                }
+                catch (Exception ex)
+                {
+                    using (log4net.NDC.Push(string.Format("{0}: MESSAGE={1}{2}Diagnostics:{2}{3}", ex.GetType().Name, ex.Message, System.Environment.NewLine, ex.ToString())))
+                    {
+                        Logging.TSControlPanelInstallerLog.Error("Install() failed.");
+                    }
+                    throw ex;
+                }
             }
         }
         private void CreateRegistryConfigKeys()
@@ -63,6 +77,8 @@ namespace AnywhereTS
             {
                 try
                 {
+                    string path = this.Context.Parameters["targetdir"];                    
+                    Logging.UpdateLogPath(string.Format(@"{0}\logs", path));
                     Logging.TSControlPanelInstallerLog.DebugFormat("Removing TSControlPanel Registry settings");
                     Microsoft.Win32.RegistryKey key = null;
                     if (IntPtr.Size == 8)
@@ -74,7 +90,7 @@ namespace AnywhereTS
                     else
                     {   // 32 bit OS
                         //strATSregRoot = @"SOFTWARE\" + ATSGlobals.ApplicationName + @"\ts-config";
-                        key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(string.Format("Software\{0}\{1}", ATSGlobals.ApplicationName, "ts-config"), true);
+                        key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(string.Format(@"Software\{0}\{1}", ATSGlobals.ApplicationName, "ts-config"), true);
                         key.DeleteValue("ControlPanelVersion",false);
                     }
                     Logging.TSControlPanelInstallerLog.DebugFormat("Successfully removed TSControlPanel Registry settings");