QStarDict
QStarDict 是一款基于 Qt4 的 StarDict 的克隆,它完全兼容 StarDict 的字典,适合于使用 KDE4 朋友使用,节省了使用StarDict加载gtk+运行环境的系统资源,并且界面也更加协调。
目前 QStarDict 0.12.9 版本已经实现以下功能:
完全兼容已有的 Stardict 辞典,暂不支持树型辞典。
支持屏幕取词,通过 D-bus 支持在 Qt4 应用程序中的屏幕取词。
支持通... [阅读全文]
屏幕取词功能和防屏幕取词
admin | 屏幕取词 | 2013-03-16
屏幕抓词的技术实现
屏幕上的文字大都是由gdi32.dll的以下几个函数显示的:TextOutA、TextOutW、ExtTextOutA、ExtTextOutW。实现屏幕抓词的关键就是截获对这些函数的调用,得到程序发给它们的参数。
我的方法有以下三个步骤:
一、得到鼠标的当前位置
通过SetWindowsHookEx实现。
二、向鼠标下的窗口发重画消息,让它调用系统函数重画
通过WindowFromPo... [阅读全文]
Windows管道技术简述
admin | net work | 2013-03-15
不知你是否用过这样的程序,他们本身并没有解压缩的功能,而是调用DOS程序PKZIP完成ZIP包的解压缩。但是在程序运行时又没有DOS控制台的窗口出现而且一切本应该在DOS下显示的信息都出现在了那个安装程序的一个文本框里。这种设计既美观又可以防止少数眼疾手快的用户提前关了你的DOS窗口。 现在就来讨论一下,如何用匿名管道技术实现这个功能。
管道技术... [阅读全文]
代码注入的三种方法
admin | Windows api | 2013-03-14
目录
Windows 钩子
CreateRemoteThread 和 LoadLibrary 技术
――进程间通信
CreateRemoteThread 和 WriteProcessMemory 技术
――如何用该技术子类化远程控件
――何时使用 CreateRemoteThread 和 WriteProcessMemory 技术
结束语
附录A
附录B
附录C
附录D
附录E
附录F
参考资料
简介
本文将讨论如何把代码注入不同的进程地址空间,然后在该进程的上下文中执... [阅读全文]
Uniscribe Sample
admin | Windows api | 2013-03-14
Uniscribe Sample
Sample usage of Uniscribe. Main functions are OnPaint() in ChildView.cpp. It shows simple call sequence and tag usage.
There’re three versions implemented. The first is the simplest, just using ScriptStringOut. The second and the third are for using property. Following sequence is required when using Sc... [阅读全文]
Uniscribe: The Missing Documentation & Examples
admin | C++ | 2013-03-14
http://maxradi.us/documents/uniscribe/
Brett Wilson
Uniscribe: The Missing Documentation & Examples
Index
ScriptItemize
ScriptLayout
ScriptShape
ScriptPlace
ScriptJustify
ScriptXtoCP
ScriptCPtoX
Introduction
Microsoft created an extremely powerful API called Uniscribe that allows applications to do typ... [阅读全文]
Uniscribe绘制复杂文本的说明
admin | win32 | 2013-03-14
这篇文章的目的是对微软对Uniscribe绘制复杂文本的例子进行一些说明,同时主要是对ScriptItemize、ScriptShape、ScriptPlace、ScriptLayout、ScriptTextOut等函数以及一些绘制复杂文字过程中要使用的结构体如SCRIPT_ANALYSIS、SCRIPT_CACHE、SCRIPT_STATE、SCRIPT_CONTROL等进行说明:
对于利于ScriptString绘制复杂文字,它比较简单,所以在最后给出说明... [阅读全文]
MFC 窗口抖动代码
admin | C++ | 2013-03-13
C++
int ty=5;
CRect m_rect;
GetWindowRect(&m_rect);
int recordy=m_rect.left;
int recordx=m_rect.top;
for(int i=0;i<3;i++)
{
m_rect.left=recordy;
m_rect.top=recordx;
m_rect.top = m_rect.top + ty;
m_rect.left = m_rect.left - ty;
SetWindowPos( ... [阅读全文]
MFC对话框的隐藏方法
admin | C++ | 2013-03-13
修改CXXAPP中的InitInstance函数,将原来的模态对话框改为非模态对话框,即修改
INT_PTR nResponse = dlg.DoModal();
为
dlg.Create(CModalHideDlg::IDD); //创建为非模态对话框
dlg.ShowWindow(SW_HIDE); //创建完毕后,可以设置对话框的显示方式,正常为“SW_SHOW”,
//在此,我们使用“SW_HIDE”将对话框隐藏,但是在进程列表中仍然可以看到
... [阅读全文]