Results 1 to 4 of 4

Thread: Drive detecteren

  1. #1

    Unhappy Drive detecteren

    Ik ben een spel aan het maken in Delphi (met DelphiX), nou lukt dat allemaal goed maar ik heb een probleem. Ik vindt het zelf nutteloos om alles te moeten installeren dus ik wil een gedeelte op een cd zetten en een gedeelte (veelgebruikte bitmaps) die je moet installeren. Maar als ik dan vanuit een programma van de harde schrijf een bestand van de cd wil opvragen, hoe moet dat dan? Ik kan naturlijk wel gewoon dit gebruiken:

    Image1.LoadFromFile('d:/bestand.bmp');

    maar wie zegt dat de drive waar de cd van dat spel in zit d is? Ik moet dus iets hebben waarmee het programma automatisch detecteerd waar de cd in zit bijvoorbeeld met het gebruik van het label van de cd maar zelf zou ik niet weten hoe, heeft iemand een idee?

    Alvast hartelijk bedankt!
    Lynx
    Lynx,
    www.animals.nl

  2. #2
    Hoi Lynx,

    Op de Unofficial Delphi Developers FAQ vond ik de volgende routines, volgens mij moet je daarmee een eind komen.

    Code:
    function FindFirstCDROM: shortstring;
    var
      AList                         : TStringList;
      Counter                       : integer;
    begin
      Result := 'no CDROM present';
      AList := TStringList.Create;
      ListDrives(AList);
      for Counter := 0 to AList.Count-1 do
        if GetDriveType(PChar(Alist.Strings[Counter])) = DRIVE_CDROM then
          Result := Alist.Strings[Counter]
    end;
    
    procedure ListDrives(Strings: TStringList);
    const BufSize = 256;
    var
      Buffer                    : PChar;
      P                            : PChar;
    begin
      GetMem(Buffer, BufSize);
      try
        Strings.BeginUpdate;
        try
          Strings.Clear;
          if GetLogicalDriveStrings(BufSize, Buffer) <> 0 then begin
            P := Buffer;
            while P^ <> #0 do begin
              Strings.Add(P);
              Inc(P, StrLen(P) + 1);
            end;
          end;
        finally
          Strings.EndUpdate;
        end;
      finally
        FreeMem(Buffer, BufSize);
      end;
    end;
    Marcel

  3. #3
    Ziet er veelbelovend uit! Ik ga zo snel mogenlijk verder aan mijn spel!
    Lynx,
    www.animals.nl

  4. #4
    Member Chilly-B's Avatar
    Join Date
    Jun 2001
    Location
    Hoogeveen
    Posts
    62

    Smile

    je kunt natuurlijk ook onder het installeren een registry entry aanmaken voor
    je programma met daarin bijvoorbeeld de installatie dir.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. CDROM drive aanspreken
    By daanmsvl in forum Algemeen
    Replies: 6
    Last Post: 25-Jul-04, 16:34
  2. filenaam zoeken op CD-rom drive
    By mjwdoek in forum Algemeen
    Replies: 5
    Last Post: 02-Jan-03, 23:58
  3. Req: Detecteren van PM
    By The Master in forum DeX??
    Replies: 2
    Last Post: 23-Sep-02, 21:33
  4. Ping Detecteren (Winsock of Firewall Logfile)
    By Crasher in forum Algemeen
    Replies: 0
    Last Post: 14-Sep-02, 17:43
  5. Replies: 2
    Last Post: 28-May-02, 10:11

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •