Vb, Delphi, .net, framework, C++, Java, Pascal,Visual Studio, Asm, Ruby, C#, j#, Cs, Html, Php, Perl, Asp, xHtml Get Free Souce Code Here...



Determining if there is a disk/diskette/CD in a removable-disk drive - Delphi

The trick is done by calling the API GetDiskFreeSpace and returning
its return value as a boolean. The following function takes the drive
letter as a parameter (for example 'A', 'D', etc.) and returns True
if there is a disk in the drive, or False if not.

var
DrivePath: array [0..3] of char = 'A:\';

function IsDiskIn(drive: char): boolean;
var
d1, d2, d3, d4: longword;
begin
DrivePath[0] := drive;
Result := GetDiskFreeSpace(DrivePath, d1, d2, d3, d4);
end;

In the implementation we use an initialized null-terminated string
(DrivePath) that contains the root directory of drive A: and we
substitute the drive letter with the one passed as parameter before
calling GetDiskFreeSpace.


Sample call
-----------

procedure TForm1.Button1Click(Sender: TObject);
begin
if not IsDiskIn('A') then
ShowMessage('Drive A: Not Ready');
end;

0 comments:

Post a Comment