タスクの終了

Top / Coding / VBA / タスクの終了
 

ページ構成
−Top
  • −Coding
    • +.NET
    • +CUDA
    • +JavaScript
    • +MSOffice
    • +PHP
    • +PowerShell
    • +Python
    • +Ruby
    • −VBA
      • ・.NETFrameworkの使用
      • ・COMコンポーネントの使用
      • ・Closeメソッド
      • +Excel
      • ・FileSystemObject
      • ・Framework
      • ・GitHubで公開されているコード一覧
      • +IEの操作
      • ・INIファイルの読み書き
      • ・MACアドレスの取得
      • +Outlook
      • ・PowerPoint
      • +SelenuimVBA
      • ・SendKeys、SendInput
      • ・TemplateEngine
      • ・VBA7
      • +Word
      • ・Word参考記事
      • ・ウィンドウをアクティブに
      • ・オートコレクト
      • ・クリップボードの操作
      • ・タスクの終了
      • ・ドキュメント自動生成
      • ・ハッシュを求める
      • ・ヒアドキュメントの実現
      • ・メールの作成
      • +ユニットテスト
      • ・一歩前へ
      • ・開発者
      • ・公開されているクラス一覧
      • ・人に説明するとき用のメモ
      • ・正規表現
    • +misc
    • +画像処理
  • +Server
  • +memo
  • +misc
  • +カメラ
  • +科学技術
  • +記事
  • +数値解析
最新の10件
2018-01-16 更新
  • misc/Hardware/各種プロセッサの倍精度演算性能
2017-11-27 更新
  • Coding/misc/raspberrypi
2017-11-02 更新
  • Coding/.NET/NuGetパッケージの作成
2017-10-19 更新
  • Coding/MSOffice/VSTO/ThisAddin_Startupに処理を書く問題が起きる
2017-06-16 更新
  • Coding/.NET/VisualStudioビルドイベント
2017-05-28 更新
  • misc/Hardware/タブレット向けCPU/複製
2017-05-25 更新
  • Coding/Python/CloudVision
2017-05-24 更新
  • misc/ロードバイク/サイクルロード/奈良
2017-05-11 更新
  • misc/ソフトウェア/文章/文章校正、作成支援ツール
2017-03-15 更新
  • misc/ソフトウェア/プロジェクト管理ツール

Powered By

b_pukiwiki.official.png

edit

目次関連するページ
  • 概要
  • プロセスの終了方法
  • 実装方法1
  • 実装方法2
    • 注意点
  • Coding/VBA
  • Coding/VBA/.NETFrameworkの使用
  • Coding/VBA/Closeメソッド
  • Coding/VBA/COMコンポーネントの使用
  • Coding/VBA/Excel
  • Coding/VBA/Excel/Addin/Toolbarの作成
  • Coding/VBA/Excel/Addin/Toolbarの作成/FaceIDの一覧
  • Coding/VBA/Excel/Addin/右クリックメニューの拡張
  • Coding/VBA/Excel/Addinの作り方
  • Coding/VBA/Excel/Formの表示位置を制御
  • Coding/VBA/Excel/Outlookと連携してメール作成・送信
  • Coding/VBA/Excel/SQLite
  • Coding/VBA/Excel/Wordを操作する
  • Coding/VBA/Excel/ソースコードの管理
  • Coding/VBA/Excel/共有の解除
  • Coding/VBA/FileSystemObject
  • Coding/VBA/Framework
  • Coding/VBA/GitHubで公開されているコード一覧
  • Coding/VBA/GUI/Form
  • Coding/VBA/GUI/Form/簡易リファレンス
  • Coding/VBA/GUI/Textbox
  • Coding/VBA/IEの操作
  • Coding/VBA/IEの操作/IE9以降でのframe操作
  • Coding/VBA/IEの操作/Ver間の差異を吸収する方法
  • Coding/VBA/INIファイルの読み書き
  • Coding/VBA/MACアドレスの取得
  • Coding/VBA/Office2010/リボンのカスタマイズ
  • Coding/VBA/Outlook
  • Coding/VBA/Outlook/送信時のチェック
  • Coding/VBA/PowerPoint
  • Coding/VBA/SelenuimVBA
  • Coding/VBA/SelenuimVBA/IEの操作
  • Coding/VBA/SelenuimVBA/ファイルのダウンロード
  • Coding/VBA/SelenuimVBA/フレームの切り替え
  • Coding/VBA/SelenuimVBA/ブラウザの指定
  • Coding/VBA/SelenuimVBA/要素の指定方法
  • Coding/VBA/SendKeys、SendInput
  • Coding/VBA/TemplateEngine
  • Coding/VBA/VBA7
  • Coding/VBA/VBE/アドインの作成
  • Coding/VBA/Word
  • Coding/VBA/Word/AutoExec、AutoOpenに関して
  • Coding/VBA/Word/Excelからの操作
  • Coding/VBA/Word/おせっかい機能(オートフォーマット)のオフ
  • Coding/VBA/Word/まとめサイト
  • Coding/VBA/Word/アドイン/一括置換
  • Coding/VBA/Word/キーの割り当て
  • Coding/VBA/Word/キャレット絶対座標
  • Coding/VBA/Word/フィールドコード
  • Coding/VBA/Word/右クリックメニューの拡張
  • Coding/VBA/Word/未整理
  • Coding/VBA/Word参考記事
  • Coding/VBA/アドイン作成/Ribbon
  • Coding/VBA/ウィンドウをアクティブに
  • Coding/VBA/オートコレクト
  • Coding/VBA/クリップボードの操作
  • Coding/VBA/タスクの終了
  • Coding/VBA/ドキュメント自動生成
  • Coding/VBA/ハッシュを求める
  • Coding/VBA/ヒアドキュメントの実現
  • Coding/VBA/メールの作成
  • Coding/VBA/ユニットテスト
  • Coding/VBA/ユニットテスト/Assert.bas
  • Coding/VBA/一歩前へ
  • Coding/VBA/開発者
  • Coding/VBA/公開されているクラス一覧
  • Coding/VBA/人に説明するとき用のメモ
  • Coding/VBA/正規表現

概要 †

現在起動中のプロセスの終了方法についてまとめた

↑

プロセスの終了方法 †

特定のプロセスを終了させるにあたり必要になる手順は以下の通り

  • 現在起動中のプロセスの取得
  • プロセスに終了命令を発行
↑

実装方法1 †

Word.Tasksオブジェクトを用いると、現在起動中のプロセスを取得することができる。
また、プロセスを、ウィンドウのタイトル名に基づいて特定することができる。
詳しくは、下記記事参照のこと。

Office TANAKA - 実行中のタスク一覧(非API)
http://officetanaka.net/excel/vba/tips/tips61.htm

ただし、試してみたところ、
この方法では、うまくプロセスを拾えない場合があった。(=動作が不安定)

↑

実装方法2 †

WMIを用いる。WMIはWindows2000以降から実装された点に注意。
プロセスを、実行ファイル名に基づいて特定することができる。
以下に、サブルーチンの形にまとめたサンプルコードを示す。

Sub TaskTerminate(processName As String)
    Dim objSet
    Dim obj
    Dim Locator
    Dim Server
    
    Set Locator = CreateObject("WbemScripting.SWbemLocator")
    Set Server = Locator.ConnectServer
    Set objSet = Server.ExecQuery("Select * From Win32_Process")
    
    For Each obj In objSet
        If obj.Caption = processName Then
		obj.Terminate
        End If
    Next

    Set objSet = Nothing
    Set obj = Nothing
    Set Server = Nothing
    Set Locator = Nothing
End Function

上記サブルーチンの使い方は、以下の通り。

    TaskTerminate("notepad.exe") 'メモ帳(notepad.exe)を終了させる場合'
↑

注意点 †

複数のプログラムを連続して終了させる場合、
Waitを入れないとプログラムを終了させられないことがある模様。


トップ   編集 凍結 差分 添付 複製 名前変更 リロード   新規 一覧 単語検索   ヘルプ   最終更新のRSS
Last-modified: 2012-01-16 (月) (2288d)
Site admin: D*isuke YAMAKAWA

PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL.
Based on "PukiWiki" 1.3 by yu-ji. Powered by PHP 5.3.29. HTML convert time: 0.040 sec.