Resulta que yo uso una funcion booleana para determinar si un disco esta preparado, como es el caso de determinar si hay un diskette en la unidad A, la funcion es la siguiente:
Código Delphi
[-]
function DiskInDrive(Drive: Char): Boolean;
var
ErrorMode: word;
begin
if Drive in ['a'..'z'] then Dec(Drive, $20);
if not (Drive in ['A'..'Z']) then
raise EConvertError.Create('Not a valid drive ID');
ErrorMode := SetErrorMode(SEM_FailCriticalErrors);
try
if DiskSize(Ord(Drive) - $40) = -1 then
Result := False
else
Result := True;
finally
SetErrorMode(ErrorMode);
end;
end;
Pero el tema esta, en que las unidades a verificar si estan listas, las debo tomar si o si de una base de datos access, pero estan en un campo de tipo string, y no se como puedo pasar ese string[1] a Char, ya que haciendo lo siguiente, no me funciona
Código Delphi
[-]
...
var
drive:string;
begin
drive:=ADOQuery1.FieldByName('unidad').AsString;
if DiskInDrive(pChar(drive)) then ....
.....
Por lo que no se como hacer para pasar ese string de 1 caracter a Char.
Alguna idea, sugerencia????
Saludos y Gracias