win7下安装BCB6后,windows\system32下有没有BORLNDMM.DLL?

zzhong2 2011-07-04 09:07:42
win7下安装BCB6后,Run程序时报找不到BORLNDMM.DLL的错
查看windows\system32下确实没有BORLNDMM.DLL
把Use Dynamic RTL的勾去掉可以正常运行程序
我在windows server 2008(32位)上安装BCB6.0就一切正常

各位高人有没有遇到过相同的情况
...全文
1155 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzhong2 2012-11-13
  • 打赏
  • 举报
回复
现在到联想官网下载并更新T420的最新BIOS驱动和显卡驱动后,上述问题可以得到解决. T430都出来了,不知道支不支持Windows8的触屏功能
zzhong2 2012-01-13
  • 打赏
  • 举报
回复
Lenovo把ThinkPad给糟践了
悠云guo 2012-01-02
  • 打赏
  • 举报
回复
不得不说,双切换对程序员影响忒大。我的T420开启了双切换,也是无法找到java.exe了。除了cmd能正确获得path。其他得到的都是
C:\Windows\system32\NV;.;

这个问题困扰了很久,昨晚特地花了一个晚上解决了这个事情。
https://hellyguo.wordpress.com/2012/01/01/path%e8%b7%af%e5%be%84%e8%be%93%e5%87%ba%e5%8f%98%e4%b8%bacwindowssystem32nv/
==============
我的计算机是Lenovo的T420,有两块显卡:Intel HD和NV 4200。刚装好系统时,由于我顺手禁用了NV的几个服务。所以,一直采用的显卡是Intel HD。
前几天,我打算玩游戏,打开了NV的服务后,噩梦开始了。CMD下的PATH输出正常,但在其他程序中,PATH输出就不正常,输出”PATH=C:\Windows\system32\NV;.;”。
让我们来看下这个文件夹下有什么:

2011.12.30 09:35 .
2011.12.30 09:35 ..
2011.04.01 22:00 15,039,080 ig4icd32.dll
2011.04.01 22:00 644,712 igd10umd32.dll
2011.04.01 22:00 644,712 igdumdx32.dll

ig4icd32.dll/igd10umd32.dll/igdumdx32.dll这几个文件,在Intel HD的驱动中也存在。猜想是,NV为实现双显卡切换,重写了与Intel HD驱动同名的DLL,来调用NV自身的DLL。
为此目的,NV必须将这些DLL库放在Intel HD的DLL库前优先加载。最简单的方法是将这些DLL放在PATH查询路径的最前面,即将”C:\Windows\system32\NV”放在PATH变量的最前面。
而实现此功能的程序,存在BUG,没有实现将”C:\Windows\system32\NV”放于PATH变量最前面,而是实现了将此路径叠加当前路径,覆盖PATH。也就是”PATH=C:\Windows\system32\NV;.;”。
于是,我再次禁用了NV的服务。重启后,PATH就正常了。
==============
唉,我要是早看到这帖子,我就不需要自己花力气了,禁用NV分分钟的事情。
我是选择固定使用集显了,反正还能延长电池续航。
zzhong2 2011-07-07
  • 打赏
  • 举报
回复
找到最终原因:居然是我笔记本双显卡切换带来的问题,我的笔记本是ThinkPad T420 4180J4C 酷睿2代CPU内集成一个省电的intel显卡,还有一个高性能的Nvidia NVS 4200M独立显卡,如果在BIOS里设死用独立显卡或intel显卡,CB和oracle10读环境变量就没问题,如果在BIOS里设成自动优化选择显卡,CB和oracle10读长的Path环境变量就会有上面的问题
我不懂电脑 2011-07-06
  • 打赏
  • 举报
回复
祝贺啊
laowang2 2011-07-06
  • 打赏
  • 举报
回复
顶,我还没发现这个问题。
zzhong2 2011-07-06
  • 打赏
  • 举报
回复
查到另外一个原因,因为觉得Win7宋体字太难看,我把Win7的宋体换成了XP的宋体字体Windows\Fonts\simsun.ttc,今天我把字体换回Win7的宋体,CB的path值又正常了。
之后我又把Win7的宋体字体换成XP的宋体字体,CB的path值仍然正常,我把系统变量Path的值改得很长,CB2010仍能正确读取Path内容
zzhong2 2011-07-06
  • 打赏
  • 举报
回复
重起了几次电脑后CB又不能正确读取path系统变量了,读回来的Path系统变量又变成“C:\windows\system32\NV;.;”了,换回Win7的宋体字后,CB仍不能正确读取Path系统变量,而且Oracle10G的客户端也因为不能正确读取环境变量而无法运行,报找不到oracl10.dll,将Path系统变量删短后一切正常,郁闷啊
缘中人 2011-07-05
  • 打赏
  • 举报
回复
cb的路径看起来也没少呀
zzhong2 2011-07-05
  • 打赏
  • 举报
回复
终于查到原因了,但还没找到解决方法
我又重装了win7系统,装上BCB6.0后一切正常,装完office后BCB6.0也正常,一直装到SQL Server 2008R2,装完后BCB6.0就出现了上面的问题,C++Builder2010也出现两样的问题,后来上网海查,问题出在环境变量PATH上,SQL Server 2008R2在Path变量上追加了SQL的一些路径,之后BCB就隔屁了,将SQL的路径从Path变量中去掉,BCB就恢复正常:
装SQL之前的Path:D:\Program Files\Embarcadero\RAD Studio\7.0\bin;C:\Users\Public\Documents\RAD Studio\7.0\Bpl;D:\PROGRA~1\Borland\CBUILD~1\Bin;D:\PROGRA~1\Borland\CBUILD~1\Projects\Bpl;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Common Files\Thunder Network\KanKan\Codecs;C:\Program Files\Intel\Services\IPT\

装SQL之后的Path:D:\Program Files\Embarcadero\RAD Studio\7.0\bin;C:\Users\Public\Documents\RAD Studio\7.0\Bpl;D:\PROGRA~1\Borland\CBUILD~1\Bin;D:\PROGRA~1\Borland\CBUILD~1\Projects\Bpl;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Common Files\Thunder Network\KanKan\Codecs;C:\Program Files\Intel\Services\IPT\;D:\Program Files\Microsoft SQL Server\100\Tools\Binn\;D:\Program Files\Microsoft SQL Server\100\DTS\Binn\;D:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\

有知道解决方法的大侠帮出出主意,多谢了
zzhong2 2011-07-05
  • 打赏
  • 举报
回复
终于找到解决方法了:
是由于BCB读不全系统变量Path的内容造成的
这应该是C++Builder6.0 和2010的一个BUG, 当win7(XP和Server2008下也有这种情况,相对较轻)的系统环境变量Path的长度较长时,如上例(超过408个字节)时,BCB读取的系统环境变量就不正确了,变成了“C:\windows\system32\NV;.;”,造成勾上Use Dynamic RTL后运行程序就找不到Borlndmm.dll
解决方法:
BCB6->Tools->Environment Options->Environment Variables->System Variables->Path->Add Override 添加一个Override的Path变量,给这个Path变量赋正确的值后点确定即可
CB2010相应的操作在Tools->Options里
CppFile 2011-07-04
  • 打赏
  • 举报
回复
在这个文件夹吧
C:\Program Files\Borland\CBuilder6\Bin
system32下的确没有这个文件,在2003下也没有
缘中人 2011-07-04
  • 打赏
  • 举报
回复
我么用过,不知道,顶

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧