Вот написал прогу, которая обнаруживает наличие второго монитора с помощью GDI из Win98+. Поиграйтесь, скажите мнение, пожалуйста. Потом хочу статейку написать, чтобы опытом поделиться. Слушается всё. _1486496135__Multimon.zip
Пожалуйста, скажите какие у вас системы: Ось: Видюха: nVidea режим: У меня работает лишь при DualView. Если другие настройки (клон, гориз. илил верт. расширение), то не определяет. Ну и начну пожалуй писать.
ОС Windows XP SP2, Windows Server 2003. Результаты одинаковые при запуске на обеих операционках: 2 монитора только при DualView, в остальных случаях ("Одно устройство","Клон" и "Горизонтальное/вертикальное расширение") - 1 монитор. Модель монитора правильно определяется во всех случаях. ------------------------------------------------------- Решил я прогуляться по windows.inc с поиском заветного слова MONITOR. Нашел SM_CMONITOR... Программу скомпилируй (которая ниже), но результаты будут как и приведенные выше, т.е. прога твоя верно работает (у меня то уж точно). Теперь ждем статью. .386 .model flat,stdcall option casemap:none include windows.inc include user32.inc includelib user32.lib .code apptext db ' ',0 format db 'You have %d monitor(s)',0 start proc local buffer[20h]:byte invoke GetSystemMetrics,SM_CMONITORS invoke wsprintf,addr buffer,offset format,eax invoke MessageBox,0,addr buffer,offset apptext,0 ret ; после этого идет invoke ExitThread,eax (видно в отладчике). start endp end start P.S. Идея твоего следующего проекта - определение не только мониторов, но и других устройств.
Ось: XPSP2 Видюха: RADEON 8500 SERIES nVidea режим: - это не знаю Когда активирую 2й монитор, прога его определяет в том случае, если картинка на нём другая (гориз. или верт. расширение). клон (та хе картинка, что и на первом) определяет как один монитор.
Уважаемые посетители. Статья вышла. Приглашаю всех зайти и почитать. Отзывы принимаются там же. Разные. А у вас сколько мониторов?