怎么在delphi中读取Excel数据(各种详细操作)
摘要:( 一 ) 使用动态创建的方法首先创建 Excel 对象,使用ComObj :VarExcelApp : Variant ;ExcelApp := CreateOleObject ( '' Excel.Application'' ) ;1 ) 显示当前窗口:ExcelApp.Visible := True ;2 ) 更改 Excel 标题栏:ExcelApp.Caption := '' 应用程序调用 Microsoft Excel '' ;3 ) 添加新工作簿:ExcelApp.WorkBooks.Add ;4 ) 打开已存在的工
阅读全文
posted @
2011-02-28 16:12
A.wei
阅读(2082)
推荐(0)
DELPHI根据进程名强制关闭进程
摘要:原理:循环所有进程,取得相同名的进程,得到进程句柄,关闭killtask('cmd.exe');//结束进程function TForm1.KillTask(ExeFileName: string): Integer;constPROCESS_TERMINATE = $0001;varContinueLoop: BOOL;FSnapshotHandle: THandle;FProcessEntry...
阅读全文
posted @
2010-08-19 09:15
A.wei
阅读(433)
推荐(0)
delphi 获取其他进程句柄的几种方法
摘要:本文主要跟大家介绍Delphi中获取其它进程的窗口句柄,在Delphi中获取其它进程的窗口句柄,绝大部分人首先想到的会使用:FindWindow或者用GetWindow来遍历查找,如:handle := FindWindow(nil,PChar('窗口的标题'));或者:procedure TForm1.Button1Click(Sender: TObject); var hCurrentWi...
阅读全文
posted @
2010-08-19 09:13
A.wei
阅读(475)
推荐(0)
从INDY9升级到INDY10的UDPServer改正方法
摘要:1、TIdUDPClient INDY9: TIdUDPClient1.SendBuffer('127.0.0.1',9999,Request,SizeOf(Request)); TIdUDPClient1.ReceiveBuffer(ResponseBlock,SizeOf(ResponseBlock)); INDY10: VAR:Temp:Tbytes; TIdUDPClient1.SendB...
阅读全文
posted @
2010-07-31 12:05
A.wei
阅读(774)
推荐(0)
从Indy9升级到Indy10时IdTcpServer的变化
摘要:从Indy9升级到Indy10时IdTcpServer的变化一、从Indy9升级到Indy10时IdTcpServer的变化 试用了CodeGear2007后感觉挺好的,于是决定升级。别的都很顺利,就是程序中用到的控件Indy9.18要升级到Indy10.15,IdTcpServer变化的比较大。 首先Indy9.18中的TcpServer在Indy10中被分割成了2个组件:TIdCmdTCPSe...
阅读全文
posted @
2010-07-31 12:04
A.wei
阅读(1120)
推荐(0)
半小时精通正则表达式
摘要:半小时精通正则表达式 作者:Web应用网 来源:Web应用网 跟我学正则表达式! 想必很多人都对正则表达式都头疼.今天,我以我的认识,加上网上一些文章,希望用常人都可以理解的表达方式.来和大家分享学习经验.开篇,还是得说说 ^ 和 $ 他们是分别用来匹配字符串的开始和结束,以下分别举例说明 "^The": 开头一定要有"The"字符串; "of despair$": 结尾一定要有"of des...
阅读全文
posted @
2010-07-31 09:23
A.wei
阅读(329)
推荐(0)
用DELPHI的RTTI实现数据集的简单对象化
摘要:在《强大的DELPHI RTTI--兼谈需要了解多种开发语言》一文中,我说了一下我用DELPHI的RTTI实现了数据集的简单对象化。本文将详细介绍一下我的实现方法。 首先从一个简单的例子说起:假设有一个ADODataSet控件,连接罗斯文数据库,SQL为:select * from Employee 现在要把它的内容中EmployeeID, FirstName, LastName,BirthDa...
阅读全文
posted @
2010-07-14 05:48
A.wei
阅读(375)
推荐(0)
[转]Delphi 的RTTI机制浅探
摘要:目录===============================================================================⊙ RTTI 简介⊙ 类(class) 和 VMT 的关系⊙ 类(class)、类的类(class of class)、类变量(class variable) 的关系⊙ TObject.Cl...
阅读全文
posted @
2010-07-14 05:22
A.wei
阅读(303)
推荐(0)
Inno setup 常用修改技巧
摘要:1 、如何让协议许可页面默认选中我同意按钮 [code]procedure InitializeWizard();beginWizardForm.LICENSEACCEPTEDRADIO.Checked := true;end;2、自定义安装程序右上角图片大小 [code]procedure InitializeWizard();beginWizardForm.WizardSmallBitmapI...
阅读全文
posted @
2010-06-09 10:35
A.wei
阅读(613)
推荐(0)
Lazarus 可设计 WinCE/ARM-Linux程序
摘要:Lazarus不光可以交叉编译多种CPU的程序,连 Sun 的跨平台遗愿也给实现了,而且还是编译成原生代码呢!Lazarus 是 Freepascal 的图型界面 IDE, 使用 Freepascal 的编译器,界面和操作与 Delphi 几乎一样,而且有全中文界面(像小某这般的半文盲是何等的喜事呀!),可编译控制台程序和GUI程序。看它的编译选项,挺吓人的:可交叉编译以下CPU的程序: arm、...
阅读全文
posted @
2010-05-29 16:55
A.wei
阅读(2598)
推荐(1)
在Delphi 7中使用加密的SQLite
摘要:SQLite是一个很好用的单机数据库,体积小巧,支持大多数SQL 92语法,速度快,健壮,使用和分发都很简单。但是免费开源版并不提供加密功能,需要加密得购买原作者的一个插件,价格$2000!我们只好使用第三方的加密版本,这是被逼的。当然还有一个选择就是,在开源的C文件中已经预留了加密接口,有能力的可以自己去实现。闲话休提。第三方的加密版本已经有人实现了,还不止一个。下面分别介绍一下:※...
阅读全文
posted @
2010-03-21 07:04
A.wei
阅读(1513)
推荐(0)
[转载] Delphi 7事件的多处理机制
摘要:首先解释一下这个题目。在我使用Delphi 7的过程中发现,一个对象的事件只能被一个过程处理。如果多次给这个对象的事件赋给处理事件的过程,最后真正处理事件的将是最后赋值的那个过程。例如,有类TMyClass中定义了一个事件OnSomeFired,在类TClientClass中该类被实例化,它的事件被处理。如下所示:constructor TClientClass.Create;var myObj:...
阅读全文
posted @
2009-04-16 16:49
A.wei
阅读(518)
推荐(0)
Delphi 的编译指令(3): 常用的预定义条件标识符
摘要:版本标识:VER10 : Turbo Pascal 1VER20 : Turbo Pascal 2VER30 : Turbo Pascal 3VER40 : Turbo Pascal 4VER50 : Turbo Pascal 5VER60 : Turbo Pascal 6VER70 : Turbo Pascal 7 / Borland Pascal 7VER80 : Delphi...
阅读全文
posted @
2009-02-26 09:09
A.wei
阅读(672)
推荐(0)
Delphi 的编译指令(2): 条件语句的更多用法
摘要:1. $IFDEF 等同于 $IF DEFINED(...) :它们的结束分别是: $ENDIF、$IFEND; 例子中的 VER200 是 Delphi 2009 的标识.begin{$IFDEF VER200}ShowMessage('这是 Delphi 2009');{$ENDIF}{$IF DEFINED(VER200)}ShowMessage('这是 Delphi 2009');{$IF...
阅读全文
posted @
2009-02-26 09:07
A.wei
阅读(844)
推荐(0)
Delphi 的编译指令(1): $DEFINE、$UNDEF、$IFDEF、$ELSE、$ENDIF
摘要:一个程序从无到有的过程是这样的: 编辑代码 -> 预处理 -> 编译(成dcu等) -> 链接(为exe等).什么是预处理? 譬如 VCL 中有很多代码是兼容 Linux 的, 在 Windows 下就需要在编译之前预处理掉那些 for Linux 的代码.1、判断操作系统:其中的 "MSWINDOWS" 和 "LINUX" 就是 Delphi 预定义的 "条件标识符".begi...
阅读全文
posted @
2009-02-26 09:06
A.wei
阅读(3817)
推荐(0)
(转载)用Delphi创建windows服务程序(3)
摘要:Windows2000/XP和2003等支持一种叫做"服务程序"的东西.程序作为服务启动有以下几个好处:(1)不用登陆进系统即可运行.(2)具有SYSTEM特权.所以你在进程管理器里面是无法结束它的.笔者在2003年为一公司开发机顶盒项目的时候,曾经写过课件上传和媒体服务,下面就介绍一下如何用Delphi7创建一个Service程序.运行Delphi7,选择菜单File-->New-->...
阅读全文
posted @
2009-02-01 11:01
A.wei
阅读(1916)
推荐(0)
用Delphi编写Windows服务程序(2)
摘要:Windows的服务是一个比较实用的功能,你的程序可以在Windows未进行登录的时候就开始运行,不受用户注销的影响,也不容易被用户误关闭。但是编写服务也许不是一件容易的事情,幸好Delphi给我们提供了一个模板,可以很容易的编写一个标准的Windows服务程序。首先,在Delphi内新建一个Service Application。此时,Delphi已经给我们建好了一个Service程序的框架,我...
阅读全文
posted @
2009-02-01 09:34
A.wei
阅读(3095)
推荐(0)
用Delphi编写Windows服务程序(1)
摘要:一、Windows服务简介 服务程序(Service Application)是一种运行于WinNT的后台程序,每个服务程序(Service Application)中可能包含若干个服务(Service),每个服务就是其中的一个线程(该服务也可以创建多个子线程)。采用服务,应用程序可以获得特殊的权限,而且不会被用户通过Win2000的任务管理器直接结束程序,所以服务常常用来实现一些特殊的目标。 ...
阅读全文
posted @
2009-02-01 09:22
A.wei
阅读(4277)
推荐(0)
完成DELPHI的不可能功能:宏替换!(如何根据字符串来创建对象)
摘要:完成DELPHI的不可能功能:宏替换!(如何根据字符串来创建对象) 我们在做一个比较大的系统(采用MDI方式)的时候,希望项目中的菜单、窗体全部是动态创建的,这样的话,程序员就很容易利用数据库将这些内容储存起来,需要的时候再根据这个用户的权限来取得相应的记录,根据这些记录来创建菜单、表单等! 在这个过程中,我们必须面对的一个问题是: 在储存窗体对象的时候我们只能储存它的对象名(字符串), 但我们在...
阅读全文
posted @
2009-01-14 23:59
A.wei
阅读(1134)
推荐(0)