C# 如何使用CreateFile()处理HID设备?

C# 如何使用CreateFile()处理HID设备?,c#,hid,createfile,C#,Hid,Createfile,我正在尝试连接条形码扫描仪(是一个HID设备)。我可以使用RawInput接收数据,但我想尝试使用CreateFile() CreateFile()返回以下内容: GetLastWin32Error()返回5,这是错误\u访问被拒绝 我用它作为参考 我的问题是:是否可以使用CreateFile()创建hid设备的句柄?如果是,为什么拒绝访问?创建句柄的正确方法是什么 PS:Windows 10,Visual Studio 2015您是否使用Windows“炸弹包装”(Compact)框架?您是

我正在尝试连接条形码扫描仪(是一个HID设备)。我可以使用RawInput接收数据,但我想尝试使用CreateFile()

CreateFile()返回以下内容:

GetLastWin32Error()返回5,这是错误\u访问被拒绝

我用它作为参考

我的问题是:是否可以使用CreateFile()创建hid设备的句柄?如果是,为什么拒绝访问?创建句柄的正确方法是什么


PS:Windows 10,Visual Studio 2015

您是否使用Windows“炸弹包装”(Compact)框架?您是否尝试过以管理权限运行?@B.ClayShannon,我不确定它是否是Compact框架。我不知道怎么检查。但据说.NETFramework2.0在该项目的Properties@RonBeyer是的,我试过了。结果与您使用Windows“炸弹包装”(Compact)框架相同?您是否尝试过使用管理权限运行?@B.ClayShannon,我不确定它是否是Compact框架。我不知道怎么检查。但据说.NETFramework2.0在该项目的Properties@RonBeyer是的,我试过了。结果是一样的
deviceInformation.ReadHandle = Kernel32.CreateFile(
                    deviceInformation.DevicePathName,
                    Constants.GenericRead,
                    Constants.FileShareRead | Constants.FileShareWrite,
                    IntPtr.Zero,
                    Constants.OpenExisting,
                    Constants.FileFlagOverlapped,
                    0);
int it = Marshal.GetLastWin32Error();