Trying to install the Palm Pre / Mojo / WebOS SDK on my computer running Windows 7 RC. As reported here, I experienced the problem of the installer failing silently towards the end without an error message, performing a rollback. I have no idea how long it takes Palm or even if they are planning on fixing this in the near future, but a look into Windows event log shows that the silent failure of the installer is caused by a Windows Update package for the User Mode Driver Framework which the SDK installer tries to install but which apparently fails to install on Windows 7.
So my solution to the problem is simply not to make the SDK installer try to install this Windows Update Package. Since it’s only an update, it’s probably not crucial to running the SDK. So here’s a 15 min. procedure how to edit the Mojo SDK installer program based on this former blog post of mine, so that it skips the Windows Update package during install.
First of all two preliminary steps to install the tools we need:
- Download and install the Microsoft Windows SDK which contains a tool called Orca which we need for the procedure.
(You don’t have to install the whole SDK! You only need to select Developer Tools – Windows Development Tools during install)
- After installing this, go to C:\Program Files\Microsoft SDKs\Windows\v7.0\Bin and run Orca.MSI in this folder, which install the actual Orca tool.
Update: Several people have mentioned this link, where you can download Orca directly without having to download and install the full Microsoft Windows SDK. You can get Orca from there and thus skip step 1.
Now the procedure to actually alter the Palm Mojo SDK installer:
- Open the folder to which you downloaded the Mojo SDK installer (Palm_Mojo_SDK-Win-1.1.0-sdk62-build08.exe)
- Hit “Windows + R” on your keyboard (or click Start and Run) to bring up the Windows Run dialog and enter %TEMP%, hit enter.
- Now arrange the two folders next to each other so you can see the both at the same time, then run Palm_Mojo_SDK-Win-1.1.0-sdk62-build08.exe.
In your Temp folder you see all kind of weird files and folders, the important thing is, that once you run the installer above, a new folder with a random name starting and ending with brackets and consisting of lots of numbers appears.
There may already have been similar folders in your Temp folder before you ran the installer, so try to locate the one that was created the moment you ran the installer.
- Initially this folder contains nothing but three *.ini files, yet once the first step of the installer is completed a new file is created there, named Palm SDK.msi. Copy this file to the folder where Palm_Mojo_SDK-Win-1.1.0-sdk62-build08.exe is located.
Once the copy process is complete, cancel the installer.
- Now right-click the copied file and select Edit with Orca.
- In Orca, select InstallExecuteSequence in the left pane, the scroll to the very bottom in the right pane and select installumdf.08B8BE2B_9174_49D1_84B0_40324FD7DE34. Right-click and select Drop Row.
This removes the command to execute the Windows Update package which causes the installer to fail.
- Now we’re almost done. Hit Save and exit Orca.
- Run Palm SDK.msi and just follow the wizard. The SDK should install fine now without any problems or failures.
A tiny tip at last:
Once the SDK is installed, if you want to run the Palm Pre emulator as suggested by Palm, right-click the application link and select Run as Administrator or if it still doesn’t work Troubleshoot compatibility and then select Windows XP SP2 mode. When I first just clicked the emulator link, nothing happend, no program appeared, … I don’t quite remember which one did the trick, running it as Administrator or in compatibility mode, but one of those finally made it work.
Some useful links regarding the SDK:
- How to operate / control the emulator, keyboard shortcuts, etc.
- Instructions how to install the Eclipse plug-ins for development
Important: The Eclipse plug-in update link given on the site doesn’t work. It’s and https link. Use this link (the same link with http) and it should work.
Have fun with the SDK!