Help - Search - Members - Calendar
Full Version: drive letters
The CD Forum > Bart's PE Builder > Troubleshooting
knoks
hello,
i would like to use some programs from my HD-installation within BartPE (e.g. Word, Exel, Powerpoint etc.). To do this i use paragliders "Run with Remote Registry" entry in the context-menu. But this only works when the drive letter for the HD-Installation is identical in BartPE and the HD-Installation. Often the drive letters for the HD-Installation are different within BartPE. Is there a Solution for this problem? Possibly a script wich changes the drive letters while the BartPE-CD starts would help.
jaclaz
QUOTE (knoks @ Mar 18 2011, 10:35 PM) *
hello,
i would like to use some programs from my HD-installation within BartPE (e.g. Word, Exel, Powerpoint etc.). To do this i use paragliders "Run with Remote Registry" entry in the context-menu. But this only works when the drive letter for the HD-Installation is identical in BartPE and the HD-Installation. Often the drive letters for the HD-Installation are different within BartPE. Is there a Solution for this problem? Possibly a script wich changes the drive letters while the BartPE-CD starts would help.


Well, presuming that your BartPE uses "standard" B: and X: drive letters only and that your "base" XP does NOT use them, as I see it simplest would be to do any of the following:
  • delete settings in Dosdevices key in the PE and "import" settings from the offline Registry
  • use mountvol in the BartPE to reassign drive letters
  • use a "mixed approach", use mountcol in the PE reading the settings from the offline Registry


Writing a small batch for Mountvol shouldn't be a problem.

Another possibility (once checked that the approach works on a PE) is to ask Uwe Sieber if he could "extend" his greeat little app:
http://www.uwe-sieber.de/usbdlm_e.html
to allow renaming of non-USB drives (I don't think that right now it "covers" them) or find a similar utility, this one is also nice:
http://mt-naka.com/hotswap/index_enu.htm
but AFAIK needs to be tested in a PE.

jaclaz
knoks
The Volume-ID's in my HD-Installation are different from that in BartPE. I made a screenshot of the MountedDevices registry key of my HD-Installation and from BartPE (see Appendix). Volume C: is the same volume in BartPE and the HD-Installation. I dont know what to do. Any suggestion?

MountedDevices_HD:




MountedDevices_BartPE:



jaclaz
Yes. smile.gif

You can try:
  1. delete ONLY the \dosdevices\A: to \dosdevices\K: (i.e. NOT the \dosdevices\X: one! ) from the bartPE registry
  2. add to the bartPE Registry ONLY the entries in the same form "\dosdevices\*:" ) from the "offline XP"


That should be enough. unsure.gif

If you are using Explorer as shell, you may need to re-start it, and also take care (depending on how is the PE booted or where it is booted from) about the specific device that holds it. dubbio.gif

Try running this small batch ddlistW, once from the XP and once from the PE and post results:
http://reboot.pro/8219/

jaclaz
knoks
@jaclaz
The ddlistW.cmd does not work to me. I get error messages becaus of undefined environment variables: "media", "drive" and "line".

But i made a "dd.exe --list":

ll.exe --list (HD-Installation):

CODE
rawwrite dd for windows version 0.5.
Written by John Newbigin <jn@it.swin.edu.au>
This program is covered by the GPL.  See copying.txt for details
Win32 Available Volume Information
\\.\Volume{e33ccfa7-f000-11dd-ad58-806d6172696f}\
  link to \\?\Device\HarddiskVolume1
  fixed media
  Mounted on \\.\c:

\\.\Volume{e33ccfa9-f000-11dd-ad58-806d6172696f}\
  link to \\?\Device\HarddiskVolume2
  fixed media
  Mounted on \\.\f:

\\.\Volume{54462084-2c32-11de-80c7-806d6172696f}\
  link to \\?\Device\HarddiskVolume3
  fixed media
  Mounted on \\.\d:

\\.\Volume{2e74c63e-e4da-11df-8840-005056c00001}\
  link to \\?\Device\HarddiskVolume6
  fixed media
  Mounted on \\.\e:

\\.\Volume{1f9d8c4a-0e3d-11de-9bc0-806d6172696f}\
  link to \\?\Device\CdRom0
  CD-ROM
  Mounted on \\.\g:

\\.\Volume{1f9d8c4b-0e3d-11de-9bc0-806d6172696f}\
  link to \\?\Device\CdRom1
  CD-ROM
  Mounted on \\.\j:

\\.\Volume{6bc2e4f8-2fc9-11d6-aaf4-002354f43d33}\
  link to \\?\Device\CdRom2
  CD-ROM
  Mounted on \\.\i:

\\.\Volume{5fee6c33-2ed9-11d6-aae8-eb10ba736ebf}\
  link to \\?\Device\Floppy0
  removeable media
  Mounted on \\.\a:

\\.\Volume{e9dc37ca-51af-11de-8172-005056c00008}\
  link to \\?\Device\Harddisk1\DP(1)0-0+b
  removeable media
  Mounted on \\.\k:

\\.\Volume{e9dc37cb-51af-11de-8172-005056c00008}\
  link to \\?\Device\Harddisk2\DP(1)0-0+c
  removeable media
  Mounted on \\.\l:

\\.\Volume{e9dc37cc-51af-11de-8172-005056c00008}\
  link to \\?\Device\Harddisk3\DP(1)0-0+d
  removeable media
  Mounted on \\.\m:

\\.\Volume{e9dc37cd-51af-11de-8172-005056c00008}\
  link to \\?\Device\Harddisk4\DP(1)0-0+e
  removeable media
  Mounted on \\.\n:


NT Block Device Objects
\\?\Device\CdRom0
  size is 2147483647 bytes
\\?\Device\CdRom1
  size is 2147483647 bytes
\\?\Device\CdRom2
  size is 2147483647 bytes
\\?\Device\Floppy0
\\?\Device\Harddisk0\Partition0
  link to \\?\Device\Harddisk0\DR0
  Fixed hard disk media. Block size = 512
  size is 450108588032 bytes
\\?\Device\Harddisk0\Partition1
  link to \\?\Device\HarddiskVolume1
\\?\Device\Harddisk0\Partition2
  link to \\?\Device\HarddiskVolume2
\\?\Device\Harddisk0\Partition3
  link to \\?\Device\HarddiskVolume3
  Fixed hard disk media. Block size = 512
  size is 157291997184 bytes
\\?\Device\Harddisk0\Partition4
  link to \\?\Device\HarddiskVolume4
  Fixed hard disk media. Block size = 512
  size is 271401984 bytes
\\?\Device\Harddisk0\Partition5
  link to \\?\Device\HarddiskVolume5
  Fixed hard disk media. Block size = 512
  size is 10487199744 bytes
\\?\Device\Harddisk0\Partition6
  link to \\?\Device\HarddiskVolume6
  Fixed hard disk media. Block size = 512
  size is 93192390144 bytes
\\?\Device\Harddisk1\Partition0
  link to \\?\Device\Harddisk1\DR7
\\?\Device\Harddisk1\Partition1
  link to \\?\Device\Harddisk1\DP(1)0-0+b
\\?\Device\Harddisk2\Partition0
  link to \\?\Device\Harddisk2\DR8
\\?\Device\Harddisk2\Partition1
  link to \\?\Device\Harddisk2\DP(1)0-0+c
\\?\Device\Harddisk3\Partition0
  link to \\?\Device\Harddisk3\DR9
\\?\Device\Harddisk3\Partition1
  link to \\?\Device\Harddisk3\DP(1)0-0+d
\\?\Device\Harddisk4\Partition0
  link to \\?\Device\Harddisk4\DR10
\\?\Device\Harddisk4\Partition1
  link to \\?\Device\Harddisk4\DP(1)0-0+e

Virtual input devices
/dev/zero   (null data)
/dev/random (pseudo-random data)
-           (standard input)

Virtual output devices
-           (standard output)


dd.exe --list (BartPE-Instalation):

CODE
X:\i386\system32>dd --list
rawwrite dd for windows version 0.6beta3.
Written by John Newbigin <jn@it.swin.edu.au>
This program is covered by terms of the GPL Version 2.

Win32 Available Volume Information
\\.\Volume{33556b50-528c-11e0-a9d8-806d6172696f}\
  link to \\?\Device\Floppy0
  removeable media
  Mounted on \\.\a:

\\.\Volume{33556b51-528c-11e0-a9d8-806d6172696f}\
  link to \\?\Device\CdRom0
  CD-ROM
  Mounted on \\.\x:

\\.\Volume{33556b52-528c-11e0-a9d8-806d6172696f}\
  link to \\?\Device\CdRom1
  CD-ROM
  Mounted on \\.\k:

\\.\Volume{33556b53-528c-11e0-a9d8-806d6172696f}\
  link to \\?\Device\Harddisk0\DP(1)0-0+5
  removeable media
  Mounted on \\.\g:

\\.\Volume{33556b54-528c-11e0-a9d8-806d6172696f}\
  link to \\?\Device\Harddisk1\DP(1)0-0+6
  removeable media
  Mounted on \\.\h:

\\.\Volume{33556b55-528c-11e0-a9d8-806d6172696f}\
  link to \\?\Device\Harddisk2\DP(1)0-0+7
  removeable media
  Mounted on \\.\i:

\\.\Volume{33556b56-528c-11e0-a9d8-806d6172696f}\
  link to \\?\Device\Harddisk3\DP(1)0-0+8
  removeable media
  Mounted on \\.\j:

\\.\Volume{33556b57-528c-11e0-a9d8-806d6172696f}\
  link to \\?\Device\HarddiskVolume1
  fixed media
  Mounted on \\.\c:

\\.\Volume{33556b58-528c-11e0-a9d8-806d6172696f}\
  link to \\?\Device\HarddiskVolume2
  fixed media
  Mounted on \\.\d:

\\.\Volume{33556b59-528c-11e0-a9d8-806d6172696f}\
  link to \\?\Device\HarddiskVolume3
  fixed media
  Mounted on \\.\e:

\\.\Volume{33556b5a-528c-11e0-a9d8-806d6172696f}\
  link to \\?\Device\HarddiskVolume6
  fixed media
  Mounted on \\.\f:


NT Block Device Objects
\\?\Device\CdRom0
\\?\Device\CdRom1
  size is 2147483647 bytes
\\?\Device\Floppy0
\\?\Device\Harddisk0\Partition0
  link to \\?\Device\Harddisk0\DR0
\\?\Device\Harddisk0\Partition1
  link to \\?\Device\Harddisk0\DP(1)0-0+5
\\?\Device\Harddisk1\Partition0
  link to \\?\Device\Harddisk1\DR1
\\?\Device\Harddisk1\Partition1
  link to \\?\Device\Harddisk1\DP(1)0-0+6
\\?\Device\Harddisk2\Partition0
  link to \\?\Device\Harddisk2\DR2
\\?\Device\Harddisk2\Partition1
  link to \\?\Device\Harddisk2\DP(1)0-0+7
\\?\Device\Harddisk3\Partition0
  link to \\?\Device\Harddisk3\DR3
\\?\Device\Harddisk3\Partition1
  link to \\?\Device\Harddisk3\DP(1)0-0+8
\\?\Device\Harddisk4\Partition0
  link to \\?\Device\Harddisk4\DR4
  Fixed hard disk media. Block size = 512
  size is 450108588032 bytes
\\?\Device\Harddisk4\Partition1
  link to \\?\Device\HarddiskVolume1
  Fixed hard disk media. Block size = 512
  size is 139797504 bytes
\\?\Device\Harddisk4\Partition2
  link to \\?\Device\HarddiskVolume2
  Fixed hard disk media. Block size = 512
  size is 83864922624 bytes
\\?\Device\Harddisk4\Partition3
  link to \\?\Device\HarddiskVolume3
  Fixed hard disk media. Block size = 512
  size is 157291997184 bytes
\\?\Device\Harddisk4\Partition4
  link to \\?\Device\HarddiskVolume4
  Fixed hard disk media. Block size = 512
  size is 271401984 bytes
\\?\Device\Harddisk4\Partition5
  link to \\?\Device\HarddiskVolume5
  Fixed hard disk media. Block size = 512
  size is 10487199744 bytes
\\?\Device\Harddisk4\Partition6
  link to \\?\Device\HarddiskVolume6
  Fixed hard disk media. Block size = 512
  size is 93192390144 bytes

Virtual input devices
/dev/zero   (null data)
/dev/random (pseudo-random data)
-           (standard input)

Virtual output devices
-           (standard output)
/dev/null   (discard the data)

X:\i386\system32>


You can see that the volume C:\ (wich is identical in HD- and BartPE) has the volume-ID: {e33ccfa7-f000-11dd-ad58-806d6172696f} in the HD-Installation and {33556b57-528c-11e0-a9d8-806d6172696f} within BartPE.
Therefore i dont know how to set the IDs in BartPE with the information out of the HD-Instalation.
paraglider
The string volume ids ( value names ) don't have to be the same. Its the internal volume identifiers ( the binary values ) that stay the same.
paraglider
I can use some of the code I have in runscanner to find the remote drive letters and remap the booted drive letters. It will take me a day or two to create such a program.
knoks
@paraglider
It would be great to have such a program. If it works one can use nearly every Program from the HD-Installation by using your "Run with Remote Registry" - entry in the context-menu.
jaclaz
QUOTE (knoks @ Mar 20 2011, 01:26 AM) *
@jaclaz
The ddlistW.cmd does not work to me. I get error messages becaus of undefined environment variables: "media", "drive" and "line".

You mean in the PE or in the XP? (or in BOTH?).

Won't it be the copy and paste problem?

Anyway, the ideas/suggestions hinted was:
  1. IGNORE the different GUID's
  2. ONLY use the entries in the form \DosDevices\*:


Let's try a single example, ONLY about drive "d:" in XPP that becomes drive "e:" in PE:
Registry entry in XP:
\DosDevices\d: 1e 0d 1e 0d 00 c8 13 8f 13 00 00 00
Registry entry in PE:
\DosDevices\e: 1e 0d 1e 0d 00 c8 13 8f 13 00 00 00
ddlist in XP
QUOTE
\\.\Volume{54462084-2c32-11de-80c7-806d6172696f}\
link to \\?\Device\HarddiskVolume3
fixed media
Mounted on \\.\d:

ddlist in PE:
QUOTE
\\.\Volume{33556b59-528c-11e0-a9d8-806d6172696f}\
link to \\?\Device\HarddiskVolume3
fixed media
Mounted on \\.\e:


You see?
It's the same device that in XP was probably mounted on a non-default drive letter (for any reason) and that the PE gets with the "default" one.

If the "specific" BartPE is to be used on the "specific" machine, we already have the "mkmigrate.inf" solution:
http://www.911cd.net/forums//index.php?showtopic=19663
i.e. the PE can boot with a pre-assigned set of drive letters.

If you want to change the drive letters after boot, all you have to do is to delete *all* keys in in the form "\DosDevices\*:" whose values correspond to those you can find in the same form entries of the offline Registry (and also the one matching mounted letters), then simply import the matching keys from the offline Registry.

For the sake of this example in the PE delete keys:
\DosDevices\E:
\DosDevices\D:\
and import in the Registry:
QUOTE
[Version]
Signature = "$Windows NT$"
[Addreg]
HKLM,"SYSTEM\MountedDevices","\DosDevices\D:",0x00030001,\
1e,0d,1e,0d,00,c8,13,8f,13,00,00,00


The drive "D:" should be now the "right" one.... (I cannot see in the screenshot you posted the data for "E:" under XP)

I am attaching a zip with ddlist.cmd and ddlistw.cmd together with the dd.exe 0.5 version executable.

Can you try running them and report if you have the same errors? unsure.gif

I hope this helps. smile.gif


jaclaz

paraglider
This is the first pass ( x86 only ) - just reports does not remap the drives. Can you run it from PE and tell me if it reports the correct drive mappings.

http://wb.paraglidernc.com/Utilities/RemapDrives1001.zip
knoks
@paraglider
Your drive letter mapping is correct. I tested two remote-installations 1. Win-XP and 2. Win-7 (64 Bit).
The X Volume from BartPE is in your map-table but should not be changed.
Is it possible to define the drive letter of the remote-installation by a parameter to your program? Then one could change all drive letters at boot time automatically. If no parameter is given the runscanner dialog should appear. If the giving drive letter is not a windows installation the program should stop with a error message.

@jaclaz
Thank you, the ddlistw.cmd from your last link work now.
paraglider
My program scans all drives looking for windows installations. As long as it finds one it will select it automatically. Otherwise you will get a dialog either asking to browse if none were found or asking to choose from a list if greater than 1 is found.
psc
QUOTE (paraglider @ Mar 21 2011, 04:10 AM) *
My program scans all drives looking for windows installations. As long as it finds one it will select it automatically. Otherwise you will get a dialog either asking to browse if none were found or asking to choose from a list if greater than 1 is found.

Sorry, a bit OffTopic...
@Paraglider,

With my current development work I seem to be in the middle of "reinventing the wheel".

May I use your RemapDrives program in my (WinBuilder!) multiPE project?
If yes, I have one small extention request:

A drive having a flag file (start parameter), should be renamed to drive letter (start parameter). When more than one drive contains the flag file, an "decide" dialog appears.

(This mechanism is already working in multiPE / easyDriveLetter.exe)

Peter
paraglider
My findfile utility will do the finding:

http://www.paraglidernc.com/winbuilder/Scripts/FindFile.htm

Looks for a file ( I always use sources\boot.wim ) on a USB or CD rom drive with a specified media label. Chances of finding 2 seem remote.
paraglider
Utility is available as a winbuilder script:

wb.paraglidernc.com/Scripts/scripts.htm

and as a separate download at:

wb.paraglidernc.com/Utilities/RemapDrives1002.zip
knoks
@Paraglider

Thank you for your Program. I tested it on one PC with a XP and a WIN-7 installation.
This are the origional BartPE Drives:



Choosing the XP Partition in your program:

CODE
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

X:\i386\system32>RemapDrives.exe
D:\WINDOWS
F:\Windows
Selected windows installation = D:\WINDOWS
Found Drive A->A
Found Drive C->C
Found Drive D->E
Found Drive E->F
Found Drive F->D
Found Drive G->X
Not Found Drive H
Not Found Drive I
Found Drive J->K
Found Drive K->G
Found Drive L->H
Found Drive M->I
Found Drive N->J
Not Found Drive O
Not Found Drive P
Not Found Drive Q
Not Found Drive R
RegUnloadKey(SYSTEM_ON_D), ret = 0
Boot drive = X(\Device\CdRom0)
D:->E:->\Device\HarddiskVolume3(\\?\Volume{50e4e4f9-5987-11e0-847c-806d6172696f}
\)
Deleted volume on drive E
Deleted volume on drive D
E:->F:->\Device\HarddiskVolume6(\\?\Volume{50e4e4fa-5987-11e0-847c-806d6172696f}
\)
Deleted volume on drive F
F:->D:->\Device\HarddiskVolume6(\\?\Volume{50e4e4f8-5987-11e0-847c-806d6172696f}
\)
G:->X:->\Device\CdRom0(\\?\Volume{50e4e4f1-5987-11e0-847c-806d6172696f}\)
Target Drive X is a reserved drive
J:->K:->\Device\CdRom1(\\?\Volume{50e4e4f2-5987-11e0-847c-806d6172696f}\)
Deleted volume on drive K
Deleted volume on drive J
K:->G:->\Device\Harddisk0\DP(1)0-0+5(\\?\Volume{50e4e4f3-5987-11e0-847c-806d6172
696f}\)
Deleted volume on drive G
L:->H:->\Device\Harddisk1\DP(1)0-0+6(\\?\Volume{50e4e4f4-5987-11e0-847c-806d6172
696f}\)
Deleted volume on drive H
M:->I:->\Device\Harddisk2\DP(1)0-0+7(\\?\Volume{50e4e4f5-5987-11e0-847c-806d6172
696f}\)
Deleted volume on drive I
N:->J:->\Device\Harddisk2\DP(1)0-0+7(\\?\Volume{50e4e4f6-5987-11e0-847c-806d6172
696f}\)
Mounted D:->\\?\Volume{50e4e4f9-5987-11e0-847c-806d6172696f}\
Mounted E:->\\?\Volume{50e4e4fa-5987-11e0-847c-806d6172696f}\
Mounted F:->\\?\Volume{50e4e4f8-5987-11e0-847c-806d6172696f}\
Mounted J:->\\?\Volume{50e4e4f2-5987-11e0-847c-806d6172696f}\
Mounted K:->\\?\Volume{50e4e4f3-5987-11e0-847c-806d6172696f}\
Failed to mounted L:->\\?\Volume{50e4e4f4-5987-11e0-847c-806d6172696f}\, ret=183

Failed to mounted M:->\\?\Volume{50e4e4f5-5987-11e0-847c-806d6172696f}\, ret=183

Mounted N:->\\?\Volume{50e4e4f6-5987-11e0-847c-806d6172696f}\

X:\i386\system32>


After the Changes:



Choosing the Win-7 Partitionin in your program after a reboot:

CODE
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

X:\i386\system32>RemapDrives.exe
D:\WINDOWS
F:\Windows
Selected windows installation = F:\Windows
Not Found Drive A
Found Drive C->F
Found Drive D->D
Found Drive E->E
Not Found Drive F
Found Drive G->X
Found Drive H->C
Found Drive I->K
Not Found Drive J
Not Found Drive K
Not Found Drive L
Not Found Drive M
RegUnloadKey(SYSTEM_ON_F), ret = 0
Boot drive = X(\Device\CdRom0)
C:->F:->\Device\HarddiskVolume6(\\?\Volume{4463ee54-5989-11e0-abe7-806d6172
\)
Deleted volume on drive F
Deleted volume on drive C
G:->X:->\Device\CdRom0(\\?\Volume{4463ee4b-5989-11e0-abe7-806d6172696f}\)
Target Drive X is a reserved drive
H:->C:->\Device\CdRom0(\\?\Volume{4463ee51-5989-11e0-abe7-806d6172696f}\)
Deleted volume on drive H
I:->K:->\Device\CdRom1(\\?\Volume{4463ee4c-5989-11e0-abe7-806d6172696f}\)
Deleted volume on drive K
Deleted volume on drive I
Mounted C:->\\?\Volume{4463ee54-5989-11e0-abe7-806d6172696f}\
Mounted H:->\\?\Volume{4463ee51-5989-11e0-abe7-806d6172696f}\
Mounted I:->\\?\Volume{4463ee4c-5989-11e0-abe7-806d6172696f}\

X:\i386\system32>


After the Changes:




When i choose the XP-Partition then the WIN-7 Partition is lost in windows-explorer.
paraglider
Believe that is correct - win 7 drive was not mounted in xp. Not sure that I understand what I am seeing with your drive letters.

Looks like you had 2 errors:

Failed to mounted L:->\\?\Volume{50e4e4f4-5987-11e0-847c-806d6172696f}\, ret=183

Failed to mounted M:->\\?\Volume{50e4e4f5-5987-11e0-847c-806d6172696f}\, ret=183

which is a file exists error which I presume means the volume was locked.
paraglider
Think for some reason it did not drop the existing volumes on L and M that's why you get the error code.

Why do your drive letters have no storage size numbers in explorer?
knoks
The Volume L: and M: (original letters in BartPE) are Linux Partitions. The Volumes G: H: I: J: are Drives from a Cardreader. The Volume F: is the WIN-7 Partition which is E: in the XP Installation. This Partition is lost.
paraglider
Drive E is mounted:

Mounted E:->\\?\Volume{50e4e4fa-5987-11e0-847c-806d6172696f}\

If you restart explorer does it show? You should remap the drives before starting explorer.

Can you post a picture from the drive mappings if you boot your Xp system.
knoks
@Paraglider
You are right. After restart of the explorer ore when RemapDrives1002.exe is executed before the start of explorer then the drives are correct.

Drives XP Harddisk:


Drives BartPE:


The drive Z: (HD-Installation) is a virtual UltraISO volume which is not needed within BartPE.

Thank you for this program. Now i can use the Office-Tools without making a plugin.

It would be nice to have a option to define the drive letter from wich the drive leters are imported. If one has a XP and a Window-7 or Windows-Vista partition only the import from the XP partition make sense. Then the drive letter import can work at startup without manual selection.
paraglider
How would you know what drive letter to specify for the windows installation? That's why you have my program as the drive letters were unpredictable.

Maybe auto select by type would be better i.e. xp or win7? Or by drive label or ...?

I can see why L: and M: are failing. Looks like PE is not assigning a volume to the drive unlike on XP. Missing storage driver?
knoks
@Paraglider
I use a configuration script which runs on BartPE startup. This script search all partitions for a configuration file. I would like to store the drive letter in this configuration file. If no drive letter is specified, i can use your decide dialog and store the selected drive letter in my configuration file afterwards. If the drive letter is allready defined within this configuration file then BartPE should automatic import the drive letters from the HD installation.
Autoselect by Label is ambiguous becaus partitions must not have a label. Also autoselect bei typ is ambiguous if a PC has more then one XP installations.

The Volumes L: and M: are only within BartPE becaus i use a "mount ext2/3" plugin for Linux partitions. Within the HD-installation the Linux partitions are mounted manually if needed. Thus the drive letter allocation is correct.

EDIT:
In my last post i uploaded the wrong picture "Drives BartPE". It was the Picture before drive letter import. Now it is after import of drive letters. Therefore the drive letters of the Linux partitions change from L: and M: to G: and H:
knoks
@Paraglider

i like to informe you that the RemapDrives.exe extracted from:
http://wb.paraglidernc.com/Scripts/Remap.script
is different to the one extracted from:
wb.paraglidernc.com/Utilities/RemapDrives1002.zip

I use the RemapDrives.exe from the script Version because it has the /w option wich i need.

It would be nice to have a registry entry which TARGET_ROOT is choosen bei your RemapDrives.exe program (simmilar to your RunScanner.exe program).

Edit:
A additionally registry entry is not necessary because i can use the registry entry :
"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\TARGET_ROOT"
paraglider
The script contains the latest version. The zip file was a temporary measure before the script was available.

Remap.script updated to set selected windows path to system environment registry key.
psc
QUOTE (psc @ Mar 22 2011, 08:06 PM) *
A drive having a flag file (start parameter), should be renamed to drive letter (start parameter). When more than one drive contains the flag file, an "decide" dialog appears.

(This mechanism is already working in multiPE / easyDriveLetter.exe)

I solved it by easyDriveLetter.exe starting RemapDrives.exe

Works fine!

Is there anny command line syntax description?

Peter
paraglider
Follow the Usage link on the web site:

http://wb.paraglidernc.com/Scripts/RemapDrives.htm

jaclaz
And for those willing to use the .exe, but not running winbuilder, this may come handy unsure.gif:
http://reboot.pro/10783/

jaclaz
psc
QUOTE (paraglider @ Apr 21 2011, 01:20 PM) *
Follow the Usage link on the web site:

http://wb.paraglidernc.com/Scripts/RemapDrives.htm

Thanks, I got it.

One more question:

I want to "protect" R: and W:
"/x R: /x W:", or "/x R:,W:", or whatelse?

An enhancement suggestion:

On my PC, RemapDrives does not detect a system directory with the non "Windows" name "WinXP".

In my programs I test for "System32" in the second directory level, rather than for "Windows" in the first level.

Peter

jaclaz
QUOTE (psc @ Apr 21 2011, 07:16 PM) *
In my programs I test for "System32" in the second directory level, rather than for "Windows" in the first level.

If I may unsure.gif, an even more "exact" way would be to check for \System32\config AND for \System32\drivers ( at least this is what Recovery Console checks):
http://www.911cd.net/forums//index.php?sho...20983&st=25

cheers.gif
jaclaz
paraglider
It does not care about the toplevel directory name. It searches for anything\system32\config registry hives ( system, default, sam , software, security ) on fixed drives

If its not finding your winxp directory then its not because of the directory name - a missing registry hive / ntnll.dll or ntdll.dll is not w2000 or later / or its not a fixed drive.

There is also my wbzipmgr tool to manipulate attachments in script files at:

http://wb.paraglidernc.com/Utilities/utilities.htm
psc
ntdll was missing!

Peter
paraglider
New version available - supports multiple /x parameters.
knoks
@Paraglider
is it possible to extend your RemapDrives.exe to store the drive mapping in the Registry.
I need to change some drive letters in my configuration script (e.g. the Drive letter for the location of the pagefile.sys).
First i had the idea to redirect the output from your RemapDrives.exe to a file and extract the needed informations from that file. But my script starts before the Ramdisk and FBWF. Therefore i do not know where to store this file.

The registry entry should look like:
-----------------------------------------------------------
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\RemapDrives\0] (before RemapDrives.exe)
"\\?\Volume{1c78f951-7340-11e0-bd62-806d6172696f}\"="H:"
"\\?\Volume{1c78f952-7340-11e0-bd62-806d6172696f}\"="D:"
"\\?\Volume{1c78f953-7340-11e0-bd62-806d6172696f}\"="E:"
"\\?\Volume{1c78f954-7340-11e0-bd62-806d6172696f}\"="C:"

[HKEY_LOCAL_MACHINE\SOFTWARE\RemapDrives\1] (after the first call to RemapDrives.exe)
"\\?\Volume{1c78f951-7340-11e0-bd62-806d6172696f}\"="C:"
"\\?\Volume{1c78f952-7340-11e0-bd62-806d6172696f}\"="F:"
"\\?\Volume{1c78f953-7340-11e0-bd62-806d6172696f}\"="D:"
"\\?\Volume{1c78f954-7340-11e0-bd62-806d6172696f}\"="E:"

Or that way:
-----------------------------------------------------------
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\RemapDrives\0] (before RemapDrives.exe)
"C:"="\\?\Volume{1c78f954-7340-11e0-bd62-806d6172696f}\"
"D:"="\\?\Volume{1c78f952-7340-11e0-bd62-806d6172696f}\"
"E:"="\\?\Volume{1c78f953-7340-11e0-bd62-806d6172696f}\"
"H:"="\\?\Volume{1c78f951-7340-11e0-bd62-806d6172696f}\"

[HKEY_LOCAL_MACHINE\SOFTWARE\RemapDrives\1] (after the first call to RemapDrives.exe)
"C:"="\\?\Volume{1c78f951-7340-11e0-bd62-806d6172696f}\"
"D:"="\\?\Volume{1c78f953-7340-11e0-bd62-806d6172696f}\"
"E:"="\\?\Volume{1c78f954-7340-11e0-bd62-806d6172696f}\"
"F:"="\\?\Volume{1c78f952-7340-11e0-bd62-806d6172696f}\"
------------------------------------------------------------
If there were more than one call of RemapDrive.exe one needs additionally an registry entry for each further call of RemapDrives.exe:
[HKEY_LOCAL_MACHINE\SOFTWARE\RemapDrives\2] (after second call to RemapDrives.exe)
[HKEY_LOCAL_MACHINE\SOFTWARE\RemapDrives\3] (after third call to Remapdrives.exe)
and so on.
paraglider
Current mounted drives are already in the registry at HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices. Export the values starting \DosDevices.
knoks
@Paraglider
I know, but i have to change a drive letter which is previously set in my config file. After a call to RemapDrives.exe this drive letter may change and i have to change it also in my config file. Therefore i need a map table: old drive letter -> new drive letter. But since one can call RemapDrives.exe several times i think it is better to use the Method i discribed. You use the mapping i described in the mount device section within your RemapDrives.exe. Therefore i think it is easy for you to write this mappings additionally in the registry.
psc
@paraglider

I have a new wish / suggestion.

Can you add two switches:
  • Check only host system partitions which have the same OS like the current PE.
  • If there are multiple choices, do not ask, but silently use the first available choice.


Peter
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2013 Invision Power Services, Inc.