获取网络共享上文件的扩展属性

时间:2013-01-01 22:37:10

标签: c# windows file-io interop

我正在尝试从网络共享(作者,专辑等)上的音乐文件中读取扩展属性

这一行(改编自Read/Write 'Extended' file properties (C#)的代码)

objFolder = shell.Namespace(@"C:\somefolder");

正常但这些行将objFolder设置为null:

objFolder = shell.Namespace(@"\\nasdrive\somefolder");

(Z映射到\ nasdrive)

objFolder = shell.Namespace(@"Z:\somefolder");

我曾尝试使用http://platinumdogs.me/2008/10/30/net-c-impersonation-with-network-credentials/中的模拟来包装代码,但它无效。

(模拟适用于普通文件访问:File.Open(...)等)

如何在不将文件移动到本地驱动器的情况下阅读这些扩展属性?

1 个答案:

答案 0 :(得分:0)

如果您正在从网络共享中读取数据,为什么要转义特殊字符,然后使用4个反斜杠?

objFolder = shell.Namespace(@"\\\\nasdrive\somefolder");

我认为应该是:

objFolder = shell.Namespace(@"\\nasdrive\somefolder");

objFolder = shell.Namespace("\\\\nasdrive\\somefolder");