Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: CD-Rom и VB6 Добавлено: 08.06.03 00:13  

Автор вопроса:  L.Denn | Web-сайт: l-denn.narod.ru
Здрям!!!! Помогите люди добрые вот с таким  интересным вопросиком, задача такова: у меня два CD-Rom'a, програмно в ВБ я открываю первый сидиром, а акак програмно мне открыть вттторой???

Ответить

  Ответы Всего ответов: 2  

Номер ответа: 1
Автор ответа:
 freeloader



ICQ: 50804884 

Вопросов: 72
Ответов: 642
 Web-сайт: freeloader.folder-pro.net
 Профиль | | #1
Добавлено: 09.06.03 11:31

Как програмно открыть\закрыть поддон CD-ROM?
Группа ссылок: MCI

Вариант 1:

  Функция OpenCD открывает лоток CDROM. Параметр Drive - буква диска лоток которого необходимо открыть.
  Функция CloseCD закрывает лоток CDROM. Параметр Drive - буква диска лоток которого необходимо закрыть.

.....
uses
  ... MMSystem;

function OpenCD(Drive : Char) : Boolean;
Var
  Err : MciError;
  OpenParm: TMCI_Open_Parms;

  Flags : DWord;
  S : String;
  DeviceID : Word;
begin
  Result:=false;
  S:=Drive+':';
  Flags:=mci_Open_Type or mci_Open_Element; // См. mci_Open
  With OpenParm do
    begin
      dwCallback := 0;
      lpstrDeviceType := 'CDAudio';
      lpstrElementName := PChar(S);
    end;
  Err := mciSendCommand(0, mci_Open, Flags, Longint(@OpenParm));
  IF Err<>0 Then exit;
  DeviceID:=OpenParm.wDeviceID;
  try
    Err:=mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_OPEN, 0);

    IF Err=0 Then exit;
    Result:=True;
  finally
    mciSendCommand(DeviceID, mci_Close, Flags, Longint(@OpenParm));
  end;
end;


function CloseCD(Drive : Char) : Boolean;
Var
  Err : MciError;
  OpenParm: TMCI_Open_Parms;
  Flags : DWord;
  S : String;
  DeviceID : Word;
begin
  Result:=false;
  S:=Drive+':';
  Flags:=mci_Open_Type or mci_Open_Element;
  With OpenParm do
    begin
      dwCallback := 0;
      lpstrDeviceType := 'CDAudio';

      lpstrElementName := PChar(S);
    end;
  Err := mciSendCommand(0, mci_Open, Flags, Longint(@OpenParm));
  IF Err<>0 Then exit;
  DeviceID:=OpenParm.wDeviceID;
  try
    Err:=mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_CLOSED, 0);
    IF Err=0 Then exit;
    Result:=True;
  finally
    mciSendCommand(DeviceID, MCI_CLOSE, Flags, Longint(@OpenParm));
  end;
end;

 

Вариант 2:

Данные функции работаю только с первым устройством в системе:
Открыть дверцу:

 mciSendString( 'Set cdaudio door open wait', nil, 0, application.handle);

закрыть дверцу:
 mciSendString( 'Set cdaudio door closed wait', nil, 0, application.handle);

Дерзай

Ответить

Номер ответа: 2
Автор ответа:
 L.Denn



Вопросов: 4
Ответов: 6
 Web-сайт: l-denn.narod.ru
 Профиль | | #2
Добавлено: 17.06.03 21:00

Слушай я провазился с твоим кодом  почти весь день но блин ни фига не вышло, не мог бы ты прислать примерчик если таой есть и если не трудно, зарание сянкс(большой)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам