Sharing Applications Between Mac OS X and Windows

Mac OS X, Windows No Comments

In my previous post, Setup Mac OS X 10.8 Mountain Lion, Windows 7 Boot Camp, and Shared FAT32 Partition, I decided to use Mac OS X as much as possible and in addition to Windows 7. It would be nice if I could use the same applications (or equivalents) on both operating systems. And it would be great if those apps made use of the same data whether running on Mac OS X or Windows 7. Effectively, I would like to share my apps between Mac OS X and Windows 7.

My methods for “App Sharing” in order of preference are:

  1. If both the Mac OS X and Windows 7 application versions use the same data format, then store that application data in a shared FAT32 partition (I had corruption issues with exFAT). If you don’t have a shared partition, you can use a private network share or even a cloud-based drive like DropBox (which introduces some security concerns).
    • My favorite secured information storage apps, Keepass and Truecrypt, run under both Mac OS X and Windows 7 and use the same data files on the shared partition. (Note: I saw some comments that using a large Truecrypt file with Dropbox may have issues such as sync not working 100% or not working in a timely manner.)
    • To a lesser extent, iTunes on Mac OS X and Windows 7 can use the same music and video files on the shared partition. Just run each iTunes and use the Mac OS X “File->Add to Library” or Windows 7 “File->Add Folder to Library” menu option. If you wish to sync your iPod, iPhone, or iPad to either the Mac OS X or Windows 7 iTunes, make sure they share the same library identifier; see my post, Sync an iPod Touch to Two Computers, for instructions.
  2. If the Mac OS X and Windows 7 application versions don’t use the same data format, then they might support cloud sync’ing. My primary concern with the cloud is security, because a copy of my information will be accessible on the Internet and stored in a hard drive belonging to a company which might not always have my privacy as its top priority. It is a lot less secure than just having a local copy on my hard drive. To mitigate this, I will remove all sensitive information before using the cloud.
    • The browser I use, Chrome, supports sync’ing bookmarks, tabs and extensions to/from Google. It’s as simple as going to Settings, “Signing in to Chrome” (specifically, providing your Google account’s username and password), and clicking on “OK, sync everything”. If you sign in from multiple machines, the bookmarks will be merged. To see tabs opened on other machines, create a new blank tab and click on the “Other devices” link at the bottom.
    • The latest version of my favorite note taking application, Evernote, runs on both Mac OS X and Windows and supports cloud sync’ing. For sensitive info, the latest Evernote offers an option to password-protect-encrypt a note. I am using an old, non-cloud-enabled version 2.1 of Evernote for Windows and plan to upgrade to the latest cloud-enabled versions on Mac OS X and Windows 7.
    • My contact information and notes are stored in a Personal Storage Table (PST) file used by Microsoft Outlook for Windows. I found that Outlook 2003, 2007, and 2010 for Windows used the same PST file without any issues. And Outlook 2010 for Windows can cloud sync directly to Google Contacts and Notes (Google provides sync tools for Outlook for Windows). Unfortunately, Outlook 2011 for Mac OS X does not use PST and does not support cloud sync’ing directly to Google. However, Outlook 2011 for Mac OS X can sync to the Mac OS X Mountain Lion’s Contacts (new name for Address Book) and Notes applications, and the Contacts and Notes application can cloud sync directly to Google. (If you don’t want to use Google, there is a way to use iCloud instead for the same purpose.)
    • If I wish to sync my contacts and notes in Outlook to an iPhone or Android phone, the above method of cloud-sync’ing to Google Contacts and Notes will help. I can sync contacts and notes on the iPhone and Android phone directly to/from Google. Alternatively, for iPhone, I can use iTunes sync with Outlook on Windows, or iTunes sync with Contacts and Notes on Mac OS X.
  3. If the Mac OS X and Windows 7 application versions don’t use the same data format and don’t support cloud sync’ing, they will usually provide an export/import migration path between the Mac OS X and Windows 7 application versions. In this case, I would just migrate to using the application solely on Mac OS X. In the future, if I need to, I can migrate back to Windows 7.
    • My expense tracking application, Quicken, supports migrating data from the Windows version to Mac OS X version. Because Quicken for Mac OS X may not have the same set of features as for Windows, you will want to research whether the Mac OS X version will fit your needs. I plan to upgrade from Quicken 2003 for Windows to Quicken Essentials 2010 for Mac OS X.

Moving from Evernote 2.1 for Windows to Evernote 4.5 for Windows and Evernote 3.3 for Mac OS X

Evernote supports export/import but there was an export data format change between Evernote 2.1 and the latest Evernote versions. I found a forum post, New user help-importing Evernote 2.0 files into Evernote 4.1, which indicated that we need to use Evernote 3.1 for Windows to import the old Evernote 2.1 format and then export to the new data format. Actually, I found that Evernote 3.1 was cloud-enabled, so there was no need to export because the imported 2.1 notes were sync’ed directly to the cloud.

Here’s how I migrated from Evernote 2.1 to the latest version:

  1. Run Evernote 2.1 for Windows. There is no need to do an export because the exported “ENExport.enx” file won’t be usable.
  2. Look at the bottom status bar to see the total number of notes. It will say something like “Notes: 272” or “Notes: 15 of 272”.
  3. Quit Evernote 2.1. Do not uninstall it yet because we may need to use it later to verify that all notes were migrated.
  4. Install Evernote 3.1 for Windows (it will co-exist fine with Evernote 2.1). I was able to download a version of Evernote 3.1 from FileHippo.
  5. Run Evernote 3.1 and sign-in. You will need to register for an Evernote account, if you don’t already have one, to use Evernote. Even if you plan to only use locally stored notes, and not the cloud-sync’ed notes, you still need to have an account.
  6. Go to menu File->Import->Evernote 2.x Databases… and select your 2.1 database file “EverNote.enb”, which is usually located under the Evernote 2.1 install directory; for example: “C:\Program Files\Evernote\Evernote 2”. (Note: There is a menu option File->Import->Evernote Export Files… but it will ask for the new .enex export file which we don’t have.)
  7. The import will occur. At the end, I got a warning message saying that some of my imported notes contained “Premium File Attachments” which are not supported under the free account. I didn’t think I was attaching any files that were not in the list of supported free file attachment types (also listed in the warning dialog), so I clicked on the “Restricted Import” button. “Restricted Import” appears to import all notes except the ones that have the premium file attachments.
  8. Once the import completed, a “Data import successful” dialog appeared and asked if I wanted to “Place all imported notes into a synchronized notebook now?” I answered Yes.
  9. Back in the main Evernote window, in the left navigation pane, I noticed a new notebook called “EverNote” under the Notebooks section. There is a sync icon before the name, which I guess means it is synchronized to the cloud. After the name is the number of notes in parenthesis; in my case, it shows as “Evernote (271)”.
  10. Since I had 272 notes in Evernote 2.1, it looks like one note was not imported, probably the one with the premium file attachment. Now to track down the missing note.
    • I checked the log file by going to menu Tools->Options->General->Open Log folder and opening the “AppLog_[date].txt” file. (There is a “SyncLog_[date].txt” but it just contains logs from the cloud sync function, not the import function.) I scrolled to the bottom of the AppLog and saw this message, “272 notes successfully imported”. There wasn’t any message about which note was not imported. Darn.
    • Looks like I have to do a brute-force comparison with the old Evernote 2.1 notes. Thankfully, I filed my notes under many manual categories so it really helped to facilitate the comparison. On Evernote 3.1, in the left navigation pane, I opened up Tags->Manual categories. I started Evernote 2.1 and opened its Manual Categories. Then I checked the count of notes in each category to find a mismatch in the number. I was able to locate the missing note in Evernote 2.1. Strangely, it only had an embedded image and I was able to copy and paste it into Evernote 3.1 successfully. The count of notes in Evernote 3.1 went to 272. Problem solved.
  11. I noticed that all my imported notes had text saying “(needs sync)” in its title. Looks like I needed to synchronize the imported data to the cloud.
    • I was concerned about the 60MB/month upload limit on a free Evernote account. To see the size of my database, I went to menu Tools->Account Properties and Database tab. My notes are mostly text so it was only 2.4MB in size. I think if your data is larger than 60MB, you might need to sign up for the premium account.
    • In that same Account Properties dialog, under the Account Usage tab, I found how much of the 60MB/month limit I had already used; it said “”0.5MB out of 60 MB used” so far. You can also get to this tab by clicking on the “Current Monthly Usage” in the top ribbon-like bar.
    • I clicked the Synchronize button at the top-left to sync against the cloud. The progress was reported in the bottom status bar to the right and looked like “Updating server database, 55% done”. Strangely, “Updating server database” went to 100% about 3-4 times, interspersed with “Updating client database…” progress messages.
    • Once the sync was complete (no more status updates), my notes no longer had the “(needs sync)” text in the title. I double-checked the monthly usage and it still said “0.5MB out of 60 MB used”, instead of the 2.9MB that I expected. Oh well.
  12. Exit Evernote 3.1. If you exit with unsynchronized notes (even notes in the trash), you will see a warning dialog. Just cancel the exit and do the sync and/or empty the trash.
  13. Uninstall Evernote 3.1 and re-install the latest Evernote 4.5 for Windows. You can also install the latest Evernote 3.3 for Mac OS X (from the Mac App Store).
  14. Once you sign-in to Evernote, the notes will sync down from the cloud. You can see the sync progress in the status bar; under Evernote 4.5, to show the status bar, go to menu View->Show status bar.

Sync’ing Contacts and Notes between Outlook 2010 for Windows and Outlook 2011 for Mac OS X

As described above, sync’ing contacts and notes between the Windows and Mac OS X versions of Outlook is complex, involving intermediate applications. I will do a separate post later about how to do the Outlook sync between Windows and Mac OS X.

Moving from Quicken 2003 for Windows to Quicken Essentials 2010 for Mac OS X

Because I use Intuit Quicken as a glorified expense tracking application where I manually input all the expenses and run summary reports, I was fine with using the very old Quicken 2003 for Windows. I used one Quicken file for each year and in the file, I used one account for each month. So, for each year, I could see the trend of how much I spent monthly (accounts listing) and how much I spent per category (itemized report).

From the reviews complaining that Quicken Essentials for Mac OS X is a glorified checkbook with transaction downloads from banks, it looks to be more than what I need because I didn’t want to download transactions from a bank. I don’t plan to provide my bank’s login credentials to anyone! After testing Quicken Essentials, I found that it was fine for my needs: manual expense input works great and the pre-defined summary, trend, and itemized category reports provided the info I wanted.

Unfortunately, to migrate from Quicken 2003 for Windows to Quicken Essentials for Mac OS X, I needed to upgrade to Quicken 2004 for Windows as an intermediate step. How do I know this? The Quicken Essentials’ converter tool told me so when I attempted to open a Quicken 2003 file.

Thankfully, Intuit provides a copy of Quicken 2004 free for anyone who needs to upgrade to Quicken 2005 and later from a version earlier than Quicken 2004. To download and install Quicken 2004 Deluxe, do the following:

  1. Browse to Using an Intermediate Version To Convert Older Versions of Quicken.
  2. Expand “Quicken for Microsoft Windows” and click on “Quicken 2004 for Windows” to download it. (Note: If you use Chrome, Chrome may report that the download page contains malware, but this is a false positive. Ignore it and click on the “proceed anyway” link.)
  3. Once downloaded, run “QW04DLX.exe” to install Quicken 2004 Deluxe.

To upgrade your data files from Quicken 2003 to Quicken 2004:

  1. Locate your Quicken 2003 data files (they come in file sets with extensions .QDF, .QEL, .QPH, and .QSD). By default, the data files are located in the Quicken installation directory under “C:\Program Files\Quicken” or “C:\Program Files (x86)\Quicken”, or they could be under the “My Documents\Quicken” or “Documents\Quicken” folder.
  2. Run Quicken 2004, go to File->Open, and select the 2003 .QDF file. Quicken 2004 will show a “Convert your data file” dialog, so confirm it by clicking on the OK button.
  3. Quicken 2004 will save the original 2003 data files under a “Q03Files” sub-directory and generate the updated 2004 data files (file sets using extensions .IDX, .QDF, QEL, .QPH, and .QSD).
  4. Repeat the above to upgrade other 2003 files.

To export the Quicken 2004 files to a format compatible with Quicken Essentials for Mac OS X (and Quicken 2012 for Windows):

  1. The Quicken Essentials install CD comes with a Windows converter program (insert the CD under Windows to access it) and a PowerPC converter program (which can only run in Mac OS X Snow Leopard or earlier) which can be used to convert Quicken 2004 files and later for use by Quicken Essentials.
  2. Because I didn’t have a Mac OS X Snow Leopard or earlier machine, I decided to run the converter under Windows. Instead of using the converter on the CD, I downloaded the latest Windows Quicken_converter.exe from Converting to Quicken Essentials for Mac from Quicken for Windows or MS Money: expand the “Convert your data from Quicken for Windows” section, look for the “Quicken_Converter_Setup.exe” reference, and click on the “you can download the converter here” link. (Note: If you use Chrome, Chrome will display a false malware warning which you can ignore by clicking on the “proceed anyway” link.)
  3. Run the downloaded “Quicken_Converter.exe” to install “Quicken Converter 2012”.
  4. Launch “Quicken Converter”.
  5. Select “I’m transferring data from Quicken for Windows”, click “Get Started”, select “Open a data file located on this computer” and click “Select File”.
  6. Select your Quicken 2004 .QDF file and click “Convert it!” in the confirmation dialog.
  7. Once done, you will be asked to indicate the location to save the transfer file to. Click OK and select a directory. I selected the automatically created “Q12Files” sub-directory.
  8. Click Save and the resulting export .QXF file (and a new updated 2012 .QDF file) will be saved to the selected directory. This .QXF can be imported into Quicken Essentials for Mac OS X or Quicken 2012 for Windows. (I also think that Quicken 2012 for Windows can open the updated .QDF file directly.)
  9. Click “Convert Another” and repeat the above to convert other Quicken 2004 .QDF files.

To import the exported .QXF files into Quicken Essentails for Mac OS X:

  1. Copy the exported .QXF files from Windows to your Mac OS X machine. I suggest using the shared partition or a USB flash drive.
  2. Launch Quicken Essential for Mac OS X.
  3. Click “Create a New Document”, modify the file name (with extension .quickendata), and click Save. Quick Essentials will open with an initial blank setup.
  4. Go to menu “File->Import…” option.
  5. Select an exported .QXF file and click Open. Your data will be imported.
    • Note: If you import data from more than a year ago, you might be concern that the import failed when Quicken Essential shows you an empty register. This is because almost all of the Quicken Essentials pages will filter on the “Last 12 Months” (look for the filter bar at the top). You will want to change that to “All Dates” in order to see entries older than one year.
    • To import another .QXF file, go to menu File->New…, type the new filename (without the .quickendata extension) into “Save As:”, click Save, and repeat the import steps above.
    • Note: Unfortunately, we can only import one .QXF into one Quicken Essentials file. If you attempt to import a second .QXF file, you will get a error message saying that it is not allowed.

Besides selecting “All Dates” to view older entries, I noticed that the accounts listing is sorted alphabetically and there is no way to override that. I had to rename the accounts to re-order the list to match my needs; for example, changing “Jan” to “01 Jan” and “Apr” to “04 Apr” so January will come before April instead of after. I also hid some columns that I didn’t use. Unfortunately, I had to make these changes for each account because there was no way to change things globally.

No Comments

Customize My Own Mac OS X 10.8 Mountain Leopard

Mac OS X 2 Comments

I recently got a new macbook with Mac OS X 10.7 Lion. I did not like some of the useability changes made (more on that below), but thankfully did not experience the slowdown, crashes, or bad battery life that others had reported. I upgraded to Mac OS X 10.8 Mountain Lion in the hope that those useability changes would be improved. My hopes were dashed, but I was determined to create an unholy combination of the old and the new which I will call Mac OS X Mountain Leopard. Grrr… meow.

Here are the tweaks that I made:

  1. Disable natural scrolling. The reverse scroll seems so unnatural to me. Because I will be switching between Mac OS X and Windows often, adapting to natural scrolling would also cause confusion on Windows.
    • To disable natural scrolling, go to System Preferences->Trackpad->Scroll & Zoom, and uncheck the “Scroll direction: natural” box.
  2. Enable tap-click, two-finger-tap-2nd-click and two-finger-tap-drag in addition to the new three-finger-drag. My fingers are trained to do a two-finger tap or drag so I wanted to enable it and use it alternatively with the three-finger-drag. The three-finger drag is still useful for rearranging icons on the dock; whereas, the two-finger-tap-drag would launch the application instead. I was expecting a three-finger scroll inside an application window in addition to the two-finger scroll, but it wasn’t supported.
    • To enable tap-click and two-finger-tap-2nd-click, go to System Preferences->Trackpad->Point & Click, check the “Tap to click” and “Secondary click” with “Click or tap with two fingers” boxes.
    • To enable two-finger-tap-drag, go to System Preferences->Accessibility->Mouse & Trackpad->Trackpad Options…, check the “Enable dragging” box and leave the default “without Drag Lock” selection.
  3. Globally disable application restore. This feature was very confusing and a bit annoying. For example, when I would run the TextEdit application to open up a new document, I would get 3 or 4 of the previously opened documents also and would have to hunt for the new document. I’m sure that others may find this useful but it wasn’t for me.
    • To disable application restore, go to System Preferences->General and check the “Close windows when quitting an application” box.
    • On OS X Lion, this option is labeled “Restore windows when quitting and re-opening apps” and you would uncheck it to disable the application restore.
  4. Change Gatekeeper to allow installation of programs from anywhere, not just only from the Mac App Store. I ran into this issue when attempting to install GNU Emacs, which I had to download separately because it is not in the App Store.
    • To allow installation from anywhere, go to System Preferences->Security & Privacy and select the “Anywhere” option under the “Allow applications downloaded from:” section.
  5. Disable notifications from programs like gfxCardStatus or Game Center. I’m okay with the Notification Center but too many non-critical notifications can train me to ignore all notifications (like ignoring the boy who cried wolf too many times).
    • To disable specific notifications, go to System Preferences->Notifications, select the application, and then uncheck any or all three options: “Show in Notification Center:”, “Badge app icon”, and “Play sound when receiving notifications”.
    • FYI, the “Badge app icon” is a red circle with a number inside that appears on the top-right of the application icon in the dock . The best example is the Mail program showing the number of unread emails.
    • There does not seem to be any option to only display the banner (which appears in the upper-right of the screen briefly and then disappears) without leaving at least the last notification message in the Notifcation Center.
  6. Disable automatic system updates during sleep. I don’t trust automatic updates and want to be asked if I wish to install them or not.
    • To disable automatic updates, go to System Preferences->Software Update and uncheck the “Install system data files and security updates” box.
  7. Turn on indicator lights on the dock to show that an application is running. This was checked already on my macbook (maybe because I upgraded from Snow Leopard and it persisted that setting).
    • To enable indicator lights on the dock, go to System Preferences->Dock and check the “Show indicator lights for open applications” box.
  8. Turn off Auto Correct. I usually make sure to disable automatic correction in programs like Outlook, Mail, and Word because most of the time, the corrections are wrong. I hated having my technical words replaced by common words because the dictionary used didn’t have those words, or having an acronym re-capitalized. On Mac OS X, I noticed that disabling Auto Correct in the applicatons’ Preferences did not stop all auto corrections from occurring. It turns out I have to disable it at the system level also.
    • To disable Auto Correct, go to System Preferences->Language & Text->Text and uncheck the “Use symbol and text substition” and/or “Correct spelling automatically” boxes.
    • I do uncheck the “Use symbol and text substitution” box because when I type a), b), and c), it is annoying when the c) ends up as a copyright symbol.
  9. Make scrollbars visible all the time. Hiding the scroll bars was a bad idea for two reasons. One, I can’t see the vertical scroll bar until I do a two-finger scroll. Hovering over the location of the vertical scroll bar does not show it; but strangely, doing the same for the horizontal scroll bar will show it. Two, the horizontal scroll bar appears, overlaps an item, and prevents selection of that item. For example, when attempting to move a file that is in the last display line of the Finder’s list mode, the horizontal bar will appear and prevent the selection of that file.
    • To make the scrollbars visible all the time, go to System Preferences->General and select the “Always” option for “Show scroll bars:”.
  10. Show Finder status bar. I like the Finder’s bottom status bar because it provides useful info at a glance.
    • To show the Finder status bar, go to the Finder’s View menu and click the “Show Status Bar” option.
  11. Make hard drives visible in Finder’s left-hand navigation pane. I think the reasoning behind hiding the hard drives is to force the usage of the favorites folder to access files. Unfortunately, I organize my files differently than Apple imagines I would, so I do need a way to quickly view the root folder of my hard drive.
    • To make the hard drives visible in Finder, go to Finder’s Preferences menu, Sidebar tab, and check the “Hard disks” box under DEVICES.
  12. Make the ~/Library folder permanently visible in the Finder. I could use Finder’s “Go->Go to folder” menu and input “~/Library”, but that’s slower than just clicking on the Library folder.
    • To make the ~/Library folder permanently visible, launch the Terminal application and run the following command:
      sudo chflags nohidden ~/Library

    Note: If you use Disk Utility’s Repair Permissions function, it will re-hide the ~/Library folder and you would need to do the above again.

The information above was mostly derived from:


Setup Mac OS X 10.8 Mountain Lion, Windows 7 Boot Camp, and Shared FAT32 Partition

Mac OS X 5 Comments

applebootcampI recently got a mid 2012 Macbook Pro 15in laptop. It came with Mac OS X 10.7 Lion which I promptly upgraded to Mac OS X 10.8 Mountain Lion. I then installed Windows 7 Boot Camp on it. I thought I had the perfect setup.

To my dismay, I found that while the Macbook lasted 6 hours or more while running Mac OS X, the Windows 7 lasted at best 3 hours. The reason for the short battery and heat (the laptop got very hot under Windows) was that under Windows, the discrete graphics card was active all the time! The Boot Camp 4.0 drivers for Windows did not support switching graphics between the integrated and discrete video cards, but instead used discrete all the time.

I decided to use Mac OS X as often as I could to take advantage of the battery life and only switch to Windows when I needed to. Under Mac OS X, there is an neat application called gfxCardStatus which allows me to force Mac OS X to use only the integrated graphics card. This is useful because I found that unlikely applications, like Powerpoint, would switch the Mac OS X to use discrete graphics.

Update: Mac OS X 10.10 Yosemite uses a new Core Storage volume manager which does not support merging or re-sizing. The solution is to revert the Core Storage volume back to a plain HFS+ (aka Mac OS Extended) partition before following any of the instructions below. See my followup post on Revert Mac OS X Yosemite Core Storage Back to Mac OS Extended HFS+ for details.

Unfortunately, sharing information between the two operating systems is inconvenient because while Mac OS X can read NTFS, it can’t write to it. And while Windows can read HFS+, it cannot write to it. There is a commercial product called NTFS for Mac that allows Mac OS X to write to NTFS, but some reviews indicated that the NTFS partition might get corrupted. Alternatively, I could use a cloud service like DropBox but I would have to pay for more storage space, there would be duplicated files on both the Mac OS X and Windows partitions, and there would be a dependency on having Internet access to sync those duplicated files. The best solution (free, non-wasteful, and fast) would be to have a shared FAT32 partition which both Mac OS X 10.8 Mountain Lion and Windows 7 can read and write to.

Update: Initially I used an exFAT partition, instead of FAT32. (exFAT is an enhancement of FAT32 that removes the 4GB file size limitation.) However, after copying back my data to the shared exFAT partition and accessing it from both Mac OS X and Windows 7 under VMware, the shared partition got corrupted within a day. I did some research and found that exFAT on Mac OS X often got corrupted and would disappear. Disk Utility was not able to repair the exFAT partition. I decided to reformat the shared partition as FAT32 using Disk Utility with “MS-DOS (FAT)” format; I can live with the 4GB file size limit, but I can’t live with corrupted data. FAT32 is older (less buggy and more reliable) and uses two file allocation tables (while exFAT uses just one) so it should be more recoverable. I’ve updated this post to refer to FAT32, instead of exFAT.

To create the shared FAT32 partition would require me to re-size the existing partitions. The Mac OS X Disk Utility supports re-sizing the Mac OS X’s HFS+ partition without destroying its contents. Under Windows 7, there are 3rd party tools to re-size the NTFS partition but success was not guaranteed and there was a chance that the Windows Boot Camp partition might become unbootable.

Because I also had an issue with running the Windows 7 Boot Camp under VMware 4 and 5 (I couldn’t figure out why), I decided to start from scratch with a new Boot Camp. After backing up the data on Windows 7, I ran the Boot Camp Assistant to delete the existing Boot Camp partition.

Maximum of Four Partitions

My original Mac OS X Lion came with 3 partitions on the hard drive using the GUID Partition Table (GPT) schema, which we can see by running “diskutil list” under the Terminal command line:

The Extensible Firmware Interface (EFI) partition contains the boot software, the Macintosh HD partition contains the Mac OS X 10.8 Mountain Lion, and the Recovery HD partition contains the Mac OS X Lion Recovery.

Windows 7 uses Master Boot Record (MBR) which allows a maximum of 4 primary partitions (or 3 primary and 1 extended partitions) that Windows 7 can be installed on. Because Boot Camp requires that Windows be the last partition, we have an issue because adding a Boot Camp and a shared partition will result in 5 partitions, rendering the last partition as uninstallable by Windows 7. How do I know? I attempted it and ended up with the resulting Windows 7 install screen to the right. Clicking on Show Details informed me that Windows 7 needed to be installed on a Primary partition, which the last partition wasn’t.

To get this to work, we have to sacrifice the Mac OS X Lion Recovery partition. Then when we add the Windows and shared partition, the total will be 4 partitions. Deleting the Recovery partition was not a problem because I plan to make a bootable USB key containing the Mac OS X Mountion Lion install. Unfortunately, because the Recovery partition is a hidden partition, we cannot use Disk Utility to delete it. Instead, we will use the Terminal command line to erase and merge it with our Mac OS X partition.

Update: There is a way to avoid deleting the Mac OS X Recovery HD partition. I found a post, MBA13/2012: OSX + Win7 + Shared exFAT, which uses a tool called gptsync to avoid deleting the Recovery HD partition by hiding it from the Windows MBR table.

Here’s how to erase and merge the Mac OS X Lion Recovery partition:

  1. Launch the Terminal application.
  2. Run “diskutil list” to see the 3 existing partitions: EFI, Macintosh HD, and Recovery HD. (See the “diskutil list” results above.)
  3. Look for “Apple_Boot Recovery HD” partition and note its identifier, which in the above is “disk0s4”. Likewise, note that the “Apple_HFS Macintosh HD” partition’s identifier is “disk0s2”.
  4. Erase the Recovery HD partition by running “diskutil eraseVolume HFS+ Blank /dev/disk0s4”. (Format: “diskutil eraseVolume format name device”)

  5. Reclaim the erased space by merging the now blank Recovery HD partition with the Mac OS X HFS+ partition by running “diskutil mergePartitions HFS+ Lion disk0s2 disk0s4”. (Format: “diskutil mergePartitions format name fromDevice toDevice”. This is non-destructive on the first partition because the force flag is not set; and in this case, the format and name are ignored.)

  6. Note that the above steps result in 2 existing partitions: EFI and Macintosh HD.

Create Boot Camp and Shared Partitions

We are ready to create a Boot Camp partition for Windows 7 and the shared FAT32 partition. Before we start, there are two important points to keep in mind:

  • We will introduce a new step in the Boot Camp process, between the Boot Camp partition creation and Windows 7 installation. The new step involves creating the shared FAT32 partition.
  • Any change to the partition tables after Windows 7 is installed will break the Boot Camp partition. So make sure you are certain about how to size each of the partitions.

I decided to split my 750GB hard drive into 3 equal 250GB partitions for Mac OS X, Windows 7, and Shared. Here are the steps I took to create a Boot Camp with the Shared partition:

  1. Insert the Windows 7 Install DVD. Boot Camp Assistant won’t create the Windows partition without the DVD inserted.
  2. Run the Boot Camp Assistant and select only the “Install Windows 7” task.
    • If you don’t already have the latest Boot Camp 4.0 Drivers for Windows 7 available, then also select the “Download the latest Windows support software from Apple” task to create a DVD or USB flash drive containing the Boot Camp Drivers for windows.
  3. On the next screen, drag the slider to size the Windows partition; 249GB was the closest I could get to 250GB. The resulting Mac OS X partition would be the size of both the final Mac OS X and Shared partitions; in my case, 500GB. (We are short 1GB because it is used by the EFI partition. Partition sizes are not an exact science so I’m not concerned.)
  4. Note: Before hitting the Install button, be prepare to hold the Option key when the Mac reboots so we can boot from the Mac OS X partition, instead of the Windows 7 DVD.
  5. Hit the Install button. The Mac will create the Windows partition (takes a couple of minutes) and then reboot (screen goes grey and then black).
  6. Hold the Option key down during bootup and select the Mac OS X “Macintosh HD” icon when the Launch Manager appears.
  7. Back in Mac OS X, run “Disk Utility”, select the hard drive, and go to the Partition tab.
  8. Select the “Macintosh HD” partition, click the plus button to add our shared partition. A new partition is created with the name “Macintosh HD 2” which is half the size of the original “Macintosh HD” partition; which are the sizes I wanted. You can move the slider to adjust the sizes.
  9. With the “Macintosh HD 2” partition selected, choose “MS-DOS (FAT)” for the Format and “Shared” for the Name. Hit the Apply button to create the shared FAT32 partition.
  10. Restart and the Macbook will boot from the Windows 7 Install DVD to install Windows.
  11. For the Windows 7 install, hit the Next button, hit “Install now” button, check the “I accept the license terms” box, click Next button, click “Custom (advanced)” option, and select the Boot Camp partition; for me, that partition is named “Disk 0 Partition 4: BOOTCAMP”.
    • You might notice a “Disk 0 Unallocated Space” partition of 128MB. There isn’t any way to reclaim and use it.
  12. Because Boot Camp Assistant used FAT32 for the Windows partition, the Windows 7 install will disable the Next button and show an error “Windows cannot be installed to Disk 0 Partition 4” at the bottom. Clicking on “Show details” will display “Windows cannot be installed to this hard disk space. Windows must be installed to a partition formatted as NTFS.” To resolve this issue, reformat the Boot Camp partition as NTFS.
  13. With the Boot Camp partition selected, click on “Drive options (advanced)”, click on Format, click OK on the warning, and the Boot Camp partition will be formatted as NTFS. Its name will be blanked out, resulting in a “Disk 0 Partition 4” label. The error at the bottom will disappear and the Next button will be enabled.
  14. Click Next and Windows 7 will start installing itself to the Boot Camp partition. The installation took me about 30 mins, including an automatic reboot.
  15. Once Windows 7 is running, open “My Computer”, select the DVD drive, and click on Eject in the top menu to remove the Windows 7 Install DVD.
  16. Insert the Boot Camp 4.0 Drivers for Windows 7 DVD (or USB flash key) and run “setup.exe” on it to install the Boot Camp drivers. This took me about 10 minutes including another reboot.
  17. Open the Boot Camp Control Panel and select “Macintosh HD Mac OS X” as the system to start the computer with. Or you can leave it set to Windows and use the Option key when booting to select which OS to run.
  18. Double-check that you can access the “Shared” partition on Windows 7; it will show up as an additional hard drive.
  19. Restart and run Mac OS X.
  20. Check that the Shared partition is accessible. If you don’t see it in the Finder, go to the Finder’s Preferences, Sidebar, and check the “Hard disks” box under DEVICES. Alternatively, from the Terminal, you can type “cd /Volumes/Shared”.
  21. FYI, here is the final “diskutil list” output:

  22. As a last step, I launched VMware and it was able to load the Windows 7 Boot Camp successfully. Sweet.
    • Note: On startup, VMware Fusion will display a warning message “VMware Fusion is not compatible with gfxCardStatus”. You can quit gfxCardStatus or remember not to manually switch the graphics device while VMware is running.
    • Note 2: When running Windows 7 Boot Camp under VMware, the Boot Camp and Shared partitions will be unmounted from Mac OS X. When you shutdown Windows 7 Boot Camp, those partitions will be re-mounted under Mac OS X.

Most info above derived from:


Clone Mac OS X 10.6 Snow Leopard Install DVD to USB Flash Drive

Mac OS X 16 Comments

Update: Go to Bootable USB Flash Drive to Install Mac OS X 10.10 Yosemite if you want to install Mac OS X 10.9 Mavericks or Mac OS X 10.10 Yosemite instead. The instructions below will not work for Mac OS X 10.7 Lion or later versions.

I thought it would be useful to put the Mac OS X 10.6 Snow Leopard installer on a USB flash drive. It would be faster than reading from a DVD. I can use it with a Macbook Air or Pro Retina which do not come with a DVD drive. And the USB flash drive is more portable and robust than a DVD.

Note: I’m doing the following on a Macbook running Snow Leopard. The resulting USB flash drive will boot on Intel-based Macs only. If you want to boot the USB flash drive on a PowerPC-based Mac, please see the comments.

Create a DMG file

You can skip creating a DMG (Disk iMaGe) file if you clone directly from the Snow Leopard “Mac OS X Install DVD” disk to the USB flash drive. I just wanted a DMG file for speed and convenience; in case I need to clone to a dual-layer DVD or to another USB flash drive.

  1. Insert the Snow Leopard 10.6 “Mac OS X Install DVD” disk into the DVD drive.
  2. Run the “Disk Utility” application (under the “Applications/Utilities” folder).
  3. On the left-hand pane, you will see “Mac OS X Install DVD” appear under the DVD drive when the DVD is mounted. A “Mac OS X Install DVD” disk icon will also appear on the desktop.
    • If you don’t see the “Mac OS X Install DVD” even after waiting for a while, try closing and starting the “Disk Utility” application again.
  4. On the left-hand pane, select the “Mac OS X Install DVD” by clicking on it.
  5. Click on the “New Image” icon, located in toolbar at the top.
  6. Select the location to save the DMG file (“Mac OS X Install DVD.dmg”) to. Leave the defaults of “compressed” for “Image Format” and “none” for “Encryption”.
  7. Click on the “Save” button. The DMG file creation can take 20 minutes or longer.

Format USB Flash Drive as Mac OS X Bootable

You will need an 8GB USB flash drive. Format it as a Mac OS X bootable drive by following these steps:

  1. Insert the USB flash drive.
  2. Run “Disk Utility”.
  3. On the left-hand pane, select the USB drive (not the FAT32 or other partition under it).
  4. Click on the “Erase” tab, select “Mac OS Extended (Journaled)” for “Format” and input a name like “Snow Leopard Install USB” (or anything because this will be overwritten later).
  5. Click the “Erase…” button and then the “Erase” button. This format operation will take less than a minute to complete.
  6. Once the format completes, make sure that the USB flash drive is selected in the left-hand pane. In the bottom pane, check that the “Partition Map Scheme” is set to “GUID Partition Table” (which means it is Mac OS X bootable). Under Snow Leopard, formatting as “Mac OS Extended (Journaled)” appears to select the “GUID Partition Table” scheme by default.
  7. If you are not running Snow Leopard and the “Partition Map Scheme” is not set to “GUID Partition Table”, please repeat steps #1-3 above and then the following alternative steps:
    1. Click on the “Partition” tab, select “1 Partition” under “Volume Scheme”, ensure “Mac OS Extended (Journaled)” is selected for “format”, and leave the name alone or change it to be anything (it will be overwritten later).
    2. Click on the “Options” button and ensure that “GUID Partition Table” is selected. Click OK.
    3. Click the “Apply” button and then the “Partition” button. This format operation will take less than a minute to complete.

Restore DMG file to USB Flash Drive

Restore the DMG file to the bootable USB flash drive:

  1. Locate the “Mac OS X Install DVD.dmg” file that was created earlier. Double-click on it to mount and launch it. You will see a “Mac OS X Install DVD” disk icon appear on the desktop. You can close the “Mac OS X Install DVD” application window that was also opened.
  2. Insert the Mac OS X bootable USB flash drive that we created above.
  3. Run the “Disk Utility” application. On the left-hand pane, you should see both the USB flash drive and the mounted DMG file.
  4. On the left-hand pane, select the partition under the USB flash drive.
  5. Click on the “Restore” tab and drag that same partition (under the USB flash drive) to the “Destination” field (you will see a green plus mouse icon appear when you drag over the field).
  6. If you cannot drag the “Mac OS X Install DVD” partition under the DMG file to the “Source” field (on Snow Leopard, the green plus mouse icon won’t appear and no action is taken on the drop), you can instead right-click on the “Mac OS X Install DVD” partition and select “Set as source”. The “Source” field will then be filled with the partition name.
    • Even though you can click on the “Image…” button and select the DMG file, when you do the restore, Disk Utility will throw a “RESTORE FAILURE” error with the message: “Could not find any scan information. The source image needs to be image scanned before it can be restored.”
    • If you are cloning directly from the “Mac OS X Install” DVD, you can just drag the partition under the DVD drive to the “Source” field.
  7. I left the “Erase destination” box checked. With this box checked, the restore operation took about 25 minutes. When this box was unchecked, the restore operation reported that it would require 4 hours.
  8. Click the “Restore” button, then the “Erase” button, and input your Mac OS X administrative password.
  9. When the restore completes, you may see two “Mac OS X Install DVD” application windows appear, the first from the mounted DMG file and second from the USB flash drive. There will also be two “Mac OS X Install DVD” disk icons on the desktop. Also, notice that the partition under the USB flash drive is now named the same as the source, “Mac OS X Install DVD”.
  10. Select the USB flash drive in the left-hand pane. In the bottom pane, double-check that the “Partition Map Scheme” is still set to “GUID Partition Table”.
    • If you are not using Snow Leopard and find that the “Partition Map Scheme” is no longer set to “GUID Partition Table”, you may need to redo the restore. Reformat the USB flash drive (per the alternative instructions above) and before doing the restore, uncheck the “Erase destination” box. I fear that the “Erase destination” function may modify the partition map scheme to be something other than “GUID Partition Table”.

Boot from the USB Flash Drive

  1. Insert the USB flash drive.
  2. While starting your Mac, hold the Alt/Option key down to launch the Startup Manager.
  3. Select the USB flash drive to boot from; it will be labeled “Mac OS X Install DVD”.

Most of the information above was derived from:


Configure Live Mail 2011 for Gmail IMAP (and Yahoo Mail POP3)

Windows No Comments

In my earlier post on Configuring Outlook 2003/2007 for Gmail IMAP, I mentioned that there was a problem with deleting messages. Specifically, when I deleted a message in the Gmail Inbox, the message was deleted from the Inbox but still left in the “All Mail” folder; so it didn’t show up in the Trash. The workaround was to drag the message from the “All Mail” folder to the Trash.

Microsoft fixed the above Gmail delete message problem in Outlook 2010 and in Live Mail 2011. To enable this fix, in Live Mail, go to menu “File->Options->Mail->Advanced->IMAP” and enable the “Use the ‘Deleted Items’ folder for IMAP accounts” option. (Live Mail 2012 enables this option by default.)

(Update: Either Microsoft or Facebook fixed the following Facebook email crash issue because I no longer see it.) There was a major downside to using Live Mail 2011 if you receive emails from Facebook. Simply, when you attempt to read an email from Facebook, Live Mail 2011 would crash. (I looked into using rules to move emails from Facebook into a folder, but rules only work for POP3 accounts, not Gmail IMAP.)

Note: Live Mail 2012 is the last version. Thankfully it does not exhibit any of the issues above and is still fully functional under Windows 10.

Configure Gmail IMAP

When you first run Live Mail, it will prompt you with an “Add your email accounts” dialog. If you don’t see this dialog or wish to access it later, go to menu “File->Options->Email accounts”.

To configure for Gmail IMAP, do the following on the first page:

  • Input your Gmail email address.
  • The password should be your Google Mail app-specific password if you have generated it. Otherwise, input your regular Gmail password.
  • Select the “Manually configure server settings” option.

On the next “Configure server settings” page, do the following:

  • Select “IMAP” as the “Server type”.
  • Input “” into the IMAP “Server address” under the “Incoming server information” section.
    • Select “Requires a secure connection (SSL)” under the IMAP “Server address”.
    • The IMAP “Port” should change from “143” to “993” automatically; but if it doesn’t, make the change manually.
  • Select “Clear text” for the “Authenticate using” option (the alternative “Secure Password Authentication” method is not supported by Gmail).
  • The “Logon user name” field should include the ending domain “”, not just your username.
  • Input “” into the SMTP “Server address” under the “Outgoing server information” section.
    • Select “Requires a secure connection (SSL)” and “Requires authentication” under the SMTP “Server address”.
    • The SMTP “Port” won’t automatically change, so manually change it from “25” to “465”.

When you click on the next button, Live Mail will create the Gmail account and perform the initial IMAP folder sync. Once the sync completed, I tested by selecting a message in the Inbox and deleting it. When I checked the “[Gmail]->All Mail” folder, the message was not listed there. And when I checked the “[Gmail]->Trash” folder, I saw the deleted message. It worked! I no longer had to do the “move to Trash” workaround.

Issue: Duplicate Unread GMail Messages

A strangeness I noticed was that the “Unread email” folder under “Quick views” would show a duplicate of each new message. Duplicates occur because each new unread message appears both in the Inbox folder and the “[Gmail]->All Mail” folder. You can eliminate the duplicates by hiding the “All Mails” folder. To hide the “All Mail” folder, left-click on it and select the “Hide this folder from list” menu item. After making this change, you should see only one copy of each message in the “Unread email” folder.

If you want to unhide the “All Mail” folder, left-click on the email account name and select the “Show or hide folders…” menu item. Under the All tab, select the “All Mail” item and click on the “Show” button to the right. Hit Ok to close the dialog. You should see the “All Mail” folder under “[Gmail]” again.

Issue: Unwanted GMail Folders

Live Mail recognizes Google Mail’s IMAP folder names and maps them correctly. So you should only see two main folders, “Inbox” and “Gmail”. Under “Gmail”, there are “All Mail”, “Drafts”, “Sent Mail”, “Spam”, “Starred”, and “Trash” sub-folders.

If you see other IMAP folders, then they represent custom labels in Google Mail. You can either hide them or delete them. To delete, do the following:

  1. Log into Gmail and delete the custom labels.
  2. Under Live Mail, right-click on the top Gmail email account label (in the left-side view), and click “Download all folders” to refresh the IMAP folders displayed. The unwanted IMAP folders will disappear.

Configure Yahoo Mail IMAP

Yahoo’s new IMAP access is available to all Yahoo Mail users. Yahoo Mail’s IMAP configuration is almost identical to Gmail’s. (I prefer IMAP to POP3 so use the configuration below myself.)

To configure for Yahoo Mail IMAP, do the following on the first page:

  • Input your Yahoo Mail email address.
  • The password should be your Yahoo Mail app-specific password if you have generated it. Otherwise, input your regular Yahoo Mail password.
  • Select the “Manually configure server settings” option.

On the next “Configure server settings” page, do the following:

  • Select “IMAP” as the “Server type”.
  • Input “” into the IMAP “Server address” under the “Incoming server information” section.
    • Select “Requires a secure connection (SSL)” under the IMAP “Server address”.
    • The IMAP “Port” should change from “143” to “993” automatically; but if it doesn’t, make the change manually.
  • Select “Clear text” for the “Authenticate using” option.
  • The “Logon user name” field should just be your username (don’t include the the ending domain “”).
  • Input “” into the SMTP “Server address” under the “Outgoing server information” section.
    • Select “Requires a secure connection (SSL)” and “Requires authentication” under the SMTP “Server address”.
    • The SMTP “Port” won’t automatically change, so manually change it from “25” to “465”.

Issue: Unwanted Yahoo Mail Folders

Live Mail does not recognize Yahoo Mail’s IMAP folder names. As a result, we end up with a combination of Live Mail folders and Yahoo Mail folders. So, we will see both “Drafts” and “Draft”, “Sent Items” and “Sent”, “Junk E-mail” and “Bulk Mail”, and “Deleted Items” and “Trash”. (Live Mail actually creates its missing folders in Yahoo Mail.)

First, we need to teach Live Mail how to map its folders to Yahoo Mail’s folders.

  1. Go to menu “File->Options->Emails accounts”, select the Yahoo Mail account, and click on “Properties”.
  2. Click on the “IMAP” tab.
  3. Under “Special Folders” section, change the IMAP paths to match the Yahoo Mail folder names accordingly:
    • Change “Sent Items” to “Sent”.
    • Change “Drafts” to “Draft”.
    • Change “Deleted Items” to “Trash”.
    • Change “Junk E-mail” to “Bulk Mail”.
  4. Hit Ok and answer Yes to the “Would you like to refresh your folders” dialog.

Second, we then can delete the Yahoo Mail folders created by Live Mail.

  1. Right-click on the “Sent Items” folder and select “Delete”.
  2. Right-click on the “Drafts” folder and select “Delete”.
  3. Right-click on the “Deleted Items” folder and select “Delete”.
  4. Right-click on the “Junk E-mail” folder and select “Delete”.

The correctly-mapped IMAP folders won’t offer the “Delete” menu item so you won’t be able to delete them by mistake. You will end up with just “Inbox”, “Archive”, “Bulk Mail”, “Draft”, “Sent”, and “Trash” folders.

Configure Yahoo Mail POP3

Note: If you don’t have a Yahoo Mail Plus account which is required for Yahoo POP3, you can use Yahoo’s new IMAP access above instead.

To configure Yahoo Mail POP3, follow the steps for the first page above. On the next “Configure server settings” page, do the following instead:

  • Select “POP” as the “Server type”.
  • Input “” into the POP3 “Server address” under the “Incoming server information” section.
    • Select “Requires a secure connection (SSL)” under the POP3 “Server address”.
    • The POP3 “Port” should change from “110” to “995” automatically; but if it doesn’t, make the change manually.
  • Select “Clear text” for the “Authenticate using” option.
  • The “Logon user name” field should just be your username (don’t include the the ending domain “”).
  • Input “” into the SMTP “Server address” under the “Outgoing server information” section.
    • Select “Requires a secure connection (SSL)” and “Requires authentication” under the SMTP “Server address”.
    • The SMTP “Port” won’t automatically change, so manually change it to “465”.

Issue: Display Order of Email Accounts

After adding several email accounts, I noticed that Live Mail’s account list (on the left in the main window) was not listing the email accounts in the order of creation; they were in some random order. To re-arrange the display order, just left-click on the email account name and select “Move up” or “Move down”.

I imagine that the above IMAP and POP3 configuration instructions are still applicable to Outlook 2010.

These sites helped me to figure out the quirks of Live Mail 2011:

No Comments

Create a Bootable USB Windows XP Installer (Good-bye CDs and DVDs!)

Windows No Comments

Note: I have also used the WinToFlash tool to successfully make a bootable USB Windows 7 installer, both 32bit and 64bit versions.

kingstonflashdrivewinzpMy sister asked me to fix her Compaq Windows XP laptop. I found that the Windows XP Home installation on it was in a weird state. On bootup, it would always show an error saying “One of the files containing the system’s Registry data had to be recovered by use of a log or alternate copy”. And every time I launched Internet Explorer 8, I would get this error, “A program on your computer has corrupted your default search provider setting for Internet Explorer” and the search provider configuration dialog would appear; however, any change I made to the search provider selection was not saved.

I tried to fix both issues above and failed miserably. There were many suggestions on the Internet but none of them worked for me (except re-install Windows). To fix the Windows startup issue, I tried to do a clean boot (setting msconfig to not load any services on startup) but the error stilled occured. I tried to replace the “ntuser.dat” (user registry file) but that made no difference. I even un-installed and re-installed the Windows XP Service Pack 3. No success.

At the same time, I tried to fix the IE 8 error. I un-installed and then re-installed IE 8; the error still appeared. I deleted the IE “SearchScopes” entries in the registry; that didn’t work. I even copied whole IE 8 registry sections from a working machine over to the malfunctioning one. No dice.

I finally came to the conclusion that I had to do a clean Windows XP installation. The problem was the DVD drive on the laptop was broken. So that left me with one option, boot and install from a USB flash drive. I remember looking into bootable USB several years ago and giving up on it because it looked to be too difficult. Thankfully, time has drastically simplified the process of creating a bootable USB flash drive.

The tool I found that made everything painless is called WinToFlash. Just download, unzip, and run the “WinToFlash.exe”; there is no installer setup. Creating a bootable USB Windows installation drive is very simple: you put a bootable Windows CD/DVD (can be Windows XP or even Windows 7) in an optical drive, stick a USB flash drive into a USB port (should be 600MB or larger for Windows XP), run WinToFlash (just use the default Wizard) and select the drive letters assigned to the bootable CD/DVD (or select ISO image file) and the USB flash drive. WinToFlash will copy the Windows CD/DVD content to the flash drive and make the flash drive bootable.

Note: The latest version of WinToFlash is capable of opening up a bootable Windows ISO image directly. However, you can still mount the ISO image instead, and reference it by drive letter in WinToFlash. To do the ISO mount, I recommend either of these two free programs, Slysoft Virtual CloneDrive or WinCDEmu.

I had to go into the laptop’s BIOS (press F10 for Compaq laptops) to change the boot order to put the “USB Hard Drive” before the “Notebook Hard Drive”. I then rebooted and the laptop booted off of the USB flash drive. The boot menu was a bit cryptic though.

Option 2, “2nd, GUI mode setup, continue setup + 1st start of Windows”, was selected by default so I selected that. The Windows XP logo appeared and the laptop booted off of the internal hard drive, instead of running the Windows XP installer. I rebooted and this time, selected option 1, “1st, text mode setup (Boot from flash again after finished)”. This time, the Windows XP installer was launched. The rest of the installation was the same as when installing from CD/DVD.

Doing a fresh installation of Windows XP did finally “fix” the weird registry and IE 8 errors. Of course, this was like repairing a car with a malfunctioning engine by removing it and sticking in a new engine. The term “repair” or “fix” doesn’t seem to apply in this scenario.

Flash Forward to the Future

The bootable USB flash drive reminded me of when bootable CDs first came out and replaced the multiple floppies Windows installation. Like floppies, the CDs and DVDs will soon disappear; case in point, the new ultrabooks don’t come with built-in optical drives. With the decreasing price of solid state hard drives (which use flash technology), the current mechanical hard drives’ days are numbered.

Take me as an example. Almost two years ago, instead of buying an external 500GB hard drive for backup purpose, I purchased two 32GB USB flash drives for about the same price. The smaller physical size more than compensated for the reduced capacity. And the smaller capacity flash drives forced me to truly identify which of my digital data was important enough to save.

Next, I will look into creating a live Windows XP operating system on a bootable USB flash drive. It will come in handy to repair broken Windows installations or just to quickly retrieve data from an internal hard drive. If the USB flash drive is big enough, I could even make and keep ghost images of internal hard drives on the USB drive. That would be really useful.

No Comments

Quick Guide for the Kindle 4 Wifi (with Special Offers)

Mobile Devices No Comments

I finally broke down (after years of defending “real” books) and recently got a Kindle 4 Wifi. It is very convenient (I can adjust the font size and carry a lot of books on trips) and I wondered why it took me so long to get one. To help you on your journey to getting one, below are some tips on using the Kindle for those who don’t want to slog through the whole manual.

KindleOnToiletTurn Your Kindle On

The power button for the Kindle is located on the bottom to the right of mini-USB charger port. Press it once to turn the Kindle on or off. A green light will come on for a brief period of time and then turn off to acknowledge the power button press. If you don’t turn the Kindle off, it will turn itself off (go to sleep) after a period of inactivity (several minutes).

Buttons and Buttons

The Kindle comes with four buttons and what I call a square thumb joystick at the bottom. The four buttons from left to right are Back (to go back to previous screen), Keyboard (to show/hide the virtual keyboard), Menu (to show the page-sensitive menu), and Home (to go to the main screen). The thumb joystick allows you to highlight things (like keys on the virtual keyboard) by going up, down, right, and left and can then be clicked on to make a selection.

I try to minimize my use of the virtual keyboard. Imagine inputting a 26 character wireless password using the thumb joystick and you can understand why.

Charge Your Kindle

The Kindle comes with a USB cable (it’s included in the box) which you can use to charge with. When you turn on the Kindle, if you look at the top right of the screen, you will see the battery status bar. Your Kindle shouldn’t need to be charged for a month or more with moderate reading (make sure you disable Wifi if you don’t need it).

Quick analogy on volts and amps: Think of electricity as water going through an opened half-pipe powering a water wheel. Volt is equivalent to the height of the water and amp is how fast the water flows. If you have a half-pipe of a certain size, the water level (volt) can only go so high before it overflows (bad for electronics). The speed of the water (amp) can vary within reason; it needs to go fast enough to move the water wheel but if it goes really, really fast, it could destroy the wheel, or back up and overflow the pipe (both bad for electronics). The point of this very rough analogy is that to power electronics, volts need to be a specific value while amps needs to be minimal value or greater. (FYI, Watts are just power ratings and is basically volts times amps; for example, 10 Watts = 5 Volts x 2 amps.)

The Kindle requires 5 volts and 0.5 amps or more to charge. This is what a computer’s USB port will usually output so you can just plug the Kindle’s USB cable into a computer’s USB port. (Note: Some older computers’ USB ports might not output this much power. You’ll know because electronics won’t charge.) Some newer computer’s USB port outputs 5 volts and 2 amps for power-hungry devices like Apple iPad; the Kindle will charge fine from these more powerful USB ports, pulling only as much amps as it needs.

The above means that you can charge the Kindle using the Kindle 4 wall charger (5 volts and 0.85 amp), iPad wall charger (5 volts and 2 amps), iphone/ipod touch wall charger (5 volts and 1 amp), Kindle Fire wall adapter (5 volts and 1.8 amps), and other USB wall chargers that meet the Kindle’s power requirements (5 volts and 0.5 amps or better).

When plugged in, the battery bar at the top of the Kindle screen will show a lightning bolt in the middle. When charging, an orange LED light will turn on at the bottom of the Kindle next to the power button. When the charge is 100% complete, the orange LED light will turn off and a green LED light will turn on. You can unplug at the point.

What are Special Offers?

I got the Kindle with special offers. Special offers is Amazon’s ad-supported platform. You see ads on the Kindle, Amazon gets revenue from advertisers, and thus, Amazon can sell you the Kindle at a discounted price ($30 off).

The ads are very unobtrusive. After a while, I stopped noticing them. The ads will only appear on the “screen saver” screen (when the Kindle is turned off or goes to sleep) and at the bottom of the book listing page (or home page). When reading a book, no ads are displayed; this is a good thing because most of the time, I am reading a book.

Disable Wifi to Save Battery Life

Wifi uses a lot of power so disable it when you don’t need it (not purchasing and/or downloading a book from Amazon). This is especially true if you have a Special Offers Kindle because it will wake periodically and use the Wifi to download new ads. (This explains why the battery may go down significantly even if you don’t use your Kindle for a while.)

When you first get your Kindle, if you hit the Menu button off the home screen, you will see the second option is either “Turn On Your Wireless” or “Turn Off Your Wireless”. Unfortunately, this option disappears once the Special Offers Kindle is updated and registered with your account. (I’ve also seen the option disappear on a non-Special Offers Kindle).

If you don’t see the above “Turn On/Off Your Wireless” menu option, you can use the Airplane Mode to disable Wifi. When you turn on Airplane Mode, the wireless is disabled; and vice versa. To toggle the Airplane mode, click on the Home button, click on the Menu button, select Settings, look for “Airplane Mode” at the top, and select the “turn on/off” option.

When Airplane Mode is on, the Wifi icon (five vertical bars of increasing height) will disappear from the top-right of the screen (to left of battery indicator) and you will see a new airplane icon (looks like a crooked plus sign) appear in its place.

Register Your Kindle

Register your Kindle with to buy books and to allow others to email books directly to your Kindle. To register the Kindle, turn Wifi on, go to home, menu, Settings, and click “register” to the right of the Registration setting. Use the virtual keyboard to input your username and password.

Getting Books on Your Kindle

There are several ways to get books onto your Kindle. Here are a few:

  • Buy a book from the Kindle store using your Kindle or from a browser.
  • Copy a book to the Kindle over the USB connection.
  • Email a book directly to the Kindle.

If you buy a book using a browser, the book will appear in the “Archived Items” folder on your Kindle (if wifi is enabled). If you select to open an “Archived Items” book on your Kindle, it will automatically be downloaded.

To copy a book to the Kindle over USB, do the following:

  1. Attach the Kindle to your computer using the USB cable. The Kindle screen will display a message titled “USB Drive Mode” with instructions that should you wish to read while the Kindle is plugged in, just eject the Kindle without disconnecting the USB cable.
  2. On the computer, you will see a new drive named “Kindle” appear. Under that drive is a directory called “documents”.
  3. If you copy books (with Kindle-compatible formats like AZW, Mobi, PRC or PDF) to the “documents” directory, they will show on the Kindle when you disconnect the USB cable (or eject the Kindle).

Note: On my Windows 7 64bit desktop, the eject did not work to allow me to read with the Kindle connected by USB cable. However, it did work on my Windows 7 64bit laptop.

If you want to allow a friend to email a book to your Kindle, log into your account using a browser and do the following:

  1. On your account settings page, select “Manage Your Kindle” in the left “Digital Content” section near the bottom.
  2. Select “Personal Document Settings” under the left “Your Kindle Account” section.
  3. Your Kindle will be listed with an email address ending in “”.
    • This is your Kindle’s email address. If you don’t like the email address, you can modify it using the Edit link to the right. (If you have more than one Kindle, you will get a unique email address generated per Kindle.)
  4. If you want Amazon to store a copy of all books emailed to your Kindle, enable the “Personal Document Archiving” option.
  5. You will need to add your friend’s email address to the “Approved Personal Document E-mail List”. Make sure to use the email address from which he will send the book to you.
  6. Once you do the above, your friend can email a book to the Kindle’s email address.
    • I suggest using the Mobi book format (.mobi file extension). This will reduce the transmission time because the system won’t have to convert and reformat the book.
    • To convert any book format to Mobi, I recommend using a free application called Calibre.
  7. If Wifi is enabled, the Kindle will automatically download the book (within seconds or minutes). The time varies depending upon how busy the system is and whether the book format needs to be converted.
    • Warning: If you use 3G Whispernet to download an emailed book, Amazon will charge you $0.15 per megabyte. Wifi is free.

Increase the Reading Font Size

I found the default reading font size was a little too small for me. Increasing it to the next larger font size was perfect for me. You can change the font size by doing the following:

  1. Hit the Home button.
  2. Click on a book to read it.
  3. Hit the Menu button and select “Change Font Size”.
  4. You can adjust the font size, typeface, letter spacing, word spacing, and line spacing. I just adjusted font size and left the rest alone.

Categories to Organize Your Library

If you have a lot of books on the Kindle (I have 40+ books), it can be a hassle to scroll through the list of books. Instead, use categories to organize your books into collections (categories are like folders). To begin using categories, highlight a book and instead of clicking to read it, hit the thumb joystick to go right. You will see useful options like “Add to Collection…” and “Remove from Device”. Click on “Add to Collection…” and select an existing collection or create a new collection.

Off the Topic: Email Books to an iPad

If you ever need to get a book onto an iPad (or iphone/ipod touch), here’s how to email it:

  1. Make sure that the iBooks application is installed on the iPad.
  2. I recommend using the ePub (.epub file extension) format for books that are sent to iPads.
  3. Email the book (as an attachment) to the iPad user’s email account.
  4. On the iPad, go to the Mail application, open the email, and click to open the attachment.
  5. The iPad will offer you the option to “Open in iBooks”.
  6. Accept it and the book attachment will be downloaded into iBooks for reading.

The tips above should work for other models like the Kindle Touch and Kindle Fire.

No Comments

Repeat a Jailbreak and Unlock on iPhone 3G iOS 4.2.1 (Death to Error 1015!)

Mobile Devices 7 Comments

I wanted to give my iPhone 3G, which I had previously jailbroken and unlocked, to a friend. So naturally, I went into Settings, General, Reset, and selected “Erase All Content and Settings”. Bad mistake. After reboot, the iPhone was stuck in recovery mode.

Worse mistake. I then plugged the iPhone into my Macbook Pro and did an iOS 4.2.1 restore using iTunes. I was thinking that I would just redo the jailbreak. Unfortunately, the iTunes restore failed with an error 1015. I found that I still had the custom PwnageTool iOS 4.2.1 ipsw firmware image I had used previously. I re-attempted the restore, this time holding the Option key while clicking on Restore so I could browse for and select my custom ipsw image file. This time, I got an error 1016.

After hours of googling, experiments (where I got other errors like 1600), and reading my own posts on the subject (I had forgotten everything), I found the answer. It turns out that the previous jailbreak I used was an tethered jailbreak; meaning that if I rebooted the iPhone, I would have to connect it to the computer and do something. In this scenario, that something would probably be to run a tool like TinyUmbrella to kick the iPhone out of recovery mode.

FYI: Per some instructions I found on the web, I did the restore again, left iTunes displaying the error 1015 dialog, ran TinyUmbrella to get the iPhone to “exit recovery” mode, and waited for the iPhone to reboot. Unfortunately, this method did not work and the iPhone promptly booted back into recovery mode. (TinyUmbrella also offered a “fix recovery” function which I tried; whatever it did, it didn’t fix my issue.)

The iTunes restore error was caused by the updated 06.15.00 baseband version (I had updated the baseband to get the unlocking tool, UltraSn0w, to work). iTunes did not recognize this baseband version and thus, threw a 1015 error. (I have no idea what the 1016 error is about though.)

The correct solution was to run RedSn0w to put the iPhone into a special “pwned” DFU mode which would accept custom ipsw firmware images and then to do the iTunes restore. This Youtube video, How to: Fix ERROR 1015 iPhone 3G STUCK ITUNES-STEP BY STEP!, contains the instructions. Basically run any version of RedSn0w 0.9.6 (I used the 0.9.6b5 version I had from my last jailbreak) and in the options screen, select only the “Just enter pwned DFU mode right now”. RedSn0w will walk you through putting the iPhone into that special DFU mode.

Hint: To get into DFU mode, leave the iPhone connected to the computer by USB cable. Turn the iPhone off first. If you can’t get to the shutdown slider, you can force an iPhone to turn off by holding both the power and home buttons until the screen goes dark (about 3-5 seconds). DFU mode is entered by holding the power button for 3 seconds, both power and home buttons for 10 seconds, and the home button for 15 seconds. If you have trouble getting into DFU mode and end up in recovery mode, use TinyUmbrella to exit recovery mode and try again.

Once RedSn0w is done, RedSn0w will tell you to quit it and run iTunes to do the restore. Rather than using my previous custom iOS 4.2.1 ipsw firmware image, I decided to create a new one using PwnageTool 4.2. PwnageTool 4.2 is an updated version which can do an untethered jailbreak. With an untethered jailbreak, when the iPhone is rebooted, it should just start up like normal, instead of entering recovery mode.

To create the new ipsw firmware image, I managed to download PwnageTool 4.2 from one of the working mirror links (specifically the 4th one) hosted on this page, PwnageTool 4.2 For Mac: iOS 4.2.1 Untethered Jailbreak For iPhone, iPad, iPod Touch & Apple TV 2G Released; Fixes iBooks Problem.

I then followed the excellent instructions from How To Jailbreak & Unlock iPhone 4, 3GS & 3G On iOS 4.2.1 Using PwnageTool 4.2. I only followed the steps up to 10. I did not do steps 11 and after because they are replaced with the RedSn0w “pwned” DFU mode steps above and iTunes restore steps below.

After putting the iPhone into “pwned” DFU mode and quitting redSnOw, I started iTunes and it recognized the iPhone 3G in recovery mode. I then held down the Option key while clicking on Restore to browse for the new PwnageTool 4.2 custom iOS 4.2.1 image that I had created above.

This time, the restore proceeded to completion, without the dreaded error 1015. It took almost 10 minutes before my iPhone 3G booted up and showed me the normal home screen. I then ran Cydia, updated it, searched for and installed ultraSn0w to do the unlock. I popped in the T-Mobile SIM card and checked that the phone calling and texting were working.

Hopefully if you encounter the above, you won’t have to do so much research to resolve the issue.


Recover From The “win64/Sirefef.W” Virus Infection

Windows 92 Comments

boxelderbugRecently, the Microsoft Security Essentials (MSE) running on my Windows 7 64bit desktop detected the “win64/Sirefef.W” virus. The “win64/Sirefef.W” (or variants like “win64/Sirefef.Y” and “win64/Sirefef.B”) is a trojan which can install rootkits and other malicious programs onto your machine, in addition to providing security backdoors and other nasty stuff. On my machine, the “Windows/System32/services.exe” file was infected which is really bad because services.exe is used to launch essential Windows Services.

Unfortunately, MSE was unable to clean the “win64/Sirefef.W” virus after detecting it. In the middle of cleaning, the desktop rebooted. On restart, MSE detected the virus again and display a message saying that the machine needed to be rebooted in a minute. A minute later, the desktop rebooted, MSE once again detected the virus and displayed a reboot warning. This cycle looked to repeat endlessly, rendering my Windows 7 64bit desktop useless.

Manual intervention was necessary. Fortunately, I was able to dual-boot the infected desktop to run an older, clean Windows XP operating system. (If you don’t have a dual-boot, see comments for alternative methods to get a clean “services.exe” on your machine; search for JAKiii who updated Andre’s instructions.) More fortunate, I had a clean Windows 7 64bit operating system on my laptop. Using Windows XP, I was able to copy the clean “Windows/System32/services.exe” file from my laptop to the Windows 7 partition on my desktop (I left the corresponding “services.msc” alone). (Note: In the future, if I only had one machine, I would consider having a dual-boot of two Windows 7 operating systems; the first of which is for my day-to-day usage, and the second is a barebones install which is the reference install. I might considering ghosting just the barebone one for easy restore.)

After replacing “services.exe”, I was able to restart my Windows 7 64bit desktop without MSE detecting the virus and forcing a reboot. I then did a full scan with both MSE and Malwarebytes to ensure that the whole machine was clean. I thought the problem was solved, but “win64/Sirefef.W” had damaged Windows 7 by removing security-related Windows services.

I found that the Base Filtering Engine (BFE), Windows Firewall (MpsSvc), Windows Security Center (WscSvc), Windows Update (wuauserv), and Background Intelligent Transfer Service (BITS) services were missing. The “win64/Sirefef.W” virus had deleted their registry entries. To recover, I exported the following registry entries from my laptop and then imported them into my desktop:

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\BFE (Base Filtering Engine)
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\MpsSvc (Windows Firewall)
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess (Required by Windows Firewall)
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\WscSvc (Windows Security Center)
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\wuauserv(Windows Update)
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\BITS (Background Intelligent Transfer Service – required by Windows Update)

For your convenience, here is a zip file,, containing the registry exports above and the clean “\Windows\System32\services.exe” file from my Windows 7 64bit Service Pack 1 (SP1) laptop. The registry exports have file extension “.reg” and you can import the services you are missing by double-clicking on them. (For those who don’t have SP1, John in comments provides a link to his services.exe for Windows 7 Home Premium in addition to instructions on how to extract a version from your Windows 7 install DVD. Please make sure to scan the file with your virus scanner before using. That advice applies to everything, including the zip file that I include above.)

There is an additional step to do below but at this point, we need to reboot once so that the registry changes can take effect and Windows will recognize the “new” services. On reboot, Windows will fail to start the Base Filtering Engine and Windows Firewall services. If you attempt to manually start them, you will encounter “error code 5” messages (see below), which are “access denied” errors. The fix for these access denied errors is to add the necessary permissions to the registry for each of the services. (You can try to avoid this reboot, but Windows may complain if you attempt to add permissions for services like BFE which it may not recognize without a reboot. In this case, just reboot and then repeat the add permission instructions.)

Update: Originally, I couldn’t set an NT service name as a user in the registry permissions so I suggested using the “Everyone” user with “Full Control” permission. While that worked, it left a big security hole. Fortunately, gvozden in the comments provided the solution. I have updated the instructions to replicate the original registry permissions exactly (as set on my laptop).

Do the following to add the necessary registry permissions:

  1. Run “regedit”.
  2. Browse to the “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\BFE\Parameters\Policy” section.
    • Right-click on “Policy” and select “Permissions…”. If you see a “BFE” user listed under the “Group or user names” list, you do not need to add it below.
    • Click the Add button, type “NT service\BFE” (it’s actually case-insensitive), and click the OK button.
    • Click the Advanced button, double-click on BFE to edit, and select the following in the allow permissions column: Query Value, Set Value, Create Subkey, Enumerate Subkeys, Notify, and Read Control.
    • Click OK, OK, and OK to close the Permissions dialog.
  3. Browse to the “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess” section.
    • Right-click on “Epoch” and select “Permissions…”. If you see “MpsSvc” listed, you do not need to add it below.
    • Click the Add button, type “NT Service\MpsSvc”, and click the OK button.
    • Click the Advanced button, double-click on MpsSvc to edit, and select the following in the allow permissions column: Query Value and Set Value.
    • Click OK, OK, and OK to close the Permissions dialog.
  4. Repeat the steps above for “Epoch2”.
  5. (Note: I could run the Windows Firewall without permissions set on the following two registry keys; but on my laptop, they were set so I also set them on the desktop just in case.)
  6. Browse to the “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess\Defaults\FirewallPolicy” section.
    • Right-click on “FirewallPolicy” and select “Permissions…”. If you see “MpsSvc” listed, you do not need to add it below.
    • Click the Add button, type “NT Service\MpsSvc”, and click the OK button.
    • Click the Advanced button, double-click on MpsSvc to edit, and select the following in the allow permissions column: Query Value, Set Value, Create Subkey, Enumerate Subkeys, Notify, Delete, and Read Control.
    • Click OK, OK, and OK to close the Permissions dialog.
  7. Repeat the above for the “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess\Parameters\FirewallPolicy” section.
  8. Reboot the machine.
  9. After the reboot, run “services.msc” and check that the “Base Filtering Engine”, “Windows Firewall”, “Security Center”, “Background Intelligent Transfer Service”, and “Windows Update” services are started successfully. The last three services are set to delayed start so they may not have started yet; in this case, you can manually start them.
  10. Run “Check security status” to see what Windows thinks about the security of the machine.
  11. Run “Windows Update” to get the latest security updates from Microsoft.

Note: The “Base Filtering Engine” depends on the “IPsec Policy Agent” and “IKE and AuthIP IPsec Keying Modules” services. Thankfully, the “win64/Sirefef.W” virus left these two services alone on my desktop.

If you prefer the command line, you can use the Service Control Manager “\Windows\System32\sc.exe” command line program instead of the “services.msc” program. Just run the “Command Prompt” as an administrator and input “sc” to see the command line options. Some useful ones I found were:

  • “sc qdescription wcssvc” which returns the human-friendly name “Windows Security Center” for “wcssvc”.
  • “sc query mpssvc” which returns the status for the “Windows Firewall” including recent exit codes.
  • “sc start bfe” which will attempt to start the “Base Filtering Engine” service.

I found the following websites helpful while researching this topic:


Create WordPress Widget for the Yelp Bling

Internet 2 Comments

I was writing a Yelp review (log into Yelp and click the “About Me” tab) and noticed a small google map object on the Yelp page that showed the locations for my reviews one by one. At the bottom of that object was a link named “I want this bling on my blog”. So I clicked on it. It took me to a page where I could generate the HTML code for my very own Yelp Bling object. (I kept the default Javascript version and did not select the Flash version.)

To put the Yelp Bling on my blog, I decided that the cleanest way is to create a WordPress widget to contain all that bling. I inputted a border color (C33907), text color (000000) and background color (FFFFF) which matched my blog’s theme. To find the RGB (Red, Green, Blue) values from your theme, use the Windows Paint program per these instructions.

Follow these instructions to create your very own Yelp Bling widget:

  1. Create a text file named “yelpbling.php” with the following content:
    Plugin Name: YelpBling
    Plugin URI:
    Description: Yelp Bling widget
    Version: 1
    Author URI:

    function yelpbling_widget() {

    <!-- Paste generated Yelp Bling HTML code here -->

    function init_yelpbling() {
       register_sidebar_widget("YelpBling", "yelpbling_widget");    
    add_action("plugins_loaded", "init_yelpbling");
  2. Paste your Yelp generated HTML code into the file under the “Paste generated Yelp Bling HTML code here” comment.
  3. Copy the “yelpbling.php” file to your web server’s WordPress plugin directory, usually “wp-content/plugins”.
  4. Log into your website as an administrator and select the Plugins tab. You should see the YelpBling widget listed.
  5. Activate the YelpBling widget.
  6. Go to the Appearance->Widgets tab and drag the YelpBling widget from “Available Widgets” into the Sidebar.
  7. View your blog and you should now see the Yelp Bling object in the Sidebar.

You may need to adjust the CSS style directives in the generated HTML code to make the Yelp Bling object fit nicely in the Sidebar. For example, I deleted the <div> containing the “Recent reviews by …” headline link (to compensate, I adjusted the header height to 25px from 40px) and the <div> containing the “What’s this?” footer link.

In the end, I decided that the Yelp Bling object did not belong on my blog and removed it.


« Previous Entries