Вопрос №4 — «Выключение компьютера из MQL»

Добрый день!
Подскажите как выключить компьютер из MQL? Мой советник выставляет ордер в определенное время и хотелось бы выключать компьютер после этого.

В заголовочном файле WinUser32.mqh описана функция ExitWindowsEx() из системной библиотеки user32.dll. Она предназначена для завершения работы Windows. Эта функция прекрасно работает в старых версиях Windows, но в связи с ужесточившейся безопасностью в современных версиях не все так просто. Поэтому предлагаю воспользоваться другим способом. В Windows есть программа shutdown.exe Она предназначена для завершения работы. Для запуска программ из MQL необходимо импортировать из системной библиотеки kernel32.dll функцию WinExec():

#import «kernel32.dll»
int WinExec(string lpCmdLine,int uCmdShow);

После этого в любом месте советника ее можно будет вызвать:

WinExec(«shutdown.exe -s -f»,1);

Скачать пример:  скрипт Shutdown

Похожие статьи:

4 комментария

  1. Даааа…
    Вот что значит знать WinAPI
    Это получается можно запустить любую программу в скрытом режиме?

  2. хороший, полезный сайт.очень признателен, пытаюсь учится.Алексей

  3. подскажите, как в советнике реализовать ping сервера, чтобы он записывал результаты в отдельный лог-файл

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *