このページの本文へ

YUREXをWindows 7のセンサーに大改造だっ! (5/8)

2010年02月08日 13時00分更新

文●本間哲平/面白法人カヤック

  • この記事をはてなブックマークに追加
本文印刷

 次は「SensorsYurexDriver.inx」です。infファイルの元になるファイルですね。

 ドライバをインストールせずにYUREXをPCに接続すると、YUREXはデバイスマネージャー上でHIDデバイスとして表示されます。まずあらかじめこのHIDデバイスのプロパティを表示して、ハードウェアIDを調べておきます。

WS017

ベンダーIDとプロダクトIDを確認する


 ハードウェアIDの画面から、YUREXはHIDクラスのVendorID 0C45、ProductID 1010だと分かります。この情報をもとに、[Microsoft.NT$ARCH$]セクションを変更しましょう。


[Microsoft.NT$ARCH$]
%SensorsYurexDriver.DeviceDesc% = SensorsYurexDriver_Install,HID\VID_0C45&PID_1010


 SensorsBadgeDriverをSensorsYurexDriverにざっくり置換してしまいます。

WS018

SensorsBadgeDriverをSensorsYurexDriverに置換する


 [UMDFSensorsYurexDriver_Install]セクションのDriverCLSIDを新しいドライバのClass IDに書き換えます。これは「SensorsYurexDriver.idl」に書いた2番目のuuidと同じ値を指定します。


DriverCLSID             = {98BE40DF-21E2-47b1-AEF4-0F9B2E1A0065}


 [Strings]セクションはお好みで書き換えればOKだと思います。

 さあ、あともう少しです……。クラス名やファイル名を変更しなければ、ここまで編集作業は多くないのですが、この作業はWDKに含まれているSensor Driver Skeleton Sampleで指定されている手順ですのでもう少しお付き合いください。完全なスケルトンから実装したい方はSkeleton Sample(C:\WinDDK\7600.16385.0\src\SensorsAndLocation\SensorSkeleton)を参考にしてください(HIDを使わない場合など)。

 dllsup.cppファイルを開いてクラス名をCSensorsYurexDriverModuleに書き換えます。


class CSensorsYurexDriverModule : public CAtlDllModuleT<CSensorsYurexDriverModule> {} _AtlModule;


 Driver.hも2行置換するだけです。


public CComCoClass<CMyDriver, &CLSID_SensorsYurexDriver>,
OBJECT_ENTRY_AUTO(__uuidof(SensorsYurexDriver), CMyDriver)


 Driver.cppは1行だけ置換です。


#include "SensorsYurexDriver.h" // IDL Generated File


 複数ファイルをまとめて置換すれば、何工程か減らせますね。今後、ドライバをバリバリ生産する予定の人は、ぜひ自動化したいところです。

この連載の記事

一覧へ

この記事の編集者は以下の記事をオススメしています