How the instance number 5&277c3cd4&0&2 is generated

Hi all,
I need some information regarding the entries in the registry after
connecting usb camera.
When i connect USB Intel camera to port 2 it will create following
entries.
HLM\System\CurrentControlSet\Enum\USB\Vid_0733&Pid_0401\5&277c3cd4&0&2.
I am worried about the instance generated by the windows XP
5&277c3cd4&0&2.
According my knowledge 5 is constant for Intel camera and last number 2
is for port i,e USB port number 2.
Is anybody knows how the middle number &277c3cd4&0& is generated.
The symbolic name for this device is
??\USB#Vid_0733&Pid_0401#5&277c3cd4&0&2#{a5dcbf10-6530-11d2-901f-00c04fb951ed}.

HardwareID is USB\Vid_0733&Pid_0401&Rev_0090 USB#Vid_0733&Pid_0401.
This number is generated per port - If i connect camera to port 1 then
it is 5&277c3cd4&0&1.
If anybody knows how this is generated or is there any pointers about
pls help me.
Thanx in advance


: MdRafi Maniyar : Networking & Comm. Gp, Tata Elxsi Ltd |
: Phone : +91-80-8410222 Fax : +91-80-8410219 __________|

This value is generated by the pnp subsystem. The exact specifics of how this string is created is not specified, but basically if a PNP bus cannot guarantee a globally (relative to the particular bus) unique device instances, then the pnp subsystem will generate them for the bus. In the case of USB, if your device has a serial number, that is considered a globally unique ID on that bus and the serial number will be used as part of the instance path.

What it comes down to is that you cannot hard code this string in your application, or rely on it to be the same from machine to machine. As you have noticed, it changes if you plug it into different ports. You must use SetupDi to enumerate instances of you device interface and find the interface path in that manner.

D

This posting is provided “AS IS” with no warranties, and confers no rights.

-----Original Message-----
From: Mahammadrafi Maniyar [mailto:xxxxx@tataelxsi.co.in]
Sent: Sunday, July 28, 2002 10:29 PM
To: NT Developers Interest List
Subject: [ntdev] How the instance number 5&277c3cd4&0&2 is generated

Hi all,
I need some information regarding the entries in the registry after connecting usb camera.
When i connect USB Intel camera to port 2 it? will create following entries.
HLM\System\CurrentControlSet\Enum\USB\Vid_0733&Pid_0401\5&277c3cd4&0&2.
I am worried about the instance generated by the windows XP 5&277c3cd4&0&2.
According my knowledge 5 is constant for Intel camera and last number 2 is for port i,e USB port number 2.
Is anybody knows how the middle number &277c3cd4&0& is generated.
The symbolic name for this device is
??\USB#Vid_0733&Pid_0401#5&277c3cd4&0&2#{a5dcbf10-6530-11d2-901f-00c04fb951ed}.
HardwareID is USB\Vid_0733&Pid_0401&Rev_0090 USB#Vid_0733&Pid_0401.
This number is generated per port - If i connect camera to port 1 then it is? 5&277c3cd4&0&1.
If anybody knows how this is generated or is there any pointers about pls help me.
Thanx in advance

: MdRafi Maniyar? : Networking & Comm. Gp, Tata Elxsi Ltd |
: Phone : +91-80-8410222 Fax? : +91-80-8410219? __________|
? —
You are currently subscribed to ntdev as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to %%email.unsub%%

Thanks for information but i have two questions .
Can u tell me how do i get the device serial number.?
What method Bus driver will follow to generate this number.?
See out of 5&277c3cd4&0&2 - first digit (5) is constant for Intel and last digit(2) is port number to which this device is connected.

xxxxx@usb.org wrote:

Doron Holan wrote:

This value is generated by the pnp subsystem. The exact specifics of how this string is created is not specified, but basically if a PNP bus cannot guarantee a globally (relative to the particular bus) unique device instances, then the pnp subsystem will generate them for the bus. In the case of USB, if your device has a serial number, that is considered a globally unique ID on that bus and the serial number will be used as part of the instance path.

What it comes down to is that you cannot hard code this string in your application, or rely on it to be the same from machine to machine. As you have noticed, it changes if you plug it into different ports. You must use SetupDi to enumerate instances of you device interface and find the interface path in that manner.

D

This posting is provided “AS IS” with no warranties, and confers no rights.

-----Original Message-----
From: Mahammadrafi Maniyar [mailto:xxxxx@tataelxsi.co.in]
Sent: Sunday, July 28, 2002 10:29 PM
To: NT Developers Interest List
Subject: [ntdev] How the instance number 5&277c3cd4&0&2 is generated

Hi all,
I need some information regarding the entries in the registry after connecting usb camera.
When i connect USB Intel camera to port 2 it will create following entries.
HLM\System\CurrentControlSet\Enum\USB\Vid_0733&Pid_0401\5&277c3cd4&0&2.
I am worried about the instance generated by the windows XP 5&277c3cd4&0&2.
According my knowledge 5 is constant for Intel camera and last number 2 is for port i,e USB port number 2.
Is anybody knows how the middle number &277c3cd4&0& is generated.
The symbolic name for this device is
??\USB#Vid_0733&Pid_0401#5&277c3cd4&0&2#{a5dcbf10-6530-11d2-901f-00c04fb951ed}.
HardwareID is USB\Vid_0733&Pid_0401&Rev_0090 USB#Vid_0733&Pid_0401.
This number is generated per port - If i connect camera to port 1 then it is 5&277c3cd4&0&1.
If anybody knows how this is generated or is there any pointers about pls help me.
Thanx in advance

: MdRafi Maniyar : Networking & Comm. Gp, Tata Elxsi Ltd |

: Phone : +91-80-8410222 Fax : +91-80-8410219 __________
You are currently subscribed to ntdev as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to %%email.unsub%%

You are currently subscribed to ntdev as: xxxxx@tataelxsi.co.in
To unsubscribe send a blank email to %%email.unsub%%


: MdRafi Maniyar : Networking & Comm. Gp, Tata Elxsi Ltd |
: Phone : +91-80-8410222 Fax : +91-80-8410219 __________|

The values in between are generated by the PNP subsystem. How it is
generated is not published externally, but obviously PNP asks the bus
for some location relative information and uses it in the string.

As for usb serial number, I think that would be the first string
descriptor on the device, if it has one if I am not mistaken; read the
usb 1.1 spec to be certain.

D

This posting is provided “AS IS” with no warranties, and confers no
rights.

-----Original Message-----
From: Mahammadrafi Maniyar [mailto:xxxxx@tataelxsi.co.in]
Sent: Tuesday, July 30, 2002 1:17 AM
To: NT Developers Interest List
Subject: [ntdev] RE: How the instance number 5&277c3cd4&0&2 is generated

Thanks for information but i have two questions .
Can u tell me how do i get the device serial number.?
What method Bus driver will follow to generate this number.?
See out of 5&277c3cd4&0&2 - first digit (5) is constant for Intel and
last digit(2) is port number to which this device is connected.

xxxxx@usb.org wrote:

Doron Holan wrote:

This value is generated by the pnp subsystem. The exact specifics of
how this string is created is not specified, but basically if a PNP bus
cannot guarantee a globally (relative to the particular bus) unique
device instances, then the pnp subsystem will generate them for the bus.
In the case of USB, if your device has a serial number, that is
considered a globally unique ID on that bus and the serial number will
be used as part of the instance path.

What it comes down to is that you cannot hard code this string in your
application, or rely on it to be the same from machine to machine. As
you have noticed, it changes if you plug it into different ports. You
must use SetupDi to enumerate instances of you device interface and find
the interface path in that manner.

D

This posting is provided “AS IS” with no warranties, and confers no
rights.

-----Original Message-----
From: Mahammadrafi Maniyar [mailto:xxxxx@tataelxsi.co.in]
Sent: Sunday, July 28, 2002 10:29 PM
To: NT Developers Interest List
Subject: [ntdev] How the instance number 5&277c3cd4&0&2 is generated

Hi all,
I need some information regarding the entries in the registry after
connecting usb camera.
When i connect USB Intel camera to port 2 it will create following
entries.

HLM\System\CurrentControlSet\Enum\USB\Vid_0733&Pid_0401\5&277c3cd4&0&2.

I am worried about the instance generated by the windows XP
5&277c3cd4&0&2.
According my knowledge 5 is constant for Intel camera and last number
2 is for port i,e USB port number 2.
Is anybody knows how the middle number &277c3cd4&0& is generated.
The symbolic name for this device is

??\USB#Vid_0733&Pid_0401#5&277c3cd4&0&2#{a5dcbf10-6530-11d2-901f-00c04f
b951ed}.

HardwareID is USB\Vid_0733&Pid_0401&Rev_0090 USB#Vid_0733&Pid_0401.
This number is generated per port - If i connect camera to port 1 then
it is 5&277c3cd4&0&1.
If anybody knows how this is generated or is there any pointers about
pls help me.
Thanx in advance

: MdRafi Maniyar : Networking & Comm. Gp, Tata Elxsi Ltd |

: Phone : +91-80-8410222 Fax : +91-80-8410219 __________
You are currently subscribed to ntdev as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to %%email.unsub%%

You are currently subscribed to ntdev as: xxxxx@tataelxsi.co.in
To unsubscribe send a blank email to %%email.unsub%%


: MdRafi Maniyar : Networking & Comm. Gp, Tata Elxsi Ltd |
: Phone : +91-80-8410222 Fax : +91-80-8410219 __________|


You are currently subscribed to ntdev as: xxxxx@windows.microsoft.com
To unsubscribe send a blank email to %%email.unsub%%

The index of the S/N string is contained in the iSerialNumber of the device
descriptor (offset 16). This is actually the 3rd string index in the
descriptor (iManufacturer and iProduct come before). It can point to any of
the indexed string descriptors supplied by the device.

Marc Reinig
System Solutions

“Doron Holan” wrote in message
news:xxxxx@ntdev…

The values in between are generated by the PNP subsystem. How it is
generated is not published externally, but obviously PNP asks the bus
for some location relative information and uses it in the string.

As for usb serial number, I think that would be the first string
descriptor on the device, if it has one if I am not mistaken; read the
usb 1.1 spec to be certain.

D

This posting is provided “AS IS” with no warranties, and confers no
rights.

-----Original Message-----
From: Mahammadrafi Maniyar [mailto:xxxxx@tataelxsi.co.in]
Sent: Tuesday, July 30, 2002 1:17 AM
To: NT Developers Interest List
Subject: [ntdev] RE: How the instance number 5&277c3cd4&0&2 is generated

Thanks for information but i have two questions .
Can u tell me how do i get the device serial number.?
What method Bus driver will follow to generate this number.?
See out of 5&277c3cd4&0&2 - first digit (5) is constant for Intel and
last digit(2) is port number to which this device is connected.

> Thanks for information but i have two questions .

Can u tell me how do i get the device serial number.?
What method Bus driver will follow to generate this number.?
See out of 5&277c3cd4&0&2 - first digit (5) is constant for Intel
and last digit(2) is port

IIRC all PnP ID formats are describe in DDK docs, “Device
Installation” section.

Max

But my iserialnumber is 0 that means there is string descriptor for this.

Marc Reinig wrote:

The index of the S/N string is contained in the iSerialNumber of the device
descriptor (offset 16). This is actually the 3rd string index in the
descriptor (iManufacturer and iProduct come before). It can point to any of
the indexed string descriptors supplied by the device.

Marc Reinig
System Solutions

“Doron Holan” wrote in message
>news:xxxxx@ntdev…
>
>The values in between are generated by the PNP subsystem. How it is
>generated is not published externally, but obviously PNP asks the bus
>for some location relative information and uses it in the string.
>
>As for usb serial number, I think that would be the first string
>descriptor on the device, if it has one if I am not mistaken; read the
>usb 1.1 spec to be certain.
>
>D
>
>This posting is provided “AS IS” with no warranties, and confers no
>rights.
>
>-----Original Message-----
>From: Mahammadrafi Maniyar [mailto:xxxxx@tataelxsi.co.in]
>Sent: Tuesday, July 30, 2002 1:17 AM
>To: NT Developers Interest List
>Subject: [ntdev] RE: How the instance number 5&277c3cd4&0&2 is generated
>
>Thanks for information but i have two questions .
>Can u tell me how do i get the device serial number.?
>What method Bus driver will follow to generate this number.?
>See out of 5&277c3cd4&0&2 - first digit (5) is constant for Intel and
>last digit(2) is port number to which this device is connected.
>
>
>
>
>
>—
>You are currently subscribed to ntdev as: xxxxx@tataelxsi.co.in
>To unsubscribe send a blank email to %%email.unsub%%
>

No,

If iSerialNumber == 0
There is no serial number string.
else
The index of the string descriptor = iSerialNumber

Marc Reinig
System Solutions

But my iserialnumber is 0 that means there is string descriptor for this.

>The index of the S/N string is contained in the iSerialNumber of the
device
>descriptor (offset 16). This is actually the 3rd string index in the
>descriptor (iManufacturer and iProduct come before). It can point to any
of
>the indexed string descriptors supplied by the device.