Oray display mirror driver что это

Обновлено: 04.07.2024

There are no drivers for CyberLink Mirror for Windows . Download DriverHub to find drivers automatically.

CyberLink Mirror drivers were collected from official websites of manufacturers and other trusted sources. Official driver packages will help you to restore your CyberLink Mirror (video cards). Download latest drivers for CyberLink Mirror on Windows.

CLMirrorDriver.sys — ошибки «синего экрана» (BSOD)

Существует ряд причин, по которым вы можете столкнуться с проблемами с CLMirrorDriver.sys. Большинство проблем с файлами SYS связаны с ошибками «синего экрана» (BSOD). Эти типы ошибок CLMirrorDriver.sys могут быть вызваны аппаратными проблемами, устаревшей прошивкой, поврежденными драйверами или другими проблемами, связанными с программным обеспечением (например, обновление CyberLink YouCam). В число этих ошибок входят:

  • Не удается найти CLMirrorDriver.sys.
  • Не удалось загрузить CLMirrorDriver.sys.
  • Файл CLMirrorDriver.sys отсутствует или поврежден.
  • Windows не удалось запустить — CLMirrorDriver.sys.



Обнаружена проблема, в результате которой ОС Windows завершила работу, чтобы предотвратить повреждение компьютера. По всей видимости, причиной проблемы стал следующий файл: CLMirrorDriver.sys.

:( На вашем ПК возникла проблема, которую не удалось устранить, и его необходимо перезагрузить. Сведения об ошибке можно найти в Интернете: [BSOD] (CLMirrorDriver.sys).

STOP 0x00000050: PAGE FAULT IN A NONPAGED AREA (CLMirrorDriver.sys)
STOP 0x0000003B: SYSTEM SERVICE EXCEPTION (CLMirrorDriver.sys)
STOP 0x0000001E: KMODE EXCEPTION NOT HANDLED (CLMirrorDriver.sys)
STOP 0×0000007A: KERNEL DATA INPAGE (CLMirrorDriver.sys)
STOP 0x0000007E: SYSTEM THREAD EXCEPTION NOT HANDLED (CLMirrorDriver.sys)
STOP 0x0000000A: IRQL NOT LESS EQUAL (CLMirrorDriver.sys)

Крайне важно устранять ошибки «синего экрана»

В большинстве случаев ошибки BSOD CLMirrorDriver.sys возникают после установки нового оборудования, программного обеспечения (CyberLink YouCam) или выполнения неудачного обновления Windows. В остальных случаях к ошибке «синего экрана» CLMirrorDriver.sys может привести повреждение программного обеспечения, вызванное заражением вредоносным программным обеспечением. Таким образом, крайне важно, чтобы антивирус постоянно поддерживался в актуальном состоянии и регулярно проводил сканирование системы.



СОВЕТ ОТ СПЕЦИАЛИСТА: Как показывает опыт, целесообразно всегда создавать резервную копию системы Windows и (или) точку восстановления системы, прежде чем вносить какие-либо изменения в аппаратное или программное обеспечение на компьютере. Таким образом, в случае неблагоприятного поворота событий и возникновения связанной с файлом CLMirrorDriver.sys ошибки «синего экрана» после недавних изменений можно восстановить систему в предыдущее состояние.

Драйверы на видеокарты CyberLink Mirror

В каталоге нет драйверов для CyberLink Mirror под Windows . Скачайте DriverHub для автоматического подбора драйвера.

  • Yandex Browser
  • Opera Browser
  • Avast Free Antivirus
  • World of Tanks
  • World of Warships

Все названия продуктов, логотипы и торговые марки являются собственностью соответствующих владельцев. Все названия компаний, продуктов и услуг, используемые на этом сайте, предназначены только для идентификации.

ЗЕРКАЛЬНЫЙ ДРАЙВЕР И ЕГО ПРИМЕНЕНИЕ ДЛЯ ОБСЛУЖИВАНИЯ КОМПЬЮТЕРНЫХ КЛАССОВ В ОБРАЗОВАТЕЛЬНОМ УЧРЕЖДЕНИИ

Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

Сегодня любое образовательное учреждение имеет достаточно обширный парк компьютеров, используемых как для управления, так и для организации учебного процесса. В связи со штатной реорганизацией, проводимой в системе образования, наибольшую проблему в поддержании работоспособности компьютерного парка составляет техническое и программное сопровождение и обслуживание учебных аудиторий, где требуется многократно повторять одни и те же операции на каждом рабочем месте: установка/переустановка программного обеспечения, регулярная антивирусная проверка, управление аппаратными ресурсам и т.д. Как показали результаты исследования, из-за неквалифицированного обслуживания компьютерные сети многих образовательных учреждений содержат значительное количество вирусов и других вредоносных программ, кроме того, из-за неграмотного администрирования производительность многих компьютеров занижена, а другие, наоборот, работают на пределе своих возможностей.

На данный момент существуют программы удаленного администрирования, реализующие определенные функциональные возможности, как с платной лицензий, так и свободно распространяемые. Вместе с тем изучение их функциональных возможностей показывает, что они не обеспечивают всей полноты операций управления при использовании их в образовательном учреждении. Как правило, компьютеры, размещенные в учебных аудиториях, организованы в локальную сеть. Следовательно, наиболее оптимальным методом обслуживания является удаленное взаимодействие с компьютерами, размещенными на рабочих местах обучающихся. Кроме того, деятельность администратора была бы более эффективной, если бы все необходимые функции были представлены в одной программной оболочке, совмещающей как наблюдение за компьютерами пользователей, так и управление их аппаратными ресурсами и программным обеспечением.

При этом встает вопрос о передаче изображения с мониторов пользователей на компьютер администратора. Анализ рынка программных продуктов показал, что такие программы существуют (UltraVnc, TightVNC, Remote Administrator, DameWare Utilities и др.), но все они реализуют передачу скриншотов только как точка-точка, либо сильно нагружают компьютер администратора, либо имеют открытые настройки, которые могут быть случайно изменены обучающимися.

Таким образом, в ходе исследования было принято решение о разработке программного обеспечения, удовлетворяющего следующим требованиям: административное управление должно быть возможно только при соответствующем уровне разрешений; архитектура программного продукта должна быть «клиент – сервер»; серверная часть программы должна иметь возможность удалённого запуска или запускаться автоматически с операционной системой; работа серверной части не должна быть «видна» пользователю; работа программы не должна оказывать существенного влияния на нагрузку сети и центрального процессора машины, выделенной в качестве сервера в учебной аудитории; простой и удобный интерфейс; лёгкость настроек программы. А также выделить основные функциональные возможности разрабатываемого программного продукта: управление удаленными компьютерами; получение полного доступа к ресурсам удаленного компьютера, в том числе работа с его реестром; получение информации о системе и её состоянии; удаленное включение компьютеров (Wake on LAN), выключение и перезагрузка удаленного компьютера; защита соединения с удаленным компьютером через пароль; запуск и закрытие любого приложения на удаленном компьютере; автоматическое завершение приложений и процессов; скрытие/отображение Панели задач, иконок рабочего стола, курсора мыши, минимизация/скрытие/восстановление окон и т.п.; мониторинг запущенных программ; скрытое наблюдение за удаленными компьютерами.

Остановимся подробнее на рассмотрении модуля, предназначенного для наблюдения с компьютера администратора за работой пользователей. Технологической основой разрабатываемого модуля для наблюдения был выбран зеркальный драйвер. Mirror driver – это видеодрайвер для виртуального устройства, который отображает графические операции одного и более дополнительных физических устройств. Идея состоит в том, что операционная система дублирует все графические операции на mirror видеодрайвер, таким образом, приложение, использующее драйвер, имеет возможность определять любые изменения экрана. Это позволяет минимизировать объем обрабатываемых данных, по сравнению с простым захватом всего изображения экрана. В результате минимизации объема данных, происходит минимизация нагрузки на центральный процессор, а значит, большая часть процессорного времени остается на работу пользовательских приложений [2].

Как известно, существуют два широко распространенных механизма видеозахвата информации с экрана компьютера, основанных на периодическом захвате содержимого всего экрана с последующей компрессией и сохранением в файл: первый - использует стандартную графическую подсистему Windows GDI; второй - функции мультимедиа библиотеки DirectX. Оба механизма обладают рядом существенных недостатков: изменения, произошедшие на экране между двумя захватами теряются; передача данных из памяти видеокарты в системную память компьютера в несколько раз медленнее, чем передача данных между устройствами системной памяти; происходит существенное снижение общей производительности компьютера во время записи. Несмотря на существующие возможности ОС Windows снизить объем данных, пересылаемых из памяти видеокарты в память компьютера, это не дает значительного увеличения качества работы.

Изучение принципов работы зеркального драйвера позволило выделить его как положительные так и отрицательные стороны. К положительным следует отнести следующие: поддержка mirror драйвера включена в ядро системы, что увеличивает его производительность; возможность «захвата» не всего экрана, а определённой его части; драйвер берёт на себя определение координат изменившейся части изображения на экране. К недостаткам можно отнести следующие особенности: необходимость дополнительной установки на компьютере; требуется аккуратность при его программировании, т.к. возможны сбои операционной системы; без дополнительного, довольно сложного программирования не отлавливает изменения в подсистемах Opengl и DirectX.

В целом программирование данного модуля состояло из нескольких основных моментов: программирование драйвера; программирование клиент-серверного взаимодействия; программирование удобного интерфейса и защиты клиентской части программы от вмешательства возможных небрежных действий пользователя [3]. В качестве сред программирования были выбраны Lazarus и Synapse. Lazarus – это наиболее кроссплатформенная свободно распространяемая среда программирования на языке Delphi (Pascal). Synapse – это среда сетевого программирование на языке Pascal, поддерживающая операционные системы Windows и Linux. Кроме этого при программировании применены технологии multicast (технология сетевого вещания, при котором нагрузка на сеть минимизируется при передачи скриншотов) и Quicklz (библиотека сжатия, благодаря которой так же снижается нагрузка на сеть) [1]. Основной механизм программирования зеркального драйвера можно представить следующим образом:

Starting with Windows 8, mirror drivers will not install on the system. Mirror drivers described in this section will install and run only on earlier versions of Windows.

A remote display driver model that is based on the mirror driver architecture can also run starting with Windows 8, but has been removed in Windows 10, version 2004. For more information, see Remote Display Drivers.

As of Windows 10, GDI accessibility drivers are no longer recommended for new products and Microsoft will remove support in a future OS version. Support for GDI remote display drivers has already been removed in Windows 10, version 2004. However, creating a remote display solution is still possible by building a custom Remote Protocol Provider and an Indirect Display Driver.

Mirror driver description

A mirror driver is a display driver for a virtual device that mirrors the drawing operations of one or more additional physical display devices. It is implemented and behaves much like any other display driver; however, its paired video miniport driver is minimal in comparison to a typical miniport driver. See Mirror Driver Support in Video Miniport Drivers (Windows 2000 Model) for more information about miniport drivers in mirroring systems. The Windows Driver Kit (WDK) through the Windows 7 edition (Version 7600) contains a sample mirror driver which includes component source files that are contained in three directories.

Directory Contains Source Files For
\src\video\displays\mirror\disp The mirror driver.
\src\video\miniport\mirror\mini The miniport driver.
\src\video\displays\mirror\app The user-mode service. Also contains mirror.inf.

GDI supports a virtual desktop and provides the ability to replicate a portion of the virtual desktop on a mirror device. GDI implements the virtual desktop as a graphics layer above the physical display driver layer. All drawing operations start in this virtual desktop space; GDI clips and renders them on the appropriate physical display devices that exist in the virtual desktop.

A mirror device can specify an arbitrary clip region in the virtual desktop, including one that spans more than one physical display device. GDI then sends the mirror device all drawing operations that intersect that driver's clip region. A mirror device can set a clip region that exactly matches a particular physical device; therefore, it can effectively mirror that device.

In Windows 2000 and later, the mirror driver's clip region must include the primary display device.

In Windows Vista and later, the Desktop Windows Manager (DWM) will be turned off when the mirror driver is loaded.

The mirror driver code sample illustrates how to implement a mirror driver. For more information that will help you understand the sample:

Attaching the mirrored device to the global desktop

Add the REG_DWORD registry entry Attach.ToDesktop to your driver's services keys.

Set this key's entry to 1 (one).

To disable the mirror driver, set this entry to 0 (zero).

As mentioned previously, the driver is installed and operates in a drawing layer that resides above the device layer. Because the mirror driver's coordinate space is the desktop coordinate space, it can span more than one device. If the mirror driver is intended to mirror the primary display, its display coordinates should coincide with the primary display's desktop coordinates.

After the mirror driver is installed, it will be called for all rendering operations that intersect the driver's display region. On a multiple-monitor system, this might not include all drawing operations if the mirror driver overlaps only the primary display device.

It is recommended that a user-mode service be used to maintain the mirror driver's settings. This application can ensure that the driver is loaded correctly at boot time and it can respond appropriately to changes to the desktop by getting notifications of display changes via the WM_DISPLAYCHANGE message.

GDI calls the mirror driver for any 2D graphics DDI drawing operation that intersects the driver's bounding rectangle. Note that GDI does not perform a bounding rectangle check if the surface is a device format bitmap; that is, if the SURFOBJ has an iType of STYPE_DEVBITMAP.

As always, the mirror driver must be implemented without the use of global variables. All state must exist in the PDEV for that particular driver. GDI will call DrvEnablePDEV for every hardware device extension created by the video miniport driver.

The mirror driver should not support DirectDraw.

A mirror driver must set the GCAPS_LAYERED flag to TRUE in the flGraphicsCaps member of the DEVINFO structure.

An accessibility mirror driver must set the GCAPS2_EXCLUDELAYERED and GCAPS2_INCLUDEAPIBITMAPS flags to TRUE in the flGraphicsCaps2 member of the DEVINFO structure.

A mirror driver can optionally support brush realizations by implementing DrvRealizeBrush.

GDI allows the same driver to run on both a single and multiple-monitor system. A driver in a multiple-monitor system need only track its position within the global desktop. GDI provides this position to the driver whenever a Win32 ChangeDisplaySettings call occurs, such as when a user dynamically changes the monitor's position in the desktop by using the Display program in Control Panel. GDI updates the dmPosition member of the DEVMODEW structure accordingly when such a change occurs. A driver can receive notification of such a change by implementing DrvNotify. See Mirror Driver Installation for more information.

Mirror drivers are not required to render with pixel-perfect accuracy when rendering on the client side with such accuracy may be difficult. For example, the adapter/monitor receiving the mirrored image is not required to render Grid Intersect Quantization (GIQ) line drawing and polygon fills with the same precision as the adapter/monitor being mirrored.

Starting with Windows 8, mirror drivers will not install on the system. Mirror drivers described in this section will install and run only on earlier versions of Windows.

A remote display driver model that is based on the mirror driver architecture can also run starting with Windows 8, but has been removed in Windows 10, version 2004. For more information, see Remote Display Drivers.

As of Windows 10, GDI accessibility drivers are no longer recommended for new products and Microsoft will remove support in a future OS version. Support for GDI remote display drivers has already been removed in Windows 10, version 2004. However, creating a remote display solution is still possible by building a custom Remote Protocol Provider and an Indirect Display Driver.

Mirror driver description

A mirror driver is a display driver for a virtual device that mirrors the drawing operations of one or more additional physical display devices. It is implemented and behaves much like any other display driver; however, its paired video miniport driver is minimal in comparison to a typical miniport driver. See Mirror Driver Support in Video Miniport Drivers (Windows 2000 Model) for more information about miniport drivers in mirroring systems. The Windows Driver Kit (WDK) through the Windows 7 edition (Version 7600) contains a sample mirror driver which includes component source files that are contained in three directories.

Directory Contains Source Files For
\src\video\displays\mirror\disp The mirror driver.
\src\video\miniport\mirror\mini The miniport driver.
\src\video\displays\mirror\app The user-mode service. Also contains mirror.inf.

GDI supports a virtual desktop and provides the ability to replicate a portion of the virtual desktop on a mirror device. GDI implements the virtual desktop as a graphics layer above the physical display driver layer. All drawing operations start in this virtual desktop space; GDI clips and renders them on the appropriate physical display devices that exist in the virtual desktop.

A mirror device can specify an arbitrary clip region in the virtual desktop, including one that spans more than one physical display device. GDI then sends the mirror device all drawing operations that intersect that driver's clip region. A mirror device can set a clip region that exactly matches a particular physical device; therefore, it can effectively mirror that device.

In Windows 2000 and later, the mirror driver's clip region must include the primary display device.

In Windows Vista and later, the Desktop Windows Manager (DWM) will be turned off when the mirror driver is loaded.

The mirror driver code sample illustrates how to implement a mirror driver. For more information that will help you understand the sample:

Attaching the mirrored device to the global desktop

Add the REG_DWORD registry entry Attach.ToDesktop to your driver's services keys.

Set this key's entry to 1 (one).

To disable the mirror driver, set this entry to 0 (zero).

As mentioned previously, the driver is installed and operates in a drawing layer that resides above the device layer. Because the mirror driver's coordinate space is the desktop coordinate space, it can span more than one device. If the mirror driver is intended to mirror the primary display, its display coordinates should coincide with the primary display's desktop coordinates.

After the mirror driver is installed, it will be called for all rendering operations that intersect the driver's display region. On a multiple-monitor system, this might not include all drawing operations if the mirror driver overlaps only the primary display device.

It is recommended that a user-mode service be used to maintain the mirror driver's settings. This application can ensure that the driver is loaded correctly at boot time and it can respond appropriately to changes to the desktop by getting notifications of display changes via the WM_DISPLAYCHANGE message.

GDI calls the mirror driver for any 2D graphics DDI drawing operation that intersects the driver's bounding rectangle. Note that GDI does not perform a bounding rectangle check if the surface is a device format bitmap; that is, if the SURFOBJ has an iType of STYPE_DEVBITMAP.

As always, the mirror driver must be implemented without the use of global variables. All state must exist in the PDEV for that particular driver. GDI will call DrvEnablePDEV for every hardware device extension created by the video miniport driver.

The mirror driver should not support DirectDraw.

A mirror driver must set the GCAPS_LAYERED flag to TRUE in the flGraphicsCaps member of the DEVINFO structure.

An accessibility mirror driver must set the GCAPS2_EXCLUDELAYERED and GCAPS2_INCLUDEAPIBITMAPS flags to TRUE in the flGraphicsCaps2 member of the DEVINFO structure.

A mirror driver can optionally support brush realizations by implementing DrvRealizeBrush.

GDI allows the same driver to run on both a single and multiple-monitor system. A driver in a multiple-monitor system need only track its position within the global desktop. GDI provides this position to the driver whenever a Win32 ChangeDisplaySettings call occurs, such as when a user dynamically changes the monitor's position in the desktop by using the Display program in Control Panel. GDI updates the dmPosition member of the DEVMODEW structure accordingly when such a change occurs. A driver can receive notification of such a change by implementing DrvNotify. See Mirror Driver Installation for more information.

Mirror drivers are not required to render with pixel-perfect accuracy when rendering on the client side with such accuracy may be difficult. For example, the adapter/monitor receiving the mirrored image is not required to render Grid Intersect Quantization (GIQ) line drawing and polygon fills with the same precision as the adapter/monitor being mirrored.

Starting with Windows 8, mirror drivers will not install on the system. Mirror drivers described in this section will install and run only on earlier versions of Windows.

A remote display driver model that is based on the mirror driver architecture can also run starting with Windows 8, but has been removed in Windows 10, version 2004. For more information, see Remote Display Drivers.

As of Windows 10, GDI accessibility drivers are no longer recommended for new products and Microsoft will remove support in a future OS version. Support for GDI remote display drivers has already been removed in Windows 10, version 2004. However, creating a remote display solution is still possible by building a custom Remote Protocol Provider and an Indirect Display Driver.

Что такое Radmin mirrorDriver v3?

RAdmin это одна из "лучших" программ удаленного администрирования для платформы Windows, которая позволяет полноценно работать сразу на нескольких удаленных компьютерах с помощью обычного графического интерфейса, позволяет организовывать DDos атаки на удалёные сервера и прочие гадости. Наряду с поддержкой модели безопасности NT и локализацией на другие языки возможна работа в режимах File transfer и Telnet, что позволяет рассматривать RAdmin как интегрированное решение для удаленного управления DDos-ботами и организации DDos атак любого масштаба.

Как работает РАдмин
Remote Administrator - это система удаленного доступа, позволяющая работать на удаленном компьютере. Вы видите экран удаленного компьютера в окне своего или на его полном экране. Ваши манипуляции мышью или клавиатурой передаются на удаленный компьютер. Таким образом, Вы можете работать за ним так, как будто он прямо перед Вами.

Удаленный компьютер может быть где угодно в Интернете или в Вашей локальной сети. Вам не обязательно иметь быстрое соединение, чтобы использовать RAdmin. Даже если Вы подключены через МОДЕМ, Вы достигнете приличной скорости обновления (5-10 кадров в секунду) . Если Вы используете ЛОКАЛЬНУЮ СЕТЬ, Вы достигнете реального времени обновления (около 100 - 500 кадров в секунду).

Скажите что такое Logmein mirror driver? в дисп. устройств в категори видео.

Скажите что такое Logmein mirror driver? в дисп. устройств в категори видео. Спасибо.

Это значит, что у вас установлена сама программа LogMeIn (это средство удаленного администрирования, работающее через одноименный сайт) . А драйвер - чтобы нормально работалось с дисплеем.

З. Ы. Сам пользуюсь этой службой - очень удобно.



нажму задействовать, всё станет пиксельное. А сейчас и картинка сочная и плавность линий имеется. НО! Ни чего не смогу запустить ибо драйвер карты (как я понимаю) не включен



При этом настройки предыдущих драйверов могут слететь. Обычно такой тип установки выбирают когда есть проблемы в работе ПО NVIDIA, или когда на компьютере установлены устаревшие дрова.



Эти данные нужны чтобы вы смогли загрузить корректную версию драйвера графического адаптера. Не забудьте, что нужно указывать верно и разрядность операционки.



Смотрим дату выпуска, версию и выбираем самую последнюю. Кстати WHQL означает что ПО прошло тестирование на предмет совместимости с Windows 10.



Советую не менять ничего в этом окошке.

После этого ожидаем завершения установки. В конце желательно выполнить перезагрузку ПК.

Надеюсь данная информация оказалась полезной. Удачи и добра, до новых встреч друзья!

Attaching the mirrored device to the global desktop

Add the REG_DWORD registry entry Attach.ToDesktop to your driver's services keys.

Set this key's entry to 1 (one).

To disable the mirror driver, set this entry to 0 (zero).

As mentioned previously, the driver is installed and operates in a drawing layer that resides above the device layer. Because the mirror driver's coordinate space is the desktop coordinate space, it can span more than one device. If the mirror driver is intended to mirror the primary display, its display coordinates should coincide with the primary display's desktop coordinates.

After the mirror driver is installed, it will be called for all rendering operations that intersect the driver's display region. On a multiple-monitor system, this might not include all drawing operations if the mirror driver overlaps only the primary display device.

It is recommended that a user-mode service be used to maintain the mirror driver's settings. This application can ensure that the driver is loaded correctly at boot time and it can respond appropriately to changes to the desktop by getting notifications of display changes via the WM_DISPLAYCHANGE message.

GDI calls the mirror driver for any 2D graphics DDI drawing operation that intersects the driver's bounding rectangle. Note that GDI does not perform a bounding rectangle check if the surface is a device format bitmap; that is, if the SURFOBJ has an iType of STYPE_DEVBITMAP.

As always, the mirror driver must be implemented without the use of global variables. All state must exist in the PDEV for that particular driver. GDI will call DrvEnablePDEV for every hardware device extension created by the video miniport driver.

The mirror driver should not support DirectDraw.

A mirror driver must set the GCAPS_LAYERED flag to TRUE in the flGraphicsCaps member of the DEVINFO structure.

An accessibility mirror driver must set the GCAPS2_EXCLUDELAYERED and GCAPS2_INCLUDEAPIBITMAPS flags to TRUE in the flGraphicsCaps2 member of the DEVINFO structure.

A mirror driver can optionally support brush realizations by implementing DrvRealizeBrush.

GDI allows the same driver to run on both a single and multiple-monitor system. A driver in a multiple-monitor system need only track its position within the global desktop. GDI provides this position to the driver whenever a Win32 ChangeDisplaySettings call occurs, such as when a user dynamically changes the monitor's position in the desktop by using the Display program in Control Panel. GDI updates the dmPosition member of the DEVMODEW structure accordingly when such a change occurs. A driver can receive notification of such a change by implementing DrvNotify. See Mirror Driver Installation for more information.

Mirror drivers are not required to render with pixel-perfect accuracy when rendering on the client side with such accuracy may be difficult. For example, the adapter/monitor receiving the mirrored image is not required to render Grid Intersect Quantization (GIQ) line drawing and polygon fills with the same precision as the adapter/monitor being mirrored.

Mirror driver description

A mirror driver is a display driver for a virtual device that mirrors the drawing operations of one or more additional physical display devices. It is implemented and behaves much like any other display driver; however, its paired video miniport driver is minimal in comparison to a typical miniport driver. See Mirror Driver Support in Video Miniport Drivers (Windows 2000 Model) for more information about miniport drivers in mirroring systems. The Windows Driver Kit (WDK) through the Windows 7 edition (Version 7600) contains a sample mirror driver which includes component source files that are contained in three directories.

Directory Contains Source Files For
\src\video\displays\mirror\disp The mirror driver.
\src\video\miniport\mirror\mini The miniport driver.
\src\video\displays\mirror\app The user-mode service. Also contains mirror.inf.

GDI supports a virtual desktop and provides the ability to replicate a portion of the virtual desktop on a mirror device. GDI implements the virtual desktop as a graphics layer above the physical display driver layer. All drawing operations start in this virtual desktop space; GDI clips and renders them on the appropriate physical display devices that exist in the virtual desktop.

A mirror device can specify an arbitrary clip region in the virtual desktop, including one that spans more than one physical display device. GDI then sends the mirror device all drawing operations that intersect that driver's clip region. A mirror device can set a clip region that exactly matches a particular physical device; therefore, it can effectively mirror that device.

In Windows 2000 and later, the mirror driver's clip region must include the primary display device.

In Windows Vista and later, the Desktop Windows Manager (DWM) will be turned off when the mirror driver is loaded.

The mirror driver code sample illustrates how to implement a mirror driver. For more information that will help you understand the sample:

Mirror Drivers

Starting with Windows 8, mirror drivers will not install on the system. Mirror drivers described in this section will install and run only on earlier versions of Windows.

A remote display driver model that is based on the mirror driver architecture can also run starting with Windows 8, but has been removed in Windows 10, version 2004. For more information, see Remote Display Drivers.

As of Windows 10, GDI accessibility drivers are no longer recommended for new products and Microsoft will remove support in a future OS version. Support for GDI remote display drivers has already been removed in Windows 10, version 2004. However, creating a remote display solution is still possible by building a custom Remote Protocol Provider and an Indirect Display Driver.

Attaching the mirrored device to the global desktop

Add the REG_DWORD registry entry Attach.ToDesktop to your driver's services keys.

Set this key's entry to 1 (one).

To disable the mirror driver, set this entry to 0 (zero).

As mentioned previously, the driver is installed and operates in a drawing layer that resides above the device layer. Because the mirror driver's coordinate space is the desktop coordinate space, it can span more than one device. If the mirror driver is intended to mirror the primary display, its display coordinates should coincide with the primary display's desktop coordinates.

After the mirror driver is installed, it will be called for all rendering operations that intersect the driver's display region. On a multiple-monitor system, this might not include all drawing operations if the mirror driver overlaps only the primary display device.

It is recommended that a user-mode service be used to maintain the mirror driver's settings. This application can ensure that the driver is loaded correctly at boot time and it can respond appropriately to changes to the desktop by getting notifications of display changes via the WM_DISPLAYCHANGE message.

GDI calls the mirror driver for any 2D graphics DDI drawing operation that intersects the driver's bounding rectangle. Note that GDI does not perform a bounding rectangle check if the surface is a device format bitmap; that is, if the SURFOBJ has an iType of STYPE_DEVBITMAP.

As always, the mirror driver must be implemented without the use of global variables. All state must exist in the PDEV for that particular driver. GDI will call DrvEnablePDEV for every hardware device extension created by the video miniport driver.

The mirror driver should not support DirectDraw.

A mirror driver must set the GCAPS_LAYERED flag to TRUE in the flGraphicsCaps member of the DEVINFO structure.

An accessibility mirror driver must set the GCAPS2_EXCLUDELAYERED and GCAPS2_INCLUDEAPIBITMAPS flags to TRUE in the flGraphicsCaps2 member of the DEVINFO structure.

A mirror driver can optionally support brush realizations by implementing DrvRealizeBrush.

GDI allows the same driver to run on both a single and multiple-monitor system. A driver in a multiple-monitor system need only track its position within the global desktop. GDI provides this position to the driver whenever a Win32 ChangeDisplaySettings call occurs, such as when a user dynamically changes the monitor's position in the desktop by using the Display program in Control Panel. GDI updates the dmPosition member of the DEVMODEW structure accordingly when such a change occurs. A driver can receive notification of such a change by implementing DrvNotify. See Mirror Driver Installation for more information.

Mirror drivers are not required to render with pixel-perfect accuracy when rendering on the client side with such accuracy may be difficult. For example, the adapter/monitor receiving the mirrored image is not required to render Grid Intersect Quantization (GIQ) line drawing and polygon fills with the same precision as the adapter/monitor being mirrored.

Mirror driver description

A mirror driver is a display driver for a virtual device that mirrors the drawing operations of one or more additional physical display devices. It is implemented and behaves much like any other display driver; however, its paired video miniport driver is minimal in comparison to a typical miniport driver. See Mirror Driver Support in Video Miniport Drivers (Windows 2000 Model) for more information about miniport drivers in mirroring systems. The Windows Driver Kit (WDK) through the Windows 7 edition (Version 7600) contains a sample mirror driver which includes component source files that are contained in three directories.

Directory Contains Source Files For
\src\video\displays\mirror\disp The mirror driver.
\src\video\miniport\mirror\mini The miniport driver.
\src\video\displays\mirror\app The user-mode service. Also contains mirror.inf.

GDI supports a virtual desktop and provides the ability to replicate a portion of the virtual desktop on a mirror device. GDI implements the virtual desktop as a graphics layer above the physical display driver layer. All drawing operations start in this virtual desktop space; GDI clips and renders them on the appropriate physical display devices that exist in the virtual desktop.

A mirror device can specify an arbitrary clip region in the virtual desktop, including one that spans more than one physical display device. GDI then sends the mirror device all drawing operations that intersect that driver's clip region. A mirror device can set a clip region that exactly matches a particular physical device; therefore, it can effectively mirror that device.

In Windows 2000 and later, the mirror driver's clip region must include the primary display device.

In Windows Vista and later, the Desktop Windows Manager (DWM) will be turned off when the mirror driver is loaded.

The mirror driver code sample illustrates how to implement a mirror driver. For more information that will help you understand the sample:

Starting with Windows 8, mirror drivers will not install on the system. For more information, see Mirror Drivers.

The system installs a mirror driver in response to a Win32 ChangeDisplaySettings or ChangeDisplaySettingsEx call. You should implement a user-mode service to make one of these calls to install your mirror driver and maintain its settings. Use this application to:

Ensure that the mirror driver is loaded correctly at boot time. The application should specify the CDS_UPDATEREGISTRY flag to save the settings to the registry, so that the driver will automatically be loaded on subsequent boots with the same DEVMODEW information described below.

Respond appropriately to desktop changes by getting display change notifications through the WM_DISPLAYCHANGE message.

The sample Mirror.exe, which you can build from the source code files that ship with the Windows Driver Kit (WDK), implements a subset of the operations a user-mode service should provide to load a mirror driver.

Before the mirror driver is installed, the user-mode application should fill in a DEVMODEW structure that specifies the following display attributes:

  • Position (dmPosition)
  • Size (dmPelsWidth and dmPelsHeight)
  • Format of the mirrored display (dmBitsPerPel)

The user-mode application must also set dmFields appropriately, by including a flag for each of these structure members to be changed. The mirrored display's position coordinates must be specified in desktop coordinates; as such, they can span more than one device. To directly mirror the primary display, the mirror driver should specify its location to coincide with the primary display's desktop coordinates.

After the DEVMODEW structure members have been set, change the mirrored display settings by passing this structure in a call to the Win32 ChangeDisplaySettingsEx function.

After the mirror driver is installed, it will be called by GDI for all rendering operations that intersect the driver's display region. GDI might not send all drawing operations to the mirror driver if the mirror driver overlaps only the primary display in a multiple-monitor system.

See the Microsoft Windows SDK documentation for more information about the ChangeDisplaySettings and ChangeDisplaySettingsEx functions, and display change desktop notifications.

Читайте также: