C#: ファイルのアイコン画像を取得する方法
C#で他のファイルのアイコン画像を取得する方法です。
ExcelファイルやWordファイル、画像ファイルなど、Windowsのエクスプローラーやデスクトップ上では関連ソフトのアイコンが現れます。
この画像を取得するってわけです。
[ad#top-1]
今回の完成形
出来上がったものはご覧の通り。
フォーム上にファイルのアイコン画像を表示させています。とあるExcelファイルのアイコン画像を取得して表示させております。
今回はこいつのプログラムを紹介したいと思います。
ソースコード
プログラムコードは以下の通りです。Book1.xlsxというファイルのアイコン画像を読み込んで、Pictureコントロールに書き出しています。
using System; using System.Drawing; using System.Windows.Forms; class Test{ static void Main(){ Application.Run(new TestForm()); } } class TestForm : Form{ public TestForm(){ this.StartPosition = FormStartPosition.CenterScreen; this.Width = 400; this.Height = 250; this.Text = "テスト"; PictureBox pb1 = new PictureBox(){ Size = new Size(170, 170), Location = new Point(10, 10), Parent = this, }; Icon appIcon = Icon.ExtractAssociatedIcon("C:¥¥***¥¥Book1.xlsx"); pb1.Image = appIcon.ToBitmap(); } }
解説
まずはフォーム上にPictureBoxクラスのオブジェクトを貼っておきます。
PictureBox pb1 = new PictureBox(){ Size = new Size(170, 170), Location = new Point(10, 10), Parent = this, };
次にIconクラスを使ってアイコン画像を取得するわけですね。それをPictureBoxオブジェクト(pb1)に貼ればOKです。至って簡単。
Icon appIcon = Icon.ExtractAssociatedIcon("C:¥¥***¥¥Book1.xlsx"); pb1.Image = appIcon.ToBitmap();
[ad#ad-1]
スポンサーリンク