Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Как проверить может ли CD-устройство записывать?

Delphi , Технологии , CD-ROM

Как проверить может ли CD-устройство записывать?

Code:
{....}
 
uses Registry;
 
{....}
 
function HasCDRecorder: Boolean;
var
reg: TRegistry;
begin
reg := TRegistry.Create;
try
   // set the the Mainkey,
   reg.RootKey := HKEY_CURRENT_USER;
   // Open a key
   reg.OpenKey('Software\Microsoft\Windows\CurrentVersion\Explorer\CD Burning', False);
   // Check if the Key exists
   Result := reg.ValueExists('CD Recorder Drive');
   // Close the key
   reg.CloseKey;
finally
   // and free the TRegistry Object
   reg.Free;
end;
end;
 
// Example:
procedure TForm1.Button1Click(Sender: TObject);
begin
if HasCDRecorder then
   ShowMessage('CD-Recorder available.')
else
   ShowMessage('CD-Recorder NOT available.');
end;
Взято с сайта http://www.swissdelphicenter.ch/en/tipsindex.php

Код написан на Delphi и использует Windows Registry для проверки наличия устройства записи CD на системе.

Вот шаг за шагом, как работает код:

  1. Функция HasCDRecorder создает объект TRegistry, который используется для взаимодействия с Windows Registry.
  2. Она устанавливает корневой ключ в HKEY_CURRENT_USER, что относится к реестру текущего пользователя.
  3. Она открывает подключку, называемую Software\Microsoft\Windows\CurrentVersion\Explorer\CD Burning.
  4. Она проверяет, существует ли значение, называемое CD Recorder Drive, в этой подключке с помощью метода ValueExists.
  5. Если значение существует, то это означает, что устройство записи CD есть на системе, и функция возвращает True. В противном случае она возвращает False.

Пример кода в конце фрагмента демонстрирует, как использовать эту функцию. Он создает обработчик события клика по кнопке, который проверяет наличие устройства записи CD с помощью функции HasCDRecorder. Если устройство доступно, то отображается сообщение "CD-Recorder available". В противном случае отображается сообщение "CD-Recorder NOT available".

Альтернативное решение - использовать функцию Windows API GetCDBurningSupported вместо чтения из реестра. Эта функция возвращает значение, указывающее, поддерживается ли запись CD на системе.

Вот пример использования этой функции в Delphi:

function HasCDRecorder: Boolean;
begin
  Result := GetCDBurningSupported = 1;
end;

Этот код более компактен и платформо-независим, так как он основан на native Windows API-функции, а не на чтении из реестра.

Статья описывает способ проверки, может ли CD-устройство записывать на языке Delphi, используя функцию HasCDRecorder и Registry.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: CD-ROM ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-11-21 13:25:31/0.0055088996887207/1