<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=10980</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=10980&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: WinMenuSelectItem не воспринимает меню с пробелами».]]></description>
		<lastBuildDate>Thu, 01 Oct 2015 07:22:18 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97803#p97803</link>
			<description><![CDATA[<p>Вот и добрался я до работы...<br />В принципе картинка поменялась, но вывод тот-же, что и другими скриптами, грубо говоря ничего нового или того, что могло хоть немного прояснить ситуацию. Но спасибо за помощь <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (unKn0wn)]]></author>
			<pubDate>Thu, 01 Oct 2015 07:22:18 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97803#p97803</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97756#p97756</link>
			<description><![CDATA[<p>Попробуй навести на пункт меню той программы и через скрипт который ниже, нажать средней кнопкой мыши.Должен показаться тултип. Есть ли там имя пункта?<br /></p><div class="codebox"><pre><code>DllCall(&quot;LoadLibrary&quot;,&quot;Str&quot;,&quot;oleacc&quot;,&quot;Ptr&quot;)

Acc_ObjectFromPoint(ByRef _idChild_ = &quot;&quot;, x = &quot;&quot;, y = &quot;&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;)
}
Acc_Parent(Acc) { 
    try parent:=Acc.accParent
    return parent?Acc_Query(parent):
}
Acc_Query(Acc) { ; thanks Lexikos - www.autohotkey.com/forum/viewtopic.php?t=81731&amp;p=509530#509530
    try return ComObj(9, ComObjQuery(Acc,&quot;{618736e0-3c3d-11cf-810c-00aa00389b71}&quot;), 1)
}

MButton::
try tooltip % &quot;1`t&quot; Acc_ObjectFromPoint(c).AccName(c)
        . &quot;`n2`t&quot; Acc_Parent(Acc_ObjectFromPoint(c)).AccName(0)
        . &quot;`n3`t&quot; Acc_Parent(Acc_Parent(Acc_ObjectFromPoint(c))).AccName(0)
        . &quot;`n4`t&quot; Acc_Parent(Acc_Parent(Acc_Parent(Acc_ObjectFromPoint(c)))).AccName(0)
        . &quot;`n&quot;
        . &quot;5`t&quot; Acc_ObjectFromPoint(c).AccValue(c)
        . &quot;`n6`t&quot; Acc_Parent(Acc_ObjectFromPoint(c)).AccValue(0)
        . &quot;`n7`t&quot; Acc_Parent(Acc_Parent(Acc_ObjectFromPoint(c))).AccValue(0)
        . &quot;`n8`t&quot; Acc_Parent(Acc_Parent(Acc_Parent(Acc_ObjectFromPoint(c)))).AccValue(0)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (yalanne)]]></author>
			<pubDate>Tue, 29 Sep 2015 06:13:03 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97756#p97756</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97754#p97754</link>
			<description><![CDATA[<p>Видимо наши программисты накрутили, перехитрили или пере ленились <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /> Жалко, что не побороть эту гадость.</p>]]></description>
			<author><![CDATA[null@example.com (unKn0wn)]]></author>
			<pubDate>Tue, 29 Sep 2015 01:27:32 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97754#p97754</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97753#p97753</link>
			<description><![CDATA[<p>Ну, значит ничего не понятно. <img src="//forum.script-coding.com/img/smilies/lol.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Tue, 29 Sep 2015 01:21:07 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97753#p97753</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97752#p97752</link>
			<description><![CDATA[<p>В основном выводит MFT_SEPARATOR. Кое-где проскакивают названия, но в основном именно этот вывод, и количество строк с&nbsp; MFT_SEPARATOR не совпадает с количеством субменю в софте. Если не присваивать значений то выводит: &quot;подменю не найдено&quot;.</p>]]></description>
			<author><![CDATA[null@example.com (unKn0wn)]]></author>
			<pubDate>Tue, 29 Sep 2015 01:17:38 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97752#p97752</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97751#p97751</link>
			<description><![CDATA[<p>Там последний пункт — крестик, нужно порядковый номер указать (от 1 до 12, если пункт «?» имеет порядковый номер 12).</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Tue, 29 Sep 2015 00:53:50 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97751#p97751</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97750#p97750</link>
			<description><![CDATA[<p>В Notepad++ (английская версия) у меня пишет - &quot;подменю не найдено&quot;.</p>]]></description>
			<author><![CDATA[null@example.com (Malcev)]]></author>
			<pubDate>Tue, 29 Sep 2015 00:52:10 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97750#p97750</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97749#p97749</link>
			<description><![CDATA[<p>Ну ради интереса такой код запустите:<br /></p><div class="codebox"><pre><code>NumberOfMenuItem := &quot;&quot;   ; если оставить пустое значение, выдаст информацию о пунктах последнего подменю оконного меню
                         ; если присвоить номер — выдаст информацию о пунктах подменю с этим номером
                         
MIIM_FTYPE := 0x100, MIIM_STRING := 0x40, oType := {0: &quot;MFT_STRING&quot;, 0x800: &quot;MFT_SEPARATOR&quot;, 0x4: &quot;MFT_BITMAP&quot;}

F11::
   InfoString := &quot;&quot;
   if !hMenu := DllCall(&quot;GetMenu&quot;, Ptr, WinExist(&quot;A&quot;), Ptr)  {
      MsgBox, Окно использует нестандартное меню
      Return
   }
   count := DllCall(&quot;GetMenuItemCount&quot;, Ptr, hMenu)
   if !hMenu := DllCall(&quot;GetSubMenu&quot;, Ptr, hMenu, Int, NumberOfMenuItem = &quot;&quot; ? count - 1 : NumberOfMenuItem - 1)  {
      MsgBox, Подменю не найдено
      Return
   }
   count := DllCall(&quot;GetMenuItemCount&quot;, Ptr, hMenu)
   Loop % count  {
      Gosub, IniMII
      NumPut(MIIM_FTYPE, &amp;MENUITEMINFO + 4)
      DllCall(&quot;GetMenuItemInfo&quot;, Ptr, hMenu, UInt, A_Index - 1, UInt, true, Ptr, &amp;MENUITEMINFO)
      type := oType[NumGet(&amp;MENUITEMINFO + 8, &quot;UInt&quot;)]
      InfoString .= (InfoString = &quot;&quot; ? &quot;&quot; : &quot;`n&quot;)
      if (type != &quot;MFT_STRING&quot;)
         InfoString .= type
      else  {
         Gosub, IniMII
         NumPut(MIIM_STRING, &amp;MENUITEMINFO + 4)
         DllCall(&quot;GetMenuItemInfo&quot;, Ptr, hMenu, UInt, A_Index - 1, UInt, true, Ptr, &amp;MENUITEMINFO)
         TextLength := NumGet(&amp;MENUITEMINFO + 4*4 + A_PtrSize*6, &quot;UInt&quot;)
         VarSetCapacity(TextBuff, TextLength * (A_IsUnicode ? 2 : 1), 0)
         NumPut(&amp;TextBuff, &amp;MENUITEMINFO + 4*4 + A_PtrSize*5)
         NumPut(++TextLength, &amp;MENUITEMINFO + 4*4 + A_PtrSize*6)
         DllCall(&quot;GetMenuItemInfo&quot;, Ptr, hMenu, UInt, A_Index - 1, UInt, true, Ptr, &amp;MENUITEMINFO)
         InfoString .= StrGet(&amp;TextBuff)
      }
   }
   MsgBox, % InfoString
   Return
      
IniMII:
   VarSetCapacity(MENUITEMINFO, size := 4*4 + A_PtrSize*8, 0)
   NumPut(size, MENUITEMINFO)
   Return</code></pre></div><p>Активируйте нужное окно и нажмите F11. Какое сообщение выдаёт?</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Tue, 29 Sep 2015 00:22:33 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97749#p97749</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97748#p97748</link>
			<description><![CDATA[<p>Да, даже в связке: Сервис, 1&amp;, 7&amp;.</p>]]></description>
			<author><![CDATA[null@example.com (unKn0wn)]]></author>
			<pubDate>Tue, 29 Sep 2015 00:18:17 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97748#p97748</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97747#p97747</link>
			<description><![CDATA[<p>А те пункты, которые без пробелов, работают по названиям?</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 28 Sep 2015 23:23:01 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97747#p97747</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97746#p97746</link>
			<description><![CDATA[<p>Было бы здорово, но всё-равно этими знаниями не воспользоватся с WinMenuSelectItem.</p>]]></description>
			<author><![CDATA[null@example.com (unKn0wn)]]></author>
			<pubDate>Mon, 28 Sep 2015 22:46:31 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97746#p97746</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97745#p97745</link>
			<description><![CDATA[<p>Ясно, речь уже не о Notepad++ идёт. Скорее всего, меню действительно не с текстом, а с картинками. Если хотите, могу написать код, который это проверит.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 28 Sep 2015 22:41:06 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97745#p97745</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97744#p97744</link>
			<description><![CDATA[<p>Вполне может быть, просто подумал сталкивался кто с таким чудом. Я бы использовал номера, но программа дорабатывается постоянно, и новые менюшки вполне могут появляться, потому хотелось бы так, чтобы по названию в меню скрипт ориентировался.</p>]]></description>
			<author><![CDATA[null@example.com (unKn0wn)]]></author>
			<pubDate>Mon, 28 Sep 2015 22:33:00 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97744#p97744</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97743#p97743</link>
			<description><![CDATA[<div class="quotebox"><cite>unKn0wn пишет:</cite><blockquote><p>В пример блокнот взял чтобы не на &quot;пальцах&quot; рассказывать, да и суть ода.</p></blockquote></div><p>Почему же &quot;ода&quot;? Меню разные бывают, стандартные и «самописные».</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 28 Sep 2015 22:28:03 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97743#p97743</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: WinMenuSelectItem не воспринимает меню с пробелами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=97742#p97742</link>
			<description><![CDATA[<p><a href="http://forum.script-coding.com/viewtopic.php?pid=97702#p97702">http://forum.script-coding.com/viewtopi … 702#p97702</a><br /></p><div class="quotebox"><blockquote><p>Странно, с блокнотом работает, а с <strong>КОРПОРАТИВНОЙ</strong> программой нет... И, в чем-же может быть загвоздка-то? Я уверен был, что проблема была в пробелах(даже не протестил на блокноте), а сейчас даже не знаю что думать. Явно не в кодировке дело, другие меню без пробела нормально открываются.</p></blockquote></div><p>В пример блокнот взял чтобы не на &quot;пальцах&quot; рассказывать, да и суть одна.</p>]]></description>
			<author><![CDATA[null@example.com (unKn0wn)]]></author>
			<pubDate>Mon, 28 Sep 2015 22:23:40 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=97742#p97742</guid>
		</item>
	</channel>
</rss>
