<?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=10851</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=10851&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Копирование адресной строки браузера и дальнейшая работа с ней».]]></description>
		<lastBuildDate>Sat, 05 May 2018 10:44:53 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125103#p125103</link>
			<description><![CDATA[<p>В общем с #If существуют ограничения, так что код из 31 поста, наверное, единственный способ.<br /><a href="https://autohotkey.com/boards/viewtopic.php?f=5&amp;t=48444">https://autohotkey.com/boards/viewtopic … mp;t=48444</a></p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Sat, 05 May 2018 10:44:53 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125103#p125103</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125035#p125035</link>
			<description><![CDATA[<p>Там если и ответят, то только на вопрос почему acc не работает с директивой.<br />Так попробуйте:<br /></p><div class="codebox"><pre><code>LButton::
if test()
   tooltip 11111111111111
else
{
   Click Down
   Keywait, LButton
   Click Up
}

test()
{
   Critical
   MouseGetPos, , , WinId, ControlNN
   WinGet, Process, ProcessName, ahk_id %WinId%
   if (Process = &quot;chrome.exe&quot;)
      Control := &quot;&quot;, name := &quot;Address and search bar&quot;
   else if (Process = &quot;firefox.exe&quot;)
      Control := &quot;&quot;, name := &quot;Search or enter address&quot;
   else
      return 0
   if (ControlNN != Control)
      return 0
   if (Acc_c(child).accName(child) = name)
      return 1
}

Acc_c(ByRef _idChild_ = &quot;&quot;, x = &quot;&quot;, y = &quot;&quot;)
{
	Static	h
	If Not	h
		h:=DllCall(&quot;LoadLibrary&quot;,&quot;Str&quot;,&quot;oleacc&quot;,&quot;Ptr&quot;)
	If	DllCall(&quot;oleacc\AccessibleObjectFromPoint&quot;, &quot;Int64&quot;, x==&quot;&quot;||y==&quot;&quot;?0*DllCall(&quot;GetCursorPos&quot;,&quot;Int64*&quot;,pt)+pt:x&amp;0xFFFFFFFF|y&lt;&lt;32, &quot;Ptr*&quot;, pacc, &quot;Ptr&quot;, VarSetCapacity(varChild,8+2*A_PtrSize,0)*0+&amp;varChild)=0
	Return	ComObjEnwrap(9,pacc,1), _idChild_:=NumGet(varChild,8,&quot;UInt&quot;)
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Tue, 01 May 2018 05:37:16 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125035#p125035</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125033#p125033</link>
			<description><![CDATA[<p>Не понял, как там все это работает. Наверное, подожду, спасибо.</p>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Mon, 30 Apr 2018 20:01:49 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125033#p125033</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125032#p125032</link>
			<description><![CDATA[<div class="quotebox"><cite>DD пишет:</cite><blockquote><p>первый работает с директивой и без</p></blockquote></div><p>С директивой работает неправильно.<br />Вам остаётся объединить 26 код с 27, но не использовать директиву а проверять куда был совершен клик после нажатия левой кнопки мыши.<br />Ну или ждать, что ответят на оффоруме.<br />Я написал там об&nbsp; этом.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Mon, 30 Apr 2018 19:37:22 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125032#p125032</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125031#p125031</link>
			<description><![CDATA[<p>То же самое — первый работает с директивой и без, а второй — никак. А что если считывание текста из строки адреса сочетать с проверкой формы курсора? Или если возможно — наличием полосы прокрутки справа, тогда без настроек это работало бы во всех браузерах?</p>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Mon, 30 Apr 2018 18:52:37 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125031#p125031</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125024#p125024</link>
			<description><![CDATA[<p>У меня почему-то при директиве #If AccessibleObjectFromPoint выдает неверный результат.<br />Попробуйте навести мышку на адрессную строку и понажимать f10, f11.<br /></p><div class="codebox"><pre><code>#If !test()
f10:: return 
#If
return

f11::test()
return

test()
{
tooltip % Acc_c(child).accName(child)
}

Acc_c(ByRef _idChild_ = &quot;&quot;, x = &quot;&quot;, y = &quot;&quot;)
{
	Static	h
	If Not	h
		h:=DllCall(&quot;LoadLibrary&quot;,&quot;Str&quot;,&quot;oleacc&quot;,&quot;Ptr&quot;)
	If	DllCall(&quot;oleacc\AccessibleObjectFromPoint&quot;, &quot;Int64&quot;, x==&quot;&quot;||y==&quot;&quot;?0*DllCall(&quot;GetCursorPos&quot;,&quot;Int64*&quot;,pt)+pt:x&amp;0xFFFFFFFF|y&lt;&lt;32, &quot;Ptr*&quot;, pacc, &quot;Ptr&quot;, VarSetCapacity(varChild,8+2*A_PtrSize,0)*0+&amp;varChild)=0
	Return	ComObjEnwrap(9,pacc,1), _idChild_:=NumGet(varChild,8,&quot;UInt&quot;)
}</code></pre></div><p>А так вообще ошибку выдаёт:<br /></p><div class="quotebox"><blockquote><p>Error 0x8001010D - An outgoing call cannot be made since the application dispatching an input-synchronous call</p></blockquote></div><div class="codebox"><pre><code>#If !test()
f10:: return 
#If
return


test()
{
hwndChrome := WinExist(&quot;ahk_class Chrome_WidgetWin_1&quot;)
AccChrome := Acc_ObjectFromWindow(hwndChrome)
AccAddressBar := GetElementByName(AccChrome, &quot;Address and search bar&quot;)
}

GetElementByName(AccObj, name) {
   if (AccObj.accName(0) = name)
      return AccObj
   
   for k, v in Acc_Children(AccObj)
      if IsObject(obj := GetElementByName(v, name))
         return obj
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Mon, 30 Apr 2018 15:46:56 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125024#p125024</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125019#p125019</link>
			<description><![CDATA[<p>Точно, название есть — в первый раз смотрел встроенным AU3_Spy.exe)). Но тут еще контрол используется, которого в Хроме нет и закомментирование результатов не даёт:<br /></p><div class="codebox"><pre><code>
#If IsHomeKey()
LButton:: tooltip 11111111111111
#If

IsHomeKey() { 
    MouseGetPos, , , WinId, ControlNN 
    if !InStr( ControlNN, &quot;ToolbarWindow&quot;)
        return 0
    WinGet, Process, ProcessName, ahk_id %WinId%
    if Process != chrome.exe 
        return 0
    return GetTextUnderMouse() = &quot;Адресная строка и строка поиска&quot; ? 1 : 0
} 

GetTextUnderMouse()  {
    Static h
    If !h
        h := DllCall(&quot;LoadLibrary&quot;,&quot;Str&quot;,&quot;oleacc&quot;,&quot;Ptr&quot;)
    If DllCall(&quot;oleacc\AccessibleObjectFromPoint&quot;
                , &quot;Int64&quot;, DllCall(&quot;GetCursorPos&quot;,&quot;Int64*&quot;,pt)+pt
                , &quot;Ptr*&quot;, pacc, &quot;Ptr&quot;, VarSetCapacity(varChild,8+2*A_PtrSize,0)*0+&amp;varChild)=0
    Acc:=ComObjEnwrap(9,pacc,1), child:=NumGet(varChild,8,&quot;UInt&quot;)
    try value := Acc.accValue(child)
    if value =
        try value := Acc.accName(child) 
    return value
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Mon, 30 Apr 2018 12:49:39 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125019#p125019</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125018#p125018</link>
			<description><![CDATA[<div class="quotebox"><cite>DD пишет:</cite><blockquote><p>Скрипты по ссылке вроде на контролы и текст реагируют, тогда как в адресной строке не за что зацепиться (в частности, в Хроме).</p></blockquote></div><p>У меня в хроме&nbsp; в адресной строке ahkspy показывает acc name - Address and search bar.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Mon, 30 Apr 2018 12:33:54 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125018#p125018</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125017#p125017</link>
			<description><![CDATA[<p>Вроде ничё так получилось)). Единственно не смог понять, как регулировать верхнюю границу — чтобы немного спустить? У меня она едва достигает адресной строки —<br /></p><div class="codebox"><pre><code>
CoordMode, Mouse
#If WinActive (&quot;ahk_exe chrome.exe&quot;) &amp;&amp; (Area := WhatArea()) &amp;&amp; (A_Cursor = &quot;IBeam&quot;)
~LButton:: 
    If Area = 4
        tooltip 111111111111111111
    Else If Area = 5
        tooltip 22222222222222
    Return
#If
   
WhatArea()  {
    Static R := [[0.0,0.5,0.05,1]
                , [0.0,0.05,0.05,0.5]
                , [0.0,0.0,0.05,0.05]
                , [0.05,0.0,0.5,0.05]
                , [0.5,0.0,1,0.05]]
    MouseGetPos, X, Y
    X := X / A_ScreenWidth, Y := Y / A_ScreenHeight
    For K, V in R
        If (X &gt;= V[1] &amp;&amp; X &lt;= V[3] &amp;&amp; Y &gt;= V[2] &amp;&amp; Y &lt;= V[4])
            Return K
} 
</code></pre></div><p>На случай клика ниже адресной строки — можно добавить условие для контрола основного окна браузера. В скрипте различается правая и левая половины адресной строки — то есть, можно проводить в два раза больше действий)).</p>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Mon, 30 Apr 2018 11:28:35 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125017#p125017</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125016#p125016</link>
			<description><![CDATA[<p>Будет ли юзабельным отслеживать изменение курсора на определенной высоте окна, в пределах панели инструментов браузера? Как раз в адресной строке он принимает форму, готовую к выделению текста?</p>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Mon, 30 Apr 2018 11:20:58 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125016#p125016</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125015#p125015</link>
			<description><![CDATA[<p>Скрипты по ссылке вроде на контролы и текст реагируют, тогда как в адресной строке не за что зацепиться (в частности, в Хроме).</p>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Mon, 30 Apr 2018 11:14:28 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125015#p125015</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125011#p125011</link>
			<description><![CDATA[<p><a href="http://forum.script-coding.com/viewtopic.php?id=9480">http://forum.script-coding.com/viewtopic.php?id=9480</a></p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Mon, 30 Apr 2018 08:43:44 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125011#p125011</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=125008#p125008</link>
			<description><![CDATA[<p>А есть ли способ как-то отличать адресную строку браузера (которые обычно без контрола), чтобы, к примеру, клик в пределах неё производил некое действие?</p>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Mon, 30 Apr 2018 03:30:33 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=125008#p125008</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=96412#p96412</link>
			<description><![CDATA[<p>Да и вообще, зачем изобретать велосипед?<br /><a href="http://www.autohotkey.com/board/topic/111114-get-the-url-of-the-current-active-browser-tab/">http://www.autohotkey.com/board/topic/1 … owser-tab/</a></p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Wed, 12 Aug 2015 16:45:15 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=96412#p96412</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Копирование адресной строки браузера и дальнейшая работа с ней]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=96404#p96404</link>
			<description><![CDATA[<p>Проверял на 2 компах.<br />На одном: path=4.24.3.2<br />На втором: path=4.26.3.2<br /></p><div class="quotebox"><blockquote><p>Тоже не пойдёт, у меня например accName не &quot;Address and search bar&quot;.</p></blockquote></div><p>Можно сделать несколько вариантов в зависимости от локализации.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Wed, 12 Aug 2015 07:23:00 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=96404#p96404</guid>
		</item>
	</channel>
</rss>
