<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Получение значения адресной строки в фаерфоксе через UIA]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=17664</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=17664&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Получение значения адресной строки в фаерфоксе через UIA».]]></description>
		<lastBuildDate>Sun, 12 Mar 2023 03:03:23 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[AHK: Получение значения адресной строки в фаерфоксе через UIA]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=157101#p157101</link>
			<description><![CDATA[<div class="codebox"><pre><code>setbatchlines -1
IUIAutomation := ComObjCreate(CLSID_CUIAutomation := &quot;{ff48dba4-60ef-4201-aa87-54103eef594e}&quot;, IID_IUIAutomation := &quot;{30cbe57d-d9d0-452a-ab13-7ac5ac4825ee}&quot;)

f11::
DllCall(NumGet(NumGet(IUIAutomation+0)+6*A_PtrSize), &quot;ptr&quot;, IUIAutomation, &quot;ptr&quot;, WinExist(&quot;A&quot;), &quot;ptr*&quot;, ElementFromHandle)   ; IUIAutomation::ElementFromHandle
AddressBarName := DllCall(&quot;oleaut32\SysAllocString&quot;, &quot;str&quot;, &quot;Search with Google or enter address&quot;, &quot;ptr&quot;)
VarSetCapacity(variant, 8+A_PtrSize*2, 0)
NumPut(VT_BSTR := 8, variant, 0, &quot;ushort&quot;)
NumPut(AddressBarName, variant, 8, &quot;ptr&quot;)
if (A_PtrSize = 4)
   DllCall(NumGet(NumGet(IUIAutomation+0)+23*A_PtrSize), &quot;ptr&quot;, IUIAutomation, &quot;int&quot;, UIA_NamePropertyId := 30005, &quot;int64&quot;, NumGet(variant, 0, &quot;int64&quot;), &quot;int64&quot;, NumGet(variant, 8, &quot;int64&quot;), &quot;ptr*&quot;, condition1)   ; IUIAutomation::CreatePropertyCondition
else
   DllCall(NumGet(NumGet(IUIAutomation+0)+23*A_PtrSize), &quot;ptr&quot;, IUIAutomation, &quot;int&quot;, UIA_NamePropertyId := 30005, &quot;ptr&quot;, &amp;variant, &quot;ptr*&quot;, condition1)   ; IUIAutomation::CreatePropertyCondition
DllCall(&quot;oleaut32\SysFreeString&quot;, &quot;ptr&quot;, AddressBarName)
VarSetCapacity(variant, 8+A_PtrSize*2, 0)
NumPut(VT_I4 := 3, variant, 0, &quot;ushort&quot;)
NumPut(UIA_EditControlTypeId := 50004, variant, 8, &quot;int&quot;)
if (A_PtrSize = 4)
   DllCall(NumGet(NumGet(IUIAutomation+0)+23*A_PtrSize), &quot;ptr&quot;, IUIAutomation, &quot;int&quot;, UIA_ControlTypePropertyId := 30003, &quot;int64&quot;, NumGet(variant, 0, &quot;int64&quot;), &quot;int64&quot;, NumGet(variant, 8, &quot;int64&quot;), &quot;ptr*&quot;, condition2)   ; IUIAutomation::CreatePropertyCondition
else
   DllCall(NumGet(NumGet(IUIAutomation+0)+23*A_PtrSize), &quot;ptr&quot;, IUIAutomation, &quot;int&quot;, UIA_ControlTypePropertyId := 30003, &quot;ptr&quot;, &amp;variant, &quot;ptr*&quot;, condition2)   ; IUIAutomation::CreatePropertyCondition
DllCall(NumGet(NumGet(IUIAutomation+0)+25*A_PtrSize), &quot;ptr&quot;, IUIAutomation, &quot;ptr&quot;, condition1, &quot;ptr&quot;, condition2, &quot;ptr*&quot;, conditions)   ; IUIAutomation::CreateAndCondition
DllCall(NumGet(NumGet(ElementFromHandle+0)+5*A_PtrSize), &quot;ptr&quot;, ElementFromHandle, &quot;int&quot;, TreeScope_Descendants := 0x4, &quot;ptr&quot;, conditions, &quot;ptr*&quot;, element) ; IUIAutomationElement::FindFirst
VarSetCapacity(variant, 8+A_PtrSize*2, 0)
DllCall(NumGet(NumGet(element+0)+10*A_PtrSize), &quot;ptr&quot;, element, &quot;int&quot;, UIA_ValueValuePropertyId := 30045, &quot;ptr&quot;, &amp;variant)   ; IUIAutomationElement::GetCurrentPropertyValue
ObjRelease(element)
ObjRelease(conditions)
ObjRelease(condition1)
ObjRelease(condition2)
ObjRelease(ElementFromHandle)
msgbox % StrGet(NumGet(variant, 8, &quot;ptr&quot;), &quot;utf-16&quot;)
return</code></pre></div><p><a href="http://forum.script-coding.com/viewtopic.php?id=16225">Тема для обсуждения</a></p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Sun, 12 Mar 2023 03:03:23 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=157101#p157101</guid>
		</item>
	</channel>
</rss>
