Исходный код версии 2.0
This commit is contained in:
2022-05-04 07:31:33 +03:00
parent 977c4a728b
commit c585c2f0cb
1423 changed files with 593425 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
Result:= False;
if ADisc = '' then
Abort;
S:= ADisc + ':';
if GetDriveType(PChar(S)) = DRIVE_CDROM then
begin
Flags:= mci_Open_Type or mci_Open_Element;
with OpenParm do
begin
dwCallback:= 0;
lpstrDeviceType:= 'CDAudio';
lpstrElementName:= PChar(S);
end;
Res:= mciSendCommand(0, mci_Open, Flags, Longint(@OpenParm));
if Res <> 0 then
Exit;
DeviceID:= OpenParm.wDeviceID;
try
Res:= mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_OPEN, 0);
if Res = 0 then
Exit;
Result:= True;
finally
mciSendCommand(DeviceID, mci_Close, Flags, Longint(@OpenParm));
end;
end;

View File

@@ -0,0 +1,5 @@
var Res: MciError;
OpenParm: TMCI_Open_Parms;
Flags: DWord;
S: String;
DeviceID: Word;

View File

@@ -0,0 +1,11 @@
Result:= '';
DL:= TDrivesList.Create;
SL:= TStringListUTF8.Create;
if DL.Count > 0 then
for Ind:= 0 to DL.Count - 1 do
if DL.Items[Ind].DriveType = dtOptical then
SL.Add(DL.Items[Ind].DriveLabel[1]);
SL.Delimiter:= ';';
Result:= SL.DelimitedText;
FreeAndNil(SL);
FreeAndNil(DL);

View File

@@ -0,0 +1,17 @@
s:= ADisc + ':\';
root:= PChar(s);
GetMem(VolumeNameBuffer, 256);
Getmem(FileSystemNameBuffer, 256);
VolumeNameSize:= 255;
FileSystemNameSize:= 255;
res:= GetVolumeInformation(Root, VolumeNameBuffer, VolumeNameSize, @VolumeSerialNumber, MaximumComponentLength, FileSystemFlags, FileSystemNameBuffer, FileSystemNameSize);
with Result do
begin
diHasInfo:= res;
diDrive:= ADisc;
diVolumeName:= VolumeNameBuffer;
diFileSystem:= FileSystemNameBuffer;
diSerial:= VolumeSerialNumber;
end;
Freemem(VolumeNameBuffer, 256);
Freemem(FileSystemNameBuffer, 256);

View File

@@ -0,0 +1,2 @@
DL:= TDrivesList.Create;

View File

@@ -0,0 +1,6 @@
var root: PChar;
res: LongBool;
VolumeNameBuffer, FileSystemNameBuffer: PChar;
VolumeNameSize,FileSystemNameSize: DWORD;
VolumeSerialNumber, MaximumComponentLength, FileSystemFlags: DWORD;
s: String;

View File

@@ -0,0 +1 @@
var DL: TDrivesList;

View File

@@ -0,0 +1,3 @@
var i, j : Integer;
Buf : array [0..95] of Char;
SL: TStringListUTF8;