[リストへもどる]
一括表示

投稿時間:2002/10/16(Wed) 15:58
投稿者名:さかえ
Eメール:
URL :
タイトル:
キーボードでの画面制御について
ある業務システムにてBASE.EXEとそこから実行される複数のEXEがあります。
それらEXEはタスクには非表示の設定であり、BASEは常に実行状態です。
その上で下位EXEは処理されるのですが、下位が実行されている間は常に
下位EXEを最前面に表示し、BASEは裏で表示されている状態です。
(画面は全て最大表示固定)

この時キーボードによる操作で画面の切替やタスクバーの表示をされたくない
のですが、以下の条件に該当する方法はあるのでしょうか?

 ・APIを極力使用しない
 ・CTRL+ALT+DELETE は使用可能

何卒皆様方のお知恵を拝借させて下さい。お願いします。

実行OS:WIN2000
開発環境:WIN98 VB6(SP5)

投稿時間:2002/10/17(Thu) 00:00
投稿者名:NAO★
Eメール:
URL :
タイトル:
Re: キーボードでの画面制御について
こういう、システム全体に影響するようなことは
APIを使っても難しいかと思います。

とりあえず、「システムモーダル」あたりを
キーワードに検索してみては。

全然参考にならなくてすみません。

投稿時間:2002/10/17(Thu) 07:22
投稿者名:坂磨呂
Eメール:
URL :
タイトル:
Re: キーボードでの画面制御について
> この時キーボードによる操作で画面の切替やタスクバーの表示をされたくない
> のですが、以下の条件に該当する方法はあるのでしょうか?

こういうことでしょうか?
もしも1つの EXE で当システムが開発されているのであれば、
この問題は発生しない。
が、複数の EXE で開発されているので、
複数 EXE が起動するとタスクバー等に複数表示されるので、
エンドユーザから見ると1つのシステムとは見えず、混乱がある。

このような問題であれば、
BASE.EXE から下位EXE を起動後、BASE.EXE を終了。
下位EXE 終了時には BASE.EXE を起動。
という方法で逃げた経験があります。

投稿時間:2002/10/17(Thu) 10:04
投稿者名:さかえ
Eメール:
URL :
タイトル:
Re^2: キーボードでの画面制御について
NAO★さんありがとうございます。

システムモーダルは何度か試してはみたのですが、CTRL+ESCやALT+TABで画面が
切り替わってしまうので残念ながらダメでした。

> こういう、システム全体に影響するようなことは
> APIを使っても難しいかと思います。
本当にその通りです。調べ始めてから、各HPやログを探し当てるたびに実現が
難しくなってきているような気がします。


坂磨呂さん、早朝からの返信ありがとうございます。

> こういうことでしょうか?
> もしも1つの EXE で当システムが開発されているのであれば、
> この問題は発生しない。
> が、複数の EXE で開発されているので、
> 複数 EXE が起動するとタスクバー等に複数表示されるので、
> エンドユーザから見ると1つのシステムとは見えず、混乱がある。
>
> このような問題であれば、
> BASE.EXE から下位EXE を起動後、BASE.EXE を終了。
> 下位EXE 終了時には BASE.EXE を起動。
> という方法で逃げた経験があります。

BASEと下位EXEの交互起動と終了、確かにこれであれば・・・。
ただ、ここで補足をさせてもらいます。
 ・画面は起動時から終了まで全部が最大表示で固定
 ・タスクバーへの登録(表示)はしない。タスクバー自体の表示もしない。
 ・CTRL+ESC、ALT+TAB、ALT+ESC は操作できてはならない。
 ・TAB、SHIFT+TAB、CTRL+ALT+DELETE は操作できなければならない。
 ・BASE.EXEの終了はPCのシャットダウンも行う。

システムを入れた PC はそのシステム専用とするので他の処理が出来ないように
するという理由がある故にこれ程の制約が発生してしまいました。

どうかこの条件をクリアできる方法を教えてください。
お願いします。

投稿時間:2002/10/17(Thu) 10:35
投稿者名:Say
Eメール:
URL :
タイトル:
Re^3: キーボードでの画面制御について
グローバルキーフックするしかないのでは?(VBのみでは実現不能)

投稿時間:2002/10/17(Thu) 13:52
投稿者名:さかえ
Eメール:
URL :
タイトル:
Re^4: キーボードでの画面制御について
Sayさん、ありがとうございます

> グローバルキーフックするしかないのでは?(VBのみでは実現不能)

「実現不可能」の一言で踏ん切りがつきました。
色々と助言を頂いた方々には申し訳ありませんが、一旦この件は打ち切る事にします。
とりあえず、ユーザーへキーボード操作に気をつけるようにと言うことで逃れます。
また、何か解決策が見つかりましたら報告しますので、今回はこれにて失礼します。