• 大小: 0.32M
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2024-04-29
  • 语言: C#
  • 标签: hid  usb  sb  C#  

资源简介


资源截图

代码片段和文件信息

/* ---------------------------------------------------------- 
文件名称:DeviceIoControl.cs 
 
作者:秦建辉 
 
MSN:splashcn@msn.com 
QQ:36748897 
 
博客:http://blog.csdn.net/jhqin 
博客:http://ccjt.taobao.com 
 
开发环境: 
    Visual Studio V2010 
    .NET framework 4 Client Profile 
 
版本历史: 
    V1.0    2011年10月10日 
            实现对DeviceIoControl接口的PInvoke 
 
参考资料: 
    http://www.pinvoke.net/ 
------------------------------------------------------------ */
using System;
using System.Runtime.InteropServices;

namespace Splash.IO.PORTS
{
    #region ENUM
    public enum USB_HUB_NODE : uint
    {
        UsbHub
        UsbMIParent
    }

    //USB连接状态
    public enum USB_CONNECTION_STATUS
    {
        NoDeviceConnected
        DeviceConnected
        DeviceFailedEnumeration
        DeviceGeneralFailure
        DeviceCausedOvercurrent
        DeviceNotEnoughPower
        DeviceNotEnoughBandwidth
        DeviceHubNestedTooDeeply
        DeviceInLegacyHub
    }

    public enum USB_DEVICE_SPEED : byte
    {
        UsbLowSpeed    // 低速USB 1.1  
        UsbFullSpeed   // 全速USB 1.1  
        UsbHighSpeed   // 高速USB 2.0  
        UsbSuperSpeed   // 极速USB 3.0  
    }
    #endregion

    public partial class USB
    {
        internal const Int32 IOCTL_GET_HCD_DRIVERKEY_NAME = 0x220424;
        internal const Int32 IOCTL_USB_GET_ROOT_HUB_NAME = 0x220408;
        internal const Int32 IOCTL_USB_GET_NODE_CONNECTION_NAME = 0x220414;
        internal const Int32 IOCTL_USB_GET_NODE_INFORMATION = 0x220408;
        internal const Int32 IOCTL_USB_GET_NODE_CONNECTION_INFORMATION_EX = 0x220448;
        internal const Int32 IOCTL_USB_GET_DEscriptOR_FROM_NODE_CONNECTION = 0x220410;

        internal const Int32 MAXIMUM_USB_STRING_LENGTH = 255;
        internal const Int32 USB_STRING_DEscriptOR_TYPE = 3;

        [StructLayout(LayoutKind.Sequential CharSet = CharSet.Auto)]
        internal struct USB_HCD_DRIVERKEY_NAME
        {
            public Int32 ActualLength;
            [MarshalAs(UnmanagedType.ByValTStr SizeConst = 256)]
            public String Name;
        }

        #region USB_NODE_INFORMATION
        [StructLayout(LayoutKind.Sequential Pack = 1)]
        internal struct USB_HUB_DEscriptOR
        {
            public Byte bDescriptorLength;
            public Byte bDescriptorType;    // 描述符类型:0x29  
            public Byte bNumberOfPorts;     // 支持的下游端口数目  
            public Int16 wHubCharacteristics;   // 特征描述  
            public Byte bPowerOnToPowerGood;    // 从端口加电到端口正常工作的时间间隔(以2ms为单位)  
            public Byte bHubControlCurrent;     // 设备所需最大电流  
            [MarshalAs(UnmanagedType.ByValArray SizeConst = 64)]
            public Byte[] bRemoveAndPowerMask;  // 指示连接在集线器端口的设备是否可移走  
        }

        [StructLayout(LayoutKind.Sequential)]
        internal struct USB_HUB_INFORMATION
        {
            public USB_HUB_DEscriptOR HubDescriptor;
            

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      30208  2016-01-17 20:40  HidConnerCs_V2\HidConnerCs\bin\Debug\HidConnerCs.exe

     文件      48640  2016-01-17 20:40  HidConnerCs_V2\HidConnerCs\bin\Debug\HidConnerCs.pdb

     文件      22712  2016-01-17 20:48  HidConnerCs_V2\HidConnerCs\bin\Debug\HidConnerCs.vshost.exe

     文件        490  2013-03-18 17:00  HidConnerCs_V2\HidConnerCs\bin\Debug\HidConnerCs.vshost.exe.manifest

     文件      69632  2014-11-04 22:41  HidConnerCs_V2\HidConnerCs\bin\Debug\nunit.framework.dll

     文件       9968  2016-01-17 20:48  HidConnerCs_V2\HidConnerCs\DeviceIoControl.cs

     文件       9570  2016-01-17 20:40  HidConnerCs_V2\HidConnerCs\Form1.cs

     文件      17890  2016-01-17 20:40  HidConnerCs_V2\HidConnerCs\Form1.Designer.cs

     文件       6015  2016-01-17 20:40  HidConnerCs_V2\HidConnerCs\Form1.resx

     文件      34297  2016-01-17 20:39  HidConnerCs_V2\HidConnerCs\hid.cs

     文件       4226  2016-01-17 20:03  HidConnerCs_V2\HidConnerCs\HidConnerCs.csproj

     文件        791  2016-01-17 18:11  HidConnerCs_V2\HidConnerCs\obj\Debug\DesignTimeResolveAssemblyReferences.cache

     文件       6948  2016-01-17 20:03  HidConnerCs_V2\HidConnerCs\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件       2674  2016-01-17 20:48  HidConnerCs_V2\HidConnerCs\obj\Debug\HidConnerCs.csproj.FileListAbsolute.txt

     文件        847  2016-01-17 20:40  HidConnerCs_V2\HidConnerCs\obj\Debug\HidConnerCs.csproj.GenerateResource.Cache

     文件      30208  2016-01-17 20:40  HidConnerCs_V2\HidConnerCs\obj\Debug\HidConnerCs.exe

     文件        180  2016-01-17 20:40  HidConnerCs_V2\HidConnerCs\obj\Debug\HidConnerCs.Form1.resources

     文件      48640  2016-01-17 20:40  HidConnerCs_V2\HidConnerCs\obj\Debug\HidConnerCs.pdb

     文件        180  2016-01-17 20:03  HidConnerCs_V2\HidConnerCs\obj\Debug\HidConnerCs.Properties.Resources.resources

     文件       5142  2014-11-05 14:15  HidConnerCs_V2\HidConnerCs\obj\Debug\ResolveAssemblyReference.cache

     文件       4608  2016-01-17 18:11  HidConnerCs_V2\HidConnerCs\obj\Debug\TempPE\Properties.Resources.Designer.cs.dll

     文件        492  2014-11-04 22:17  HidConnerCs_V2\HidConnerCs\Program.cs

     文件       1378  2014-11-04 22:17  HidConnerCs_V2\HidConnerCs\Properties\AssemblyInfo.cs

     文件       2862  2016-01-17 18:11  HidConnerCs_V2\HidConnerCs\Properties\Resources.Designer.cs

     文件       5612  2014-11-04 22:17  HidConnerCs_V2\HidConnerCs\Properties\Resources.resx

     文件       1111  2016-01-17 18:11  HidConnerCs_V2\HidConnerCs\Properties\Settings.Designer.cs

     文件        249  2014-11-04 22:17  HidConnerCs_V2\HidConnerCs\Properties\Settings.settings

     文件        155  2013-05-25 11:30  HidConnerCs_V2\HidConnerCs\WDKUsbEnum.cs

     文件       1002  2016-01-17 18:13  HidConnerCs_V2\HidConnerCs.sln

    ..A..H.     34304  2014-11-05 14:27  HidConnerCs_V2\HidConnerCs.suo

............此处省略19个文件信息

评论

共有 条评论