Jump to content

Problem with starting of Msiserver Service


T D

Recommended Posts

Windows installer service is set to manual which means it kicks in when needed. But when I open a msi file, it doesn't open, and when i look, the service isn't started. So is there anyway to open a msi file and start msiserver at the same time?

I thought of using a batch, something like

CMDOW @ /HID
start /wait net start msiserver
msiexec /i "%1"
exit

And put it in the context menu of msi's and msp's so it by default, it opens with this batch and not msiexec (at least not until the service is started) but with some msi's that have a bootstrap installer, ie you have to click an exe to open the msi, there's no way of using this batch to start the service and launch the exe. You can't set a exe to open with something. Can you?

Any suggestions will be welcome.

Edit: i don't want to keep on having to type net start msiserver at the "run" prompt, in case that's what anyone was thinking.

Edited by T D
Link to comment
Share on other sites


with some msi's that have a bootstrap installer, ie you have to click an exe to open the msi, there's no way of using this batch to start the service and launch the exe. You can't set a exe to open with something. Can you?

This guy managed to extract them on the fly, haven't really dug into the coding or anything to find out how, but I've used it a few times, and it seems to work with Msi's that require triggers. It just extracts the Msi's content to a designated folder.

Link to comment
Share on other sites

So basically, you can use the msi w/o installing it? Juz running it from the folder? I know of Uni Extractor but I don't actually use it. Now I can make a batch and put it in the context to extract the msi and open the folder. Thx. Even though it's not a tackle to the actual problem, it's a solution so thx.

Any other ideas about starting msiserver?

Link to comment
Share on other sites

I'm not sure what the point would be, unless it's to bypass the setup.exe used by the program.msi. Even then, most of those you can just write a setup.ini to designate certain variables. Any stand-alone .msi starts the Installer service when you click it.

I am very curious as to the application of this project. Not being skeptical by any means, just genuinely intrigued.

By the way, UniExtractor uses E_WISE to decompile the .msi, you can find the source code (Pascal) here.

Also, you've likely already played with them, but here are the parameters that apply to msiexec.exe:

Windows ® Installer. V 3.01.4000.1823 

msiexec /Option <Required Parameter> [Optional Parameter]

Install Options
</package | /i> <Product.msi>
Installs or configures a product
/a <Product.msi>
Administrative install - Installs a product on the netwo
/j<u|m> <Product.msi> [/t <Transform List>] [/g <Language ID
Advertises a product - m to all users, u to current use
</uninstall | /x> <Product.msi | ProductCode>

Uninstalls the product
Display Options
/quiet
Quiet mode, no user interaction
/passive
Unattended mode - progress bar only
/q[n|b|r|f]
Sets user interface level
n - No UI
b - Basic UI
r - Reduced UI
f - Full UI (default)
/help
Help information
Restart Options
/norestart
Do not restart after the installation is complete
/promptrestart
Prompts the user for restart if necessary
/forcerestart
Always restart the computer after installation
Logging Options
/l[i|w|e|a|r|u|c|m|o|p|v|x|+|!|*] <LogFile>
i - Status messages
w - Nonfatal warnings
e - All error messages
a - Start up of actions
r - Action-specific records
u - User requests
c - Initial UI parameters
m - Out-of-memory or fatal exit information
o - Out-of-disk-space messages
p - Terminal properties
v - Verbose output
x - Extra debugging information
+ - Append to existing log file
! - Flush each line to the log
* - Log all information, except for v and x options
/log <LogFile>
Equivalent of /l* <LogFile>
Update Options
/update <Update1.msp>[;Update2.msp]
Applies update(s)
/uninstall <PatchCodeGuid>[;Update2.msp] /package <Produ
Remove update(s) for a product
Repair Options
/f[p|e|c|m|s|o|d|a|u|v] <Product.msi | ProductCode>
Repairs a product
p - only if file is missing
o - if file is missing or an older version is installed (def
e - if file is missing or an equal or older version is inst
d - if file is missing or a different version is installed
c - if file is missing or checksum does not match the
a - forces all files to be reinstalled
u - all required user-specific registry entries (default)

m - all required computer-specific registry entries (def
s - all existing shortcuts (default)
v - runs from source and recaches local package
Setting Public Properties
[PROPERTY=PropertyValue]

Consult the Windows ® Installer SDK for additional documentation on the
command line syntax.

Copyright © Microsoft Corporation. All rights reserved.
Portions of this software are based in part on the work of the Independent JPEG Group.

Link to comment
Share on other sites

None of my standalone msi's start the msiserver service and that's why i asked for a workaround. And it's not a project but if anyone wants it the solution will be here.

And remember, i can see those parameters everytime just by running the command "msiexec".

So I'll use my inefficient batch (maybe I'll compile it to an exe so it's completely hidden). But what about bootstrap required installers?

Edited by T D
Link to comment
Share on other sites

With every format, even on virtual pc this happens.

@Aegis but I can start it manually, by start>run>net start msiserver

I set it to automatic in services.msc but it stops after a few minutes.

Link to comment
Share on other sites

I set it to automatic in services.msc but it stops after a few minutes.

If you used nLite on your install (I'm guessing you did), then you know where to look for more information. ;)

Automatic doesn't necessarily mean that the service runs all the time. For example, the Computer Browser service will stop running if it doesn't need to be running - likewise with the Windows Installer service. If there's nothing to install, why does it run?

Link to comment
Share on other sites

Yes, it can still start up, but it won't start up when it needs to because of that missing service. I think the service was the DCOM Server Process Launcher...not sure, but worth a try to enable it and see if that helps.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...