POS for .NET を使用して MSR デバイスを検索し、デバイス名と一致するインスタンスを返す次のコードがあります。次に、MSR デバイスがコンピューターに接続されていなくても、正常に検出されたインスタンスを開いて要求します。なぜこれが可能ですか?デバイスを開いて要求する前に、デバイスが本当に取り付けられているかどうかを知る方法はありますか? デバイスが接続されていないときに Open() または Claim() を呼び出しても、例外などは発生しません。どんなガイダンスも大歓迎です。
PosExplorer explorer = new PosExplorer();
var devices = explorer.GetDevices(DeviceType.Msr);
foreach (DeviceInfo deviceInfo in devices)
{
if (deviceInfo.ServiceObjectName.ToLower() == deviceName.ToLower())
{
PosDevice posDevice = explorer.CreateInstance(deviceInfo);
if (posDevice is PosCommon)
{
posCommon = posDevice as PosCommon;
_log.Debug(string.Format("Instance of device {0} created.", deviceName));
break;
}
}
}