Avatar billede jaweni Nybegynder
02. juni 2003 - 01:04 Der er 1 løsning

Checke alle drev - igen

Fik en god løsning af dkn ang. spørgsmål
nr. 359536 (søgning af alle drev); men

1) Jeg vil gerne undgå, at ikke fundne
  drev udskrives. Det vides ikke  på
  forhånd, hvilke drev der findes på
  PC'eren. Noget med IF NOT EXISTS ....???

2) Kan det gøres "lydløst". Externe drev
  (f.x A-drevet går i gang, når der checkes).
Avatar billede snowball Novice
02. juni 2003 - 01:28 #1
1) Du kan bruge nedenstående funktion til at finde ud af hvilke drev du har på din PC:

procedure GetDrives;
const
  DRIVE_UNKNOWN = 0;
  DRIVE_NO_ROOT_DIR = 1;
  DRIVE_REMOVABLE = 2;
  DRIVE_FIXED = 3;
  DRIVE_REMOTE = 4;
  DRIVE_CDROM = 5;
  DRIVE_RAMDISK = 6;
var
  r: LongWord;
  Drives: array[0..128] of char;
  pDrive: PChar;
begin
  r := GetLogicalDriveStrings(SizeOf(Drives), Drives);
  if r = 0 then Exit;
  if r > SizeOf(Drives) then
    raise Exception.Create(SysErrorMessage(ERROR_OUTOFMEMORY));
  pDrive := Drives;
  while pDrive^ <> #0 do
  begin
    if (GetDriveType(pDrive) = DRIVE_FIXED) OR (GetDriveType(pDrive) = DRIVE_REMOVABLE) OR (GetDriveType(pDrive) = DRIVE_REMOTE) OR
      (GetDriveType(pDrive) = DRIVE_CDROM) then
        Form1.ListBox1.Items.Add(pDrive);

    Inc(pDrive, 4);
  end;
end;

Så bruger du så bare de drev der står i listen når du skal bruge den funktion du fik i det andet spørgsmål.

2) Nej, det kan du ikke. Du skal jo ud og læse på drevet for at finde ud af om det sidder en diskette i, og det kan du jo kun finde ud af ved at tilgå drevet.

Snowball
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester