Extract Files from an MSI Installer without a full install
Have you ever wanted to get at some assemblies in an .NET MSI installer, but you either didn't want to do a full install, or there is some condition in the MSI Installer that doesn't let you install it (such as, you need such and such program, version X, and you do not have it on your machine)?
You can do an Administrative installation using MSIEXEC.EXE and the /a command - line switch:
The administrative installation runs only basic actions like InstallFiles in the AdminExecuteSequence table.
You cam also run this, passing the command to start /wait which will block until msiexec.exe completes and returns:
start /wait msiexec /a product.msi TARGETDIR="%TMP%\Product" /qn
Ah! Now I can fire up Reflector and look inside those little boogers!
N.B. A commenter mentions "LessMSIrables" a tool to extract files from MSI's. Here is the actual link:
http://blogs.pingpoet.com/overflow/archive/2005/06/02/2449.aspx
You can do an Administrative installation using MSIEXEC.EXE and the /a command - line switch:
The administrative installation runs only basic actions like InstallFiles in the AdminExecuteSequence table.
You cam also run this, passing the command to start /wait which will block until msiexec.exe completes and returns:
start /wait msiexec /a product.msi TARGETDIR="%TMP%\Product" /qn
Ah! Now I can fire up Reflector and look inside those little boogers!
N.B. A commenter mentions "LessMSIrables" a tool to extract files from MSI's. Here is the actual link:
http://blogs.pingpoet.com/overflow/archive/2005/06/02/2449.aspx
Have you seen the utility "LessMSIerables" (Google to find it)? A cool tool to let you browse and extract contents of MSI files.
ReplyDeleteThanks for the info. I'll update the post with a link, since this comments thing mangles long urls.
ReplyDeleteCan anyone upload "LessMSIerables" because the orgin site is down...thanks
ReplyDeleteI greatly prefer your method using the command line to downloading yet another application and installing it just to do one little thing. I don't have to extract MSI's very often so its ridiculous to install an application to accomplish this maybe twice in a year. I found a mention of the msiexec elsewhere but your start/wait did the trick where just using the /a didn't work.
ReplyDeleteI uploaded "LessMSIerables" to RS:
ReplyDeletehttp://rapidshare.com/files/73338507/LessMSIerables-20051110.zip
Thanks for the info, it really helped me a lot !
ReplyDelete