HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2014
0320
roppyakukeeスタートメニューを探知し、消したいが・・・7解決


roppyakukee

リンク

2014/3/20(Thu) 21:36:21|NO.60787

以下の有力なスレを発見したのに知識不足すぎてよくわからない。
http://hsp.tv/play/pforum.php?mode=pastwch&num=41410



FindWindow "ウィンドウの名前?", 0で
指定された名前のもののハンドルをstatに返す事はなんとなくでわかった。
「IsWindowVisible ハンドル」で・・・非表示か表示されているかを確認する?

sendmsg ハンドル, WM_SYSCOMMAND, 0xF130
で、表示状態にする?WM_SYSCOMMAND, 0xF130がイミフ
sendmsg ハンドル, WM_USER+12,0,0
同じくWM_USER+12,0,0って何を意味しているのか・・・

スタートメニューはDV2ControlHostまたはBaseBarと表されているらしい・・・
OSによってどちらかで・・・



・・・間違ってそう
C言語触れたこともないのでどう調べていいか、どう読んでいいかもサッパリ。
身勝手な質問だと思いますが、解説お願いできますか?



この記事に返信する


(’’

リンク

2014/3/20(Thu) 23:13:39|NO.60788

スタートメニューの名前は恐らく決まってません。
なので無理に消しても別の環境では動かないはずです。
Win8とWin7のスタートは全然違うしね。

単にウィンドウズボタンでスタートを出したくないなら新しくデスクトップを作るという方法があります。



MillkeyStars

リンク

2014/3/21(Fri) 01:01:08|NO.60794

名称というか、ウィンドウクラス名ね。
Windows Vista / 7 / 8 は、ベースが Vista なので、「DV2ControlHost」で合ってるよ。

ウィンドウ名が「スタートメニュー」でクラス名が「DV2ControlHost」を検索すればいい。
検索してもし見つかったら、スタートメニューが表示されている。

以下、「DV2ControlHost」用サンプル

#uselib "user32.dll" #cfunc FindWindow "FindWindowA" sptr,sptr #cfunc IsWindowVisible "IsWindowVisible" int #define WM_SYSCOMMAND 0x0112 TargetHWND = 0 *main TargetHWND = FindWindow("DV2ControlHost","スタート メニュー") if TargetHWND != 0{ if IsWindowVisible(TargetHWND) == 1{ SendMsg TargetHWND,WM_SYSCOMMAND,0xF130 dialog "スタートメニューの表示を確認しましたが、強制的に閉じました。" stop } } await 100 goto *main



roppyakukee

リンク

2014/3/21(Fri) 10:07:51|NO.60801

>(’’さん
新しくデスクトップを作る!?仮想デスクトップ的なものがHSPで???

>MillkeyStarsさん
サンプルの感じです!これがやりたかった!
FindWindow関数に第二引数があったんですか、分からない・・・
あれ、元のFindWindowA sptr,sptrが見たこと無い・・・たぶんクラス名,ウィンドウ名
なんだろうけど、クラス名だけで探知できたらミスも少なそう



MillkeyStars

リンク

2014/3/21(Fri) 10:11:19|NO.60802

どちらか一方で検索する場合は、必要がない方を 0 で指定してください。

ウィンドウクラスのみ
FindWindow("DV2ControlHost",0)

ウィンドウ名のみ
FindWindow(0,"スタート メニュー")



roppyakukee

リンク

2014/3/21(Fri) 10:37:55|NO.60803

>MillkeyStarsさん
おぉー、ありがとうございます。そんな風に使えるんだ


あとは(’’さんの言うデスクトップを作る方法だが・・・
http://chokuto.ifdef.jp/urawaza/dispcopy.html
は関係ないですよね。画面のコピーですし・・・どうするんですか?



(’’

リンク

2014/3/21(Fri) 14:51:52|NO.60808

デスクトップ作成はC++ですがここのやつです。
http://katahiromz.web.fc2.com/win32/desktop.html

それとスタートメニュー消すやつは8では動きませんでした。
二次三次に何かを介して仕様をいじるので不安はあるけど動けばいいやみたいなコードは非推奨です。



roppyakukee

リンク

2014/3/21(Fri) 15:13:15|NO.60810

うわ、C++ですか、第三の言語が現れて
にわかな僕にはもうどうにも・・・

とりあえずMillkeyStarsさんの方法で行こうと思います。
ポップアップとかは定期的に最前面にすれば・・・いける?



ONION software Copyright 1997-2023(c) All rights reserved.