Jump to content











Photo
- - - - -

Testing Windows Embedded Standard & ThinPC 7 install and boot from VHD

wes7

  • Please log in to reply
88 replies to this topic

#26 sambul61

sambul61

    Gold Member

  • Advanced user
  • 1568 posts
  •  
    American Samoa

Posted 03 January 2012 - 06:42 AM

After WinVBlock is injected with DISM, during 1st reboot it loads from Critical Device Database. Once desktop appears, the driver for WinVBlock SCSI disk is then auto installed into OS. At times this process didn't finish properly (as WinVBlock wasn't finalized either). Open Device Management, click on the marked WinVBlock Disk driver and update, pointing to its INF file on your drive to finish install. You should see WinVBlock SCSI Bus device appeared after that. Also, use a matching DISM tool from WES7 ISO, not from your host drive OS.

When you 1st reboot ThinPC VHD inside a VM, the VM's virtual HD is detected and its driver installed by Windows Setup. If you then reboot the same VHD on a real PC, WinVBlock needs to read the VHD filedisk from the real hard drive. But the real PC hard drive isn't known to ThinPC, hence you get 0x7B. Try adding your real HD (SATA or IDE) to Critical Device Database in ThinPC Registry. You might want to use wimb's tool or Reg fixes for that.

If you can boot the VHD natively on real PC, but can't via G4D & WinVBlock with 0x7B error, this seems to indicate WinVBlock wasn't properly installed, or its service didn't start at boot time. Set Start=0 for WinVBlock SCSI Bus driver in Registry, make sure its service started after boot, check other WinVBlock Registry settings too, or "update" the driver using its INF. See also, on what driver the boot process hangs in Safe Mode, and use tracing tools if possible to find the root cause. Do you have a similar BSOD in WES7, or only ThinPC?

#27 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 03 January 2012 - 06:35 PM

I have some troubles getting Windows Embedded to do what i want.

I select a Windows, size a bit over 1GB, but when i click on 'resolve conflicts' it rises to 1.8GB and includes lot's of stuff, i absolutely don't want. Like Dot.Net and WMP.

How can i find out, which are the selected components, that cause the other to be integrated too?

On a similar note. How can i use a template as a template for my own selection?
I wanted to try the "IE, WMP, whatever template", but without WMP.


:cheers:

#28 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 03 January 2012 - 06:35 PM

About wes7 from grub4dos in file mode, i was getting bootmgr missing (just like when i was trying to load it in virtual pc).

So I fixed the bootsector and added a BCD store with bcd edit and now I get stuck on file missing or corrupt : windowssystem32winload.

Still works fine in native vhd boot thus.

I dont get what is missing... WES7 was installed straight from DVD so it was entirely managed from the dvd setup as opposed to ThinPC where I used imagex + bcdboot.

ThincPC boots fine in virtual pc and starts booting fine with grub4dos so these 2 installations definitely are different in the way they get chained from physical drive to native vhd boot.

#29 sambul61

sambul61

    Gold Member

  • Advanced user
  • 1568 posts
  •  
    American Samoa

Posted 03 January 2012 - 06:43 PM

Yes, ThinPC is better fitted with drivers, not surprising given its VHD file size.

"File missing" error, when booting via G4D & WinVBlock may indicate, the disk is missing after switching to protected mode - check whether WinVBlock was installed properly and configured to start at boot. It may also indicate other issues, so attach the VHD and Reset BCD Config and Repair Boot Files inside VHD offline, add WES7 boot entry to it - all with EasyBCD (works better at times for resetting VHDs than BCDBoot etc. since may use different command options).

Are you trying to boot the VHDs natively via G4D without WinVBlock installed?

#30 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 03 January 2012 - 06:54 PM

About winblock, i am not sure about the registry entries, is not the order group missing?

Also, the command line looks different from the posts I have read lately (-cmd attach etc).

See attached screenshots.

Attached Thumbnails

  • winvblk_1.png
  • winvblk_2.png


#31 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 03 January 2012 - 06:57 PM

Are you trying to boot the VHDs natively via G4D without WinVBlock installed?


I am trying to boot VHD via G4D with winvblock.

With ThinPC, it starts booting and bsod's on 0x7b.

With WES7 I get stuck with winload.exe missing or corrupt either way : from virtualpc or from G4D.

I am mostly using your thread there http://reboot.pro/15997/ .

Booting VHD via G4D is only out curiosity and not really needed since both thinpc and wes support native vhd boot but still I am stuborn and I'd like to succeed this part too :)

To make sure I get it right : injecting winvblock and using the right grub4dos entries is enough to boot a disk image (raw and/vhd) is enough to load from file is not it?

#32 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 03 January 2012 - 07:05 PM

I have some troubles getting Windows Embedded to do what i want.

I select a Windows, size a bit over 1GB, but when i click on 'resolve conflicts' it rises to 1.8GB and includes lot's of stuff, i absolutely don't want. Like Dot.Net and WMP.

How can i find out, which are the selected components, that cause the other to be integrated too?

On a similar note. How can i use a template as a template for my own selection?
I wanted to try the "IE, WMP, whatever template", but without WMP.


:cheers:


Hi MedEvil,
Which template did you choose?
When I select "Ie+wmp+rdp" I get a footprint of 990mb.

Or else you can choose "dont select template" and then decide which components will be installed individually.

Regards,
Erwan

#33 sambul61

sambul61

    Gold Member

  • Advanced user
  • 1568 posts
  •  
    American Samoa

Posted 03 January 2012 - 07:48 PM

Hi Erwan,

I'm really busy, so would have to delay fully supporting this for a couple of days - sorry. But yes, one can boot unsupported for native boot Windows version via Grub4DOS & WinVBlock. Using the Tutorial you mentioned is enough to do this.

Some experience in dealing with VHDs & BCDs & WinVBlock in and out of various VMs might help to troubleshoot any issues if they occur, but this might be an advanced play for someone who just started dealing with VHDs. :) Remember, G4D deals only with fixed disks, so place your fixed VHDs onto fixed VHDs, when booting inside a VM via G4D, and use latest Windows Virtual PC instead of 2007 version.

The Console WinVBlock commands aren't needed for booting OS from VHD, they are at times required when installing OS to VHD by the legacy method.

#34 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 03 January 2012 - 08:15 PM

Hi MedEvil,
Which template did you choose?
When I select "Ie+wmp+rdp" I get a footprint of 990mb.

Or else you can choose "dont select template" and then decide which components will be installed individually.

I first tryed individual components, but always get tons of stuff included, that i don't want.

So i thought, i start out easy, with one of the templates (Ie+wmp+rdp) and modify it to my needs.
I however fail to see, how i could adapt an existing template.

:cheers:

#35 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 03 January 2012 - 08:22 PM

Hi Sambul61,

No pb at all for the delay.
This is only playing here.
You have been very supportive and helpful already.

Feel free to respond whenever you have time !

In the meantime I managed to find the latest winvblock version (from etherboot) and it works : ThinPC (which, we have seen earlier this post, supports nativeboot) with winvblock loads all fine thru G4D :)
And in device manager, "vhd hba disk" has of course been replaced by "winvblock disk".

G4D + ThinPC without winvblock does not work thus : it seems it really needs winvblock.

Sum up of steps for ThinPC within a VHD + G4D + Winvblock

1.create a 4gb vhd - format to ntfs - make partition active - mount vhd to v:

2.apply iso/wim to disk (vhd) -> Imagex /apply D:SourcesInstall.wim 1 V:

3.add boot environement -> bcdboot v:windows /s v:

4.disable fbwf in registry -> hklmsystemcurrentcontrolsetservicesfbwfstart = 4 (probably specific to ThinPC)

5.un mount then remount vhd this time to c:mnt

6.dism /image:C:mnt /add-driver /forceunsigned /driver:C:WinVBlockWinvblk.inf (see post about win7 version here) - you should use dism from your iso sources folder.

(not sure here : you might have to boot (thru virtualpc ?) your ThinPC twice to have the driver fully detected?)

7.make the vhd contiguous

8.reboot to ThinPC on vhd thru G4D.



Site note : this method (Win 7 xxx VHD + G4D + WinVBlock) probably works for all not native (and native too) windows 7 editions as mentionned here with one exception for now for WES7 which for now looks to me to have a different booting process.

Regards,
Erwan

#36 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 03 January 2012 - 08:47 PM

I first tryed individual components, but always get tons of stuff included, that i don't want.

So i thought, i start out easy, with one of the templates (Ie+wmp+rdp) and modify it to my needs.
I however fail to see, how i could adapt an existing template.

:cheers:


if you look in the iso, you will see that one template = one xml file.
might be easy to copy paste one and modify it and load it during setup?

#37 sambul61

sambul61

    Gold Member

  • Advanced user
  • 1568 posts
  •  
    American Samoa

Posted 03 January 2012 - 08:52 PM

Remember, G4D deals only with fixed disks, so place your fixed contiguous ThinPC & WES7 VHDs onto a fixed contiguous VHD attached to a VM as IDE or SCSI hard drive, when booting inside a VM via G4D, and use latest Windows Virtual PC instead of 2007 version.

#38 MedEvil

MedEvil

    Platinum Member

  • .script developer
  • 7771 posts

Posted 03 January 2012 - 09:24 PM

if you look in the iso, you will see that one template = one xml file.
might be easy to copy paste one and modify it and load it during setup?

In XPembedded one could make a copy of an existing template and then modify it.
Seems M$ has again improved it's product. :frusty:

:cheers:

#39 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 03 January 2012 - 11:01 PM

Remember, G4D deals only with fixed disks, so place your fixed contiguous ThinPC & WES7 VHDs onto a fixed contiguous VHD attached to a VM as IDE or SCSI hard drive, when booting inside a VM via G4D, and use latest Windows Virtual PC instead of 2007 version.


edited my previous post with your comments.

#40 sambul61

sambul61

    Gold Member

  • Advanced user
  • 1568 posts
  •  
    American Samoa

Posted 04 January 2012 - 08:16 AM

Troubleshooting OS Boot from VHD - moved to corresponding Tutorial. :)

#41 Tripredacus

Tripredacus

    Frequent Member

  • Expert
  • 234 posts
  • Interests:K-Mart-ian Legend
  •  
    United States

Posted 04 January 2012 - 04:09 PM

In XPembedded one could make a copy of an existing template and then modify it.
Seems M$ has again improved it's product. :frusty:

:cheers:


You still can. That's how I made my test XML. The templates are stored in c:Program FilesWindows Embedded Standard 7DSTemplatesIBW. Of course the path is different for x64 but that should be enough to figure it out. Just a word of warning, the templates do not have the language pack added, so if you try using them without loading them into ICE at least once, your installation will fail.

#42 sambul61

sambul61

    Gold Member

  • Advanced user
  • 1568 posts
  •  
    American Samoa

Posted 04 January 2012 - 04:25 PM

In the meantime I managed to find the latest winvblock version (from etherboot) and it works : ThinPC (which, we have seen earlier this post, supports nativeboot) with winvblock loads all fine thru G4D :)
And in device manager, "vhd hba disk" has of course been replaced by "winvblock disk".

What Grub4DOS & grldr version did you use (release date & hash)? How did you install it to the disk?

P.S. I just booted ThinPC VHD via Grub4DOS & Winvblock in VMWare without using the dummy parameter disk, using Grldr of 02.19.2011 & WinVBlock_0.0.1.8 :

title Boot ThinPC7 VHD
find --set-root /ThinPC7.vhd
map /ThinPC7.vhd (hd0)
map --hook
root (hd0,0)
chainloader /bootmgr
rootnoverify (hd0)

But the same menu gives 0x7b in Win VPC, despite WinVBlock disk was added to CriticalDeviceDatabase and installed too. This may be because the virtual disk (which stores VHDs) is directly connected to VMWare as SCSI hard drive, and to VPC as IDE hard drive, so VMWare seems to better support SCSI devices (including WinVBlock SCSI Disk).

#43 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 04 January 2012 - 06:02 PM

I use grub4dos-0.4.5b-2011-12-12.
I installed it editing my BCD with bcdedit pointing to c:grldr.mbr, using instructions from here : http://diddy.boot-la...all_windows.htm

/erwan

#44 sambul61

sambul61

    Gold Member

  • Advanced user
  • 1568 posts
  •  
    American Samoa

Posted 04 January 2012 - 10:11 PM

I can reliably boot ThinPC via Grub4DOS & WinVBlock now in Win VPC with the following parameters:

VPC RAM = 1024 MB, Grub4DOS version grub4dos-0.4.5b-2011-12-30, WinVBlock - last from Etherboot depository, WVBlk32.sys 58Kb, CRC-32: d1dc1beb

title Boot ThinPC VHD - WinVBlock
find --set-root /VHD/Win7.vhd
map /VHD/Win7.vhd (hd0)
map --hook
chainloader (hd0,0)/bootmgr
rootnoverify (hd0)

Less stable menu option, but also works:

title Boot ThinPC VHD - WinVBlock
find --set-root --ignore-floppies /VHD/Win7.vhd
map /VHD/Win7.vhd (hd0)
map --rd-size=2048
map --mem (rd)+4 (0x55)
map --hook
write (0x55) #!GRUB4DOSx00v=1x00Win7.vhdx00x80x00
chainloader (hd0,0)/bootmgr
rootnoverify (hd0)
boot

Can't check WES7 in VPC, since I've 64-bit only (and VPC now supports only 32-bit guests), but in VMWare it boots fine via G4D & WVBlock 64-bit in Test Mode (use WinVBlock_0.0.1.8 floppy). Overall feeling is, WinVBlock needs more refinement, it works fine with WinXP, but may give some glitches at times with Win7 or result in OS being unstable after boot, especially with such versions as WES7 and ThinPC, it was never tested for by Sha0.

Good news is, both WES7 and ThinPC boot without a glitch natively from VHD inside a VM and on real HD, if required disk drivers are installed, and DetectHAL is ON in BCD. They don't need WinVBlock installed whatsoever, except for testing fun. :)

Did you try booting them from USB Stick natively? Both should support native boot from a USB disk for sure, hopefully from a removable Thumb. :dubbio:

#45 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 04 January 2012 - 11:57 PM

I managed to boot vhd nativeboot (both WES7 and ThinPC) on a usb disk but only with the following tweak :

reg.exe add HKLMSystemCurrentControlSetControl /f /v BootDriverFlags /t REG_DWORD /d 0x6
reg.exe add HKLMSystemCurrentControlSetControlPnP /f /v PollBootPartitionTimeout /t REG_DWORD /d 30000
(see discussion here : http://reboot.pro/14186/)

Otherwise both WES7 and ThinnPC would crash with 0x7b.
So to me they dont support native usb boot unless you tweak the registry.

It did not work from a usb stick but it works nicely from a usb disk.
My computer had its internal disk removed during the tests to avoid any confusion.
I used easybcd to install a windows 7 boot manager onto my usb drive which then contains bootmgr, the boot/bcd folder and my 2 VHD's.
  • sebus likes this

#46 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 05 January 2012 - 12:03 AM

So sum up again :)

WES7 (installed via DVD) :
native vhd -> OK
native vhd on USB-> OK
g4d + direct file + winvblock-> OK
VPC-> OK

->I really feel WES7 only works if launched from a physical bootmgr.
I Will follow your post above #40 to try to fix it.

ThinPC (installed via gimagex) :
native vhd-> OK
native vhd on USB-> OK
g4d + direct file + winvblock-> OK
VPC-> OK

In both cases, I re used the same VHD for each test.

That covers pretty much does not it already? :)

Is there a way I (or a moderator) can change the topic title to include ThinPC as well as this thread discuss both products?

edit 1: WES7 + VPC OK (no more winload missing after bcdboot command re issues)
edit 2: WES7 + g4d + direct file + winvblock OK (same as above)

#47 sambul61

sambul61

    Gold Member

  • Advanced user
  • 1568 posts
  •  
    American Samoa

Posted 05 January 2012 - 03:08 PM

Erwan,

Your "winload.exe missing" error points to a corrupted BCD Store inside WES7 VHD (it seems to be its partition offset related, or disk Sig, or invalid (hidden) boot menu entry) resulting in OS Volume not found on the VHD. Try to boot both WES7 and ThinPC VHDs connected as IDE HD directly to VPC to check their BCD stores. If any doesn't boot as HD (but boots natively as VHD placed on another VHD) inside the VM, attach the VHD on your PC and repair its BCD Store with Visual BCD Editor. It may require some practice though... :) Or boot natively to WES7 VHD, install EasyBCD inside it and repair its BCD store, MBR and PBR with EasyBCD.

See Troubleshoot OS Boot from VHD Tutorial for some tips on how to fix.

Yes, MS default setup allows to boot WES7 and ThinPC from a USB fixed drive (its still better than usual blocks for USB boot), because WES7 can be installed on variety of Flash devices. But readers of this forum know, how to format a removable USB Thumb as a multipartition USB drive (making it apearing as fixed to OS), and how to add required Registry fixes for USB boot from a removable Thumb if needed. :)

Did you try mapping any VHD into RAM with G4D and booting it from a RAMDrive with WinVBlock or FiraDisk?

#48 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 05 January 2012 - 06:33 PM

Did you try mapping any VHD into RAM with G4D and booting it from a RAMDrive with WinVBlock or FiraDisk?


nop, still on my list of to do's :)

on that list is also iscsi booting (with ms iscsi target or any other iscsi target).

right now struggling with visual bcd editor.

#49 sambul61

sambul61

    Gold Member

  • Advanced user
  • 1568 posts
  •  
    American Samoa

Posted 05 January 2012 - 07:03 PM

It should ring close to home, given your Registry interests, and its BCD Hive in particular. :)

#50 erwan.l

erwan.l

    Gold Member

  • Developer
  • 2278 posts
  • Location:Nantes - France
  •  
    France

Posted 05 January 2012 - 08:23 PM

About WES7 and the "winload missing" error in virtual pc, I followed carefully your post above (visual bcd editor) but I failed.
Out of despair I then again issued a bcdboot f:windows /s f: with f: being the vhd mounted from my regular windows 7 and surprisingly the vhd now boots fine in virtual pc !
I must have messed up my bcdboot command the first time or later while switching from one vhd to the other :(

G4D+winvblock+WES7 VHD no longer gives me a "winload missing" but bsod a bit later on 0x7b :) I am going to recheck winvblock version and my menu.lst.

See below my bcd : I dont understand the F: there. Once WES7 is booted, windows still mounts the drive as C: .
I tried to edit the below to c: instead of f: and then the "winload missing" comes back.

Gestionnaire de d‚marrage Windows
---------------------------------
identificateur {9dea862c-5cdd-4e70-acc1-f32b344d4795}
device partition=F:
description Windows Boot Manager
locale en-us
inherit {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
default {41ed7650-37d6-11e1-9aec-001641a9f3ae}
resumeobject {41ed764f-37d6-11e1-9aec-001641a9f3ae}
displayorder {41ed7650-37d6-11e1-9aec-001641a9f3ae}
toolsdisplayorder {b2721d73-1db4-4c62-bf78-c548a880142d}
timeout 30

Chargeur de d‚marrage Windows
-----------------------------
identificateur {41ed7650-37d6-11e1-9aec-001641a9f3ae}
device partition=F:
path windowssystem32winload.exe
description Windows Embedded Standard
locale en-us
inherit {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
osdevice partition=F:
systemroot windows
resumeobject {41ed764f-37d6-11e1-9aec-001641a9f3ae}
nx OptIn
detecthal Yes





Also tagged with one or more of these keywords: wes7

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users