This is working fine on normal physical Laptops but if i use the same USB Stick on my zeroclient which got a virtual vmware machine than the stick got allways blocked.I also tried to register the stick not by serialnumber and used the VID and the PID but also this have the same result that the stick got blocked.
usb device instance id serial number
The DLP Policy showed that it applyed the rules and also show it later when you loggon but it was just on the configuration screen that this rules are configuried when you use in DLP POLICY the Import configuration from EPO server than it loads the config which is realy in use and so we saw that when we configured the USB Stick via VID PID or device instance it was never written to the EPO Server and never applied to the virtual machine
i checked also the DLP Monitor and this is what is quite strange for me because the serial number on the VM is not show so it is clear i can not use it but why it is not working with the VID or PID or with DeviceClass?
This ID that you see is called a ParentIDPrefix and is generated per machine on the fly for each device that needs a unique ID (in place of a serial number as you have referenced above). When there isn't a serial number provided, Windows generates one for you behind the scenes.
So, you can't (or shouldn't) change this value once it has been assigned. It becomes part of the device ID. And this begs the question: If it's so unique, why does it change per port? Meaning, you will have different ParentIDPrefix's for every port. The PNP subsystem impresses this format upon the device ID so that it's needed. It's kind of like a placeholder for a serial number.
3: Allow/ block by device instance identifiers: This setting can be used to block/ allow specific devices that match a device instance identifier. A device instance ID is a system-supplied device identification string that uniquely identifies a PNP device in the system. The Plug and Play (PnP) manager assigns a device instance ID to each device node
I'm trying to re-enable USB Autoplay in a secure way, by installing a program on each of the computers that I use so that I can run my launcher (PStart in this case) whenever I plug in my specific USB drive. The tool that I'm using to enable this - AutoRunGuard - needs the serial number of the USB drive that I am using. I can't figure out where to find this in Windows. Ideally I would not need to install and run a separate program to do this (seemingly) simple task.
UPDATE:Just incase people come here looking for the answer for AutoRunGuard, I discovered that they don't want the USB device serial number, but the volume serial number. The drive serial can be found by going into the command line, navigating to the drive, and executing dir. The volume serial number is found in the top two lines - use it without the dash.
USBDeview is a small utility that lists all USB devices that currently connected to your computer, as well as all USB devices that you previously used. For each USB device, exteneded information is displayed: Device name/description, device type, serial number (for mass storage devices), the date/time that device was added, VendorID, ProductID, and more... USBDeview also allows you to uninstall USB devices that you previously used, and disconnect USB devices that are currently connected to your computer. You can also use USBDeview on a remote computer, as long as you login to that computer with admin user.
Here's a PowerShell solution that will give you the serial number of all "USB Mass Storage Devices" mounted on the system which you run it. It uses Get-CIMInstance to query the Win32_PnPSignedDriver class to get the property values with filtering, looping, setting a couple variables, using a method, etc.
Type $a = get-Disk -Number 4, after which $a will be a list contains all the properties of this disk. You can view all those information with $a format-list -Property * Or you can just type $a.SerialNumber If you disk has a serial number, The command would return it.
In the diagram below, a command in Powershell lists some values regarding the above two USB devices. Clearly, what we have been calling the serial number does not conflate with what the identification in Powershell calls a serial number.
I tried the setup on a different computer we will call Computer 2. As if by magic, GSmartControl now showed me all of the correct information including serial number. Well now I have even bigger problems. Why would it work properly on Computer 2 but not Computer 1? What does the computer have to do with it?
Though it looks like I found the answer elsewhere, devices with an Instance ID that has the 2nd symbol as "&" are devices without serial numbers encoded in their firmware, and Windows creates an Instance ID upon plugging them in - this Instance ID will NOT be the same across multiple computers.
There are generally two different methods for getting the serial number of a USB-based device... an "easy" way using Windows Management Instrumentation (WMI) and a "hard" way using the Win32 APIs. There are advantages and disadvantages for both methods... one is slow but simple to implement, the other is fast (and potentially provides more information) but is difficult to implement.
This top-level routine follows the steps outlined above. The FindDiskDevice() function searches the device tree for DeviceNumber that matches that of the drive letter. It returns (via it passed by reference parameters) the full HubDevicePath for the USB Hub and the unique InstanceID of the drive. The GetPortCount() function merely returns the number of USB ports on the Hub. Next it uses the GetDriverKeyName() and FindInstanceIDByKeyName() functions to find the correct port number on the Hub. Next, the GetDeviceDescriptor() method returns the DeviceDescriptor so we know the "index" of the Serial Number string. And lastly, the GetStringDescriptor() function returns the actual serial number string.
Every "Storage Device" is assigned a unique number based upon its device type. We use this feature to allow us to see if two different device paths (such as "\\.\E:" and "\\\\?\\usbstor#disk&ven_lexar&prod_jd_lightning&rev_3000#33000001928000002345&0#53f56307-b6bf-11d0-94f2-00a0c91efb8b") are actually pointing to the same device. Since the STORAGE_DEVICE_NUMBER.DeviceNumber field is only unique with its STORAGE_DEVICE_NUMBER.DeviceType, we "fold" the two numbers together.
Next, we need to find the full "symbolic name" of the USB Hub where are disk is located (an average PC might have 2-3 internal USB hubs), and we also need the "Instance ID" of the device itself (sorta like a device driver name). We start by getting the DeviceNumber of the drive letter assigned to the USB disk. Next, we search the entire "device tree" for a device that matches that device number. After we found a match, we need to "walk the device tree" upwards to get path to the USB Hub. These two strings are passed "by reference", so that we can make changes to them inside this function.
Next we need to get the "Driver Key Name" of a device, given the full path to the USB Hub and the port number on the Hub. The Driver Key Name isn't used directly by this application, instead it's used as an intermediate value to enable us to get the device's Instance ID.
In USB programming, you rarely talk to the USB device directly... you talk to the Hub and ask the Hub to intercede on your behalf. You must know the port number to where the device is located in order to get any meaningful data from the USB Hub. If you don't know the port number, you're forced to try them all to find the one you want.
We need to be able to compare two USB Instance IDs to see if they point to the same device. This is completely analogous to the technique we used to compare storage device numbers. There is no straight-forward technique for a converting a USB "Driver Key Name" into a "Instance ID". So, we're forced to use the SetupAPI again to examine each device in the device tree for a matching DriverKeyName, and when found, we use SetupDiGetDeviceInstanceId() to return the associated InstanceID.
As an administrator, you can find details about the ChromeOS devices in your domain in the Google Admin console. You can see the user of each device and review information, such as serial number, enrollment date, and last synchronization. You can also create organizational units to apply settings to different groups of devices.
Click the serial number of any device to see device details. On the left, you can choose to move, disable, deprovision, clear user profiles, or remotely access a device. If the device is an autolaunched kiosk, you can also choose to reboot, capture logs, take a screenshot, set the volume on the device.
I am using Seeedruino's XIAO module, and I would like to associate each XIAO with an unique ID. It seems each XIAO has its serial number, for example, when I plug one in different PCs, it shows a device instance path of USB\VID_2886&PID_802F&MI_00\6&DBB63AA&0&0000, with the same serial number(?) DBB63AA. How can I read this serial number? 2ff7e9595c
Comments