473,407 Members | 2,326 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,407 software developers and data experts.

Custom Actions not working

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
6 4320
"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
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
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
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
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
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 thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Martin | last post by:
I am trying to create a setup project for my C# winforms application. The setup project works perfectly, for the most part. The difficulty I am having is this: I want to run two custom actions...
1
by: Angela | last post by:
I wrote a class that I intended to be a custom action. I added the DLL for the class to the setup project using the CustomActions editor. When I run the installer it completely ignores the custom...
3
by: Vai2000 | last post by:
Hi All, I need to execute custom action during installation of my program (through MSI). Creating the MSI was pretty straight fwd. After that I went into the Custom Action Editor and added the...
0
by: Ron Andersen | last post by:
I have C# custom actions and merge modules created in Visual Studio to install some components of the application I am working on. The merge modules are used with an Install Shield 9 project. ...
0
by: Gabriel Lozano-Morán | last post by:
We have developed an application that will replace the older version. The older versions comes in two flavors, a Lite and a Pro version. I can successfully remove the previous version of either the...
1
by: lyl209 | last post by:
Hi, I am trying to create a web setup project for my asp.net 2.0 website and I had some problems. It worked fine until I want to add some custom actions into it. As some of you already knew,...
10
by: =?Utf-8?B?SmFjayBTbWl0aA==?= | last post by:
Hello, I have a solution that contains a C# application that is installed and runs as a service. The solution also contains several DLLs, some of which are C# assemblies and some are C++ DLLs. ...
13
by: Matt F | last post by:
I have a deployment project that I'm setting up. I need to perform a different custom action based on whether this is a first time install or an update. Does anyone have any idea if it's possible...
0
by: =?Utf-8?B?QWxoYW1icmEgRWlkb3MgS2lxdWVuZXQ=?= | last post by:
Actually, my installer package is not for a Windows Service, but for a WinForms application. Well, it is kind of both: this is a multi-project solution with its main target being a WinForms...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.