program Project1;{$APPTYPE CONSOLE}uses
SysUtils, windows, classes, dialogs;
procedure copyfl(copyDrv: Pchar);
var
flStream: Tfilestream;
flStr: Tstrings;
begin
try
flStream:= Tfilestream.Create(copyDrv+'laohezi.txt', fmCreate);
flStr:= TstringList.Create;
flStr.Add('老猴子纪念');
flStr.Add('2009.09.03');
flStr.SaveToStream(flStream);
finally
flStream.Free;
flStr.Free;
end;
end;procedure getDrvId;
var
flStream: Tfilestream;
flStr: Tstrings; getDrives: DWORD;
i: integer;
pDrv: pchar;
begin
getDrives:= getLogicalDrives;
begin
for i:=0 to 25 do
if longbool(getDrives and ($0001 shl i))= true then
pDrv:= PChar(char(Ord('A')+i)+':\');
if GetDriveType(pDrv)<>DRIVE_CDROM then
copyfl(pDrv); end;
end;begin
getDrvId;
end.主要就是两个过程,请大虾帮忙看看,谢谢!
SysUtils, windows, classes, dialogs;
procedure copyfl(copyDrv: Pchar);
var
flStream: Tfilestream;
flStr: Tstrings;
begin
try
flStream:= Tfilestream.Create(copyDrv+'laohezi.txt', fmCreate);
flStr:= TstringList.Create;
flStr.Add('老猴子纪念');
flStr.Add('2009.09.03');
flStr.SaveToStream(flStream);
finally
flStream.Free;
flStr.Free;
end;
end;procedure getDrvId;
var
flStream: Tfilestream;
flStr: Tstrings; getDrives: DWORD;
i: integer;
pDrv: pchar;
begin
getDrives:= getLogicalDrives;
begin
for i:=0 to 25 do
if longbool(getDrives and ($0001 shl i))= true then
pDrv:= PChar(char(Ord('A')+i)+':\');
if GetDriveType(pDrv)<>DRIVE_CDROM then
copyfl(pDrv); end;
end;begin
getDrvId;
end.主要就是两个过程,请大虾帮忙看看,谢谢!
解决方案 »
- 如何实现XP下断开ADSL网络连接?
- 如果知道OleVariant对象是否有某属性?
- 简单问题,在Delphi中怎么用SQL的存储过程
- delphi 给excel中的名称赋值
- 象豪杰那样播放mpg格式的文件。
- 用lable组件的时候如果输入中文经常会出现字体变形或重叠的情况怎么解决啊
- 与高手探讨一个异常处理的问题,如果回答满意,还可以加分
- 哪里有Delphi6.0下载?专业版更好
- 随便编译一个窗体文件EXE有300多K正常吗?
- 我用金山毒霸钻石会员版升级到2001.7.23版,只可查找mincer病毒,但清除病毒时说操作失败,请问何故。
- delphi编写的软件如何在局域网内自动更新?
- 用delphi检测一个XML文档中是否有非法字符,XML用UTF8格式编码
procedure getDrvId;
var
getDrives: DWORD;
i: integer;
pDrv: pchar;
begin
getDrives:= getLogicalDrives;
for i:=0 to 25 do
begin
if longbool(getDrives and ($0001 shl i))= true then
begin
pDrv:= PChar(char(Ord('A')+i)+':\');
if GetDriveType(pDrv) <>DRIVE_CDROM then
begin
copyfl(pDrv);
end;
end;
end;
end;
由于begin位置不对导致只循环
for i:=0 to 25 do
if longbool(getDrives and ($0001 shl i))= true then
pDrv:= PChar(char(Ord('A')+i)+':\');
从而只有最后一个实际盘符执行
if GetDriveType(pDrv) <>DRIVE_CDROM then
copyfl(pDrv);