2012-04-24 37 views
0

表示可能なすべてのウィンドウ(名前と上部)を一覧表示しようとしています。 スクリプトは正常に動作していますが、Microsoft Wordのインストールが必要です。 あなたがVbs - 可視ウィンドウをすべて一覧表示する

Cscript -B myScript.vbs 

muScript.vbsこのコマンドを実行することができ、私のスクリプトを実行するには、次の

Dim console 
Set console = WScript.StdOut 
Dim myString 
myString = "" 

Set Word = CreateObject("Word.Application") 
Set Tasks = Word.Tasks 
Set colTasks = Word.Tasks 
For Each Task in Tasks 
    If Task.Visible Then 
     If colTasks.Exists(Task.Name) Then 
      myString = myString & "@@##@@" & colTasks(Task.Name).Name & ","& colTasks(Task.Name).Top 
     End If 
    End If 
Next 
Word.Quit 
console.WriteLine myString 

あなたは私がMicrosoft WordのインストールなしmyScript.vbsのように可視ウィンドウを一覧表示することができます方法を知っていますか?

どうもありがとう

+0

uが名前/ WINDOWTITLE – befzz

答えて

0

私はこれが可能だとは思いません。しかし、実行中のすべてのプロセスをリストすることができます。

http://www.computerperformance.co.uk/vbscript/wmi_process.htm

' Process.vbs 
' VBScript Win32_Process to discover which processes are running 
' Author Guy Thomas http://computerperformance.co.uk/ 
' Version 1.4 - December 2010 
' -------------------------------------------------------' 
Option Explicit 
Dim objWMIService, objProcess, colProcess 
Dim strComputer, strList 

strComputer = "." 

Set objWMIService = GetObject("winmgmts:" _ 
& "{impersonationLevel=impersonate}!\\" _ 
& strComputer & "\root\cimv2") 

Set colProcess = objWMIService.ExecQuery _ 
("Select * from Win32_Process") 

For Each objProcess in colProcess 
    strList = strList & vbCr & _ 
    objProcess.Name 
Next 

WSCript.Echo strList 
WScript.Quit 

' End of List Process Example VBScript 
+0

おかげネイサンによってプロセスを一覧表示し、フィルタする**タスクリスト**コマンド(WScriptのシェルExecの)を使用することができますが、あなたのスクリプトを使って、私はリストには、ウィンドウを開いたことはできません(位置と名前)。私たちを手伝ってくれますか? – Tokytok

+0

私の最初のコメントによると。不可能です。 –