delphi – TWordApplication和Word碰撞

delphi – TWordApplication和Word碰撞,第1张

概述我在Delphi中使用TWordApplication.我的应用程序打开新的单词实例并在其文档上创建一些内容.问题是我第一次运行我的应用程序,然后打开真正的单词exe. Word exe没有打开新的单词实例,但它链接到我的应用程序实例.因此,当我的应用程序写入其文档时,所有文本都显示在用户可见的exe文字上. WordApp := TWordApplication.Create(nil);Wor 我在Delphi中使用TWordApplication.我的应用程序打开新的单词实例并在其文档上创建一些内容.问题是我第一次运行我的应用程序,然后打开真正的单词exe. Word exe没有打开新的单词实例,但它链接到我的应用程序实例.因此,当我的应用程序写入其文档时,所有文本都显示在用户可见的exe文字上.

WordApp := TWordApplication.Create(nil);WordApp.ConnectKind := ckNewInstance;(WordApp.documents.Add(EmptyParam,EmptyParam,varFalse ));

然后用户手动打开Word.

WordApp.Selection.Text := 'test test test';

用户在手动打开的Word中看到“测试测试”.

如果我首先手动打开Word并启动我的应用程序一切正常.

解决方法 这是Word的默认行为,它使用正在运行的实例.您需要做的是存储对要修改的文档的引用.因此,请勿使用Activedocument,而是使用您存储的文档.因为无法保证Activedocument是您认为的文档.

//starting Wordvar  App: TWordApplication;  Doc: Worddocument;begin  App := TWordApplication.Create(nil);  Doc := App.documents.Addold(EmptyVar,EmptyVar); //open new document<..somewhere else..>  //modifying Word  Doc.DoWhateverIWant;  // <--see? no Activedocument,so you are not                       //             modifying the users doc
总结

以上是内存溢出为你收集整理的delphi – TWordApplication和Word碰撞全部内容,希望文章能够帮你解决delphi – TWordApplication和Word碰撞所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1216238.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存