Запускаем стороннее приложение и выключаем компьютер с помощью средств MQL |
hwnd [in, optional]
Тип: HWND
Ручка родительского окна, используемая для отображения пользовательского интерфейса или сообщений об ошибках. Это значение может быть NULL, если операция не связана с окном.
lpOperation [in, optional]
Тип: LPCTSTR
Указатель на нуль- терминированную строку, обозначаемую в этом случае как глагол, который указывает действие, которое необходимо выполнить. Набор доступных глаголов зависит от конкретного файла или папки. Как правило, действия, доступные из контекстного меню объекта, — это доступные глаголы. Обычно используются следующие глаголы:
edit
Запускает редактор и открывает документ для редактирования. Если lpFile не является файлом документа, функция завершится с ошибкой.
explore
Исследует папку, указанную lpFile.
find
Инициирует начало поиска в каталоге, указанном lpDirectory.
open
Открывает элемент, указанный параметром lpFile. Элемент может быть файлом или папкой.
Распечатывает файл, указанный lpFile. Если lpFile не является файлом документа, функция не работает.
NULL
Глагол по умолчанию используется, если он доступен. Если нет, используется «открытый» глагол. Если ни один из глаголов не доступен, система использует первый глагол, указанный в реестре.
lpFile [in]
Тип: LPCTSTR
Указатель на строку с нулевой ошибкой, которая указывает файл или объект, на котором выполняется указанный глагол. Чтобы указать объект пространства имен Shell, передайте полное имя синтаксического анализа. Обратите внимание, что не все глаголы поддерживаются на всех объектах. Например, не все типы документов поддерживают «печатный» глагол. Если относительный путь используется для параметра
lpDirectory, не используйте относительный путь для lpFile.
lpParameters [in, optional]
Тип: LPCTSTR
Если lpFile указывает исполняемый файл, этот параметр является указателем на строку с нулевой ошибкой, которая указывает параметры, которые должны быть переданы приложению. Формат этой строки определяется глаголом, который должен быть вызван. Если lpFile указывает файл документа, lpParameters должен быть NULL.
lpDirectory [in, optional]
Тип: LPCTSTR
Указатель на строку с нулевой ошибкой, которая указывает рабочий (рабочий) каталог для действия. Если это значение равно NULL, используется текущий рабочий каталог. Если относительный путь указан в lpFile, не используйте относительный путь для lpDirectory.
nShowCmd [in]
Тип: INT
Флаги, которые определяют, как приложение должно отображаться при его открытии. Если lpFile указывает файл документа, флаг просто передается соответствующему приложению. Решать, как с этим обращаться, зависит от приложения. Эти значения определены в Winuser.h.
SW_HIDE (0)
Скрывает окно и активирует другое окно.
SW_MAXIMIZE (3)
Максимизирует указанное окно.
SW_MINIMIZE (6)
Минимизирует указанное окно и активирует следующее окно верхнего уровня в z-порядке.
SW_RESTORE (9)
Активирует и отображает окно. Если окно минимизировано или максимизировано, Windows восстанавливает его исходный размер и положение. Приложение должно указывать этот флаг при восстановлении свернутого окна.
SW_SHOW (5)
Активирует окно и отображает его в текущем размере и положении.
SW_SHOWDEFAULT (10)
Устанавливает состояние отображения на основе флага SW_, указанного в структуре STARTUPINFO, переданной функции CreateProcess программой, которая запускала приложение. Приложение должно вызвать ShowWindow с этим флагом, чтобы установить начальное состояние отображения его главного окна.
SW_SHOWMAXIMIZED (3)
Активирует окно и отображает его как максимально развернутое окно.
SW_SHOWMINIMIZED (2)
Активирует окно и отображает его как свернутое окно.
SW_SHOWMINNOACTIVE (7)
Отображает окно как свернутое окно. Активное окно остается активным.
SW_SHOWNA (8)
Отображает окно в текущем состоянии. Активное окно остается активным.
SW_SHOWNOACTIVATE (4)
Отображает окно в его последнем размере и позиции. Активное окно остается активным.
SW_SHOWNORMAL (1)
Активирует и отображает окно. Если окно минимизировано или максимизировано, Windows восстанавливает его исходный размер и положение. Приложение должно указывать этот флаг при первом отображении окна.
//---- импорт функции из внешней DLL
#import "shell32.dll"
int ShellExecuteW(int hwnd,string lpOperation,string lpFile,string lpParameters,string lpDirectory,int nShowCmd);
#import
//+------------------------------------------------------------------+
//| WindowsExit.mq4 |
//| Copyright 2017, AM2. |
//| http://www.forexsyatems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, AM2."
#property link "http://www.forexsyatems.biz"
#property version "1.00"
#property strict
//---- импорт функции из внешней DLL
#import "shell32.dll"
int ShellExecuteW(int hwnd,string lpOperation,string lpFile,string lpParameters,string lpDirectory,int nShowCmd);
#import
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
ShellExecuteW(NULL,NULL,"D:\\Program Files\\MetaTrader - EXNESS\\terminal.exe",NULL,NULL,1);
}
//+------------------------------------------------------------------+
"D:\\Program Files\\MetaTrader - EXNESS\\terminal.exe"
ShellExecuteW(NULL,NULL,"C:\\Windows\\System32\\shutdown.exe","-s -t 00",NULL,1);
shutdown.exe -s -t 00
shutdown.exe -r -t 00
Предыдущая запись в
группе Советник "МТ45" или как написать эксперт, который будет работать на МТ4 и на МТ5 |
|
09 сентября 2017
|
10 апреля 2020
|
Комментарии (3)
27 Oxy Сообщений: 3430 - ..ιllιlι.lι.ιllι.ιlι..
24 ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.
В «инит» запускается эта функция. Любопытно что она делает! Сам не смог разобраться. Это из индикатора визуализации ордеров
8 Kofa Сообщений: 42
Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий