Transporting XP to Mac, where System Folder is not WINDOWS or WINNT

Discussion in 'Parallels Transporter' started by babelfishka, Apr 11, 2007.

  1. babelfishka

    babelfishka Junior Member

    Messages:
    10
    Hi all,

    I'm looking for a solution to this problem. I am unable to get Parallels Transporter to recognize that my PC boots from something other than "WINDOWS" or "WINNT".

    When started this process, it warned me that I hadn't selected a bootable volume, even before it presented me with an option to select one! I proceeded to select the "C" volume, and it created a 28GB data image that is non-bootable.

    I noticed that elsewhere in this forum, someone had a similar problem and was able to use a HEX Editor to "fix" the Transporter Agent by renaming the folder it searches for manually." Which in my case won't work, as my System Folder's name is one character longer than "WINDOWS" and it would be "bad" to insert a character into a binary file.

    I've also tried searching the net for a way to rename my Windows System Folder, but as it turns out, that is an extraordinarily painful process.

    Does anyone (esp from Parallels) have a solution? To me, the ability to run my old computer as it was in my Mac is the best damn feature EVER in the history of computers... well that and coherence. :)

    Thanks in advance for your help!
    Paul
     
  2. babelfishka

    babelfishka Junior Member

    Messages:
    10
    Where are the Parallels Engineers? I've been abandoned!

    ANYONE? ANYONE? BUELLER?! Where are the Parallels Engineers? Please help!
     
  3. mmischke

    mmischke Hunter

    Messages:
    155
    This probably won't work but it might be worth trying. Check out the Junction tool (http://www.microsoft.com/technet/sysinternals/FileAndDisk/Junction.mspx). It's free and lets you create symbolic links on NTFS. Perhaps creating a C:\Windows SL which points to your actual Windows folder will fool Transporter into finding a bootable volume.

    It's possible (maybe even likely?) that Transporter refers to C:\boot.ini entries to determine a volume's 'bootability', expecting to see something like this:

    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional"

    I'm presuming that your boot.ini looks something like this:

    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS2
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS2="Microsoft Windows XP Professional"

    Therefore you'd need to add another [operating systems] entry which points to the C:\Windows symbolic link and change the [boot loader] default key to WINDOWS:

    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional"
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS2="Original"

    After migration to Parallels, boot from the Original menu item (you'll see a menu for 30 sec. when more than one option exists under [operating systems]. If Windows starts OK, restore boot.ini back to its original state and you should be good to go.

    Since it's impossible to predict what might result from doing this, be sure to fully backup or image your Windows partition before going down a path like this...
     
  4. mmischke

    mmischke Hunter

    Messages:
    155
    BTW - I'm not sure why spaces appear under the [boot loader] and [operating systems] sections in my last post. I tried re-editing but they're still there. Just to clarify, there should be no spaces at all in any of the 'default=' lines. The extra spaces which exist in the [operating systems] shouldn't be there, either, but they'd only affect the text of the displayed menu items.
     
  5. babelfishka

    babelfishka Junior Member

    Messages:
    10
    That's an awesome suggestion! I'll give it a shot! Thanks!
     
  6. mmischke

    mmischke Hunter

    Messages:
    155
    Please post your results if you decide to try it. While there are several reasons why it might not work, I've had wackier Windows hacks work for me. Good luck!
     
  7. babelfishka

    babelfishka Junior Member

    Messages:
    10
    Well, here are my results. I didn't have to do anything fancy at all - I created a junction for WINNT and a junction for WINXP (both using my oddly named system folder as the target) and it recognized it as a bootable volume! It's currently doing the migration - I'll write back when it works. I was unable to create a junction named "WINDOWS" - I suspect that it's a reserved name... But no matter, this seems to work great without having to change boot.ini... This is IMO, a very elegant solution... better than hacking the Transporter Agent!!! Oddly enough, I thought the answer would come from the Parallels Team. Are you guys listening? :) Thanks mmischke!
     
  8. babelfishka

    babelfishka Junior Member

    Messages:
    10
    Okay, here's the latest. When I tried to boot it, it didn't work. But the image was fine - as it turned out there was an odd thing that occurred with the file path of the .hdd file. It had the Mac path followed by the Windows path (to where the image was created)... Odd. Anyway, editing the path name to the .hdd file in the Edit Virtual Machine menu did the trick. I'm booting JUST FINE! So Woohoo! ... now if I could only get Parallels Tools to install without BSOD. Hmmmm... Inch by inch.
     
  9. mmischke

    mmischke Hunter

    Messages:
    155
    Happy to help and thx for posting your results. I'm glad to see that it worked. I wonder if the Parallels Tools are also hard-wired to expect Windows to reside in C:\WINNT or C:\WINDOWS. I didn't see any such references in the obvious Registry locations, but they could be embedded in code somewhere. What's displayed on the first few lines when you get the BSOD? Sometimes this yields a valuable clue.
     
  10. babelfishka

    babelfishka Junior Member

    Messages:
    10
    actually, I don't know - I get BSOD and the VM just shuts down immediately. there's probably a setting to tell it not to shut down after this but I haven't found it yet.
     
  11. babelfishka

    babelfishka Junior Member

    Messages:
    10
    I got a quick glimpse of the BSOD message - it said "BAD POOL HEADER" - I turned off Parallels Acceleration (as it prompted me to do), though this has only caused it to boot terribly slow. No difference otherwise... I've created another XP VM (with Parallels Tools already installed) and am going to attempt migrating my settings.
     
  12. babelfishka

    babelfishka Junior Member

    Messages:
    10
    Just another quick note, it looks like I may have that backwards. I'm seeing other posts with "BAD HEADER POOL", which makes much more sense from an engineering standpoint...
     
  13. babelfishka

    babelfishka Junior Member

    Messages:
    10
    Well, looks like I was right the first time... BAD_POOL_HEADER

    Regardless, I've been able to move beyond this and all is well. The solution? I booted in Safe Mode w/Networking and installed Parallels Tools Manually. When I booted XP in Safe Mode, Parallels didn't do anything after using the "Install Parallels Tools" pull down option, though (thankfully) it DID mount the image!

    Incidentally, I found the image on the drive at //Library/Parallels/Tools

    Installing in Safe Mode worked like a charm. I can't believe how much more responsive and useful XP feels with Parallels Tools installed. It's night and day!

    Thanks mmischke!
     
  14. mmischke

    mmischke Hunter

    Messages:
    155
    @babelfishka:

    Glad to hear that you found a workaround. Persistence often seems to pay off with problems like these. A quick Google search on BAD_POOL_HEADER returned a lot of hits but not a lot of concensus as to the cause(s). I saw a few folks suggest that turning the Indexing Service off solves the problem, but not enough of them to consider this a panacea. Either way, I'm happy to have helped and also to hear that you're up & running.
     
  15. Rachel Faith

    Rachel Faith Hunter

    Messages:
    234
    It seems that I am having this same issue. I have tried to get the attention of the PT but so far zippo... and I see that they did NOT reply to this thread either. So I am bumping it. I may try this trick to see if that gets around it, but PT should "get it" that hard coding a find windows isn't working for many and give us some sort of reply. Until now I have been one of those who has thought the whiners were just whiners, but my opinion of their tech support is now 1/2 what it has been.. and falling.
     
  16. Rachel Faith

    Rachel Faith Hunter

    Messages:
    234
    Well that is not going to work. Its for NTFS, and this PC is FAT32. I need some way to tell Parallels that it IS a good OS and Volume. I wonder how that other guy edited the exe... Ive never done that before.
     
  17. mmischke

    mmischke Hunter

    Messages:
    155
    Any reason that you can't use something like Acronis TrueImage to image your old machine and pull it over to a Parallels VM? You'd need an external drive or a network share to temporarily store the image.

    If you're still interested in using Transporter in the manner described above, here's a few things you'll want to know:

    Yes, the junction tool only works on NTFS. You could do an in-place conversion from FAT32 to NTFS by running 'convert c: /FS:NTFS' at the Windows command prompt. Since FAT is so prone to corruption, you'd first want to run 'chkdsk /f' to clean up any problems. In fact, that command should be run repeatedly until no more errors are found, since it doesn't always get them all on one pass (although it usually does).

    And I agree that the apparently hard-coded Windows folder name represents bad application design, but as a developer myself, I can see how something like this could slip through the cracks.

    Babelfishka said that he first looked into modifying the .exe using a Hex editor (Google it - there are many free ones out there). That approach would only work if your Windows folder name has the same number of characters as 'WINNT' or 'WINDOWS'. His didn't, so he went the Junction route.

    Messing with binary files isn't for the faint of heart and one little misstep can render the binary useless (usu. not a problem if you make a copy first). Having said that, string replacement in binary files is among the safer modifications that one can make. The main caveat is that the replacement string must have the same number of characters as the string being replaced. I suppose you could also substitute in a string of fewer characters, padding 'empty' bytes with null characters (\0).

    Either way, make sure that you fully back up and/or image your machine before trying any of this. We have only one data point (Babelfishka) so far which represents success using these techniques. Your mileage may vary...
     
  18. Rachel Faith

    Rachel Faith Hunter

    Messages:
    234
    I have never used Acronis.... Tell me more. I have always used Ghost or Partition Magic for images, but those are not hdd files and with the right drivers etc like what Transporter does.

    I have a 20 GB drive with about 1 gig free and its an OLD OLD Drive, convert to NTFS would be risky which is WHY I wanted to make a working hdd image NOW.

    Its WINDOWS one letter more... I already looked at it in Hexedit and that wont work either.

    My real issue now is I am fast becoming one of the "Parallels doesnt give a crap" crowd. I guess it was easy to be nice when everything worked, but my first issue and their support is AWOL.

    Thanks for your help tho..
     
  19. mmischke

    mmischke Hunter

    Messages:
    155
    With only 1 GB free, the convert tool probably wouldn't even try to perform the conversion. It needs a bit of scratch space to do its work.

    Acronis TrueImage is pretty much like Ghost, but, IMHO, a bit easier to use. If you choose to go this route, you won't be using Transporter at all. The steps to migrate your existing machine would be:

    1) Install TI on it and create a backup image on an external drive.

    2) Create an Acronis boot CD (it's one of the menu options).

    3) Connect the external drive w/the TI backup image on it to your Mac.

    4) Create a Parallels VM, but boot it up using the Acronis boot CD.

    5) Use the TI wizard to restore the image to your new VM.

    I see no reason why this wouldn't work, but I haven't tried it, personally. I've successfully used TI in similar scenarios. Also, you may have to reactivate your copy of Windows.
     
  20. Rachel Faith

    Rachel Faith Hunter

    Messages:
    234
    Yeah Ive been on the phone with M$ more times than I'd like playing THAT game... LOL

    So let me just get one small detail into my head...

    ATI makes hdd images? Its not like PM or PL which make exact copies for booting on normal PCs?

    And lastly, THIS is the kinda thing the PT should test and let us know or work in a tool for it... there are dozens of image/back up/ghosting aps, so the code is all well known and would show that they actually THOUGHT about the process a little...

    I gotta say I am FAST transmorphing from Fangirl to HATER...
     

Share This Page