キオスク型のWindowsシェル、または従業員を慎重に理解する方法

少し前まで、私の良き友人から、作業中のコンピューター上の1つを除くすべてのプログラムをブロックするように頼まれましたが、これはエクスプローラーではありませんでした:)。



また、ポリシーで必要なプログラム以外のすべてのプログラムの起動をブロックしようとしましたが、エクスプローラーはとにかくホットキーによって起動され、必要に応じて多くのことを実行できます。



Windowsシェルを置き換えようとしました-explorer.exeの代わりに目的のプログラムの起動を設定しました。 しかし、最初に、目的のプログラムはグラフィカルモードで動作し、direct-xには初期化する時間がないと思われ、プログラムはその不在について不平を言いました。 また、プログラムを終了しても、ユーザーセッションは終了しませんでした。



即興的な手段で問題を解決したいと思っていました。



次のステップは、目的のプログラムの起動と、その後のlogoff.exeを含むbatファイルでした。そのため、プログラムが終了するとセッションが閉じられます。 すべては何のようにも思えない-しかし、最初に、プログラムは直接Xの欠如について文句を言い続けました(後で起動されましたが)、そして次に、最小化された状態でバッチファイルを起動しても、ウィンドウが表示されました-それを中断できます。 ユーザーは、必要に応じてプロセスに参加し、一般に受け入れられない問題を作成する可能性があります。



私は基本的なスクリプトを試しましたが、それを実行するには、すべての後続の状況でエクスプローラーを実行する必要があります(おそらく、エクスプローラーがなくても何とかできますが、方法が見つかりませんでした)。



簡単な解決策が見つからなかったため、目的のプログラムを実行し、完了時にセッションを終了する簡単なシェルをすばやく作成することにしました。



筆記用具として、最新のc ++ expressビジュアルスタジオをダウンロードし、プログラムを積み上げました。



グラフィカルプログラムをすぐに起動すると、direct-xがないことも不平を言うが、メニューから実行すると、静かに喜んで起動することがわかった。



このシェルをコンピューターに置くためにそれを運びました-コードは.net用にコンパイルされていることがわかりました-そして、私のマイクロプログラムにのみインストールするのはいけないことだと思いました。 帰宅してビジュアルスタジオの設定を調べたところ、きれいなwin32コードを取得できないことに気付きました。私は一般にphpプログラマーであり、浅いプラットフォーム用の厚いソリューションをプログラミングすることにあまり魅力がありません。



本当に動揺していないので、古き良きVisual Studio 6.0を使用してwin32 APIで同じことをすることにしました。 同時に、私は私の最愛の人のためにいくつかのアメニティを追加することを決めました-たとえば、レジ​​ストリを介して許可されたプログラムのリストを設定します(変更からファイルを保護することはより困難です)、すなわち このシェルのすべての設定はグローバルレジストリセクションに格納されており、単なる人間には変更できません。 また、プログラムを起動するためにフックを掛けることを考えています(上級ユーザーがファイルを開くまたは保存するためのダイアログボックスからカードのゲームを開始する場合)、未解決のプロセスを中断するか、それらをまったく開始できないようにします-それでも簡単/簡単にする方法はまだわかりません)。 また、一般的にファイルをブロックするために、ファイルを開くまたは保存するダイアログでファイルをコピーすることも考えています。 また、単純なユーザーへのデバイスのインストールを禁止する必要があります。



一般的に、日没は手動で:)



誰かがすでにそのような問題を解決しているのでしょうか? 私はそれが3つのキックで決定されていると感じています、そして、ここで私はすでにそのニュースを離婚しました。



All Articles