<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=8389</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=8389&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Активация и деактивация второго монитора (нужна реализация).».]]></description>
		<lastBuildDate>Sun, 23 Jun 2013 16:39:21 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73244#p73244</link>
			<description><![CDATA[<p>Malcev, спасибо. Программа tv_out написанная на AutoHotKey, что нужно! </p><p>Кстати, вот EnableDisplayDevice от некого superfraggle, что и была использована в программе tv_out. Функция позволяет управлять вкл\выкл мониторами, причём как я понял не сохраняя настроек в системе (на ваше усмотрение).<br /></p><div class="codebox"><pre><code>
;-----------------------------------
;--- by superfraggle
;--- http://www.autohotkey.com/board/topic/20084-secondary-monitor/?p=180370
;
; Enables, disables or toggles a display device. 
; 
; DeviceName:   The name of the device, e.g. \\.\DISPLAY1 
;               Alternatively, it can be the index of the device, which might 
;               not be the same as the number shown in Display Settings. 
; Action:       The action to take. 
;                    0   Disable (false is synonymous with 0) 
;                    1   Enable (true is synonymous with 1) 
;                   -1   Toggle 
; NoReset:      If true, settings will be saved to the registry, but not applied. 
; 
; The following can be used to apply settings saved in the registry: 
;   DllCall(&quot;ChangeDisplaySettings&quot;, &quot;uint&quot;, 0, &quot;uint&quot;, 1) 
; 
; Return values: 
;    DISP_CHANGE_SUCCESSFUL       0 
;    DISP_CHANGE_RESTART          1 
;    DISP_CHANGE_FAILED          -1 
;    DISP_CHANGE_BADMODE         -2 
;    DISP_CHANGE_NOTUPDATED      -3 
;    DISP_CHANGE_BADFLAGS        -4 
;    DISP_CHANGE_BADPARAM        -5 
; 

EnableDisplayDevice(DeviceName, Action=1, NoReset=false) 
{ 
    if (Action = -1) || (DeviceName+0 != &quot;&quot;) 
    { 
        VarSetCapacity(DisplayDevice, 424), NumPut(424, DisplayDevice, 0) 
        VarSetCapacity(ThisDeviceName, 32, 0) 
        Index = 0 
        Loop { 
            if !DllCall(&quot;EnumDisplayDevices&quot;, &quot;UInt&quot;, 0, &quot;UInt&quot;, A_Index-1, &quot;UInt&quot;, &amp;DisplayDevice, &quot;UInt&quot;, 0) 
                return -5 
            ThisDeviceState := NumGet(DisplayDevice, 164) 
            Index += 1 
            DllCall(&quot;lstrcpynA&quot;, &quot;Str&quot;, ThisDeviceName, &quot;UInt&quot;, &amp;DisplayDevice+4, &quot;int&quot;, 32) 
            if (DeviceName = Index || DeviceName = ThisDeviceName) 
            { 
                if Action = -1 
                    Action := !(ThisDeviceState &amp; 1) 
                DeviceName := ThisDeviceName 
                break 
            } 
        } 
    } 
    VarSetCapacity(devmode, 156, 0), NumPut(156, devmode, 36, &quot;UShort&quot;) 
    if (Action){ 
        NumPut(0x000020, devmode, 40) ; Enable by setting position = {0,0} 
        VarSetCapacity(Point,8,0) 
        Numput(A_ScreenWidth + 1,Point) 
        Numput(&amp;point,devmode,44) 
    } 
    else 
        NumPut(0x180020, devmode, 40) ; Disable by setting size = {0,0} 
    err := DllCall(&quot;ChangeDisplaySettingsEx&quot;, &quot;str&quot;, DeviceName, &quot;uint&quot;, &amp;devmode, &quot;uint&quot;, 0, &quot;uint&quot;, 0x10000001, &quot;uint&quot;, 0) 
    if !err &amp;&amp; !NoReset 
        err := DllCall(&quot;ChangeDisplaySettings&quot;, &quot;uint&quot;, 0, &quot;uint&quot;, 1) 
    return err, ErrorLevel:=Action 
}
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (AirKite)]]></author>
			<pubDate>Sun, 23 Jun 2013 16:39:21 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73244#p73244</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73168#p73168</link>
			<description><![CDATA[<p>Можно так: (сам не проверял)<br /></p><div class="codebox"><pre><code>Run, RUNDLL32.EXE shell32.dll`,Control_RunDLL desk.cpl`,`,3
WinWait, Display Properties ahk_class #32770
Send, !d2!e!a ;2 stands for second monitor
Sleep, 500
Send, !e!a
WinWait, Monitor Settings ahk_class #32770
IfWinNotActive, Monitor Settings ahk_class #32770,,,,WinActivate, Monitor Settings ahk_class #32770
WinWaitActive, Monitor Settings ahk_class #32770
Send, !y
WinWaitActive, Display Properties ahk_class #32770
WinClose, Display Properties ahk_class #32770</code></pre></div><p>Либо воспользоваться программой:<br /><a href="http://nod5.dcmembers.com/tv_out.html">http://nod5.dcmembers.com/tv_out.html</a></p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Fri, 21 Jun 2013 01:19:48 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73168#p73168</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73167#p73167</link>
			<description><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>При нажатии Win+P что-то в ХР происходит?</p></blockquote></div><p>Ничего не происходит...</p><div class="quotebox"><cite>ypppu пишет:</cite><blockquote><p>В программе-драйвере ATI есть возможность задать горячую клавишу на это действие?</p></blockquote></div><p>Ничего подобного я не видел. В папке с центром управления ATI, так же искал аналог DisplaySwitch.exe, ничего не нашлось. Поэтому и спрашиваю о реализации через AHK, посредством вызова какого либо системного запроса, аналогичный выполнению при (Раб.стол -&gt; Свойства -&gt; Параметры -&gt; Монитор 2 -&gt; Расширить рабочий стол на этот монитор).</p>]]></description>
			<author><![CDATA[null@example.com (AirKite)]]></author>
			<pubDate>Thu, 20 Jun 2013 22:40:54 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73167#p73167</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73163#p73163</link>
			<description><![CDATA[<p>В программе-драйвере ATI есть возможность задать горячую клавишу на это действие?</p>]]></description>
			<author><![CDATA[null@example.com (ypppu)]]></author>
			<pubDate>Thu, 20 Jun 2013 17:22:16 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73163#p73163</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73160#p73160</link>
			<description><![CDATA[<p>При нажатии Win+P что-то в ХР происходит?</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Thu, 20 Jun 2013 16:58:28 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73160#p73160</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73159#p73159</link>
			<description><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>В чём отличие от Run <em>DisplaySwitch.exe /extend ; Dual Wiev</em>?</p></blockquote></div><p>Скорее всего никаких. Что есть &quot;DisplaySwitch.exe&quot;? В оригинальной системе Windows XP SP3 такого файла нет. Откуда его брать?<br />p.s. Видео карта ATI Radeon 9250</p>]]></description>
			<author><![CDATA[null@example.com (AirKite)]]></author>
			<pubDate>Thu, 20 Jun 2013 16:54:12 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73159#p73159</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=73026#p73026</link>
			<description><![CDATA[<div class="quotebox"><cite>AirKite пишет:</cite><blockquote><p>именно активация\деактивация а не переключение главного монитора и режимов...</p></blockquote></div><div class="quotebox"><cite>AirKite пишет:</cite><blockquote><p>Я прикрепил скриншот, выделил чекбокс который регулирует то, что мне нужно. Активация\Деактивация а-ля &quot;расширить рабочий стол на этот монитор&quot;, монитор номер 2. По другому это можно объяснить как включение и выключение трансляции чего либо на второй монитор\телевизор.</p></blockquote></div><p>В чём отличие от Run <em>DisplaySwitch.exe /extend ; Dual Wiev</em>?</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Tue, 18 Jun 2013 04:39:44 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=73026#p73026</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=72998#p72998</link>
			<description><![CDATA[<p>Я прикрепил скриншот, выделил чекбокс который регулирует то, что мне нужно. Активация\Деактивация а-ля &quot;расширить рабочий стол на этот монитор&quot;, монитор номер 2. По другому это можно объяснить как включение и выключение трансляции чего либо на второй монитор\телевизор. </p><p>Пользуюсь вторым экраном, когда мне это нужно. Хотелось бы задать горячею клавишу на выключение второго экрана, дабы работать не всегда приятно, когда курсор заходит за границы. Использовать Clone не вариант.</p>]]></description>
			<author><![CDATA[null@example.com (AirKite)]]></author>
			<pubDate>Mon, 17 Jun 2013 12:46:24 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=72998#p72998</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=72953#p72953</link>
			<description><![CDATA[<div class="quotebox"><cite>Mikki пишет:</cite><blockquote><p>Что вы подразумеваете под термином &quot;активация\деактивация&quot; ?</p></blockquote></div><p>Угу. Интересный вопрос...</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Thu, 13 Jun 2013 22:50:54 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=72953#p72953</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=72952#p72952</link>
			<description><![CDATA[<p>Что вы подразумеваете под термином &quot;активация\деактивация&quot; ? Опишите порядок действий который вы бы хотели получить, и вам самому станет понятнее.</p>]]></description>
			<author><![CDATA[null@example.com (Mikki)]]></author>
			<pubDate>Thu, 13 Jun 2013 22:45:13 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=72952#p72952</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=72950#p72950</link>
			<description><![CDATA[<p>Требуется для Windows XP и именно активация\деактивация а не переключение главного монитора и режимов...</p>]]></description>
			<author><![CDATA[null@example.com (AirKite)]]></author>
			<pubDate>Thu, 13 Jun 2013 19:19:55 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=72950#p72950</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=72932#p72932</link>
			<description><![CDATA[<p>На 7 так проще:<br /></p><div class="codebox"><pre><code>
Run DisplaySwitch.exe /internal ; первый монитор
Run DisplaySwitch.exe /external ; второй монитор
Run DisplaySwitch.exe /extend ; Dual Wiev
Run DisplaySwitch.exe /clone ; Clone
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Thu, 13 Jun 2013 04:56:31 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=72932#p72932</guid>
		</item>
		<item>
			<title><![CDATA[AHK: Активация и деактивация второго монитора (нужна реализация).]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=72929#p72929</link>
			<description><![CDATA[<p>Здравствуйте! Кто может подсказать, метод для включения\выключения второго экрана.<br /><span class="postimg"><img src="http://f3.s.qip.ru/13ASQaVyu.jpg" alt="http://f3.s.qip.ru/13ASQaVyu.jpg" /></span><br />Заранее спасибо!</p>]]></description>
			<author><![CDATA[null@example.com (AirKite)]]></author>
			<pubDate>Wed, 12 Jun 2013 18:59:58 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=72929#p72929</guid>
		</item>
	</channel>
</rss>
