Visual Studio Development Bookmark and Share   
 index > Visual Studio Guidance Automation Toolkit > Help needed in creating an installer for the guidance package which I've created
 

Help needed in creating an installer for the guidance package which I've created

Hi all,

I'm tryingto create an installer which'll help me in installing the guidance package project which i've created. The thing is when i run the installer, the guidance package project should be activated and get registered into the client machine.

And once the installer is run, then the user should be able to find the project template generated by my guidance package. Can anyone who've worked in this area guide me and share their knowledge?

Thanks in advance,

ThunderRock

ThunderRock  Tuesday, January 16, 2007 1:23 PM
Hi TunderRock,

When you create a guidance package using GAT, you get a solution containing three projects, one of which is a VS Setup project that you can use to install your guidance package to client machines. This setup will take care of properly registering any templates you may have provided in your guidance package. Isn't this what you're looking for?

HTH,
-Victor.
vga  Tuesday, January 16, 2007 3:10 PM
Hi ThunderRock,

How are you creating your guidance package? Are you using GAT for this right? File -> New Project -> Guidance Packages -> Guidance Package Development?

If so, when you do this, you will get a solution containing three projects:

1) a .csproj containing your guidance package
2) a .csproj containing an installer class required for registering your package at development time and at installation time on client machines.
3) a .vdproj, this is a VS Setup project, which on building will take the output of the two above mentioned projects and will pack them into a .MSI. This .MSI can be run on a customer machine to get your guidance package properly installed, registered and ready to use.

Do you still have doubts? It would help if you can describe a bit more what you're doing and what specific things you're having trouble getting done.

As an alternative if you would like point 3) above to be a Setup project based on WiX technology instead of VS Setup technology you could use the Clarius Software Factory Toolkit (http://softwarefactoriestoolkit.net) which produces WiX setups for guidance packages.

thanks,
-Victor.
vga  Wednesday, January 17, 2007 5:43 AM

Just copying the files for a guidance package won't get it installed on the system. You need to execute a custom action in GAX from whithin your installed which will cause the package to be registered with GAX.

For an example of this, please use GAT to create a sample guidance package, this will create a VS Setup-based project where you can inspect Custom Actions and use that as a base for adding the custom actions to your merge module.

HTH,
-Victor.
vga  Sunday, February 10, 2008 7:50 PM
There is no custom action code to look for. If you're planning on writing your own Setup and merge modules please take a look at the MSDN documentation regarding this, specially on MSI Custom Actions. Once you learn about what these are, the only bit you need to know from the GAX-side is that you need to schedule the four custom actions you're listing above.

You were first reusing the VS Setup package without changing things as ProductCode, etc, and this is not possible as basically you're trying to install the same "product" in MSI terms.

As you can see this are MSI-related questions more than GAX-ones. You will need to get familiarized with MSI documentation before attempting to write your own setup or merge module. This is important otherwise you risk yourself will find yourself in a situation where you won't be able to service your MSI later on.

Lastly, please if you have any MSI-related question please post it to a Windows Installer forum (which is the technology underneath MSIs) and not this forum.

thanks,
-Victor.
vga  Monday, February 11, 2008 12:00 PM
Hi TunderRock,

When you create a guidance package using GAT, you get a solution containing three projects, one of which is a VS Setup project that you can use to install your guidance package to client machines. This setup will take care of properly registering any templates you may have provided in your guidance package. Isn't this what you're looking for?

HTH,
-Victor.
vga  Tuesday, January 16, 2007 3:10 PM

Hi Victor,

Thanks for the guidance. But I've some more doubts.

Can you please clarify on how to use it since I want to package my guidance package in an installer?

How do i use this VS Setup project for packaging into an installer? Because i just tried some way, but it didn't seem to work the way i had assumed.

Help please.

Thanks in advance,

ThunderRock

ThunderRock  Wednesday, January 17, 2007 5:24 AM
Hi ThunderRock,

How are you creating your guidance package? Are you using GAT for this right? File -> New Project -> Guidance Packages -> Guidance Package Development?

If so, when you do this, you will get a solution containing three projects:

1) a .csproj containing your guidance package
2) a .csproj containing an installer class required for registering your package at development time and at installation time on client machines.
3) a .vdproj, this is a VS Setup project, which on building will take the output of the two above mentioned projects and will pack them into a .MSI. This .MSI can be run on a customer machine to get your guidance package properly installed, registered and ready to use.

Do you still have doubts? It would help if you can describe a bit more what you're doing and what specific things you're having trouble getting done.

As an alternative if you would like point 3) above to be a Setup project based on WiX technology instead of VS Setup technology you could use the Clarius Software Factory Toolkit (http://softwarefactoriestoolkit.net) which produces WiX setups for guidance packages.

thanks,
-Victor.
vga  Wednesday, January 17, 2007 5:43 AM

Hi Victor,

Now all the above solutions helped me in working with the installer project. But now some problem has come up in the recipe after using the installer from the above project.

The problem is that after running the installer, the package gets registered but the recipe wizard in one of the custom pages has changed. The size's not coming out proper. But if I register the same package through the guidance package project, then the recipe works fine along with the wizard coming out properly.

I've tried working with the design page of the custom page but didn't get anywhere to solving this problem.

Kindly help.

Thanks,

ThunderRock

ThunderRock  Monday, February 05, 2007 5:11 AM
Hi ThunderRock,

The installer code that installs a guidance package is always the same, no matter if it is run from the "Register" recipe inside Visual Studio or if its installed from a MSI.

If you could repro this to a very small guidance package, let's say one containing just a recipe using a wizard with a custom page where this repro I can try passing this to our support team, see if they can repro and research the issue if necessary.

-Victor.
vga  Monday, February 05, 2007 8:23 PM
Hi,

I have a similar problem. Let me explain what exactly is required for me.

1. I have created a Guidance Package
2. I know that it creates 3 project types and one among them is a setup package. But i really do not want to use this setup package for my clients because i even require few other dlls created by me to be packaged in one single MSI.

Now all i want is

1. To know how to create a merge module for the Guidance package(I already have a merge module created for my own dlls)
2. How to include the merge module in a setup project that i will be creating to give my clients both the guidance and the dlls in one package.

I tried creating a merge module for the guidance package by including the following

1. The guidacne package PRIMARY OUTPUT and the CONTENT FILES
2. Included the guidance package installer PRIMARY OUTPUT
3. Next, i included this merge module in the installer/setup that i created

All went fine. But when i tried installing the MSI the guidacne package did not get registered in VS2005. Can you help me?
ranjith_chev  Sunday, February 10, 2008 1:30 PM

Just copying the files for a guidance package won't get it installed on the system. You need to execute a custom action in GAX from whithin your installed which will cause the package to be registered with GAX.

For an example of this, please use GAT to create a sample guidance package, this will create a VS Setup-based project where you can inspect Custom Actions and use that as a base for adding the custom actions to your merge module.

HTH,
-Victor.
vga  Sunday, February 10, 2008 7:50 PM
Hi,

I tried creating a sample guidance package using GAT and i was not able to find any custom action class that does the job of registering the guidance package with GAX. Can you please help?

-Ranjith
ranjith_chev  Monday, February 11, 2008 4:55 AM

You may not be looking in the right place. Select the generated VS Setup project in the Solution Explorer and when you do so you should get a bunch of icons at the top in the Solution Explorer, one of which should display the custom actions.
vga  Monday, February 11, 2008 5:37 AM
Hi,

I did click on the Custom actions button on the Solution Explorer. It displays a set of custom actions like
Custom Actions
Install
GuidanceAutomationInstall
Commit
GuidanceAutomationCommit
Rollback
GuidanceAutomationRollback
Uninstall
GuidanceAutomationUninstall

I do not see any custom action code that shows how the guidance pacakge gets registered with the GAX?

-Ranjith
ranjith_chev  Monday, February 11, 2008 9:08 AM
There is no custom action code to look for. If you're planning on writing your own Setup and merge modules please take a look at the MSDN documentation regarding this, specially on MSI Custom Actions. Once you learn about what these are, the only bit you need to know from the GAX-side is that you need to schedule the four custom actions you're listing above.

You were first reusing the VS Setup package without changing things as ProductCode, etc, and this is not possible as basically you're trying to install the same "product" in MSI terms.

As you can see this are MSI-related questions more than GAX-ones. You will need to get familiarized with MSI documentation before attempting to write your own setup or merge module. This is important otherwise you risk yourself will find yourself in a situation where you won't be able to service your MSI later on.

Lastly, please if you have any MSI-related question please post it to a Windows Installer forum (which is the technology underneath MSIs) and not this forum.

thanks,
-Victor.
vga  Monday, February 11, 2008 12:00 PM

Hi,

I tried copying the guidance package custom actions into my custom installer and i was able to register my package with GAX successfully.

Now, i have another problem.

1. Assume i have created a guidance package. By default, it creates three projects and one among them is the setup package.

2. I went ahead and installed it.

3. Now, if i want to install another version of the same guidance package what all am i supposed to change. FYI: I tried changing the GUID, Guidance package name in the xml file, the guidance package assembly name, the name of the setup project and even the version of the setup project.

Even after all this i was not able to install a newer version of the same package. When i tried to install it said another version already exists. Please help on this.

-Ranjith

ranjith_chev  Thursday, February 14, 2008 10:11 AM

Hi ranjith,

Note that you're dealing here with two different things you would need to change in order to make a different version of your package install:

1) changes required in the package itself: these are the ones you mention; these ones will allow GAX to **register** the new version guidance package without clashing with the existing one.

2) changes in the setup: now, when you're **installing** a guidance package from an MSI to a machine you're using a technology that doesn't have anything to do with GAX, and that is: Windows Installer. If you're installing two different products Windows Installer for example will require you to use different ProductCode GUIDs for them, otherwise, it will complain the product is already installed.

On 2) we can't help you much in this forum, as this forum is not about Windows Installer technology but GAX. All we can recommend is that if you're using the VS Setup project generated by GAT you make sure you don't reuse them, that is, use just one VS Setup per package you want to install, don't copy/paste or anything like.

HTH,

-Victor.

vga  Saturday, February 16, 2008 3:36 AM

You can use google to search for other answers

Custom Search

More Threads

• Improper loading of GAT
• SMART CLIENT SOFTWARE FACTORY Is not completely installed....Help Please!
• Package works when manually registered but not using msi
• Combining GAT and CAB
• Error while using Guidance package in Ent Lib 3.0 for Strong Naming DLLs
• Clarius SFT June 2007 CTP available: GAX & DSL integration just got better!
• Synchronizing - GAT Package Changes
• GAX 1.4 won't install
• The file cannot be opened with the selected editor
• XML Literal in .tt template