9 c# icons extract save filestream
我知道这一定非常容易 - 令人难以置信的是,基于VB6的简单程度,我已经多久寻找了这个问题的答案.我只想使用Icon.ExtractAssociatedIcon从EXE文件中提取一个图标,然后将此图标文件保存到我的硬盘中.
所以,这就是我所拥有的,而且我也会告诉你我所尝试过的东西,所以你不要以为我是懒惰的.
OpenFileDialog ofd = new OpenFileDialog();
ofd.ShowDialog();
string s = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + @"\IconData.ico";
Icon ico = Icon.ExtractAssociatedIcon(ofd.FileName);
Bitmap bmp = ico.ToBitmap();
bmp.Save(s, System.Drawing.Imaging.ImageFormat.Icon);
Run Code Online (Sandbox Code Playgroud)
上面的代码只是在我的桌面上创建一个名为"IconData.ico"的文件,其长度为0个字节.再说一次,我确信这一定非常容易,但对于我的生活,我无法弄明白.
谢谢!
hsm*_*ths 13
如果在不先转换为位图的情况下保存图标,您将获得更好的结果.这是因为"图标"可以包含多个尺寸,而位图是在转换期间选择的单个尺寸.
Icon类没有保存到文件的方法,但它确实有一个保存到FileStream方法,因此您可以像这样保存它:
string s = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + @"\IconData.ico";
using (FileStream fs = new FileStream(s, FileMode.Create))
ico.Save(fs);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11782 次 |
| 最近记录: |