質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

Q&A

解決済

3回答

2157閲覧

あるコマンドで起動されたものを止める方法

roku28632

総合スコア36

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

0グッド

1クリップ

投稿2020/03/08 06:16

編集2020/03/08 06:17

windows環境である製品の外部コマンドで実行したものをリダイレクトしてテキスト出力しています。
イメージはこんな感じです。
C:\Users\xxx>aaaa.aaa >> hogehoge.log

普通にコマンドプロンプトで起動したときには、そのコマンドプロンプトを停止すれば、関連するものがすべて停止してくれます。
ただ、そのコマンドをコマンドプロンプトを表示しないようにバックグラウンドで起動していたいので、vbsから実行します。
しかし、vbsで実行すると、起動したものをまとめて終了させることができず、自分が考えてやっているやりかただと、

  1. tasklistで実行前に動いているプロセスを確認する
  2. そのコマンドをvbsで実行する
  3. tasklistで実行後に動いているプロセスを確認する

すると、3つのプロセス、cmd.exeとperl.exeとjava.exeが実行されていることがわかったので、
これを無理やりtaskkillで消しています。

taskkillせずに、リダイレクトしているテキストを削除しようとすると、perlが掴んでいるや、javaが掴んでいるというメッセージが表示されますが、taskkillすると、普通に削除できるようになるので、これで起動した分が停止できて、起動前の状態になったと思っています。

そこで質問です。

widnwos環境において、プロセスを停止すれば、実行されたものはすべて停止できたという考え方でよいんでしょうか。
(もちろん、その外部コマンドが裏でファイル生成しているかもなどはあるかと思いますが、windows的に、実行が停止されたのかということです。)

また、今回のような場合に、他に調べる方法や、他にこんなやり方があるなどあれば教えてください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

vbsからプログラムを起動しているなら
runかexecメソッドで呼び出しているはずなんですが
execメソッドの場合、プロセスIDが取得できます。

例。
https://www.atmarkit.co.jp/ait/articles/0712/27/news083.html
objExec.ProcessId

この方法でプロセスIDを取得したら
後はtaskkill でもたたけば行けますよ

投稿2020/03/24 09:04

yukiyuki123456

総合スコア130

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

また、今回のような場合に、他に調べる方法や、他にこんなやり方があるなどあれば教えてください。

Process Explorer
画像が貼れないので文字だけで申し訳ないですが、「双眼鏡」アイコンで、ファイルをつかんでいるプロセスを検索できます。検索ウィンドウに、ファイル名を入力して下さい。検索結果をクリックすると、元の画面で実際につかんでいるプロセスが、選択状態になります。

英語ですが、説明はちゃんと読んでから使用して下さい。

投稿2020/03/08 11:36

Q71

総合スコア995

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

widnwos環境において、プロセスを停止すれば、実行されたものはすべて停止できたという考え方でよいんでしょうか。

そうです。

これを無理やりtaskkillで消しています。

taskkillしないと終了しないプログラムなら、taskkillするしかないのでは?
他に終了のさせ方があるのなら、その方法を取ればいいし。

投稿2020/03/08 10:01

otn

総合スコア84555

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問