delphi
fei997yang
交流无限,沟通无限
展开
-
用delphi取得本机IP
function localIP: string; type TaPInAddr = array [0..10] of PInAddr; PaPInAddr = ^TaPInAddr; var phe : PHostEnt; pptr : PaPInAddr; Buffer : array [0..63] of char; I : Integer; GInit原创 2005-03-14 12:32:00 · 1078 阅读 · 0 评论 -
获取局域网内机器名
unit main;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ImgList,ExtCtrls, ComCtrls;type TNetResourceArray = ^TnetResource; TForm1 = class(原创 2006-04-04 21:18:00 · 1880 阅读 · 0 评论 -
获取本机IP并在任务栏显示图标
unit local;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls,winsock, Menus,clipbrd,ShellAPI; const MY_MESSAGE = WM_USER + 100原创 2006-04-04 21:17:00 · 2018 阅读 · 1 评论 -
压缩Access
虽然不知道Access中的数据删除后数据库占的空间不会减少的原因,但是总算可以解决由这个问题带来的麻烦,最好的办法就是将access数据库压缩,效率比较高,而且可以提高系统的性能,保证系统能正常稳定的运行。通过DBEngine压缩,各位是否还记得安装Delphi的时候,如果你选择自定义安装(我一般用Delphi写控件,所以当然是越小越好),会有很多安装选项,让你选择Access97或Access2原创 2005-10-29 11:24:00 · 1427 阅读 · 0 评论 -
目录操作
删除目录:uses ShellApi;var fo: TSHFILEOPSTRUCT;begin fo.Wnd := Application.Handle; fo.wFunc := FO_DELETE; fo.pFrom := PChar(Dir+#0#0); fo.pTo := PChar(ExtractFilePath(ParamStr(0))); fo.fFlags := FOF原创 2005-10-23 22:43:00 · 782 阅读 · 0 评论 -
读注册表
function GetRegString(RootKey: HKEY; Section, Key, DefaultValue: string):string; varMyReg: TRegistry;begin Result := DefaultValue; MyReg := TRegistry.Create; if MyReg then beginMyReg.RootKey := RootKe原创 2005-10-18 08:19:00 · 610 阅读 · 0 评论 -
使用Adoconnection实现对两个数据库的操作
使用Adoconnection对两个数据库的操作将excel表中的数据导入到access,直接用adoconnection的excute方法会节省时间,如果直接对excel的cell操作,当数据量特别大的时候会让人难以接受insert into TableName select Columns FROM [excel 8.0;database=dir/data.XLS].[sheetName$]原创 2005-10-21 17:23:00 · 1796 阅读 · 1 评论 -
ADO连接xsl
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=××××.xls;Persist Security Info=False;Extended Properties=Excel 8.0原创 2005-10-18 08:38:00 · 630 阅读 · 0 评论 -
头疼的问题
那么长时间以来都没发现这个问题,用Java操作Access的时候竟然发现sql语句执行成功,而且影响的行数是1,可是打开数据库怎么都没发现数据insert到数据库中,郁闷了半天终于发现Connection没有关闭,不明白为什么java要采取这种解决方案,非要人把Connection关闭才能提交事务,也不知道以前用delphi操作Access的时候为什么没发现这种问题,总之以后注意就原创 2005-09-26 09:26:00 · 611 阅读 · 0 评论 -
代理模式设计
一 模式编程法则1、开闭法则开闭法则(Open Closed Principle ,OCP):软件实体(模块)应易于扩展(开放),但免于修改。换言之,我们希望可以改变模块的行为,而不用修改其源代码。2、Liskov 代换法则Liskov代换法则(Liskov Substitution Principle,LSP):派生类应该可以用其基类代换。这个法则是由Barbar Liskov在研究抽象及类型理原创 2005-05-05 14:49:00 · 1141 阅读 · 0 评论 -
读ini文件
ini文件操作:var NetIni:TIniFile; FileStr:TStringList;begin FileStr := TStringList.Create; //FileStr.Add(update.ini); NetIni:=TIniFile.Create(Update.ini); NetIni.ReadSections(FileStr); //NetIni.原创 2005-09-13 21:32:00 · 1093 阅读 · 1 评论 -
读写OutLook联系人
uses ComObj;procedure TForm1.Button1Click(Sender: TObject);const olFolderContacts = $0000000A;var outlook, NameSpace, Contacts, Contact: OleVariant; i: Integer;begin outlook := CreateOleObject(Ou原创 2005-09-13 21:25:00 · 1328 阅读 · 0 评论 -
VirtualStringTree使用
完成VirtualStringTree排序,不仅要使用其HeaderClick还要使用CompareNodes:procedure TFrmOrderList.ListOrderCompareNodes(Sender: TBaseVirtualTree; Node1, Node2: PVirtualNode; Column: TColumnIndex; var Result: Integer);原创 2005-08-30 21:29:00 · 4669 阅读 · 2 评论 -
delphi写的时钟
很久以前写的程序了,要整理机器,只好放到这了unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls;type TForm1 = class(TForm) Timer1: T原创 2006-04-04 21:20:00 · 3081 阅读 · 0 评论