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.
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.
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....
Select the Level.
Select the Parent.
Select the Display.
Points of Interest
For output, the Message in the Output-Window is used PropertyChangedEventArgs:
#region PropertyChanged
public event PropertyChangedEventHandler PropertyChanged;
private void NotyPropertyChanged(string info)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(info));
}
}
#endregion
#region Info
OutputWindowPane owP = null;
private string ErrorText = "{0} **** {1}";
private ResourceManager rm = new ResourceManager
("InsertFeature.InsertFeature", Assembly.GetExecutingAssembly());
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