如果打开相同的文档,Powerbuilder字会在打开时挂起

时间:2017-01-24 05:56:03

标签: ms-word ole powerbuilder

在打开word文档之前 我想检查是否已打开同一文档。 如果打开然后我想关闭 app.documents.open(as_doc_name)

2 个答案:

答案 0 :(得分:1)

你可以试试这个

IF ole_myobject.Documents.Count >= 1 THEN
   ls_doc_name = ole_myobject.ActiveDocument.Name
END IF

在这里您可以获得有关其操作的帮助: http://www.java2s.com/Code/VBA-Excel-Access-Word/Word/Checkthecurrentdocumentcount.htm

答案 1 :(得分:0)

代码有效。以下示例将帮助您了解如何开发它:

声明实例变量:

OLEObject ole_myobject

活动开放():

ole_myobject = CREATE OLEObject 
ole_myobject.connecttonewobject("word.application") 

代码:buttom:

String ls_doc_name
String as_doc_name
String as_path_name

Long ll_ActiveDocument

as_path_name = "C:\"
as_doc_name = "Prueba.doc"

ole_myobject.visible=1

ll_ActiveDocument = ole_myobject.Documents.Count

IF ll_ActiveDocument >= 1 THEN 
    Ls_doc_name = ole_myobject.ActiveDocument.Name 
END IF 
if Ls_doc_name = as_doc_name THEN 
    ole_myobject.ActiveDocument.close(0) 
end if 
ole_myobject.documents.open(as_path_name + as_doc_name)

记住“ole_myobject.ActiveDocument.close(0)”不关闭Word,它只关闭文档但Word应用程序继续运行。