ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年4月28日(日) 06:20

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




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

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

トピックのレビュー - スクリーンセーバーが起動・終了するタイミングを知りたい
作成者 メッセージ
  記事の件名:  Re: スクリーンセーバーが起動・終了するタイミングを知りたい  引用付きで返信する
konisiさん、返信有難う御座います。
に、2chは、さ、最終手段として使わさせていただこうかなと思います…。


ところで、私の最初の書き込みで「起動のタイミングはWM_SYSCOMMANDのSC_SCREENSAVEでキャッチできる」
と書きましたが、すいません、間違ってました。
前面というかアクティブ状態になってないとキャッチできないみたいです。

何でこういう仕様なのかは分かりませんがこれじゃ全然使えない…。
というわけで、私の場合、常にSystemParametersInfoのSPI_GETSCREENSAVERRUNNINGで調べ続けなきゃいけなくなりました。

まぁ、誰もこんな事気にして無いかもしれませんが、後々検索してくる人の為に。
投稿記事 Posted: 2008年11月30日(日) 04:43
  記事の件名:   引用付きで返信する
引用:
に、2chですか!全否定はしませんし、中には丁寧に教えてくれる人もいるんでしょうけど・・・
Googleで真面目に検索しても出てこないような情報について質問した時には
真摯に返信してくれる人もかなり居ますよ。
「質問箱」を名前に含むスレッドには上級ユーザーが張り付いてたりしますし。

#プログラミング板ではなく、プログラム技術板では・・・?
投稿記事 Posted: 2008年11月29日(土) 11:19
  記事の件名:  Re: スクリーンセーバーが起動・終了するタイミングを知りたい  引用付きで返信する
返信有難う御座います。
誰も返信しないだろうと思ってチェックしてませんでした。
遅れてすいません。

結局、他の方法はわからなったので原始的な方法をを採用しました。
同じ事をやるならより簡単で分かりやすい方法を使いたいんですよね。
昔、自分が書いたコードとかみると「なんでこんな回りくどいやり方を!?」と思う事が多々有ります。
まぁ、今書いてるの物も来年にはそうなってるんでしょうけど…。

に、2chですか!全否定はしませんし、中には丁寧に教えてくれる人もいるんでしょうけど・・・
う~ん、確かに人は多そうですけどね。ABのスレッドなら見たことあります。
投稿記事 Posted: 2008年11月29日(土) 03:55
  記事の件名:  Re: スクリーンセーバーが起動・終了するタイミングを知りたい  引用付きで返信する
> 特に反応が無いって事は、別の方法は無いって事なのかな。
自分も調べてみましたけど、SystemParametersInfo()関数を使うのが普通みたいですね。
スクリーンセーバーが起動したらスレッドを作って、SystemParametersInfoをグルグル回して引っかかったら、スレッドの終了で良いと思います。
どうせスクリーンセーバー起動してるんですし、スレッド作らずに回してても良いでしょうし。

メッセージをキャッチする「イベントドリブン」も、結局は同じように原始的な方法ですし、スクリーンセーバーが終わった時にメッセージを全部のウィンドウに飛ばすよりも、スクリーンセーバーが終わったことを感知したいウィンドウ(プログラム)だけが拾いに行った方が効率的な気もしますし。
スクリーンセーバーの終了に反応するプログラムを組むことも多くないと思いますしね。

> プログラミング初心者質問掲示板で有名な所ってどこがあるのか知らないけど。
自分は使ったことありませんけど、2chにプログラミング板があるのでそちらを利用してみてはどうでしょう。
自分はもっぱらモバイル板ばかり眺めています...。
投稿記事 Posted: 2008年11月14日(金) 01:32
  記事の件名:  スクリーンセーバーが起動・終了するタイミングを知りたい  引用付きで返信する
特に反応が無いって事は、別の方法は無いって事なのかな。
見てる人も少ないし、こういったAB固有ではない質問は、
別の掲示板にした方が良いような気がしました。
プログラミング初心者質問掲示板で有名な所ってどこがあるのか知らないけど。

とりあえずありがとうございました。
投稿記事 Posted: 2008年11月11日(火) 04:42
  記事の件名:  スクリーンセーバーが起動・終了するタイミングを知りたい  引用付きで返信する
件名のままなのですが、休止・スタンバイになる/復帰するタイミングを知る方法は簡単だったので
同じ要領で分かると思ったのですが、同じ一定時間放置したら起動するものでも少し事情が違うようで、
起動のタイミングはWM_SYSCOMMANDのSC_SCREENSAVEでキャッチできる事が分かったのですが
終了のタイミングはSystemParametersInfoのSPI_GETSCREENSAVERRUNNINGで
起動中か1秒毎に調べるという、なんとも原始的というか面倒臭い方法が多く紹介されていました。

別のやり方でもっと簡単な方法はないか、なにかウィンドウメッセージが送られてこないか調べたのですが
調べ方が悪いのか分からなかったので質問させていただく事にしました。
宜しくお願いします。

OS XP HOME SP3
AB 4.13
投稿記事 Posted: 2008年11月03日(月) 05:01

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


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