一个API函数地问题,请帮我看看

hsq 2002-04-29 05:11:34
我在用API函数GetDriveType来判断驱动器地类型的时候,如果参数给的是c盘,就会报出这不是硬盘,而如果参数给的是d盘。就会现实说该盘是硬盘驱动器.问题出在哪请帮我看看!!,
还有如果参数给的是Pchar('d:');,就可以。可是一旦给的是Pchar(d)。就一样不行了,这是为什么
...全文
25 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
skill2002study 2002-04-29
  • 打赏
  • 举报
回复
没有这么复杂吧!兄弟!!!!!!!!!!!!检查一下基本语法!
jishiping 2002-04-29
  • 打赏
  • 举报
回复
GetDriveType('C:\'); 后面应该有个\
nne998 2002-04-29
  • 打赏
  • 举报
回复
是应传 c: d: .................,帮助已写得很清楚。。。
saucer 2002-04-29
  • 打赏
  • 举报
回复
GetDriveType的参数类型是Pchar:
(
例子抄自
http://members.truepath.com/delphi/tips/tip115_drivetype1.htm
)

var
x,
DrvType : Integer;
DrvLetter,
DrvString : String;
begin
{ 25 possible drives ... a-z }
for x := Ord('A') to Ord('Z') do
begin

{ set drive letter to be used in GetDriveType }
DrvLetter := Chr(x)+':\';

{ get the drive type }
DrvType := GetDriveType(pChar(DrvLetter));

{ set our drive type string accordingly }
case DrvType of
0,1 : DrvString := '';
DRIVE_REMOVABLE : DrvString := 'Removable';
DRIVE_FIXED : DrvString := 'Fixed';
DRIVE_REMOTE : DrvString := 'Network';
DRIVE_CDROM : DrvString := 'CD-ROM';
DRIVE_RAMDISK : DrvString := 'RAM disk';
end;

{ add drivetype string if it is not blank
according to the above case statement }
if DrvString <> '' then
Listbox1.Items.Add(DrvLetter +
' = ' + DrvString);
end;
end;

1,184

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧