Xiao Peng

My personal blog moves to xiaopeng.me , blogs about design patterns will be synced to here.
肖鹏,ThoughtWorks资深咨询师,目前关注于架构模式、敏捷软件开发等领域,并致力于软件开发最佳实践的推广和应用。
多次为国内大型企业敏捷组织转型提供咨询和培训服务,在大型团队持续集成方面具有丰富的经验。
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

碰巧解决'Ordinal Not Found'问题

Posted on 2009-01-08 22:07  勇敢的鸵鸟  阅读(2904)  评论(0编辑  收藏  举报

今天启动Maxthon报错:Ordinal Not Found。

思索之,盖前日Review他人代码,为测试运行下MFC42D.dll从网上。

取System32下的MFC42.dll与MFC42u.dll,置于Maxthon目录中,解之。

幸甚,遂记之!

Google之。

同样的现象可能有两种原因,对应两种解决方案。

From: http://www.cryer.co.uk/brian/windows/trbl_nt_ordinalcnblm.htm

Cause:

The version of the ‘MFC42.DLL’ file on the workstation is older than the version for which the executable was built for. (The workstation on which the application was compiled contained a later version of ‘MFC42.DLL’.

Remedy:

The solution is to locate a newer version of ‘MFC42.DLL’ (possibly from the machine that compiled the application) and to copy it to the ‘WINNT\SYSTEM32’ directory of the workstation attempting to run the application.

Windows will typically not normally permit a newer version of the file to be copied into the ‘WINNT\SYSTEM32’ directory because it reports that the file is in use. If this is the case then to replace the file with a new one:

  1. Start a new command session.

  2. Type the following:

cd WINNT\System32
rename MFC42.DLL MFC42.OLD
copy /r
<newer-version>\MFC42.DLL .

  1. Reboot the workstation.

============a Fen Ge Xian==============================

From: http://www.techtalkz.com/software-troubleshooting/439362-ordinal-6880-could-not-located-dll-mfc42-dll.html

It seems some of the software you installed created an obsolete version of the MFC42.DLL and registered it. If you have DivX installed (it appears to have some issues with this dll)b in your machine uninstall it and reregister the original MFC32.DLL :

1. Go to Start > Run and type in

Quote:
regsvr32 %SystemRoot%\System32\MFC42.DLL

2. Now Press Enter and click Ok in the messagebox.

3. Reboot and Check if the problem persists.