随笔分类 -  Delphi

MessageBox的MB_SYSTEMMODAL参数用法
摘要:经测试,使用了MB_SYSTEMMODAL参数,弹出对话框时此对话框会抢夺焦点,即就算焦点在其他程序上,也强.其他的几个参数都没有这个效果MessageBox(self.Handle,'你好','好',MB_OK or MB_ICONQUESTION or MB_SYSTEMMODAL)//or MB_TASKMODAL// or MB_SYSTEMMODAL 阅读全文

posted @ 2013-04-09 15:30 Handll 阅读(3194) 评论(0) 推荐(0)

淘宝接口 TopAPi(转)
摘要:本文转自delphi盒子:http://www.2ccc.com/article.asp?articleid=6121感谢作者废话先不说,先用D2007写一个Demo,演示一下调用淘宝的接口,让大家心里有个数,很简单,新建一个工程,拖一个IDHttp,Button和Memo到窗体上去然后在这个Button的OnClick事件中写入如下代码:[delphi]viewplaincopyprocedureTfrmMain.btnCallTopAPIClick(Sender:TObject);varAHttpRequestURL:String;AHttpReponseContent:TMemorySt 阅读全文

posted @ 2012-12-23 22:36 Handll 阅读(4110) 评论(0) 推荐(0)

让你的程序通过XP防火墙(转)
摘要:procedure TForm1.Button1Click(Sender: TObject);var FwMgr,Profile,FwApp: variant;begin FwMgr := CreateOLEObject('HNetCfg.FwMgr'); Profile := FwMgr.LocalPolicy.CurrentProfile; FwApp := CreateOLEObject('HNetCfg.FwAuthorizedApplication'); FwApp.Name :='我的测试'; //显示名字 FwApp.Process 阅读全文

posted @ 2012-10-09 14:33 Handll 阅读(297) 评论(0) 推荐(0)

获取操作系统类型/版本以及是否是64位的函数
摘要://以下代码均来自网络function GetWindowsVersionString: AnsiString;var VI: TOSVersionInfoA;begin VI.dwOSVersionInfoSize := SizeOf(TOSVersionInfoA); if GetVersionExA(VI) then with VI do Result := Trim( Format( '%d.%d build %d %s', [dwMajorVersion, dwMinorVersion, dwBuildNumber, szCSDVersion] ) ) else Re 阅读全文

posted @ 2012-03-10 00:18 Handll 阅读(696) 评论(0) 推荐(0)

cxGrid用法(转)
摘要:好久没有写笔记了,现在有点时间,来篇。 happycyp 2007-7-19cxGrid功能强大,适合做企业级的复杂查询。非常方便。但是对其用法介绍的并不多,在此总结他人的使用经验和自己的一点小经验,供大家参考。(1)动态设置显示格式procedure SetDisplayFormat(ACtrlData: TClientDataSet; TbView: TcxGridDBTableView);var i: integer;begin if ACtrlData.RecordCount <= 0 then Exit; try TbView.ClearItems; ACtr... 阅读全文

posted @ 2012-02-29 21:35 Handll 阅读(8036) 评论(0) 推荐(0)

Delphi XE2 下载地址(记录)
摘要:lsuper_Embarcadero.Delphi.XE2.RTM.Inc.Update3.v16.0.4358.45540.Lite.v5.4.rarhttp://115.com/file/dnrvjv0v#其他文件:http://115.com/file/dnrvuqfj#FireMonkey-iOS.dmghttp://115.com/file/e6g8x36u#setup_paserver.ziphttp://115.com/file/bhtcvxny#setup_paserver.exehttp://115.com/file/e6g8xbrf#RaveReportsSetup_Win 阅读全文

posted @ 2012-02-17 02:08 Handll 阅读(1091) 评论(0) 推荐(0)

delphi Bpl 学习杂记
摘要:bpl包其实就是dll,不过它只能被delphi调用.bpl包分设计器包和运行期包 两种包可以包含pas和dfm文件,就把它当dll看待就是了.要调用bpl中的函数需要这样:由此看出:如下借用网友的一段话:其实也不用 exports 子句的,声明在单元 interface 部分的类及其方法,普通过程或方法,在生成 bpl 时,Delphi 都会自动帮你 export 它们的,但是 export 的名称会经过 name mangling 的处理,与原来声明的不同了,如 Procedure MyProc; 在 bpl中 export 的名字变为 "@单元名@MyProc$qqrv&quo 阅读全文

posted @ 2012-02-09 02:01 Handll 阅读(1616) 评论(1) 推荐(0)

腾讯网页登陆的加密机制
摘要:转自:http://www.cnblogs.com/DebugLZQ/archive/2011/12/31/2309100.html 问题的引入:前些天,几乎是再同时,CSDN等几大门户网站用户密码被外泄了,我没有感到很惊讶。因为现在很多大型的网站对用户信息,特别是,想用户名、 密码这样的信息保护不够完善!造成这种问题的原因是多种多样的,很多小网站本来建站的成本很低,随便找几个在校的计算机系大学生来花个几千RMB,网站就 算搭建起来了。大学生的水平是参差不齐的,特别是再计算机系(关于这一点,我绝对深信不疑,DebugLZQ对自己的老本行还是略知一二的)。这样子建立 起来的网站会有很多很多问题, 阅读全文

posted @ 2012-02-06 00:26 Handll 阅读(1426) 评论(0) 推荐(0)

ORM之硬伤[转]
摘要:转自:http://www.cnblogs.com/Barton131420/archive/2007/01/07/613955.html 园子里有些人,他们真以为自己明白了面向对象,然后装着满腹经纶,侃侃而谈,一篇接一篇,不厌其烦地喊着ORM如何如何。你以为他真的明白“面向对象”么?其实,他对面向对象的理解仅限于教科书中的封装、继承和多态,或者再知道一点面向对象的若干原则但其实并不真正理解。笔 者愚钝,入行多年尚不懂面向对象,只懂得用其形而不懂用其实。五年后的某一天终于开窍,明白了面向对象之实,也仅仅是一个开始而已。当又经历了另一个五年 的倦怠,发现并理解了设计模式、面向方面等技术作为面向对 阅读全文

posted @ 2012-02-01 01:42 Handll 阅读(287) 评论(0) 推荐(0)

最好的多层次框架——Data Abstract
摘要:在软件开发中,建立数据库的重要性尤为重要,我们总是希望一次建立好可扩展的数据库方案,然而总是事与愿违。我们往往会因为数据库的可扩展性不好而不断的重新设计数据库,这不免使我们浪费了过多是时间!在这个时候要是有什么捷径可以寻就好了!也许Data Abstract就能为您解决所有问题。它是最好的多层次框架,它提供端到端的解决方案,同时也可以很轻松地建立起可扩展的数据库方案以满足如今的分布式系统要求。使用它,您可以轻松做到——为.NET,Mono,32/64位的Windows以及Linux建立可扩展的、跨平台的多层次数据库解决方案。使用一个通用的代码库处理不同的数据库设计或数据库系统。使用RAD Sc 阅读全文

posted @ 2012-02-01 01:05 Handll 阅读(729) 评论(0) 推荐(0)

我常用的delphi 第三方控件(转)
摘要:转自:http://www.cnblogs.com/xalion/archive/2012/01/09/2317246.html有网友问我常用的控件及功能。我先大概整理一下,以后会在文章里面碰到时再仔细介绍。 Devexpress VCL 这个基本上覆盖了系统界面及数据库展示的方方面面,是做桌面系统必备的一套控件,目前的版本是2011.2.3, 支持win32 及win64。 AutoUpgrader 这个是自动更新的一个小控件,适合桌面程序自动更新,但是自从2007 年后,就没有更新了,我对其进行了修改,使其可以安装在delphi XE2 上,同时支持win64。 Devart 公司出品的U 阅读全文

posted @ 2012-01-31 18:01 Handll 阅读(479) 评论(0) 推荐(0)

第一个kbmMW 服务例子
摘要:转自:http://www.cnblogs.com/xalion/archive/2012/01/31/2332417.html我们今天做一个kbmMW 简单服务,功能是客户端调用服务器端的过程,完成一个累加的功能。首先我们建立一个空白的vcl form 应用程序,并放置几个控件,如图所示:其中有三个控件,一个kbmMWSever1,一个kbmMWTCPIPIndyServerTransport1,还有一个就是启动按钮。对应的属性如下: 并设置kbmMWTCPIPIndyServerTransport 的bindings 的ip 为0.0.0.0,端口为3000。ip为0.0.0.0 代表侦听 阅读全文

posted @ 2012-01-31 17:50 Handll 阅读(480) 评论(0) 推荐(0)

kbmMW 的安装与配置
摘要:转自:http://www.cnblogs.com/xalion/archive/2012/01/29/2331218.html 目前的KbmMW 最新版是4.0 beta 版,它支持最新的delphi XE2 ,同时支持win32,win64,mac osx的编译开发。增加了原生的JSON 的支持(看来JSON 是越来越热了:)),同时提高了http web 的功能,作者已经用最新的KbmMW 替换了原来使用aspx 的下载网站,其使用kbmMW 的web服务,并使用AJAX 来实现数据列表,经过我的使用,效果还不错。由于kbmMW 安装不是一次到位的,而且里面配置繁多,为了方便大家使用,下 阅读全文

posted @ 2012-01-31 17:46 Handll 阅读(880) 评论(0) 推荐(0)

为什么要使用多层开发?
摘要:转自:http://www.cnblogs.com/xalion/archive/2012/01/14/2322514.html 随着各种应用系统越来复杂,用户终端类型越来越多,传统的C/S 系统面临着越来越多的问题和挑战,我们先看一下C/S 结构的架构图: 客户端系统一般通过数据库的客户端与数据库连接,然后通过SQL 语句访问数据库服务器,数据库根据客户端的请求返回数据,在简单的系统里面这种方式基本上没有什么问题,而且开发起来比较简单。但是这种结构面临这下面一些问题: 1.一般商务逻辑都建立在客户端,当出现不同的语言开发一个系统时,每种语言都必须写同样的商务逻辑,造成了重复开发,浪费人力物. 阅读全文

posted @ 2012-01-31 17:38 Handll 阅读(358) 评论(0) 推荐(0)

C/S系统的扩展
摘要:转自:http://www.cnblogs.com/xalion/archive/2012/01/12/2320440.html在讨论多层开发前,先谈一下老的C/S 程序。 几个月前,我的一个朋友找我,说是我以前给他做的一个系统,原来是在局域网的运行的,现在有两个校区,另外一个校区也想使用,两个校区都可以上互联网,让想办法解决。我去看了一下,是我10年前给开发的c/s 系统,源代码早都不见了。我说可以按现在的模式重新开发一套,但是需要时间和money.朋友要求一周内就要解决,同时认为系统现有的功能已经足够了,而且系统非常稳定,他们已经习惯操作了,没有必要再开发了。看现有的条件下如何快速、安全. 阅读全文

posted @ 2012-01-31 17:23 Handll 阅读(292) 评论(0) 推荐(0)

Delphi常用多层框架介绍(转)
摘要:转自:http://www.cnblogs.com/xalion/archive/2012/01/18/2325418.html目前在delphi 开发多层应用的框架基本上集中在以下几种,每种开发框架都有自己的优缺点,没有最好的,大家可以根据自己的实际需求选择相应框架,我把我本人在使用几种框架的体会与大家分享一下。如有不对之处,可以拍砖。 1. DELPHI 自身提供的DataSnap 从delphi 3 开始,delphi 自身就开始支持多层开发,后期的版本逐步加强三层开发功能,在delphi 6 以后,把这一功能叫Datasnap,并且每个都有很多变化,包括DBExpress 的数据... 阅读全文

posted @ 2012-01-31 14:13 Handll 阅读(990) 评论(0) 推荐(0)

Delphi操作XML
摘要:转自:http://hi.baidu.com/0xcea4/blog/item/efda40ae580433f2fbed508a.htmlDelphi操作XML是很方便的,主要有两种方法; 1.用TClientDataSet操作XML;TClientDataSet是个好东西,用它操作XML是很简单的事,不过缺点是只能操作固定格式的 XML,它适合操作表结构的数据,如果你需要把数据表导出成XML那用TClientDataSet是个好主意,比如下面是一个数据集导出成XML的方 法: procedure ExportToXML(SrcDataSet:TDataSet;const XMLFileNa. 阅读全文

posted @ 2012-01-31 12:58 Handll 阅读(1459) 评论(0) 推荐(0)

使用 idHTTP 获取 UTF-8 编码的中文网页
摘要:转自万一老师的博客,网上有很多方法,均测试无效后有问题,测试这个方法是真正准确可行的:)uses IdHTTP;const Url = 'http://del.cnblogs.com';procedure TForm1.Button1Click(Sender: TObject);var stream: TStringStream; idHttpObj: TIdHTTP;begin stream := TStringStream.Create('', TEncoding.UTF8); // idHttpObj := TIdHTTP.Create(nil); idH 阅读全文

posted @ 2012-01-07 15:40 Handll 阅读(323) 评论(0) 推荐(0)

delphi 从TWebBrowser WebBrowser得到全部html源码(转)
摘要:转自:http://blog.csdn.net/webouse/archive/2009/02/19/3912174.aspx网上查询出很多方法,归结起来有两种1、使用IPersistStreamInit接口实现,函数名都是function GetHtml(const WebBrowser: TWebBrowser) : string;这个函数确实可以得到全部的html源码,但是里面用到了hHTMLText := GlobalAlloc(GPTR, BufSize); 而没有调用GlobalFree释放hHTMLText ,加上GlobalFree(hHTMLText),但是程序会出错,怪不得 阅读全文

posted @ 2012-01-07 14:39 Handll 阅读(320) 评论(0) 推荐(0)

delphi5 ADOStoredProc commandtimeout 超时设置
摘要:delphi5 中 ADOQuery,ADOStoredProc控件中,是不能直接将 commandtimeout 超时设置的,因为根本没有这个属性。要进行一下类强制转换处理,如下:Tadodataset(ADOQuery).commandtimeout:=4*60;Tadodataset(ADOStoredProc).commandtimeout:=4*60;就可以达到commandtimeout 超时设置。转自: http://hi.baidu.com/piao_live/blog/item/6002355804866799800a18b7.html 感谢作者分享经验. 阅读全文

posted @ 2011-11-29 14:36 Handll 阅读(385) 评论(0) 推荐(0)