无法使用 C# 获取 Office 文件标记

  • 本文关键字:Office 文件 获取 c#
  • 更新时间 :
  • 英文 :


我尝试使用 C# shellfile 类获取文件属性标记,但没有成功。

这到底是如何运作的?

即使我有文件的标签,我也无法获取它。

var tags = (string[])shellFile.Properties.System.Keywords.ValueAsObject;
tags = tags ?? new string[0];
if (tags.Length != 0)
{
    foreach (string str in tags)
    {
        Console.WriteLine("keyword:" + str);
    }
}

这是我得到的错误。

{"试图读取或写入受保护的内存。这通常表示其他内存已损坏。

实际上,您的代码看起来不错。这似乎是一个权限问题。检查应用在哪个用户上下文下运行。并确保您的文件对该用户具有适当的权限。这是很久以前的参考:

http://www.vbforums.com/showthread.php?208213-The-file-is-not-a-valid-compound-file

最新更新