製品に付属のSDKを使用する代わりに、USBデバイス用に独自のコントローラーを作成しようとしています(SDKは標準以下だと思います)。
USBデバイスは、このアプリケーションが実行されているのと同じサーバーに接続されています。
そこで、Nugetにアクセスして、HidLibraryを取得することにしました。
PM>インストール-パッケージhidlibrary
そして、 GitHubにある例に従いました。
まず、コントロールパネルに移動して、VendorIDとProductIDを確認しました。
そして、それを自分のコードにドロップしました。
次に、デバイスを取得する行にブレークポイントを設定しましたが、残念ながら、常に戻ってきnull
ます。
using HidLibrary;
public class MyController : ApiController
{
private const int VendorId = 0x0BC7;
private const int ProductId = 0x0001;
private static HidDevice _device;
// POST api/<controller>
public string Post(CommandModel command)
{
_device = HidDevices.Enumerate(VendorId, ProductId).FirstOrDefault();
if (_device != null)
{
// getting here means the device exists
}
else
{
// ending up here means the device doesn't exist
throw new Exception("device not connected");
}
return null;
}
私はそれが何かばかげたことであり、IISワーカーから直接USBデバイスに接続することに関するいくつかの取引を破る許可の問題ではないことを望んでいます。