自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (3)
  • 收藏
  • 关注

原创 批处理文件中的 %~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 1985 1

转载 推荐小工具 Junciton 和 Everything

特别好用的Junction  , 特别好用的Everything NTFS 新特性:Junction 应用详解   前些时无意发现 Vista 的 C:\Documents and Settings 目录和 C:\Users 目

2011-09-28 14:13:40 1186 1

原创 哥尼斯堡七桥问题

记得面试时候碰到一个智力题,是一笔画问题, 按九宫格排列的九个点如何一笔画出? 想了好长时间没有答案, 最近研究三维图形,三维图形有几何属性和拓扑属性,在拓扑学中,欧拉老爷爷有个著名的哥尼斯堡七桥问题, 下面是转载的其他人的东西:        18世纪时,欧洲有一个风景秀丽的小

2011-07-13 10:55:31 5469 1

原创 delphi 2007 refactor / refactoring 重构不能使用的原因以及解决

<br />在家办公,买了台新机器,安装Delphi,重构别人的代码,可是Ctr+Shift+E不管用, 真个Refactor功能缺失一大块,莫名其妙,搞了好长时间才搞定: 见下文:摘录:<br /> <br />  可见重构是非常有用的,尤其是在现代开发语言环境中,由于设计的变动,为了使后期的代码更可维护,在编写的过程中突然发现,类,接口,类成员等需要重新组织,改名命名等,但这样,往往影响的不在一个地方,会涉及到所有引用的地方,如果改动一个地方主要手动找其他引用的地方一个一个找的活,效率低,而且容易出错.

2010-12-03 14:40:00 1176

转载 通过崩溃地址 MAP文件 找错误行数之Delphi版

<br />以前看了   通过崩溃地址找错误行数之VC版   那时候还没用DELPHI <br />昨晚刚好又看到了   所以就试了一下DELPHI的,与大家共享   ^_^ <br /><br />什么是   MAP   文件?简单地讲,   MAP   文件是程序的全局符号、源文件和代码行号信息的唯一的文本表示方法,它可以在任何地方、任何时候使用,不需要有额外的程序进行支持。而且,这是唯一能找出程序崩溃的地方的救星。 <br /><br />DELPHI下生成MAP文件的方法:偶只知道下面两种,如果谁知

2010-08-02 16:53:00 835

原创 PChar String Char数组

本文章为网上资源整合,加上自己的代码示范 第一篇: 三者的区别string和Char数组都是一块内存, 其中存放连续的字符. string保存具体字符的内存对用户 是透明的, 由Delphi管理它的分配, 复制和释放, 用户不能干预(其实也可以, 不过是通过 非法途径). Char数组就不必说了吧? PChar是一个指针, 它的大小只有32位. 定义时由Delphi自动填0. 要将PC

2010-03-26 14:39:00 2965

原创 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 1132

原创 关于 OnCloseQuery: 顺序、不能关机等

系统关闭窗体的事件顺序为:  OnCloseQuery ----> OnClose ----> OnDestroy下面的代码说明问题:unit Unit3;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;t

2010-03-26 09:26:00 1862

原创 Delphi调试DLL 不能调试 不能进入调试 注意!!!

如何调试DLL,在这里就不再赘述了,但是,今天就碰到了一个特别奇怪的问题,参数设置正确,就是不能调试?? 通过上网查资料,发现了问题,注意:  1, 将Project主菜单的Project Options对话框的Compiler页面Debugging选项中的 Debug informaton、Local symbols、Assertions复选框选中  2,将Tools主菜单的Debugg

2010-02-10 10:02:00 2763

转载 经典入门--字符编码笔记

转自:http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html 今天中午,我突然想搞清楚Unicode和UTF-8之间的关系,于是就开始在网上查资料。结果,这个问题比我想象的复杂,从午饭后一直看到晚上9点,才算初步搞清楚。下面就是我的笔记,主要用来整理自己的思路。但是,我尽量试图写得通俗易

2009-11-09 18:16:00 432

转载 多态——解析树实例分析

场景:  分析: 每个类的节点都必须提供它自己的Calc方法,所以采用多态进行操作。我们将Node节点和BinNode节点设计为抽象类,抽象类是不能实例化的类,它们只能作为其他类的父类。一个包含一个或多个纯虚函数的类称为抽象类,一个没有具体实现的函数称为纯虚函数,只有从一个抽象类派生的类以及为所有纯虚函数提供了实现代码的类才能被实例化。一般来说,若一个类有一个纯虚函数,它可能同时需要一个虚

2009-10-09 17:00:00 644

原创 delphi外挂制作(转)

 在几年前我看到别人玩网络游戏用上了外挂,做为程序员的我心里实在是不爽,想搞清楚这到底是怎么回事。就拿了一些来研究,小有心得,拿出来与大家共享,外挂无非就是分几种罢了(依制作难度):1、动作式,所谓动作式,就是指用API发命令给窗口或API控制鼠标、键盘等,使游戏里的人物进行流动或者攻击,最早以前的“石器”外挂就是这种方式。2、本地修改式,这种外挂跟传统上的一些游戏修改器没有两样,做这

2009-05-24 15:59:00 5092 1

原创 模拟键盘, 含有各种方法

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 897

转载 模拟键盘、鼠标输入---玩转keybd_event

在Windows大行其道的今天,windows界面程序受到广大用户的欢迎。对这些程序的操作不外乎两种,键盘输入控制和鼠标输入控制。有时,对于繁杂的,或重复性的操作,我们能否通过编制程序来代替手工输入,而用程序来模拟键盘及鼠标的输入呢?答案是肯定的。这主要是通过两个API函数来实现的。     下面以Delphi为例来介绍一下如何实现这两个功能。模拟键盘我们用Keybd_event这个api函数

2009-05-23 15:40:00 4057

原创 DLL与EXE之间的通讯调用 以及 回调函数的线程执行空间

  dll 与 exe 之间的通讯方式有很多种, 本文采用回调函数的方法实现, 本文也将研究多线程,多模块的情况下,回调函数所在的线程, 啥也不说了,先附上代码: 下面的是dll模块的的, dll的工程文件:library DllAPP;uses windows, SysUtils, Classes, DllClass in DllClass.pas

2009-03-12 20:10:00 6529 2

转载 socket编程指南及示例程序

7         UDP用最通俗的话讲,所谓UDP,就是发送出去就不管的一种网络协议。因此UDP编程的发送端只管发送就可以了,不用检查网络连接状态。下面用例子来说明怎样编写UDP,并会详细解释每个API和数据类型。7.1 UDP广播发送程序下面是一个用UDP发送广播报文的例子。#include #include void main(){    SOCKET s

2009-03-11 15:37:00 911

原创 关于Delphi类引用 应用一列

工程文件program Project1;uses Forms, Unit1 in Unit1.pas {Form1}, Unit2 in Unit2.pas {Form2};{$R *.res}begin Application.Initialize; Application.MainFormOnTaskbar := True;

2009-02-19 11:08:00 1234

转载 理解类引用这种类型 (网上讨论摘录)

问题:书中写到:--------------------类的引用是一种类型,它不是对对象的引用,也不是对类的引用,而是对类的类型的引用。类的引用类型定义了引用变量的类型。假设用户定义了一个类:type CMyClass=class ...end下面定义一个新类的引用类型,与下面的类相关:type MyClassRef=c

2009-02-19 11:05:00 430

转载 Delphi中initialization和finalization

注:本文主要是讨论delphi程序启动时和退出时的执行顺序,期间有些知识来源于Delphi帮助,有些来自《Delphi7程序设计教程》(这本书只告诉我有initialization 和 finalization 这两个关键字,但是没讲明白)(唉,现在的书只讨论框框架架,不讨论细节,写出来的东西让你看能看懂,别人一问或者自己一想,就是什么都不懂!讲的不细致呀!唉,自己琢磨吧!!)。代码用两排‘*’标

2009-02-18 22:00:00 1111 1

转载 Delphi 中 COM 实现研究手记(一)

前言     前些日子用 Delphi 写了一个 Windows 外壳扩展程序,大家知道 Windows 外壳扩展实际上就是 COM 的一种应用 -- Shell COM,虽然整个程序写得还算比较顺利,但写完后还是感觉对 Delphi 中 COM 的实现有点雾里看花的感觉,因此我认为有必要花一点时间对 COM 在 Delphi 中的实现做一些研究。另外我也买了李维的新书 --《深入核心

2009-02-18 18:27:00 1488

转载 Delphi函数指针的两种定义

 delphi中经常见到以下两种定义 Type         TMouseProc = procedure (X,Y:integer);         TMouseEvent = procedure (X,Y:integer) of Object; 两者样子差不多但实际意义却不一样,TMouseProc只是单一的函数指针类型;TMouseEvent是对象的函

2009-02-16 18:06:00 5318

转载 Delphi中的“委托”

 .NET中有委托(Delegate)的概念,其声明形式如下所示:   public delegate void MyDelegate(int aIntParam, string aStringParam);   依个人所见,委托实际上就是规定一种接口,提供一种规范,任何符合该委托签名的函数/过程都属于同一类。   在Delphi中,也有类似于“委托”的概念(不过可没有C#

2009-02-16 17:26:00 4866

转载 开发工程师的人生之路

本文所指的开发工程师,仅指程序开发人员和以数字电路开发为主的电子工程师。   当你选择计算机或者电子、自控等专业进入大学时,你本来还是有机会从事其它行业的,可你毕业时执迷不悟,仍然选择了开发做为你的职业,真是自做孽不可活。不过,欢迎你和我一样加入这个被其它人认为是风光无限的“白领”吧。   如果你不是特别的与人世隔绝,我想你一定看过金老先生的名著《笑傲江湖》吧,里面有一门十分奇特的武功叫做"辟邪剑

2008-12-29 10:31:00 638

转载 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 667

转载 Delphi动态数组2

  自从有了动态数组,链表除了在教科书里出现外,已经很少在实际编程中被使用了,事实也是如此,数组的确比传统链表快得多,而且也方便的多。   从 Delphi4起,开始了内建各种类型的动态数组支持。但是,对我们来说动态数组支持似乎做的不够彻底,因为Delphi竟然连删除、插入、移动连续元素的函数都没有提供,让人使用起来总觉得不够爽!!! J 。作为一名程序员,我们当然要有自己解决问题的能力,

2008-11-14 10:31:00 1043

转载 Delphi 的动态数组1

传统的Pascal 语言其数组大小是预先确定的,当你用数组结构声明数据类型时,你必须指定数组元素的个数。专业程序员也许知道些许动态数组的实现技术,一般是采用指针,用手工分配并释放所需的内存。Delphi 4中增加了非常简单的动态数组实现方法,实现过程效仿我前面讲过的动态长字符串。与长字符串一样,动态数组的内存动态分配并且引用记数,不过动态数组不支持 copy-on-write 技术。这不是

2008-11-14 10:30:00 1827 2

原创 做程序员要细心,并且要怀疑自己

   今天周一,接着做上周没完成的一个模块,是根据玩家动作画指示箭头, 按照思路做好后,总是出现一些莫名奇妙的找不到资源文件的错误, CALL.., 因为找不到资源,我一致以为是我在绘图以及资源调用上出错了, 一次次的调试,没发现什么错误, 最后.... ,我一步步的调试, 总算找到根源, 我把CASE语句的语法搞错了, 得不到我要的字符..., 下面是我原来的做法LDistance:

2008-10-27 11:09:00 1455

转载 DELPHI组件安装全攻略

一、前言    由于系统不稳定,经常要重装DELPHI。而每次安装DELPHI的时候,原来注册的组件都被刷新,只能重新安装组件。众所周知,DELPHI的第三方组件N多,这个安装着实令人头疼。更有甚者,因为某些莫名其妙的原因, DELPHI的组件面板上有时居然只剩下一个标准组件。碰到这种情况,我不知道各位如何处理,我每次都是重新安装。为了解决这个难题,我决定深入了解 DELPHI组件是如何被注册。以

2008-10-18 13:11:00 2204 2

原创 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 3973

转载 C++中的内存对齐

2008-08-08 21:47         在我们的程序中,数据结构还有变量等等都需要占有内存,在很多系统中,它都要求内存分配的时候要对齐,这样做的好处就是可以提高访问内存的速度。我们还是先来看一段简单的程序:                                程序一1 #include iostream>2 using namespace std;3

2008-10-11 17:02:00 535

转载 C++垃圾收集--智能指针

   zero 坐在餐桌前,机械的重复“夹菜 -> 咀嚼 -> 吞咽”的动作序列,脸上用无形的大字写着:我心不在焉。在他的对面坐着 Solmyr ,慢条斯理的吃着他那份午餐,维持着他一贯很有修养的形象 ——— 或者按照 zero 这些熟悉他本质的人的说法:假象。 “怎么了 zero ?胃口不好么?”,基本填饱肚子之后,Solmyr 觉得似乎应该关心一下他的学徒了。 “呃,没什么,只是 …… Sol

2008-10-11 16:57:00 927

原创 第一篇文章

    得好好整整自己得Blog了, 得记录一下自己一天都干了些什么, 学到了些什么, 看到了些什么   别人说这是财富, 我想, 待我老了之后,这些的确是一笔不错得财富... , 它只属于我

2008-10-10 15:21:00 288

OllyDBG 入门教程

OLLYDBG是一个新的动态追踪工具,将IDA与SoftICE结合起来的思想,Ring 3级调试器,非常容易上手,己代替SoftICE成为当今最为流行的调试解密工具了.同时还支持插件扩展功能,是目前最强大的调试工具.

2011-03-09

Delphi与GDI+.chm

Delphi与GDI+.chm GDI+的基础教程

2010-08-29

向量几何在游戏编程中的使用

向量几何在游戏编程中的使用, 里面有两种版本, PDF 以及 Word

2010-08-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除