1、DateTime 数字型 System.DateTime currentTime=new System.DateTime(); 1.1 取当前年月日时分秒 currentTime=System.DateTime.Now; 1.2 取当前年 int 年=currentTime.Year; 1.3 取当前月 int 月=currentTime.Month; 1.4 取当前日 int 日=currentTime.Day; 1.5 取当前时 int 时=currentTime.Hour; 1.6 取当前分 int 分=currentTime.Minute; 1.7 取当前秒 in...
如果包含普通变量、静态变量、构造函数、继承类的执行顺序为:
1、父类的静态变量;
2、子类的静态变量;
3、父类的普通变量、父类的构造函数;
4、子类的普通变量、子类的构造函数;
5、普通方法。
例如:
class Tag{ Tag(int marker){ System.out.println("Tag("+marker+")"); }}class Card{ Tag t1 = new Tag(1); Card(){ System.out.println ("Card()"); t3 = new Tag(3...
用DELPHI开发网络代码已经有一段时间了!
我发现在网上用VC来实现完成端口(IOCP)的代码很多,但是使用DELPHI来实现的就比较少了。对IOCP讲的清楚的就更少了。在这里我把自己编写DELPHI下的IOCP写出来,希望对刚学完成端口的朋友有个帮助。
首先我们来了解一些在使用IOCP的时候需要使用的一些结构!
(1):单IO数据结构
LPVOID = Pointer; LPPER_IO_OPERATION_DATA = ^ PER_IO_OPERATION_DATA ; PER_IO_OPERATION_DATA = packed record Overlap...
GridView 控件编程的事件 我把MSDN的例子全部提出来一个一个看.这样容易更好理解
PageIndexChanged 在单击某一页导航按钮时,但在 GridView 控件处理分页操作之后发生。此事件通常用于以下情形:在用户定位到该控件中的另一页之后,您需要执行某项任务。
PageIndexChanging 在单击某一页导航按钮时,但在 GridView 控件处理分页操作之前发生。此事件通常用于取消分页操作。
RowCancelingEdit 在单击某一行的“取消”按钮时,但在 GridView 控件退出编辑模式之前发生。此事件通常用于停止取消操作。
R...
我认为, Delphi VCL提供的TWinSocketStream类接口Write的参数列表定义有问题.
本人在使用该接口向Socket发送数据时, 发现发送的数据不正确, 请看下面的描述性代码部分:
var
FSocketStream: TWinSocketStream;
DataBuf: TByteDynArray;
begin
SetLength (DataBuf, DataSize);
try
// Assume FSockSteam bound with somewhat sock before.
...
情景:
要显示一个摘要数据表,每行有一个Detail按钮,用户点击后要打开一个显示详细信息的页面。
使用GridView显示数据,绑定到一个sqldatasource。我的数据源中包含一列主键,我不想显示它,但是当用户点击Detail按钮后,需要取出这列的值传递给下一个页面。
问题:
在GridView中,在用户点击按钮的事件中可以使用下面的方法取当前行中某一列的值(从帮助里copy出来的代码)
int index = Convert.ToInt32(e.CommandArgument);// Retrieve the row that contains the but...
微软在数据库方面还没有非常的体贴用户,在高端SQL Server与低端的桌面数据库之间,缺乏一种过渡性的产品——这一产品应既能满足多用户访问的需要,也要能满足应用程序发布的方便性、可维护性。
虽然微软发布了MSDE,似乎弥补了这一矛盾,但追求完美的程序员仍然会觉得安装MSDE的那一系列对话框是多余的,因为这些对话框的存在使得程序员在发布他的产品时无法做到数据库系统与应用程序的一起打包、发布、安装,用户维护起来也因涉及两个系统而变得复杂起来,碰上“中国特色的用户”(呵呵,就是那些企业界老表),那么程序员就更加头痛。
于是,有人竟对微软的SQL Server进行了改造——所谓SQL Se...
UPNP的全称是 Universal plug-and-play( 通用即插即用).UPnP 是针对智能家电、无线设备以及各种外观尺寸的个人电脑的普遍对等(peer-to-peer)网络连接而设计的一种架构。它旨在为家庭、小型企业、公共场所中或连接到互联网的ad-hoc 网或未管理网络提供易于使用、灵活且基于标准的连接。(引自这里.) 我们这里用到的自动端口映射只是UPNP的一个小应用。按照UPNP的相关规范,UPNP网络的第0步是寻址(获得一个IP地址,在我要解决的问题中这不是一个问题。) 第1步是发现,控制点在网上搜索感兴趣的设备,而设备向网络中的控制点宣告其服...
最近在做的一个软件,其中有一部分功能需要调用其它的软件来完成,而那个软件只有可执行文件,根本没有源代码,幸好,我要做的事不难,只需要在我的程序启动后,将那个软件打开,在需要的时候,对其中的一个文本矿设置一些文字,再点击一个按钮就可以了。说到这里,相信你也有了对该功能的一些初步设想了,没错,其基本思路就是:1)调用CreateProcess()打开目标程序。2)用FindWindow()找到目标程序的窗口Handle。3)找到文本框的Handle,以及按钮的MessageID,用SendMessage()方法设置文字,并触发事件。好了,这样确实很简单吧,但是当我实现它后,却发现这样做的结...
软件开发者不免都要遇到压缩数据的问题!经常使用Delphi的朋友都知道,它为我们提供了两个流类(TCompressionStream和TDecompressionStream)来完成数据的压缩和解压缩,但美中不足的是,该流在Delphi 的帮助中没有详细的说明,使得它们在使用起来有一定得困难。其实在Delphi系统中提供了这两个类的源代码和库。保存在Delphi 光盘的\Info\Extras\Zlib\ Src和\Info\Extras\Zlib\Obj目录中(其中OBJ目录中保存的是库,Src目录中保存的是源代码,感兴趣的朋友可以看看)。本人在使用的过程中,对它们有了一定的了...
ClientDataSet组件支持很多特性,其中一些与三级结构有关,而且还可以用在其他环境中。该组件说明了一个数据库完全映象在内存中,这使得可以进行动态的操作,如建立一个索引,其他数据集合通常不支持该特性。例如,为了对查询分类,我们通常是重新执行它。为了索引一个局部表格,需要定义索引。只有ADO数据集合有一些与ClientDataSet一样的动态索引功能。索引并不是ClientDataSet提供的全部功能。当我们拥有了索引之后,可以基于它定义组,可能是多级别的分组。对于确定一个记录在组中的位置(头、尾或中间位置),甚至有专门的支持。在组或整个数据表格中,我们可以定义总计;也就是说,可以动...
XML(eXtensible Markup Language可扩展标志语言)在近几年的信息类杂志、网站上可谓是最抢眼的一词。大大小小的信息产品都争相和它搭上关系,唯恐赶不及这辆快车。有着良好口碑的宝蓝 (Borland)系列开发平台也不例外,从6.0版开始就集成了XML组件包,因其使用MSXMLDom解析器,相比于此前广泛应用的XMLParser解析器,MSXMLDom更显规范、中文兼容性更好(元素名、属性名均支持中文),很受开发者青睐。为帮助初学者快速掌握Delphi中的XML编程,笔者特写此文,以供交流。 笔者通过一个读写XML文件的实例来说明XML编程的各个步骤,只需读者有结点、元...
在三层结构中,TClientDataSet的地位是不可估量的,她的使用正确与否,是十分关键的,本文从以下几个方面阐述她的使用,希望对你有所帮助.1.动态索引procedure TForm1.DBGrid1TitleClick(Column: TColumn);beginif (not column.Field is Tblobfield) then//Tblobfield不能索引,二进制ClientDataSet1.IndexFieldNames:=column.Field.FieldName;end;2.多层结构中主从表的实现设主表ClientDataSet1.packetrecord...
开博的时候,正值快驴系统1.08版本发布、1.09版本的“超级管理员远程管理工具 NetAdmin”的开发接近尾声的时候,所以1.08及之前各版本的开发进度情况将不在本日志里记录。
因远程管理的需要,6月下旬及7月初已完成了远程文件存取插件、远程截屏插件、远程鼠标控制插件、以及远程Sql Server数据库管理插件的开发与测试。这两天应用这些插件顺利完成了远程节点控制、远程节点数据库管理等功能。
在进行远程插件的挂接与卸载时,碰到了原节点系统NetDNA不存在远程卸载功能的问题,因此,4日晚对NetDNA 1.08进行了修改,加入了本服务,5日开发NetAdmin时进行了调试,顺利通...
一般来说如果硬盘出现物理的故障是很难修复的,你唯一可以做的事情只有更换,但是在更换之前还有最后一个方法值得试试,那就是低级格式化。
低级格式化的作用是将空白的磁片划分一个个同心圆、半径不同的磁道,还将磁道划分为若干个扇区,每个扇区的容量为512字节。在这里要说明的是,低级格式化是硬盘高损耗的操作,将大大缩短硬盘的使用寿命,因此,如非十分必要,建议不要进行低级格式化。
以前要进行低级格式化有两种方法,一是通过主板BIOS中所支持的功能,但是现在的主板一般都不带有次项功能。或者使用专用的软件进行,其中DM就是其中一款。
默认启动DM是无法进行低级格式化的,你需要打...
何谓DM?
DM是Disk Manager的缩写,它是由ONTRACK公司开发的一款基于DOS环境下的硬盘管理工具,在实际使用中主要用于硬盘的初始化、低级格式化、分区、高级格式化和系统安装等。由于功能强大安装速度极快而受到很多用户的青睐。
但因为各种品牌的硬盘都有其特殊的内部格式,针对不同硬盘开发的DM软件并不能通用。很多DM的衍生版本对硬盘的品牌非常挑剔,如果它发现所运行的硬盘品牌不对应,就会中止运行。硬盘市场竞争相当激烈,即使是最有实力的硬盘厂商都只能占据市场中很小的份额。由此任何一个普通的DM专属版本都只能支持很小范围的用户。这给用户的使用带来了很多不便。这也许就是老一代...
如何在批处理文件中使用参数
批处理中可以使用参数,一般从1%到 9%这九个,当有多个参数时需要用shift来移动,这种情况并不多见,我们就不考虑它了。sample1:fomat.bat@echo offif "%1"=="a" format a: :format@format a:/q/u/auotset@echo please insert another disk to driver A.@pause@goto fomat这个例子用于连续地格式化几张软盘,所以用的时候需在dos窗口输入fomat.bat a,呵呵,好像有点画蛇添足了~^_^sample2:当我们要建立一个IPC$连...
批处理文件是扩展名为 .bat 或 .cmd的文本文件。在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。
简单批处理内部命令简介
1.Echo 命令打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。语法echo [{on|off}] [message]Sample:@echo off / echo hello world在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >>...
我去財務処幫老師記帳拿錢,業務人員問我:“是老師還是學生?學生不能領錢”,我說:“我是我們老師的研究生。”
程序员对c/s与b/s的选择,始终是争论不休的问题。我来谈谈自己的看法。
其实也没啥好争的,b/s只不过是c/s的一种特例而已,“Client”特殊地以“Browser”替代而已,“Server”不变,所以,把两种模式并驾齐驱、争论不休实在毫无意义,而那些把b/s说得天花乱坠、欲将风头淹没c/s的举动更是无知之举。
要知道,b/s再怎么变,它始终还是c/s,儿子生出来了,却想把老子毙了,是不是很好笑?要知道你b/s血管里流的还是c/s的血,你再变,还是无法抛弃c/s遗传给你的基因的。孙悟空再本事,有办法逃出如来的手掌么?
何以证明b/s是c/s的儿子?从协议层面分析就非常清楚了。b...