| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1366 人关注过本帖, 1 人收藏
标题:问下怎么获得文件图标
只看楼主 加入收藏
shizhusz110
Rank: 1
等 级:新手上路
帖 子:307
专家分:0
注 册:2006-12-21
收藏(1)
 问题点数:0 回复次数:5 
问下怎么获得文件图标
我想做个资源管理器,怎么获得文件的图标,和怎么修改文件名和实现删除文件.
谢谢回复,谢谢!!!!那里有介绍的文章推荐下.谢谢!!!
搜索更多相关主题的帖子: 图标 文件 
2007-05-24 16:42
shizhusz110
Rank: 1
等 级:新手上路
帖 子:307
专家分:0
注 册:2006-12-21
收藏
得分:0 
还想问个问题?我备份数据库想做个进度条,怎么获得开始和结束时间<C#>谢谢回复..........3q
2007-05-24 18:41
小海龟
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1068
专家分:4
注 册:2006-8-1
收藏
得分:0 
第一个问题:live41曾经做个类似的东西,你在C#版找找吧.

[bc09] 犯强汉者,虽远比诛!
2007-05-24 23:00
luqinjian
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2007-5-25
收藏
得分:0 

摘录:《程序员秘书》--源代码--图像处理--读取EXE、DLL等文件的图标集
轻轻松松开发软件,详见:htt://www.psec.net.cn
程序员秘书》功能展示Flash动画:
http://www.psec.net.cn/psec/程序员秘书.zip


1、在 Microsoft Visual Studio .NET 的“文件”菜单上,单击“新建”,然后单击“项目”。
2、在“新建项目”对话框中,选择“Visual C#项目”,再选择“Windows 应用程序”模板。
3、键入 FileIcoApp 作为该程序的名称,然后单击确定。
4、在Form1.cs的视图设计器中,添加如下控件:
控件类型 控件名称  控件属性 属性值
Button button1 Text 在文件中获取大、小图标
ImageList imageList1 ImageSize 32,32
ListView listView1 LargeImageList imageList1
5、在Form1.cs的代码设计器中,引用添加如下代码
using System.Runtime.InteropServices;
6、在Form1.cs的视图设计器中,选中button1,在属性框中选中事件,双击Click,在Form1.cs的代码设计器中,添加修改如下代码
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog ExeOpenFileDialog = new OpenFileDialog();
ExeOpenFileDialog.Filter = "All 文件|*.*";
ExeOpenFileDialog.FileName = @"c:\windows\system32\shell32.dll";//shell32.dll含有windows丰富的图标集
ExeOpenFileDialog.Multiselect = false;
ExeOpenFileDialog.RestoreDirectory = true;
if (ExeOpenFileDialog.ShowDialog() == DialogResult.OK)
{
GetFileIco(ExeOpenFileDialog.FileName);//在文件(如.exe、.dll、有图标的文件)中获取大、小图标
}
}
7、在Form1.cs的代码设计器中,添加如下代码
[DllImport("shell32.dll", CharSet = CharSet.Auto)]
private static extern int ExtractIconEx(string path, int i, IntPtr[] big, IntPtr[] small, uint op);

private void GetFileIco(string FilePath)//在文件中获取大、小图标
{
try
{
listView1.Items.Clear();
imageList1.Images.Clear();
int IconsNum = ExtractIconEx(FilePath, -1, null, null, 0); //获取文件中有多少图标
if (IconsNum <= 0)
{
MessageBox.Show(FilePath + "文件中没有图标!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
IntPtr[] LargeIcons = new IntPtr[IconsNum];
IntPtr[] SmallIcons = new IntPtr[IconsNum];
ExtractIconEx(FilePath, 0, LargeIcons, SmallIcons, (uint)IconsNum);
for (int i = 0; i < IconsNum; i++)//显示图标(以大图标为例)
{
listView1.Items.Add(i.ToString());
imageList1.Images.Add(System.Drawing.Icon.FromHandle(LargeIcons[i]));
listView1.Items[i].ImageIndex = i;
}
}
catch { }
}
8、编译

2007-05-25 07:35
shizhusz110
Rank: 1
等 级:新手上路
帖 子:307
专家分:0
注 册:2006-12-21
收藏
得分:0 
谢谢!!!!!我去试下.我也去找找
2007-05-25 18:39
shizhusz110
Rank: 1
等 级:新手上路
帖 子:307
专家分:0
注 册:2006-12-21
收藏
得分:0 
luqinjian你有<程序员秘书>????
有的话能给我分享下吗????
谢谢!!!!!
2007-05-25 19:29
快速回复:问下怎么获得文件图标
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016665 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved