Discussion:
[WiX-users] Enabling platform features during install
Stephen I. Woolhead
2014-01-17 18:11:05 UTC
Permalink
Hi, following up on an issue that came up in another thread, we have the need to enable platform features such as MSMQ during our install. At the moment we do this during install with dism.exe in a custom action. This so far has worked well for us but it was hinted this was not ideal.

Does anyone have any guidance about enabling platform features during install that they could share?

Cheers,

Stephen.
Phil Wilson
2014-01-17 18:42:57 UTC
Permalink
The DISM API might be able to do this - it says it works for an online
Windows installation. The key might be to do the DismOpenSession()
with DISM_ONLINE_IMAGE and then use something like DismEnableFeature.
I've never tried it though,

There's often some concern about doing this without making it clear to
the customer that you're going to do it. IT people frequently have set
configurations for security and management reasons.
Phil Wilson
Post by Stephen I. Woolhead
Hi, following up on an issue that came up in another thread, we have the need to enable platform features such as MSMQ during our install. At the moment we do this during install with dism.exe in a custom action. This so far has worked well for us but it was hinted this was not ideal.
Does anyone have any guidance about enabling platform features during install that they could share?
Cheers,
Stephen.
------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
https://lists.sourceforge.net/lists/listinfo/wix-users
Loïc Delambre
2014-01-20 13:16:45 UTC
Permalink
Hi,

I used a command line tool embedded in my burn package like a prerequisite, this tool calls pkgmgr.exe in order to enable Windows features.

<ExePackage Id="IISRoleOcsSetupServer"
DisplayName="Web Server (IIS) and Print roles"
Cache="no"
Compressed="no"
PerMachine="yes"
Permanent="yes"
Vital="yes"
Name="redist\WRFI45.exe"
SourceFile="\\server\GIT\Redist\WRFI45.exe"
InstallCommand="IIS-WebServerRole;WAS-WindowsActivationService;WAS-ProcessModel;WAS-ConfigurationAPI;IIS-ISAPIExtensions;IIS-ASP;IIS-Security;IIS-BasicAuthentication;IIS-WindowsAuthentication;IIS-WebServerManagementTools;IIS-Metabase;IIS-IIS6ManagementCompatibility;IIS-HttpRedirect;IIS-ManagementConsole;Printing-Server-Role"
InstallCondition="(VersionNT &gt;= v6.0 AND MsiNTProductType &gt; 1)"
DetectCondition="iis7www AND iis7asp AND iis7static AND iis7winauth AND iis7console AND iis7metabase">
<ExitCode Value ="3010" Behavior="forceReboot" />
</ExePackage>

Regards,
Loïc Delambre

-----Message d'origine-----
De : Stephen I. Woolhead [mailto:***@gtl.biz]
Envoyé : vendredi 17 janvier 2014 19:11
À : General discussion about the WiX toolset.
Objet : [WiX-users] Enabling platform features during install

Hi, following up on an issue that came up in another thread, we have the need to enable platform features such as MSMQ during our install. At the moment we do this during install with dism.exe in a custom action. This so far has worked well for us but it was hinted this was not ideal.

Does anyone have any guidance about enabling platform features during install that they could share?

Cheers,

Stephen.
John Cooper
2014-01-21 16:29:39 UTC
Permalink
Instead of MsiNTProductType (the MSI property), the Burn variable NTProductType should be used. Otherwise, the InstallCondition will evaluate to False.

--
John Merryweather Cooper
Build & Install Engineer - ESA
Jack Henry & Associates, Inc.®
Shawnee Mission, KS  66227
Office:  913-341-3434 x791011
***@jackhenry.com
www.jackhenry.com



-----Original Message-----
From: Loïc Delambre [mailto:***@doxense.com]
Sent: Monday, January 20, 2014 7:17 AM
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] Enabling platform features during install

Hi,

I used a command line tool embedded in my burn package like a prerequisite, this tool calls pkgmgr.exe in order to enable Windows features.

<ExePackage Id="IISRoleOcsSetupServer"
DisplayName="Web Server (IIS) and Print roles"
Cache="no"
Compressed="no"
PerMachine="yes"NT
Permanent="yes"
Vital="yes"
Name="redist\WRFI45.exe"
SourceFile="\\server\GIT\Redist\WRFI45.exe"
InstallCommand="IIS-WebServerRole;WAS-WindowsActivationService;WAS-ProcessModel;WAS-ConfigurationAPI;IIS-ISAPIExtensions;IIS-ASP;IIS-Security;IIS-BasicAuthentication;IIS-WindowsAuthentication;IIS-WebServerManagementTools;IIS-Metabase;IIS-IIS6ManagementCompatibility;IIS-HttpRedirect;IIS-ManagementConsole;Printing-Server-Role"
InstallCondition="(VersionNT &gt;= v6.0 AND MsiNTProductType &gt; 1)"
DetectCondition="iis7www AND iis7asp AND iis7static AND iis7winauth AND iis7console AND iis7metabase">
<ExitCode Value ="3010" Behavior="forceReboot" />
</ExePackage>

Regards,
Loïc Delambre

-----Message d'origine-----
De : Stephen I. Woolhead [mailto:***@gtl.biz] Envoyé : vendredi 17 janvier 2014 19:11 À : General discussion about the WiX toolset.
Objet : [WiX-users] Enabling platform features during install

Hi, following up on an issue that came up in another thread, we have the need to enable platform features such as MSMQ during our install. At the moment we do this during install with dism.exe in a custom action. This so far has worked well for us but it was hinted this was not ideal.

Does anyone have any guidance about enabling platform features during install that they could share?

Cheers,

Stephen.
------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-***@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-***@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users
NOTICE: This electronic mail message and any files transmitted with it are intended
exclusively for the individual or entity to which it is addressed. The message,
together with any attachment, may contain confidential and/or privileged information.
Any unauthorized review, use, printing, saving, copying, disclosure or distribution
is strictly prohibited. If you have received this message in error, please
immediately advise the sender by reply email and delete all copies.
Phil Wilson
2014-01-21 18:52:54 UTC
Permalink
The "not ideal" qualities of Dism.exe may also apply to running
pkgmgr.exe - it's an external exe that may show UI inappropriately
(silent installs) and not allow graceful error reporting other than
"the program run as a custom action failed", also whether it matters
that there is both an x86 and x64 version etc.
Phil Wilson
Post by John Cooper
Instead of MsiNTProductType (the MSI property), the Burn variable NTProductType should be used. Otherwise, the InstallCondition will evaluate to False.
--
John Merryweather Cooper
Build & Install Engineer - ESA
Jack Henry & Associates, Inc.®
Shawnee Mission, KS 66227
Office: 913-341-3434 x791011
www.jackhenry.com
-----Original Message-----
Sent: Monday, January 20, 2014 7:17 AM
To: General discussion about the WiX toolset.
Subject: Re: [WiX-users] Enabling platform features during install
Hi,
I used a command line tool embedded in my burn package like a prerequisite, this tool calls pkgmgr.exe in order to enable Windows features.
<ExePackage Id="IISRoleOcsSetupServer"
DisplayName="Web Server (IIS) and Print roles"
Cache="no"
Compressed="no"
PerMachine="yes"NT
Permanent="yes"
Vital="yes"
Name="redist\WRFI45.exe"
SourceFile="\\server\GIT\Redist\WRFI45.exe"
InstallCommand="IIS-WebServerRole;WAS-WindowsActivationService;WAS-ProcessModel;WAS-ConfigurationAPI;IIS-ISAPIExtensions;IIS-ASP;IIS-Security;IIS-BasicAuthentication;IIS-WindowsAuthentication;IIS-WebServerManagementTools;IIS-Metabase;IIS-IIS6ManagementCompatibility;IIS-HttpRedirect;IIS-ManagementConsole;Printing-Server-Role"
DetectCondition="iis7www AND iis7asp AND iis7static AND iis7winauth AND iis7console AND iis7metabase">
<ExitCode Value ="3010" Behavior="forceReboot" />
</ExePackage>
Regards,
Loïc Delambre
-----Message d'origine-----
Objet : [WiX-users] Enabling platform features during install
Hi, following up on an issue that came up in another thread, we have the need to enable platform features such as MSMQ during our install. At the moment we do this during install with dism.exe in a custom action. This so far has worked well for us but it was hinted this was not ideal.
Does anyone have any guidance about enabling platform features during install that they could share?
Cheers,
Stephen.
------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
https://lists.sourceforge.net/lists/listinfo/wix-users
------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
https://lists.sourceforge.net/lists/listinfo/wix-users
NOTICE: This electronic mail message and any files transmitted with it are intended
exclusively for the individual or entity to which it is addressed. The message,
together with any attachment, may contain confidential and/or privileged information.
Any unauthorized review, use, printing, saving, copying, disclosure or distribution
is strictly prohibited. If you have received this message in error, please
immediately advise the sender by reply email and delete all copies.
------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
https://lists.sourceforge.net/lists/listinfo/wix-users
Phill Hogland
2014-01-23 14:41:43 UTC
Permalink
I above been reading up on the dism api, and while I have not gotten very
far, one thing that confuses me is the requirement stated in the following
link of:
"The binary files for your customized solutions must be saved in the same
directory as the DISM binaries installed by the Windows ADK. For example, if
you are running Windows 8 (x64) and the Windows ADK for Windows 8.1, your
customized solutions binaries must be located in c:\Program Files
(x86)\Windows Kits\8.1\Assessment and Deployment Kit\Deployment
Tools\amd64\DISM."

So if I want to develope a CA which calls the dism API, I assume that the CA
gets extracted to a folder in the %temp% location. How does one comply with
the above requirement or does it even matter?



--
View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Enabling-platform-features-during-install-tp7591862p7591980.html
Sent from the wix-users mailing list archive at Nabble.com.
Blair Murri
2014-01-24 05:50:38 UTC
Permalink
That directory does not exist on my Win8.1 box (where I have not yet installed the ADK). So, that can’t be the runtime requirement, unless the API cannot be used outside of generating ISOs/DVDs.






Blair





From: Phill Hogland
Sent: ‎Thursday‎, ‎January‎ ‎23‎, ‎2014 ‎6‎:‎45‎ ‎AM
To: General discussion for Windows Installer XML toolset.





I above been reading up on the dism api, and while I have not gotten very
far, one thing that confuses me is the requirement stated in the following
link of:
"The binary files for your customized solutions must be saved in the same
directory as the DISM binaries installed by the Windows ADK. For example, if
you are running Windows 8 (x64) and the Windows ADK for Windows 8.1, your
customized solutions binaries must be located in c:\Program Files
(x86)\Windows Kits\8.1\Assessment and Deployment Kit\Deployment
Tools\amd64\DISM."

So if I want to develope a CA which calls the dism API, I assume that the CA
gets extracted to a folder in the %temp% location. How does one comply with
the above requirement or does it even matter?
--
View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Enabling-platform-features-during-install-tp7591862p7591980.html
Sent from the wix-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-***@lists.sourceforge.net
https://
Phill Hogland
2014-01-24 16:46:10 UTC
Permalink
I do not have the ADK or the path either. And the API docs talk about
creating a 'application' which will modify /online images. Here is a
sample:
http://msdn.microsoft.com/en-us/library/windows/desktop/hh824804.aspx

I am preparing a CA to test pieces of this code relating to the query of a
feature status, as a test of the concept. I am not quite ready to try and
compile it without or with the ADK, but I hope to have a better idea later
today after I work on some other issues.



--
View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Enabling-platform-features-during-install-tp7591862p7592047.html
Sent from the wix-users mailing list archive at Nabble.com.
Blair Murri
2014-01-28 07:53:31 UTC
Permalink
from: http://msdn.microsoft.com/library/windows/desktop/hh825838.aspx


“You can develop applications by using the DISM API on any computer where you have installed the Windows® Assessment and Deployment Kit (Windows ADK).”



So, I interpret that as saying that you can’t statically link the DISM API and use it during an installation (unless you effectively make the ADK a prerequisite). That nixes it for my use cases.




Blair





From: Phill Hogland
Sent: ‎Friday‎, ‎January‎ ‎24‎, ‎2014 ‎8‎:‎49‎ ‎AM
To: General discussion for Windows Installer XML toolset.





I do not have the ADK or the path either. And the API docs talk about
creating a 'application' which will modify /online images. Here is a
sample:
http://msdn.microsoft.com/en-us/library/windows/desktop/hh824804.aspx

I am preparing a CA to test pieces of this code relating to the query of a
feature status, as a test of the concept. I am not quite ready to try and
compile it without or with the ADK, but I hope to have a better idea later
today after I work on some other issues.
--
View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Enabling-platform-features-during-install-tp7591862p7592047.html
Sent from the wix-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-***@lists.sourceforge.net
https://lists.sourceforge
Phill Hogland
2014-01-28 16:10:42 UTC
Permalink
Yes, that would be my feeling as well. However it looks like dismapi.dll is
included in Windows 8 or later. But for pre-Windows 8, it seems that the
ADK must be installed, which won't fly here either. I'm still
experimenting.



--
View this message in context: http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Enabling-platform-features-during-install-tp7591862p7592160.html
Sent from the wix-users mailing list archive at Nabble.com.

Loading...