读书人

哪位高手给解释一下delphi 调用dos命令

发布时间: 2012-06-03 16:59:40 作者: rapoo

谁给解释一下delphi 调用dos命令的代码
all:='cmd.exe /c xcopy ' +str_temp +' d:\abc\ /s /y &&echo ok>d:\abc\ok.txt';
m_Result:=GetLogicalDriveStrings(MAX_PATH,buf);
for i:=1 to (m_Result div 4) do
begin
str_temp:=string(buf[i*4]+buf[i*4+1]+buf[i*4+2]);

if getdrivetype(pchar(str_temp)) = DRIVE_REMOVABLE then
begin
winexec(pchar(all),sw_hide) ;
end;
end;



str_temp 这个是获得优盘盘符的变量,不知道这个怎么个意思?

请问dos怎么调用delphi的变量

[解决办法]
调用 cmd.exe ,后面是命令行参数
[解决办法]
'cmd.exe /c + dos命令' 这是个delphi调用dos命令的格式

这里不是dos调用delphi的变量, 是组合一个dos命令字符串
[解决办法]
dos命令楼上都已经解释了,我来解释其它的;

GetLogicalDriveStrings是获取系统中所有的逻辑驱动器,如硬盘,盘,移动硬盘,光盘。。。
返回的缓冲区结果是这样的A:\ C:\ D:\ 中间有个空格,所有每个驱动器占 4 字节
即循环(m_Result div 4)次,再分隔取出字符,就得到对应的驱动器盘符了

GetDriveType就是判断驱动器类型,结果有很多种,比如
DRIVE_CDROM:光盘,
DRIVE_FIXED:本地硬盘
DRIVE_NO_ROOT_DIR:可移动磁盘
DRIVE_REMOVABLE:软盘
...

读书人网 >.NET

热点推荐