>>914
自己レス
DIFxLIB(DIFxAPI)と組み合わせるたら、Windows XPでそこそこいい感じになった

インストール:
・デバイスを手動で登録する(非PnPなので)
 devconのcmdInstall()のソースを移植、但しcmdUpdate()の呼び出しは削除
※既にデバイスが存在する場合は、この処理はスルーすること
・で、DriverPackageInstall()でドライバをインストール

アンインストール:
・デバイスを削除する。devconのcmdRemove()とRemoveCallback()あたりを参照
 あとEnumerateDevices()あたりも
・で、DriverPackageUninstall()でドライバを削除。

Windows XPだとDriverPackageUninstall()がそこそこいい感じにファイルを削除してくれる
C:\Windows\System32\drivers以下にコピーされたファイルも削除してくれる
(Windows 7以降では削除されないけど、DriverPackageUninstall()の仕様なので)

ただ新しいドライバに更新した後にアンインストールすると、
ドライバ・ストアから最新のドライバ・パッケージは削除されるけど、
古い世代のドライバ・パッケージは全バージョン残ったままになってしまう
DIFxAPIの仕様なんだろうか?