
技术学习
文章平均质量分 56
procedure1984
这个作者很懒,什么都没留下…
展开
-
DELPHI组件安装全攻略
一、前言 由于系统不稳定,经常要重装DELPHI。而每次安装DELPHI的时候,原来注册的组件都被刷新,只能重新安装组件。众所周知,DELPHI的第三方组件N多,这个安装着实令人头疼。更有甚者,因为某些莫名其妙的原因, DELPHI的组件面板上有时居然只剩下一个标准组件。碰到这种情况,我不知道各位如何处理,我每次都是重新安装。为了解决这个难题,我决定深入了解 DELPHI组件是如何被注册。以转载 2008-10-18 13:11:00 · 2281 阅读 · 2 评论 -
模拟键盘, 含有各种方法
unit Unit1;interfaceuses SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Butto原创 2009-05-24 15:52:00 · 932 阅读 · 0 评论 -
delphi外挂制作(转)
在几年前我看到别人玩网络游戏用上了外挂,做为程序员的我心里实在是不爽,想搞清楚这到底是怎么回事。就拿了一些来研究,小有心得,拿出来与大家共享,外挂无非就是分几种罢了(依制作难度):1、动作式,所谓动作式,就是指用API发命令给窗口或API控制鼠标、键盘等,使游戏里的人物进行流动或者攻击,最早以前的“石器”外挂就是这种方式。2、本地修改式,这种外挂跟传统上的一些游戏修改器没有两样,做这原创 2009-05-24 15:59:00 · 5196 阅读 · 1 评论 -
多态——解析树实例分析
场景: 分析: 每个类的节点都必须提供它自己的Calc方法,所以采用多态进行操作。我们将Node节点和BinNode节点设计为抽象类,抽象类是不能实例化的类,它们只能作为其他类的父类。一个包含一个或多个纯虚函数的类称为抽象类,一个没有具体实现的函数称为纯虚函数,只有从一个抽象类派生的类以及为所有纯虚函数提供了实现代码的类才能被实例化。一般来说,若一个类有一个纯虚函数,它可能同时需要一个虚转载 2009-10-09 17:00:00 · 684 阅读 · 0 评论 -
经典入门--字符编码笔记
转自:http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html 今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料。结果,这个问题比我想象的复杂,从午饭后一直看到晚上9点,才算初步搞清楚。下面就是我的笔记,主要用来整理自己的思路。但是,我尽量试图写得通俗易转载 2009-11-09 18:16:00 · 472 阅读 · 0 评论 -
Delphi调试DLL 不能调试 不能进入调试 注意!!!
如何调试DLL,在这里就不再赘述了,但是,今天就碰到了一个特别奇怪的问题,参数设置正确,就是不能调试?? 通过上网查资料,发现了问题,注意: 1, 将Project主菜单的Project Options对话框的Compiler页面Debugging选项中的 Debug informaton、Local symbols、Assertions复选框选中 2,将Tools主菜单的Debugg原创 2010-02-10 10:02:00 · 2884 阅读 · 0 评论 -
Move WriteBuffer ReadBuffer String
在实际编程中,经常会用到Buffer,当string作为Buffer传值时需要注意的是 1, string的值的起始索引是1,千万记住! 2, 有时候需要先告诉系统去开辟出内存空间,用SetLength函数。 如下代码,示范了再Move、 WriteBuffer、 ReadBuffer时候的用法:unit Unit3;interfaceuses Win原创 2010-03-26 14:06:00 · 1213 阅读 · 0 评论 -
PChar String Char数组
本文章为网上资源整合,加上自己的代码示范 第一篇: 三者的区别string和Char数组都是一块内存, 其中存放连续的字符. string保存具体字符的内存对用户 是透明的, 由Delphi管理它的分配, 复制和释放, 用户不能干预(其实也可以, 不过是通过 非法途径). Char数组就不必说了吧? PChar是一个指针, 它的大小只有32位. 定义时由Delphi自动填0. 要将PC原创 2010-03-26 14:39:00 · 3020 阅读 · 0 评论 -
通过崩溃地址 MAP文件 找错误行数之Delphi版
<br />以前看了 通过崩溃地址找错误行数之VC版 那时候还没用DELPHI <br />昨晚刚好又看到了 所以就试了一下DELPHI的,与大家共享 ^_^ <br /><br />什么是 MAP 文件?简单地讲, MAP 文件是程序的全局符号、源文件和代码行号信息的唯一的文本表示方法,它可以在任何地方、任何时候使用,不需要有额外的程序进行支持。而且,这是唯一能找出程序崩溃的地方的救星。 <br /><br />DELPHI下生成MAP文件的方法:偶只知道下面两种,如果谁知转载 2010-08-02 16:53:00 · 884 阅读 · 0 评论 -
delphi 2007 refactor / refactoring 重构不能使用的原因以及解决
<br />在家办公,买了台新机器,安装Delphi,重构别人的代码,可是Ctr+Shift+E不管用, 真个Refactor功能缺失一大块,莫名其妙,搞了好长时间才搞定: 见下文:摘录:<br /> <br /> 可见重构是非常有用的,尤其是在现代开发语言环境中,由于设计的变动,为了使后期的代码更可维护,在编写的过程中突然发现,类,接口,类成员等需要重新组织,改名命名等,但这样,往往影响的不在一个地方,会涉及到所有引用的地方,如果改动一个地方主要手动找其他引用的地方一个一个找的活,效率低,而且容易出错.原创 2010-12-03 14:40:00 · 1229 阅读 · 0 评论 -
哥尼斯堡七桥问题
记得面试时候碰到一个智力题,是一笔画问题, 按九宫格排列的九个点如何一笔画出? 想了好长时间没有答案, 最近研究三维图形,三维图形有几何属性和拓扑属性,在拓扑学中,欧拉老爷爷有个著名的哥尼斯堡七桥问题, 下面是转载的其他人的东西: 18世纪时,欧洲有一个风景秀丽的小原创 2011-07-13 10:55:31 · 5585 阅读 · 1 评论 -
批处理文件中的 %~d0
今天在批处理文件中 %~d0 ,莫名其妙, 答案是:he magic variables %n contains the arguments used to invoke the file: %0 is the path to the bat-file原创 2011-09-28 14:24:07 · 2186 阅读 · 1 评论 -
模拟键盘、鼠标输入---玩转keybd_event
在Windows大行其道的今天,windows界面程序受到广大用户的欢迎。对这些程序的操作不外乎两种,键盘输入控制和鼠标输入控制。有时,对于繁杂的,或重复性的操作,我们能否通过编制程序来代替手工输入,而用程序来模拟键盘及鼠标的输入呢?答案是肯定的。这主要是通过两个API函数来实现的。 下面以Delphi为例来介绍一下如何实现这两个功能。模拟键盘我们用Keybd_event这个api函数转载 2009-05-23 15:40:00 · 4119 阅读 · 0 评论 -
DLL与EXE之间的通讯调用 以及 回调函数的线程执行空间
dll 与 exe 之间的通讯方式有很多种, 本文采用回调函数的方法实现, 本文也将研究多线程,多模块的情况下,回调函数所在的线程, 啥也不说了,先附上代码: 下面的是dll模块的的, dll的工程文件:library DllAPP;uses windows, SysUtils, Classes, DllClass in DllClass.pas原创 2009-03-12 20:10:00 · 6648 阅读 · 2 评论 -
理解类引用这种类型 (网上讨论摘录)
问题:书中写到:--------------------类的引用是一种类型,它不是对对象的引用,也不是对类的引用,而是对类的类型的引用。类的引用类型定义了引用变量的类型。假设用户定义了一个类:type CMyClass=class ...end下面定义一个新类的引用类型,与下面的类相关:type MyClassRef=c转载 2009-02-19 11:05:00 · 460 阅读 · 0 评论 -
C++中的内存对齐
2008-08-08 21:47 在我们的程序中,数据结构还有变量等等都需要占有内存,在很多系统中,它都要求内存分配的时候要对齐,这样做的好处就是可以提高访问内存的速度。我们还是先来看一段简单的程序: 程序一1 #include iostream>2 using namespace std;3转载 2008-10-11 17:02:00 · 555 阅读 · 0 评论 -
做程序员要细心,并且要怀疑自己
今天周一,接着做上周没完成的一个模块,是根据玩家动作画指示箭头, 按照思路做好后,总是出现一些莫名奇妙的找不到资源文件的错误, CALL.., 因为找不到资源,我一致以为是我在绘图以及资源调用上出错了, 一次次的调试,没发现什么错误, 最后.... ,我一步步的调试, 总算找到根源, 我把CASE语句的语法搞错了, 得不到我要的字符..., 下面是我原来的做法LDistance:原创 2008-10-27 11:09:00 · 1500 阅读 · 0 评论 -
Delphi中的内存对齐 与 Packed关键字
以delphi为例:TTest = recordc1: char;i1: Integer;c2: char;c3: Char;end;这个结构如果用sizeof取其占用的内存大小,是多少呢,是1+4+1+1=7么,不是,是4*3 = 12; 这是因为32位编译的时候,默认结构会自动内存对齐(32bit = 4byte)。如果要想让这个结构占用7个字节的话,必须加上packed关键字。如下原创 2008-10-11 17:08:00 · 4074 阅读 · 0 评论 -
C++垃圾收集--智能指针
zero 坐在餐桌前,机械的重复“夹菜 -> 咀嚼 -> 吞咽”的动作序列,脸上用无形的大字写着:我心不在焉。在他的对面坐着 Solmyr ,慢条斯理的吃着他那份午餐,维持着他一贯很有修养的形象 ——— 或者按照 zero 这些熟悉他本质的人的说法:假象。 “怎么了 zero ?胃口不好么?”,基本填饱肚子之后,Solmyr 觉得似乎应该关心一下他的学徒了。 “呃,没什么,只是 …… Sol转载 2008-10-11 16:57:00 · 958 阅读 · 0 评论 -
Delphi 的动态数组1
传统的Pascal 语言其数组大小是预先确定的,当你用数组结构声明数据类型时,你必须指定数组元素的个数。专业程序员也许知道些许动态数组的实现技术,一般是采用指针,用手工分配并释放所需的内存。Delphi 4中增加了非常简单的动态数组实现方法,实现过程效仿我前面讲过的动态长字符串。与长字符串一样,动态数组的内存动态分配并且引用记数,不过动态数组不支持 copy-on-write 技术。这不是转载 2008-11-14 10:30:00 · 1881 阅读 · 2 评论 -
Delphi动态数组2
自从有了动态数组,链表除了在教科书里出现外,已经很少在实际编程中被使用了,事实也是如此,数组的确比传统链表快得多,而且也方便的多。 从 Delphi4起,开始了内建各种类型的动态数组支持。但是,对我们来说动态数组支持似乎做的不够彻底,因为Delphi竟然连删除、插入、移动连续元素的函数都没有提供,让人使用起来总觉得不够爽!!! J 。作为一名程序员,我们当然要有自己解决问题的能力,转载 2008-11-14 10:31:00 · 1076 阅读 · 0 评论 -
Delphi中的“委托”
.NET中有委托(Delegate)的概念,其声明形式如下所示: public delegate void MyDelegate(int aIntParam, string aStringParam); 依个人所见,委托实际上就是规定一种接口,提供一种规范,任何符合该委托签名的函数/过程都属于同一类。 在Delphi中,也有类似于“委托”的概念(不过可没有C#转载 2009-02-16 17:26:00 · 4998 阅读 · 0 评论 -
Delphi函数指针的两种定义
delphi中经常见到以下两种定义 Type TMouseProc = procedure (X,Y:integer); TMouseEvent = procedure (X,Y:integer) of Object; 两者样子差不多但实际意义却不一样,TMouseProc只是单一的函数指针类型;TMouseEvent是对象的函转载 2009-02-16 18:06:00 · 5414 阅读 · 0 评论 -
Delphi 中 COM 实现研究手记(一)
前言 前些日子用 Delphi 写了一个 Windows 外壳扩展程序,大家知道 Windows 外壳扩展实际上就是 COM 的一种应用 -- Shell COM,虽然整个程序写得还算比较顺利,但写完后还是感觉对 Delphi 中 COM 的实现有点雾里看花的感觉,因此我认为有必要花一点时间对 COM 在 Delphi 中的实现做一些研究。另外我也买了李维的新书 --《深入核心转载 2009-02-18 18:27:00 · 1566 阅读 · 0 评论 -
C/C++中的内存管理
一.内存的分配方式1. 程序代码区2. 静态数据区3. 动态数据区二.动态内存1. 在栈上创建的内存2. 从堆上分配的内存3. 小结三.指针与内存1. 操作内存2. 指针与数组3. 指针参数四.malloc/free 与new/delete1. malloc/free 的使用要点2. new/delete 的使用要点3. malloc/f转载 2008-12-08 15:19:00 · 697 阅读 · 0 评论 -
Delphi中initialization和finalization
注:本文主要是讨论delphi程序启动时和退出时的执行顺序,期间有些知识来源于Delphi帮助,有些来自《Delphi7程序设计教程》(这本书只告诉我有initialization 和 finalization 这两个关键字,但是没讲明白)(唉,现在的书只讨论框框架架,不讨论细节,写出来的东西让你看能看懂,别人一问或者自己一想,就是什么都不懂!讲的不细致呀!唉,自己琢磨吧!!)。代码用两排‘*’标转载 2009-02-18 22:00:00 · 1168 阅读 · 1 评论 -
推荐小工具 Junciton 和 Everything
特别好用的Junction , 特别好用的EverythingNTFS 新特性:Junction 应用详解 前些时无意发现 Vista 的 C:\Documents and Settings 目录和 C:\Users 目转载 2011-09-28 14:13:40 · 1259 阅读 · 1 评论