Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I'm looking at message queueing for client/server communication in a new product. One of the problems with MSMQ is that it's not installed by default on most Windows desktops, and that it doesn't seem to be available as a redistributable for inclusion in our MSI.

Given that the administrator will have access to Microsoft SMS or ConfigMgr or similar, how do I persuade them that it's easy to install? That is: how do I automate installation of the MSMQ components?

share|improve this question

1 Answer 1

up vote 1 down vote accepted

This should get you started:

You will need to do the following to get an unattended installation of MSQM:

  1. Create the files InstallMSMQ.bat and MSMQ.txt based on the text below
  2. Have an ISO of the OS that your using available via a network share called Iso Library
  3. Have Pismo File Mount downloaded and available via a network share called resource
  4. Run the script something like PSExec that connects to the machine and tells the machine to run the script from a network share

InstallMSMQ.bat

:Variables
:: Path Variables
SET IsoPath=\\server1\ISO Library
SET ResourcePath=\\server2\Resource
SET ScriptPath=%~dp0
SET ScriptPath=%ScriptPath:~0,-1%
SET MountPath=m:

:: Application Variables
SET PismoMount=pfm mount -m %MountPath%
SET PismoUnMount=pfm unmount

echo -Installing Pismo File Mount
"%ResourcePath%\pfmap-051.exe" /q

echo Configuring Windows install location source path
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\ /v "SourcePath" /t REG_SZ /d %MountPath%\ /f
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Setup\ /v "ServicePackSourcePath" /t REG_SZ /d %MountPath%\ /f

sysocmgr /i:%WINDIR%\inf\sysoc.inf /u:"%ScriptPath%\MSMQ.txt" /x /q

MSMQ.txt

[Version]  
Signature = "$Windows NT$"  

[Global]  
FreshMode = Custom  
MaintenanceMode = RemoveAll  
UpgradeMode = UpgradeOnly  

[Components]  
msmq = on
msmq_Common = on
msmq_Core = on
msmq_TriggersService = on
msmq_HTTPSupport = off
msmq_LocalStorage = on 
msmq_ADIntegrated = off

[Msmq]  
ControllerServer=  
SupportingServer=  
ServerAuthenticationOnly=  
Site=

If you need more information about the various parts of the script let me know and I will try to write up something that explains all the parts.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.