Knowledge Base Solution


SUMMARY:Errors relating to MFC42.DLL

PROBLEM:

I've Upgraded Replic-Action and now the RA Server doesn't start or generates an error that references MFC42.DLL

SOLUTION:

mfc42.dll

MFC42.DLL is a system DLL provided by Microsoft and is part of the Microsoft Foundation Classes*. MFC42.DLL has been updated by Microsoft for support of Visual C++ 6.0 applications and the new DLL has been included in the Replic-Action distribution software.

Unfortunately, since MFC42.DLL is a system file, it could be locked by the OS and/or applications/services when the RA installation process takes place. When this happens, the existing DLL is not upgraded, nor does a warning occur during the installation process. In order to replace an "in use file", follow this procedure:

Windows 2000 or later

Win2K already has support for Visual C++ 6.0 apps. No modification should be nessasary. If are running into this problem on a Win2K system, follow the steps for Windows NT below.

Windows NT

There are a number of ways that an in use file might be replaced in NT/2000.

Method #1:

The first technique involves trying to rename the file without rebooting. You will have to stop all applications (including apps in the system tray) and as many services as possible before attempting this. If you are unable to get past step 1, try another method listed below.
  1. Rename the exisitng MFC42.DLL in the WINDOWS\SYSTEM32 directory.
  2. Take the new MFC42.DLL and drop it into the same directory.
  3. Reboot into Windows
  4. Run the Replic-Action Server.

Method #2:

Install Service Pack 5 or later for NT 4. The SP will contain the latest version of MFC42.DLL.

Method #3:

Replace currently locked files with Inuse.exe. To install inuse.exe (http://support.microsoft.com/?kbid=228930).

Method #4:

You can automate this procedure by following the following advice available at Windows NT Registry Hacks (http://www.jsifaq.com/SUBE/TIP2000/rh2001.htm)



Win9x
  1. Rename the new MFC42.DLL and place it in the WINDOWS\SYSTEM directory.
  2. Reboot the computer into DOS mode.
  3. Navigate to the C:\WINDOWS\SYSTEM directory (cd c:\windows\system).
  4. Rename the existing MFC42.DLL (ren mfc42.dll mfc42.old).
  5. Rename the new MFC42 file to MFC42.DLL (ren mfc42.new mfc42.dll).
  6. Reboot into Windows
  7. Run the Replic-Action Server.



* See http://msdn.microsoft.com/library/devprods/vs6/visualc/vcmfc/vcmfchm.htm or http://msdn.microsoft.com/library/devprods/vs6/visualc/vcmfc/_mfc_about_the_microsoft_foundation_classes.htm for further information relating to MFC

Article # EJ01405198




Last modified on 11/09/2005



Copyright © CASAHL Technology, Inc. All rights reserved.




Eric Johnson/Casahl Technologies Inc; Neeraj Panjwani/Casahl Technologies Inc; Patrick Lee/Casahl Technologies Inc; Wesley Wong/Casahl Technologies Inc