上一页 1 ··· 187 188 189 190 191 192 193 194 195 ··· 203 下一页
摘要: 一个全局变量可以初始化, 如果你不主动初始化, 也会被自动初始化;一个局部变量不能被初始化, 虽然你不能主动初始化, 但它会被赋予一个随机值.--------------------------------------------------------------------------------unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) proc 阅读全文
posted @ 2008-08-19 11:49 delphi中间件 阅读(510) 评论(0) 推荐(0)
摘要: DupeString重复字串 与StringOfChar的区别 StringOfChar 是反复 "字符" 成 "字符串" 的函数;DupeString 是反复 "字符串" 成 "新字符串" 的函数;StringOfChar 来自 System 单元, 可以直接使用;DupeString 来自 StrUtils 单元, 使用时需要 uses StrUtils;如果仅仅是反复 "字符", 当然应该用 StringOfChar , 它是用汇编代码实现的, 速度会稍好一些.var p: PChar;b 阅读全文
posted @ 2008-08-07 10:45 delphi中间件 阅读(430) 评论(0) 推荐(0)
摘要: SysUtils.StrCat //把源串添加到目标串后, 要求目标串必须有足够的空间StrCat( Dest: PChar; {目标串} const Source: PChar {源串}): PChar; {返回目标串}//测试 1:procedure TForm1.Button1Click(Sender: TObject);var p1,p2,p3: PChar;begin p1 := 'abc'; p2 := '123'; GetMem(p3, Length(p1) + Length(p2)); StrCat(p3,p1); //StrCopy(p3,p1 阅读全文
posted @ 2008-08-06 14:08 delphi中间件 阅读(429) 评论(0) 推荐(0)
摘要: Delphi中开发的DLL如何被其它开发语言隐式调用 我曾经用Delphi中开发了《IAPWS-IF97/IFC67水和蒸汽性质计算软件包》。为了方便其它开发人 员进行进一步的热能动力分析软件的开发,我编制了动态链接库(DLL)。其它开发人员也非专业程 序设计人员,对于动态链接库的显式动态调用使用不好(觉得虽然灵活但烦琐),为了帮助他们用好 我开发的“水和蒸汽性质计算动态链接库”,我开始对各种现代流行的程序设计语言(VC++、 C++Builder、VC#、C# Builder、VB、VB.NET、Delphi、Delphi.NET等)隐式调用我的动态链接库的方 法进行钻研,取得了一些进展.. 阅读全文
posted @ 2008-08-06 11:58 delphi中间件 阅读(644) 评论(0) 推荐(0)
摘要: 论函数调用约定 在C语言中,假设我们有这样的一个函数: int function(int a,int b) 调用时只要用result = function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存这些参数。也就是说,计算机不知道怎么给这个函数传递参数,传递参数的工作必须由函数调用者和函数本身来协调。为此,计算机提供了一种被称为栈的数据结构来支持参数传递。 栈是一种先进后出的数据结构,栈有一个存储区、一个栈顶指针。栈顶指针指向... 阅读全文
posted @ 2008-08-04 17:53 delphi中间件 阅读(228) 评论(0) 推荐(0)
摘要: 一般把存储器中的一个字节称为一个内存单元, 不同的数据类型所占用的内存单元数不等,如整型量占2个单元,字符量占1个单元等为了正确地访问这些内存单元, 必须为每个内存单元编上号。 根据一个内存单元的编号即可准确地找到该内存单元。内存单元的编号也叫做地址。既然根据内存单元的编号或地址就可以找到所需的内存单元,所以通常也把这个地址称为指针。内存单元的指针和内存单元的内容是两个不同的概念。 可以用一个通俗的例子来说明它们之间的关系。我们到银行去存取款时, 银行工作人员将根据我们的帐号去找我们的存款单, 找到之后在存单上写入存款、取款的金额。在这里,帐号就是存单的指针, 存款数是存单的内容。对于一个内存 阅读全文
posted @ 2008-08-02 17:39 delphi中间件 阅读(210) 评论(0) 推荐(0)
摘要: --****************--计算id--使用//表级排它锁//防止用户同时修改该记录--****************CREATE PROCEDURE GetId@xh integer,@id integer outAS /*如果想在连接一中锁住整个表,不允许其他事务更新表中任何记录,但可以读取记录,可使用HOLDLOCK选项,即(HOLDLOCK 等同于 SERIALIZABLE) sql server 对并发的处理由它本身的锁控制,貌似并发,其实有等待排队的现象,只不过时间间隔短,所以并发数很多的时候,还是得进行人工锁设计在数据集上放置一个范围锁,以防止其他用户在事务完成.. 阅读全文
posted @ 2008-08-02 15:02 delphi中间件 阅读(465) 评论(0) 推荐(0)
摘要: 在SQLServer上得到客户端信息(操作的数据库名,计算机名,用户名,网卡物理地址,IP地址,程序名)create proc p_getlinkinfo@dbname sysname=null,--要查询的数据库名,默认查询所有数据库的连接信息@includeip bit=0--是否显示IP地址,因为查询IP地址比较费时,所以增加此控制asdeclare @dbid intset @dbid=db_id(@dbname)create table #tb(id int identity(1,1),dbname sysname,hostname nchar(128),loginname ncha 阅读全文
posted @ 2008-08-02 14:55 delphi中间件 阅读(496) 评论(0) 推荐(0)
摘要: ADOQuery 执行存储过程并取的输出参数写这个只是为了将来自查用的,呵呵,当然,不会的人也可以看看第一步建立proccreate proc MyABC @a int ,@b int, @c int output as set @c=@a*@b在SQL中执行:declare @a int,@b int,@c int set @a=250set @b=40exec MyABC @a,@b,@c output --注意要添加output 关键字!select @c在D中: ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add(‘execu 阅读全文
posted @ 2008-08-02 14:54 delphi中间件 阅读(2968) 评论(0) 推荐(0)
摘要: 即时同步两个表的实例:--测试环境:SQL2000,远程主机名:xz,用户名:sa,密码:无,数据库名:test--创建测试表,不能用标识列做主键,因为不能进行正常更新--在本机上创建测试表,远程主机上也要做同样的建表操作,只是不写触发器if exists (select * from dbo.sysobjects where id = object_id(N'[test]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)drop table [test]create table test(id int not null 阅读全文
posted @ 2008-08-02 14:52 delphi中间件 阅读(322) 评论(0) 推荐(0)
上一页 1 ··· 187 188 189 190 191 192 193 194 195 ··· 203 下一页