Example #1
0
        public DetailsForm(HidDevice dev)
        {
            InitializeComponent();

            if (dev == null || dev.IsInvalid)
            {
                Close();
                return;
            }

            lblProdName.Text  += " " + dev.Product;
            lblVendName.Text  += " " + dev.Manufacturer;
            lblSerialNum.Text += " " + dev.SerialNumber;

            Hid.HiddAttributes att = dev.Attributes;

            lblVid.Text += " " + att.VendorId.ToString("X4");
            lblPid.Text += " " + att.ProductId.ToString("X4");
            lblRev.Text += " " + att.VersionNumber.ToString("X4");

            Hid.HidpCaps caps = dev.Capabilities;

            lblInputSize.Text   += " " + caps.InputReportByteLength + " bytes";
            lblOutputSize.Text  += " " + caps.OutputReportByteLength + " bytes";
            lblFeatureSize.Text += " " + caps.FeatureReportByteLength + " bytes";

            listBoxValueCaps.DisplayMember = "Text";

            foreach (var inCap in dev.InputValueCaps)
            {
                AddValueCap(inCap, "Input Report");
            }

            foreach (var outCap in dev.OutputValueCaps)
            {
                AddValueCap(outCap, "Output Report");
            }

            foreach (var featCap in dev.FeatureValueCaps)
            {
                AddValueCap(featCap, "Feature Report");
            }

            for (uint i = 1; i < 255; i++)
            {
                string str = dev.GetIndexedString(i);
                if (!string.IsNullOrEmpty(str))
                {
                    listBoxStrings.Items.Add(i.ToString() + ": " + str);
                }
                else
                {
                    break;                     //HACK Logitech G105 keyboard crashes unless this is here
                }
            }
        }
Example #2
0
        private void UsbAttach(string dev)
        {
            ListViewItem item = new ListViewItem();

            item.Tag = dev;

            HidDevice hdev = new HidDevice(dev);

            if (hdev.IsInvalid)
            {
                AddDataListBoxItem("nerr Invalid device attached");
                return;
            }

            Hid.HiddAttributes att = hdev.Attributes;

            item.Text = hdev.Product;
            item.SubItems.Add(hdev.Manufacturer);
            item.SubItems.Add(hdev.SerialNumber);
            item.SubItems.Add(att.VendorId.ToString("X4"));
            item.SubItems.Add(att.ProductId.ToString("X4"));

            devicesListView.Items.Add(item);

            hdev.Dispose();

            AddDataListBoxItem("natt Device attached: " + item.Text + " (" + dev + ")");

            if (!string.IsNullOrEmpty(lastSelectedDevice))
            {
                if (lastSelectedDevice.Equals((string)dev, StringComparison.InvariantCultureIgnoreCase))
                {
                    item.Selected = true;
                }
            }
        }