質問: ご覧くださりありがとうございます。 プリクラのように、店舗に設置する撮影機械システムを現在開発しています。 開発が終わったら、クライアントが用意した筐体(OSはwindows)にシステムを納品します。 このような経験が初で周りにもいなかったので質問致します。よろしくお願い致します 現在の自分の開発環境はOSがwindows10で、UnityやPhotoshop等の複数アプリケーションを連携させたものを作っています。 ### 実現したいこと システム納品後、店舗側の操作オペレーションとして以下2点を実現したいです ``` ・誤操作防止のため、起動中のアプリケーションに対する操作を受け付けない ・操作を最小にしたい(例:電源のON<->OFFのみ) ``` ### 調べたこと ``` ・windowsのサービス登録はバックグラウンドで起動できるプログラムになら使える ・アプリの自動起動(スタートアップ)のタイミングはユーザーログイン時。自動起動にはログインする必要がある ``` 現在の自分の設計だと、 ユーザーログイン後に起動中のアプリケーションやその関連ファイルに触れようと思えば触れられます。 ### 質問内容 ``` ・店舗用のユーザーアカウントでの操作を極めて限定的にする事は可能でしょうか? ログイン後の画面操作は電源のシャットダウンor再起動のみにさせる等 ・windowsの設定や権限うんぬんではなく、開発するシステムの設計思想で何とかする話でしょうか? その場合、有効な手法・考え方があれば大変助かります また、使用経験がありませんが、 ・windows embededでは近い事が実現できるのでしょうか? ``` このような案件を開発する上で根本的な質問となりますが、どうぞよろしくご教示お願い致します。 ※システム設計思想抜きで話をごくシンプルにしますと、 **スタートアップで起動したPhotoshopに対してのユーザー操作を無効にできれば目的自体は達成できそうです**
回答: こんにちは。 > > スタートアップで起動したPhotoshopに対してのユーザー操作を無効にできれば目的自体は達成できそうです > > > 至極シンプルな解は、マウスやキーボード等の汎用入力デバイスを一切取り付けないことですね。 電源ボタンをシャットダウンとして設定すれば電源ON/OFFも問題ないかと。 筐体にいれるのでしたら専用の操作パネルを用意するでしょうから、それ用にデバイス・ドライバを用意してアプリが直接デバイス・ドライバから入力情報を取得すれば確実と思います。 USBデバイスならWinUSB.sysを使えばカーネル・モード・ドライバは作らなくて済むので多少楽できると思います。 メンテ時のみマウスとキーボードを接続すれば普通に使えるので便利と思います。