このページの本文へ

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

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

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

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

 次は「SensorsYurexDriver.idl」ファイルです。先ほどのGUID Generatorでまた新しいGUIDを生成して、2カ所のuuidから始まる行を書き換えましょう。併せて、libraryとcoclassの2行も書き換えておきます。


library SensorsYurexDriverLib
coclass SensorsYurexDriver


 「SensorsYurexDriver.ctl」を開きます。これは1行しかないファイルです。「internal.h」ファイルに書いたGUIDと同じGUIDを指定します。


47AF43CD-7CF4-4E49-AAC0-CAA12C2C0B6F   SensorsYurexDriverTraceControl


 やっとここから、ちょっと実装に入れます。「Defines.h」を開いて、HIDのレポートの形式をデバイスで決められたフォーマットに書き換えます。

 YUREXの場合、以下のようにしておきます。


typedef struct _OUT_STRUCT {
BYTE command_id;
BYTE datas[7];
} OUT_STRUCT;
typedef struct _IN_STRUCT {
BYTE command_id;
BYTE datas[7];
} IN_STRUCT;


 HIDのレポートの形式を変更したので、このままだとビルドエラーが出ます。「SensorDdi.cpp」を開いて不要な行を削ってしまいましょう。とりあえずsend_report.device_idとsend_report.sensor_idを指定している行は必要なさそうです。

 ほかには、


if (TRUE == IsEqualPropertyKey(Key, SENSOR_PROPERTY_CURRENT_REPORT_INTERVAL))


から始まるブロックも今回は使いません。あとで機能を拡張するときには、このブロックでいろいろ操作することになります。

この連載の記事

一覧へ

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