以前作ったPowerShell: ◆インストールされているソフトウエアの一覧を取得は64ビットOSではうまく動作しなことが判った。(64ビットアプリしか表示されない)
64ビットOS上で動く32ビットアプリケーション(Wow64)は別のレジストリーで管理されているようだ。
そこで64ビットOSに対応するよう改修してみた。
001 002 003 004 005 006 007 008 009 010 | $path = "\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" $wow = "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall" $patharray = ("HKLM:" + $path),("HKCU:" + $path) if(Test-Path $wow){$patharray += $wow} Get-ChildItem -Path $patharray | %{Get-ItemProperty $_.PsPath} | ?{$_.systemcomponent -ne 1 -and $_.parentkeyname -eq $null} | sort displayname | select DisplayName,Publisher |
0 件のコメント:
コメントを投稿