Delphi
文章平均质量分 75
小宇飞刀
小宇飞刀的技术博客,谢祥选的网络家园!
展开
-
获取本月第一天和最后一天的最简单的写法
获取本月第一天和最后一天的最简单的写法// FirstDay,LastDay:TDateTime; .... FirstDay := StrToDate(FormatDateTime(yyyy-MM-01, Now)) LastDay := IncMonth(FirstDay)-1; ....原创 2009-04-25 18:21:00 · 1652 阅读 · 0 评论 -
Windows XP下屏蔽Ctrl_Alt_Del键的方法
//调用下面两个函数就可以了procedure RunFuckCAD; //屏蔽Ctrl+Alt+Delprocedure StopFuckCAD; //取消屏蔽Ctrl+Alt+Del点击下载源文件主要代码为:unit Fuck_CAD_Unit;interfaceuses Windows, TLHelp32,SysUtils;const MyKernel=Snow原创 2009-04-27 18:24:00 · 541 阅读 · 0 评论 -
常用开源控件
┊常用开源控件┊ ZeosLib http://sourceforge.net/projects/zeoslib 一套开源的数据库控件,可以支持多数据库,相当不错:MSSQL、Interbase、FireBird、ProgreSQL、DB2、SYBASE、ORACLE、MySQL RxLib http://www.sourceforge.net/projects/rxlib 老牌控件包原创 2009-04-27 18:38:00 · 1303 阅读 · 0 评论 -
Delphi 2007企业版安装指南
Delphi 2007企业版安装指南------------------转自 http://blog.suolei.com/read.php/159.htm?page=1这些天相信大家都在忙着下载Delphi 2007吧,我也在第一时间从BT上下载了网上流出的专业版,但就在今天发现官方出了企业版的30天测试版下载,为了追求完美从下午开始对企业版分析,分析结果如下:一、关转载 2009-04-27 19:09:00 · 1304 阅读 · 0 评论 -
Windows通知栏图标高级编程概述
Windows通知栏图标高级编程概述任务栏(Taskbar)是微软公司在Windows 95中引入的一种特殊的桌面工具条,它为用户快速访问计算机资源提供了极大的方便,而状态栏(以下称通知栏)无疑是任务栏上较为特殊的一个窗口。编程人员可以调用API函数Shell_NotifyIcon向通知栏发送消息来添加、删除或修改图标,当在图标上发生鼠标或键盘事件时,系统会向应用程序发送编程时预先定转载 2009-04-27 19:14:00 · 1026 阅读 · 0 评论 -
如何在一个窗体中嵌入另一个窗体
本例子为在Form1的Panel中显示Form2窗体,请注意例子中的reintroduce关键字//Form2 子窗体uses unit2;procedure TForm1.FormCreate(Sender: TObject);begin form2 := TForm2.Create(Panel,self); form2.BorderStyle := bsNone;原创 2009-04-27 19:27:00 · 1717 阅读 · 1 评论 -
机房管理系统基本完成(自已比较满意的一个作品,纯属靠激情做的)
终于忙过一个段落了,机房管理系统基本完成,不指望它能挣钱的,只是学校原来机房管理系统有点不太好用,为了不让学生说中心真烂,也为了给中心的挣点面子,就象干什么似的把它给做了,再次申明:是免费的 系统的常用功能就不多说了,截几个图先,顺带把特色功能介绍一下: 系统结构:三层结构 系统模块:应用服务器端、控制管理端、学生端。 开发工具:Delphi 7.0+MS Sql Server 200原创 2009-04-27 19:41:00 · 1633 阅读 · 1 评论 -
Delphi好书推荐
Delphi的经典书籍:1、《Delphi 技术手册》 Ray Liscbner著 632页 65元 中国电力出版社2、《Delphi 5 开发人员指南》 Steve Teixeira & Xavier Pacheco著 1263页 138元 机械工业出版社3、《Delphi COM 深入编程》 Eric Harmon著 473页 48元 机械工业出版社4、《Delphi DirectX图形与游戏转载 2009-04-27 19:43:00 · 1272 阅读 · 0 评论 -
Delphi 小知识汇编
一些delphi开发的小技巧2008-04-22 21:16这是我从网上收集到的一些delphi开发的小技巧,现在与大家一起分享◇[DELPHI]网络邻居复制文件uses shellapi;copyfile(pchar(newfile.txt),pchar(//computername/direction/targer.txt),false);◇[DELPHI]产生鼠标拖动效果通过Mou原创 2009-04-27 19:51:00 · 817 阅读 · 0 评论 -
如何获取本机或者网关的互联网IP地址
有两种情况,一种是本机直接接入互联网,比如通过拨号或者ADSL;另一种是局域网通过一个网关或者路由接入互联网;尤其是第二种情况,如何在局域网内的一台机器上获得当前网关所取得的互联网IP地址呢?unit Functions;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Control原创 2009-04-27 19:53:00 · 2509 阅读 · 0 评论 -
PostMessage和SendMessage的区别
在控制别的应用程序的时候,经常需要等待直到某个功能结束,例如:打开一个窗口-->等待直到窗口结束这个时候就可以用到SendMessage如果在打开这个窗口后仍然需要对该窗口的界面进行设置,比如Edit的value等等,比如:打开一个窗口-->控制窗口的control的属性这个时候就需要PostMessage使用一个钩子程序截获消息后,使用SendMessage把消息发送到主处理程序进行处理,但是原创 2009-04-27 19:55:00 · 461 阅读 · 0 评论 -
Delphi防止同时出现多个应用程序实例--CreateMutex
多实例指同时有同一个应用程序的多个副本在运行。同一个应用程序的多个副本可以相互独立地同时运行,是Win32操作系统提供的一个功能。但有时,我们可能希望用户启动应用程序后就不再启动它的别的副本。比如某种设备资源的控制程序,像调制解调器和并行端口。这种情况下,用程序代码防止同时出现多个程序的副本在运行是非常必要的。 在16位的Windows中,要防止出现多个实例是很简单的,因为系统变量原创 2009-04-27 20:00:00 · 1016 阅读 · 0 评论 -
判断Exe文件是否正在运行的函数
function exe_is_running(const exeName:String) : Boolean; //exeName:不要扩展名的Exe主文件名var hCurrentWindow:HWnd; szText:array[0..254] of char;begin Result := False; hCurrentWindow:=Getwindo原创 2009-04-27 20:04:00 · 1127 阅读 · 0 评论 -
如何在程序里使用代码关闭由MessageBox()弹出的对话框?
方法: 用FindWindow找到窗口的hWnd,(可以通过窗口类名或标题),然后PostMessage(hWnd, WM_CLOSE, 0, 0); Windows API 提供了函数FindWindow,可以让应用程序在启动时检查自己或其他应用程序是否已经存在。该函数在Delphi中的语法为: function FindWindow(lpClassName: PChar,原创 2009-04-27 20:06:00 · 1728 阅读 · 0 评论 -
在Delphi中如何创建和使用udl文件
如何在Delphi中创建和使用udl文件:方法一:直接弹出UDL对话框:useADOConed; EditConnectionString(ADOQuery1); 方法二:⑴、右键---新建---文本文档,重命名为 connSet.udl 。⑵、双击打开 connSet.udl 按提示操作配置数据库,选择本地或远程数据库,配置好后退出。⑶、使用Delphi 控件TADOConnecti原创 2009-04-27 20:12:00 · 2606 阅读 · 1 评论 -
博主制作的通用MS-SQL数据库创建工具[有软件截图]
由于博主很多的系统都是采用Microsoft SQL Server 2000作为数据库平台,为了减少数据库安装和分发时大量的、重复性的工作量,也为了统一和专业化数据库的安装环境,于是就制作了这个通用的MS-SQL数据库安装分发工具。以后凡是MS-SQL数据库的安装,只要修改一下本工具的初始文件和创建脚本就可以方便、灵活的应用于任何采用MS-SQL的系统了。 这是为“价格检查监督管理系统”制作的原创 2009-04-25 09:29:00 · 878 阅读 · 0 评论 -
价格监督检查系统[有软件截图]
博主正在开发的一个大型的商品化软件作品----价格监督检查系统,三层结构,Orcle 10/MS-SQL Server 2000数据库平台。 系统需求与特点:高效率、大数据量批量处理,每一家检查单位的数据库记录都在500万条左右,大约占1G左右的磁盘空间;高度复杂的数据检索要求,用户数据与标准库的配对要求高度智能化与灵活性。截图一截图二截图三原创 2009-04-25 18:18:00 · 943 阅读 · 0 评论 -
几种捕获ClientDataSet.ApplyUpdates和SocketConnection异常的方法比较
问题:如何捕获ClientDataSet.ApplyUpdates的错误,不用ReconcileError呢?var cdsEmp:TClientDataSet; //保存 procedure TfrmEmp.btnSave(Sender: TObject); begin cdsEmp.RemoteServer.AppServer.BegTrans;原创 2009-04-25 18:19:00 · 971 阅读 · 0 评论 -
屏蔽Alt+Enter、Ctrl+Alt+Del、Ctrl+Esc等功能键(Windows 98/Me)
我在程序编写中,由于一机房管理系统的需要,必须屏蔽Ctrl+Alt+Del键。 如果不需要让用户按Alt+Enter、Ctrl+Alt+Del、Ctrl+Esc等功能键的时候加入以下代码:var temp:integer; begin SystemParametersInfo(Spi_screensaverrunning,1,@temp,0);原创 2009-04-25 18:24:00 · 1441 阅读 · 0 评论 -
Windows关机函数ExitWindowsEx使用大全(适用Windows所有操作平台)
{================================================================控制WINDOWS的开关:如关闭WINDOWS,重新启动WINDOWS等, ExitWindowsEx(UINT uFlags,DWORD dwReserved);是实现这一功能的API函数。如果Complile时提示EWX_XXXX未定义,那么请手动定义这几个常数,原创 2009-04-25 18:22:00 · 876 阅读 · 0 评论 -
Delphi中的钩子函数HOOK详解
Delphi中的钩子函数--HOOK,即系统挂钩捕捉键盘操作实例 在WINDOWS系统下,应用程序常常要截获其他程序的消息,并加以处理(例如跟踪键盘或鼠标的按键状况等)。 现在,我们假设在前台进行正常操作,在后台利用HOOK程序为系统安装一个键盘挂钩,当有按键操作时,系统发给键盘挂钩对应的消息,而这些消息被HOOK程序截获,并加以相应的处理,这样就可以监视键盘的使用状况了。一.实现方法转载 2009-04-27 19:31:00 · 1435 阅读 · 0 评论 -
Timeout MessageBox
Heres how to call a Message Box with a timeout, the message box closes itself after the timeout period was reached.The trick is to call an undocumented MessageBoxTimeout API located in user32.dll. T原创 2009-04-27 19:48:00 · 818 阅读 · 0 评论 -
Delphi如何调用C++写的DLL
BOOL WINAPI funname(char *pFileName,char *pID);这是C++写的一个DLL里面的函数我现在想用delphi调用这个函数静态:function funname(var pFileName:pchar;var pID:pchar):integer;stdcall;external DLLNAME.dll name funname; 动态:原创 2009-04-27 20:09:00 · 1161 阅读 · 0 评论 -
如何用Delphi调用由VC开发的ATL/COM服务,并响应其事件
现在有一个由VC开发的ATL/COM服务(EXE或DLL形式均可),该服务提供了一个方法及一个事件。现欲使用Delphi来调用该服务,方法就已经可以正常使用了,但是不知道怎样响应事件(使用VB及VC的调用都已经可以正常使用该服务的方法及事件了)。服务提供的方法及事件如下(VC中的定义):方法: SetData(LONG iData);事件: ReceiveData(LONG iData);--原创 2009-04-27 20:09:00 · 866 阅读 · 0 评论 -
捕获SocketConnection组件连接异常的几个好贴
1、多层分布式结构中怎样动态的判断客户端与服务器是否断开?2、请问能捕捉SocketConnection的连接错误事件吗?3、用SocketConnection开发的三层应用程序,客户端程序关闭时为何有时候会出现没有响应的情况?原创 2009-04-28 10:52:00 · 1735 阅读 · 0 评论 -
Windows XP下屏蔽Ctrl_Alt_Del键的方法
//调用下面两个函数就可以了procedure RunFuckCAD; //屏蔽Ctrl+Alt+Delprocedure StopFuckCAD; //取消屏蔽Ctrl+Alt+Del点击下载源文件主要代码为:view plaincopy to clipboardprint?unit Fuck_CAD_Unit; interface原创 2009-04-26 16:58:00 · 856 阅读 · 0 评论 -
CodeGear Delphi 2007 for Win32 专业版下载地址及安装、破解方法
CodeGear Delphi 2007 for Win32 专业版下载地址一:ed2k://|file|[CodeGear.RAD.Studio.-.Delphi.2007].CodeGear.RAD.Studio.Delphi.2007.iso|1293953024|1afe052b15a01b7b13c81c0274215f55|下载地址二: ftp://d2007:d2007@原创 2009-04-27 19:11:00 · 4887 阅读 · 0 评论 -
三层中如何在服务器与客户端之间传输自定义的'Record'类型数据的例子
博主自写的三层中如何在服务器与客户端之间传输自定义的Record类型数据的例子。效果图如下:例子源码下载:http://Delphi盒子上还未审核。现在已审核!下载地址为:http://sd.2ccc.com/downloads/simples/database/xieyunc_RDMRecordDemo.rarcsdn已审核了:http://download1.cs原创 2009-04-27 19:12:00 · 950 阅读 · 0 评论 -
如何使用最少的代码为你的窗体有效地提供剪贴板的相关操作
如何使用最少的代码为你的窗体有效地提供剪贴板的相关操作关键字:剪切 复制 粘贴 sendmessage 类 别:API procedure TForm1.Cut1Click(Sender: TObject);beginSendMessage (ActiveControl.Handle, WM_Cut, 0, 0);end;procedure TForm1.Copy1Cli原创 2009-04-27 19:56:00 · 433 阅读 · 0 评论 -
DLL注入代码
下面是注入的过程的代码,博主在Windows XP/2000测试通过,由于我没有Windows 2003/Vista,故没有测试。(2009-4-15 01:20 Windows 2003 Server下测试也已通过)----此篇文章来自《深入WINDOWS编程》unit toDllUnt;interfaceuses Windows, Messages, SysUtils,转载 2009-04-27 19:57:00 · 585 阅读 · 0 评论 -
对MIDAS的“过时论”的一点看法
刚看到DFW的达人王兄的《对Borland 和 N-TIER的牢骚》,发现今天的BLOG有内容可写了:P 本人非常同意现在的系分、高手都很热衷于赶时髦,或曰“浮躁”。我也见过非常非常之多人是在为了三层而三层,把简单的问题复杂化,把没必要做成三层的应用特地改成三层,结果得不偿失,事倍功半。 但对王兄后面的一些技术性分析,我觉得还是有值得商榷之处。 首先,李维所说的:DCOM 的连接速度原创 2009-04-29 19:47:00 · 774 阅读 · 0 评论 -
IndyTCPServer问题 [转]
现在我的TCPServer的工作线程都没有异常,但是当大量客户端以高速连接的时候,为什么停止TCPServer(ACtive := False;)的时候会报告线程停止错误?请指教。 急!在线等。 --------------------------------------------------------------- 呵呵 Indy的Bug!! 修改unit IdTCPServ原创 2009-04-29 19:54:00 · 812 阅读 · 0 评论 -
Self-Delete程序之Delphi版本,终于搞定了
//转贴者:以前看过陆麟先生翻译过一篇这样的文章,是c版本的,我用delphi改写了没成功,今天去清华bbs转悠看见了这篇delphi版本的,特贴出来发信人: Litoad (Rick), 信区: Delphi标 题: Self-Delete程序之Delphi版本,终于搞定了。 (转载)发信站: BBS 水木清华站 (Mon Jun 4 20:51:55 2001)【 以下文字转载自 Pro转载 2009-04-29 21:39:00 · 1035 阅读 · 0 评论 -
EHLib安装到D2007的方法 大 | 中 | 小
EHLib安装到D2007时会发生错误,是因为D2007在SysUtils单元定义了TBytes类型,而早期的Delphi没有定义,EHLib自己在EhLibVCL定义了,这造成在D2007里面的冲突。打开EhLibVCL单元,把下面一行: TBytes = array of Byte;改为:{$ifndef VER185} //加上版本判断,VER185是D2007在SysUtils单原创 2009-04-29 21:43:00 · 772 阅读 · 0 评论 -
如何在网页中弹出的模式窗口,就像C/S中的SHOWMODAL类型窗口
在网页中弹出的模式窗口的函数为: window.showModalDialog(sURL [, vArguments] [, sFeatures])1.模态窗口的打开,model window open2.模态窗口的关闭,model window close3.模态窗口的传递参数,model window get valuse4.其他....,other ..1.window翻译 2009-04-29 21:44:00 · 1481 阅读 · 1 评论 -
WebApplication开发利器--WebSnap
WebSnap是DELPHI6最新的WebApplication开发架构,她以前一版本的WebBroker为基础,并加入了许多在WebBroker+InternetExpress架构中所缺少的功能。虽然说是加强,但从技术角度上来看,两者其实都被重新设计过了。以往的WebBroker+InternetExpress架构中,最大的问题是支援的功能过 于简单,例如Session, PagesManag原创 2009-04-29 21:54:00 · 2275 阅读 · 0 评论 -
用Delphi实现远程屏幕抓取[网摘]
用Delphi实现远程屏幕抓取 ---- 在网络管理中,有时需要通过监视远程计算机屏幕来了解网上微机的使用情况。虽然,市面上有很多软件可以实现该功能,有些甚至可以进行远程控制,但在使用上缺乏灵活性,如无法指定远程计算机屏幕区域的大小和位置,进而无法在一屏上同时监视多个屏幕。其实,可以用Delphi自行编制一个灵活的远程屏幕抓取工具,简述如下。 ---- 一、软硬件要求。 ---- Windo转载 2009-04-29 21:55:00 · 708 阅读 · 0 评论 -
用Delphi实现Ping类
网络上的一个实现PING功能的类,修改了部分代码。=======================================unit ping; interfaceusesWindows, SysUtils, Classes, Controls, Winsock, StdCtrls;function pingip(ip:string):strin原创 2009-04-29 21:56:00 · 2457 阅读 · 1 评论 -
如何编写SMTP邮件服务器
如何编写SMTP邮件服务器 许多时候,我想不通为什么不能直接将信件送到对方(POP或IMAP)服务器上,为什么非要通过一个莫名其妙的SMTP邮件服务器转交一次,实在不服气,如果使用UNIX,这个问题就很好解决,用sendmail就能完成递送任务,但在Windows下呢?同样的,一定也有办法饶开SMTP Server直接递送到对方的远程邮局服务器上,难得住别人,难得住我们程序员吗?分析相关协议(R原创 2009-04-29 21:57:00 · 1951 阅读 · 0 评论 -
在DELPHI中用ADSI来控制IIS,检测、增加、删除虚拟目录
//在DELPHI中用ADSI来控制IIS,检测、增加、删除虚拟目录//========================================================//本代码转自网络,是WebService开发时经常要用到的东东,感谢原作者//本人稍作修改,并将其整理,希望对大家有用//==============================================原创 2009-04-29 21:58:00 · 1010 阅读 · 0 评论