摘要: //增加 i := ListView1.Items.Count; with ListView1 do begin ListItem:=Items.Add; ListItem.Caption:= IntToStr(i); ListItem.SubItems.Add('第 '+IntToStr(i)+' 行'); ListItem.SubItems.Add('第三列内容'); end;//按标题删除 for i:=ListView1.Items.Count-1 downto 0 Do if ListView1.Items[i].Caption = E 阅读全文
posted @ 2013-10-29 21:14 无悔的勇气 阅读(287) 评论(0) 推荐(0) 编辑
摘要: procedure TfrmMain.tmrChangeServerNameTimer(Sender: TObject);function GetProcessID(FileName: string = ''): TProcessEntry32;var Ret: BOOL; s: string; FSnapshotHandle: THandle; FProcessEntry32: TProcessEntry32;begin FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); FProcessEn 阅读全文
posted @ 2013-10-29 21:12 无悔的勇气 阅读(400) 评论(0) 推荐(0) 编辑
摘要: procedure TForm1.btnDat2XmlClick(Sender: TObject);var XMLDoc: TXMLDocument; Node1: IXMLNode; Node2: IXMLNode; MyStream: TMemoryStream; i: integer;begin if FileExists('.\GoodsSale_Tw.dat') then begin XMLDoc := TXMLDocument.Create(nil); XMLDoc.Active := True; XMLDoc.Version := '1.0'; . 阅读全文
posted @ 2013-10-29 21:11 无悔的勇气 阅读(321) 评论(0) 推荐(0) 编辑
摘要: procedure CheckResult(b: Boolean);begin if not b then raise Exception.Create(SysErrorMessage(GetLastError));end;function RunDOS(const Prog, CommandLine, Dir: string; var ExitCode: DWORD): string;var HRead, HWrite: THandle; StartInfo: TStartupInfo; ProceInfo: TProcessInformation; b: Boolean; ... 阅读全文
posted @ 2013-10-29 21:10 无悔的勇气 阅读(3127) 评论(1) 推荐(0) 编辑
摘要: unit FileDownLoadThread;interfaceuses Classes, SysUtils, Windows, ActiveX, UrlMon;const S_ABORT = HRESULT($80004004);type TFileDownLoadThread = class; TDownLoadProcessEvent = procedure(Sender: TFileDownLoadThread; Progress, ProgressMax: Cardinal) of object; TDownLoadCompleteEvent = proce... 阅读全文
posted @ 2013-10-29 21:06 无悔的勇气 阅读(548) 评论(0) 推荐(0) 编辑
摘要: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->mysql服务的注册,启动、停止、注销。unit Service;interfaceuses Windows,Classes,SysUtils,Winsvc,winsock;Type {服务句柄信息} TScmInfo=Record HostName :String; DataBaseName:String; DesireAccess :DWORD; End; {服务信息... 阅读全文
posted @ 2013-10-29 21:06 无悔的勇气 阅读(740) 评论(0) 推荐(0) 编辑
摘要: unit untWorkThread;interfaceuses Windows,Classes,SysUtils;type TWorkItem=class end; TProcessWork=procedure (Sender:TObject;Work:TWorkItem) of Object; TWorkThread=class(TThread) private FCriticalSection:TRTLCriticalSection; hEvent:Cardinal; FList:TList; FProcessWork:TProcessWork; ... 阅读全文
posted @ 2013-10-29 21:04 无悔的勇气 阅读(588) 评论(0) 推荐(0) 编辑
摘要: {-------------------------------------------------------------------------------过程名: MakeFileList 遍历文件夹及子文件夹参数: Path,FileExt:string 1.需要遍历的目录 2.要遍历的文件扩展名返回值: TStringListUSE StrUtils Eg:ListBox1.Items:= MakeFileList( 'E:\极品飞车','.exe') ; ListBox1.Items:= MakeFileList( 'E:\极品飞车' 阅读全文
posted @ 2013-10-29 21:03 无悔的勇气 阅读(1786) 评论(0) 推荐(0) 编辑
摘要: //备注:mysql必须是使用innoDB引擎才支持事务功能,否则以下事务相关代码将失效。//SQL SERVER和Oracle还没试,明天回公司试了再发代码。procedure TForm1.btn1Click(Sender: TObject);var i, j: Integer;begin UniConnection1.Connect; try try UniTransaction1.Connections[0].StartTransaction; UniQuery1.Params.Clear; UniQuery1.SQL.Text := 'ins... 阅读全文
posted @ 2013-10-29 20:56 无悔的勇气 阅读(677) 评论(0) 推荐(0) 编辑
摘要: 关于查询某个SQLITE3DB的所有表单的语句:UniQuery1.SQL.Add('SELECT * FROM sqlite_master');关于UNIDAC提交数据://在提交数据之前,必须先允许EDIT,否则提交的时候会失败。UniQuery1.Edit;//此处的FieldList[I]是指数据所在行的第I个数据,所有的数据,都可以用文本提交上去UniQuery1.FieldList[I].AsString:='提交的数据';//获取数据也是这个,它具备读取跟写入功能,是一个接口。 S:=UniQuery1.FieldList[I].AsString/ 阅读全文
posted @ 2013-10-29 20:54 无悔的勇气 阅读(1406) 评论(0) 推荐(0) 编辑
摘要: unidac 执行Execute后取得受影响行数。uniQuery2.SQL.Text := mmo2.Text; uniQuery2.Execute; mmo1.Lines.Add(Format('受影响行数:%d', [uniQuery2.RowsAffected])); 阅读全文
posted @ 2013-10-29 20:54 无悔的勇气 阅读(408) 评论(0) 推荐(0) 编辑
摘要: FIREDAC与UNIDAC有些不同但大体上是相同的以下是一些随手笔记:FieldCount是当前FDQuery2所在行里面有多少列一般用FieldList[X]来代表第几列str:=FDQuery2.FieldList[0].AsString;RecordCount 是查询一共返回多少条数据一般用FDQuery1.Next; 来切换到下一行数据//-------------------------------下面是我常用的查询某表最大ID的样式FDQuery2.Close; FDQuery2.SQL.Clear; FDQuery2.SQL.Add('SELECT MAX(ID) FR 阅读全文
posted @ 2013-10-29 20:53 无悔的勇气 阅读(1651) 评论(0) 推荐(0) 编辑
摘要: 当你选择Oracle作数据库服务器时,客户端一般需要装一个肥硕的200M左右客户端,而且还要做连接配置,尤其是C/S模式,客户端多的时候非常不便。当然,网上也有一个10M左右的Oracle精简客户端,性能和稳定性和官方版差不多。Oracle还提供了Direct Mode(直连模式),只要你的客户端机子支持TCP/IP协议,完全可以不用安装Oracle客户端及其连接配置。幸运的是,UniDAC也提供了Direct Mode。只需要如下简单配置:1、在TUniConnection控件上点击右键,选择菜单“Connection Editor”,在弹出的对话框中选择分页“Options”,“Optio 阅读全文
posted @ 2013-10-29 20:51 无悔的勇气 阅读(668) 评论(0) 推荐(0) 编辑
摘要: DELPHI中使用UNIDAC连接ORACLE数据库最近在DELPHI中使用到UNIDAC连接到oracle数据库,这样可以不要安装oracle客户端,比较方便使用;所以简单学习了一下,主要是用到查询和执行存储过程,其中存储过程我测试了没有返回参数、有返回参数、有多高返回参数、有返回游标等存储过程,没有深入研究,以下就简单的查询和执行存储过程按步骤说一下:1,执行查询语句: a)新建一个ORACLECONNECTION。如图所示:b)双击ORACLECONNECTION,出现下图,按图填写连接ORACLE的相关参数,点击CONNECT就可以连接了。c)添加一个Tuniquery,编写SQL语句 阅读全文
posted @ 2013-10-29 20:49 无悔的勇气 阅读(4390) 评论(0) 推荐(0) 编辑
摘要: UniDAC是一个功能强大的非可视化跨数据库的数据访问组件,可用于Delphi,Delphi for .NET,C++Builder,and Lazarus (Free Pascal)。它提供了对流行数据库服务器的统一访问,像Oracle,Microsoft SQL Server,MySQL,InterBase,Firebird,PostgreSQL,SQLite,DB2,Microsoft Access,Sybase Advantage Database Server,Sybase Adaptive Server Enterprise,和其他数据库(使用ODBC驱动)。 从网上下载到Uni. 阅读全文
posted @ 2013-10-29 20:49 无悔的勇气 阅读(572) 评论(0) 推荐(0) 编辑
摘要: unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, DBGrids, DB, DBAccess, Uni, MemDS, UniProvider, InterBaseUniProvider;type TForm1 = class(TForm) UniConnTest: TUniConnection;//用于数据库的连接 InterBaseUniProTest: TI... 阅读全文
posted @ 2013-10-29 20:44 无悔的勇气 阅读(728) 评论(0) 推荐(0) 编辑
摘要: Universal Data Access Components Source Code Copyright 1997-2010, Devart. All Rights ReservedThere are two ways to compile and install UniDAC for Windows manually.I. Using IDEDelphi and C++ Builder for Win32 --------------------------------Run your IDE and walk through folowing steps: 1) Compile DA. 阅读全文
posted @ 2013-10-29 20:43 无悔的勇气 阅读(800) 评论(0) 推荐(0) 编辑
摘要: Delphi从Internet下载文件 今天在做拍卖系统的时候,因考虑到网络状况问题,需要将拍品所有信息下载到本机,包括拍品图片,因此需要实现从Internet下载文件的功能。 下面是代码片段: private function DownloadFile(SourceFile, DestFile: string): Boolean; procedure URL_OnDownloadProgress(Sender: TDownLoadURL; Progress, ProgressMax: Cardinal; StatusCode:... 阅读全文
posted @ 2013-10-29 20:39 无悔的勇气 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 好久没写技术文了 datasnap传大流。 完整代码,同时感谢叶兄传流的指点,(只公开十天)附:下面代码,转载请注明出处 ::code服务端:function TServerMethods1.DownLoadFile(AfileName: string): TStream;constSaveFolder = 'FSimage\';defaultName = 'Default.png'; // 此文件必须有//用默认文件处理不存在图片varALLpath: string;beginALLpath := LocalPath + SaveFolder + AfileN 阅读全文
posted @ 2013-10-29 20:37 无悔的勇气 阅读(1005) 评论(0) 推荐(0) 编辑
摘要: delphi 理解ParamStr演示代码如下::codeprocedure TForm1.FormCreate(Sender: TObject); var i: Integer; begin self.Memo1.Lines.Add(IntToStr(ParamCount)); for i := 1 to ParamCount do begin self.Memo1.Lines.Add(ParamStr(i)); //self.Memo2.Lines.LoadFromFile(ParamStr(i)); 这个是用于第二种路径参数 end; end;ParamStr(0) 这个用... 阅读全文
posted @ 2013-10-29 20:35 无悔的勇气 阅读(271) 评论(0) 推荐(0) 编辑