[PATCH] cmd.exe: MSI packages execution implemented
Rolf Kalbermatter
r.kalbermatter at hccnet.nl
Thu May 8 13:07:55 CDT 2008
Vitaly Perov [mailto:vitperov at etersoft.ru] wrote:
> I haven't found any information about how it implemented in
> Windows. I use the similar *.com and *.bat way of execution
> *.msi. I don't sure, that it is correct, but it works!
> I'll be grateful if you have any information/links about how
> it should work
What about the normal Windows file extension registry?
HKCR\.msi REG_SZ Msi.Package
HKCR\Msi.Package REG_SZ Windows Installer
Package
HKCR\Msi.Package EditFlags REG_BINARY 00 00 00 01
HKCR\Msi.Package FriendlyTypeName REG_EXPAND_SZ
@%SystemRoot%\System32\msi.dll,-34
HKCR\Msi.Package\DefaultIcon REG_SZ
C:\WINDOWS\system32\msiexec.exe,0
HKCR\Msi.Package\shell REG_SZ Open,Repair,Uninstall
This for Install:
HKCR\Msi.Package\shell\Open REG_SZ &Install
HKCR\Msi.Package\shell\Open MUIVerb REG_EXAPND_SZ
@%SystemRoot%\System32\msi.dll,-36
HKCR\Msi.Package\shell\Open\command REG_EXPAND_SZ
"%SystemRoot%\System32\msiexec.exe" /i "%1" %*
And similar for Repair and Uninstall!
I would think that at some point cmd.exe just should call ShellExecuteEx for
file types
it doesn't know about and get the registry handling for free in that way.
Possibly the
import of shell32 would need to be done dynamically or delayed in that case.
Rolf Kalbermatter
More information about the wine-devel
mailing list