お聞きしたい事があります。パソコンの電源を入れOSが立ち上がって、VBで作成したアプリケーションが画面いっぱいに起動し、そのときにはVBのアプリケーションだけしかマウスで操作できなくし、そのアプリケーションを終了したときには、windowsの終了画面に飛ぶ方法というのはどうしたらよいのでしょうか?
VBが起動してるときにはパソコンの機能を操作させてくないのです。お願いですが、教えてください。m(_ _)m
んー、その手の話はC言語のほうが得意そうですねぇ、
今ならBorlandCCompiler(http://www.borland.co.jp/)などのコンパイラがフリーで入手できるので、それを使うといいです。
専用のエディタが、ベクターで同じくフリーでダウンロードできます。
VBではランタイムとのアクセスなどで、どうしても遅くなってしまいます。
そういう動作には向きません。
何はともあれ、仕方といえば…。
C言語での方法はよく知らないので、VBでやるとして書きます。
ウィンドウを最大化して、なんとかしてタスクバーを隠します。
タスクバーウィンドウに、ShowWindowを送っても…消えるかどうかわかりませんけど。
もちろんウィンドウのキャプションバーも隠します。
そうすれば、マウスはウィンドウの上しか通りませんね。
そして、そのウィンドウが閉じようとすると同時に、Windowsに終了メッセージをおくれば、完成ですね。
Windowsを終了するには、ExitWindowsExなどのAPIを使います。
ただし、NT系のOSでは、
Windowsを終了する権利を、プロセスが持たなくてはいけません。
AdjustTokenPrivilegesを使って、Windowsを終了する権利を与えます。
こんな感じだそうです。
http://www.runan.net/program/tips/sdk_13_ExitWindowsEx.shtml
やはりそうですかぁ〜VBではむずかしいですよね。
うーん。ありがとうございます。
C言語でもそんなに難しいことをする必要はなさそうなので、
この期に少し試してみては?
ウィンドウを作成するとかならつらいですけど、そういうわけでもないし。
あと、HSPというソフトがありますが、
それで作っても、大差はないと思います。
それも結局、C言語ベースのソフトを作るわけですし。
http://www.onionsoft.net/
わかりました。たかみちえさん。ありがとうございます。
Cでもいろいろやってはみてるんですけど。。なかなか。がんばります。