Делал скрипт для очистки автозагрузки и отмечания только тех программ, которые есть в определенном списке (через msconfig). В XP и Vista работает, в семерке нет. Нашел проблемное место: _GUICtrlTab_GetItemCount в семерке возвращает ноль. Вот код, который в XP и Vista выводит количество вкладок, а в windows 7 выводит ноль (оставил только то, что влияет на суть проблемы):
проверил, что заголовок $h_tabcontrol соответствует тому, что выдает Au3Info.
Код:
#Include <GuiTab.au3>
#include <GUIConstants.au3>
$Title = "Конфигурация системы" ; Заголовок окна (в XP надо "Настройка системы")
$FirstText = "" ; Текст в первом окне
AutoItSetOption( "WinTextMatchMode", 2) ; Идентификация окна по произвольному фрагменту
; ...тут запуск msconfig и прочая фигня...
WinWaitActive ( $Title, "")
; Получаем заголовок TabControl
$h_tabcontrol = ControlGetHandle ( $Title, "", "[CLASS:SysTabControl32; INSTANCE:1]")
; Получаем количество вкладок
$i_TabItems = _GUICtrlTab_GetItemCount( $h_tabcontrol)
MsgBox ( 0, "", $i_TabItems)
Exit
проверил, что заголовок $h_tabcontrol соответствует тому, что выдает Au3Info.