Что нового

Расширение стандартной AutoIt библиотеки WinAPI.au3

InnI

AutoIT Гуру
Сообщения
4,958
Репутация
1,448
WSWR [?]
только возвращает уникальную строку или делает еще что-то?
Судя по тем функциям, которые используются...
Функция CoCreateGUID генерирует новое значение GUID в виде двоичной строки длиной 16 байт. Функция StringFromGUID2 преобразует двоичное значение GUID в его символьное представление. (источник: http://www.codenet.ru/db/vfp/winapi/api2.php)
Следовательно - функция только возвращает уникальную строку.
 

WSWR

AutoIT Гуру
Сообщения
941
Репутация
363
InnI
Да, видимо так и есть, спасибо
 

IoffeMax

Новичок
Сообщения
22
Репутация
1
Что-то случилось?

Я нигде библиотеку скачать не могу :(
 

joiner

Модератор
Локальный модератор
Сообщения
3,557
Репутация
628
IoffeMax
посмотри ответ №175 на предыдущей странице. там ссылка живая
залил еще сюда http://autoit-script.ru/index.php?action=downloads;sa=view;down=322
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,323
Yashied,
По-моему, у Вас ошибка в структуре
Код:
Global Const $tagWINDOWINFO = 'dword Size;dword rWindow[4];dword rClient[4];dword Style;dword ExStyle;dword WindowStatus;uint cxWindowBorders;uint cyWindowBorders;ushort atomWindowType;ushort CreatorVersion;'
rWindow и rClient должны быть не dword, а long. (RECT и WINDOWINFO).
Запуская пример к функции _WinAPI_GetWindowInfo() для развернутого окна, у меня Left и Top должны быть отрицательные числа -8 и -8, а не 4294967288 и 4294967288, как сейчас.


Добавлено:
Сообщение автоматически объединено:

Код:
#include <WinAPIEx.au3>

Opt('MustDeclareVars', 1)

Global $hWnd = WinGetHandle('[Title:WinAPIEx UDF Help; Class:HH Parent]')
If Not $hWnd Then Exit 13
If Not BitAND(WinGetState($hWnd), 32) Then WinSetState($hWnd, '', @SW_MAXIMIZE)
Global $tWINDOWINFO = _WinAPI_GetWindowInfo($hWnd)
Global $aSize = WinGetPos($hWnd)

ConsoleWrite('Left:   ' & $aSize[0] & @LF)
ConsoleWrite('Top:    ' & $aSize[1] & @LF)
ConsoleWrite('---' & @LF)
ConsoleWrite('Left:   ' & DllStructGetData($tWINDOWINFO, 'rWindow', 1) & @CR)
ConsoleWrite('Top:    ' & DllStructGetData($tWINDOWINFO, 'rWindow', 2) & @CR)
ConsoleWrite('Right:  ' & DllStructGetData($tWINDOWINFO, 'rWindow', 3) & @CR)
ConsoleWrite('Bottom: ' & DllStructGetData($tWINDOWINFO, 'rWindow', 4) & @CR)
В консоли пишет (у меня)
Код:
Left:   -8
Top:    -8
---
Left:   4294967288
Top:    4294967288
Right:  1374
Bottom: 776
PS
Та же ошибка в WinAPISys.au3 в бетах 3.3.9.*.
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Да, это ошибка :smile:.
 

InnI

AutoIT Гуру
Сообщения
4,958
Репутация
1,448
ABSOLUTE
Не нужно устанавливать данную библиотеку на версию 3.3.10.2 - она там уже есть.


Добавлено:
Сообщение автоматически объединено:

Yashied [?]
И в релизе 3.3.10.2 присутствует :(
 

bistriy

Новичок
Сообщения
22
Репутация
0
Что то я скачиваю zip и exe файлы из темы а скачиваються какие то html файлы.
 

Andruxakonst

Новичок
Сообщения
21
Репутация
0
InnI
Присоединяюсь! Вместо Архива или инсталлера качается веб страница! А библиотека как раз ой как понадобилась :( :( :(
 

InnI

AutoIT Гуру
Сообщения
4,958
Репутация
1,448
Andruxakonst [?]
качается веб страница
Кликните по этой странице - начнётся закачка. Если не начнётся, откройте эту страницу в блокноте - там внутри прямая ссылка на файл.
 

alex33

Скриптер
Сообщения
1,457
Репутация
186
А вот кстати интересно, зачем так сделано?
 

alex33

Скриптер
Сообщения
1,457
Репутация
186
OffTopic:
Для какой статистики? Скачивание HTML файла?
 

Skif_off

Знающий
Сообщения
173
Репутация
13
Можно вытащить версию из 3.3.12.0 и использовать с 3.3.8.1? Вероятно, какие-то ошибки были исправлены.
WinAPIEx.au3

WinAPICom.au3
WinAPIDiag.au3
WinAPIDlg.au3
WinAPIFiles.au3
WinAPIGdi.au3
WinAPIInternals.au3
WinAPILocale.au3
WinAPIMisc.au3
WinAPIProc.au3
WinAPIReg.au3
WinAPIRes.au3
WinAPIShellEx.au3
WinAPIShPath.au3
WinAPISys.au3
WinAPITheme.au3

APIComConstants.au3
APIConstants.au3
APIDiagConstants.au3
APIDlgConstants.au3
APIErrorsConstants.au3
APIFilesConstants.au3
APIGdiConstants.au3
APILocaleConstants.au3
APIMiscConstants.au3
APIProcConstants.au3
APIRegConstants.au3
APIResConstants.au3
APIShellExConstants.au3
APIShPathConstants.au3
APISysConstants.au3
APIThemeConstants.au3
И, наверное, WinAPI.au3 стоит забрать в таком случае.
 
Автор
Yashied

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Так как на форуме выложено огромное количество скриптов, которые используют WinAPIEx UDF разных версий, а полной совместимости между версиями нет, то я добавил в первый пост ссылку на архив всех версий этой библиотеки, начиная с 2.5. В большинстве случаев проще использовать ту версию AutoIt и WinAPIEx UDF, для которых был написан тот или иной скрипт, нежели отслеживать все изменения и адаптировать под них код.
 

Skif_off

Знающий
Сообщения
173
Репутация
13
Возможно ли использовать функции
Код:
_WinAPI_GetParentProcess(@AutoItPID)
_WinAPI_GetProcessFileName($PID)
_WinAPI_GetProcessName($PID)
_WinAPI_GetProcessCommandLine($PID)

при условии, что AutoItx86, а интересующий процесс - x64?

AutoIt v3.3.12.0.

Добавлено:
Перепроверил,
Код:
_WinAPI_GetParentProcess(@AutoItPID)
_WinAPI_GetProcessName($PID)

срабатывают.
 
Верх