我写了一个小的C#工具,用COM删除word文件中的所有注释。
以前我们公司使用WinXP + Office2003,一切都很完美。
现在我们切换到Win7和Office2010(64位)。
使用新操作系统和Office版本时,DeleteAllComments行会导致一个名为的异常“此命令不可用。”但缺少任何进一步的解释。
Microsoft.Office.Interop.Word.Document document;
object missing = System.Reflection.Missing.Value;
document = wordInstance.Documents.Open(ref filename, ref missing, ref ReadOnly, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref isVisible, ref missing, ref missing, ref missing, ref missing);
document.Activate();
document.AcceptAllRevisions();
document.DeleteAllComments();
其余的代码完美无缺......任何人都可以帮忙吗?
Thnx提前。
问候 迈克尔
答案 0 :(得分:1)
我来晚了,但是我遇到了同样的问题。我发现如果文档中没有注释,命令document.DeleteAllComments()会引发异常。
这行代码对我来说再无例外:
if(document.Comments.Count > 0)
document.DeleteAllComments();
答案 1 :(得分:0)
我的问题似乎来自该公司内部非常严格的安全政策。 Office2010下不允许使用宏,普通用户无法打开它们。
(对于我公司以外的所有人,请检查设置:文件 - >选项 - > SecurityCenter - >宏)
希望有所帮助。