September 23, 1996
What's the big DLL? A fix would be appreciated
My columns of the past three weeks dealing with the problem of conflicting DLL files have roused interesting reactions from readers and a certain large software company in the 'burbs.
As you recall, the past three columns examined claims that as many as 90 percent of Windows 95 General Protection Faults may be traced to different versions of the same DLL. Some Windows applications (including Microsoft applications) require different release numbers of DLLs with the same name. Some applications install older DLLs over newer ones, causing all kinds of incompatibilities. And some utilities (including Microsoft Office Manager 4.x) prevent the setup routine of some applications from installing the newer DLLs that are needed; Windows displays no error message when this occurs.
The cure, to the extent that there is one, seems to be to search your drives for *.DLL files. Then make sure your Windows\System folder contains the only -- and most recent -- copy. (Right-click on the file name in Explorer, then choose Properties, then Version for a more reliable version check than looking at date stamps.) There are so many exceptions, however, that you shouldn't try this without reading my past three columns. (Back issues are available on-line or by calling the number in Reader Resources: [847] 647-7925.
Richard Wilkinson, in Provo, Utah, writes: "But after purging our system of problem DLLs, how do we prevent future inadvertent overwrites of newer files? And what happens if a newer DLL is overwritten in System but a copy was never stored in the original application's own directory? A search for DLLs would not reveal a more recent copy."
One solution, suggested by several readers, is to make a backup of your Windows and System folders before installing new software. (A full backup is an even better idea.) Compare the files that have changed after the install to look for older releases that somehow were copied over newer versions.
Wilkinson goes on: "What is the likelihood that one application requires an older DLL while another requires the newer version -- an apparently difficult-to-resolve conflict?"
There are cases, some of which I described in the previous columns, when Microsoft or other applications require an older version, not a newer version, of a DLL.
Edward Mendelson writes: "There are some programs out there that will operate only with Version 1.x of BWCC.DLL [Borland Windows Custom Controls DLL], not Version 2.0. It's important to rename (not delete) copies of BWCC.DLL found outside the Windows or System directory, then run the program [in that directory]. If the program doesn't work, rename BWCC.DLL back to its original name."
My calls to Microsoft Corp. added information. One source, a program manager for desktop systems, called to say: "I know we're planning some improvements." When I returned the call, my source added, "The problem you've outlined is real. We're working for a solution in the next release of Windows."
Unfortunately, two appointments to meet with the developers working on such a solution were canceled.
Another example of the corporate motto: "A computer on every desktop and in every home running Microsoft software, which we'll fix later." Anyone in Redmond care to tell me what the real story is?
Brian Livingston is the coauthor of the new Windows 95 Secrets and author of three other Windows books (IDG Books). Send tips to brian_livingston@infoworld.com or fax: (206) 282-1248.
Missed a column? Go back for more.
Copyright © 1996 by InfoWorld Publishing Company