반응형

* C# EXE File icon 가져오기 예제...

 

Main

 

- 사용한 컨트롤: Button 2개, Label 1개

 

전체 소스 코드

Form1.cs

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace CSharp_EXEIcon
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            //File Open

            OpenFileDialog ofd = new OpenFileDialog();

            ofd.Filter = "EXE File(*.exe) | *.exe";

            if (ofd.ShowDialog() == DialogResult.OK)
            {
                label1.Text = ofd.FileName;
            }

        }

        private void button2_Click(object sender, EventArgs e)
        {
            //icon Save
            //파일이 아니라면...
            if (!System.IO.File.Exists(label1.Text)) return;

            //exe file iCon get
            Icon icn = Icon.ExtractAssociatedIcon(label1.Text);

            //Image Save
            Image img = Image.FromHbitmap(icn.ToBitmap().GetHbitmap());
            img.Save("c:\\Test.ico");
            img.Dispose();

            MessageBox.Show("icon Image Save Success...");

        }
    }
}

 

 

*예제 결과

 

 

 

반응형

+ Recent posts