0

VBSCRIPT を使用して MS Word ドキュメントを開きます。既に開いているかどうか (アクティブでない場合でも) を知りたいのですが、開いている場合は再度開かないようにしてください。Winword をチェックするだけでは意味がありません。ユーザーは他の Word ドキュメントを開いている可能性があります。

試してみtasklist /V /FI "IMAGENAME eq WINWORD.EXE"ましたが、これは現在アクティブな Word ウィンドウのドキュメント (WindowTitle) の名前のみを返します。

私も見ました

Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process")

しかし、これは有用な情報を提供しません。

タスク マネージャーのようなアプリケーションのリストが本当に必要ですが、開いているすべての Word ドキュメントが表示されます。

4

1 に答える 1

0

GetObject は適していませんか?

 Set doc = GetObject("Z:\Docs\Doc.doc")
 doc.Application.Visible = True

ドキュメントが既に開いている場合は、ハイジャックされます。閉じている場合は、新しい Word インスタンスで開きます。

于 2012-06-17T21:57:08.500 に答える