Discussion:
[WiX-users] Bootstrapper manifest
Raphael DUCOM
2013-01-07 11:27:32 UTC
Permalink
Hello,

I'm working on a boostrapper wich really needs elevated privileges in order to completly install our solution. (I know I normally should'nt do that, but we don't have choice because of the specific components needed to be install).
I'm searching a way to define a specific manifest file for a generated bootstrapper executable.
I'm aware of the already answered forum posts (in 2011) :
- http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest-for-Burn-Bootstrapper-td6605859.html
- http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html

I have tried embed manifest with mt.exe with no success, same error as the second post. (mt.exe : general error c101008c: Failed to read the manifest from the resource of file "C:\ ..... MyInstall_1.0.107.41.exe.manifest". The binary is not a valid Windows image.)
I also have tried the Elevate() function of BA, which doesn't elevate the context at all.

But when looking in depth to my generated executable with Mitec EXE Explorer, I found there is a manifest embed into it (you will fin dit at the end of this mail)

My question is :
- Is there a way to embed or define a manifest with more recent (3.7) version of WiX while generating a Bundle EXE ? (with specific candle or light parameters ?)
- Is it possible to alter or modify the manifest once the bundle executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate privileges" ?

Thanks in advance, we are really stuck on this...

Bests,
Raphaël DUCOM

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity name="setup.exe" version="1.0.0.0" processorArchitecture="x86" type="win32"></assemblyIdentity>
<description>WiX Toolset Bootstrapper</description>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*"></assemblyIdentity>
</dependentAssembly>
</dependency>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
</requestedPrivileges>
</security>
</trustInfo>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"></supportedOS>
<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"></supportedOS>
</application>
</compatibility>
</assembly>


Raphael DUCOM
Développeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr


________________________________
Rob Mensching
2013-01-07 14:06:41 UTC
Permalink
Burn will elevate the install much the same way that the Windows Installer
elevates the install. Make sure you put all your stuff that modifies the
machine (aka: requires elevation) in the Chain and it will be elevated.
Post by Raphael DUCOM
Hello,
I'm working on a boostrapper wich really needs elevated privileges in
order to completly install our solution. (I know I normally should'nt do
that, but we don't have choice because of the specific components needed to
be install).
I'm searching a way to define a specific manifest file for a generated
bootstrapper executable.
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest-for-Burn-Bootstrapper-td6605859.html
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html
I have tried embed manifest with mt.exe with no success, same error as the
second post. (mt.exe : general error c101008c: Failed to read the manifest
from the resource of file "C:\ ..... MyInstall_1.0.107.41.exe.manifest".
The binary is not a valid Windows image.)
I also have tried the Elevate() function of BA, which doesn't elevate the context at all.
But when looking in depth to my generated executable with Mitec EXE
Explorer, I found there is a manifest embed into it (you will fin dit at
the end of this mail)
- Is there a way to embed or define a manifest with more recent (3.7)
version of WiX while generating a Bundle EXE ? (with specific candle or
light parameters ?)
- Is it possible to alter or modify the manifest once the bundle
executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate privileges" ?
Thanks in advance, we are really stuck on this...
Bests,
Raphaël DUCOM
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity name="setup.exe" version="1.0.0.0"
processorArchitecture="x86" type="win32"></assemblyIdentity>
<description>WiX Toolset Bootstrapper</description>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32"
name="Microsoft.Windows.Common-Controls" version="6.0.0.0"
processorArchitecture="X86" publicKeyToken="6595b64144ccf1df"
language="*"></assemblyIdentity>
</dependentAssembly>
</dependency>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker"
uiAccess="false"></requestedExecutionLevel>
</requestedPrivileges>
</security>
</trustInfo>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<supportedOS
Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"></supportedOS>
<supportedOS
Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"></supportedOS>
</application>
</compatibility>
</assembly>
Raphael DUCOM
Développeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr
________________________________
------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
http://p.sf.net/sfu/learnmore_122412
_______________________________________________
WiX-users mailing list
https://lists.sourceforge.net/lists/listinfo/wix-users
Raphael DUCOM
2013-01-08 08:58:30 UTC
Permalink
Hi Rob,

Many Thanks for your answer, but I believe I didn't give a good explanation...
When you say "put stuff that modifies the machine in the Chain and elevate", I think you mean "using a custom action which elevates" like
<CustomAction .... Execute="deferred" Impersonate="no" /> isn't it ?

My scenario is different, I use the BootstrapperApplication class in order to implement our custom installer, and lot of specific actions are implemented inside our UI installer and not as CustomActions. This installer UI also drives the installation of msi via the wix Engine.

So I need a way to elevate the process which instantiate and run the BootstrapperApplication class, not CustomAction. And for instance, I believe the only way is to alter / update the bootstrapper exe manifest.

Is there a way to do that ?

Thanks in advance,
Bests,

Raphael DUCOM,

--------------------------------
Date: Mon, 7 Jan 2013 06:06:41 -0800
From: Rob Mensching <***@robmensching.com>
Subject: Re: [WiX-users] Bootstrapper manifest

Burn will elevate the install much the same way that the Windows Installer elevates the install. Make sure you put all your stuff that modifies the machine (aka: requires elevation) in the Chain and it will be elevated.
Post by Raphael DUCOM
Hello,
I'm working on a boostrapper wich really needs elevated privileges in
order to completly install our solution. (I know I normally should'nt
do that, but we don't have choice because of the specific components
needed to be install).
I'm searching a way to define a specific manifest file for a generated
bootstrapper executable.
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest
-for-Burn-Bootstrapper-td6605859.html
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how
-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html
I have tried embed manifest with mt.exe with no success, same error as
the second post. (mt.exe : general error c101008c: Failed to read the
manifest from the resource of file "C:\ ..... MyInstall_1.0.107.41.exe.manifest".
The binary is not a valid Windows image.) I also have tried the
Elevate() function of BA, which doesn't elevate the context at all.
But when looking in depth to my generated executable with Mitec EXE
Explorer, I found there is a manifest embed into it (you will fin dit
at the end of this mail)
- Is there a way to embed or define a manifest with more recent (3.7)
version of WiX while generating a Bundle EXE ? (with specific candle
or light parameters ?)
- Is it possible to alter or modify the manifest once the bundle
executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate
privileges" ?
Thanks in advance, we are really stuck on this...
Bests,
Raphael DUCOM
Raphael DUCOM
D?veloppeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr


________________________________
Rob Mensching
2013-01-08 14:15:52 UTC
Permalink
Your BootstrapperApplication should not be modifying machine state at all.
Machine state changes should be in "packages" (MSI, EXE, MSP, etc.) that
are listed in the Bundle/Chain element. Your BA can then control which
packages are installed.
Post by Raphael DUCOM
Hi Rob,
Many Thanks for your answer, but I believe I didn't give a good explanation...
When you say "put stuff that modifies the machine in the Chain and
elevate", I think you mean "using a custom action which elevates" like
<CustomAction .... Execute="deferred" Impersonate="no" /> isn't it ?
My scenario is different, I use the BootstrapperApplication class in order
to implement our custom installer, and lot of specific actions are
implemented inside our UI installer and not as CustomActions. This
installer UI also drives the installation of msi via the wix Engine.
So I need a way to elevate the process which instantiate and run the
BootstrapperApplication class, not CustomAction. And for instance, I
believe the only way is to alter / update the bootstrapper exe manifest.
Is there a way to do that ?
Thanks in advance,
Bests,
Raphael DUCOM,
--------------------------------
Date: Mon, 7 Jan 2013 06:06:41 -0800
Subject: Re: [WiX-users] Bootstrapper manifest
Burn will elevate the install much the same way that the Windows Installer
elevates the install. Make sure you put all your stuff that modifies the
machine (aka: requires elevation) in the Chain and it will be elevated.
Post by Raphael DUCOM
Hello,
I'm working on a boostrapper wich really needs elevated privileges in
order to completly install our solution. (I know I normally should'nt
do that, but we don't have choice because of the specific components
needed to be install).
I'm searching a way to define a specific manifest file for a generated
bootstrapper executable.
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest
-for-Burn-Bootstrapper-td6605859.html
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how
-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html
I have tried embed manifest with mt.exe with no success, same error as
the second post. (mt.exe : general error c101008c: Failed to read the
manifest from the resource of file "C:\ .....
MyInstall_1.0.107.41.exe.manifest".
Post by Raphael DUCOM
The binary is not a valid Windows image.) I also have tried the
Elevate() function of BA, which doesn't elevate the context at all.
But when looking in depth to my generated executable with Mitec EXE
Explorer, I found there is a manifest embed into it (you will fin dit
at the end of this mail)
- Is there a way to embed or define a manifest with more recent (3.7)
version of WiX while generating a Bundle EXE ? (with specific candle
or light parameters ?)
- Is it possible to alter or modify the manifest once the bundle
executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate
privileges" ?
Thanks in advance, we are really stuck on this...
Bests,
Raphael DUCOM
Raphael DUCOM
D?veloppeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr
________________________________
------------------------------------------------------------------------------
Master SQL Server Development, Administration, T-SQL, SSAS, SSIS, SSRS
and more. Get SQL Server skills now (including 2012) with LearnDevNow -
200+ hours of step-by-step video tutorials by Microsoft MVPs and experts.
http://p.sf.net/sfu/learnmore_122512
_______________________________________________
WiX-users mailing list
https://lists.sourceforge.net/lists/listinfo/wix-users
Kryschan
2013-10-04 12:56:02 UTC
Permalink
Hi Rob,

we do also have the need of an elevated BA. Our BA collects all the
information required for the installation in a kind of setup wizard.
Post by Rob Mensching
Your BootstrapperApplication should not be modifying machine state at all.
The elevation is needed, because we want to check for the existence of a
certain website in IIS via Microsoft.Web.Administration namespace, to either
display an information that the website already exists or to request some
data (like apppool user and ports) from the user.

Without elevation an UnauthorizedAccessException is thrown. Is there a way
to achieve this?

Best regards
Christian



--
View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Bootstrapper-manifest-tp7582666p7589444.html
Sent from the wix-users mailing list archive at Nabble.com.
Rob Mensching
2013-10-04 14:01:31 UTC
Permalink
Launch a standalone process that elevates and communicates back to your BA.
We've talked about adding this feature to Burn so there is only a single
elevation prompt in the end but no one has contributed it yet.

Funny thing is the only reason we've needed it thus far is because the IIS
team screwed up their permissions on their files and prevented read from
unelevated processes. The correct fix is for the IIS team to fix that...
not that that will ever happen.


On Fri, Oct 4, 2013 at 5:56 AM, Kryschan <
Post by Raphael DUCOM
Hi Rob,
we do also have the need of an elevated BA. Our BA collects all the
information required for the installation in a kind of setup wizard.
Post by Rob Mensching
Your BootstrapperApplication should not be modifying machine state at
all.
The elevation is needed, because we want to check for the existence of a
certain website in IIS via Microsoft.Web.Administration namespace, to either
display an information that the website already exists or to request some
data (like apppool user and ports) from the user.
Without elevation an UnauthorizedAccessException is thrown. Is there a way
to achieve this?
Best regards
Christian
--
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Bootstrapper-manifest-tp7582666p7589444.html
Sent from the wix-users mailing list archive at Nabble.com.
------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most
from
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60134791&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
https://lists.sourceforge.net/lists/listinfo/wix-users
rocky
2014-01-28 09:28:00 UTC
Permalink
1) Create your own Bootstrapper.manifest
2) Download ResHacker <http://www.angusj.com/resourcehacker/>
3) Add post-build event to Bootstrapper.wixproj
$(ProjectDir)bin\ResHacker\ResHacker.exe -modify
$(TargetPath),$(TargetPath),$(ProjectDir)$(ProjectName).manifest,24,1,1033
4) Done



--
View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Bootstrapper-manifest-tp7582666p7592143.html
Sent from the wix-users mailing list archive at Nabble.com.

Raphael DUCOM
2013-01-08 14:41:29 UTC
Permalink
Rob, that's why I said : " I'm working on a boostrapper which really needs elevated privileges in order to completely install our solution. ( I know I normally shouldn't do that, but we don't have choice because of the specific components needed to be install ). "

So, is there a way to alter / driver / update the Bundle manifest before generation or once generated ? On just include a resource file into the Bundle project (as in normal projects), in order to control the executable manifest ?

Please, I understood your point of view, and the fact you have to drive the way people uses WiX, but we only have this option in order to manipulate the elements we need to manipulate. We are in production environments, and using really specific technologies, all is working fine except the fact we have to put a message saying "you must run this "as administrator" because we have no way at the moment to just modify the manifest of the generated bundle executable...

We just need to put a <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> into this manifest... In order to give a "normal" / "usual" user experience... (think about nullsoft for example, I believe there is no restriction at this level)

Hoping you can drive us to a working workaround...

Bests,


--------------------------------
Re: [WiX-users] Bootstrapper manifest
From: Rob Mensching <***@robmensching.com> - 2013-01-08 14:17
Subject: Re: [WiX-users] Bootstrapper manifest

Your BootstrapperApplication should not be modifying machine state at all.
Machine state changes should be in "packages" (MSI, EXE, MSP, etc.) that
are listed in the Bundle/Chain element. Your BA can then control which
packages are installed.




Raphael DUCOM
Développeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr

-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 09:58
À : wix-***@lists.sourceforge.net
Objet : Re: Bootstrapper manifest

Hi Rob,

Many Thanks for your answer, but I believe I didn't give a good explanation...
When you say "put stuff that modifies the machine in the Chain and elevate", I think you mean "using a custom action which elevates" like <CustomAction .... Execute="deferred" Impersonate="no" /> isn't it ?

My scenario is different, I use the BootstrapperApplication class in order to implement our custom installer, and lot of specific actions are implemented inside our UI installer and not as CustomActions. This installer UI also drives the installation of msi via the wix Engine.

So I need a way to elevate the process which instantiate and run the BootstrapperApplication class, not CustomAction. And for instance, I believe the only way is to alter / update the bootstrapper exe manifest.

Is there a way to do that ?

Thanks in advance,
Bests,

Raphael DUCOM,

--------------------------------
Date: Mon, 7 Jan 2013 06:06:41 -0800
From: Rob Mensching <***@robmensching.com>
Subject: Re: [WiX-users] Bootstrapper manifest

Burn will elevate the install much the same way that the Windows Installer elevates the install. Make sure you put all your stuff that modifies the machine (aka: requires elevation) in the Chain and it will be elevated.
Post by Raphael DUCOM
Hello,
I'm working on a boostrapper wich really needs elevated privileges in
order to completly install our solution. (I know I normally should'nt
do that, but we don't have choice because of the specific components
needed to be install).
I'm searching a way to define a specific manifest file for a generated
bootstrapper executable.
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest
-for-Burn-Bootstrapper-td6605859.html
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how
-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html
I have tried embed manifest with mt.exe with no success, same error as
the second post. (mt.exe : general error c101008c: Failed to read the
manifest from the resource of file "C:\ ..... MyInstall_1.0.107.41.exe.manifest".
The binary is not a valid Windows image.) I also have tried the
Elevate() function of BA, which doesn't elevate the context at all.
But when looking in depth to my generated executable with Mitec EXE
Explorer, I found there is a manifest embed into it (you will fin dit
at the end of this mail)
- Is there a way to embed or define a manifest with more recent (3.7)
version of WiX while generating a Bundle EXE ? (with specific candle
or light parameters ?)
- Is it possible to alter or modify the manifest once the bundle
executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate
privileges" ?
Thanks in advance, we are really stuck on this...
Bests,
Raphael DUCOM
________________________________
Rob Mensching
2013-01-08 15:17:55 UTC
Permalink
I don't understand why you can't put the operations that modify the machine
in a package in the Chain. You say you have to do it in the BA but not why.
Post by Raphael DUCOM
Rob, that's why I said : " I'm working on a boostrapper which really needs
elevated privileges in order to completely install our solution. ( I know I
normally shouldn't do that, but we don't have choice because of the
specific components needed to be install ). "
So, is there a way to alter / driver / update the Bundle manifest before
generation or once generated ? On just include a resource file into the
Bundle project (as in normal projects), in order to control the executable
manifest ?
Please, I understood your point of view, and the fact you have to drive
the way people uses WiX, but we only have this option in order to
manipulate the elements we need to manipulate. We are in production
environments, and using really specific technologies, all is working fine
except the fact we have to put a message saying "you must run this "as
administrator" because we have no way at the moment to just modify the
manifest of the generated bundle executable...
We just need to put a <requestedExecutionLevel
level="requireAdministrator" uiAccess="false" /> into this manifest... In
order to give a "normal" / "usual" user experience... (think about nullsoft
for example, I believe there is no restriction at this level)
Hoping you can drive us to a working workaround...
Bests,
--------------------------------
Re: [WiX-users] Bootstrapper manifest
Subject: Re: [WiX-users] Bootstrapper manifest
Your BootstrapperApplication should not be modifying machine state at all.
Machine state changes should be in "packages" (MSI, EXE, MSP, etc.) that
are listed in the Bundle/Chain element. Your BA can then control which
packages are installed.
Raphael DUCOM
Développeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr
-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 09:58
Objet : Re: Bootstrapper manifest
Hi Rob,
Many Thanks for your answer, but I believe I didn't give a good explanation...
When you say "put stuff that modifies the machine in the Chain and
elevate", I think you mean "using a custom action which elevates" like
<CustomAction .... Execute="deferred" Impersonate="no" /> isn't it ?
My scenario is different, I use the BootstrapperApplication class in order
to implement our custom installer, and lot of specific actions are
implemented inside our UI installer and not as CustomActions. This
installer UI also drives the installation of msi via the wix Engine.
So I need a way to elevate the process which instantiate and run the
BootstrapperApplication class, not CustomAction. And for instance, I
believe the only way is to alter / update the bootstrapper exe manifest.
Is there a way to do that ?
Thanks in advance,
Bests,
Raphael DUCOM,
--------------------------------
Date: Mon, 7 Jan 2013 06:06:41 -0800
Subject: Re: [WiX-users] Bootstrapper manifest
Burn will elevate the install much the same way that the Windows Installer
elevates the install. Make sure you put all your stuff that modifies the
machine (aka: requires elevation) in the Chain and it will be elevated.
Post by Raphael DUCOM
Hello,
I'm working on a boostrapper wich really needs elevated privileges in
order to completly install our solution. (I know I normally should'nt
do that, but we don't have choice because of the specific components
needed to be install).
I'm searching a way to define a specific manifest file for a generated
bootstrapper executable.
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest
-for-Burn-Bootstrapper-td6605859.html
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how
-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html
I have tried embed manifest with mt.exe with no success, same error as
the second post. (mt.exe : general error c101008c: Failed to read the
manifest from the resource of file "C:\ .....
MyInstall_1.0.107.41.exe.manifest".
Post by Raphael DUCOM
The binary is not a valid Windows image.) I also have tried the
Elevate() function of BA, which doesn't elevate the context at all.
But when looking in depth to my generated executable with Mitec EXE
Explorer, I found there is a manifest embed into it (you will fin dit
at the end of this mail)
- Is there a way to embed or define a manifest with more recent (3.7)
version of WiX while generating a Bundle EXE ? (with specific candle
or light parameters ?)
- Is it possible to alter or modify the manifest once the bundle
executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate
privileges" ?
Thanks in advance, we are really stuck on this...
Bests,
Raphael DUCOM
________________________________
------------------------------------------------------------------------------
Master SQL Server Development, Administration, T-SQL, SSAS, SSIS, SSRS
and more. Get SQL Server skills now (including 2012) with LearnDevNow -
200+ hours of step-by-step video tutorials by Microsoft MVPs and experts.
http://p.sf.net/sfu/learnmore_122512
_______________________________________________
WiX-users mailing list
https://lists.sourceforge.net/lists/listinfo/wix-users
Raphael DUCOM
2013-01-08 15:44:14 UTC
Permalink
Rob, I agree with you that all can be made with custom actions, but we have implemented a custom installer which drives the MSI MSP installation with the WiX Engine, and drives our custom installation Task with specific actions which fits better our specific needs:

The reason why we don't use CustomActions and have made the choice to implement a custom boostrapper/installer is the WiX inability to correctly manages multi-instance installations on a single machine with heterogeneous environments for each instance (dependencies, configurations, etc). The way WiX let developers create a multi-instance installer wasn't sufficient four our needs. Moreover we have had the need to implement specific actions for database update (we have a really specific way to make sql schema updates) directly depending on SQL / IIS configuration, then we have had the need to implement a working system in order to correctly configure a IIS and a SQL in a multi-instance mode, without all the actually related problems WiX encounter.

For all these reasons, we have made the choice to only use WiX to drives the msi / msp installations, and have the hand on all the things WiX don't know how to do, or is really too hard to implement and debug with WiX.

Now we have a working system, as soon as the use run the installer with "Run As Administrator", so I'd really like to know if you have an idea to let us give a better UI experience....

Thanks in advance...
Bests,

Raphaël


Re: [WiX-users] Bootstrapper manifest
From: Rob Mensching <***@ro...> - 2013-01-08 15:19
I don't understand why you can't put the operations that modify the machine
in a package in the Chain. You say you have to do it in the BA but not why.


On Tue, Jan 8, 2013 at 6:41 AM, Raphael DUCOM <***@...> wrote:

Rob, that's why I said : " I'm working on a boostrapper which really needs elevated privileges in order to completely install our solution. ( I know I normally shouldn't do that, but we don't have choice because of the specific components needed to be install ). "

So, is there a way to alter / driver / update the Bundle manifest before generation or once generated ? On just include a resource file into the Bundle project (as in normal projects), in order to control the executable manifest ?

Please, I understood your point of view, and the fact you have to drive the way people uses WiX, but we only have this option in order to manipulate the elements we need to manipulate. We are in production environments, and using really specific technologies, all is working fine except the fact we have to put a message saying "you must run this "as administrator" because we have no way at the moment to just modify the manifest of the generated bundle executable...

We just need to put a <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> into this manifest... In order to give a "normal" / "usual" user experience... (think about nullsoft for example, I believe there is no restriction at this level)

Hoping you can drive us to a working workaround...

Bests,


--------------------------------
Re: [WiX-users] Bootstrapper manifest
From: Rob Mensching <***@robmensching.com> - 2013-01-08 14:17
Subject: Re: [WiX-users] Bootstrapper manifest

Your BootstrapperApplication should not be modifying machine state at all.
Machine state changes should be in "packages" (MSI, EXE, MSP, etc.) that are listed in the Bundle/Chain element. Your BA can then control which packages are installed.




Raphael DUCOM
Développeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr

-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 09:58
À : wix-***@lists.sourceforge.net
Objet : Re: Bootstrapper manifest

Hi Rob,

Many Thanks for your answer, but I believe I didn't give a good explanation...
When you say "put stuff that modifies the machine in the Chain and elevate", I think you mean "using a custom action which elevates" like <CustomAction .... Execute="deferred" Impersonate="no" /> isn't it ?

My scenario is different, I use the BootstrapperApplication class in order to implement our custom installer, and lot of specific actions are implemented inside our UI installer and not as CustomActions. This installer UI also drives the installation of msi via the wix Engine.

So I need a way to elevate the process which instantiate and run the BootstrapperApplication class, not CustomAction. And for instance, I believe the only way is to alter / update the bootstrapper exe manifest.

Is there a way to do that ?

Thanks in advance,
Bests,

Raphael DUCOM,

--------------------------------
Date: Mon, 7 Jan 2013 06:06:41 -0800
From: Rob Mensching <***@robmensching.com>
Subject: Re: [WiX-users] Bootstrapper manifest

Burn will elevate the install much the same way that the Windows Installer elevates the install. Make sure you put all your stuff that modifies the machine (aka: requires elevation) in the Chain and it will be elevated.
Post by Raphael DUCOM
Hello,
I'm working on a boostrapper wich really needs elevated privileges in
order to completly install our solution. (I know I normally should'nt
do that, but we don't have choice because of the specific components
needed to be install).
I'm searching a way to define a specific manifest file for a generated
bootstrapper executable.
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest
-for-Burn-Bootstrapper-td6605859.html
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how
-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html
I have tried embed manifest with mt.exe with no success, same error as
the second post. (mt.exe : general error c101008c: Failed to read the
manifest from the resource of file "C:\ ..... MyInstall_1.0.107.41.exe.manifest".
The binary is not a valid Windows image.) I also have tried the
Elevate() function of BA, which doesn't elevate the context at all.
But when looking in depth to my generated executable with Mitec EXE
Explorer, I found there is a manifest embed into it (you will fin dit
at the end of this mail)
- Is there a way to embed or define a manifest with more recent (3.7)
version of WiX while generating a Bundle EXE ? (with specific candle
or light parameters ?)
- Is it possible to alter or modify the manifest once the bundle
executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate
privileges" ?
Thanks in advance, we are really stuck on this...
Bests,
Raphael DUCOM
________________________________
Raphael DUCOM
2013-01-11 14:23:00 UTC
Permalink
Hi Rob,

Can you confirm there is no workaround letting us to put <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> into the BA manifest ?

Waiting for your answer,
Thanks in advance,
Bests,

Raphael DUCOM



Raphael DUCOM
Développeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr

-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 16:44
À : 'wix-***@lists.sourceforge.net'
Objet : RE: Bootstrapper manifest

Rob, I agree with you that all can be made with custom actions, but we have implemented a custom installer which drives the MSI MSP installation with the WiX Engine, and drives our custom installation Task with specific actions which fits better our specific needs:

The reason why we don't use CustomActions and have made the choice to implement a custom boostrapper/installer is the WiX inability to correctly manages multi-instance installations on a single machine with heterogeneous environments for each instance (dependencies, configurations, etc). The way WiX let developers create a multi-instance installer wasn't sufficient four our needs. Moreover we have had the need to implement specific actions for database update (we have a really specific way to make sql schema updates) directly depending on SQL / IIS configuration, then we have had the need to implement a working system in order to correctly configure a IIS and a SQL in a multi-instance mode, without all the actually related problems WiX encounter.

For all these reasons, we have made the choice to only use WiX to drives the msi / msp installations, and have the hand on all the things WiX don't know how to do, or is really too hard to implement and debug with WiX.

Now we have a working system, as soon as the use run the installer with "Run As Administrator", so I'd really like to know if you have an idea to let us give a better UI experience....

Thanks in advance...
Bests,

Raphaël


Re: [WiX-users] Bootstrapper manifest
From: Rob Mensching <***@ro...> - 2013-01-08 15:19
I don't understand why you can't put the operations that modify the machine in a package in the Chain. You say you have to do it in the BA but not why.


On Tue, Jan 8, 2013 at 6:41 AM, Raphael DUCOM <***@...> wrote:

Rob, that's why I said : " I'm working on a boostrapper which really needs elevated privileges in order to completely install our solution. ( I know I normally shouldn't do that, but we don't have choice because of the specific components needed to be install ). "

So, is there a way to alter / driver / update the Bundle manifest before generation or once generated ? On just include a resource file into the Bundle project (as in normal projects), in order to control the executable manifest ?

Please, I understood your point of view, and the fact you have to drive the way people uses WiX, but we only have this option in order to manipulate the elements we need to manipulate. We are in production environments, and using really specific technologies, all is working fine except the fact we have to put a message saying "you must run this "as administrator" because we have no way at the moment to just modify the manifest of the generated bundle executable...

We just need to put a <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> into this manifest... In order to give a "normal" / "usual" user experience... (think about nullsoft for example, I believe there is no restriction at this level)

Hoping you can drive us to a working workaround...

Bests,


--------------------------------
Re: [WiX-users] Bootstrapper manifest
From: Rob Mensching <***@robmensching.com> - 2013-01-08 14:17
Subject: Re: [WiX-users] Bootstrapper manifest

Your BootstrapperApplication should not be modifying machine state at all.
Machine state changes should be in "packages" (MSI, EXE, MSP, etc.) that are listed in the Bundle/Chain element. Your BA can then control which packages are installed.


-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 09:58
À : wix-***@lists.sourceforge.net
Objet : Re: Bootstrapper manifest

Hi Rob,

Many Thanks for your answer, but I believe I didn't give a good explanation...
When you say "put stuff that modifies the machine in the Chain and elevate", I think you mean "using a custom action which elevates" like <CustomAction .... Execute="deferred" Impersonate="no" /> isn't it ?

My scenario is different, I use the BootstrapperApplication class in order to implement our custom installer, and lot of specific actions are implemented inside our UI installer and not as CustomActions. This installer UI also drives the installation of msi via the wix Engine.

So I need a way to elevate the process which instantiate and run the BootstrapperApplication class, not CustomAction. And for instance, I believe the only way is to alter / update the bootstrapper exe manifest.

Is there a way to do that ?

Thanks in advance,
Bests,

Raphael DUCOM,

--------------------------------
Date: Mon, 7 Jan 2013 06:06:41 -0800
From: Rob Mensching <***@robmensching.com>
Subject: Re: [WiX-users] Bootstrapper manifest

Burn will elevate the install much the same way that the Windows Installer elevates the install. Make sure you put all your stuff that modifies the machine (aka: requires elevation) in the Chain and it will be elevated.
Post by Raphael DUCOM
Hello,
I'm working on a boostrapper wich really needs elevated privileges in
order to completly install our solution. (I know I normally should'nt
do that, but we don't have choice because of the specific components
needed to be install).
I'm searching a way to define a specific manifest file for a generated
bootstrapper executable.
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest
-for-Burn-Bootstrapper-td6605859.html
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how
-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html
I have tried embed manifest with mt.exe with no success, same error as
the second post. (mt.exe : general error c101008c: Failed to read the
manifest from the resource of file "C:\ ..... MyInstall_1.0.107.41.exe.manifest".
The binary is not a valid Windows image.) I also have tried the
Elevate() function of BA, which doesn't elevate the context at all.
But when looking in depth to my generated executable with Mitec EXE
Explorer, I found there is a manifest embed into it (you will fin dit
at the end of this mail)
- Is there a way to embed or define a manifest with more recent (3.7)
version of WiX while generating a Bundle EXE ? (with specific candle
or light parameters ?)
- Is it possible to alter or modify the manifest once the bundle
executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate
privileges" ?
Thanks in advance, we are really stuck on this...
Bests,
Raphael DUCOM
________________________________
u***@gmail.com
2013-01-11 14:33:26 UTC
Permalink
I would say that as a hack you could write a program that modifies/adds
the manifest resource. it's not so much complicated.
Post by Raphael DUCOM
Hi Rob,
Can you confirm there is no workaround letting us to put <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> into the BA manifest ?
Waiting for your answer,
Thanks in advance,
Bests,
Raphael DUCOM
Raphael DUCOM
Développeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr
-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 16:44
Objet : RE: Bootstrapper manifest
The reason why we don't use CustomActions and have made the choice to implement a custom boostrapper/installer is the WiX inability to correctly manages multi-instance installations on a single machine with heterogeneous environments for each instance (dependencies, configurations, etc). The way WiX let developers create a multi-instance installer wasn't sufficient four our needs. Moreover we have had the need to implement specific actions for database update (we have a really specific way to make sql schema updates) directly depending on SQL / IIS configuration, then we have had the need to implement a working system in order to correctly configure a IIS and a SQL in a multi-instance mode, without all the actually related problems WiX encounter.
For all these reasons, we have made the choice to only use WiX to drives the msi / msp installations, and have the hand on all the things WiX don't know how to do, or is really too hard to implement and debug with WiX.
Now we have a working system, as soon as the use run the installer with "Run As Administrator", so I'd really like to know if you have an idea to let us give a better UI experience....
Thanks in advance...
Bests,
Raphaël
Re: [WiX-users] Bootstrapper manifest
I don't understand why you can't put the operations that modify the machine in a package in the Chain. You say you have to do it in the BA but not why.
Rob, that's why I said : " I'm working on a boostrapper which really needs elevated privileges in order to completely install our solution. ( I know I normally shouldn't do that, but we don't have choice because of the specific components needed to be install ). "
So, is there a way to alter / driver / update the Bundle manifest before generation or once generated ? On just include a resource file into the Bundle project (as in normal projects), in order to control the executable manifest ?
Please, I understood your point of view, and the fact you have to drive the way people uses WiX, but we only have this option in order to manipulate the elements we need to manipulate. We are in production environments, and using really specific technologies, all is working fine except the fact we have to put a message saying "you must run this "as administrator" because we have no way at the moment to just modify the manifest of the generated bundle executable...
We just need to put a <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> into this manifest... In order to give a "normal" / "usual" user experience... (think about nullsoft for example, I believe there is no restriction at this level)
Hoping you can drive us to a working workaround...
Bests,
--------------------------------
Re: [WiX-users] Bootstrapper manifest
Subject: Re: [WiX-users] Bootstrapper manifest
Your BootstrapperApplication should not be modifying machine state at all.
Machine state changes should be in "packages" (MSI, EXE, MSP, etc.) that are listed in the Bundle/Chain element. Your BA can then control which packages are installed.
-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 09:58
Objet : Re: Bootstrapper manifest
Hi Rob,
Many Thanks for your answer, but I believe I didn't give a good explanation...
When you say "put stuff that modifies the machine in the Chain and elevate", I think you mean "using a custom action which elevates" like <CustomAction .... Execute="deferred" Impersonate="no" /> isn't it ?
My scenario is different, I use the BootstrapperApplication class in order to implement our custom installer, and lot of specific actions are implemented inside our UI installer and not as CustomActions. This installer UI also drives the installation of msi via the wix Engine.
So I need a way to elevate the process which instantiate and run the BootstrapperApplication class, not CustomAction. And for instance, I believe the only way is to alter / update the bootstrapper exe manifest.
Is there a way to do that ?
Thanks in advance,
Bests,
Raphael DUCOM,
--------------------------------
Date: Mon, 7 Jan 2013 06:06:41 -0800
Subject: Re: [WiX-users] Bootstrapper manifest
Burn will elevate the install much the same way that the Windows Installer elevates the install. Make sure you put all your stuff that modifies the machine (aka: requires elevation) in the Chain and it will be elevated.
Post by Raphael DUCOM
Hello,
I'm working on a boostrapper wich really needs elevated privileges in
order to completly install our solution. (I know I normally should'nt
do that, but we don't have choice because of the specific components
needed to be install).
I'm searching a way to define a specific manifest file for a generated
bootstrapper executable.
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest
-for-Burn-Bootstrapper-td6605859.html
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how
-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html
I have tried embed manifest with mt.exe with no success, same error as
the second post. (mt.exe : general error c101008c: Failed to read the
manifest from the resource of file "C:\ ..... MyInstall_1.0.107.41.exe.manifest".
The binary is not a valid Windows image.) I also have tried the
Elevate() function of BA, which doesn't elevate the context at all.
But when looking in depth to my generated executable with Mitec EXE
Explorer, I found there is a manifest embed into it (you will fin dit
at the end of this mail)
- Is there a way to embed or define a manifest with more recent (3.7)
version of WiX while generating a Bundle EXE ? (with specific candle
or light parameters ?)
- Is it possible to alter or modify the manifest once the bundle
executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate
privileges" ?
Thanks in advance, we are really stuck on this...
Bests,
Raphael DUCOM
________________________________
------------------------------------------------------------------------------
Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and
much more. Get web development skills now with LearnDevNow -
350+ hours of step-by-step video tutorials by Microsoft MVPs and experts.
http://p.sf.net/sfu/learnmore_122812
_______________________________________________
WiX-users mailing list
https://lists.sourceforge.net/lists/listinfo/wix-users
Daniel Madill
2013-01-11 14:34:35 UTC
Permalink
Hi Raphael,

I've used mt.exe in the Windows SDK to update the manifest embedded in an application before. While I've never tried it with a BA generated by burn could you not use it, or a similar tool, to patch the manifest of the BA *after* it is built by Wix?

Daniel Madill


-----Original Message-----
From: Raphael DUCOM [mailto:***@prodware.fr]
Sent: January-11-13 9:23 AM
To: wix-***@lists.sourceforge.net
Subject: Re: [WiX-users] Bootstrapper manifest

Hi Rob,

Can you confirm there is no workaround letting us to put <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> into the BA manifest ?

Waiting for your answer,
Thanks in advance,
Bests,

Raphael DUCOM



Raphael DUCOM
Développeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr

-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 16:44
À : 'wix-***@lists.sourceforge.net'
Objet : RE: Bootstrapper manifest

Rob, I agree with you that all can be made with custom actions, but we have implemented a custom installer which drives the MSI MSP installation with the WiX Engine, and drives our custom installation Task with specific actions which fits better our specific needs:

The reason why we don't use CustomActions and have made the choice to implement a custom boostrapper/installer is the WiX inability to correctly manages multi-instance installations on a single machine with heterogeneous environments for each instance (dependencies, configurations, etc). The way WiX let developers create a multi-instance installer wasn't sufficient four our needs. Moreover we have had the need to implement specific actions for database update (we have a really specific way to make sql schema updates) directly depending on SQL / IIS configuration, then we have had the need to implement a working system in order to correctly configure a IIS and a SQL in a multi-instance mode, without all the actually related problems WiX encounter.

For all these reasons, we have made the choice to only use WiX to drives the msi / msp installations, and have the hand on all the things WiX don't know how to do, or is really too hard to implement and debug with WiX.

Now we have a working system, as soon as the use run the installer with "Run As Administrator", so I'd really like to know if you have an idea to let us give a better UI experience....

Thanks in advance...
Bests,

Raphaël


Re: [WiX-users] Bootstrapper manifest
From: Rob Mensching <***@ro...> - 2013-01-08 15:19
I don't understand why you can't put the operations that modify the machine in a package in the Chain. You say you have to do it in the BA but not why.


On Tue, Jan 8, 2013 at 6:41 AM, Raphael DUCOM <***@...> wrote:

Rob, that's why I said : " I'm working on a boostrapper which really needs elevated privileges in order to completely install our solution. ( I know I normally shouldn't do that, but we don't have choice because of the specific components needed to be install ). "

So, is there a way to alter / driver / update the Bundle manifest before generation or once generated ? On just include a resource file into the Bundle project (as in normal projects), in order to control the executable manifest ?

Please, I understood your point of view, and the fact you have to drive the way people uses WiX, but we only have this option in order to manipulate the elements we need to manipulate. We are in production environments, and using really specific technologies, all is working fine except the fact we have to put a message saying "you must run this "as administrator" because we have no way at the moment to just modify the manifest of the generated bundle executable...

We just need to put a <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> into this manifest... In order to give a "normal" / "usual" user experience... (think about nullsoft for example, I believe there is no restriction at this level)

Hoping you can drive us to a working workaround...

Bests,


--------------------------------
Re: [WiX-users] Bootstrapper manifest
From: Rob Mensching <***@robmensching.com> - 2013-01-08 14:17
Subject: Re: [WiX-users] Bootstrapper manifest

Your BootstrapperApplication should not be modifying machine state at all.
Machine state changes should be in "packages" (MSI, EXE, MSP, etc.) that are listed in the Bundle/Chain element. Your BA can then control which packages are installed.


-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 09:58
À : wix-***@lists.sourceforge.net
Objet : Re: Bootstrapper manifest

Hi Rob,

Many Thanks for your answer, but I believe I didn't give a good explanation...
When you say "put stuff that modifies the machine in the Chain and elevate", I think you mean "using a custom action which elevates" like <CustomAction .... Execute="deferred" Impersonate="no" /> isn't it ?

My scenario is different, I use the BootstrapperApplication class in order to implement our custom installer, and lot of specific actions are implemented inside our UI installer and not as CustomActions. This installer UI also drives the installation of msi via the wix Engine.

So I need a way to elevate the process which instantiate and run the BootstrapperApplication class, not CustomAction. And for instance, I believe the only way is to alter / update the bootstrapper exe manifest.

Is there a way to do that ?

Thanks in advance,
Bests,

Raphael DUCOM,

--------------------------------
Date: Mon, 7 Jan 2013 06:06:41 -0800
From: Rob Mensching <***@robmensching.com>
Subject: Re: [WiX-users] Bootstrapper manifest

Burn will elevate the install much the same way that the Windows Installer elevates the install. Make sure you put all your stuff that modifies the machine (aka: requires elevation) in the Chain and it will be elevated.
Post by Raphael DUCOM
Hello,
I'm working on a boostrapper wich really needs elevated privileges in
order to completly install our solution. (I know I normally should'nt
do that, but we don't have choice because of the specific components
needed to be install).
I'm searching a way to define a specific manifest file for a generated
bootstrapper executable.
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest
-for-Burn-Bootstrapper-td6605859.html
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how
-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html
I have tried embed manifest with mt.exe with no success, same error as
the second post. (mt.exe : general error c101008c: Failed to read the
manifest from the resource of file "C:\ ..... MyInstall_1.0.107.41.exe.manifest".
The binary is not a valid Windows image.) I also have tried the
Elevate() function of BA, which doesn't elevate the context at all.
But when looking in depth to my generated executable with Mitec EXE
Explorer, I found there is a manifest embed into it (you will fin dit
at the end of this mail)
- Is there a way to embed or define a manifest with more recent (3.7)
version of WiX while generating a Bundle EXE ? (with specific candle
or light parameters ?)
- Is it possible to alter or modify the manifest once the bundle
executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate
privileges" ?
Thanks in advance, we are really stuck on this...
Bests,
Raphael DUCOM
________________________________
David Watson
2013-01-11 15:37:19 UTC
Permalink
You could move all your configuration steps and associated UI into a
stand-alone elevated .exe and add it to the bundle to be executed at the end,
or even install this configuration tool and spawn it after the installation
is complete. This would also allow you to re-configure your application
without recourse to the installer.

Dave

-----Original Message-----
From: Daniel Madill [mailto:***@Quanser.com]
Sent: 11 January 2013 14:35
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Bootstrapper manifest

Hi Raphael,

I've used mt.exe in the Windows SDK to update the manifest embedded in an
application before. While I've never tried it with a BA generated by burn
could you not use it, or a similar tool, to patch the manifest of the BA
*after* it is built by Wix?

Daniel Madill


-----Original Message-----
From: Raphael DUCOM [mailto:***@prodware.fr]
Sent: January-11-13 9:23 AM
To: wix-***@lists.sourceforge.net
Subject: Re: [WiX-users] Bootstrapper manifest

Hi Rob,

Can you confirm there is no workaround letting us to put
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
into the BA manifest ?

Waiting for your answer,
Thanks in advance,
Bests,

Raphael DUCOM



Raphael DUCOM
Développeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr

-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 16:44
À : 'wix-***@lists.sourceforge.net'
Objet : RE: Bootstrapper manifest

Rob, I agree with you that all can be made with custom actions, but we have
implemented a custom installer which drives the MSI MSP installation with the
WiX Engine, and drives our custom installation Task with specific actions
which fits better our specific needs:

The reason why we don't use CustomActions and have made the choice to
implement a custom boostrapper/installer is the WiX inability to correctly
manages multi-instance installations on a single machine with heterogeneous
environments for each instance (dependencies, configurations, etc). The way
WiX let developers create a multi-instance installer wasn't sufficient four
our needs. Moreover we have had the need to implement specific actions for
database update (we have a really specific way to make sql schema updates)
directly depending on SQL / IIS configuration, then we have had the need to
implement a working system in order to correctly configure a IIS and a SQL in
a multi-instance mode, without all the actually related problems WiX
encounter.

For all these reasons, we have made the choice to only use WiX to drives the
msi / msp installations, and have the hand on all the things WiX don't know
how to do, or is really too hard to implement and debug with WiX.

Now we have a working system, as soon as the use run the installer with "Run
As Administrator", so I'd really like to know if you have an idea to let us
give a better UI experience....

Thanks in advance...
Bests,

Raphaël


Re: [WiX-users] Bootstrapper manifest
From: Rob Mensching <***@ro...> - 2013-01-08 15:19
I don't understand why you can't put the operations that modify the machine
in a package in the Chain. You say you have to do it in the BA but not why.


On Tue, Jan 8, 2013 at 6:41 AM, Raphael DUCOM <***@...> wrote:

Rob, that's why I said : " I'm working on a boostrapper which really needs
elevated privileges in order to completely install our solution. ( I know I
normally shouldn't do that, but we don't have choice because of the specific
components needed to be install ). "

So, is there a way to alter / driver / update the Bundle manifest before
generation or once generated ? On just include a resource file into the
Bundle project (as in normal projects), in order to control the executable
manifest ?

Please, I understood your point of view, and the fact you have to drive the
way people uses WiX, but we only have this option in order to manipulate the
elements we need to manipulate. We are in production environments, and using
really specific technologies, all is working fine except the fact we have to
put a message saying "you must run this "as administrator" because we have no
way at the moment to just modify the manifest of the generated bundle
executable...

We just need to put a <requestedExecutionLevel level="requireAdministrator"
uiAccess="false" /> into this manifest... In order to give a "normal" /
"usual" user experience... (think about nullsoft for example, I believe there
is no restriction at this level)

Hoping you can drive us to a working workaround...

Bests,


--------------------------------
Re: [WiX-users] Bootstrapper manifest
From: Rob Mensching <***@robmensching.com> - 2013-01-08 14:17
Subject: Re: [WiX-users] Bootstrapper manifest

Your BootstrapperApplication should not be modifying machine state at all.
Machine state changes should be in "packages" (MSI, EXE, MSP, etc.) that are
listed in the Bundle/Chain element. Your BA can then control which packages
are installed.


-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 09:58
À : wix-***@lists.sourceforge.net
Objet : Re: Bootstrapper manifest

Hi Rob,

Many Thanks for your answer, but I believe I didn't give a good
explanation...
When you say "put stuff that modifies the machine in the Chain and elevate",
I think you mean "using a custom action which elevates" like <CustomAction
.... Execute="deferred" Impersonate="no" /> isn't it ?

My scenario is different, I use the BootstrapperApplication class in order to
implement our custom installer, and lot of specific actions are implemented
inside our UI installer and not as CustomActions. This installer UI also
drives the installation of msi via the wix Engine.

So I need a way to elevate the process which instantiate and run the
BootstrapperApplication class, not CustomAction. And for instance, I believe
the only way is to alter / update the bootstrapper exe manifest.

Is there a way to do that ?

Thanks in advance,
Bests,

Raphael DUCOM,

--------------------------------
Date: Mon, 7 Jan 2013 06:06:41 -0800
From: Rob Mensching <***@robmensching.com>
Subject: Re: [WiX-users] Bootstrapper manifest

Burn will elevate the install much the same way that the Windows Installer
elevates the install. Make sure you put all your stuff that modifies the
machine (aka: requires elevation) in the Chain and it will be elevated.
Post by Raphael DUCOM
Hello,
I'm working on a boostrapper wich really needs elevated privileges in
order to completly install our solution. (I know I normally should'nt
do that, but we don't have choice because of the specific components
needed to be install).
I'm searching a way to define a specific manifest file for a generated
bootstrapper executable.
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest
-for-Burn-Bootstrapper-td6605859.html
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how
-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html
I have tried embed manifest with mt.exe with no success, same error as
the second post. (mt.exe : general error c101008c: Failed to read the
manifest from the resource of file "C:\ .....
MyInstall_1.0.107.41.exe.manifest".
Post by Raphael DUCOM
The binary is not a valid Windows image.) I also have tried the
Elevate() function of BA, which doesn't elevate the context at all.
But when looking in depth to my generated executable with Mitec EXE
Explorer, I found there is a manifest embed into it (you will fin dit
at the end of this mail)
- Is there a way to embed or define a manifest with more recent (3.7)
version of WiX while generating a Bundle EXE ? (with specific candle
or light parameters ?)
- Is it possible to alter or modify the manifest once the bundle
executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate
privileges" ?
Thanks in advance, we are really stuck on this...
Bests,
Raphael DUCOM
________________________________


-----------------------------------------------------------------------------
-
Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more.
Get web development skills now with LearnDevNow -
350+ hours of step-by-step video tutorials by Microsoft MVPs and experts.
SALE $99.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122812
_______________________________________________
WiX-users mailing list
WiX-***@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

-----------------------------------------------------------------------------
-
Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more.
Get web development skills now with LearnDevNow -
350+ hours of step-by-step video tutorials by Microsoft MVPs and experts.
SALE $99.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122812
_______________________________________________
WiX-users mailing list
WiX-***@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users
SDL PLC confidential, all rights reserved.
If you are not the intended recipient of this mail SDL requests and requires that you delete it without acting upon or copying any of its contents, and we further request that you advise us.
SDL PLC is a public limited company registered in England and Wales. Registered number: 02675207.
Registered address: Globe House, Clivemont Road, Maidenhead, Berkshire SL6 7DY, UK.
Rob Mensching
2013-01-11 18:00:50 UTC
Permalink
Not a supported scenario, never tried. If you get it working, it may break
in the future. <smile/>
Post by Raphael DUCOM
Hi Rob,
Can you confirm there is no workaround letting us to put
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
into the BA manifest ?
Waiting for your answer,
Thanks in advance,
Bests,
Raphael DUCOM
Raphael DUCOM
Développeur
Tel : | Fax : +33 979 999 341
Web : www.prodware.fr
-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 16:44
Objet : RE: Bootstrapper manifest
Rob, I agree with you that all can be made with custom actions, but we
have implemented a custom installer which drives the MSI MSP installation
with the WiX Engine, and drives our custom installation Task with specific
The reason why we don't use CustomActions and have made the choice to
implement a custom boostrapper/installer is the WiX inability to correctly
manages multi-instance installations on a single machine with heterogeneous
environments for each instance (dependencies, configurations, etc). The way
WiX let developers create a multi-instance installer wasn't sufficient four
our needs. Moreover we have had the need to implement specific actions for
database update (we have a really specific way to make sql schema updates)
directly depending on SQL / IIS configuration, then we have had the need to
implement a working system in order to correctly configure a IIS and a SQL
in a multi-instance mode, without all the actually related problems WiX
encounter.
For all these reasons, we have made the choice to only use WiX to drives
the msi / msp installations, and have the hand on all the things WiX don't
know how to do, or is really too hard to implement and debug with WiX.
Now we have a working system, as soon as the use run the installer with
"Run As Administrator", so I'd really like to know if you have an idea to
let us give a better UI experience....
Thanks in advance...
Bests,
Raphaël
Re: [WiX-users] Bootstrapper manifest
I don't understand why you can't put the operations that modify the
machine in a package in the Chain. You say you have to do it in the BA but
not why.
Rob, that's why I said : " I'm working on a boostrapper which really needs
elevated privileges in order to completely install our solution. ( I know I
normally shouldn't do that, but we don't have choice because of the
specific components needed to be install ). "
So, is there a way to alter / driver / update the Bundle manifest before
generation or once generated ? On just include a resource file into the
Bundle project (as in normal projects), in order to control the executable
manifest ?
Please, I understood your point of view, and the fact you have to drive
the way people uses WiX, but we only have this option in order to
manipulate the elements we need to manipulate. We are in production
environments, and using really specific technologies, all is working fine
except the fact we have to put a message saying "you must run this "as
administrator" because we have no way at the moment to just modify the
manifest of the generated bundle executable...
We just need to put a <requestedExecutionLevel
level="requireAdministrator" uiAccess="false" /> into this manifest... In
order to give a "normal" / "usual" user experience... (think about nullsoft
for example, I believe there is no restriction at this level)
Hoping you can drive us to a working workaround...
Bests,
--------------------------------
Re: [WiX-users] Bootstrapper manifest
Subject: Re: [WiX-users] Bootstrapper manifest
Your BootstrapperApplication should not be modifying machine state at all.
Machine state changes should be in "packages" (MSI, EXE, MSP, etc.) that
are listed in the Bundle/Chain element. Your BA can then control which
packages are installed.
-----Message d'origine-----
De : Raphael DUCOM
Envoyé : mardi 8 janvier 2013 09:58
Objet : Re: Bootstrapper manifest
Hi Rob,
Many Thanks for your answer, but I believe I didn't give a good explanation...
When you say "put stuff that modifies the machine in the Chain and
elevate", I think you mean "using a custom action which elevates" like
<CustomAction .... Execute="deferred" Impersonate="no" /> isn't it ?
My scenario is different, I use the BootstrapperApplication class in order
to implement our custom installer, and lot of specific actions are
implemented inside our UI installer and not as CustomActions. This
installer UI also drives the installation of msi via the wix Engine.
So I need a way to elevate the process which instantiate and run the
BootstrapperApplication class, not CustomAction. And for instance, I
believe the only way is to alter / update the bootstrapper exe manifest.
Is there a way to do that ?
Thanks in advance,
Bests,
Raphael DUCOM,
--------------------------------
Date: Mon, 7 Jan 2013 06:06:41 -0800
Subject: Re: [WiX-users] Bootstrapper manifest
Burn will elevate the install much the same way that the Windows Installer
elevates the install. Make sure you put all your stuff that modifies the
machine (aka: requires elevation) in the Chain and it will be elevated.
Post by Raphael DUCOM
Hello,
I'm working on a boostrapper wich really needs elevated privileges in
order to completly install our solution. (I know I normally should'nt
do that, but we don't have choice because of the specific components
needed to be install).
I'm searching a way to define a specific manifest file for a generated
bootstrapper executable.
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Manifest
-for-Burn-Bootstrapper-td6605859.html
-
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Burn-how
-to-elevate-BA-Manifest-for-Burn-Bootstrapper-Continue-td6855345.html
I have tried embed manifest with mt.exe with no success, same error as
the second post. (mt.exe : general error c101008c: Failed to read the
manifest from the resource of file "C:\ .....
MyInstall_1.0.107.41.exe.manifest".
Post by Raphael DUCOM
The binary is not a valid Windows image.) I also have tried the
Elevate() function of BA, which doesn't elevate the context at all.
But when looking in depth to my generated executable with Mitec EXE
Explorer, I found there is a manifest embed into it (you will fin dit
at the end of this mail)
- Is there a way to embed or define a manifest with more recent (3.7)
version of WiX while generating a Bundle EXE ? (with specific candle
or light parameters ?)
- Is it possible to alter or modify the manifest once the bundle
executable is generated ? (with mage.exe ?)
- Is there a workaround other than "no, you just don't have to elevate
privileges" ?
Thanks in advance, we are really stuck on this...
Bests,
Raphael DUCOM
________________________________
------------------------------------------------------------------------------
Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and
much more. Get web development skills now with LearnDevNow -
350+ hours of step-by-step video tutorials by Microsoft MVPs and experts.
http://p.sf.net/sfu/learnmore_122812
_______________________________________________
WiX-users mailing list
https://lists.sourceforge.net/lists/listinfo/wix-users
Continue reading on narkive:
Search results for '[WiX-users] Bootstrapper manifest' (Questions and Answers)
4
replies
Can You Pause the Download of Half-Life 2 Capture the Flag?
started 2009-02-22 20:57:07 UTC
software
Loading...