次は「SensorsYurexDriver.inx」です。infファイルの元になるファイルですね。
ドライバをインストールせずにYUREXをPCに接続すると、YUREXはデバイスマネージャー上でHIDデバイスとして表示されます。まずあらかじめこのHIDデバイスのプロパティを表示して、ハードウェア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にざっくり置換してしまいます。
[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
複数ファイルをまとめて置換すれば、何工程か減らせますね。今後、ドライバをバリバリ生産する予定の人は、ぜひ自動化したいところです。