Fixing Problems With VMWare & SofTest
I wasted three hours yesterday fixing this problem, so I thought I’d share the solution, in case anyone else consults The Oracle and also fails to find the easy fix. Also, I’d check the General Tips (below) and install whatever other software you need before installing SofTest (see the long discussion of the problem at the end of this post for the reasons why).
The Goal: Examsoft’s SofTest is the software used by the CA Bar to lock down laptops while taking the Bar Exam. It must be installed before applicants can take the test. SofTest is Windows-only, so for Mac users to use the software, Windows must be installed via Boot Camp, and then SofTest can be installed in the Windows partition.
The Problem (short version): You’ve installed but cannot run SofTest because it says you’ve installed VMWare software… even though you already uninstalled VMWare. If you currently or in the past have used VMWare, you won’t be able to run SofTest even after uninstalling VMWare, unless you take these extra steps.
Email VMWare For A Fix: According to MacLawStudents, ExamSoft does offer a fix, though they haven’t made it available through their site (and didn’t offer it to me when I called). If you have the time, you might want to try this first. If you’re comfortable finding and deleting files on your own, however, I’d read on to The Solution below.
Through research, we have found that the VMWare Tools package deployed by VMWare Fusion does not completely remove all components when removed via Add/Remove programs.
We have created a simple utility that will prompt the user to uninstall VMWare Tools and will also remove the items left behind that caused the problem with SofTest. Users of SofTest may contact support via phone, chat or email to request the fix.
The Easy, Quick Solution (found here):
- Using the VMWare Fusion CD, uninstall Fusion from OS X. It will still leave your Virtual Machines in place, so don’t worry if you’ve already installed Linux or anything like that.
- Boot into Windows by shutting off your computer and then holding down the ALT/Option key when you reboot. On reboot, Boot Camp will give you the option to boot into OS X or Windows. Choose Windows.
- Go to Start (or the Windows icon at the bottom-left, if you’re in Vista) » Control Panel. Then choose Uninstall Programs. Select VMWare Tools from the list, and click the Uninstall button.
- You’d think you’re done, but you’d be wrong. Instead, here’s what you need to do. Go to Start and then to Search. You’ll need to search for and delete three files. Evidently SofTest checks for the presence of the following files:
- vms_fb.dll
- vmx_fb.dll
- vmx_svga.sys
These are usually found in the following locations, but you may still want to perform a search for them as well:
- C:WINDOWSsystem32vms_fb.dll
- C:WINDOWSsystem32vmx_fb.dll
- C:WINDOWSsystem32driversvmx_svga.sys
(If your search doesn’t show any of these files, first make sure that you’re searching Everywhere on your computer. Then, go to Advanced Search and make sure the checkbox is clicked to allow searching for Hidden or System files.)
- Search for and delete these files if found on the machine. These files are drivers used by VM Ware and are usually left behind after uninstalling VM Ware. [Note: I only found two of the three files left on my machine. Deleting them fixed the problem.]
- That’s it! You should now be able to run SofTest with no problem. Double-click SofTest and make with the Registration process. Best of luck on the Bar Exam!
Other General Tips:
- Boot into Windows by default: In Windows, on the bottom-right corner of the screen is a gray icon for Boot Camp (over near the Network, Battery, Volume icons and the time). Click this icon and choose Boot Camp Control Panel. There, set the default OS to Windows. This will alleviate any potential problems when SofTest reboots your system to send in your completed exam. You can always switch this back later, to reboot by default in OS X after the Exam is over. In the meantime, you can still reboot while holding the ALT key and choose OS X.
- Right-click: Your laptop only has one mouse button, but Windows requires that you right-click a lot. There are a couple ways to do this. First, you can hold two fingers on the trackpad and then click the mouse button, which will right-click in Windows. Second, you can install free software that will let you right-click. Third, you can always use an external mouse. Wireless optical mice are cheap nowadays – check one of the deal sites to find bargains.
- Anti-virus: You’re not in OS X anymore, so this Windows side of your machine can pick up viruses without you doing anything but connecting to the Internet. Viruses won’t hurt your OS X system, but why worry about any other problems if you don’t need to. There are lots of paid options available, and your school may offer a free license for Norton AntiVirus. If so, great. Install it. If not, a friend of mine recommended AVG Anti-Virus, which is free and has worked great so far. I couldn’t be happier.
- Alt-menus: In Windows, if you see an underlined letter in a menu item, that means you can hold the ALT key while hitting that letter to go straight to that menu item, without using the mouse. Great way to navigate through menus. Click here for a full list of Windows key commands.
The Problem (long version): SofTest takes a snapshot of your system when you first attempt to run it. This allows SofTest to make sure that you don’t install any ways to cheat and get around its security after you’ve installed and registered. SofTest also looks for software on your hard drive that could be used to allow cheating. If it detects any of this software, SofTest will tell you that it cannot run, and will shut down.
One of the programs SofTest looks for as a potential avenue for cheating is VMWare’s Fusion. Fusion allows Mac Users to run a virtual Windows OS inside of OS X. Fusion also allows a user who has OS X and Windows installed fully on their computer (via Boot Camp or Fusion) to access files across both OSes.
Of course, were a person to run Windows as a virtual machine, they would still have full access to the rest of their files and could, therefore, theoretically cheat like hell on the Bar Exam. And no one wants that. So, of course, ExamSoft is right to ensure that applicants can’t cheat.
The problem, however, is how SofTest goes about checking for cheaters.
First, once you’re set up, you can’t really do much of anything to your system without causing potential conflicts. If you need to Defrag your hard drive, install any third party software, or run any other sort of maintenance, I’d do that before installing SofTest. This might be a necessary inconvenience, but it’s still a hassle for the students caused by ExamSoft’s need to protect against never-before-seen cheats and exploits.
Second, and the cause of the VMWare problem, is that ExamSoft seems to have been lazy in going about checking for VMWare installs. SofTest just tests for a few files, none of which are crucial for VMWare to work, in determining that VMWare Fusion is installed. Worse, instead of checking for multiple variables and components that would be necessary for a working version of VMWare’s software to run, it just does a spot test and then shuts down. I’d fully deleted VMWare products from my machine and there was no possible way for me to cheat, but because SofTest found a couple of random files, it determined that I did have the software installed.
Now, this never would have been a problem had VMWare Tools uninstalled properly. But it doesn’t. Instead of being fully removed from all aspects of Windows, the Windows uninstaller only gets rid of the core files. It doesn’t clear out the registry and it doesn’t clear out everything that VMWare had installed on my system. I put the blame here on both VMWare and Windows. VMWare for not providing an Uninstall tool for Fusion, downloadable via its support website, and Windows for using an architecture that allows and even encourages developers to put pieces of software all over the place during install, without a common naming scheme. I could have searched till the cows came home, but had someone not posted the solution, I’d never have solved the problem because it was impossible for me to find the random files that were gumming up the works.
Worst of all, however, is the terrible support provided by both ExamSoft and VMWare.
I checked both sites and Google before attempting to get personal help. Then I tried three different service tickets with ExamSoft. Two were closed without an answer, the third sent back a form letter response, complete with text from the FAQ. Next I tried Online Chat support with ExamSoft. No answer, over multiple days. Finally (after Googling to find it), I called ExamSoft tech support. Fifteen minutes on hold and I spoke to Charles, who said he didn’t have a fix and that I should call VMWare.*
So it was on to VMWare. I called their tech support line, but they don’t offer phone support for Fusion. I searched around their FAQ and Knowledge Base, but no search terms yielded useful solutions. Finally, a Google search with different search terms led to a solution…
Where was the solution? On VMWare’s Support site … posted by a good samaritan customer who had received the answer via email from ExamSoft!
I know I’m not alone in running into this problem. How do both VMWare and ExamSoft not have this solution listed and easy to find in their Knowledge Bases or FAQs?! Why does ExamSoft not have the answer ready if users call in for help? Why doesn’t the CA Bar site have this answer listed in their FAQ? So simple. So frustrating!
The End: If you’ve made it this far, thanks for reading my rant. I hope this post has proved useful.
FWIW, I had no problem installing with Parallels already installed. I get the impression the SofTest people are not overly savvy. It makes me a bit uncomfortable using the Mac to take this thing.
As for right-clicking… I always turn off the multi-touch features on my mousepad, so I had no idea about two fingers. However, ctrl-click is deeply ingrained in my head, and seems easier than the other alternatives, but for an external pointer.