我有一个Powershell(2.0)脚本,它使用Microsoft.Office.Interop.Word.WdSaveFormat
以递归方式在Word中打开一系列html文件,然后使用wdFormatDocument
和wdFormatDOSText
保存为Word和文本参数分别。该脚本包含每种文档类型的单独函数。
昨天,需求发生了变化,我现在也需要输出RTF文档。我添加了$saveFormatRTF
变量
$saveFormatDoc = [Enum]::Parse([Microsoft.Office.Interop.Word.WdSaveFormat], "wdFormatDocument");
$saveFormatTxt = [Enum]::Parse([Microsoft.Office.Interop.Word.WdSaveFormat], "wdFormatDOSText");
$saveFormatRTF = [Enum]::Parse([Microsoft.Office.Interop.Word.WdSaveFormat], "wdFormatRTF");
并出现以下错误。
Unable to find type [Microsoft.Office.Interop.Word.WdSaveFormat]: make sure that the assembly containing this type is l
oaded.
At C:\users\x46332\Desktop\cgc\CGC002.PS1:68 char:76
+ $saveFormatDoc = [Enum]::Parse([Microsoft.Office.Interop.Word.WdSaveFormat] <<<< , "wdFormatDocument");
+ CategoryInfo : InvalidOperation: (Microsoft.Offic...rd.WdSaveFormat:String) [], RuntimeException
+ FullyQualifiedErrorId : TypeNotFound
Unable to find type [Microsoft.Office.Interop.Word.WdSaveFormat]: make sure that the assembly containing this type is l
oaded.
At C:\users\x46332\Desktop\cgc\CGC002.PS1:69 char:76
+ $saveFormatTxt = [Enum]::Parse([Microsoft.Office.Interop.Word.WdSaveFormat] <<<< , "wdFormatDOSText");
+ CategoryInfo : InvalidOperation: (Microsoft.Offic...rd.WdSaveFormat:String) [], RuntimeException
+ FullyQualifiedErrorId : TypeNotFound
Unable to find type [Microsoft.Office.Interop.Word.WdSaveFormat]: make sure that the assembly containing this type is l
oaded.
At C:\users\x46332\Desktop\cgc\CGC002.PS1:70 char:76
+ $saveFormatRTF = [Enum]::Parse([Microsoft.Office.Interop.Word.WdSaveFormat] <<<< , "wdFormatRTF");
+ CategoryInfo : InvalidOperation: (Microsoft.Offic...rd.WdSaveFormat:String) [], RuntimeException
+ FullyQualifiedErrorId : TypeNotFound
运行脚本将JUST转换为Word和Text工作正常。单独运行RTF就好了。但是,无论何时我将脚本中的RTF与其他输出格式组合在一起,脚本中引用的所有输出格式都会显示为“未找到”。 RTF是否需要单独导出?我可以在一个脚本中拥有多少输出文件类型(但它们都是单独的函数)?我有没有设置一些参数?
我输出verified that the member names是正确的,我已经扫描MSDN寻找线索,但找不到任何可能导致此行为的内容,尤其是在向混合添加RTF时出现不可预测的结果。有什么想法吗?
答案 0 :(得分:0)
我做了一些进一步的测试,几天后我能够毫无困难地按预期进行转换。我还测试了使用单个脚本转换为每种格式listed here ...除了特殊字符的一些时髦输出格式外,一切都很好。
所以,我猜测没有限制,我的测试似乎证明了这个理论。