I have a workstation that occasionally has the following error when starting Solidworks.
I've seen these types of weird errors before. The next time it happens, just try deleting "HKEY_CURRENT_USER\Software\Solidworks\Solidworks 2006 (or whatever version). Solidworks will recreate this key the next time it's launched. It will, however, return to the default settings. Solidworks pretty much re-writes this key when you exit, or shut down the computer. If the machine has been "on" for long periods, the physical memory becomes very fragmented. This is a windows thing more than a SW one. Fragmented memory results in a greater probability of error when SW updates the registry. You could also have some marginal memory which raises the possibility of error even more. I've been observing this phenomenon ever since Win2K. NT4 never did this (at least to us). Now, all of our CAD workstations use high end motherboards with ECC memory. This helped allot, shutting our machines down at night, as well, virtually eliminated these occurrences. Warning !!!! Don't mess with the registry unless your very familiar with it. If your not, find somebody that is to help. Stay out of "HKEY_LOCAL_MACHINE" completely unless your VERY experienced. HTH Mark
Well I sniffed around a bit on this and it is an odd error. I've never heard of it before and that is somewhat rare because I've seen a lot of computer errors in my life. From poking around on microsoft online help as well as some other sites it appears that some sort of file corruption is going on. So now the question is, why the corruption? It appears that the "Aye Ess", not "is", which references user32.dll causes your problems. User32.dll is actually a system file and not even a SolidWorks file. So you got some corruption going on with your windows installation. Of course that now begs the question, how come doing a SolidWorks repair causes user32.dll to start working again? I'm no computer programmer but I at least have a theory. Perhaps SolidWorks modifies user32.dll. Perhaps you have another application installed (say antivirus) that either modifies user32.dll or detects the changes made to user32.dll and restores a "good" version. So now you have two apps fighting with eachother. All right, we've gotten this far based on lots of assumptions, so let's start testing them. Go to c:\windows\system32 and find your user32.dll. Write down the last modified date and place it somewhere safe. Also copy the file to a backup directory somewheres. Next time you run into the error take a look at the modified date on user32.dll. If it has changed then you got yourself a problem! Danger disclaimer: Don't try this at home if you don't fix computers. Try restoring the user32.dll file (will require booting into a recovery environment) and see if it fixes the problem. If so then now all you have to do is figure out what is changing the file on you. My two big guesses would be Antivirus or Windows Update. MM had mentioned registry corruption, but I find this pretty unlikely. If you want to try it anyways then back up your settings from start -> solidworks -> tools -> backup settings. Then delete the HKCU -> Software -> SolidWorks directory. Run SW to restore default settings. Quit SW. Finally restore your personal settings. Really doubt this will solve your problem though. In fact running ECC memory, high end mobos, etc shouldn't make a lick of difference. If you are getting registry corruption then you have a BIG problem, probably with hardware failure, virus, or spyware junk. Hundreds of millions of computers get by everyday without the help of ECC and server mobos. Hope this helps,
Just a thought for those that don't want to delete/modify the CU key - you can use SolidWorks Rx to start SW in a clean mode. When you have the first Rx screen up, go to the bottom and click on the link that says Click here to launch SolidWorks while bypassing the Tools/Options settings. This will do the same thing without having to go into the registry. WT
Solidworks Rx won't run when this problem is present. It just hangs and never displays test results. The entry point error is not always the same, but it is always in the same user32.dll file.
The following may not have any relevance for your specific problem; however, it may be helpful to consider the integrity of the filespace on your hard drive(s). There's a possibility that user32.dll (a Windows system file) could be paged to the disk with other system files during the operating system's launch. If, just coincidentally, there's a bad sector in the area of the drive where the file gets written, then corruption is possible. I'll never forget the first time I installed SolidWorks years ago and eagerly attempted to launch it. Each and every try resulted in the program beginning to start up and then just hanging... The solution turned out to be running CHKDSK to verify, repair (if possible) or mark as "bad" the disk clusters/sectors. There had been a bad sector in the TEMP directory so, as SolidWorks wrote its files there, it would repeatedly stumble as it hit the marginal disk space. Per O. Hoel