C# shell32.dll 的用法

1 首先要使用shell32  请在项目引用中添加shell32.dll 的引用  (备注:该引用是系统dll文件 在C:\Windows\System32  目录下 可以自行拷贝到项目中)

  

private void  btnTest_Click(object sender, EventArgs e)     //测试的按钮点击事件
{

//测试,将excel中的student导入到sqlserver的DB_MES中,如果sql中的数据表不存在则创建 
System.Windows.Forms.OpenFileDialog fd = new OpenFileDialog();  // new 一个打开文件对话框用于选择文件 
if (fd.ShowDialog() == DialogResult.OK)
{
string filePath = fd.FileName;

//实例化一个shell 对象

Shell32.Shell shell = new Shell32.ShellClass();

//获取文件所在父目录对象 
Folder folder = shell.NameSpace(filePath.Substring(0, filePath.LastIndexOf('\\')));
//获取文件对应的FolderItem对象 
FolderItem item = folder.ParseName(filePath.Substring(filePath.LastIndexOf('\\') + 1));
//字典存放属性名和属性值的键值关系对 
Dictionary<string, string> Properties = new Dictionary<string, string>();
int i = 0;
while (true)
{
//获取属性名称 
string key = folder.GetDetailsOf(null, i);
if (string.IsNullOrEmpty(key))
{
//当无属性可取时,推出循环 
break;
}
//获取属性值 
string value = folder.GetDetailsOf(item, i);
//保存属性 
Properties.Add(key, value);
this.richTextBox1.Text += i.ToString() + key + ":" + value + '\n';  // 窗体界面上创建的richTextBox 控件上显示所有的属性值
i++;
}



}

  

 

 

 

//------我的开的文件名是1.xls---------实际运行效果如下------根据运行结果可以查看我们需要的信息对应的索引

0名称:1.xls
1大小:16.0 KB
2项目类型:Microsoft Office Excel 97-2003 工作表
3修改日期:2017/12/22 11:35
4创建日期:2017/12/22 10:38
5访问日期:2017/12/22 11:35
6属性:A
7脱机状态:
8脱机可用性:
9假设的类型:文档
10所有者:USER-20170822CM\Administrator
11种类:文档
12拍摄日期:
13参与创作的艺术家:
14唱片集:
15年:
16流派:
17指挥者:
18标记:
19分级:未分级
20作者:Administrator
21标题:
22主题:
23类别:
24备注:
25版权:
26#:
27长度:
28比特率:
29保护:
30照相机型号:
31尺寸:
32照相机制造商:
33公司:
34文件说明:
35程序名称:
36持续时间:
37联机:
38重复:
39位置:
40可选参加者地址:
41可选的与会者:
42组织者地址:
43组织者名称:
44提醒时间:
45必选的与会者地址:
46必
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值