DLL.CallFunction
Описание
Вызывает функцию в динамически подключаемой библиотеке (dynamically linked library - DLL). Её можно использовать для расширения функциональности собственных функций AutoPlay.
Внимание: Вызов DLL-ок довольно сложная вещь и писать DLL-ки лучше всего на C или C++. Мы стараемся предоставить широкий спектр функциональных возможностей в AutoPlay, поэтому не так уж много причин для вызова внешних DLL. Убедитесь, что точно знаете, какие параметры берет вызываемая функция DLL. Предоставление слишком больших параметров или их нехватка может повредить память приложения, так что используйте их под свою ответственность.
ПараметрыFilename
(строка) Путь к DLL файлу.
FunctionName
(строка) Имя функции внутри DLL.
Parameters
(строка) Разделенный запятыми, список параметров, которые нужно передать функции.
Примечание: Помещаем в двойные кавычки любые параметры, которые проходят как указатели строк, оканчивающиеся на NULL.
Поддерживаются только ANSI строки, не Unicode. Параметры без кавычек считаются как целые числа в формате LONG. Все параметры только однонаправленные — они могут быть переданы в DLL функцию, но не могут быть вычислены после вызова функции. (Другими словами, эти параметры проходят по значению, но не проходят по ссылке.) ReturnType
(число) Тип значения, возвращаемого функцией:
Примечание: Если функция не возвращает значение (функция возвращает значение void), используйте DLL_RETURN_TYPE_LONG.
CallConvention
(число) Соглашение вызова, что будет использовать AutoPlay при вызове DLL функции:
ВозвратResultVariable
(строка) Значение, что было возвращено из DLL функции как результат вызова функции. Если происходит ошибка, будет возвращена пустая строка "". Можно использовать Application.GetLastError для определения случился ли отказ в работе этого действия и почему.
При добавлении действия из редактора скрипта, можно использовать это поле для определения переменной, которая возвращает значение, сохраняющееся в ней.
Смотрите также: Связанные действия
ПримерыПример 1DLLResult = DLL.CallFunction("winmm.dll", "mciSendStringA", "\"Set CDAudio Door Open\",0,0,0", DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);Вызываем функцию mciSendStringA в файле winmm.dll Windows чтобы отправить команду "Set CD Audio Door Open" в драйвер MCI (вместе с двумя параметрами равными 0). Она вызовет открывание лотка привода CD-ROM (т.е. она выбросит CD). Пример 2DLL.CallFunction(_SystemFolder .. "\\User32.dll", "SetCursorPos", "0,0", DLL_RETURN_TYPE_LONG, DLL_CALL_STDCALL);Вызываем функцию SetCursorPos в файле "Windows\System32\User32.dll" для перемещения курсора в верхний левый угол экрана (то есть, координаты "0,0"). Так как переменная для хранения возвращаемого значения не предоставлена, если функция DLL что-либо возвратит, оно будет просто проигнорировано.
Смотрите также: Связанные действия
|