ファイルのアイコンを取得するには

ファイルのアイコンを取得してみます。
キーワードは「SHGetFileInfo()関数」です。
SHGetFileInfo()関数はファイル名とオプションを指定することで
ファイルに関する様々な情報を取得してくれます。

アイコンを描画するにはDrawIcon()関数を使います。

実行時の様子

Private Sub Command1_Click()
    Dim psfi As SHFILEINFO
    
    'ファイルの大きいアイコン取得
    Call SHGetFileInfo(Me.Text1.Text, FILE_ATTRIBUTES_NORMAL, _
        psfi, Len(psfi), SHGFI_ICON Or SHGFI_LARGEICON)
    'アイコンの描画
    Call DrawIcon(Me.Picture1.hdc, 3, 3, psfi.hIcon)
End Sub
ダウンロード