Changeset 2600


Ignore:
Timestamp:
01/05/10 15:31:21 (10 years ago)
Author:
gkronber
Message:

Re-added ICSharpZipLib and replaced main start up code with call to plugin infrastructure start up code. #799

Location:
trunk/sources
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.PluginInfrastructure/HeuristicLab.PluginInfrastructure.csproj

    r2599 r2600  
    170170  </ItemGroup>
    171171  <ItemGroup>
     172    <Content Include="ICSharpCode.SharpZipLib License.txt">
     173      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     174    </Content>
     175    <Content Include="ICSharpCode.SharpZipLib.dll">
     176      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
     177    </Content>
    172178    <Content Include="Resources\Details.gif" />
    173179    <Content Include="Resources\HeuristicLab.ico" />
  • trunk/sources/HeuristicLab/Files.txt

    r2598 r2600  
    11; This line is skipped. DO NOT TOUCH THIS line!
    22; List of project directories and file names separated by ':' that are part of the installation
     3
     4HeuristicLab.PluginInfrastructure:ICSharpCode.SharpZipLib License.txt
     5HeuristicLab.PluginInfrastructure:ICSharpCode.SharpZipLib.dll
    36
    47ALGLIB:ALGLIB.dll
  • trunk/sources/HeuristicLab/Program.cs

    r2593 r2600  
    2121
    2222using System;
    23 using System.Collections.Generic;
    24 using System.Windows.Forms;
    25 using System.Xml;
    26 using System.Threading;
    27 using System.Text;
    28 using System.Linq;
    29 using HeuristicLab.PluginInfrastructure;
    30 using HeuristicLab.PluginInfrastructure.Advanced;
    31 using System.Runtime.InteropServices;
    32 using HeuristicLab.PluginInfrastructure.Starter;
    33 using System.IO;
    3423
    3524namespace HeuristicLab {
     
    3726    [STAThread]
    3827    static void Main(string[] args) {
    39       if (args.Length == 0) {  // normal mode
    40         try {
    41           Application.EnableVisualStyles();
    42           Application.SetCompatibleTextRenderingDefault(false);
    43           Application.Run(new StarterForm());
    44         }
    45         catch (Exception ex) {
    46           ShowErrorMessageBox(ex);
    47         }
    48 
    49       } else {
    50         var cmd = args[0].ToUpperInvariant();
    51         string pluginDir = Path.GetFullPath(Application.StartupPath);
    52         switch (cmd) {
    53           case "START": {
    54               if (args.Length != 2) {
    55                 PrintUsage();
    56               } else {
    57                 Application.EnableVisualStyles();
    58                 Application.SetCompatibleTextRenderingDefault(false);
    59                 Application.Run(new StarterForm(args[1]));
    60               }
    61               break;
    62             }
    63           case "SHOW": {
    64               InstallationManagerConsole managerConsole = new InstallationManagerConsole(pluginDir);
    65               managerConsole.Show(args.Skip(1));
    66               break;
    67             }
    68           case "INSTALL": {
    69               InstallationManagerConsole managerConsole = new InstallationManagerConsole(pluginDir);
    70               managerConsole.Install(args.Skip(1));
    71               break;
    72             }
    73           case "UPDATE": {
    74               InstallationManagerConsole managerConsole = new InstallationManagerConsole(pluginDir);
    75               managerConsole.Update(args.Skip(1));
    76               break;
    77             }
    78           case "REMOVE": {
    79               InstallationManagerConsole managerConsole = new InstallationManagerConsole(pluginDir);
    80               managerConsole.Remove(args.Skip(1));
    81               break;
    82             }
    83           default: PrintUsage(); break;
    84         }
    85       }
    86     }
    87 
    88     private static void PrintUsage() {
    89       Console.WriteLine("Usage: HeuristicLab.exe <command> <args>");
    90       Console.WriteLine("Commands:");
    91       Console.WriteLine("\tstart <application name>");
    92       Console.WriteLine("\tshow <plugin name(s)>");
    93       Console.WriteLine("\tupdate <plugin name(s)>");
    94       Console.WriteLine("\tremove <plugin name(s)>");
    95       Console.WriteLine("\tinstall <plugin name(s)>");
    96     }
    97 
    98     private static void ShowErrorMessageBox(Exception ex) {
    99       MessageBox.Show(null,
    100         BuildErrorMessage(ex),
    101         "Error - " + ex.GetType().Name,
    102         MessageBoxButtons.OK,
    103         MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, MessageBoxOptions.DefaultDesktopOnly);
    104     }
    105 
    106     private static string BuildErrorMessage(Exception ex) {
    107       StringBuilder sb = new StringBuilder();
    108       sb.Append("Sorry, but something went wrong!\n\n" + ex.Message + "\n\n" + ex.StackTrace);
    109 
    110       while (ex.InnerException != null) {
    111         ex = ex.InnerException;
    112         sb.Append("\n\n-----\n\n" + ex.Message + "\n\n" + ex.StackTrace);
    113       }
    114       return sb.ToString();
     28      HeuristicLab.PluginInfrastructure.Main.Run(args);
    11529    }
    11630  }
Note: See TracChangeset for help on using the changeset viewer.