delphi 获取磁盘卷标为中文时返回异常,但英文状态下成功
delphi 获取磁盘卷标为中文时返回错误,但英文状态下成功
代码如下,应该是delphi 获取卷标时候转换出错吧, 怎么办?
procedure getname;
var
Path,VolumeName:array [0..MAX_PATH+1] of wideChar;
MaximumComponentLength,FileSystemFlags:Cardinal;
begin
// StrPCopy(Path,'c:\');
// GetVolumeInformation
GetVolumeInformationW( 'e:\',
VolumeName,
SizeOf(VolumeName),
nil,
MaximumComponentLength,
FileSystemFlags,
nil,
0);
form1.Text := VolumeName;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
getname;
end;
------解决方案--------------------
你的E盘没有卷标吧!?没有卷标的时候会显示“本地磁盘”,但通过函数获取的时候会返回空。
代码如下,应该是delphi 获取卷标时候转换出错吧, 怎么办?
procedure getname;
var
Path,VolumeName:array [0..MAX_PATH+1] of wideChar;
MaximumComponentLength,FileSystemFlags:Cardinal;
begin
// StrPCopy(Path,'c:\');
// GetVolumeInformation
GetVolumeInformationW( 'e:\',
VolumeName,
SizeOf(VolumeName),
nil,
MaximumComponentLength,
FileSystemFlags,
nil,
0);
form1.Text := VolumeName;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
getname;
end;
------解决方案--------------------
你的E盘没有卷标吧!?没有卷标的时候会显示“本地磁盘”,但通过函数获取的时候会返回空。