ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年3月29日(金) 05:47

全ての表示時間は UTC+09:00 です




返信する
ユーザー名:
件名:
メッセージ本文:
メッセージを入力してください。60000 字まで入力できます。 

フォントサイズ:
フォントカラー
オプション:
BBCode: ON
[img]: ON
[flash]: OFF
[url]: ON
スマイリー: OFF
BBCode を無効にする
URL を自動的にパースしない
クイズ
お手数ですがカタカナで「エービー」と4文字を入力してください。:
答えを正確に入力してください。答えられるかどうかでスパムボットか否かを判定します。
   

トピックのレビュー - ウインドウ破棄
作成者 メッセージ
  記事の件名:  Re: ウインドウ破棄  引用付きで返信する
表示中のウインドウのハンドルがわかれば以下の方法でできます。
例(これは何らかの方法でウインドウのハンドルの値が判明したとき)
DIM HWNHND AS HANDLE
HWNHND = &h0016075a AS HANDLE 'ウインドウのハンドルを設定
SendMessage(HWNHND,WM_CLOSE,0,0) 'ウインドウの閉じるボタンを押されたことを通知

ウインドウのハンドルはウインドウクラスまたはウインドウタイトルを基にWIN32 API FindWindowで取得します。
なおウインドウクラスがわからなくてもウインドウタイトルのみでも取得できます。というか私はそうしてます。
FindWindowについてはABのヘルプに載ってますので詳細はこちらをご確認下さい。

私自身あまりよく理解できていませんが、
WM_CLOSEメッセージはウインドウの閉じるボタンを押されたことを通知するもので強制的に終了するものではありません。
しかしながらプログラムの作りに依存しますが、WM_CLOSEメッセージを対象のウインドウに送ると基本的にウインドウ系のプログラムは終了します。
2017.10.31修正
投稿記事 Posted: 2016年11月17日(木) 22:41
  記事の件名:  Re: ウインドウ破棄  引用付きで返信する
引用:
③タスクマネージャーの機能と類似した方法
 つまり実行中/表示中のノーマルウインドウ系プログラム(メモ帳、ワード、エクセルなど)を強制終了する機能
ですね
投稿記事 Posted: 2016年11月15日(火) 16:40
  記事の件名:  Re: ウインドウ破棄  引用付きで返信する
引用:
プログラムで表示しているwindowを消すのです。
もう一度確認したいのですが
①ノーマルウインドウのプログラムを起動して表示中にそれを破棄(プログラム終了)する方法
②ダイアログボックスがあるノーマルウインドウのプログラムを起動して実行中に表示中のダイアログボックスのウインドウを破棄する方法
③タスクマネージャーの機能と類似した方法
 つまり実行中/表示中のノーマルウインドウ系プログラム(メモ帳、ワード、エクセルなど)を強制終了する機能
どちらでしょうか?
投稿記事 Posted: 2016年11月15日(火) 00:37
  記事の件名:  Re: ウインドウ破棄  引用付きで返信する
プログラムで表示しているwindowを消すのです。
投稿記事 Posted: 2016年11月14日(月) 22:50
  記事の件名:  Re: ウインドウ破棄  引用付きで返信する
「表示しているウインドウを破棄する」についていまいちよくわかりません。
例えばメモ帳(NOTEPAD.EXE)が実行されているときにABなど自作のプログラムでメモ帳を強制終了させることでしょうか?
タスクマネージャーで強制終了させる機能と類似したことを実現したいのでしょうか?
投稿記事 Posted: 2016年11月13日(日) 21:44
  記事の件名:  ウインドウ破棄  引用付きで返信する
表示しているウインドウを破棄するプログラムを教えてください
投稿記事 Posted: 2016年11月10日(木) 17:37

全ての表示時間は UTC+09:00 です


ページ移動:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by ocean