请问如何获得光驱的盘符,比如一个光驱,如果是多光驱呢

解决方案 »

  1.   

    var
      ch: char;
    begin
      for ch = 'A' to 'Z' do
        if GetDriveType(PChar(ch+':\'))=DRIVE_CDROM then
        begin
        end;
    end;
      

  2.   

    检测驱动器类型:
    var 
      typ: Integer; 
      s:   string; 
    begin 
      s   := 'C:\'; 
      typ := GetDriveType(PChar(s)); 
      if Typ <> 0 then case typ of 
          DRIVE_REMOVABLE: 
            begin 
              ShowMessage('Drive Removable / Diskette'); 
            end; 
          DRIVE_FIXED: 
            begin 
              ShowMessage('Drive fixed / Festplatte'); 
            end; 
          DRIVE_CDROM: 
            begin 
              ShowMessage('CD ROM Drive'); 
            end; 
          DRIVE_RAMDISK: 
            begin 
              ShowMessage('RAM Drive'); 
            end; 
          DRIVE_REMOTE: 
            begin 
              ShowMessage('Remote Drive / Netzlaufwerk'); 
            end; 
        end; 
    end;
      

  3.   

    我装了一个光驱,一个刻录机,一楼程序
    var
      ch: char;
    begin
      for ch = 'A' to 'Z' do
        if GetDriveType(PChar(ch+':\'))=DRIVE_CDROM then
        begin
    showmessage(ch);
        end;
    end;
    现实的是j(光驱)和k(刻录机),可是我只想找到光驱,怎么办