🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.delphi
7 messages
7 total messages Started by Piotr Kodzis Sat, 13 Sep 1997 00:00
cd rom
#97
Author: Piotr Kodzis
Date: Sat, 13 Sep 1997 00:00
30 lines
1422 bytes
uzywam funkcji zamieszczonej ponizej do wydostania informacji, czy CD rom
jest gotowy do odczytu.

function DiskInDrive(Drive: Char): Boolean;
var
  ErrorMode: Integer;
begin
  Result := False;
  Drive := UpCase(Drive);
  if not (Drive in ['A'..'Z']) then
    Exit;
  ErrorMode := SetErrorMode (SEM_FailCriticalErrors);
  try
    Application.ProcessMessages;
    if DiskSize(Ord(Drive) - Ord('A') + 1) <> -1 then
       Result := True;
  finally
    SetErrorMode(ErrorMode);
    Application.ProcessMessages;
  end;
end;

funkcja wykonuje sie cyklicznie, caly czas w trakcie dzialania programu. i
jest prawie ok. jest jednak problem. jesli program startuje, a w CDRomie nie
ma plyty, to funkcja zgodnie z oczekiwaniami zwraca falsz. problem w tym, ze
po wlozeniu plyty do napedu nie mam mozliwosci dostania sie do niej -
funkcja caly czas zwraca falsz. windows explorer stwierdza, ze naped nie
jest gotowy do odczytu. w czym problem? a moze znacie jakies lepsze metody
stwierdzenia, kiedy ktos wklada lub wyjmuje cd?
Re: cd rom
#98
Author: yan... Krzysztof Jankowski
Date: Sun, 14 Sep 1997 00:00
33 lines
1159 bytes
Piotr Kodzis napisal:

>uzywam funkcji zamieszczonej ponizej do wydostania informacji, czy CD rom
>jest gotowy do odczytu.
>
[...]
a sprobuj tego:

function Ready (drive: byte): boolean;
begin
  Check:= DiskSize (drive) <>-1
end;

Funkcja przyjmuje (zgodnie z tym co i DiskSize) parametr 0-dla dysku
aktualnego, 1-A:, 2-B:, ..... (przepisane z Helpu). 

Problem, jaki musisz uwzglednic to taki, czy dysk w napedzie, to
CD-Audio, czy CD-Rom - ale to juz calkiem inna historia.

W ten sposob mozna bylo (i teraz tez) sprawdzic dowolny naped czy jest
w nim dyskietka lub istnieje dysk twardy o danym numerku w czasach TP.
Dziala to i teraz pod Delphi...


CUL8R, Yankee 8^)


yan...@polbox.com
yan...@dyd.pol.lublin.pl

===============================
Zadnych olimpiad w Zakopanem!!! 
Re: cd rom
#102
Author: yan... Krzysztof Jankowski
Date: Sun, 14 Sep 1997 00:00
26 lines
914 bytes
Piotr Kodzis napisal:
>uzywam funkcji zamieszczonej ponizej do wydostania informacji, czy CD rom
>jest gotowy do odczytu.
[...]

a  moze sprobuj tak:
function Ready(drive:byte): boolean;
begin
  Ready:= DiskSize (drive) <> -1
end;

Dziala dla dyskietek i CD-ROM-ow. Musisz tylko sprawdzic czy CD to
audio, czy plytka z danymi. Jako 'drive' podajesz 0-dysk biezacy,
1-A:, 2-B:, ..., 5-E:, ........ 24-Z:      8^)



CUL8R, Yankee 8^)


yan...@polbox.com
yan...@dyd.pol.lublin.pl

===============================
Zadnych olimpiad w Zakopanem!!! 
Re: cd rom
#103
Author: yan... Krzysztof Jankowski
Date: Sun, 14 Sep 1997 00:00
12 lines
598 bytes
Sorry za podwojna informacje, ale myslalem, ze tamta pierwsza nie
poszla...

CUL8R, Yankee 8^)


yan...@polbox.com
yan...@dyd.pol.lublin.pl

===============================
Zadnych olimpiad w Zakopanem!!! 
Re: cd rom
#99
Author: yan... Krzysztof Jankowski
Date: Mon, 15 Sep 1997 00:00
18 lines
709 bytes
>function Ready (drive: byte): boolean;
>begin
>  Check:= DiskSize (drive) <>-1
>end;

Oczywiscie machnalem sie, bo tu powinno byc:
function Ready (drive: byte): boolean;
begin
  Ready:= DiskSize (drive) <>-1
end;

Sorry...


CUL8R, Yankee 8^)
===================================
Zadnych olimpiad w Zakopanem!!!
Re: cd rom
#100
Author: Piotr Kodzis
Date: Mon, 15 Sep 1997 00:00
21 lines
980 bytes
sorry, ale chyba nie przyjzales sie funkcji, ktora wyslalem. to to samo,
tyle, ze wzbogacone o wylaczenie na chwile komunikatow o bledach.

>>function Ready (drive: byte): boolean;
>>begin
>>  Check:= DiskSize (drive) <>-1
>>end;
>
>Oczywiscie machnalem sie, bo tu powinno byc:
>function Ready (drive: byte): boolean;
>begin
>  Ready:= DiskSize (drive) <>-1
>end;
>
>Sorry...
>
>
>CUL8R, Yankee 8^)
>===================================
>Zadnych olimpiad w Zakopanem!!!
Re: cd rom
#101
Author: yan... Krzysztof Jankowski
Date: Mon, 15 Sep 1997 00:00
21 lines
986 bytes
Piotr Kodzis napisal:

>sorry, ale chyba nie przyjzales sie funkcji, ktora wyslalem. to to samo,
>tyle, ze wzbogacone o wylaczenie na chwile komunikatow o bledach.

wiesz, to prawda ;-)

Tylko, ze to moje czy dla dyskietki, czy CD-ROM-u dziala i to zarowno
pod Pascalem (czyli TP, BP), jak i Delphi (1.0 i 2.0) - zawsze zwraca
false, gdy nie ma w napedzie dyskietki lub plytki. Przepraszam...

 
CUL8R, Yankee 8^)


yan...@polbox.com
yan...@dyd.pol.lublin.pl

===============================
Zadnych olimpiad w Zakopanem!!! 
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads