Forum: EasyBoot
Topic: Integrating multiple version of Vista
started by: varun037

Posted by varun037 on Apr. 01 2009,06:24
the procedure is:

copy boot.wim from active boot disk as boot32.wim in sources folder

bcdedit /store J:\1\WinVista\BOOT\bcd /ENUM
*** note the old guid

bcdedit /store J:\1\WinVista\BOOT\bcd /copy {default} /d "Active Boot Disk"


*** new guid is given at this stage

bcdedit /store J:\1\WinVista\BOOT\bcd /set {newguid} DEVICE ramdisk=[boot]\sources\boot32.wim,{oldguid}

bcdedit /store J:\1\WinVista\BOOT\bcd /set {newguid} OSDEVICE ramdisk=[boot]\sources\boot32.wim,{oldguid}


*** to check whether the bcd store has 2 ramdisks
bcdedit /store J:\1\WinVista\BOOT\bcd /ENUM


*** boot32.wim is the file copied from the active boot disk (boot.wim renamed)



Posted by varun037 on Apr. 07 2009,08:12
use the default WinVista or any WinPE dvd.

copy the contents to the HDD

the structure would be

dvd1 | - Project Root
        | - BOOT (CONTAINS THE BCD FILE TO BE EDITED)
        | - EFI
        | - SOURCES (CONTAINS THE PE .WIM FILES)
        | - EZBOOT
        | - OTHER FILES

In the boot folder we need to run the command

bcdedit /store bcd /ENUM

This will give you the details of old entry in the boot loader.

u need to note the guid. in my case this is {7619dcc8-fafe-11d9-b411-000476eba25f}


CODE

bcdedit /store bcd /enum

Windows Boot Manager
--------------------
identifier              {bootmgr}
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
default                 {default}
displayorder            {default}
toolsdisplayorder       {memdiag}
timeout                 30

Windows Boot Loader
-------------------
identifier              {default}
device                  ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
path                    \windows\system32\boot\winload.exe
description             Windows Setup
locale                  en-US
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
systemroot              \windows
detecthal               Yes
winpe                   Yes
ems                     Yes



bcdedit /store bcd /copy {default} /d "Active Boot Disk"

something like this will appear.
CODE


operation completed successfully.
{613fe2f0-2356-11de-bf6a-001e4cdc40b1}



therefore my new guid is {613fe2f0-2356-11de-bf6a-001e4cdc40b1}


now

bcdedit /store bcd /set {613fe2f0-2356-11de-bf6a-001e4cdc40b1} DEVICE ramdisk=[boot]\sources\boot32.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}

CODE


operation completed successfully.



bcdedit /store bcd /set {613fe2f0-2356-11de-bf6a-001e4cdc40b1} OSDEVICE ramdisk=[boot]\sources\boot32.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}


CODE


operation completed successfully.


Posted by varun037 on Apr. 07 2009,08:13
bcdedit /store bcd /ENUM

CODE


Windows Boot Manager
--------------------
identifier              {bootmgr}
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
default                 {default}
displayorder            {default}
                                {613fe2f0-2356-11de-bf6a-001e4cdc40b1}
toolsdisplayorder       {memdiag}
timeout                 30

Windows Boot Loader
-------------------
identifier              {default}
device                  ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
path                    \windows\system32\boot\winload.exe
description             Windows Setup
locale                  en-US
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
systemroot              \windows
detecthal               Yes
winpe                   Yes
ems                     Yes


Windows Boot Loader
-------------------
identifier              {613fe2f0-2356-11de-bf6a-001e4cdc40b1}
device                  ramdisk=[boot]\sources\boot32.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
path                    \windows\system32\boot\winload.exe
description             Active Boot Disk
locale                  en-US
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\sources\boot32.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
systemroot              \windows
detecthal               Yes
winpe                   Yes
ems                     Yes


Posted by varun037 on Apr. 07 2009,08:17
like this you may add n number of vista pes... (i have tested 3 PEs + Windows Vista Setup) to the BCD Store. Just you have to keep the oldguid to same as {7619dcc8-fafe-11d9-b411-000476eba25f}

{7619dcc8-fafe-11d9-b411-000476eba25f} will never change... thats the rule.

copy the boot.wim file in sources folder of active boot disk/ ghost pe/ erdcommander 6.0 to the sources folder in disk1 in the project. and rename it to desired. i renamed it to boot32.wim you may use any...

{default} is not a variable and need not be changed.


I have not tested this method to change the folder as this can be done in the command by specifying a folder other than sources. So not sure to that. But the Vista PEs i have handled had only 1 file in the sources folder which i renamed this way. So if you have multiple files in sources folder for a pe you may try changing the folder and do tell me if it works....


I have attached a BCD File with following options

Windows Setup [EMS Enabled] - Loads boot.wim
Active Boot Disk [EMS Enabled] - Loads babd.wim
Norton Ghost 14.0 PE [EMS Enabled] - Loads ghostpe.wim
ERD Commander 6.0 [EMS Enabled] - Loads erd60.wim



Posted by kukubau on Apr. 08 2009,09:10
Can't this process be automated? A script maybe?

The guy at msfn.org posted one but for some reason it doesn't work for me. Can you test it on your machine? I don't have vista installed. The
"for /f "tokens=1-3" %%a in ('Bcdedit /store "%BCDFILE%" /create /d "Windows 32 Bit" /application osloader') do set guid1=%%c
Bcdedit /store "%BCDFILE%" /set %guid1% systemroot \Windows" part stops working for me.

CODE
echo ***   Creating WinPE BCD (boot configuration data) File
Bcdedit /createstore "%BCDFILE%"
Bcdedit /store "%BCDFILE%" /create {ramdiskoptions} /d "Ramdisk options"
Bcdedit /store "%BCDFILE%" /set {ramdiskoptions} ramdisksdidevice boot
Bcdedit /store "%BCDFILE%" /set {ramdiskoptions} ramdisksdipath \boot\boot.sdi

rem 32Bit
for /f "tokens=1-3" %%a in ('Bcdedit /store "%BCDFILE%" /create /d "Windows 32 Bit" /application osloader') do set guid1=%%c
Bcdedit /store "%BCDFILE%" /set %guid1% systemroot \Windows
Bcdedit /store "%BCDFILE%" /set %guid1% detecthal Yes
Bcdedit /store "%BCDFILE%" /set %guid1% winpe Yes
Bcdedit /store "%BCDFILE%" /set %guid1% description "Windows 32 Bit"
Bcdedit /store "%BCDFILE%" /set %guid1% osdevice ramdisk=[boot]\Boot\winpe_x86.wim,{ramdiskoptions}
Bcdedit /store "%BCDFILE%" /set %guid1% device ramdisk=[boot]\Boot\winpe_x86.wim,{ramdiskoptions}

rem 64Bit
for /f "tokens=1-3" %%a in ('Bcdedit /store "%BCDFILE%" /create /d "Windows 64 Bit" /application osloader') do set guid2=%%c
Bcdedit /store "%BCDFILE%" /set %guid2% systemroot \Windows
Bcdedit /store "%BCDFILE%" /set %guid2% detecthal Yes
Bcdedit /store "%BCDFILE%" /set %guid2% winpe Yes
Bcdedit /store "%BCDFILE%" /set %guid2% description "Windows 64 Bit"
Bcdedit /store "%BCDFILE%" /set %guid2% loadoptions ramdisk=[boot]\Boot\winpe_x64.wim,\"DISABLE_INTEGRITY_CHECKS"
Bcdedit /store "%BCDFILE%" /set %guid2% osdevice ramdisk=[boot]\Boot\winpe_x64.wim,{ramdiskoptions}
Bcdedit /store "%BCDFILE%" /set %guid2% device ramdisk=[boot]\Boot\winpe_x64.wim,{ramdiskoptions}

rem Setup Bootmanager
Bcdedit /store "%BCDFILE%" /create {bootmgr} /d "Windows VISTA BootManager"
Bcdedit /store "%BCDFILE%" /set {bootmgr} timeout 10
Bcdedit /store "%BCDFILE%" /set {bootmgr} displayorder %guid1% %guid2%
Bcdedit /store "%BCDFILE%" /enum all


The batch above is jut an example. Can you make one for yours which is what I'm looking for.


Thank you



Posted by varun037 on Apr. 09 2009,02:59
Here you go...

CODE

Rem BCD (boot configuration data) editor for multiple vista pe

REM THIS IS THE ORIGINAL BCD FILE EXTRACTED FROM ANY VISTA WINPE / VISTA DVD (I USED VISTA INSTALLATION)
set BCD-File="c:\bcd 1\BCD"

REM SET THE NAME FOR THE VISTA PE HERE
set pename="Your PE Name"

REM SET THE NAME FOR THE WIM.FILE HERE WITH PATH
set filena=[boot]\sources\yourwimfile.wim

REM DO NOT CHANGE ANYTHING BELOW UNLESS YOU KNOW WHAT ARE YOU DOING
for /f "eol=r tokens=1-2" %%a in ('bcdedit /store %BCD-File% /ENUM all') do set rdo=%%b


for /f "tokens=1-7" %%a in ('Bcdedit /store %BCD-File% /copy {default} /d %pename%') do set guid1=%%g
bcdedit /store %BCD-File% /set %guid1:~0,38% DEVICE ramdisk=%filena%,%rdo%
bcdedit /store %BCD-File% /set %guid1:~0,38% OSDEVICE ramdisk=%filena%,%rdo%

bcdedit /store %BCD-File% /ENUM

Posted by varun037 on Apr. 09 2009,03:20
remember not to use any spaces in filena variable
Posted by mmarx82 on Apr. 27 2009,15:30
varun037,

I haven't tried this yet but have been waiting on an answer to it in a previously unanswered post. I'm going to try it a post back here the results, if this works, you will be GOD in my eyes!

Thanks for the info.



Posted by mmarx82 on Jun. 08 2009,16:25
Sorry it took forever but I had to abandon the project for awhile, I want to give a big THANK YOU! It works perfectly!

I did add one line at the end of the batch file so I could change the name of the first boot entry which others may be interested in knowing how to do. Just replace "My New Name" with what you want it to be called and make sure you leave the quotes.

bcdedit /set {default} descrtiption "My New Name" /store %BCD-File%

Also for those not sure about setting the BCD-File with easyboot, for most people it will be this in varun037's batch file:
set BCD-File="C:\EasyBoot\disk1\BOOT\BCD"

Thanks Again varun037!

Posted by QE_LiTHiUM on Jul. 20 2009,09:31

(varun037 @ Apr. 07 2009,13:12)
QUOTE
use the default WinVista or any WinPE dvd.

copy the contents to the HDD

the structure would be

dvd1 | - Project Root
        | - BOOT (CONTAINS THE BCD FILE TO BE EDITED)
        | - EFI
        | - SOURCES (CONTAINS THE PE .WIM FILES)
        | - EZBOOT
        | - OTHER FILES

In the boot folder we need to run the command

bcdedit /store bcd /ENUM

This will give you the details of old entry in the boot loader.

u need to note the guid. in my case this is {7619dcc8-fafe-11d9-b411-000476eba25f}

I have no idea what r u talkinng about.....

Where and how must I run this command ?

Is there A special software I need ?

Please can u write it a little clearer for me. thanks for your help.

Posted by QE_LiTHiUM on Jul. 21 2009,17:13
You've got a very active forum, try not to lose that activity, the other forums must learn from ur forum, to be as helpful as you guys are.

i asked a question about 2 day ago but not even a single reply to tell me not to wait for an answer from this topic.

Posted by QE_LiTHiUM on Jul. 23 2009,05:50
After 3 day without any answer ? how many more days should I wait to get an answer or any suggestions about not asking anymore in this forum ?

I'm now feeling sry for myself, because I spend my money on some shitware..... without any support of using it.



Posted by varun037 on Nov. 21 2009,03:03
You need to run all this in windows vista. You will not require any special software as bcdedit command is available in vista
Posted by varun037 on Nov. 21 2009,03:07

(QE_LiTHiUM @ Jul. 20 2009,14:31)
QUOTE

(varun037 @ Apr. 07 2009,13:12)
QUOTE
use the default WinVista or any WinPE dvd.

copy the contents to the HDD

the structure would be

dvd1 | - Project Root
        | - BOOT (CONTAINS THE BCD FILE TO BE EDITED)
        | - EFI
        | - SOURCES (CONTAINS THE PE .WIM FILES)
        | - EZBOOT
        | - OTHER FILES

In the boot folder we need to run the command

bcdedit /store bcd /ENUM

This will give you the details of old entry in the boot loader.

u need to note the guid. in my case this is {7619dcc8-fafe-11d9-b411-000476eba25f}

I have no idea what r u talkinng about.....

Where and how must I run this command ?

Is there A special software I need ?

Please can u write it a little clearer for me. thanks for your help.

You need to copy the contents of the Vista DVD / PE to the Hard Disk. For most users this will be c:\easyboot\disk1\ folder.

When you will copy the contents of the Windows Vista DVD/PE the structure of the disk 1 folder will be as given.

disk1 folder will contain BOOT, EFI, SOURCES, EZBOOT as subfolders.

I would like to mention specially that Boot, EFI, SOURCES will not be contained in any subfolder to the disk 1 folder. They will remain in disk 1 folder only.

For the batch file you can set the options by editing the batch. The process is automated in the batch.



Posted by balder on Nov. 21 2009,05:33
@varun037

Hi varun037

Hmmmm  this looks interesting :p  
As I don’t have Vista up and running (vista is my hate object :angry: ) I cannot fully out test this. By the way I don’t have Win-7 anyway :(  – testing combination vista and win-7 is here bye not possible for me at present time.

Please can you by any chance create a downloadable batch file that is suitable (adjusted) to EasyBoot environment (path to C:\EasyBoot\disk1 already in place etcetera)? I mean a “straight forward” batch file - where you basically only need to put in name to folder\s and “identity” number to the old boot loader\s?

One more question though: when you run command “bcdedit /store bcd /ENUM” can this “identity number” be saved to a plain text file automatically ???  I have to ask you, as I don’t have Vista on any computer  If this is possible I can create a script to do whatever we like in this matter :cool:

Regards balder

Posted by varun037 on Nov. 21 2009,08:34
Identity Number can be stored in a variable. I am not that good at scripts but in case you can store variable contents in a text file, which should be possible in my view, you can build a script.

My Batch File is:

Rem BCD (boot configuration data) editor for multiple vista pe

REM THIS IS THE ORIGINAL BCD FILE EXTRACTED FROM ANY VISTA WINPE / VISTA DVD (I USED VISTA INSTALLATION)
set BCD-File="c:\bcd 1\BCD"

REM SET THE NAME FOR THE VISTA PE HERE
set pename="Your PE Name"

REM SET THE NAME FOR THE WIM.FILE HERE WITH PATH
set filena=[boot]\sources\bootsdf.wim

for /f "eol=r tokens=1-2" %%a in ('bcdedit /store %BCD-File% /ENUM all') do set rdo=%%b


for /f "tokens=1-7" %%a in ('Bcdedit /store %BCD-File% /copy {default} /d %pename%') do set guid1=%%g
bcdedit /store %BCD-File% /set %guid1:~0,38% DEVICE ramdisk=%filena%,%rdo%
bcdedit /store %BCD-File% /set %guid1:~0,38% OSDEVICE ramdisk=%filena%,%rdo%
bcdedit /store %BCD-File% /ENUM


In this file

rdo = old gui  -> %rdo% will display the variable value
guid1 = new guid -> %guid1:~0,38% will display the variable value (0-38 is because we need to eliminate the dot stored in the end)

Posted by varun037 on Nov. 21 2009,08:41
Hi balder

I think the  script is already very straight forward. You just need to set pename in the script which you can try to get as input. Same is the case with filena variable.

Third thing that can be done is changing the line

set BCD-File="c:\bcd 1\BCD"

to

set BCD-File=" c:\easyboot\disk1\boot\BCD"


Regards

Varun

Posted by balder on Nov. 21 2009,10:52
@varun037

Thanks for quick reply varun037  :)

I cannot run this batch commands in WinXP so I have to wait until I have Win-7 installed (if ever ??? ).

To the record: We can easily launch VistaPE (ERD60 Vista build) with grub – code below for text file menu.lst

title ERD60 (VISTA based) ISO boot
find --set-root --ignore-floppies /iso/erd60.iso
map /iso/erd60.iso (0xff) || map --mem /iso/erd60.iso (0xff)
map --hook
chainloader (0xff)
lock

Regards balder

Posted by varun037 on Nov. 21 2009,11:21
Hi Balder

Linux is my hate object. Have never used GRUB loader for my projects..

Regards

Posted by mordicus on Dec. 22 2009,06:05
Thx to a lots of usefull topics from this forum, i successfully made an iso with vista/xp/erf 2005.
So vista is in the disk1 folder with the i386 folder from xp.
But if i want to add seven on my iso, where can i put him ?
I mean, there will be a problem with the "boot" (and other folder that they have both) folder from vista and seven, isn't it ?
How can i do it ?

Thx in advance and sorry for my english.

Posted by varun037 on Dec. 22 2009,22:34
Well I have not been able to integrate windows 7 with vista as yet. Will update in case I find any wayout to this.
Posted by mordicus on Dec. 23 2009,12:58
Ok, thx for your reply Varun, i hope you'll find something soon :p.