更新 3:
当我保存了 vb6 脚本、关闭单词、开始单词,然后像通常运行模板一样运行模板时会发生这种情况,即 strTemplate 变为 Normal.doc。然后,只要我回到尚未通过 vsto 保存的原始模板,就会回到变量 strTemplate 中的 Letter.doc ...
更新 2:
在我的启动脚本中,我有如下一行:
strTemplate = ActiveDocument.AttachedTemplate
在名为 Letter.dot 的原始模板中,strTemplate = Letter.dot。
但是由于某种原因,在基于原始 Letter.dot 模板的新 vsto 模板中,上面的同一行变成了 Normal.dot,这引起了问题,即使新模板仍然命名为 Letter.dot。
我试图手动编码
strAttTemplate = "Letter.dot"
并且脚本进入下一阶段,但随后它开始抱怨其他事情。
所以我的问题是,原来的模板有strTemplate = Letter.dot,但是为什么通过vsto运行模板后这个变成strTemplate = Normal.dot呢?
更新 1:
在对两个版本的模板,即原始的非 vsto 模板和新的 vsto 模板进行了调试后,我发现原来的模板没有任何文档属性,而 vsto 模板有 2 个文档属性。但这似乎不是问题。
似乎问题与附加了 normal.dot 的 vsto 模板有关,而原始的非 vsto 模板没有附加 normal.dot。
是否可以从新模板中删除附加的 normal.dot ?
原始问题:
我正在使用 Visual Studio 2008 创建一个 Word 2003 模板项目。我选择了“使用现有模板”选项,它在后台已经有一些 vb6 宏脚本。出于某种原因,当我保存 Visual Studio 项目时,vb6 脚本停止工作。
当模板在word中打开时,旧的vb6脚本会立即运行,但是当我只是在vs2008中使用模板而不添加额外的功能并保存项目并构建项目时,当我尝试用word打开模板时,旧的启动脚本不起作用。
为什么会这样?