Драйверы устройств в системе Windows


Прерывания при стандартном режиме работы системы Windows - часть 5


 

  /* Освободить программу обслуживания прерываний реального режима*/

 

     GlobalDosFree((WORD)hReflector) ;

}

 

/*XP<   LibMain - основная библиотечная точка входа */

*

*  ENTRY (вход)

*

*  EXIT (выход)

*

*  RETURNS (возврат)

* Если инициализация завершается  успешно принимает  значение, равное

* TRUE, в противном случае - FALSE

*

*  WARNINGS (предупреждения)

*

*  CALLS (вызовы)

*

*  NOTES (примечание)

* Настоящая библиотечная точка входа  находится в ассемблерном модуле

* LIBENTRY.ASM, а в данную точку просто передается управление

*

*/

BOOL FAR PASCAL LibMain(HANDLE hInstance

   /* обработчик библиотечного экземпляра*/

                ,WORD wDataSeg

   /* сегмент данных по умолчанию */

                ,WORD cbHeap

   /* размер динамической области по умолчанию */

                ,LPSTR lpszCmdLine) ;

   /* командная строка */

/*>*/

{

     lpszCmdLine = lpszCmdLine ;

     /* Избегать предупреждения -W4   */

     wDataSeg = wDataSeg ;

     cbHeap = cbHeap ;

     hInstance = hInstance ;

     /* Это может понадобиться позже для доступа к ресурсам из нашего

     *исполнительного модуля */

 

     return TRUE ;

}

 

/*XP<   WEP - процедура выхода в системе Windows */

*

*  ENTRY (вход)

* fSystemExit указывает  на завершение  сессии  в системе  Windows. В

* противном случае происходит только разгрузка данной библиотеки DLL.

*  RETURNS (возврат)

* Всегда возвращается значение 1

*

*  WARNINGS (предупреждения)

* Из-за  ошибок  в системе  Windows 3.0  и  более  ранних  версиях (а

* возможно и  в более  поздних  версиях) данная  функция  должна быть

*помещена в фиксированный сегмент. Эти же ошибки приводят к тому, что

* значение DS  сомнительно,  а поэтому нельзя его использовать (также

* как и любые статические данные).

*

* В любом случае, несомненно не надо ничего делать в этой точке.

*

*  CALLS (вызовы)

* Нет

*  NOTES (примечания)

* Это стандартная процедура выхода DLL.

*




- Начало -  - Назад -  - Вперед -