我想使用PowerShell将自定义标头添加到.doc文件中(我的意思是实际的标头,而不是标题)。这应该工作:
$Word=New-Object -ComObject "Word.Application"
$wdSeekPrimaryHeader = 1
$Doc=$Word.Documents.Open("C:\test.doc")
$Selection=$Word.Selection
$Doc.ActiveWindow.ActivePane.View.SeekView=$wdSeekPrimaryHeader
$Selection.TypeText("Text")
$doc.close([ref]$Word.WdSaveOptions.wdDoNotSaveChanges)
$word.quit()
但事实并非如此。它实际上什么也没做,我可以告诉你。
关于我在这里做错了什么想法?
以下是有效的代码:
$Word=New-Object -ComObject "Word.Application"
$wdSeekPrimaryHeader = 1
$Doc=$Word.Documents.Open("C:\test.doc")
$Selection=$Word.Selection
$Doc.ActiveWindow.ActivePane.View.SeekView=$wdSeekPrimaryHeader
$Selection.TypeText("Text")
$Doc.Save()
$Doc.Close()
$Word.Quit()
再次感谢peeps!
答案 0 :(得分:2)
我不确定[ref]是否正常工作,但你已经引用了DoNotSaveChanges。你不想要保存更改吗?
答案 1 :(得分:1)
我在[ref]上收到错误(参数:'1'不应该是System.Management.Automation.PSReference。不要使用[ref]。) 如果我用:( / p>)替换close(..)行
$doc.save()
$doc.close()
然后我看到标题