Просмотр полной версии : Завершение работы из MS
Доброго времени суток. Каким образом можно выключить компьютер (Завершение работы)
непосредственно из MS в режиме исполнения? И реально ли это вообще?
SCADAMaster
08.05.2016, 08:54
Для этого можно использовать скрипт - вызвать команду перезагрузки из метода Stop.
http://stackoverflow.com/questions/1215139/reboot-machine-from-a-c-wpf-app
http://ss64.com/nt/shutdown.html
Пример кода скрипта:
using System;
using MasterSCADA.Script.FB;
using MasterSCADA.Hlp;
using FB;
using System.Linq;
public partial class ФБ : ScriptBase
{
public override void Stop()
{
System.Diagnostics.Process.Start("shutdown.exe", "-s -t 0");
}
}
Хм.. спасибо, будем пробовать..
Ещё вопрос, на палитре ФБ вкладка "служебные" есть ФБ "запуск процесса" можно с помощью этого блока завершать работу??
SCADAMaster
09.05.2016, 11:38
Лучше через скрипт - он вызовет метод именно при остановке скады.
День добрый! Подскажите пожалуйста, как отобразить мнемосхему (тип Документ) на два монитора одинаковыми разрешениями.
всегда почему то на одном открывается. А настроек для типа "Документ" я не нашел
SCADAMaster
22.05.2016, 14:10
Не совсем понятно что именно вам нужно. Один и тот же документ на разные мониторы или разные?
Документ всегда выводится только на основной монитор. Если нужно выводить на второй, то установить у него режим окна, и задайте смещение координаты Х.
Спасибо, сейчас попробуем..
Доброго времени суток.
Помогите разобраться с Скриптом "сохранение и загрузка набора команд" Вещественные тип команд сохраняет и загружает отлично
Добавляю команду строкового типа - не сохраняет ((
Я не силен в С# но учу как время позволяет
SCADAMaster
24.05.2016, 09:03
Так и задумано - это ограничение скрипта.
Можно это ограничение снять - замените строчку:
if (objValue == null || objValue is string) //строка не сохраняется
на
if (objValue == null)
Но нужно иметь ввиду - ваша строка не должна содержать символ ; иначе чтение сохраненных значений пройдет некорректно.
Спасибо за оперативный ответ!
Здравствуйте! Подскажите пожалуйста, как реализовать такой момент.
Оператор дозирует материал, кнопкой на мнемосхеме левой клавиш.мыши, материал зависает и ему нужно помочь вибратором
Как задействовать правую клавишу мыши? не отпуская кнопку дозировать на мнемосхеме
За ранее спасибо!
SCADAMaster
25.05.2016, 16:58
Правую кнопку штатно задействовать для этого нельзя - если только писать собственный контрол или ВФБ.
Лучше сделайте отдельную кнопку.
nagowitsyn
31.05.2016, 10:30
Доброго дня! И снова скрипт завершение работы, вопрос как сделать чтоб одной кнопкой выходить из режима исполнения в режим разработки (для оперативных изменений в программе), а другой кнопкой завершать работу мастер скада и ПК.
SCADAMaster
31.05.2016, 12:47
По завершению работы - описано на первой странице.
Выхода в режим разработки как правило не делают. Есть просто завершение режима исполнения, после чего скада закроется (и уже потом можно запустить режим разработки и отладить). Для этого создается команда, типа дискретный и на вкладке "Действия" добавляется действие - Системное - Выход
nagowitsyn
01.06.2016, 12:20
с этим все ясно, но вот ситуация, настроено: завершение режима исполнения - завершение работы виндовс - отключение ПК, при включении ПК: загрузка виндовс, загрузка мастер скада в режим исполнения без выбора и подтверждения оператора. Вопрос, как попасть в режим разработки?
SCADAMaster
01.06.2016, 13:03
У вас сейчас происходит запуск в режим исполнения минуя режим разработки - через vav файл.
Чтобы запустить режим исполнения, нужно остановить режим исполнения (Alt+f10- завершение сеанса), и запустить Пуск - Программы - MasterSCADA.
nagowitsyn
01.06.2016, 13:46
Спасибо за пояснения, сочетание клавиш не сработало, возможно клавиатура неисправна. Проверю завтра другой клавиатурой.
SCADAMaster
01.06.2016, 15:48
Оно может быть и заблокировано.
Тогда нужно убивать сам процесс скады - иначе если разработчик запретил выход из скады по другому не выйдет.
nagowitsyn
02.06.2016, 06:03
Разработчиком я и являюсь, задача поэтапно автоматизировать производство бетона, без остановки производства. Следовательно придется много раз входить в режим разраба из работающего проэкта, пока работаю с помощью двух учетных записей компьютера (админ, оператор) в последствии предполагается одна учетка оператор, для того что б шаловливые ручки работников не лезли куда ненадо. логичный вариант отдельные команды как писал выше или сочетание клавиш как подсказали вы.
спасибо
SCADAMaster
02.06.2016, 09:28
Если сочетание квавиш вы не блокировали, то должны работать
Также можно сделать отдельную кнопку "Завершение сеанса" на которую дать права доступа только разработчику.
SCADAMaster
02.06.2016, 09:28
Если сочетание квавиш вы не блокировали, то должны работать
Также можно сделать отдельную кнопку "Завершение сеанса" на которую дать права доступа только разработчику.
nagowitsyn
02.06.2016, 10:52
завершение сеанса настроено, но при смене пользователя на разработчика выхожу к дереву проекта в режиме исполнения. нажимая стоп происходит завершение работы с выключением ПК. сочетания клавиш не блокировал, честно даже не нашел где настраивается работа сочетания клавиш.
SCADAMaster
02.06.2016, 11:27
Да, это происходит из-за того что скрипт выполняет выключение компьютера при остановке скады.
Попробуйте такой скрипт:
using System;
using MasterSCADA.Script.FB;
using MasterSCADA.Hlp;
using FB;
using FB.FBAttributes;
using System.Linq;
using System.Windows.Forms;
[FBRetain]
public partial class ФБ : ScriptBase
{
string Name="";
public override void Execute()
{
Name=HostFB.TreeItemHlp.Project.RTPermissions.Logg edUserPostName;
}
public override void Stop()
{
if Name!="Разработчик"
System.Diagnostics.Process.Start("shutdown.exe", "-s -t 0");
}
}
Опрос у скрипта нужно поставить периодическим (можно раз 10 секунд или даже медленее).
nagowitsyn
03.06.2016, 10:27
Опробовал предложенный скрипт. С некоторыми исправлениями работает на останов режима исполнения разработчиком и оператором. Нам же требуется: разработчик останов режима исполнения
оператор завершение работы скады и ПК
SCADAMaster
03.06.2016, 13:16
Ну вообще если пропишите название должности "Разработчик", то будет только останов режима исполнения без выхода.
nagowitsyn
03.06.2016, 13:52
Спасибо. Значит остается вариант пользователи ПК, через перезагрузку
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot