Tuesday, December 14, 2010

OpenOffice and Java: A case of VBRUNs?

There was a time when most software on Windows was written in Visual Basic. Some programs or development houses tried to hide it or make the lineage obscure. And why not? The image they wanted to project was that they devoted a quality programmers and time in crafting complex but useful code. Not that they were using the same tools as the casual developer or the one-man operation who sometimes wrote shareware. But one look under the hood and the evidence was clear. Look for a file called VBRUN.dll and there was the smoking gun pointing to Visual Basic. This is jack-of-all-trades dll. It was so tied in to VB, developers packaged it together even though they complied the libraries into the final program instead of linking the libraries. Just in case one of those libraries called it.
Now VBrun had a peculiar thing about it. It was incompatible across different versions of VB. So MS named the VRUN file according to version of VB. Soon, it was common to have 2 or 3 version of VBRUN.dll lying around in the hard disk somewhere used by 2 or 3 programs each. Some poorly written and compiled programs counldn't even tell the difference between versions. Remember those who tried to hide the fact they were running VB? They tried renaming VBRUN.DLL and installing it during the first time but the program reverted back to looking for VBRUN.DLL after an update, causing all sorts of havoc.
And you even had to put in a particular directory or else all those programs can't find it.
OpenOffice has or is trying to build a similar relationship with Java. The problems I have when Java or some libraries that OO uses is updated is sort of a deja vu but not exactly. Somethings breaks after the update. I used an OO extensions] called OpenCards to create flashcards from OO Impress files. After an update, it broke. I could use up to a certain number of cards and then it'll crash. Fortunately, OO has a solution. Go to Tools --> Opton --> Java. You can select the version of Java OO uses based on what is installed. If there are no entries press Add and then Cancel and the list of installed, detected Java versions will appear. Choose an older one and you are good to go.

No comments:

Post a Comment

Recently Popular