como executar um arquivo a partir do cd rom, que pode variar
04/02/2003
0
quero executar o arquivo a partir do CD Rom, mais a letra do drive pode
mudar de máquina para máquina ( que pode ser D, E, F ,G...)?
como devo proceder?
por favor me ajudem !!! :(
Lbsystems
Posts
04/02/2003
Dor_poa
05/02/2003
Anonymous
Um Abraço
Werlon Goulart
Obter o tipo de um drive (remov¡vel, fixo, CD-ROM, unidade de rede, etc)
Inclua na se‡Æo uses: Windows, Dialogs
{ - Coloque um edit (Edit1) e um botÆo no form;
- Altere o OnClick do botÆo conforme abaixo: }
procedure TForm1.Button1Click(Sender: TObject);
var
S: string;
Tipo: byte;
begin
Tipo := GetDriveType(PChar(Edit1.Text[1] + ´:\´));
case Tipo of
0: S := ´Tipo indeterminado´;
1: S := ´Drive nÆo existe´;
DRIVE_REMOVABLE: S := ´Disco remov¡vel´;
DRIVE_FIXED: S := ´Disco Fixo´;
DRIVE_REMOTE: S := ´Unidade de rede´;
DRIVE_CDROM: S := ´CD-ROM´;
DRIVE_RAMDISK: S := ´RAM Disk´;
else
S := ´Erro´;
end;
ShowMessage(S);
end;
{ Para pegar o tipo da unidade atual troque...}
Tipo := GetDriveType(PChar(Edit1.Text[1] + ´:\´));
{ por }
Tipo := GetDriveType(nil);
Observa‡äes
Para testar digite a letra do drive no Edit1 e clique no botÆo. A unit Dialogs foi colocada no uses apenas por causa da procedure ShowMessage. Para exibir todas as unidades existentes e seus respectivos tipos, use a fun‡Æo tbGetDrives (da pergunta 64) em conjunto com este exemplo.
In¡cio da p gina
05/02/2003
Anonymous
A função abaixo resolver o seu problema.
Washigton
// Retorna a letra atribuida a unidade de CD-Rom
function CDROM: String;
var
Drivers, i: Integer;
Driver: String;
begin
Drivers := GetLogicalDrives;
for i := 0 to Drivers Do
begin
Driver := Char(i + 65) + ´:\´;
if GetDriveType(PChar(Driver)) = DRIVE_CDROM then
begin
Result := Driver;
Break;
end;
end;
end;
05/02/2003
Dor_poa
O código abaixo implementa uma função para testar qual o tipo de drive da unidade especificada.
Para isto, é necessário utilizar uma função de API do windows chamada GetTypeDrive.
Esta função retorna valores default que indicam o tipo de drive selecionado.(Drive_Removable,Drive_Fixed,Drive_Remote,Drive_CdRom,Drive_RamDisk)
Código Completo:
Function Tipo_Drive(Drive:Char):String;
Const
Drive_Removable = 2;
Drive_Fixed = 3;
Drive_Remote = 4;
Drive_CdRom = 5;
Drive_RamDisk = 6;
var
Tipo: byte;
begin
Tipo := GetDriveType(PChar(Drive + ´:\´));
Case Tipo of
0: Result := ´Indeterminado´;
1: Result := ´Inexistente ´;
2: Result := ´Removível´;
3: Result := ´Fixo´;
4: Result := ´Rede´;
5: Result := ´CD-ROM´;
6: Result := ´RAM Disk´;
else Result := ´ Erro´;
End;
end;
Clique aqui para fazer login e interagir na Comunidade :)