Click here to Skip to main content
15,867,568 members
Articles / Programming Languages / C#

Complete VS2008/VS2010-Setup-Project with Add-In for Feature/SelectionTree

Rate me:
Please Sign up or sign in to vote.
4.77/5 (21 votes)
28 Mar 2011CPOL2 min read 100.6K   1.7K   94   43
The Add-In complements VS 2008 around a new dialog Selection Feature to manage features.
Image 1

Introduction

The Add-In complements the VS 2008 around a new dialog Selection Feature for the management of Feature. The add-in checks the installer project whether a Selection Feature dialog exists. If the dialog exists, it changes the MSI-file as well as it is put in the Dialog-Property. The result becomes the Output-window. The new dialog SelectionFeature(VsdSelectionTreeDlg.wid) uses the functionality of the Installer-Control SelectionTree. The dialog becomes sketched for neutral, US-English and German, one more copy must be adapted with Orca for other languages. In addition, the language must be adapted in the table ModuleSignature in the field Language (e.g., 1031 for German and in 1033 for English). Dialogs are in the directory C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\Deployment\VsdDialogs\0, ..1031, ..1033....

Background

The functionality to select Components in the set-up project is offered only by professional Installer editors, not by VS 2008.

Using the Dialog

Install the SelectionTree with the MSI-file. It installs three files VsdSelectionTreDlg_0.wid, VsdSelectionTreDlg_1031.wid, and VsdSelectionTreDlg_1033.wid, as VsdSelectionTreDlg.wid, in the above mentioned directories. It also installs the AddIn.

In the set-up project, select the new dialog Selection Feature and then determine the parameters functionality.

The SelectionTree

Add single files to the project or summarise before several files into Mergemodule and insert this. All together, 9 features can be inserted. Then insert the name of the file in the SelectionTree in field Files if it is a single file.

Mergemodule

Or insert the Guid-part of the ModuleSignature from the Mergemodule if you input Mergemodule. Give the number the used feature and suitable parameter. Fill the Title, Description and Directory. See also....

Level

Select the Level.

Parent

Select the Parent.

Level

Select the Display.

Points of Interest

For output, the Message in the Output-Window is used PropertyChangedEventArgs:

C#
#region PropertyChanged
    // INotifyPropertyChanged - Event treatment
    public event PropertyChangedEventHandler PropertyChanged;
    
    private void NotyPropertyChanged(string info)
    {
        if (PropertyChanged != null)
        {
            PropertyChanged(this, new PropertyChangedEventArgs(info));
        }
    }
#endregion

#region Info

    // Help variables for announcements
    OutputWindowPane owP = null;
    private string ErrorText = "{0} **** {1}";
    private ResourceManager rm = new ResourceManager
	("InsertFeature.InsertFeature", Assembly.GetExecutingAssembly());
    
    /// 
    /// Gives by every change with Debug. Print the contents from
    /// 
    private string _LastErrorText = null;
    public string LastErrorText
    {
       get { return _LastErrorText;}
       set 
       { 
           _LastErrorText = value;
           owP.OutputString(_LastErrorText + "\n");
           owP.ForceItemsToTaskList();
        }
     }
#endregion

LastErrorText = string.Format
		(ErrorText, "ERROR", rm.GetString("LastErrorText001", culture));

What is New?

Now the surface is English and German. It can be translated by own String resources to your culture. Please send me your translations from InsertFeature.xx-XX.resx and VsdSelectionTreeDlg.wid.

History

  • 08/20/2009 - First initial release
  • 08/25/2009 - New dialog for neutral (English) and in US-English added
  • 08/26/2009 - Error by Install SelectionTree removed
  • 03/05/2010 - Surface and messages English and to furnish with the option other languages. Please insert new InsertFeature.es-ES.resx or InsertFeature.fr-FR.resx, etc.
  • 10/28/2010 – New setup for VS2008 and VS2010
  • 11/12/2010 - Added source for VS2010
  • 03/28/2011 - Updated download setup VS2010

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer (Senior)
Germany Germany
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
QuestionSource will not compile - files missing Pin
Randy Kreisel30-Aug-12 12:42
Randy Kreisel30-Aug-12 12:42 
QuestionFeature list is empty and some other problems Pin
Afshin Jafari29-Apr-12 13:04
Afshin Jafari29-Apr-12 13:04 
AnswerRe: Feature list is empty and some other problems Pin
Klaus Ruttkowski29-Apr-12 22:07
Klaus Ruttkowski29-Apr-12 22:07 
GeneralRe: Feature list is empty and some other problems Pin
Afshin Jafari30-Apr-12 11:25
Afshin Jafari30-Apr-12 11:25 
GeneralRe: Feature list is empty and some other problems Pin
Afshin Jafari30-Apr-12 19:56
Afshin Jafari30-Apr-12 19:56 
GeneralRe: Feature list is empty and some other problems Pin
Klaus Ruttkowski2-May-12 5:38
Klaus Ruttkowski2-May-12 5:38 
GeneralRe: Feature list is empty and some other problems Pin
Afshin Jafari3-May-12 11:20
Afshin Jafari3-May-12 11:20 
GeneralRe: Feature list is empty and some other problems Pin
Klaus Ruttkowski6-May-12 21:38
Klaus Ruttkowski6-May-12 21:38 
QuestionWebsetupProject Pin
cpquest21-Feb-12 19:53
cpquest21-Feb-12 19:53 
AnswerRe: WebsetupProject Pin
Klaus Ruttkowski21-Feb-12 21:50
Klaus Ruttkowski21-Feb-12 21:50 
GeneralIt does not work in VS2010 Pin
Win32nipuh13-May-11 1:08
professionalWin32nipuh13-May-11 1:08 
QuestionCompatibility with VS 2010 Pin
Member 423564727-Mar-11 23:59
Member 423564727-Mar-11 23:59 
AnswerRe: Compatibility with VS 2010 Pin
Klaus Ruttkowski28-Mar-11 4:00
Klaus Ruttkowski28-Mar-11 4:00 
GeneralRe: Compatibility with VS 2010 Pin
Member 423564728-Mar-11 5:11
Member 423564728-Mar-11 5:11 
GeneralAdd-in failed to load Pin
mjmeans20-Oct-10 7:26
mjmeans20-Oct-10 7:26 
GeneralRe: Add-in failed to load Pin
Klaus Ruttkowski20-Oct-10 21:40
Klaus Ruttkowski20-Oct-10 21:40 
GeneralRe: Add-in failed to load Pin
mjmeans21-Oct-10 5:55
mjmeans21-Oct-10 5:55 
GeneralRe: Add-in failed to load [modified] Pin
Klaus Ruttkowski28-Oct-10 8:34
Klaus Ruttkowski28-Oct-10 8:34 
GeneralRe: Add-in failed to load [modified] Pin
mjmeans8-Nov-10 11:57
mjmeans8-Nov-10 11:57 
GeneralRe: Add-in failed to load Pin
Klaus Ruttkowski9-Nov-10 1:43
Klaus Ruttkowski9-Nov-10 1:43 
GeneralRe: Add-in failed to load Pin
mjmeans9-Nov-10 5:15
mjmeans9-Nov-10 5:15 
I am using W7 Professional. So it is the same as you. The VS 2008 version installs InserFeature2010.dll which is not recognized by my VS 2008 Professional. Should it install InsertFeature2008.dll? Also, will you post the source project like before? Maybe I can compile and copy manually then.
GeneralRe: Add-in failed to load Pin
mjmeans9-Nov-10 5:21
mjmeans9-Nov-10 5:21 
GeneralRe: Add-in failed to load Pin
Klaus Ruttkowski13-Nov-10 23:13
Klaus Ruttkowski13-Nov-10 23:13 
GeneralVS 2010 compatibility. Pin
klim_c27-Aug-10 10:40
klim_c27-Aug-10 10:40 
AnswerRe: VS 2010 compatibility. Pin
Klaus Ruttkowski29-Aug-10 21:42
Klaus Ruttkowski29-Aug-10 21:42 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.