2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

特定のタイトルが付いているウィンドウを閉じる

Last updated at Posted at 2018-05-01

#概要
「Hey, Scripting Guy!」の確認。

Scripting Guy さん、特定のタイトルが付いているコマンド ウィンドウを閉じる方法はありますか
Microsoft Word を使用した独自のタスク マネージャの構築 (うそでしょ。いいえ、本当です)

タイトルと完全一致しなくても、最初が一致していたら消せるようです。
.htaのテスト用簡易アプリ、Word文書で消せることを確認しています。

#コード
以下をテキストエディタにコピペし、"close_target.vbs"として保存する。
テスト用簡易アプリを起動した後に実行する。
.vbs実行後、3秒程度あとにプロセスが閉じられる。

close_target.vbs
Set objWord = CreateObject("Word.Application") 
Set colTasks = objWord.Tasks 
 
If colTasks.Exists("消したいターゲット") Then 
    colTasks("消したいターゲット").Close 
End If 
objWord.Quit

colTasks("消したいターゲット").Visible = Falseにすると、そのままでウィンドウだけ見えない状態になります。

##テスト用簡易アプリ
以下をテキストエディタにコピペし、"target.hta"として保存し、実行する。

target.hta
<html>
<head>
<title>消したいターゲットです。</title>
</head>
<body>
これを消します。
</body>
</html>

#備考
WMIやその他スクリプト関連オブジェクトにできないのに、なんでWordでできるようにしているのかよくわかりませんが・・・

Microsoft Word を使用した独自のタスク マネージャの構築 (うそでしょ。いいえ、本当です)

Microsoft Word の Application オブジェクトには、コンピュータで実行中のすべてのプロセスのコレクションを返す Tasks プロパティが含まれています。このプロパティと Win32_Process の違いは、Tasks コレクションが、実行可能ファイル名ではなく、プロセスのフレンドリ名を返すことです。これによって、次のような情報を取得できます。

#参考
Scripting Guy さん、特定のタイトルが付いているコマンド ウィンドウを閉じる方法はありますか
Microsoft Word を使用した独自のタスク マネージャの構築 (うそでしょ。いいえ、本当です)

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?