WinXP Newly mounted drives are not visible in explorer.

I know that this subject has been discussed here, and I think that I have got it right, but it still does not work, and I am sending this e-mail in hope somebody will see what I am doing wrong.

I was using the IoCreateSymbolicLink API on Win2K which still worked on WinXP with one caveat – the newly mounted drive letter was not visible in explorer ( it still was accessible like in Win2K via command prompt for example). I have implemented a new mountmanager interface to register the newly created symbolic links, and I got it “working” that is all interface APIs succeed, however the behavior has not changed that is I still do not see the drive letter in explorer.

Here is what I did:

  1. I replaced the IoCreateSymbolicLink with the following:
    RtlInitUnicodeString(&name, MOUNTMGR_DEVICE_NAME);
    createStatus = IoGetDeviceObjectPointer(
    &name, FILE_ALL_ACCESS,&createFO, &createDO);

KeInitializeEvent(&createEvent, NotificationEvent, FALSE);
createIRP = IoBuildDeviceIoControlRequest(
IOCTL_MOUNTMGR_CREATE_POINT, createDO, createPoint, createPointSize,
NULL, 0, FALSE, &createEvent, &createIoStatus);

// Send the irp to the mount manager requesting that a new mount point (persistent symbolic link) is created for the indicated volume.
createStatus = IoCallDriver(createDO, createIRP);

  1. I Added the support of the following requests to IRP_MJ_DEVICE_CONTROL API:
    IOCTL_MOUNTDEV_QUERY_DEVICE_NAME and IOCTL_MOUNTDEV_QUERY_UNIQUE_ID.

All calls succeed however the drive letter still does not appear in explorer until user re-logins, which is obviously unacceptable. Any help will be greatly appreciated.

Thanks in advance,

IL.

Search NTDEV archives, it was discussed many times in the past there. Basically, you have to send user mode broadcast to inform exploder about new driver arrival when using IoCreateSymbolicLink. As for Mount Manager, I haven’t noticed anybody was able to solve this problem using it.

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]


From: xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com] on behalf of xxxxx@comcast.net[SMTP:xxxxx@comcast.net]
Reply To: Windows File Systems Devs Interest List
Sent: Friday, January 13, 2006 7:50 PM
To: Windows File Systems Devs Interest List
Subject: [ntfsd] WinXP Newly mounted drives are not visible in explorer.

I know that this subject has been discussed here, and I think that I have got it right, but it still does not work, and I am sending this e-mail in hope somebody will see what I am doing wrong.

I was using the IoCreateSymbolicLink API on Win2K which still worked on WinXP with one caveat - the newly mounted drive letter was not visible in explorer ( it still was accessible like in Win2K via command prompt for example). I have implemented a new mountmanager interface to register the newly created symbolic links, and I got it “working” that is all interface APIs succeed, however the behavior has not changed that is I still do not see the drive letter in explorer.

Here is what I did:

  1. I replaced the IoCreateSymbolicLink with the following:

RtlInitUnicodeString(&name, MOUNTMGR_DEVICE_NAME);

createStatus = IoGetDeviceObjectPointer(

&name, FILE_ALL_ACCESS,&createFO, &createDO);

KeInitializeEvent(&createEvent, NotificationEvent, FALSE);

createIRP = IoBuildDeviceIoControlRequest(

IOCTL_MOUNTMGR_CREATE_POINT, createDO, createPoint, createPointSize,

NULL, 0, FALSE, &createEvent, &createIoStatus);

// Send the irp to the mount manager requesting that a new mount point (persistent symbolic link) is created for the indicated volume.

createStatus = IoCallDriver(createDO, createIRP);

  1. I Added the support of the following requests to IRP_MJ_DEVICE_CONTROL API:

IOCTL_MOUNTDEV_QUERY_DEVICE_NAME and IOCTL_MOUNTDEV_QUERY_UNIQUE_ID.

All calls succeed however the drive letter still does not appear in explorer until user re-logins, which is obviously unacceptable. Any help will be greatly appreciated.

Thanks in advance,

IL.


Questions? First check the IFS FAQ at https://www.osronline.com/article.cfm?id=17

You are currently subscribed to ntfsd as: xxxxx@upek.com
To unsubscribe send a blank email to xxxxx@lists.osr.com

  1. Implement the MOUNTDEV_MOUNTED_DEVICE_GUID PnP interface on your device.
  2. Handle IOCTL_MOUNTDEV_xxx, especially the unique ID query (your device
    interface string is one of the choices, it is used this way by all removable
    media devices).

That’s all.

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com

----- Original Message -----
From:
To: “Windows File Systems Devs Interest List”
Sent: Friday, January 13, 2006 9:50 PM
Subject: [ntfsd] WinXP Newly mounted drives are not visible in explorer.

> I know that this subject has been discussed here, and I think that I have got
it right, but it still does not work, and I am sending this e-mail in hope
somebody will see what I am doing wrong.
>
> I was using the IoCreateSymbolicLink API on Win2K which still worked on WinXP
with one caveat – the newly mounted drive letter was not visible in explorer
( it still was accessible like in Win2K via command prompt for example). I
have implemented a new mountmanager interface to register the newly created
symbolic links, and I got it “working” that is all interface APIs succeed,
however the behavior has not changed that is I still do not see the drive
letter in explorer.
>
> Here is what I did:
>
> 1. I replaced the IoCreateSymbolicLink with the following:
> RtlInitUnicodeString(&name, MOUNTMGR_DEVICE_NAME);
> createStatus = IoGetDeviceObjectPointer(
> &name, FILE_ALL_ACCESS,&createFO, &createDO);
>
> KeInitializeEvent(&createEvent, NotificationEvent, FALSE);
> createIRP = IoBuildDeviceIoControlRequest(
> IOCTL_MOUNTMGR_CREATE_POINT, createDO, createPoint, createPointSize,
> NULL, 0, FALSE, &createEvent, &createIoStatus);
>
> // Send the irp to the mount manager requesting that a new mount point
(persistent symbolic link) is created for the indicated volume.
> createStatus = IoCallDriver(createDO, createIRP);
>
> 2. I Added the support of the following requests to IRP_MJ_DEVICE_CONTROL
API:
> IOCTL_MOUNTDEV_QUERY_DEVICE_NAME and IOCTL_MOUNTDEV_QUERY_UNIQUE_ID.
>
> All calls succeed however the drive letter still does not appear in explorer
until user re-logins, which is obviously unacceptable. Any help will be
greatly appreciated.
>
> Thanks in advance,
>
> IL.
> —
> Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17
>
> You are currently subscribed to ntfsd as: xxxxx@storagecraft.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com

I did it for a USB device over five years ago with W2K. It was a dual USB
flash memory device and I wrote the disk class driver with some consulting
help from Jamey Kirby.

“Michal Vodicka” wrote in message
news:xxxxx@ntfsd…
Search NTDEV archives, it was discussed many times in the past there.
Basically, you have to send user mode broadcast to inform exploder about new
driver arrival when using IoCreateSymbolicLink. As for Mount Manager, I
haven’t noticed anybody was able to solve this problem using it.

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]

> ----------
> From:
> xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com]
> on behalf of xxxxx@comcast.net[SMTP:xxxxx@comcast.net]
> Reply To: Windows File Systems Devs Interest List
> Sent: Friday, January 13, 2006 7:50 PM
> To: Windows File Systems Devs Interest List
> Subject: [ntfsd] WinXP Newly mounted drives are not visible in explorer.
>
> I know that this subject has been discussed here, and I think that I have
> got it right, but it still does not work, and I am sending this e-mail in
> hope somebody will see what I am doing wrong.
>
>
>
> I was using the IoCreateSymbolicLink API on Win2K which still worked on
> WinXP with one caveat - the newly mounted drive letter was not visible in
> explorer ( it still was accessible like in Win2K via command prompt for
> example). I have implemented a new mountmanager interface to register the
> newly created symbolic links, and I got it “working” that is all interface
> APIs succeed, however the behavior has not changed that is I still do not
> see the drive letter in explorer.
>
>
>
> Here is what I did:
>
>
>
> 1. I replaced the IoCreateSymbolicLink with the following:
>
> RtlInitUnicodeString(&name, MOUNTMGR_DEVICE_NAME);
>
> createStatus = IoGetDeviceObjectPointer(
>
> &name, FILE_ALL_ACCESS,&createFO, &createDO);
>
>
>
> KeInitializeEvent(&createEvent, NotificationEvent, FALSE);
>
> createIRP = IoBuildDeviceIoControlRequest(
>
> IOCTL_MOUNTMGR_CREATE_POINT, createDO, createPoint, createPointSize,
>
> NULL, 0, FALSE, &createEvent, &createIoStatus);
>
>
>
> // Send the irp to the mount manager requesting that a new mount point
> (persistent symbolic link) is created for the indicated volume.
>
> createStatus = IoCallDriver(createDO, createIRP);
>
>
>
> 2. I Added the support of the following requests to IRP_MJ_DEVICE_CONTROL
> API:
>
> IOCTL_MOUNTDEV_QUERY_DEVICE_NAME and IOCTL_MOUNTDEV_QUERY_UNIQUE_ID.
>
>
>
> All calls succeed however the drive letter still does not appear in
> explorer until user re-logins, which is obviously unacceptable. Any help
> will be greatly appreciated.
>
> Thanks in advance,
>
> IL.
>
> —
> Questions? First check the IFS FAQ at
> https://www.osronline.com/article.cfm?id=17
>
> You are currently subscribed to ntfsd as: xxxxx@upek.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>

Via Mount Manager? Were you able to create drive letters on demand? I mean as requested by (user mode) software (which is what we needed).

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]


From: xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com] on behalf of David J. Craig[SMTP:xxxxx@yoshimuni.com]
Reply To: Windows File Systems Devs Interest List
Sent: Saturday, January 14, 2006 7:31 AM
To: Windows File Systems Devs Interest List
Subject: Re:[ntfsd] WinXP Newly mounted drives are not visible in explorer.

I did it for a USB device over five years ago with W2K. It was a dual USB
flash memory device and I wrote the disk class driver with some consulting
help from Jamey Kirby.

“Michal Vodicka” wrote in message
> news:xxxxx@ntfsd…
> Search NTDEV archives, it was discussed many times in the past there.
> Basically, you have to send user mode broadcast to inform exploder about new
> driver arrival when using IoCreateSymbolicLink. As for Mount Manager, I
> haven’t noticed anybody was able to solve this problem using it.
>
> Best regards,
>
> Michal Vodicka
> UPEK, Inc.
> [xxxxx@upek.com, http://www.upek.com]
>
>
> > ----------
> > From:
> > xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com]
> > on behalf of xxxxx@comcast.net[SMTP:xxxxx@comcast.net]
> > Reply To: Windows File Systems Devs Interest List
> > Sent: Friday, January 13, 2006 7:50 PM
> > To: Windows File Systems Devs Interest List
> > Subject: [ntfsd] WinXP Newly mounted drives are not visible in explorer.
> >
> > I know that this subject has been discussed here, and I think that I have
> > got it right, but it still does not work, and I am sending this e-mail in
> > hope somebody will see what I am doing wrong.
> >
> >
> >
> > I was using the IoCreateSymbolicLink API on Win2K which still worked on
> > WinXP with one caveat - the newly mounted drive letter was not visible in
> > explorer ( it still was accessible like in Win2K via command prompt for
> > example). I have implemented a new mountmanager interface to register the
> > newly created symbolic links, and I got it “working” that is all interface
> > APIs succeed, however the behavior has not changed that is I still do not
> > see the drive letter in explorer.
> >
> >
> >
> > Here is what I did:
> >
> >
> >
> > 1. I replaced the IoCreateSymbolicLink with the following:
> >
> > RtlInitUnicodeString(&name, MOUNTMGR_DEVICE_NAME);
> >
> > createStatus = IoGetDeviceObjectPointer(
> >
> > &name, FILE_ALL_ACCESS,&createFO, &createDO);
> >
> >
> >
> > KeInitializeEvent(&createEvent, NotificationEvent, FALSE);
> >
> > createIRP = IoBuildDeviceIoControlRequest(
> >
> > IOCTL_MOUNTMGR_CREATE_POINT, createDO, createPoint, createPointSize,
> >
> > NULL, 0, FALSE, &createEvent, &createIoStatus);
> >
> >
> >
> > // Send the irp to the mount manager requesting that a new mount point
> > (persistent symbolic link) is created for the indicated volume.
> >
> > createStatus = IoCallDriver(createDO, createIRP);
> >
> >
> >
> > 2. I Added the support of the following requests to IRP_MJ_DEVICE_CONTROL
> > API:
> >
> > IOCTL_MOUNTDEV_QUERY_DEVICE_NAME and IOCTL_MOUNTDEV_QUERY_UNIQUE_ID.
> >
> >
> >
> > All calls succeed however the drive letter still does not appear in
> > explorer until user re-logins, which is obviously unacceptable. Any help
> > will be greatly appreciated.
> >
> > Thanks in advance,
> >
> > IL.
> >
> > —
> > Questions? First check the IFS FAQ at
> > https://www.osronline.com/article.cfm?id=17
> >
> > You are currently subscribed to ntfsd as: xxxxx@upek.com
> > To unsubscribe send a blank email to xxxxx@lists.osr.com
> >
>
>
>
>
> —
> Questions? First check the IFS FAQ at https://www.osronline.com/article.cfm?id=17
>
> You are currently subscribed to ntfsd as: xxxxx@upek.com>
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>

It interfaced with the mount manager, but there was no user mode component.
This was a USB device and when plugged in, drive letters were automatically
created.

“Michal Vodicka” wrote in message
news:xxxxx@ntfsd…
Via Mount Manager? Were you able to create drive letters on demand? I mean
as requested by (user mode) software (which is what we needed).

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]

> ----------
> From:
> xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com]
> on behalf of David J. Craig[SMTP:xxxxx@yoshimuni.com]
> Reply To: Windows File Systems Devs Interest List
> Sent: Saturday, January 14, 2006 7:31 AM
> To: Windows File Systems Devs Interest List
> Subject: Re:[ntfsd] WinXP Newly mounted drives are not visible in
> explorer.
>
> I did it for a USB device over five years ago with W2K. It was a dual USB
> flash memory device and I wrote the disk class driver with some consulting
> help from Jamey Kirby.
>
> “Michal Vodicka” wrote in message
> news:xxxxx@ntfsd…
> Search NTDEV archives, it was discussed many times in the past there.
> Basically, you have to send user mode broadcast to inform exploder about
> new
> driver arrival when using IoCreateSymbolicLink. As for Mount Manager, I
> haven’t noticed anybody was able to solve this problem using it.
>
> Best regards,
>
> Michal Vodicka
> UPEK, Inc.
> [xxxxx@upek.com, http://www.upek.com]
>
>
> > ----------
> > From:
> > xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com]
> > on behalf of xxxxx@comcast.net[SMTP:xxxxx@comcast.net]
> > Reply To: Windows File Systems Devs Interest List
> > Sent: Friday, January 13, 2006 7:50 PM
> > To: Windows File Systems Devs Interest List
> > Subject: [ntfsd] WinXP Newly mounted drives are not visible in explorer.
> >
> > I know that this subject has been discussed here, and I think that I
> > have
> > got it right, but it still does not work, and I am sending this e-mail
> > in
> > hope somebody will see what I am doing wrong.
> >
> >
> >
> > I was using the IoCreateSymbolicLink API on Win2K which still worked on
> > WinXP with one caveat - the newly mounted drive letter was not visible
> > in
> > explorer ( it still was accessible like in Win2K via command prompt for
> > example). I have implemented a new mountmanager interface to register
> > the
> > newly created symbolic links, and I got it “working” that is all
> > interface
> > APIs succeed, however the behavior has not changed that is I still do
> > not
> > see the drive letter in explorer.
> >
> >
> >
> > Here is what I did:
> >
> >
> >
> > 1. I replaced the IoCreateSymbolicLink with the following:
> >
> > RtlInitUnicodeString(&name, MOUNTMGR_DEVICE_NAME);
> >
> > createStatus = IoGetDeviceObjectPointer(
> >
> > &name, FILE_ALL_ACCESS,&createFO, &createDO);
> >
> >
> >
> > KeInitializeEvent(&createEvent, NotificationEvent, FALSE);
> >
> > createIRP = IoBuildDeviceIoControlRequest(
> >
> > IOCTL_MOUNTMGR_CREATE_POINT, createDO, createPoint, createPointSize,
> >
> > NULL, 0, FALSE, &createEvent, &createIoStatus);
> >
> >
> >
> > // Send the irp to the mount manager requesting that a new mount point
> > (persistent symbolic link) is created for the indicated volume.
> >
> > createStatus = IoCallDriver(createDO, createIRP);
> >
> >
> >
> > 2. I Added the support of the following requests to
> > IRP_MJ_DEVICE_CONTROL
> > API:
> >
> > IOCTL_MOUNTDEV_QUERY_DEVICE_NAME and IOCTL_MOUNTDEV_QUERY_UNIQUE_ID.
> >
> >
> >
> > All calls succeed however the drive letter still does not appear in
> > explorer until user re-logins, which is obviously unacceptable. Any
> > help
> > will be greatly appreciated.
> >
> > Thanks in advance,
> >
> > IL.
> >
> > —
> > Questions? First check the IFS FAQ at
> > https://www.osronline.com/article.cfm?id=17
> >
> > You are currently subscribed to ntfsd as: xxxxx@upek.com
> > To unsubscribe send a blank email to xxxxx@lists.osr.com
> >
>
>
>
>
> —
> Questions? First check the IFS FAQ at
> https://www.osronline.com/article.cfm?id=17
>
> You are currently subscribed to ntfsd as: xxxxx@upek.com>
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>

OK but I didn’t say this can’t be done. In fact, I also tried this approach then and it worked with no problem. We were speaking about new drive letter visibility in Explorer. It worked at w2k with drives created whatever way but stopped working at XP. To solve this problem user mode broadcast was necessary and my note meant I haven’t seen anybody successfully solved it via MM only (which of course doesn’t mean it isn’t possible).

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]


From: xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com] on behalf of David J. Craig[SMTP:xxxxx@yoshimuni.com]
Reply To: Windows File Systems Devs Interest List
Sent: Saturday, January 14, 2006 8:00 PM
To: Windows File Systems Devs Interest List
Subject: Re:[ntfsd] WinXP Newly mounted drives are not visible in explorer.

It interfaced with the mount manager, but there was no user mode component.
This was a USB device and when plugged in, drive letters were automatically
created.

“Michal Vodicka” wrote in message
> news:xxxxx@ntfsd…
> Via Mount Manager? Were you able to create drive letters on demand? I mean
> as requested by (user mode) software (which is what we needed).
>
> Best regards,
>
> Michal Vodicka
> UPEK, Inc.
> [xxxxx@upek.com, http://www.upek.com]
>
> > ----------
> > From:
> > xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com]
> > on behalf of David J. Craig[SMTP:xxxxx@yoshimuni.com]
> > Reply To: Windows File Systems Devs Interest List
> > Sent: Saturday, January 14, 2006 7:31 AM
> > To: Windows File Systems Devs Interest List
> > Subject: Re:[ntfsd] WinXP Newly mounted drives are not visible in
> > explorer.
> >
> > I did it for a USB device over five years ago with W2K. It was a dual USB
> > flash memory device and I wrote the disk class driver with some consulting
> > help from Jamey Kirby.
> >
> > “Michal Vodicka” wrote in message
> > news:xxxxx@ntfsd…
> > Search NTDEV archives, it was discussed many times in the past there.
> > Basically, you have to send user mode broadcast to inform exploder about
> > new
> > driver arrival when using IoCreateSymbolicLink. As for Mount Manager, I
> > haven’t noticed anybody was able to solve this problem using it.
> >
> > Best regards,
> >
> > Michal Vodicka
> > UPEK, Inc.
> > [xxxxx@upek.com, http://www.upek.com]
> >
> >
> > > ----------
> > > From:
> > > xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com]
> > > on behalf of xxxxx@comcast.net[SMTP:xxxxx@comcast.net]
> > > Reply To: Windows File Systems Devs Interest List
> > > Sent: Friday, January 13, 2006 7:50 PM
> > > To: Windows File Systems Devs Interest List
> > > Subject: [ntfsd] WinXP Newly mounted drives are not visible in explorer.
> > >
> > > I know that this subject has been discussed here, and I think that I
> > > have
> > > got it right, but it still does not work, and I am sending this e-mail
> > > in
> > > hope somebody will see what I am doing wrong.
> > >
> > >
> > >
> > > I was using the IoCreateSymbolicLink API on Win2K which still worked on
> > > WinXP with one caveat - the newly mounted drive letter was not visible
> > > in
> > > explorer ( it still was accessible like in Win2K via command prompt for
> > > example). I have implemented a new mountmanager interface to register
> > > the
> > > newly created symbolic links, and I got it “working” that is all
> > > interface
> > > APIs succeed, however the behavior has not changed that is I still do
> > > not
> > > see the drive letter in explorer.
> > >
> > >
> > >
> > > Here is what I did:
> > >
> > >
> > >
> > > 1. I replaced the IoCreateSymbolicLink with the following:
> > >
> > > RtlInitUnicodeString(&name, MOUNTMGR_DEVICE_NAME);
> > >
> > > createStatus = IoGetDeviceObjectPointer(>
> > >
> > > &name, FILE_ALL_ACCESS,&createFO, &createDO);
> > >
> > >
> > >
> > > KeInitializeEvent(&createEvent, NotificationEvent, FALSE);
> > >
> > > createIRP = IoBuildDeviceIoControlRequest(
> > >
> > > IOCTL_MOUNTMGR_CREATE_POINT, createDO, createPoint, createPointSize,
> > >
> > > NULL, 0, FALSE, &createEvent, &createIoStatus);
> > >
> > >
> > >
> > > // Send the irp to the mount manager requesting that a new mount point
> > > (persistent symbolic link) is created for the indicated volume.
> > >
> > > createStatus = IoCallDriver(createDO, createIRP);
> > >
> > >
> > >
> > > 2. I Added the support of the following requests to
> > > IRP_MJ_DEVICE_CONTROL
> > > API:
> > >
> > > IOCTL_MOUNTDEV_QUERY_DEVICE_NAME and IOCTL_MOUNTDEV_QUERY_UNIQUE_ID.
> > >
> > >
> > >
> > > All calls succeed however the drive letter still does not appear in
> > > explorer until user re-logins, which is obviously unacceptable. Any
> > > help
> > > will be greatly appreciated.
> > >
> > > Thanks in advance,
> > >
> > > IL.
> > >
> > > —
> > > Questions? First check the IFS FAQ at
> > > https://www.osronline.com/article.cfm?id=17
> > >
> > > You are currently subscribed to ntfsd as: xxxxx@upek.com
> > > To unsubscribe send a blank email to xxxxx@lists.osr.com
> > >
> >
> >
> >
> >
> > —
> > Questions? First check the IFS FAQ at
> > https://www.osronline.com/article.cfm?id=17
> >
> > You are currently subscribed to ntfsd as: xxxxx@upek.com>
> > To unsubscribe send a blank email to xxxxx@lists.osr.com
> >
>
>
>
>
> —
> Questions? First check the IFS FAQ at https://www.osronline.com/article.cfm?id=17
>
> You are currently subscribed to ntfsd as: xxxxx@upek.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com
>

Thanks for the reply - I tried the broadcast method and it worked.

However I am still wondering if it is possible to make this work the same way it did in 2K from the driver? Also I have encountered another problem in XP as following: In XP IoCreateSymbolicLink will succeed even if I specify a drive letter that is used by network share - it would fail appropriately in 2K. Basically in 2K I would call IoCreateSymbolicLink till it succeeded, but obviously this approach would not work in XP. Is there a way to find out an available drive letter in XP from the driver?

Thanks for your help,

Ilya.

> ----------

From: xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com] on behalf of xxxxx@comcast.net[SMTP:xxxxx@comcast.net]
Reply To: Windows File Systems Devs Interest List
Sent: Monday, January 16, 2006 9:55 PM
To: Windows File Systems Devs Interest List
Subject: RE: [ntfsd] WinXP Newly mounted drives are not visible in explorer.

However I am still wondering if it is possible to make this work the same way it did in 2K from the driver?

IMO not.

Also I have encountered another problem in XP as following: In XP IoCreateSymbolicLink will succeed even if I specify a drive letter that is used by network share - it would fail appropriately in 2K.

It depends if link is created in global or local namespace. Network drives use local so you’d still be able to create global. Download WinObj tool from System Internals web and examine where links are created.

Basically in 2K I would call IoCreateSymbolicLink till it succeeded, but obviously this approach would not work in XP. Is there a way to find out an available drive letter in XP from the driver?

Don’t forget drive letters are user mode thing and can be local to current terminal session. Are you sure driver has to handle it?

BTW, this discussion is off topic in this list. Move to NTDEV.

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]

Michal Vodicka wrote:

It depends if link is created in global or local namespace. Network drives use local so you’d still be able to create global. Download WinObj tool from System Internals web and examine where links are created.

This effect actually causes a bug in userspace - if you plug in a USB
storage device it’ll sometimes allocate itself a drive letter exactly
the same as an existing network share. The device is enabled and active
but you can’t see it… you need to go into the disk administrator to
reassign its drive letter to use it.

Since the MS USB Storage driver can’t successfully detect a free drive
letter, I don’t think it’s possible.

Tony

> ----------

From: xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com] on behalf of Tony Hoyle[SMTP:xxxxx@nodomain.org]
Reply To: Windows File Systems Devs Interest List
Sent: Tuesday, January 17, 2006 11:15 AM
To: Windows File Systems Devs Interest List
Subject: Re: [ntfsd] WinXP Newly mounted drives are not visible in explorer.

This effect actually causes a bug in userspace - if you plug in a USB
storage device it’ll sometimes allocate itself a drive letter exactly
the same as an existing network share. The device is enabled and active
but you can’t see it… you need to go into the disk administrator to
reassign its drive letter to use it.

I just tried it. Network drive letters are created in local namespace whereas USB storage drive letters in global namespace. It seems as local namespace has precedence when links are resolved which makes sense. I’d see as a feature, not the bug. The only mistake is caused by user who maps network drive to the same letter as USB flashdrive.

Since the MS USB Storage driver can’t successfully detect a free drive
letter, I don’t think it’s possible.

Why do you think it ever tries it? There is no real conflict, both links are successfully created. And there is of course a way – existing link creation (in the same namespace) should fail and to solve local versus global namespace conflict driver could enumerate both.

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]

Michal Vodicka wrote:

> ---------- From:

I just tried it. Network drive letters are created in local namespace whereas USB storage drive letters in global namespace. It seems as local namespace has precedence when links are resolved which makes sense. I’d see as a feature, not the bug. The only mistake is caused by user who maps network drive to the same letter as USB flashdrive.

It’s not a mistake on the part of the user (and it’s *certainly* not a
feature, unless you mean the ‘undocumented’ kind) - for example on our
network the home directories are all H: - occasionally the USB driver
will (randomly it seems) pick H: to mount under, leading to much
confusion. the non-techincal users are really stuck at this point.

Tony

> ----------

From: xxxxx@lists.osr.com[SMTP:xxxxx@lists.osr.com] on behalf of Tony Hoyle[SMTP:xxxxx@nodomain.org]
Reply To: Windows File Systems Devs Interest List
Sent: Wednesday, January 18, 2006 1:27 AM
To: Windows File Systems Devs Interest List
Subject: Re: [ntfsd] WinXP Newly mounted drives are not visible in explorer.

It’s not a mistake on the part of the user (and it’s *certainly* not a
feature, unless you mean the ‘undocumented’ kind)

I mean it works as designed (probably :).

  • for example on our network the home directories are all H: - occasionally the USB driver
    will (randomly it seems) pick H: to mount under,

Randomly? In my case USB drives always use the same drive letter and IIRC it can be permanently assigned by user.

leading to much
confusion. the non-techincal users are really stuck at this point.

Yes, I’d agree with this part. Not everything which seems clear from developer’s point of view makes sense for users.

Best regards,

Michal Vodicka
UPEK, Inc.
[xxxxx@upek.com, http://www.upek.com]

Server 2003 never assignes the drive letters automatically, it requires the
Disk Administrator to be run.

Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com

----- Original Message -----
From: “Tony Hoyle”
To: “Windows File Systems Devs Interest List”
Sent: Tuesday, January 17, 2006 1:15 PM
Subject: Re: [ntfsd] WinXP Newly mounted drives are not visible in explorer.

> Michal Vodicka wrote:
>
> > It depends if link is created in global or local namespace. Network drives
use local so you’d still be able to create global. Download WinObj tool from
System Internals web and examine where links are created.
> >
> This effect actually causes a bug in userspace - if you plug in a USB
> storage device it’ll sometimes allocate itself a drive letter exactly
> the same as an existing network share. The device is enabled and active
> but you can’t see it… you need to go into the disk administrator to
> reassign its drive letter to use it.
>
> Since the MS USB Storage driver can’t successfully detect a free drive
> letter, I don’t think it’s possible.
>
> Tony
>
>
> —
> Questions? First check the IFS FAQ at
https://www.osronline.com/article.cfm?id=17
>
> You are currently subscribed to ntfsd as: xxxxx@storagecraft.com
> To unsubscribe send a blank email to xxxxx@lists.osr.com

Michal Vodicka wrote:

Randomly? In my case USB drives always use the same drive letter and IIRC it can be permanently assigned by user.

It seems pretty random… may be down to the manufacturer (I know the
tomtom satnav boxes are seem to like H: for example… not noticed a
discernable pattern on others).

Tony