By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,855 Members | 1,988 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,855 IT Pros & Developers. It's quick & easy.

Custom Actions not working

P: n/a
Hi,

I added dotnetfx.exe to a setup project as a custom action to be installed
before the main app is installed.

I set the Arguments property to /q:a /c:"install /l /q" for a silent
install but it complains that its already installed, then I set the
Condition to check as Installed == false and that doesnt work.

How can one do this on a setup project?

Thanks.
Nov 15 '05 #1
Share this Question
Share on Google+
6 Replies


P: n/a
"as Installed == false " is definitely the wrong syntax for a custom action
condition. Not Installed would be the right syntax, but I don't think it's the
right choice - it means run this custom action if my product is not installed,
but it should be running the custom action if the runtime isn't installed.

I don't think you can install the runtime out of a custom action. .NET installs
require Windows Installer (MSI) 2.0, and MSI 2.0 is installed by the dotnet
redist, so if MSI 1.1 is on the system your setup won't start. The redist is an
MSI-based setup, and two MSI setups can't run at the same time, so that's
another reason why you can't embed the redist in your MSI setup. Setups that
appear to this kind of thing usually have a wrapper program that launches the
required setups after checking what's on the system.
--
Phil Wilson [MVP Windows Installer]
----
<di********@discussion.microsoft.com> wrote in message
news:%2****************@TK2MSFTNGP10.phx.gbl...
Hi,

I added dotnetfx.exe to a setup project as a custom action to be installed
before the main app is installed.

I set the Arguments property to /q:a /c:"install /l /q" for a silent
install but it complains that its already installed, then I set the
Condition to check as Installed == false and that doesnt work.

How can one do this on a setup project?

Thanks.

Nov 15 '05 #2

P: n/a
There is a new download available on MSDN that solves the problem of trying to install the .NET FX before installing your application. I've included the blurb describing the download and
the url below.

Visual Studio .NET Bootstrapper:
Setup projects in Visual Studio .NET 2003 can be used to install the .NET Framework with your application, but only if you have installed the optional Visual Studio .NET Framework
Bootstrapper Plug-in on your development computer. The Visual Studio .NET Framework Bootstrapper Plug-in modifies the behavior of the Setup project's Bootstrapper property to include
the .NET Framework bootstrapper. The .NET Framework redistributable is then packaged with your application; when the user runs the bootstrapper setup.exe, it checks for the correct
version of the .NET Framework at install time and if necessary, installs it before installing your application.

http://msdn.microsoft.com/vstudio/do...r/default.aspx

Hope this helps,
Elizabeth

--------------------
From: <di********@discussion.microsoft.com>
Subject: Custom Actions not working
Date: Fri, 6 Feb 2004 14:26:42 +0100
Lines: 14
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
Message-ID: <#x**************@TK2MSFTNGP10.phx.gbl>
Newsgroups: microsoft.public.dotnet.framework,microsoft.public .dotnet.framework.setup,microsoft.public.dotnet.la nguages.csharp
NNTP-Posting-Host: h108n7c1o1031.bredband.skanova.com 62.20.240.108
Path: cpmsftngxa07.phx.gbl!cpmsftngxa06.phx.gbl!TK2MSFTN GP08.phx.gbl!TK2MSFTNGP10.phx.gbl
Xref: cpmsftngxa07.phx.gbl microsoft.public.dotnet.framework.setup:7060 microsoft.public.dotnet.languages.csharp:218731 microsoft.public.dotnet.framework:64541
X-Tomcat-NG: microsoft.public.dotnet.languages.csharp

Hi,

I added dotnetfx.exe to a setup project as a custom action to be installed
before the main app is installed.

I set the Arguments property to /q:a /c:"install /l /q" for a silent
install but it complains that its already installed, then I set the
Condition to check as Installed == false and that doesnt work.

How can one do this on a setup project?

Thanks.


----
Elizabeth Newman Visual Basic Deployment Test Team
This posting is provided "AS IS" with no warranties, and confers no rights.
Nov 15 '05 #3

P: n/a
Ok, I have 4 packages I must install before my application is installed but
I want them as one MSI file.

Some use InstallShield 1.5 I think.

So, I have to resort to shipping a .bat file to preinstall these? What a
bummer.
"Phil Wilson" <ph*********@unisys.spamcom> wrote in message
news:#q**************@TK2MSFTNGP10.phx.gbl...
"as Installed == false " is definitely the wrong syntax for a custom action condition. Not Installed would be the right syntax, but I don't think it's the right choice - it means run this custom action if my product is not installed, but it should be running the custom action if the runtime isn't installed.

I don't think you can install the runtime out of a custom action. .NET installs require Windows Installer (MSI) 2.0, and MSI 2.0 is installed by the dotnet redist, so if MSI 1.1 is on the system your setup won't start. The redist is an MSI-based setup, and two MSI setups can't run at the same time, so that's
another reason why you can't embed the redist in your MSI setup. Setups that appear to this kind of thing usually have a wrapper program that launches the required setups after checking what's on the system.
--
Phil Wilson [MVP Windows Installer]
----
<di********@discussion.microsoft.com> wrote in message
news:%2****************@TK2MSFTNGP10.phx.gbl...
Hi,

I added dotnetfx.exe to a setup project as a custom action to be installed before the main app is installed.

I set the Arguments property to /q:a /c:"install /l /q" for a silent
install but it complains that its already installed, then I set the
Condition to check as Installed == false and that doesnt work.

How can one do this on a setup project?

Thanks.


Nov 15 '05 #4

P: n/a
See if this helps. The site appears to be down right now, and you may have
to register, but there's some good stuff there.

http://www.codeproject.com/managedcpp/dotnetsetup.asp

--
Phil Wilson
[MVP Windows Installer]
<.> wrote in message news:%2****************@tk2msftngp13.phx.gbl...
Ok, I have 4 packages I must install before my application is installed but I want them as one MSI file.

Some use InstallShield 1.5 I think.

So, I have to resort to shipping a .bat file to preinstall these? What a
bummer.
"Phil Wilson" <ph*********@unisys.spamcom> wrote in message
news:#q**************@TK2MSFTNGP10.phx.gbl...
"as Installed == false " is definitely the wrong syntax for a custom action
condition. Not Installed would be the right syntax, but I don't think it's the
right choice - it means run this custom action if my product is not installed,
but it should be running the custom action if the runtime isn't installed.
I don't think you can install the runtime out of a custom action. .NET

installs
require Windows Installer (MSI) 2.0, and MSI 2.0 is installed by the

dotnet
redist, so if MSI 1.1 is on the system your setup won't start. The redist is an
MSI-based setup, and two MSI setups can't run at the same time, so
that's another reason why you can't embed the redist in your MSI setup. Setups

that
appear to this kind of thing usually have a wrapper program that

launches the
required setups after checking what's on the system.
--
Phil Wilson [MVP Windows Installer]
----
<di********@discussion.microsoft.com> wrote in message
news:%2****************@TK2MSFTNGP10.phx.gbl...
Hi,

I added dotnetfx.exe to a setup project as a custom action to be

installed before the main app is installed.

I set the Arguments property to /q:a /c:"install /l /q" for a silent
install but it complains that its already installed, then I set the
Condition to check as Installed == false and that doesnt work.

How can one do this on a setup project?

Thanks.



Nov 15 '05 #5

P: n/a
Unfortunately its not a publically accessable file.

Do I just code up a customActions assembly that inherits from the Install
class and override .Install and then launch the installers there? That would
still have the same problem as its within the new setup environment. Why MS
make this difficult is beyond me. Looks like im doing a s.hity .bat file.
I guess they want to encourage us to make shit products for Windows. Oh
well.

"Phil Wilson" <pd*******@nospam.cox.net> wrote in message
news:%2****************@tk2msftngp13.phx.gbl...
See if this helps. The site appears to be down right now, and you may have
to register, but there's some good stuff there.

http://www.codeproject.com/managedcpp/dotnetsetup.asp

--
Phil Wilson
[MVP Windows Installer]
<.> wrote in message news:%2****************@tk2msftngp13.phx.gbl...
Ok, I have 4 packages I must install before my application is installed

but
I want them as one MSI file.

Some use InstallShield 1.5 I think.

So, I have to resort to shipping a .bat file to preinstall these? What a
bummer.
"Phil Wilson" <ph*********@unisys.spamcom> wrote in message
news:#q**************@TK2MSFTNGP10.phx.gbl...
"as Installed == false " is definitely the wrong syntax for a custom

action
condition. Not Installed would be the right syntax, but I don't think it's
the
right choice - it means run this custom action if my product is not

installed,
but it should be running the custom action if the runtime isn't

installed.
I don't think you can install the runtime out of a custom action. .NET

installs
require Windows Installer (MSI) 2.0, and MSI 2.0 is installed by the

dotnet
redist, so if MSI 1.1 is on the system your setup won't start. The redist
is an
MSI-based setup, and two MSI setups can't run at the same time, so

that's another reason why you can't embed the redist in your MSI setup. Setups that
appear to this kind of thing usually have a wrapper program that

launches
the
required setups after checking what's on the system.
--
Phil Wilson [MVP Windows Installer]
----
<di********@discussion.microsoft.com> wrote in message
news:%2****************@TK2MSFTNGP10.phx.gbl...
> Hi,
>
> I added dotnetfx.exe to a setup project as a custom action to be

installed
> before the main app is installed.
>
> I set the Arguments property to /q:a /c:"install /l /q" for a

silent > install but it complains that its already installed, then I set the
> Condition to check as Installed == false and that doesnt work.
>
> How can one do this on a setup project?
>
> Thanks.
>
>



Nov 15 '05 #6

P: n/a
Simple solution I used a setup.bat file and called the proper command line
instead of bulding my own Setup.exe project (waste of freakin time for what
its giving when a simple .bat file can do) and then launch the setup.msi
file.

Microsoft you suck s.shit for installer support. I am now shopping elsewhere
for a working product.
<di********@discussion.microsoft.com> wrote in message
news:uM**************@TK2MSFTNGP12.phx.gbl...
Unfortunately its not a publically accessable file.

Do I just code up a customActions assembly that inherits from the Install
class and override .Install and then launch the installers there? That would still have the same problem as its within the new setup environment. Why MS make this difficult is beyond me. Looks like im doing a s.hity .bat file. I guess they want to encourage us to make shit products for Windows. Oh
well.

"Phil Wilson" <pd*******@nospam.cox.net> wrote in message
news:%2****************@tk2msftngp13.phx.gbl...
See if this helps. The site appears to be down right now, and you may have
to register, but there's some good stuff there.

http://www.codeproject.com/managedcpp/dotnetsetup.asp

--
Phil Wilson
[MVP Windows Installer]
<.> wrote in message news:%2****************@tk2msftngp13.phx.gbl...
Ok, I have 4 packages I must install before my application is installed
but
I want them as one MSI file.

Some use InstallShield 1.5 I think.

So, I have to resort to shipping a .bat file to preinstall these? What a bummer.
"Phil Wilson" <ph*********@unisys.spamcom> wrote in message
news:#q**************@TK2MSFTNGP10.phx.gbl...
> "as Installed == false " is definitely the wrong syntax for a custom
action
> condition. Not Installed would be the right syntax, but I don't
think it's
the
> right choice - it means run this custom action if my product is not
installed,
> but it should be running the custom action if the runtime isn't

installed.
>
> I don't think you can install the runtime out of a custom action.

..NET installs
> require Windows Installer (MSI) 2.0, and MSI 2.0 is installed by the
dotnet
> redist, so if MSI 1.1 is on the system your setup won't start. The

redist
is an
> MSI-based setup, and two MSI setups can't run at the same time, so

that's
> another reason why you can't embed the redist in your MSI setup.

Setups that
> appear to this kind of thing usually have a wrapper program that

launches
the
> required setups after checking what's on the system.
> --
> Phil Wilson [MVP Windows Installer]
> ----
> <di********@discussion.microsoft.com> wrote in message
> news:%2****************@TK2MSFTNGP10.phx.gbl...
> > Hi,
> >
> > I added dotnetfx.exe to a setup project as a custom action to be
installed
> > before the main app is installed.
> >
> > I set the Arguments property to /q:a /c:"install /l /q" for a silent > > install but it complains that its already installed, then I set the > > Condition to check as Installed == false and that doesnt work.
> >
> > How can one do this on a setup project?
> >
> > Thanks.
> >
> >
>
>



Nov 15 '05 #7

This discussion thread is closed

Replies have been disabled for this discussion.