- ベストアンサー
デバイスの操作をするプログラムの作成方法
- デバイスの操作をしたいという要望について、PC側からデバイスの処理を検知したり操作したりするプログラムの作成方法について解説します。
- 具体的には、USBメモリカードが挿された時にテキストファイルを保存したり、スマートフォンの電源を入れた時にポップアップを表示する方法についても説明します。
- ドライバのインストールやOSのAPIの利用方法についても触れながら、実際にデバイスの操作を行うために必要な手順を解説します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>で合っているということで良いのでしょうか? だからOSはなんです? と聞いているのですが……。 >(2)上述のUSBメモリの例でいえば、PCのUSBポートの状態を、0.1秒ごとに、ステータスを取得するOSのAPIをコールして、状態をチェックする。 今時のOSならわざわざポーリングしなくても通知する仕組みとかあったりしますよ。 WindowsならWM_DEVICECHANGEとか。 「WM_DEVICECHANGE USBメモリ 検出」辺りで検索すればコード例くらい見つかるでしょう。 LinuxならuDEVなどでの通知も受けられるでしょう。 「Linux USBメモリ 検出」辺りでも見つかるでしょう。 ポーリングの有無を除けば、大筋合っているとは思いますが。 ドライバやAPIの有無は判りませんが。 固有のドライバあったとしてAPIが公開されているか?って問題はありますしね。 # メーカーによっては契約することでAPIとか開示して貰えるかも知れませんが。
その他の回答 (1)
- Wr5
- ベストアンサー率53% (2173/4061)
OSはなんです? Windowsだったとして… >USBメモリカードが挿されたら、 >それをハンドリングして、そのUSBメモリに「Hello world」と書かれたテキストファイルを保存する は、可能ではありますが。 # USBメモリに感染するウィルスだってUSBメモリの接続を検出して感染しますし、 # 接続されたUSBメモリをスキャンするウィルス対策ソフトだってあります。 >スマートフォンとPCを接続して、 >スマートフォンの電源を入れたら、スマートフォンに「Hello world」とポップアップを出す こっちはスマホ側にそういう処理をするモノ(アプリなりAPI)がないと無理でしょうね。 # まぁWindowsMobileやWindowsPhoneでなければ、USBマスストレージとしてしか認識しないのかも知れませんが。 # iPhoneならiTunesでインストールされたドライバが検出するかもしれませんが、デバイスのコントロールはどうですかねぇ。
お礼
ありがとうございます。 上の方でお礼書かせていただきます。
補足
ありがとうございます! 実装の可/不可を無視するとすれば、実装の流れは、 (1)ドライバをPCにインストールしておく (2)上述のUSBメモリの例でいえば、PCのUSBポートの状態を、0.1秒ごとに、ステータスを取得するOSのAPIをコールして、状態をチェックする。 (3)デバイス製造会社が提供するAPIをコール で合っているということで良いのでしょうか?
お礼
失礼しました。 Windowsです。 WM_DEVICECHANGE、すごいです! 便利ですね! USBなり、スマートフォンなり、カードリーダなり、CD-ROMデバイスなり、プリンタなり、APIが公開しているものを使えば、色々できそうですね! ありがとうございます!