====== USB Select ====== このページより詳しい[[http://d.hatena.ne.jp/solipt/00000102|レビュー記事]] ====== はじめに ====== W-ZERO3をはじめとして、Windows Mobile 5/PocketPCには、複数のUSBクライアント機能を持っているものがあります。物理的な、ラインは一本なので、それぞれは排他的にしか利用できません。 W-ZERO3では、ActiveSync(NDIS)とモデムの切替が、コントロールパネルでサポートされていますが、これらの他に、USBマスストレージドライバと、USBシリアルドライバも内蔵されており、それらを有効にしてやることも可能です。 [[http://www.wildtree.jp/~araki/modules/mydownloads/singlefile.php?cid=11&lid=26|USB Select]]は、システム未サポートのこれら、USBマスストレージおよび、USBシリアルも加えた、USBクライアント機能を任意に切りかえるツールです。レジストリエディタや、レジストリ修正ツールを用いても、同等の機能が実現できますが、それらのツールが、設定後リブートを必要とするのに対して、[[http://www.wildtree.jp/~araki/modules/mydownloads/singlefile.php?cid=11&lid=26|USB Select]]は、**切替が即時((USBマスストレージへの切替は、即時に行なわれますが、PC側が認識するのに一分程度の時間を要します。これはマイクロソフト製USBマスストレージドライバの問題です。))に反映されるのが特長です**。 ====== インストール ====== [[http://www.wildtree.jp/~araki/modules/mydownloads/singlefile.php?cid=11&lid=26|USB Select]]の配布はCAB形式で行なわれています。このCABをW-ZERO3(乃至はWindows Mobile 5端末)にコピーしてインストールしてください。このときに旧版がインストールされていると、新版のインストールに失敗する場合があります。この場合次の作業を行なってください。 - USB Select Todayが有効になっていたら、これをOFFにする。 - \Program Files\USB Select を削除する。 なお、[[http://www.wildtree.jp/~araki/modules/mydownloads/singlefile.php?cid=11&lid=26|USB Select]]本体の動作には、[[http://www.microsoft.com/downloads/details.aspx?FamilyID=9655156b-356b-4a2c-857c-e62f50ae9a55&DisplayLang=ja|.NET Compact Framework 2.0]]が**必要**になりますので、あらかじめインストールしておいてください。**USB Select Todayの動作には追加のライブラリなどは必要ありません**。 ===== USB Select本体 ===== スタートメニュー→プログラム→USB Selectに起動用ショートカットが追加されます。 ===== USB Select Today ===== [[http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbseltd1.PNG|{{http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbseltd1.PNG}}]] スタートメニュー→設定→Today→Itemsに"USB Select"が追加されます。有効にするには、チェックボックスにチェックを入れてください。 ====== USBクライアント機能を切りかえる ====== ===== USB Select本体 ===== USB Select本体にはGUIを利用して切りかえる機能と、コマンドラインオプションで切りかえる機能の二つが実装されています。 ==== GUIで ==== [[http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbsel0.PNG|{{http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbsel0.PNG}}]] 普通に起動すると、図のような画面になります。プルダウンには、現在機能しているアイテムが表示されていますので、必要に応じて切り替えたい機能をリストから選択してください。 切替は、リストからアイテムを選択した時点で有効になりますが、USBマスストレージだけは、PCやMacが認識するまでに、一分程度時間がかかります。これは、内蔵されているマイクロソフト製ドライバの制限です。 なお、USBマスストレージモードで、USBケーブルがつながれた状態では、W-ZERO3側から、miniSDカードにアクセスすることが出来ません。別のモードに切り替えるか、USBケーブルをはずすと、W-ZERO3側からアクセス可能になります。 [[http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbsel1.PNG|{{http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbsel1.PNG}}]] USBマスストレージドライバには、ベンダIDとプロダクトIDというものがあります。通常は、ドライバや機器を作成したベンダと、そのプロダクトのIDが設定されていて、変更する必要はないのですが、W-ZERO3のマイクロソフト製ドライバは、ベンダIDはともかく、プロダクトIDがFFFFとなっていて、ドライバのソースにも、「変更するように」と書かれているようなシロモノなので、場合によっては、ホスト側にうまく認識されない可能性があります。そのような場合に、この「マスストレージ」タブで、値を変更してやると、或いは認識されるかもしれません。なお、「規定値」は、USB Selectが初回に起動された時点で、レジストリに設定されていた値なので、それ以前に値が変更されていた場合には、システムの規定値とは違う値になります。ご注意ください。 ==== コマンドラインで ==== UsbSelect.exe [-q] <0|1|2|3> [0|1|2|3] * 0 ... Active Sync (NDIS) * 1 ... Modem * 2 ... USB Mass Storage * 3 ... USB Serial コマンドラインで、数値を使って、有効にするデバイスドライバを指定できます。数字はひとつ、または二つ指定することが出来ます。ひとつ指定した場合には、指定されたドライバを有効にします。二つ指定した場合には、一つ目の数字で指定されたドライバが、現在有効化されているドライバと同一だった場合に、二つ目の機能を有効化します。この機能によって、トグル動作するショートカットなどを作成することが出来ます。 UsbSelect.exe -q 0 2 上のようなショートカットを作った場合に、このショートカットを起動すると、ActiveSync(NDIS)とUSBマスストレージをトグル動作で切り替えます。 なお、-qはquietオプションで、これを指定しないと、小さなダイアログをポップアップして、どのドライバが有効化されたかを通知します。通知が不要な場合には、-qをつけて利用してください。 ===== USB Select Today ===== [[http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbseltd0.PNG|{{http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbseltd0.PNG}}]] USB Select Todayは、Today画面のアイテムとして、USB Selectの機能を組み込むものです。Todayの設定で、有効化されると、図のように、USBのアイコンと、左から、ActiveSync(NDIS)、モデム、USBマスストレージ、そして、USBシリアルのアイコンボタンを持ったパネルが現れます。このうち、背景が赤くなっているパネルが現在有効となっている機能です。有効にしたいボタンをタップすると背景の赤が移動し、そちらの機能が有効になります。直感的に理解できると思うのでこれ以上の説明は不要かと思います。 [[http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbseltd2.PNG|{{http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbseltd2.PNG}}]] 設定→Today→アイテム→USB Select→オプション...を開くと、パネルに表示するボタンを選択できます。例えば、ActiveSync(NDIS)と、マスストレージだけあれば十分だという場合には、その二つのチェックボックスにのみチェックを残しておけば、パネルには、余計なボタンが表示されなくなります。(Ver 1.01以降) [[http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbseltd3.PNG|{{http://www.wildtree.jp/~araki/modules/bwiki/img/WZ3usbseltd3.PNG}}]] カーソルキー(5Wayナビゲーション)による操作を行なうことも出来ます。 (Ver 1.02以降) 上下ボタンで、フォーカスを、USB Select Todayのパネルにあわせて(背景がハイライトに変わります)、その状態で、左右ボタンで、アイコンを選択し、SELECTボタン(またはRETURNキー)で、決定すると、選択中のアイコンがタップされたのと同様に、その機能を有効にします。図は、USBマスストレージが選択中で、ActiveSync(NDIS)が現在、有効になっている状態にあります。この状態でSELECTを押すと、USBマスストレージが有効になります。ハイライトの色は微妙な違いですが、動かしてみれば区別できると思います。 ====== 権利および免責 ====== 本プログラムは、フリーソフトウェアとします。再配布等は、商用の利用を除いて、自由に行なってもらってかまいません。雑誌、書籍等へ掲載される場合にはご一報いただきますようお願いいたします。 本プログラムの動作検証は、エミュレータおよびW-ZERO3実機で行なっており、万全を期していますが、本プログラムの利用によって発生する、いかなる、障害や損害も当方はその責を負いません。利用に際しては自己責任でお願いします。 また、本プログラムはUSBクライアント機能を切りかえますが、有効化されるドライバは、それぞれのベンダがシステムに添付しているもので、その動作に関して、当方は一切関知しません。 ====== 謝辞 ====== 勢いで作った、ツールに速攻で、詳細な[[http://d.hatena.ne.jp/solipt/00000102|レビュー]]をつけてくださった、[[http://d.hatena.ne.jp/solipt|W-ZERO3ツールMEMO]]のSoliptさんに感謝いたします。ぽんとCABを置いただけのツールに、大勢のユーザがついてくれたのは、Soliptさんのレビューのおかげです。ありがとうございました。 ====== 更新履歴 ====== * Ver 1.03 * カーソルキーによるオペレーションのバグ修正 * 上記のためボタン管理を完全に書き直し * Ver 1.02 * カーソルキーによるオペレーションの追加 * メッセージ処理の改善(内部処理の変更) * Ver 1.01 * USB Select Todayで、ActiveSync(NDIS)が選択できなくなる不具合の修正 * USB Select Todayで表示するパネルを選択できるようにした。 * Ver 1.00 * USB Select Todayを添付し正式公開。 * Ver 0.93 * コマンドラインオプション * マスストレージドライバのidProduct/idVendor切替 * エラーチェック強化 * Visual Studio 2005正式版でリビルド * Ver 0.92 * シリアルドライバを追加 * スタートメニュー直下から、プログラムの下へショートカットを移動 * パッケージを修正しWM5用であることを明示 * Ver 0.91 * 横画面でも見苦しくないレイアウトに変更 * Ver 0.90 * β公開版 [[W-ZERO3:W-SIM端末:Windows Mobileに関して]]へ戻る。