Вот, когда-то создал кнопку на форме показа активных юзеров, отправляющую административное сообщение:
PHP код:
// andy
void clicked()
{
Dialog dialog = new Dialog("@SYS55324");
DialogField startTime = dialog.addField(typeId(timeOfDay));
DialogField interval = dialog.addField(Types::INTEGER);
int i;
FormListItem item;
Session testSession;
str message;
;
super();
startTime.value(decround((timeNow() + 600) / 300, 0) * 300);
interval.value(10);
startTime.label("Время отключения");
interval.label("Время простоя, мин");
if (dialog.run())
{
message = strFmtLB(strFmt("С %1 до %2 будет проводиться настройка системы АХАРТА. Просьба завершить работу и отключиться от системы.\nАдминистратор."
, time2strHM(startTime.value()), time2strHM(startTime.value() + interval.value() * 60)));
for (i = 0; i < onlineUsers.getCount(); i++)
{
item = onlineUsers.getItem(i);
testSession = new Session(item.data());
if (testSession)
{
if (new AOSSessionInfo(item.data()).clientMode() == AOSClientMode::NotAOS)
WinAPI::shellExecute("net", strFmt("send %1 %2", testSession.clientComputerName(), message));
else
AOSSessionInfo::sendMessage(testSession.sessionId(), "Внимание!", message);
}
}
}
}