Novell Home

Getting USB Devices to work under Windows XP

Novell Cool Solutions: Tip
By Jason Doller

Digg This - Slashdot This

Posted: 10 May 2005
 

"A good way to avoid conflicts for drive letters when inserting USB devices."
--Aaron Gresko, OES/NetWare Product Specialist

PROBLEM: USB hard drives / flash drives occasionally don't work under XP (possibly 2000) with NetWare 4 (possibly above).

OS reports that USB device was inserted and is working, but device doesn't show up in drive list.

SOLUTION: For some reason best understood by Microsoft, it assigns the first non-OS assigned drive letter to the USB devices in question. Unfortunately, if the first non-OS-assigned drive letter is the letter of a NetWare share, the USB device is unreachable.

The only solution I have found is to go to disk management and manually assign an unused drive letter to the device. The device should always use this new letter when inserted into the same machine.

If you have any other suggestions, let us know.

Other Suggestions

Phillip E. Thomas

With Windows XP, drive letters that are mapped to NetWare volumes can conflict with USB disk drives. Windows automatically assigns a drive letter to a USB disk, without checking network mappings to see if a drive letter is really available. One solution to this is to start using drive letters fairly high in the alphabet, at for example H: or above. But many NetWare environments use F: as the first mapped drive.

In a locked-down environment, you might want to simply disable the use of USB storage devices. Or, you can use XP's disk management GUI to assign a different drive letter to the device, which will be remembered by Windows. However, in a large environment you might want a way to automatically keep drive F: free for network mapping without having to visit desktops or restrict the users.

What you can try is the Windows XP "MOUNTVOL" command to enumerate and re-map symbolic links to local Windows volumes. This could make it manageable in a ZENworks environment, or even by running a command file in the login script.

For example, on my system the MOUNTVOL F: /L command returns
\\?\Volume{ebc79032-5270-11d8-a724-806d6172696f}\

I could then remap this device to S: with the following commands:

MOUNTVOL F: /D
MOUNTVOL S: \\?\Volume{ebc79032-5270-11d8-a724-806d6172696f}\ 

or even using an "NTFS junction point", remap it to C:\USB!! (the USB folder must pre-exist):

MOUNTVOL F: /D
MOUNTVOL C:\USB: \\?\Volume{ebc79032-5270-11d8-a724-806d6172696f}\ 

Of course, if your user happens to have a local hard drive, or CD on drive F:. those will be remapped also. I can't see any way to distinguish what the device is from the GUID.

MOUNTVOL is pretty cool for power users who come screaming about running out of drive letters. You could have all your local hard disks, CD drives, and USB devices on drive C: :)

Example

ECHO OFF

REM This program remounts any physical disk volume from drive letter F: to the
REM first available letter between T: to V:.


FOR /F "delims=" %%x IN ('MOUNTVOL F: /L') DO SET DF=%%x

IF "%DF%"=="The system cannot find the file specified." GOTO E1

REM Find available drive letter from T:, U:, V:.
IF NOT EXIST T:\. GOTO D1
IF NOT EXIST U:\. GOTO D2
IF NOT EXIST V:\. GOTO D3

REM Set the destination drive letter
:D1
SET DEST=T:
GOTO :D4
:D2
SET DEST=U:
GOTO :D4
:D3
SET DEST=V:
:D4

MOUNTVOL F: /D
MOUNTVOL %DEST% %DF%

:E1

Garry Goodwin

We had the same issue and identified moving the CD-ROM from E: to X: as the solution. We used the built-in DISKPART utility in Windows XP to do this because:

  • F: is a user's home directory and My Documents is redirected here.
  • It is not reasonable to expect users to disconnect drives, etc., and disconnecting F: would cause errors.
  • Users are restricted from mapping and disconnecting drives, and are also prevented from accessing the computer management MMC snap-ins.
  • Everything related to our workstation build process and ongoing management must be 100% automated from delivery to user logon and usage.

Once the workstation is named, has joined the domain, and is registered in eDirectory, a number of default applications are installed using ZENworks.

The first application is a simple app which:

Distributes a text file (named CDROM.SCP) to C:\WINDOWS\SYSTYEM32 containing:

REM DISKPART SCRIPT TO ASSIGN CDROM to X:
SELECT VOLUME 0
ASSIGN LETTER=X
EXIT

and launches %*WINSYSDIR%\DISKPART.EXE /S CDROM.SCP

This assigns the CD/DVD drive from E: to X: successfully. We have not found any applications which cannot use the X: drive as the CD-ROM to date.

NOTES:

  • Use the LIST VOLUME command in DISKPART to identify the CD/DVD drive for your hardware.
  • %*WINSYSDIR% is a ZENworks variable for C:\WINDOWS\SYSTEM32
  • You cannot change the CD-ROM letter in a base OS image, since sysprep/mini setup will reinstate it to the default letter.

If you have any questions you may contact Garry at ggoodwin@qbe-europe.com

Andrew W

PROBLEM: USB devices not available because they are mapped to the same drive as a network mapping.

SOLUTION: Instead of changing the mapped drive letter of your USB hdd, change the drive letter that your CD player uses, then reinsert your USB device. That way any USB device that attaches to your PC will find an available drive letter (Such as d:\ ).

This is particularly important where many users share one PC, as in a school.

David Hayes

Another option is to use drive B for mapping to the USB device as this is rarely used today. Then if the login script changes, drive mapping conflict does not occur.

If you have any questions you may contact David at dghayes@riverview.nsw.edu.au

Jim Trotter

With hard drives getting bigger and more other "drive" devices available to Windows, drive letters for these devices can quickly run out prior to the ones set aside for network drives. Here is my solution for solving this problem.

Under the NetWare client properties, Client tab, make the first NetWare drive high enough (I use H:) so it will not conflict with other drive devices on the system or in the case of USB drives, potential hardware. This way Windows will automatically assign a valid drive letter to it.

Paul Kochie

I've combined information from a couple of other people's solutions and made a simple .bat file to do it all.

@echo REM DISKPART SCRIPT TO ASSIGN USB drive B: >>c:\windows\memkey.scp

echo SELECT VOLUME 2 >>c:\windows\memkey.scp

echo ASSIGN LETTER=b >>c:\windows\memkey.scp

%systemroot%\system32\diskpart.exe /s c:\windows\memkey.scp

del c:\windows\memkey.scp

Barry Cavanaugh

I think it is important to note that setting up stations with at least the E drive free allows use of one USB key to be installed on the fly by the end user. For most of my stations I do not have to do anything, for others I remap a zip drive or CDrom.

Unfortunatly when I image these stations I have to manually remap these drives as microsoft reintialized the order on first boot, so it is a manual step in the setup process. I will be looking at the commands given to see if I can automate the process.

T.van der Ham

The program USB Drive Letter Manager automaticly assigns drive-letters to USB devices with pre-defined letters or just a letter that actually is free.

Available from: http://www.uwe-sieber.de/usbdlm_e.html

Stephan Pottle

I have had marginal success with resolving the problem as described by changing the drive letter associated with USB drives not displayed (yet visible under disk management) in the My Computer screen. I recently resolved my problems with this by changing the following setting via the following GUI route:

Start
    Settings
        Control Panel
            Administrative Tools
                Computer Management
                    Services and Applications
                        Services
 
                 Find:    MS Software shadow Copy Provider
                            Start-up Type:    Set this to "Automatic"    
                            Service Status:   Click "Start"

I found this resolved a problem I had expounded many expletives upon...including MS.

Other Suggestions:

If you have any other suggestions, let us know.


Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com

© 2014 Novell