
Delphi
苏生米沿
if the world betrayed you ,i will stand behind you,betraying the word.
展开
-
【Java二十周年】Delphi转行java的一些小感触
本文纯属一届小码农对java使用过程的体验感触 目录:初遇java编程语言与java的擦肩深入java跨平台性开源支持web的支撑初遇java编程语言刚上大学的时候,完全是个电脑盲。刚入学学的计算机普及知识就是visual basic语言,可视化的组件编程语言,这个语言跟我第一份工作Delphi语言的是一个性质的,都是拖放控件,实现可视化开发,跟现在用着的extjs 中architec原创 2015-04-08 18:21:11 · 9385 阅读 · 9 评论 -
[问题解决]delphi dpk编译 Error: E2161 RLINK32: Unsupported 16bit resource in file xxx 问题解决
最近在搞GLScene这个东西,哎。使用delphi 2007编译的时候,一点问题没有,但是换做使用DCC32命令行方式来编译的时候,总报出这个错误,查了好几天的原因,今天终于给解决了。 问题描述:使用dcc32命令行编译 GLScene.dpk的时候,总是出现如上错误提示,度娘用了好多次,Google也不下十几次,最后吧,在必应看到了一点东西起到了帮助作用。最近这几天就在编译这个东西了。网上原创 2013-08-27 22:15:46 · 8747 阅读 · 4 评论 -
[版本构造]给delphi生成的软件增加版本信息 续---编译乱码问题解决
上一次写到,编译的时候产生了乱码:http://blog.youkuaiyun.com/sushengmiyan/article/details/10309117今天找了下解决方法,原来是delphi 2007中的那几个dll是old的,哎。找了D7下的这几个dll来替换就OK了。资源文件列表如下:http://download.youkuaiyun.com/detail/sushengm原创 2013-08-26 23:01:05 · 1839 阅读 · 0 评论 -
[版本构造]给delphi生成的软件增加版本信息
在使用其他软件的时候,我们可以使用鼠标右键,查看信息的时候,看到软件的版本信息。那么我们的delphi生成的软件怎么含有版本信息呢?这个好办,对于delphi来说,其IDE就自己附带了这么一个功能,我使用的是delphi 2007版本。打开IDE,Project-Options-Vertion Info勾选Include VertionInfomation In project原创 2013-08-25 22:31:31 · 5592 阅读 · 4 评论 -
[版本构造]DCC32 命令行续,DCC32的参数详解
DCC32的命令详解,罗列了一些命令原创 2013-08-24 22:10:14 · 6350 阅读 · 1 评论 -
delphi DCC32命令行方式编译delphi工程源码
Borland出品的Delphi,在TIOBE公布的2013年8月份编程语言排行榜中已经下降到14名。虽然排名下降,但是仍可以看出,使用delphi进行编程的还是大有人在,delphi现在确实有点落伍,加上borland公司的落没,尤其是对网络的支持不足,delphi目前的处境还是可以接受的,但同样不可否认的是,delphi在快速界面应用程序开发中还是有着不可比拟的优势,或许这就是为什么其还能具有原创 2013-08-24 20:59:11 · 7902 阅读 · 0 评论 -
这些年,那些我们一起读过的代码
∑看到了有个征文活动,嘿嘿。蹭几本技术书籍也好哇。原创 2013-08-18 02:04:44 · 5945 阅读 · 0 评论 -
[版本构造]ASProtect初探---软件防护系列学习笔记
开始学习版本构造了,那么构造一个版本的话,就不得不考虑软件保护机制了。所以呢,就来学习软件注册保护了,首先 ,就选择了ASProtect,软件加壳。虽然破壳工具泛滥,但是学习加壳还是有必要的,对于认识软件加密的发展来说,这个过程应该是不过时的。今天学习了一下基本知识,嘛是ASProtect.看笔记吧:1.什么是 ASprtect?ASProtec原创 2013-08-04 00:18:00 · 4435 阅读 · 2 评论 -
delphi写QQ消息群发(模拟按键精灵)
本文只供学习研究,不能用于非法用途,转载请保留本文链接。本文地址:http://blog.youkuaiyun.com/sushengmiyan/article/details/8774780使用函数:EnumWindows,EnumWindowsProc源代码奉上:unit QMsgMainFrm;interfaceuses Windows, Messages, SysUti原创 2013-04-08 21:27:08 · 9243 阅读 · 7 评论 -
delphi抓取QQ聊天窗口实例
function EnumWindowsProc(hwnd: HWND; lParam: LPARAM): Boolean ;stdcall;// EnumWindows 专用的回调函数的格式:// function EnumWindowsProc(// hwnd: HWND; {找到的窗口句柄}// lParam: LPARAM {EnumWindows 传给的参数; 因为它是原创 2013-04-01 23:05:15 · 7232 阅读 · 4 评论 -
手把手教您使用delphi定制您的软件开机启动
一、建立项目本操作使用的delphi版本为 delphi2007 操作系统为win7第一步是建立项目,首先需要你在硬盘新建一个文件夹,文件夹的名字你可以自己取,我这里命名为‘注册表开机启动设置delphi2007’,然后在这个文件夹下建立三个目录(Release、Bin、Source)如下图:打开delphi2007,执行file-->new--->VCL Forms.如下原创 2013-03-14 23:24:25 · 4322 阅读 · 0 评论 -
delphi初级教程之delphi断点调试二
四、模块断点要监视模块的第一次加载,可以使用【Run】菜单中的【Add Breakpoint】命令,再选 择【Module Load Breakpoint】,出现【Add Module】对话框,如图 模块断点1 所示。模块断点1在【Module Name】框内指定一个要监视的模块,通常是 DLL 或 BPL。也可以单击【Browser】按钮定位一个模块。以后,当这个模块第原创 2013-03-14 20:49:20 · 3747 阅读 · 0 评论 -
delphi初级教程之delphi断点调试一
所谓断点,就是在程序代码的某一行上设置一个标记,程序执行到这里将暂停,由调 试器接管对程序的控制。使用断点与使用【Runto Cursor】命令有些相似,都是执行到某 一行后暂停。不同的是,程序中可以设置多个断点并且能够给断点设置条件。断点通常设置在有疑点的区域。在遇到断点之前,程序以全速运行。遇到断点之后,程序暂时停止运行,以后就可以单步或跟踪执行程序。一、源代码断点要在代码编辑原创 2013-03-14 20:40:59 · 12675 阅读 · 0 评论 -
初级教程之---delphi调试
一、准备调试 Delphi 在 IDE 内部集成了一个调试器,因而对程序的调试不用离开集成开发环境(IDE)就可以进行。该调试器能够控制程序的运行、监视程序的输出、检查和修改变量的值。在调试程序之前,必须保证程序代码已经没有语法错误,还要正确设置一些选项。为此,需要使用【Project】菜单中的【Options】命令打开【Project Options】对话框。打开【C原创 2013-03-13 20:50:41 · 15779 阅读 · 0 评论 -
delphi VCL研究之消息分发机制-delphi高手突破读书笔记
1.VCL 概貌先看一下VCL类图的主要分支,如图4.1所示。在图中可以看到,TObject是VCL的祖先类,这也是Object Pascal语言所规定的。但实际上,TObject以及TObject声明所在的system.pas整个单元,包括在“编译器魔法”话题中提到的_ClassCreate等函数,都是编译器内置支持的。因此,无法修改、删除system.pas中的任何东西,也无法将sys原创 2013-03-04 21:36:42 · 4123 阅读 · 2 评论 -
delphi 使用WindowsAPI回调函数EnumWindowsProc获取系统窗口列表
本文地址转载请保留:http://blog.youkuaiyun.com/sushengmiyan/article/details/8623874{-----------------------------------------------------------------------------作者:sushengmiyan 2013.02.28备注:仅供学习交流使用博客:http://blo原创 2013-02-28 21:25:43 · 6077 阅读 · 0 评论 -
delphi中增加FastMM4有效管理你的内存使用
sourceforge项目下载地址:http://sourceforge.net/projects/fastmm/使用方式:下载之后将FastMM\Replacement BorlndMM DLL\CB2007\Precompiled文件夹下的BorlndMM.dll 替换到delphi安装目录下的Bin文件夹下即可。之后,在工程文件dpr的单元引用中增加uses fastmm4即可。原创 2013-02-19 20:42:37 · 3379 阅读 · 0 评论 -
SysUtils.pas单元函数IntToHex函数学习笔记
1.函数原型:{ IntToHex converts the given value to a hexadecimal string representation with the minimum number of digits specified. }function IntToHex(Value: Integer; Digits: Integer): string; over原创 2013-01-31 23:30:08 · 2578 阅读 · 2 评论 -
获取硬件信息的delphi源码(CPUID、操作系统、Mac物理地址、计算机名称、IP地址、用户名)
转载请保留本文链接地址:http://blog.youkuaiyun.com/sushengmiyan/article/details/8545673{-----------------------------------------------------------------------------作者:sushengmiyan 2013.01.26备注:功能:硬件信息获取单元-----原创 2013-01-26 23:41:55 · 17376 阅读 · 14 评论 -
delphi技术专题---获取网卡物理地址之内存获取方式函数源码
转载请保留本网页地址:http://blog.youkuaiyun.com/sushengmiyan/article/details/8544442先贴代码:{----------------------------------------------------------------------------\-作者:sushengmiyan 2013.01.26参数:Alana: Inte原创 2013-01-26 13:33:33 · 2996 阅读 · 0 评论 -
delphi技术专题---获取网卡物理地址之TLanaENum结构步骤学习分享
除了TNCB结构之外TLanaENum结构是另外一个比较重要的结构如下所示:(同样位于NB30.pas)type // Structure returned to the NCB command NCBENUM. // On a system containing lana's 0, 2 and 3, a structure with // length =3, lana[0]=0原创 2013-01-26 01:06:25 · 2920 阅读 · 0 评论 -
delphi技术专题---获取网卡物理地址之NB30.pas单元TNCB详解以及源代码分享
接下来将要进入Netbios的编程应用阶段。要想调用Netbios API函数,需要链接系统的NETAPI32.DLL文件。Delphi提供了一个NB30单元Netbios API函数及相关的结构、常量进行了定义。 首先来看看Netbios API包括哪些内容。实际Netbios API只有一个函数:UCHAR Netbios(PNCB: pNCB);函数中的惟一参数pNCB是一个指原创 2013-01-26 00:09:26 · 3580 阅读 · 0 评论 -
delphi技术专题---获取网卡物理地址之NetBios网络编程接口LANA介绍
技术专题NetBios网络编程接口 NetBios是Network Basic Input/Output System的缩写,意为“网络基本输入/输出系统”。NetBios网络编程接口是一种与协议无关的网络API,它提供了异步调用方式,同时兼容较老的操作系统,如0S/2和DOS等。 NetBios为网络通信定义了一种编程接口,但却没有详细定义网络通信中的物理“帧”如原创 2013-01-25 23:31:02 · 3468 阅读 · 0 评论 -
DWORD数据类型和ZeroMemory函数解释以及IDE黑色背景设置和相同源代码高亮显示
DWORD类型 由4字节(32位整数)的数字表示的数据。设备驱动程序和服务中许多参数都是此类型,以二进制、十六进制或者十进制格式显示在注册表编辑器中。2个字节就是1个Word(1个字,16位),DWORD(Double Word)就是双字的意思两个字(32位)。GetMem()函数负责申请内存。使用完成之后需要释放内存FreeMem();申请到内存之后就可以使原创 2013-01-23 21:45:13 · 2324 阅读 · 0 评论 -
Delphi通过汇编获取CPUID
据说CPUID不唯一,同一个系列的CPU其CPUID相同?没研究清楚。做这个的最初是想做个根据机器码生成注册码的一个注册应用程序,所以找到了这个方法:还不错,分享一下:function GetCPUID: TCPUID; assembler; register;asm PUSH EBX {Save affected register} PUSH原创 2013-01-17 21:21:12 · 4360 阅读 · 2 评论 -
delphi中应用程序互斥学习演练---防止同时出现多个应用程序实例
多实例指同时有同一个应用程序的多个副本在一台电脑上同时运行,比如windows自带的记事本,你可以打开任意数量的记事本程序同一个应用程序的多个副本可以相互独立地同时运行,是Win32操作系统提供的一个功能。但有时,我们可能希望用户启动应用程序后就不再启动它的别的副本。比如某种设备资源的控制程序,像调制解调器和并行端口。这种情况下,用程序代码防止同时出现多个程序的副本在运行是非常必要的。原创 2013-01-15 23:23:43 · 2377 阅读 · 0 评论 -
ExtractStrings函数分割字符串详解
最近接到一个题目,源字符串(如-0+A+b-4+1.0*d-2/7-50+b-10+100.9-0.1+a)经过处理之后变成(A+b+1.0*d-2/7+b+a+40.8)这个题目的基本要求就是将数字运算进行加减运算,称号和除号当做字符串,字符串进行拼接。那么想做这个题目就必须进行字符串的拆解与拼接。然后就遇到了ExtractStrings这个函数。下面就分享一下这个函数的使用。这个函原创 2012-12-28 21:42:58 · 5296 阅读 · 0 评论 -
Failed to load IDE add in 'C:\Program Files\Delphi_2007\bin\Borland.Studio.Together.dll'.解决办法
错误信息为:Failed to load IDE add in 'C:\Program Files\Delphi_2007\bin\Borland.Studio.Together.dll'.调用的目标发生了异常。Additional Information:“com.borland.tg.sci.SciModelAccess”的类型初始值设定项引发异常截图如下:解决办法是安装M原创 2012-12-28 21:26:57 · 4222 阅读 · 0 评论 -
no module named win32com.client错误解决
无论什么时候,你在运行的时候发现有importError no module named win32com.client这个提示,你都可以这么解决:请下载http://sourceforge.net/projects/pywin32/files/ 相应python版本的win32扩展。安装后问题即解决到sourceforge这个网站上免费下载哦,当然如果你不愿意去这里下载,那么你可以原创 2012-12-24 09:14:32 · 49102 阅读 · 7 评论 -
TWebBrowser滚动条的显示问题探讨。
有时候我们查看网页信息,只想查看某些特定区域的信息,那么这时候我们可能会这么做: //获取源代码 D := FCurWebBrowser.Document as IHTMLDocument2; e :=d.body as IHTMLElement; e2 :=e as IHTMLElement2; cp :=e2.createControlRange as IHTMLContro原创 2012-11-09 13:17:02 · 2768 阅读 · 0 评论 -
delphi操作png的单元pngimage.pas包括引用的ZlibExApi.pas和 PngLang.pas
有需要的可以去这里下载源码。http://download.youkuaiyun.com/detail/sushengmiyan/4662715delphi操作png是在delphi2009版本之后(网上这么说的)于是乎。。我找了源码来共享。。希望对大家有帮助。当你的程序找不到pngimage这个单元的时候。。。这段代码会帮助到你。。。当你的不使用delphi...或者你的可以原创 2012-10-19 10:01:00 · 10016 阅读 · 0 评论 -
百度腾讯QQ等网站注册自动提交表单源码2012最新
闲的无聊的时候研究了下delphi网络模块。就简单模仿了下自动注册或者登陆网站这么一个功能来练手。闲话不多讲,代码奉上~以下是腾讯QQ的填写表单和自动提交代码,直供研究学习使用,不得用于其他用途啊~~先讲一下大致流程吧,要想自动提交表单,那么就需要知道网页中的各个元素,比如昵称输入框,生日选择框,表单提交按钮。对于这些元素可以使用网页源码查看来取得,然后就是使用控件取得这些元素,对这些元素原创 2012-10-19 08:34:40 · 6660 阅读 · 17 评论 -
一个成功获取百度注册页面验证码图片的源代码
成功实现使用delphi获取百度的验证码图片(只获得图片,不进行识别,识别之后再研究吧O(∩_∩)O)procedure TForm1.btn1Click(Sender: TObject); procedure doSomething(ms: TMemoryStream); var Buffer:Word; AjpgFile: TJPEGImage;原创 2012-10-12 12:58:19 · 8355 阅读 · 9 评论 -
delphi中VCL一些bug的补丁修复包VCLfixpack介绍
delphi本身就存在问题,现在又不维护了,所以有时候用到控件的时候就不知道怎么办了。现在知道了一个delphi的补丁包,感觉不错,拿出来分享一下。下载地址:http://download.youkuaiyun.com/detail/sushengmiyan/4637884拿一个修复的例子来说吧:看代码{$IF CompilerVersion < 20.0} // Delphi 6-200原创 2012-10-11 23:14:23 · 3746 阅读 · 0 评论 -
WebBrowser组件和MSHTML 在Delphi中的使用
很多都是网上的,拿来学习下:O(∩_∩)O 由于项目需要,近来研究了一下WebBrowser组件和MSHTML 在Delphi中的使用,整理了一下这段时间研究的结果,写下来一是方便大家查阅,二也可以加深我自己的记忆.希望能对大家有所帮助… …,同时,如果有更好的处理方式或者我没有提到的问题,请大家也告诉我哦, 咱们一块进步… ...,其中一部分是我从网络中搜集的资料,谢谢那些兄弟们… …原创 2012-10-09 19:09:46 · 3383 阅读 · 0 评论 -
账号批量注册软件开发启示录
想做一个账号批量注册的软件。不知道具体思路是什么样子的。现在搞起来看看。。有愿意分享一下的么?我现在的思路是,找到网址,找到注册页面的链接,然后自动生成用户名密码什么的,然后填写验证码,然后注册成功。不知道具体咋开发啊。懂得人教我下吧~感谢!新增以下代码procedure TForm1.Button1Click(Sender: TObject);var Openurl原创 2012-10-05 11:03:58 · 4887 阅读 · 2 评论 -
H2365 Override method should match case of ancestor的Hint提示说明
在编译delphi的时候会报这个hint:[Pascal Hint] ***Frm.pas(111): H2365 Override method ***Form.Createparams should match case of ancestor TCustomForm.CreateParams这是在重写 procedure CreateParams(Var Params:TCreatePa原创 2012-09-26 11:14:01 · 2454 阅读 · 0 评论 -
delphi的常用条件编译指令---{$IFDEF} {$UNDEF}{$IFDEF}{$ELSE}{$ENDIF}
1.DELPHI的编译指令格式:{$指令 满足指令的条件} 对于Delphi来说﹐左右大括号之间的内容是批注﹐然而「{$」(左括号后紧接着货币符号)对于Compiler(编译器)而言并不是批注﹐而是写给Compiler看的特别指示,就是编译指令。编译指令时给计算机看的,用于区别在不同的场合下进行编译不同代码的文件。网上搜了一下编译指令的用处,写的挺不错,拿来分原创 2012-09-24 16:31:28 · 20486 阅读 · 2 评论 -
delphi中窗体关闭事件FormCloseQuery与assigned函数的使用
delphi中窗体的关闭事件中有个formclosequery函数,这个函数在formclose函数之前执行。可以在这个事件中填写询问函数,可以设置是否可以关闭窗体。这个时候窗体还没有真正关闭。下面是遇到的另一个问题:判断对象是否存在 assigned与 Nil 有什么区别?得到的最好的回答是这样的:assigned的出现仅仅为了培养一个更好的习惯,因为用指针直接判断更有效。原创 2012-09-21 14:22:59 · 5655 阅读 · 0 评论 -
用注册表对Delphi程序进行加密
本加密方法分三部分: 1. 根据对注册表的搜索结果判定设置对话框的内容。 2. 若初次使用,则设新密码;若是已经设置密码,则进行验证。 3. 一个密码变换小程序(比原来的复杂得多)。当然,如果需要修改密码的功能,只要将设置密码部分改动一下即可。一、程序启动时,通过搜索注册表,判断是否已有密码,来确定窗口的显示内容。不过事先应有以下的声明然后才能使用: 在us原创 2012-09-20 15:32:47 · 1490 阅读 · 0 评论