Wednesday, February 11, 2015

Install Windows 10 Tech Preview when setup says media driver missing

Skip to the end for instructions.

I had been trying to install Windows 10 Pro Technical Preview onto a VHD, as I have Windows 7 Ultimate and can run an operating system from VHD (this feature is apparently limited to Enterprise and Ultimate editions).

While I had successfully managed to install it on a virtual machine in Oracle VirtualBox, I was dissatisfied with the sluggish performance of a VM. At the same time, I also did not want to dedicate a real hard disk partition for the sole purpose of installing Windows 10 TP.

Hence the decision to install into a VHD, which is a very neat solution that lets me keep Windows 10 TP separate from my real hard disk partitions and still enjoy the full native speeds of my real hardware. I had previously installed Windows 8 RC successfully into a VHD so I knew what I was up against.

Or so I thought. As soon as I booted up the setup disk (the ISO I had downloaded) and clicked on Install Now, I received this very unhelpful error asking for device drivers.

Load driver:
A media driver your computer needs is missing. This could be a DVD, USB or Hard disk driver. If you have a CD, DVD, or USB flash drive with the driver on it, please insert it now.

There's no indication why this error is produced and what exactly the device is that's missing drivers. On looking it up on the internet, I only learnt that this indicates a bad setup media. But in my case, my ISO is a perfect download (SHA1 sum matches that provided by Microsoft) and it's mounted directly.

I had tried various different configurations, messing with the BIOS, different ways of mounting and loading up the setup disk, etc. Nothing worked, and I could never get past this error.

Almost on the verge of giving up, I had just one last thing to try. And it's completely different from what one would usually do to install Windows.

I skipped the setup entirely and went straight from ISO to a fully deployed Windows installation. And it was so easy, I was surprised and also thinking why I had even been wasting the past 4 hours trying to get the setup to work, when I didn't even need to run the setup at all.

Here's how you get it done. You'll need:
  • The ISO file from Microsoft (I used the x64 version; it depends on your computer which one you will need). If you want to check the SHA1 (and I suggest you do), use this excellent utility.
  • from Hugo Häggmark's blog. You can read his excellent post, but the instructions here are slightly different.
  • Daemon Tools, 7-Zip, WinRAR or anything that can help you either mount or extract the ISO. (You don't need to both. We just need a file from the ISO archive.)
  • Some hard disk space.

Note that these are simplified for this purpose and slightly deviates from the originals in Hugo Häggmark's blog post. They also assume you're comfortable with command prompt and/or PowerShell.
  1. Mount the ISO or extract it into a new folder such as C:\WindowsISO
  2. Find the file "sources\install.wim". Note down the full path of it. If you mounted the ISO as H: drive, it will be H:\sources\install.wim
  3. Extract the CreateBootableVHD script files into another folder.
  4. Open PowerShell (as administrator). You will need at least version 2.0. Most likely you already do, or you can just download an upgrade.
  5. In PowerShell, use cd command to navigate to the folder in step 3 (CreateBootableVHD extract).
  6. Run the command in the format shown below (thanks Hugo). The process will take 20-30 minutes to complete.
  7. Once done, reboot your computer. You should have a boot menu with 'Windows Technical Preview' along with your existing Windows. Choose the new entry.
  8. Windows will do driver installations and reboot. Once rebooted, it will do more setup. The whole process can take another quarter to half hour, and it may reboot again.
  9. Once everything is complete, Windows will ask you a few questions. When asked for the product key, enter NKJFK-GPHP7-G8C3J-P6JXR-HQRJR. (Since we applied a system image to the VHD in step 6, the product key was not automatically set up. That's why we need to do this. If Windows setup had worked, we wouldn't have needed to do this.)
  10. Sign in to your Microsoft account, and get on your brand new Windows 10 desktop.
  11. Open Windows Update and check for updates. Windows should most likely download and install the correct drivers for your graphics card, and the wonky basic resolution will soon change to your screen's native resolution.
  12. ???
  13. Profit!

    Command for step 6:

    .\CreateBootableVHD_v2.bat <path where you like to store the VHD, doesn’t work on external drives> <size in MB> <type FIXED|EXPANDABLE> <free unused drive letter to be assigned to the VHD> <full path to the wim file from step 2>


    .\CreateBootableVHD_v2.bat C:\Windows10.vhd 25600 EXPANDABLE X H:\sources\install.wim

  • .\CreateBootableVHD_v2.bat -- this batch file will first create and mount a VHD. It will then execute a PowerShell script to extract the Windows installation image onto the VHD. Finally it will make the VHD bootable and add it to the boot menu.
  • C:\Windows10.vhd -- this is the path and file name to create your new VHD. It must not already exist. Use internal hard disk drives only. Must be an NTFS drive due to the 4GB file size limitation of FAT32.
  • 25600 -- this is 25 GB of VHD size converted to MB (multiply by 1024). Microsoft's minimum recommendation is 16 GB. I found that when fresh installed, Windows will already use around 8-9 GB, and as I continually used Windows 10, the usage grew to more than 11 GB. As long as you don't plan on installing huge software, 25 GB is a safe bet. Don't worry, your real hard disk partitions will be fully available from within Windows 10.
  • FIXED|EXPANDABLE -- must be all caps. If you choose fixed type, a full 25 GB of hard disk space in C: drive will be allocated for the VHD file immediately. If you choose expandable type, the VHD file will be created at 0 bytes and then will expand later as more data is stored in it.
  • X -- this must be a free unused drive letter that will be used to mount the VHD as a hard disk drive. Don't use any drive letter that is already used. Don't add a colon. X is usually a safe choice, but it can be anything from A to Z except used drive letters.
  • H:\sources\install.wim -- this is the wim file located in step 2. If you extracted the ISO to a folder like C:\WindowsISO, it will be C:\WindowsISO\sources\install.wim

Friday, January 23, 2015

Samsung S3 LTE Power button jammed

The power button on my phone (GT-I9305) was jammed, and my phone entered a constant state of boot loops. It keeps trying to turn on, but keeps restarting because the phone thinks the power button is held down.

I was able to follow the instructions in the following video, although I used a clear aftershave splash from Gillette instead of 90% pure alcohol cleaning solution. The splash is also alcohol (percentage unknown) and it was the closest alternative within my arm's reach.

It fixed the problem temporarily, and I was determined not to touch the power button. But the next day I pressed the power button out of habit to turn the screen off (oh, don't we all love it when habits work against your willpower). Sure enough, the button jammed again and the phone went in to boot loops.

I was able to shake and hammer the phone on my hand to unstuck the power button again (if that doesn't work, try the above video again; but I was at work and didn't have access to the tools). The problem now turned out to be that I cannot turn the phone on without touching the power button. To do this, I looked up and found a very simple, clean and neat solution here in this video (other solutions involved entering some sort of download mode, installing some empty installation and rebooting etc... too much work and definitely not amateur-friendly!):

In this method, all you needed to do is unplug the charging cable, pull out the battery and put it back in really quickly (before the phone shuts down completely) to shock it into booting up. This worked and I was able to boot up my phone.

Finally, a minor problem is how I can turn off the screen without touching the power button. While I can simply wait for the screen to time out, it didn't seem elegant, especially when I'm in a hurry and can't wait. For this reason, I found an excellent app (over 5 million download and 4.1 rating from 92K users):

I installed the app and it added two icons. In first time set-up you have to allow it to become a device administrator with the permission to control screen locking (nothing else). This allows the app to turn the screen off. Normally you would "launch" one of the two icons to turn the screen off (you can add this app to your home screen as a shortcut). But I also got in to the settings of the app (using the other icon) and turned on the "Enable shortcut in notification area" option. This added a persistent notification in the panel so that I can quickly turn the screen off without going to the home screen.

Now, I just need to kick my habit for good and boost my willpower to avoid touching the power button. At least till I get around to getting a proper repair job done on it.

Wednesday, November 26, 2014

Why a PDF Printer should be your default printer

The convenience of 'Quick Print' comes at a great cost (both to yourself and the environment). If you ever accidentally hit that shortcut, the document is immediately sent to the default printer. If your default printer happens to be a physical printer that's connected to your network or your computer directly, there goes valuable paper and ink churning out pages and pages of a document you never wanted to print, and you probably will trash or shred anyway.

Indeed, I had once been working on a Java source code file in Eclipse and I accidentally clicked the Print button in the toolbar. (Why a source code editor would even need a Print button is beyond me.) The entire 1596 lines of source code got sent to the printer and I couldn't even stop it from printing half way. That ended up on 33 pages, and consequently 33 sheets of paper. Now I have this stack of paper on my desk with one particular version of the source code, all printed and 'set in stone'. Since it is useless printed material, I just keep it around for using the unprinted side as scrap paper.

The annoying superbug with all printer drivers is that if you try use the 'Cancel Printing' option in Windows, it will either never actually get cancelled, or it will more likely just corrupt your printer's memory (which you will see as completely random characters being printed onto seemingly endless number of pages when you try to print something else afterwards). The other option (and the solution to a corrupt printer memory) is to unplug the printer and wait for its memory to be flushed out, but this may be difficult or even against work policy with a network printer.

Thankfully, there are softwares like PDF Printers. If you have Microsoft Office installed, you will probably even have options like XPS Printer or 'Send to OneNote'. Or if you never actually use Fax, it's another viable option. You should set one of these 'soft copy printers' as your default printer.

Once such a printer is set as default, if you ever accidentally send a document to print, it will only create a file or some form of digital representation on your computer. It will no longer waste your valuable resources like paper and ink on your physical 'hard copy printers', or cost unnecessary expenses to your organization. You can simply delete away the "printed" file from your computer, and it's like you never even printed in the first place!

I have also removed the darned Quick Print button from the Eclipse toolbar. If I need to print, I can select File > Print or press Ctrl-P (it brings up the print dialog box). Which reminds me: If you need to print a hard copy, use the Print option (usually marked as 'Print...') that brings up the print dialog box, then choose the physical printer. Note that most applications will remember your print settings for the current session. So once you have chosen a different printer, even the Quick Print option in the application will print to the chosen printer - until you exit the program and start it again (this action will revert it to the default printer).

Tuesday, June 17, 2014

Strange gap or weird space between Identity icon and URL in Firefox 30 address bar

Recently switched back to Firefox. I am happy to break away from the Big Brother dictatorship of Google Chrome and use any extension I want (not Brother-Approved Extensions).

I found a strange space between the Identity icon* and the URL text of the address bar. It was about an inch wide.
 * Usually appears as a lock, sometimes expands to show the identity name, coloring in red or green depending on validation status.

This occurs on computers with a finger print reader hardware installed.

Firefox picks up the finger print authentication plugin (which however is not used by any Firefox built-in feature, though I'm not sure about Master Password), but it sets all plugins to "Ask to Activate" by default.

This causes the fingerprint reader plugin to remain disabled at start-up, causing the weird bug.

To solve the problem in Firefox 30.0:
  1. Click Menu (three stacked bars) > Add-ons.
  2. Click Plugins on the left side of Add-ons Manager.
  3. Find the plugin related to your fingerprint reader.
    • Most likely it is "TrueSuite" or "SimplePass"
    • You can look at about:plugins to help find the exact plugin name. Look for keywords like fingerprint, finger, authentication, pass, etc.
    • For more information, check here.
  4. Choose "Always Activate" in the drop-down for the plugin. (Both "Ask to Activate" and "Never Activate" will cause the bug.)
  5. Close Add-ons Manager and restart Firefox.


Related Posts with Thumbnails