Changes between Version 1 and Version 2 of Documentation/DevelopmentCenter/CreateNewPluginUsingSD


Ignore:
Timestamp:
06/28/14 09:37:58 (5 years ago)
Author:
abeham
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Documentation/DevelopmentCenter/CreateNewPluginUsingSD

    v1 v2  
    1313
    1414[[Image(create_project_sd.png, align=center)]]
     15
     16Your working directory should now look something like this
     17
     18[[Image(/raw-attachment/wiki/Documentation/DevelopmentCenter/CreateNewPluginWithVS/working_dir_new.png)]]
     19
     20== Configuring the project ==
     21
     22'''Assembly information'''
     23 In the projects tree view on the left you will see a folder "Properties" below the project with a file AssemblyInfo.cs. Edit that file. In HeuristicLab we set the assembly version to the same value as the current HeuristicLab version by convention. It should only include major and minor, build and revision should always remain 0. In the official HeuristicLab repository the revision part is synchronized with the SVN revision number, it can be simply set to 0 in our case. The assembly file version can include the whole version string.
     24
     25{{{
     26#!csharp
     27using System;
     28using System.Reflection;
     29using System.Runtime.InteropServices;
     30
     31[assembly: AssemblyTitle("HeuristicLab.GreatIdea.ThePlugin")]
     32[assembly: AssemblyDescription("")]
     33[assembly: AssemblyConfiguration("")]
     34[assembly: AssemblyCompany("HEAL")]
     35[assembly: AssemblyProduct("HeuristicLab")]
     36[assembly: AssemblyCopyright("(c) 2002-2014 HEAL")]
     37[assembly: AssemblyTrademark("")]
     38[assembly: AssemblyCulture("")]
     39
     40[assembly: ComVisible(false)]
     41
     42// The assembly version has following format :
     43//
     44// Major.Minor.Build.Revision
     45//
     46// You can specify all the values or you can use the default the Revision and
     47// Build Numbers by using the '*' as shown below:
     48[assembly: AssemblyVersion("3.3.0.0")]
     49[assembly: AssemblyFileVersion("3.3.9.0")]
     50}}}
     51
     52
     53'''Project properties'''
     54 In the project's properties (right-click on the project) we configure: Signing, compiling, and debug. If you open the properties please also make sure the target framework is set to .NET Framework 4.0.
     55
     56'''Signing'''
     57 Activate "Sign the assembly" and create a new key or browse to use the HeuristicLab.snk inside the plugins of StableRoot. Otherwise call the new key "TheKey".
     58
     59'''Compiling'''
     60    We want to automatically put the plugin into the StableRoot\bin folder when we compile it. On the "Compiling" tab change the output path to `..\..\..\stable\bin`, click on the small dot button in front and remove the check in front of "Configuration-specific" so that this options holds regardless of which platform or configuration we build for.
     61
     62[[Image(output_path.png, align=center)]]
     63
     64'''Debug'''
     65 On the "Debug" tab choose "Start external program" and select HeuristicLab.exe inside StableRoot\bin. Again remove the "Configuration-specific" check and instead add a check to "Store in .user-file".
     66
     67
     68Save and close the project's properties. These changes ensure that the generated plugin is automatically added as a plugin to the HeuristicLab build and that we can use our solution to start a debugging session (shortcut <F5>). Now, we want to make this class library a HeuristicLab plugin.