我使用以下工具箱:HidLibrary
因为我是初学者,所以我只想知道如何从USB设备获取序列号。
内部.dll定义为:
public bool ReadSerialNumber(out byte[] data)
{
data = new byte[64];
IntPtr hidHandle = IntPtr.Zero;
bool success = false;
try
{
if (IsOpen)
hidHandle = Handle;
else
hidHandle = OpenDeviceIO(_devicePath, NativeMethods.ACCESS_NONE);
success = NativeMethods.HidD_GetSerialNumberString(hidHandle, ref data[0], data.Length);
}
catch (Exception exception)
{
throw new Exception(string.Format("Error accessing HID device '{0}'.", _devicePath), exception);
}
finally
{
if (hidHandle != IntPtr.Zero && hidHandle != Handle)
CloseDeviceIO(hidHandle);
}
return success;
}
如何调用方法获取设备的SN?我尝试但没有成功。我还没有使用“out byte []”。 “out byte”背后的含义是什么?
请求帮助!
答案 0 :(得分:2)
要调用该方法,您可以使用以下内容:
data
我假设如果方法成功则结果为true,如果失败则结果为false。如果成功,我希望out
变量可以填充您需要的数据。
此外,如果您不确定<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:src="@android:drawable/ic_menu_add"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
app:elevation="5dp"
app:borderWidth="0dp"
app:fabSize="mini"/>
在此上下文中的含义,请参阅该主题的MSDN页面。