?
Solved

ProjectInstaller: Get installedfolder and other properties at installation

Posted on 2003-11-14
18
Medium Priority
?
493 Views
Last Modified: 2007-12-19
Hi all,

I've built a Windows Service in VB.NET.
Added a projectinstaller and a setup project which creates the MSI and Setup.exe.
This all works fine.

I want to add a form that can be displayed at the end of installation (OnAfterInstall event) in which the user can do some settings.
In this screen I also want to display the folder that the service is installed to.

I can display the form, that's no problem.
But I can't seem to find the "installation properties" like the installation folder (ie: the folder in which the service is installed).

Any ideas?

D'Mzz!
RoverM

Ps: For a complete working example in VB.NET I'll up the points to 500.
0
Comment
Question by:roverm
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 9
  • 8
18 Comments
 
LVL 9

Expert Comment

by:Joeisanerd
ID: 9752756
Write the installed folder value to the registry, then read that value when you show the form. If you are using the setup project stuff the TARGETDIR is the keyword for the install directory.
0
 
LVL 12

Author Comment

by:roverm
ID: 9763221
Hi,
I am using the 'setup project stuff' but I can't seem to access that from my ProjectInstaller.
Also, I don't want to write to the registry.

Thanks tho.

D'Mzz!
RoverM
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 9763873
Installer.ProductInfo("{product code guid}","InstallLocation")
0
Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

 
LVL 12

Author Comment

by:roverm
ID: 9763970
TheLearnedOne:
My installer doesn't provide a 'ProductInfo' prop.

Just to make sure: I am using the ProjectInstaller in my Service Project.
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 9764069
Sorry, all I focused on was the MSI part.  You can get this property from there.  

You are talking about ServiceInstaller, correct?
0
 
LVL 12

Author Comment

by:roverm
ID: 9764109
What do you mean : "MSI part".
Can I access the MSI from the ProjectInstaller?

ProjectInstaller: Right click on 'Service1' (your service in the designer) and choose 'Add Installer'.
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 9764156
No.  I just saw the word MSI in your initial comment, and that is the method within the Windows Installer.  

Now that I understand better, AFAIK there isn't any way to get the Installed location from the Installer class.
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 9764231
Have you looked at the Context property?  It has parameters, and since I haven't used this, I am not quite sure what information it can give you.
0
 
LVL 12

Author Comment

by:roverm
ID: 9764242
*lol*
It must be possible....
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 9764262
I usually keep this process pretty simple, so I don't have much experience working outside the box on this one.  I am willing, though, to extend a little further outside my "comfort" zone, and help you find this information, because I agree with you that it should be possible.
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 9764394
How is your Install process started?  Are you using InstallUtil?
0
 
LVL 12

Author Comment

by:roverm
ID: 9765552
I've added a setup project to the service project.
The setup creates the MSI and a setup.exe.

The installation will be started by double clicking the msi or the setup.exe.
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 9765721
I always use InstallUtil, so I have to ask, how it the MSI file generated for you?
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 9765771
I figured a little more out here.  You created a Setup and Deployment project.  Doh!!

Is the ProjectInstaller in the Windows Service project?  In the Setup project, what is the value for the 'Application Folder' setting?
0
 
LVL 12

Author Comment

by:roverm
ID: 9765777
0
 
LVL 96

Accepted Solution

by:
Bob Learned earned 1000 total points
ID: 9766696
In the AfterInstall event there is a sender parameter, which is an IDictionary object for the saved state of the computer.  Did you check the settings from that?

Also there is an article at, which talks about adding additional functionality to the Walkthrough you addressed:

Install a Windows service the way YOU want to!
http://www.codeproject.com/useritems/WindowsServiceInstall.asp
0
 
LVL 12

Author Comment

by:roverm
ID: 9911313
Closed the Q, was open long enough.... ;-)
Actually it didn't solve my Q but I put me on 'a certain track'. Hopefully I will be able to read it.

Thanks!
D'Mzz!
RoverM
0
 
LVL 12

Author Comment

by:roverm
ID: 10079820
Found the solution.... wanna know?
0

Featured Post

Setting up LaraDock for Laravel

Learn how to set up LaraDock in a Laravel project - LaraDock gives us an easy way to run a Laravel application using Docker in a single command.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A long time ago (May 2011), I have written an article showing you how to create a DLL using Visual Studio 2005 to be hosted in SQL Server 2005. That was valid at that time and it is still valid if you are still using these versions. You can still re…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
Visualize your data even better in Access queries. Given a date and a value, this lesson shows how to compare that value with the previous value, calculate the difference, and display a circle if the value is the same, an up triangle if it increased…
In this video, Percona Director of Solution Engineering Jon Tobin discusses the function and features of Percona Server for MongoDB. How Percona can help Percona can help you determine if Percona Server for MongoDB is the right solution for …

719 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question