如何自己写程序删除系统已安装的字体,我安装可以,但是删除就不行.没有任何反应.(200分)

  • 主题发起人 主题发起人 softde
  • 开始时间 开始时间
S

softde

Unregistered / Unconfirmed
GUEST, unregistred user!
安装字体文件: <br>CopyFile('d:/update/AAA.ttf', 'C:/WINDOWS/FONTS/AAA.ttf', b);<br>&nbsp;AddFontResource('C:/WINDOWS/FONTS/AAA.ttf');<br>&nbsp;SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);<br>这个安装的是可以的.但是删除这个字体就不行.不知道为什么?<br><br>删除字体文件:<br>&nbsp;deletefile('C:/WINDOWS/FONTS/AAA.ttf');<br>&nbsp;removeFontResource(pchar('C:/WINDOWS/FONTS/AAA.ttf'));<br>&nbsp;SendMessage(HWND_BROADCAST,WM_FONTCHANGE, 0, 0); //发送字体改变消息
 
应该这样吧:<br>&nbsp;removeFontResource(pchar('C:/WINDOWS/FONTS/AAA.ttf'));<br>&nbsp;SendMessage(HWND_BROADCAST,WM_FONTCHANGE, 0, 0); //发送字体改变消息<br>&nbsp;deletefile('C:/WINDOWS/FONTS/AAA.ttf');<br>
 
我都试了的,还是不行。<br>大家快帮我看看吧。谢谢了!!!
 
字体的删除,只要字体文档删除就行,在操作系统中就是这样做的,只要你确定字体文件删除了,一定可以的
 
可是我用deletefile('C:/WINDOWS/FONTS/AAA.ttf');<br>这个语句也不行啊。
 
deletefile('C:/WINDOWS/FONTS/AAA.ttf');<br>正在使用的字体不能删除!<br>
 
那个字体我没有使用啊。。。
 
删除字体后如果字体正在被某一个程序使用,则系统字体表不会发生变化, 一直到使用该字体的全部进程释放后才改变.<br><br>Windows/Fonts目录下的字体每次启动机器是自动装入系统的,用RemoveFontResourde函数好像不会把这个目录下的字体文件删除<br>
 
呵呵呵,你没有用,但是系统中的字体已经把它装入了,
 
如果字體沒有使用這樣就可以了<br>removeFontResource('D:/WINNT/Fonts/century.ttf');<br>SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);
 
后退
顶部