![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Delphi编程
文章平均质量分 76
不得闲
逍遥乎八极之外,虚浮世间以乘天风云马
展开
-
将DBGrid的数据导出到Excel文件保存
近来一段时间忙的慌,接了个帮人升级系统的小单子。其中涉及到将DbGrid的数据转到Excel文件并保存的功能,其实本身倒也不难。只是有些麻烦。想想这种功能,肯定有先人已经写好的现成东西直接拿过来用就应该OK了。于是Google一番,果然有很多类似的例子代码,俺在盒子上找到了和俺的需求相近的一个代码DbGrid2Excel这个代码。他那个写的确实不错,但是有些地方也还是不能尽如人意的哈,于是就在他的原创 2009-05-21 23:07:00 · 5890 阅读 · 4 评论 -
Access无法启动应用程序,工作组信息文件丢失,或是已被其他用户已独占方式打开
在使用有密码的Access数据库的时候出现 无法启动应用程序,工作组信息文件丢失,或是已被其他用户已独占方式打开 的错误。 解决办法如下: 将数据库连接字符串中的密码部分修改成Jet OLEDB:Database Password=pwd 。 eg. 原来的连接字符串:"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=数据转载 2009-10-09 11:54:00 · 16250 阅读 · 7 评论 -
关于Sqlite工具 DxSqliteManagement
当了个wxsqlite3的加密库,然后在网上找了好几个工具,貌似用该库去执行加密后的库就不行,要么是不支持加密,要么是支持加密,但是用该库创建的文件打不开!于是花了一个星期做这么个玩意(一般都是晚上,白天要上班,辛苦中)。因为是为仓促之作,所以细化方面没有深入,另外因为时间原因,还有好些个东西没有来得及实现(比如一些例外的小工具,视图,多编码格式的支持)。时间空闲多时,再做后续开发,目前能支原创 2009-10-15 08:18:00 · 5700 阅读 · 34 评论 -
SQLite研究——内置函数
SQLite研究——内置函数 Core Functions Thecore functions shown below are available by default. Additionalfunctions may be written in C and added to the database engine usingthe sql转载 2009-10-16 23:32:00 · 1947 阅读 · 0 评论 -
判断是否是64位操作系统
在看一个外国佬的代码的时候,看到一个API函数,然后随手查了查MSDN,原来是新加的用来判断是否是Win64位系统的,于是写了一个函数用来判断是否是64位操作系统:function IsWin64: Boolean;var Kernel32Handle: THandle; IsWow64Process: function(Handle: Windows.THandle; var原创 2009-11-25 13:01:00 · 2144 阅读 · 0 评论 -
New 和 GetMem 的不同之处
New 和 GetMem 的不同之处2006-12-23 14:56如果操作一个 record 指针中的字符串变量,会不会丢失 string 的内 存空间,造成内存泄漏? 结果是:使用 New() 分配的内存,会自动初始化 record 的内容,并且在 Dispose 时自动 清除所有已分配的内存,包括 string 或其他动态数组的内存。GetMem/FreeMem 没有这个转载 2009-11-25 20:32:00 · 840 阅读 · 0 评论 -
CPU信息的获得,比较全面的
最近到整理了一份CPU的信息,应该算是比较全面的吧。几乎现在所有的X86 CPU都内置了CPUID指令以辨别真伪,一些CPU厂商例如AMD,VIA等还内置了更加丰富的扩展CPUID指令,用着更方便了。下面我们利用Delphi来实现一个CPU检测的软件。CPUID的调用方式如下: asm push eax push ebx push ecx push edx m转载 2009-11-26 21:55:00 · 1254 阅读 · 0 评论 -
使用MSHTML解析HTML代码
从国外站点转过来的:C++版本:I have a lot ofexperience in programming low-level MSHTML and I always see questionson how one can use MSHTML to parse HTML and then access elements viathe DOM. Well,转载 2009-12-06 21:53:00 · 7448 阅读 · 2 评论 -
Delphi的字符串与16进制的相互转换函数的汇编代码
年终奖没发,心情有点低落,不想做公司的东西,于是将以前一个朋友问的关于字符串与16进制串的相互转换的汇编代码实现了一下,没啥技术含量,按照Delphi的汇编规则走就行了,里面也没有涉及到任何算法!速度快或不快都不重要,仅仅是无事发泄一下的玩意(只测试2007,2010的我没测试,如果有2010的自行测试一下),代码如下:function StrToHex(C原创 2010-02-06 14:46:00 · 2902 阅读 · 1 评论 -
Delphi皮肤控件分析与QQ的皮肤变色功能
关于界面美化方面,一直是一个脑壳疼的问题!以前一直偷懒,使用的三方控件!但是在使用了一段时间之后,都或多或少的有些问题!不是我说三方控件如何如何的不好!只是三方控件多是庞大的一个肢体,要兼顾的用户群体很多,所以同时它要考虑的问题也增加了很多,然而一个程序出现Bug是在所难免的,所以三方控件那庞大的肢体在出了问题之后,修改就相当麻烦,首先得捋顺控件的实现过程,才能找到问题所在进而修原创 2010-02-22 23:34:00 · 8236 阅读 · 6 评论 -
虚拟桌面原理及实现
一、为什么要使用虚拟桌面。 场景一、上班的时候,我们经常会趁老板不注意,去一些工作时间不应该去的网站,或是运行一些不应该运行的程序,比如一些聊天工具,小游戏,股票软件等等。而且,经常会打开一大堆。当老板或其他同事来到你的桌前的时候,你正在手忙脚乱的关着这些程序,而且,还来不及保存想要保存的东西。 场景二、在你给别人做讲演的时候,需要在电脑桌面上展示很多资料。当然一个转载 2009-09-16 22:30:00 · 4262 阅读 · 0 评论 -
关于虚拟的Desktop的编程[转]
文章来自:http://hi.baidu.com/shilyx/blog/item/057dad44fb99da83b3b7dc2b.html问题的提出:最近在做的一个软件,其中有一部分功能需要调用其它的软件来完成,而那个软件只有可执行文件,根本没有源代码,幸好,我要做的事不难,只需要在我的程序启动后,将那个软件打开,在需要的时候,对其中的一个文本矿设置一些文字,再点击一个按钮就可以了。转载 2009-09-16 22:26:00 · 1114 阅读 · 0 评论 -
MultiByteToWideChar和WideCharToMultiByte用法详解
MultiByteToWideChar 函数功能:该函数映射一个字符串到一个宽字符(unicode)的字符串。由该函数映射的字符串没必要是多字节字符组。 函数原型:int MultiByteToWideChar(UINT CodePage,DWORD dwFlags, LPCSTR lpMultiByteStr, int cchMultiByte, LPWSTRlpWideC转载 2009-09-10 11:50:00 · 4793 阅读 · 0 评论 -
Delphi非应用程序主窗口创建MDI
对Delphi很熟悉的人,都知道MDI窗口的创建方式,是将主窗口的formstyle设置成MDIForm,然后将各个要设置成MDI的窗口的FormStyle都设置成MDIChild,运行就可以看到效果了嘿。 但是,如果MDI子窗口的依附窗口不是主窗口呢?此时是否依然能够建立MDI应用程序呢?事实证明是不行的,通过看Forms单元的源码中的CreateWindowHandle这个我们可以看到原创 2009-05-22 17:26:00 · 2004 阅读 · 0 评论 -
Delphi写Sql2000扩展存储过程的例子
library project1;uses Windows, SysUtils, MSODSApi;...{$R *.res}Function GetParamStr(pSrvProc: SRV_PROC; Index : integer; Var Param : String ) : integer转载 2009-08-06 12:48:00 · 1013 阅读 · 0 评论 -
用线性插值算法实现图像缩放
用线性插值算法实现图像缩放 猛禽[Mental Studio](个人专栏)(BLOG)http://mental.mentsu.com 在Windows中做过图像方面程序的人应该都知道Windows的GDI有一个API函数:StretchBlt,对应在VCL中是转载 2009-05-29 22:05:00 · 1841 阅读 · 2 评论 -
Delphi2007没有ActiveX Control开发向导的问题解决
BDS2006,BDS2007 ActiveX Control向导丢失的BUG,CodeGear一直没Fix,今天找了找资料,发现是注册表中丢了一项解决方法如下:BDS2006是 打开注册表,找到[HKEY_CURRENT_USER/Software/Borland/BDS/4.0/Type Library]BDS2007是 打开注册表,找到[HKEY_CURRENT_USER/S转载 2009-08-15 14:36:00 · 1499 阅读 · 1 评论 -
原来D2007是可以支持类变量的,嘿嘿
今天一个偶然的机会翻D2007的vcL源码的时候,发现一个奇怪的声明class var RM_TaskbarCreated: DWORD;这个class var就表示声明了一个类变量,相当于C#等的静态变量。于是用个新工程测试了一下,果然unit Unit1;interfaceuses Windows, Messages, SysUtils, V原创 2009-06-15 21:08:00 · 743 阅读 · 0 评论 -
使用delphi 为python创建一个新的类型。
花费了一个晚上的时间,终于调试通过。时间长的原因是没有直接的文档和例子。时间不早了,紧急记录以下,主要看标注。procedure initdemodll;begin try gEngine := TPythonEngine.Create(nil); gEngine.AutoFinalize := False; gEngine.DllName := py转载 2009-06-24 00:24:00 · 1849 阅读 · 0 评论 -
使用P4D 编写Python Extension
使用P4D 编写Python Extension 转自:http://1000copy.itpub.net/post/10379/276310Author:1000copyAddress:空无一人不知所致Contact:1000copy@gmail.com or http://1000copy.itpub.net转载 2009-06-24 00:03:00 · 1586 阅读 · 1 评论 -
Delphi7之后Delphi的一些新特性
文章来自Delphi官网:http://edn.embarcadero.com/article/34324By: Nick HodgesAbstract: See many of the major new language features in Delphi released after the Delphi 7 version转载 2009-06-30 16:03:00 · 2219 阅读 · 0 评论 -
自Delphi7之后,Delphi IDE的所有新特性
从Delphi官网转过来的,原地址:http://edn.embarcadero.com/cn/article/34323作者: Nick Hodges摘要: See some of the major new features in the Delphi IDE that came after the Delphi 7 release转载 2009-06-30 15:53:00 · 2810 阅读 · 1 评论 -
最新飞信协议聊天过程的完整描述
2009年12月18日 00:30作者:不得闲 前不久才发布了原来的飞信控件的源码!那个代码中无法接收到最新的飞信的聊天发送过来的消息,想着可能就是协议有变动,今天在外面逛了半圈回来之后,开始着手分析3.5.24的聊天过程,果不其然,有变动了,以前是直来直往的发送信息,现在的消息发送就有点麻烦了,居然额外用了专门的聊天服务器,发起新的聊天请求时会创建新的链接,然后链接到原创 2009-12-18 01:17:00 · 2845 阅读 · 11 评论 -
揭开半透明窗体的秘密(转)
当年Vista系统刚出来的时候,最吸引人的莫过于半透明磨砂的窗体界面了,迷倒了多少人。这个界面技术随即引发了编程界的一阵骚动,很多人都在问:如何实现这一界面效果?当然,在Vista下倒是很简单,系统本身支持,所以几乎不需要写一句代码,但是当时还是XP的天下,于是大家就可以研究在XP下如何实现这一效果。 最先实现的应该是桌面天气秀,还有笨笨钟,后来鱼鱼软件的鱼鱼桌面秀也成功在XP下模仿了Vista的侧边栏,的确,让人很激动,但是他们保密,问也问不到究竟是用了什么技术,记得当年大富翁论转载 2010-11-02 09:39:00 · 3376 阅读 · 7 评论 -
Delphi实现QQ2010的图片皮肤效果
<br /> 到目前为止,皮肤控件都写了好久了呵!基本上代码的修修补补,甚至重构,都搞了好长时间。一直是模仿腾讯!哈哈,我也要山寨一下山寨大王的东西,虽然不能尽善尽美,偶尔意淫一下,也是不错的,嘿嘿!<br /> 不过说起腾讯山寨,他虽然山寨,倒也山寨出了自己的特色,QQ的界面效果一直都是不错的,一代又一代,总有新的闪光点。所以从今天开始,我也打算重新来实现一套QQ2010效果的皮肤控件!目前刚刚简陋的实现了QQ2010的图片皮肤的效果界面。发个界面出来,纪念一下,同时激励一下自己 。原创 2010-11-02 09:42:00 · 2899 阅读 · 2 评论 -
转载几篇别人写的皮肤类控件的技术文章
转载几篇别人写的皮肤类控件的技术文章转载 2010-11-02 09:43:00 · 1852 阅读 · 0 评论 -
Delphi XE的RTTI增强,动态Hook某些内部事件
Delphi2010之后的RTTI做了很大休整,现在用起来很爽了哦。甚至可以获取某些类的内部私有单元,然后为其赋值!讲这个RTTI增强的,可以参考网上的多个博客内容,我列举一下:Delphi2010RTTI的增强Delphi的Anymouse方法探秘万一的Rtti系列我这里的主要目的是挂钩某些内部私有事件,然后增加上一些自己的处理过程,这里我以TMenuItem的私有内部事件FOnChange作为例程。这个私有事件在菜单内部绑定,我们平常状态下,在外部无法更改!但是XE之后这个问题不在存在,使用它的原创 2011-01-04 23:46:00 · 1732 阅读 · 0 评论 -
Delphi Android程序启动过程
Delphi的Android程序是原生的程序,也就是NativeActivity。那么就需要先看一下NativeActivity的原理,在AndroidManifest.xml文件里面指定入口activity为nativeactivity,这样应用程序一启动,java虚拟机这边就开一个主线程,主线程创建一个活动,就是nativeactivity,这个nativeactivity在创建的过程中就原创 2015-04-29 13:43:14 · 2070 阅读 · 0 评论 -
Delphi中Android运行和JNI交互分析
Androidapi.JNIBridge负责和JNI交互.,既然要交互,那么首先就是需要获得JNI的运行环境,Android本身内置的就有一个Java(Dalvik)虚拟机。所以这个第一步就肯定是要这个虚拟机和我们当前的运行线程环境关联。这时候Androidapi.JNIBridge中的TJNIResolver就出场了。GetJNIEnv这个函数就是,class function TJNI原创 2015-05-05 14:32:07 · 3477 阅读 · 0 评论 -
移动查房系列
移动开发,貌似现在又要开始研究一下下了。今天翻开以前收起来的一个硬盘,在里面翻出了一个以前写的移动查房的程序项目,本来当时是还指望用来赚点外快的,无奈最后滑水了,这个项目也就放着了,都快忘了,今天居然翻到了。本项目其实也不复杂,功能比较简单,就是医生查房时用来查看病人的一些信息数据的,比如体温单,医嘱,体检信息,病历信息等。需要配合PC端的电子病历和护理记录体温信息以及医嘱等进行移动端的查看。尚未原创 2015-06-12 21:34:53 · 1341 阅读 · 0 评论 -
准备开源一套异形UI控件
今天整理磁盘,发现在一个以前加密过的一个磁盘文件中发现了一些以前做的UI代码。平时都没怎么去用,放着放着只会慢慢的去遗忘,所以打算慢慢的将一些UI代码整理整理,然后开源出来,集合广大Delphier的智慧来一起发挥发挥这些我也没啥太多用处的代码的余热。 经过最近几年来的工作轨迹来看,工作已经比较定性,相对来说已经不是太搞界面UI方面的工作了。而个人在以前很长的一段时间内,基本上很多时间从事的都是U原创 2015-07-17 22:04:54 · 2284 阅读 · 1 评论 -
Delphi类似QQ皮肤控件,欢迎试用!
Delphi类似QQ皮肤控件,欢迎试用!原创 2010-09-24 02:46:00 · 3090 阅读 · 3 评论 -
E销助手软件(销售员的软件)
E销助手软件(销售员的软件)原创 2010-08-15 19:18:00 · 1291 阅读 · 0 评论 -
飞信的最新版控件
前些日子从新分析了新的飞信协议,然后将以前的飞信控件的代码完全重写了,目前支持了与新版的飞信交流,直接接收和发送!发个文,纪念一下!这是新版控件的事件!OnError错误事件OnFriendAddRequest好友请求添加事件OnGetSystemMsg系统消息事件OnLoged登录之后触发OnLoging登录信息OnLogOut登出消息OnModifyIn原创 2009-12-24 22:58:00 · 1547 阅读 · 5 评论 -
Unicode in RAD Studio
经过黄叉叉的唆使,我也在家里装上了Delphi2010,一般情况下编译问题不大,但是好多从以前的工程转过来的项目上就有些问题了,经常性的问题就是Unicode的问题!于是网络Google一番,在Delphi的官方站点上发现了Unicode的一些说明,于是大致的翻译记录一下,原文地址:http://docwiki.embarcadero.com/RADStudio/en/Unicode_in原创 2010-01-03 18:46:00 · 1676 阅读 · 0 评论 -
控制与捕捉输入法的实现单元
原创文章,转载请保留信息 得闲笔记欢迎您 www.cnblogs.com/dxsoft 作者:不得闲 今天,有个朋友问,如何去实现让一个输入控件,比如Edit中不能输入中文!而且不能让用户切换到任何其他输入法,始终保持为英文输入!群中很多人都说用ImeCode等来控制,这个控制是没错!但是,本控制无法控制使用的过程中用户自己切换输入法的问题,此时我们应该不让用户去切原创 2010-03-12 22:31:00 · 1709 阅读 · 4 评论 -
Delphi 通过MSHTML实现一个HTML解析类
最近经常会模拟网页提交返回网页源码,然后获得网页中相应的元素,于是需要常常解析Html中相应的各种元素,网络是个好东西,搜索一番,就找到了好几个Delphi版本的HtmlParser的类库,试着使用了几个,发现解析起来都不完整,或多或少的回出现一些问题!于是想到了如果界面上有一个浏览器,我们可以通过WebBrowser的Document接口对网页元素进行操作,很是方便!但是模拟网页提交,界原创 2010-01-05 09:14:00 · 4092 阅读 · 7 评论 -
Delphi实现的MIME邮件格式解析类库
研究了一下Pop3的邮件接收协议,然后随手写了一个Pop3的邮件接收控件!Pop3的邮件协议实际上是很简单的,知道那几个命令就行了,与服务器之间的交互是一问一答得方式,控制起来也容易,相对而言邮件格式的解析倒是更加麻烦一点!于是也便顺带着将MIME邮件格式给熟悉了一下!总归说来,规律性比较强,先获取最大的顶层框架,然后根据顶层框架来判断是否有还有子框架,依次根据给定的间隔符号迭代下来!看看原创 2010-01-07 00:59:00 · 1887 阅读 · 0 评论 -
Windows SDK编程(Delphi版) 之 Windows编程概述与框架
Windows SDK编程(Delphi版)原创 2010-06-10 15:58:00 · 1111 阅读 · 0 评论 -
刚刚写的一个Win32 SDK的工程扩展模板
Win32 SDK的工程扩展模板原创 2010-06-10 16:00:00 · 998 阅读 · 0 评论