Delphi2010启动报错cannot create file "C:Users\ADMINI~1\AppDat...\EditorLineEnds.ttr"

由于在Windows安装了最近的更新(KB2982791, KB2970228)后,Delphi的IDE需要创建的一个文件%TEMP%\EditorLineEnds.ttr会被系统锁定,导致除非重新启动操作系统,否则Delphi 8~2010无法启动两次。

Delphi的IDE在启动时提取了一个字体资源到%TEMP%\EditorLineEnds.ttr,然后使用AddFontResource函数将其加载,并且在IDE的析构代码中释放它。但在最近的Windows更新中,由于一些安全方面的原因,微软限制了RemoveFontResource函数解锁这个文件。如果第二次启动IDE,提取字体资源的操作会失败并导致IDE被异常终止。

解决方法:

1、网上下载补丁(转载)

http://blog.csdn.net/poolord/article/details/38965861

2、修改EditorLineEnds.ttr名字(每次启动2010前都要执行下面Delphi.bat)

创建一个Delphi.bat 文件内容如下:

@echo off
set a=C:\Users\Administrator\AppData\Local\Temp\EditorLineEnds.ttr
set aa=%time%
set bb=%aa:~0,2%
set cc=%aa:~3,2%
set dd=%aa:~6,2%
set ee=%date%
set ff=%ee:~0,4%
set gg=%ee:~5,2%
set hh=%ee:~8,2%
set value=EditorLineEnds%ff%%gg%%hh%_%bb%%cc%%dd%
ren "%a%" "%value%.ttr"

 

posted on 2015-04-02 15:53  LuckFarmer  阅读(2387)  评论(0编辑  收藏  举报

导航