首页
社区
课程
招聘
[分享]实用补丁:VC6 IDE字体设置增强
发表于: 2008-12-9 11:03 12798

[分享]实用补丁:VC6 IDE字体设置增强

2008-12-9 11:03
12798

VC6 IDE字体设置增强
by morning

VC6只枚举系统缺省字符集一致的字体,这导致选择字体时甚为不便.虽然说可以通过修改注册表,直接设置字体,但是总觉得有些遗憾,今天有点时间,就小小patch了一下.

函数原型:
int EnumFontFamilies(
  HDC hdc,                        // handle to DC
  LPCTSTR lpszFamily,             // font family
  FONTENUMPROC lpEnumFontFamProc, // callback function
  LPARAM lParam                   // additional data
);
根据PSDK的解释,显然lpszFamily=NULL时的枚举值得我们关注
用OD启动VC6,下断点:EnumFontFamilies
点击菜单 Tools->Options,切换到format标签,出现我们所需的中断
堆栈情况:
0013EC9C   50089D1F  /CALL to EnumFontFamiliesA from devshl.50089D19
0013ECA0   0101005B  |hDC = 0101005B
0013ECA4   00000000  |FamilyName = NULL
0013ECA8   50089D96  |CallbackFunc = devshl.#1969
0013ECAC   00D20720  \lParam = 00D20720

前往devshl.#1969


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 7
支持
分享
最新回复 (8)
雪    币: 367
活跃值: (20)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
2
devshl.dll 文件 太大,传不上来,大家自己修改吧
2008-12-9 11:08
0
雪    币: 225
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
很好,希望还能优化vc6的其他问题,如果所有相关的对话框字体改成宋体就好了~~
2008-12-9 13:19
0
雪    币: 367
活跃值: (20)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
4
这个是我自己用的一个VC6增强/补丁程序,适合VC6 SP6的IDE,论坛曾发过旧版,可以参考相关说明.

以前的帖子: http://bbs.pediy.com/showthread.php?t=68555&highlight=vcpkg

具体配置看压缩包里面吧
上传的附件:
2008-12-9 13:25
0
雪    币: 251
活跃值: (25)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
5
很好,学习了!
2008-12-9 14:08
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
4.2版更新太大,最好还是给个比较清晰的说明吧,否则也就你自己看的懂啥意思。
2008-12-11 20:01
0
雪    币: 367
活跃值: (20)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
7
50089DE0    24 01           and     al, 1  改成 xor al,al

参考 TEXTMETRIC  结构
2009-5-12 10:03
0
雪    币: 212
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
晕,要这么复杂吗?
VC6.0 的使用的字体,大小保存在注册表中,改一下就好了

象如下

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Format]

[HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Format\Calls Window]
"FontFace"="Courier"
"FontSize"=dword:0000000a
"Text"=hex:00,00,00,00,ff,ff,ff,00,13,01,b3,00
"Text Selection"=hex:ff,ff,ff,00,00,00,00,00,19,00,19,00
"Calls Highlight"=hex:00,00,00,00,00,ff,00,00,10,00,10,00
"Superceded code"=hex:80,80,80,00,ff,ff,ff,00,10,00,10,00

[HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Format\Disassembly Window]
"FontFace"="Courier"
"FontSize"=dword:0000000a
"Text"=hex:00,00,00,00,ff,ff,ff,00,13,01,b3,00
"Text Selection"=hex:ff,ff,ff,00,00,00,00,00,19,00,19,00
"Assembly Code"=hex:80,80,80,00,ff,ff,ff,00,10,00,10,00

[HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Format\Memory Window]
"FontFace"="Courier"
"FontSize"=dword:0000000a
"Text"=hex:00,00,00,00,ff,ff,ff,00,13,01,b3,00
"Text Selection"=hex:ff,ff,ff,00,00,00,00,00,19,00,19,00
"Memory Highlight"=hex:ff,00,00,00,ff,ff,ff,00,10,00,10,00

[HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Format\Output Window]
"FontFace"="Courier"
"FontSize"=dword:0000000a
"Text"=hex:00,00,00,00,ff,ff,ff,00,15,00,15,00
"Text Selection"=hex:ff,ff,ff,00,00,00,00,00,19,00,19,00
"Current Error/Tag"=hex:ff,ff,ff,00,00,00,80,00,55,00,55,00
"Bookmark"=hex:00,00,00,00,00,ff,ff,00,10,00,10,00

[HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Format\Registers Window]
"FontFace"="Courier"
"FontSize"=dword:0000000a
"Text"=hex:00,00,00,00,ff,ff,ff,00,13,01,b3,00
"Text Selection"=hex:ff,ff,ff,00,00,00,00,00,19,00,19,00
"Value Highlight"=hex:ff,00,00,00,ff,ff,ff,00,10,00,10,00

[HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Format\Source Browser]
"FontFace"="Courier"
"FontSize"=dword:0000000a
"Text"=hex:00,00,00,00,ff,ff,ff,00,15,00,15,00
"Text Selection"=hex:ff,ff,ff,00,00,00,00,00,19,00,19,00

[HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Format\Source Window]
"FontFace"="Courier"
"FontSize"=dword:0000000a
"Text"=hex:00,00,00,00,ff,ff,ff,00,13,01,b3,00
"Text Selection"=hex:ff,ff,ff,00,00,00,00,00,19,00,19,00
"Current Error/Tag"=hex:ff,ff,ff,00,00,00,80,00,d2,01,b2,01
"Bookmark"=hex:00,00,00,00,00,ff,ff,00,10,00,10,00
"Breakpoint"=hex:ff,ff,ff,00,80,00,00,00,10,00,10,00
"Current Statement"=hex:00,00,00,00,ff,ff,00,00,70,00,70,00
"Selection Margin"=hex:d4,d0,c8,00,d4,d0,c8,00,13,00,13,00
"Keyword"=hex:00,00,ff,00,ff,ff,ff,00,10,00,11,00
"Comment"=hex:00,80,00,00,ff,ff,ff,00,10,00,11,00
"Number"=hex:00,00,00,00,ff,ff,ff,00,11,00,11,00
"String"=hex:00,00,00,00,ff,ff,ff,00,11,00,11,00
"Operator"=hex:00,00,00,00,ff,ff,ff,00,11,00,11,00
"Wizard IDL/ODL Code"=hex:80,80,80,00,ff,ff,ff,00,14,00,15,00
"HTML Element Name"=hex:80,00,80,00,ff,ff,ff,00,14,00,15,00
"HTML Attribute Name"=hex:ff,00,00,00,ff,ff,ff,00,14,00,15,00
"HTML Attribute Value"=hex:00,00,ff,00,ff,ff,ff,00,14,00,15,00
"HTML Comment"=hex:00,80,00,00,ff,ff,ff,00,14,00,15,00
"HTML Entity"=hex:ff,00,00,00,ff,ff,ff,00,14,00,15,00
"HTML Tag Delimiter"=hex:00,00,ff,00,ff,ff,ff,00,14,00,15,00
"HTML String"=hex:00,00,ff,00,ff,ff,ff,00,14,00,15,00
"HTML Tag Text"=hex:ff,00,ff,00,ff,ff,ff,00,14,00,15,00
"HTML Operator"=hex:00,00,ff,00,ff,ff,ff,00,14,00,15,00
"HTML Server-Side Script"=hex:00,00,00,00,ff,ff,00,00,14,00,14,00
"User Defined Keywords"=hex:00,00,ff,00,ff,ff,ff,00,14,00,15,00
"Wizard Code"=hex:80,80,80,00,ff,ff,ff,00,14,00,15,00

[HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Format\Variables Window]
"FontFace"="Courier"
"FontSize"=dword:0000000a
"Text"=hex:00,00,00,00,ff,ff,ff,00,13,01,b3,00
"Text Selection"=hex:ff,ff,ff,00,00,00,00,00,19,00,19,00
"Variables Highlight"=hex:ff,00,00,00,ff,ff,ff,00,10,00,10,00

[HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Format\Watch Window]
"FontFace"="Courier"
"FontSize"=dword:0000000a
"Text"=hex:00,00,00,00,ff,ff,ff,00,13,01,b3,00
"Text Selection"=hex:ff,ff,ff,00,00,00,00,00,19,00,19,00
"Watch Highlight"=hex:ff,00,00,00,ff,ff,ff,00,10,00,10,00

[HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Format\Workspace Window]
"FontFace"="MS Sans Serif"
"FontSize"=dword:00000008
2009-5-12 11:17
0
雪    币: 260
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
vcpkg42 可以来个详细一些的说明么?
2009-6-21 16:55
0
游客
登录 | 注册 方可回帖
返回
//