现在delphi 哪个版本好似
delphi7 最经典,控件也最多,不过对windows 7 或8 的支持有点小问题,..特别当你在windows xp下运行编译时,...毕竟delphi 7出来的年头太多了....
delphi xe2 则解决了这个问题,但相应的,不是很兼容 原有的delphi 7 的控件...
delphi xe5 支持android,不过目前来说,只能编译一些简单的普通的程序,目前还存在着编译后文件过大,最小5M 载入时间长等问题,不过也可以用了...
另外,delphi xe5的控件可能相对 来说要少些,毕竟很多厂商还没有开发...
前面不是说了嘛,如果你的软件不需要控件,当然是delphi xe5,如果需要控件,可以考虑XE3或4,现在的DELPHI XE系列真的不错,很稳定..BUG相当少...现在不建议你用DELPHI7 ..因为对windows 7以后支持有点问题!
delphi怎么HOOK指定API函数
使用 delphi 语言来 Hook 指定的 API 函数,比较简便的方法如下:
1、下载 CnPack 小组的免费开源组件包 CnVCL,将之安装到 delphi 系统中:
2、在 CnVCL 组件包中,提供了 CnInProcessAPIHook 单元,该单元文件提供了 TCnInProcessAPIHook 组件,及其他相关的函数,提供了“进程内实现 APIHook ”功能:-2020最好用的delphi版本
其主要定义如下:
3、编写代码实现 HOOK 指定 API 函数的示例:
(1)先要引入单元文件:
uses CnInProcessAPIHook;
(2)建立 TCnInProcessAPIHook 实例,并指定需要 HOOK 的 API :
procedure TForm1.FormCreate(Sender: TObject);
begin
FCnAPIHook := TCnInProcessAPIHook.Create(Self);
FCnAPIHook.DllFunction := ’MessageBoxA’;//需要 HOOK 的 API
FCnAPIHook.DllName := ’User32.dll’;//API所属动态库名称
FCnAPIHook.ParamCount := 4;
FCnAPIHook.Mutex := True;
FCnAPIHook.RestoreWhenOnHook := True;
FCnAPIHook.OnAPIHookProc := CnHookAPI1APIHookProc;//指定响应事件
end;
(3)开始 HOOK 代码:
procedure TForm1.Button2Click(Sender: TObject);
begin
FCnAPIHook.Active := True;
end;
终止 HOOK 代码:
procedure TForm1.Button3Click(Sender: TObject);
begin
FCnAPIHook.Active := False;
end;
新手学DELPHI什么书好
如果是自学,我建议你学习《战胜Delphi必做练习50题》和零点工作室编的《Delphi7基础教程》。一个是习题一个是教程,比较适合初学者自学。