Trace-MsiInstallation
Zkousim prakticky nemozne, nainstalovat daily build Visual Studia 2008 na Windows Server 2008 Beta3. Uz tam mam i June CTP SQL Serveru 2008, ale .NET Framework 3.5 se ne a ne nainstalovat. A pres to nejede vlak. Protoze se to muze hodit i jindy, napsal jsem si podle navodu Aarona Stebnera jednoduchy skriptik, ktery zapne machine-wide logovani Windows Installeru, spusti instalaci a po skonceni vypise soubory ktere Windows Installer vytvoril v $Env:Temp. Mimochodem, kouknete na ten blog, zda se ze je tam vic uzitecnych informaci.
function Trace-MsiInstallation($path)
{
Get-ChildItem $Env:Temp -Filter msi*.log | Remove-Item -Force -ErrorAction SilentlyContinue
Set-Variable MsiPolicy HKLM:\SOFTWARE\Policies\Microsoft\Windows\Installer -Option Private,Constant
if (-not (Test-Path $MsiPolicy))
{
New-Item $MsiPolicy | Out-Null
}
Set-ItemProperty $MsiPolicy Logging 'voicewarmupx!'
Set-ItemProperty $MsiPolicy Debug 7 -Type Dword
$StartInfo = [Diagnostics.ProcessStartInfo] "$(Resolve-Path $path)"
$Process = [Diagnostics.Process]::Start($StartInfo)
$Process.WaitForExit()
Remove-ItemProperty $MsiPolicy Logging
Remove-ItemProperty $MsiPolicy Debug
Get-ChildItem $Env:Temp -Filter msi*.log
}