Recommended Posts

I was recently asked how to setup a Windows To Go installation that can boot from both UEFI and BIOS PCs with non certified devices.

All the guides I found to do this online are compatible with either BIOS or UEFI but not both.

The reason is because compatibly with both needs 2 partitions so most usb keys wont work

IC611726.gif

So you need either a USB HDD or a USB Key that shows up as a Fixed Disk.

If you cant get your device to pass-through into HyperV its not a Fixed Disk and wont work

http://blogs.technet.com/b/askcore/archive/2008/10/24/configuring-pass-through-disks-in-hyper-v.aspx

Im going to test this using HyperV the only difference between this and creating a real device is changing the drive letters and numbers in diskpart.

rWfK4VO.png

Start by creating two VMs a Gen 1 and a Gen 2 VM both with the same VHD File

xFKXZi3.png

Now boot from the Windows CD on the Gen1 VM as the Gen2 VM will complain about not installing to a GPT disk.

5abPIXS.png

At the install screen press shift + f10 to open command prompt and run notepad to get a GUI file explorer window when you select file > open

ZZP8DPI.png

Convert the disk to MBR format and create 2 partitions a Fat32 system partition marked as active and a NTFS windows partition.

llzrKsp.png

Apply any windows image to the windows partition

llzrKsp.png

Which creates the standard windows folder structure

crOgMNF.png

Use the BCDBOOT command to copy the boot files for both UEFI and BIOS computers from the Windows partition to the Fat32 system partition

MaFjsZG.png

Eject the windows iso and let the Windows To Go drive boot.

iQ4XcKU.png

Complete OOBE

G3R9clc.png

Install whatever software you need

ZeQGQk8.png

Shutdown to test the image on a UEFI Secure Boot PC

cueP5HG.png

Start-up the UEFI PC and the Windows To Go drive boots

NxL5f4A.png

The same user profile now starts up on an entirely different articheture.

Code used

diskpart
select disk 0
clean
convert mbr 
create partition primary size=350
format quick fs=fat32 label="System"
Active
assign letter="S" 
create partition primary
format quick fs=ntfs label="Windows To Go"
assign letter="W"
exit

Dism /apply-image /imagefile:E:\sources\install.wim /index:1 /ApplyDir:W:\

bcdboot w:\Windows /s S: /f ALL
Sources

https://technet.microsoft.com/en-ie/library/jj592685.aspx

https://technet.microsoft.com/en-ie/library/hh825677.aspx

  • Like 2
  • 3 weeks later...
  • 1 year later...

THIS IS EXACTLY WHAT I'M TRYING TO DO! I want to make a windows to go that can be booted on my desktop using BIOS, as well as my surface pro 3 using UEFI. Thank you, this guide is awesome! 

I do have a couple questions though. How do I "use the BCDBOOT command to copy the boot files for both UEFI and BIOS computers from the Windows partition to the Fat32 system partition"?

Would both of those be on my surface pro, or would I need to copy it from my desktop, then from my surface? Please explain it to me like I'm a novice... because I am.

This guide is a little vague on that step... actually its kinda vague in general (but its still awesome).

6 minutes ago, WIRM.KJones said:

THIS IS EXACTLY WHAT I'M TRYING TO DO! I want to make a windows to go that can be booted on my desktop using BIOS, as well as my surface pro 3 using UEFI. Thank you, this guide is awesome! 

I do have a couple questions though. How do I "use the BCDBOOT command to copy the boot files for both UEFI and BIOS computers from the Windows partition to the Fat32 system partition"?

Would both of those be on my surface pro, or would I need to copy it from my desktop, then from my surface? Please explain it to me like I'm a novice... because I am.

This guide is a little vague on that step... actually its kinda vague in general (but its still awesome).

No, you should do the initial setup in a virtual machine to avoid the risk of messing up the BCD on the pc.

 

Create a virtual machine and passthrough the disk that you want to use for windows to go (if it is using hyperv you need to offline the disk in disk management)

 

Then add a Windows iso to the virtual dvd drive and power the VM on.

 

It should boot from the DVD and once it does you can press shift + F10 to open the command prompt where you can paste in the code and it will do everything.

 

The bcdboot command is

 

bcdboot w:\Windows /s S: /f ALL

 

W:\Windows is where windows was just installed using DISM

/s S: is where the system partition is mounted

 

and /f ALL is what tells bcdboot to copy all the boot files not just whats needed at the moment.

  • Like 1
1 hour ago, TPreston said:

No, you should do the initial setup in a virtual machine to avoid the risk of messing up the BCD on the pc.

 

Create a virtual machine and passthrough the disk that you want to use for windows to go (if it is using hyperv you need to offline the disk in disk management)

 

Then add a Windows iso to the virtual dvd drive and power the VM on.

 

It should boot from the DVD and once it does you can press shift + F10 to open the command prompt where you can paste in the code and it will do everything.

 

The bcdboot command is

 

bcdboot w:\Windows /s S: /f ALL

 

W:\Windows is where windows was just installed using DISM

/s S: is where the system partition is mounted

 

and /f ALL is what tells bcdboot to copy all the boot files not just whats needed at the moment.

Once again, thank you so much for your help! I'm sure this whole procedure is pretty cut and dry, but its still just a little enigmatic to me... But like I said, when it comes to this kind of stuff, my experience is a little inchoate. 

So another question (it probably has a really obvious answer), how do I make a virtual machine?

1 minute ago, WIRM.KJones said:

Once again, thank you so much for your help! I'm sure this whole procedure is pretty cut and dry, but its still just a little enigmatic to me... But like I said, when it comes to this kind of stuff, my experience is a little inchoate. 

Do another question (it probably has a really obvious answer), how do I make a virtual machine?

Here is a quick guide

 

https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/quick-create-virtual-machine

8 hours ago, TPreston said:

So I enabled Hyper-V Manager on my computer, and I'm in the process of making the two VM. The step where it states "make the two VM share the same VHD file", does that mean the that I need to make them share the same name when I create a virtual hard disk? 

6 minutes ago, WIRM.KJones said:

So I enabled Hyper-V Manager on my computer, and I'm in the process of making the two VM. The step where it states "make the two VM share the same VHD file", does that mean the that I need to make them share the same name when I create a virtual hard disk? 

It depends how many devices you are looking to provision if its just one drive then you are better off just making it a pass through drive on both VMs (only one can be started at the same time)

 

http://thesolving.com/virtualization/how-to-configure-a-pass-through-disk-with-hyper-v/

57 minutes ago, TPreston said:

It depends how many devices you are looking to provision if its just one drive then you are better off just making it a pass through drive on both VMs (only one can be started at the same time)

 

http://thesolving.com/virtualization/how-to-configure-a-pass-through-disk-with-hyper-v/

I'm really sorry, I'm trying really hard to absorb all of this information and to do it quickly, but I feel like this is still difficult for me to understand. I'm stuck at the point where I'm supposed to make two VMs. I think I've made them as shown here in the capture.png

But how do I tell if I've set them up correctly? 

Capture.PNG

I noticed on your first step, you show the two VM settings. The one on the left (I'm assuming it's the second gen VM)  you have the SCSI Controller highlighted, showing the Hard Drive. On the right you have the first gen VM, showing the IDE Controller 1 Hard Drive. I noticed that you set the IDE controller to 1, and put the location to 0. When I try to do this, I get this image. Please see the FML.PNG below to see what I've done, and what I need to do next. 

FML.PNG

I may have failed to have Hyper-V Manager to pass-through my USB. Do I need to use diskpart to clean my USB disk, then select the location of the virtual hard disk to be on it? 

 

I'm quite determined, so as long as you're willing, I'll be fastidious to follow every instruction you give.

Edited by WIRM.KJones
7 minutes ago, WIRM.KJones said:

I noticed on your first step, you show the two VM settings. The one on the left (I'm assuming it's the second gen VM)  you have the SCSI Controller highlighted, showing the Hard Drive. On the right you have the first gen VM, showing the IDE Controller 1 Hard Drive. I noticed that you set the IDE controller to 1, and put the location to 0. When I try to do this, I get this image. Please see the FML.PNG below to see what I've done, and what I need to do next. 

FML.PNG

I'm quite determined, so as long as you're willing, I'll be fastidious to follow every instruction you give.

In your case if you are just wanting to create one windows to go drive you can passthrough the hard drive you want to use for windows to go.

 

To do this go to disk management and right click on your USB storage then hit "offline"

 

When you do this go back into the settings for both virtual machines and select the drive from the list highlighted below.

 

HDD.thumb.png.7b2be3a89ce430e8b9f42f8ecf32909e.png

 

Once that's done start VM1 and it will boot from the windows iso.

 

From there you can use the commands in the first post after pressing shift + f10 to open the command prompt on the Windows CD.

Now I'm on your step which states:

"At the install screen press shift + f10 to open command prompt and run notepad to get a GUI file explorer window when you select file > open

What am I supposed to do with this notepad?

I'm now here:

 

I'mSoSorryIKeepGettingStuck.PNG

I didn't know if I should have done this or not, but your instructions didn't say what to do with the notepad, so I closed notpad and continued with your next step. I cleaned the drive, converted it to MBR, and created the fat32 partition and the ntfs partition. After that, I typed in your command:

"Dism /apply-image /imagefile:E:\sources\install.wim /index:1 /ApplyDir:W:\"

When I did this I got this error message:

 

OopsIDidItAgain.PNG

Once again, thank you for all of your help! What would you recommend I do now? 

1 hour ago, WIRM.KJones said:

I didn't know if I should have done this or not, but your instructions didn't say what to do with the notepad, so I closed notpad and continued with your next step. I cleaned the drive, converted it to MBR, and created the fat32 partition and the ntfs partition. After that, I typed in your command:

"Dism /apply-image /imagefile:E:\sources\install.wim /index:1 /ApplyDir:W:\"

When I did this I got this error message:

 

OopsIDidItAgain.PNG

Once again, thank you for all of your help! What would you recommend I do now? 

You are nearly there, The error is stating that it cant find the install image if you open notepad from the command prompt and then hit file > open you will be able to find the drive letter the DVD drive has and then replace e:\sources\install.wim with whatever drive letter your vm has assigned for the DVD drive.

16 minutes ago, TPreston said:

You are nearly there, The error is stating that it cant find the install image if you open notepad from the command prompt and then hit file > open you will be able to find the drive letter the DVD drive has and then replace e:\sources\install.wim with whatever drive letter your vm has assigned for the DVD drive.

Oh I get it, you are just using the explorer in notepad to find the drive letters. I FEEL LIKE I'M SO CLOSE, THANK Y0U!

 

Okay, so my iso file letter is the same as your file letter "E:" but for some reason my Windows To Go ntfs disk became D: instead of W:

So I put in the command 

"Dism /apply-image /imagefile:E:\sources\install.wim /index:1 /ApplyDir:D:\"

and I got this error:

"The system cannot find the file specified.

The DISM log file can be found at X:\windows\Logs\DISM\dism.log"

SoClose.PNG

Yeah its

1 hour ago, WIRM.KJones said:

Oh I get it, you are just using the explorer in notepad to find the drive letters. I FEEL LIKE I'M SO CLOSE, THANK Y0U!

 

Okay, so my iso file letter is the same as your file letter "E:" but for some reason my Windows To Go ntfs disk became D: instead of W:

So I put in the command 

"Dism /apply-image /imagefile:E:\sources\install.wim /index:1 /ApplyDir:D:\"

and I got this error:

"The system cannot find the file specified.

The DISM log file can be found at X:\windows\Logs\DISM\dism.log"

SoClose.PNG

Yeah its not working because the iso you used contains esd files not an install.wim once you get an ISO mounted with a normal windows iso the command will work and then you just have the BCDBoot command to copy the boot files and you are done

Oh I see, okay. I am trying to install Windows 10 Pro. I downloaded this ISO using the MediaCreationTool, which I downloaded from Microsoft's website here:

https://www.microsoft.com/en-us/software-download/windows10

Do you know where I can get a Windows 10 Pro ISO that contains an install.wim instead of esd files?

Maybe something is wrong with my ISO. I'll try downloading Windows 10 again, using the MediaCreationTool, and see if I get the same error. 

It looks like the media creation tool will take some time though... so if you can think of anything I can try in the meantime, please let me know.

 

The MediaCreationTool just finished downloading a second ISO of Windows 10, it looks like it's still a esd file... oh fart... I'll see if I can scour the internet for an ISO of windows 10 Pro that has the install.wim instead of esd files, but I'm always a little skeptical on downloading operating systems other than from the official source. 

Edited by WIRM.KJones
1 hour ago, WIRM.KJones said:

So if I am correct, isn't an esd-ISO a form of all of the different Windows 10 systems (eg. Pro, Home, Education, single language, etc.) Is there a way I can extract just the Windows 10 Pro ISO from the esd ISO?

I don't know I used the MSDN isos try the media creation tool

MSDN ISO? Is there a website I can snag that from?

I stooped way low (in fact, I feel all dirty inside...) I downloaded a torrent from thepiratebay.

Here is the website here:

https://thepiratebay.org/torrent/12176822/Microsoft_Windows_10_Home_and_Pro_x64_Clean_ISO

I loaded this ISO into VM1, and typed in the command... it looks like it is working... is that a good sign? I hate using torrents...

IFeelDirty...PNG

Okay, so I took the risk and went ahead with the rest of the guide. It looks like it worked completely. Before I shut down my computer, and boot up from this USB device, do I need to turn it online using disk management? 

 

You my good sir, are eminent in my eyes! Thank you so much for all of your help. Hopefully I wasn't too much of an anathema for you.

Edited by WIRM.KJones

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Posts

    • If it ain't broke, don't fix it. One Commander Free also available in the Store has been my goto Files Manager for years. It does what I need at a more than reasonable speed. I do occasionally use Files Explorer just because it is there and does what I need without any problems when I use it.
    • I think you missed his point. He wasn't saying that cloud storage isn't possible on GNU/Linux, clearly it is. He was pointing out that you are commenting about your dislike of Windows on an article about OneDrive (not Windows) for Mac (also not Windows). Its about as off topic as coming to an article about Sony improving something on the PlayStation and saying that you hate Sony TVs and prefer LG.
    • Nvidia's GeForce NOW summer sale drops prices for Ultimate and Premium memberships by Pulasthi Ariyasinghe Nvidia has a fresh update for GeForce NOW subscribers today, bringing in more games to add to its ever-growing supported titles list. At the same time, the company announced the kick-off for its summer sale for the streaming subscription service, dropping the prices for both its premium packages for anyone looking to upgrade or join. The offer is for the 12-month membership options that the company offers. This drops the 12-month Performance membership from $99.99 to $64.99, saving members $35. Next, the 12-month Ultimate membership is currently going for $129.99, dropping prices by $70 from the original $199.99. "The Performance membership delivers smooth, high-quality cloud gaming across devices, with streaming up to 1080p at 60 frames per second (fps) and access to RTX-powered servers for supported games," says Nvidia, describing its tiers. "The Ultimate membership steps things up with RTX 4080‑ or 5080‑class performance in the cloud, supporting up to 4K and beyond on ultrawide displays, up to 120 fps, and advanced features like ray tracing, NVIDIA DLSS and NVIDIA Reflex for a more responsive, visually rich experience." With the sales out of the way, here are the games joining GeForce NOW's supported list this week: NBA THE RUN (New release on Steam, available on June 9) Witchspire (New release on Steam, available on June 10) SpaceCraft (New release on Steam, available on June 11) Duet Night Abyss (Launcher) DOOM Eternal (Epic Games Store) The Elder Scrolls Online (Xbox, available on Game Pass) Farever (Steam) World of Tanks: HEAT (Wargaming) Nvidia plans to add support for a bunch of more games during the rest of June. Find the full announcement from last week over here. Keep in mind that, unlike subscription services like Game Pass or EA Play, a copy of a game must be owned by the GeForce NOW member (or at least have a license via PC Game Pass) to start playing via Nvidia's cloud servers. There is also a limit to how many hours subscribers can use the service per month.
    • It's actually shocking how logs filling disks has been a constant issue going back for decades, yet we see very little improvement over the years. Even in the server world, its actually shockingly common for a server to either go totally down, or have a critical alert raised due to logs filling disks.
    • YouTube has finally brought back its DMs feature, but only in these countries by David Uzondu Late last year, YouTube started testing a "new" way to share videos directly with friends, without having to leave the app. Now, the video giant has announced that is now rolling out a revamped direct messaging inbox, which lets you share videos, Shorts, and live streams and have conversations about them, directly on YouTube. The platform limits this feature to 18+ users who are signed in to a verified channel and use the latest mobile app version. Direct messaging on YouTube first became a thing back in 2017 inside the mobile app (later renamed to "Messages"), where users could chat one-on-one and share clips directly, but all that came to an end on September 18, 2019, when Google decided to shut it down after giving users a month to download a .zip file archive of their past chats. No one really knows why YouTube killed the feature, but users were encouraged to migrate to the public Comments section, on Community tab posts, and via YouTube Stories. The previous incarnation suffered from moderation challenges, prompting Google to implement stricter safety guidelines and age verifications for this new iteration. Here's a list of the countries where the re-launched feature is currently available, though note that Brand Accounts do not have access to it, at least for now: Countries American Samoa Austria Belgium Brazil Bulgaria Croatia Cyprus Czech Republic Denmark Estonia Finland France Germany Greece Guam Hungary Iceland Ireland Italy Latvia Liechtenstein Lithuania Luxembourg Malta Netherlands Northern Mariana Islands Norway Poland Portugal Puerto Rico Romania Singapore Slovakia Slovenia Spain Sweden Switzerland U.S. Virgin Islands United Kingdom United States Before you can use the feature, you first have to send an invite link to your contact. Invite links expire exactly seven days after you create them. If the person on the other end accepts the invite, you can exchange videos directly and text back and forth inside the app. To delete a message, just long-press on the message and tap unsend to remove it for both users. You can also delete entire conversations by long-pressing the thread and selecting delete, but the other person will continue to see the chat history on their end. To make sure everything remains safe, YouTube monitors these messages to ensure they follow Community Guidelines.
  • Recent Achievements

    • One Month Later
      Tommi118 earned a badge
      One Month Later
    • One Month Later
      sjbousquet earned a badge
      One Month Later
    • Week One Done
      sjbousquet earned a badge
      Week One Done
    • First Post
      DragonOfMercy earned a badge
      First Post
    • First Post
      bella52 earned a badge
      First Post
  • Popular Contributors

    1. 1
      +primortal
      501
    2. 2
      PsYcHoKiLLa
      208
    3. 3
      +Edouard
      155
    4. 4
      Steven P.
      83
    5. 5
      FloatingFatMan
      73
  • Tell a friend

    Love Neowin? Tell a friend!