suzuzusu日記

(´・ω・`)

PowerShellでexeからicon抽出

サクッと.NETを使うときはPowerShellが非常に便利なのでexeファイルからiconを抽出するスクリプトを書いてみる

$icon = [System.Drawing.Icon]::ExtractAssociatedIcon("C:\Program Files\hoge\fuga.exe")
$icon.ToBitmap().Save((Join-Path $env:UserProfile\Desktop "icon.bmp"))

# 画像のフォーマットを指定したいときは以下のようにする
# $icon.ToBitmap().Save((Join-Path $env:UserProfile\Desktop "icon.png"), [System.Drawing.Imaging.ImageFormat]::Png)

$icon.Dispose() # リソースの開放

参考

Icon.ExtractAssociatedIcon メソッド (String) (System.Drawing)