Friday, November 19, 2010

Application Packaging

Uniphi 1.3.02
This one was a crazy program to package. Firstly the upgrade doesnt work well from the previous version, and even getting it to work stand alone was difficult when running on Windows 7. To cut a long story short, it was determined that Uniphi would crash when trying to execute the program- but only if Office is installed.

To troubleshoot the issue, I installed Office and Uniphi on a single machine and ran up process monitor. Filtering through 65000 lines of junk is not fun. So jumpstarted the process by searching for the term "Office" which turned up a single instance where Uniphi was trying to start a program under the OFFICE14 folder in common files. The program turned out to be the Microsoft Office XML viewer. Also going back in the processes prior to this, I could see that it was using the registry HKEY_CLASSES_ROOT to determine the XML program to run. This led to following the different trails of CLSIDs until I finally come to an "text/xml" key under HKEY_CLASSES_ROOT\PROTOCOLS\Filter.
This looked interesting. Anything that is filtering the XML could cause problems! I removed this key and this time the program cranked up with no errors!
It turns out that Office installs an XML MIME filter that runs even for custom programs (such as uniphi) and it is this filtering that Uniphi has a problem with.
You'd think people would test their programs against a computer where other common programs are installed.

No comments:

Post a Comment