Страницы

Поиск по вопросам

вторник, 21 мая 2019 г.

Как использовать autoit в языке С++

Autoit невероятно удобная штука, но с С++ работать мне проще. Знаю, что Autoit написан на С. Возможно ли функционал Autoit использовать в C++? Как подключить к Visual Studio?


Ответ

Для использования Autoit из C++ есть библиотека AutoItX (идет в составе дистрибутива AutoIT).
Цитата из справки:
AutoItX представляет собой DLL версию модуля AutoIt v3, которая обеспечивает набор функций по AutoIt через ActiveX / COM и DLL интерфейс. Это означает, что вы можете добавить AutoIt-подобные функции в ваш любимый скриптовый язык, и языки программирования, например, VB, VBScript, Delphi, C, C + +, KiXtart, и в большинстве других языков, которые поддерживают использование библиотек (DLL). Оригинальная версия AutoIt поставлялась с двумя управляющими элементами: AutoItX (COM / ActiveX Control) и AutoItDLL (управление DLL). В этой новой версии как COM так и DLL версии были объединены в одно управление AutoItX, который обеспечивает оба метода доступа. То как вы будете использовать AutoItX зависит от среды разработки (языка) в который вы хотите его использовать. Если вы используете нечто поддерживающее доступ к COM-объектам (например, VBScript), то использование AutoItX в качестве управления COM весьма рекомендуется. Если вы хотите использовать AutoItX из таких языков как С, то использовать его в качестве DLL будет проще.
Как подключить к Visual Studio:
start a new project2. go to your Autoit directory (usually C:\Program Files\AutoIt\ ) go to the AutoItX/StandardDLL/VC6/Example folder within your Autoit directory copy the following files to your project directory: AutoIt3.h AutoItX3.lib AutoItX3.dll main.cpp in visual studio, go to Project->Add To Project->Files change the "Files of type" dropdown to "all files" Select: AutoIt3.h AutoItX3.lib and main.cpp and add them to the project Your project should now compile and run. the example opens notepad and sends some text to it.
Также в дистрибутиве рядом с dll лежит простейший пример для C++:
#include #include "AutoItX3_DLL.h"
int APIENTRY wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { UNREFERENCED_PARAMETER(hPrevInstance); UNREFERENCED_PARAMETER(lpCmdLine);
// You can now call AutoIt commands, e.g. to send the keystrokes "hello" AU3_Sleep(1000); AU3_Run(L"notepad.exe", L"", 1); AU3_WinWaitActive(L"Untitled -", L"", 0); AU3_Send(L"Hello{!}", 0);
// Get the text in the status bar //WCHAR szText[1000]; //AU3_StatusbarGetText("Untitled -", "", 2, szText, 1000); //MessageBox(NULL, szText, "Text:", MB_OK);
return 0; }

Комментариев нет:

Отправить комментарий