Creating refresh image for Windows 8

Yesterday my Windows 8 messed up after I installed AMD CodeAnalyst. I was left with a computer that took ~5 minutes to boot as compared to 18 seconds. First thing that came to mind was Refresh the system, which worked great but I lost all my installed applications as I never had any custom refresh image. Also one of the applications that I wanted is not currently supported to be installed on Windows 8 but works if I upgrade, with refresh that was gone. And I ended up redoing the installation. You can imagine I had fun time installing Windows 7 and then my applications and then upgrading to Windows 8. This was all night job.
All of this would have avoided if I had created my custom Refresh Image, as I learnt from Mr. Sinofsky Windows 8 has built-in options to Refresh and Reset your computer without much geekiness.
These options are quite useful when your PC is all messed up and you want to go back to sane state. Refresh will just redo the installation while keeping all of you data files but will remove all the applications and apps, while Reset is brand new installation.
Now most of us would rather Refresh rather than Reset our PC, but the few would like a pristine environment and would Reset.

I won’t duplicate what others have already said and done, but would rather point to links that can provide more detailed information on this:

  1. Windows 8 Blog by Sinofsky – Refresh and Reset your PC
  2. Creating a Custom Refresh Image – HowToGeek

creating a Universally Unique Identifier (UUID)

I was looking for a unique identifier for some work, and UUID (Universally Unique Identifier) comes to mind right away. What makes UUID so special is that practically (not guaranteed :) ) they will be unique. This link talks about various ways a UUID can be generated.

Now for most of us, we want to generate UUIDs to work along with admiring it’s rich history. UUID (GUID has more inclination towards MS) can be generated using various ways:

  1. On Internet, obviously using websites
  2. Interactively
  3. Programmatically

For Internet sites you can search and find various sources. I am going to concentrate on generating the same Interactively and Programmatically.

On Windows

guidgen

UIDs can be generated from CLI by starting command prompt from Visual Studio (Tools – VS Command Prompt) and run uuidgen utility. This will dump a guid/uuid for you. Command line switches for uuidgen can be found here.

If you have VS installed, the steps are very similar. Go to Tools – Create GUID. This will launch a dialog and you can generate UID in different formats. This invokes guidgen.exe









On MAC

To generate UID from shell use uuidgen utility. Also UID generation is core part of CoreFoundation Framework. CFUUIDCreate is good reference for the same.

Platform Independent

Most convenient would be to generate it programmatically on any platform. Here comes boost library, technically Qt also has support for UIDs but it is not free.

disable metro ui on windows 8

Overall Windows 8 is pretty slick and very responsive. It boasts of impressive start up time and superior memory management. However I am annoyed by the Metro UI and wanted to disable it.

While searching online people have gone to great lengths to disable this:

Rename c:\Windows\System32\shsxs.dll to something else =)

But registry tweaks can do the job as well, steps are:

(more…)

WinRT: The New Runtime in Windows 8

By Dino Esposito (DDJ)

A quick overview of the the replacement for Win32 and the code changes it will require.

In Windows 8, you can still keep writing classic .NET applications as you have done for the past decade. Windows 8, however, adds a new family of applications often referred to as “Metro applications.” To be precise, “Metro” is the blanket term used to indicate a collection of design principles that have inspired Microsoft in the creation of the new interface of Windows 8, running side by side with the classic Windows interface. Glimpses of the Metro style are visible in Windows Phone and will likely be visible in the new releases of Microsoft’s flagship products in the months to come. I agree with those who say that we can measure the real commitment of Microsoft to Metro with the next version of Office.

According to Wikipedia, Metro is a “design language” inspired by the “principles of classic Swiss graphic design” that emphasize cleanliness and readability. If Metro is mainly a design language, then a Metro application is a Windows application whose user interface and user experience are inspired by the Metro principles. In light of this, what’s the role of Windows 8 and why does Metro seems to be so tightly bound to it? What’s really going to be different for developers?

(more…)