他のプログラムを強制終了する
スポンサーリンク
VB6 では、Win32API の TerminateProcess 関数を使用します。
サンプルコード
以下にサンプルコードを示します。
VB6.0 以前
Option Explicit ' OpenProcess 関数 Private Declare Function OpenProcess Lib "KERNEL32.DLL" ( _ ByVal dwDesiredAccess As Long, _ ByVal bInheritHandle As Long, _ ByVal dwProcessId As Long _ ) As Long ' CloseHandle 関数 Private Declare Function CloseHandle Lib "KERNEL32.DLL" ( _ ByVal hObject As Long _ ) As Long ' TerminateProcess 関数 Private Declare Function TerminateProcess Lib "KERNEL32.DLL" ( _ ByVal hProcess As Long, _ ByVal uExitCode As Long _ ) As Long ' 定数の定義 Private Const SYNCHRONIZE As Long = &H100000 Private Const PROCESS_TERMINATE As Long = &H1
VB6.0 以前
' メモ帳を起動して、プロセス ID を取得する Dim lProcessId As Long lProcessId = CLng(Shell("Notepad", vbNormalFocus)) ' プロセスのハンドルを取得する Dim hProcessHandle As Long hProcessHandle = OpenProcess(SYNCHRONIZE Or PROCESS_TERMINATE, 0&, lProcessId) ' 制御を止めるために、メッセージ ボックスを表示する Call MsgBox("メモ帳を終了します") ' メモ帳を強制終了する Call TerminateProcess(hProcessHandle, 0&) ' プロセスのハンドルを閉じる Call CloseHandle(hProcessHandle)
関連するリファレンス
準備中です。