DELPHI的一些开发技巧和方法(一)
来源:互联网 发布:html 多选数据样式 编辑:程序博客网 时间:2024/05/15 10:36
(评分:★ , 回复: 5, 阅读: 1541)
1、用HTTP从网站下载文件:
方法一,用IdHttp:
procedure TForm1.Button1Click(Sender: Tobject);
var
fs: TFileStream;
begin
fs := TFileStream.Create('c:/aaa.htm', fmCreate);
IdHTTP1.Get('http://www.abc.com/aaa.shtml', fs);
fs.Free;
end;
方法二:
uses
UrlMon
function DownloadFile(Source, Dest: string): Boolean;
begin
try
Result := UrlDownloadToFile(nil, Pchar(source), Pchar(Dest), 0, nil) = 0;
except
Result := False;
end;
end;
procedure TForm1.Button1Click(Sender: Tobject);
begin
if DownloadFile(edit1.Text, edit2.Text) then
ShowMessage('下载成功')
else ShowMessage('下载失败');
end;
2、网络邻居复制文件:
uses shellapi;
copyfile(pchar('newfile.txt'),pchar('//computer/direct/targer.txt'),false);
3、取得WINDOWS目录:
方法一:
uses shellapi;
var windir:array[0..255] of char;
getwindowsdirectory(windir,sizeof(windir));
方法二:
从注册表中读取,位置:
HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion
SystemRoot键,取得如:C:/WINDOWS
4、对文件、目录进行操作:
Chdir('c:/abcdir');转到目录
Mkdir('dirname');建立目录
Rmdir('dirname');删除目录
GetCurrentDir;//取当前目录名,无'/'
Getdir(0,s);//取工作目录名s:='c:/abcdir';
Deletfile('abc.txt');//删除文件
Renamefile('old.txt','new.txt');//文件更名
ExtractFilename(filelistbox1.filename);//取文件名
ExtractFileExt(filelistbox1.filename);//取文件后缀
5、取得系统运行的进程名:
var hCurrentWindow:HWnd;szText:array[0..254] of char;
begin
hCurrentWindow:=Getwindow(handle,GW_HWndFrist);
while hCurrentWindow <> 0 do
begin
if Getwindowtext(hcurrnetwindow,@sztext,255)>0 then listbox1.items.add(strpas(@sztext));
hCurrentWindow:=Getwindow(hCurrentwindow,GW_HWndNext);
end;
end;
6、操作Cookie:
response.cookies("name").domain:='http://www.aaa.com';
with response.cookies.add do
begin
name:='username';
value:='username';
end;
7、按键接受消息:
OnCreate事件中处理:Application.OnMessage:=MyOnMessage;
procedure Tform1.MyOnMessage(var MSG:TMSG;var Handle:Boolean);
begin
if msg.message=256 then … //ANY键
if msg.message=112 then … //F1
if msg.message=113 then … //F2
end;
8、判断拨号网络是开还是关:
if GetSystemMetrics(SM_NETWORK) AND $01 = $01 then
showmessage('在线!')
else showmessage('不在线!');
9、IP到域名的转换:
function GetDomainName(Ip:string):string;
var
pH:Phostent;
data:twsadata;
ii:dword;
begin
WSAStartup($101, Data);
ii:=inet_addr(pchar(ip));
pH:=gethostbyaddr(@ii,sizeof(ii),PF_INET);
if (ph<>nil) then
result:=pH.h_name
else
result:='';
WSACleanup;
end;
10、解除interbase默认只能连5个客户端的限制:
必须硬盘安装,如果是用的光盘,需要把光盘上IB6/SERVER目录COPY到硬盘,然后从硬盘安装。在SERVER目录下,记录ib_license.dat文件中的ID及KEY,再把下面这个ib_license.dat文件覆盖掉SERVER目录中的同名文件,然后开始安装,填写ID和KEY时用记录下的ID及KEY。
Ib_license.dat:
PRODUCT INTERBASE, OPTIONS QR, VERSION WI-V6.0, CERTIFICATE 100, ID VAR-10472, KEY a8-2-22-0, COMMENT InterBase Remote Client
PRODUCT INTERBASE, OPTIONS DEIQR, VERSION WI-V6.0, CERTIFICATE 50, USERS 2, ID VAR-13505, KEY 68-10-22-0PRODUCT INTERBASE, OPTIONS QR, VERSION WI-V6.0, CERTIFICATE 100, ID VAR-10472, KEY a8-2-22-1, COMMENT InterBase Remote Client
PRODUCT INTERBASE, OPTIONS DEIQRSW, VERSION WI-V6.0, CERTIFICATE 56, ID VAR-12345, KEY f7-13-a6-4
PRODUCT INTERBASE, OPTIONS R, VERSION WI-V6.0, CERTIFICATE 52, ID VAR-12347, KEY 1f-1-22-0
PRODUCT INTERBASE, OPTIONS DEIQR, VERSION WI-V6.0, CERTIFICATE 50, USERS 2, ID VAR-12348, KEY 3e-10-22-0
PRODUCT INTERBASE, OPTIONS S, VERSION WI-V6.0, CERTIFICATE 53, ID VAR-12349, KEY 2e-1-44-0
PRODUCT INTERBASE, OPTIONS D, VERSION WI-V6.0, CERTIFICATE 54, ID VAR-12350, KEY eb-1-0-0
PRODUCT INTERBASE, OPTIONS W, VERSION WI-V6.0, CERTIFICATE 60, ID VAR-12351, KEY 1a-1-40-4
PRODUCT INTERBASE, OPTIONS C3, VERSION WI-V6.0, CERTIFICATE 70, ID VAR-12353, KEY be-1-11-10
PRODUCT INTERBASE, OPTIONS A, VERSION WI-V6.0, CERTIFICATE 71, ID VAR-12354, KEY 87-1-0-0
PRODUCT INTERBASE, OPTIONS F, VERSION WI-V6.0, CERTIFICATE 72, ID VAR-12344, KEY 7c-f-0-0
PRODUCT INTERBASE, OPTIONS F, VERSION WI-V6.0, CERTIFICATE 72, ID VAR-99999, KEY ff-2-0-0
PRODUCT INTERBASE, OPTIONS 2, VERSION WI-V6.0, CERTIFICATE 73, ID VAR-11111, KEY 20-1-0-88
PRODUCT INTERBASE, OPTIONS P, VERSION WI-V6.0, CERTIFICATE 74, ID VAR-22222, KEY 10-82-8-0
PRODUCT INTERBASE, OPTIONS Y, VERSION WI-V6.0, CERTIFICATE 81, ID VAR-44444, KEY d3-3-0-11
PRODUCT INTERBASE, OPTIONS 5, VERSION WI-V6.0, CERTIFICATE 82, ID VAR-55555, KEY a5-3-0-40
PRODUCT INTERBASE, OPTIONS T, VERSION WI-V6.0, CERTIFICATE 83, ID VAR-66666, KEY f7-3-88-0
2003-5-30 10:33:00
- DELPHI的一些开发技巧和方法(一)
- DELPHI的一些开发技巧和方法(二)
- Delphi的一些小技巧(一)
- Delphi开发的一些技巧
- 一些delphi开发的小技巧
- Delphi的一些技巧
- DELPHI中调用DLL的方法和一些注意事项和技巧
- DELPHI中调用DLL的方法和一些注意事项和技巧
- 记录一些开发中常用的方法和技巧
- DELPHI基础开发技巧(一)
- iOS开发的一些小技巧(一)
- Delphi--TStrings的一些技巧
- delphi的一些操作技巧
- Directshow开发的一些基本概念和技巧
- Shell开发的一些技巧和经验
- IOS开发的一些技巧和常见问题
- IOS开发的一些技巧和常见问题
- 一些零散的方法和技巧
- 生活指南:计算机族必喝的健康饮料
- OOP在三层系统中的应用
- 数据集处理成可视树,数据网格自动适应宽度
- 中间件的产品种类
- 使用INDY的IdMappedPortTCP控件实现动态的HTTP代理服务器
- DELPHI的一些开发技巧和方法(一)
- DELPHI的一些开发技巧和方法(二)
- 用Delphi实现Socket5代理编程系列讲座
- 谈Delphi编程中Http协议的应用(一)
- 解析Ajax如何处理响应信息
- Delphi(一) --惯用法
- 用DELPHI实现文件加密压缩
- 浅谈中间件
- Java模拟.NET的连接池