SIEMENS, DF&PD

Предыдущее посещение: Чт мар 03, 2016 22:32 Текущее время: Чт мар 03, 2016 22:32

Часовой пояс: UTC + 3 часа




 [ Сообщений: 16 ] 
Автор Сообщение
 Заголовок сообщения: пользователь по умолчанию
СообщениеДобавлено: Вт сен 29, 2009 13:45 
Не в сети
Новый писатель

Зарегистрирован: Сб июн 20, 2009 5:51
Сообщения: 13
День добрый

После запуска WinСС по умолчанию пользователя нет.
Далее, необходимо зарегистрироваться, чтобы получить доступ
к системе.

Можно ли сделать запуск WinCC с пользователем по умолчанию.

с уважением, Ильдар


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт сен 29, 2009 14:04 
Не в сети
Это точно не человек

Зарегистрирован: Чт фев 16, 2006 12:27
Сообщения: 7340
Откуда: Украина
Я делаю так. Создаю глобальный скрипт, срабатывающий при изменении тега @CurrentUser (имя текущего пользователя). В случае, если имя пользователя пустое, а это происходит только в двух случаях - сразу после запуска RT и при логауте (отмене регистрации), регистрируюсь программно под пользователем по умолчанию.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт сен 29, 2009 14:52 
Не в сети
Писатель со стажем

Зарегистрирован: Чт май 29, 2008 15:48
Сообщения: 985
Откуда: Минск
Если использовать SIMATIC Logon, то в нем есть такая опция.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср сен 30, 2009 6:32 
Не в сети
Новый писатель

Зарегистрирован: Сб июн 20, 2009 5:51
Сообщения: 13
Eugene1974

А текст глобального скрипта можно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср сен 30, 2009 6:55 
Не в сети
Известный Писатель

Зарегистрирован: Вт апр 05, 2005 15:13
Сообщения: 219
http://www.automation-drives.ru/forum/v ... php?t=9390


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср сен 30, 2009 9:54 
Не в сети
Это точно не человек

Зарегистрирован: Чт фев 16, 2006 12:27
Сообщения: 7340
Откуда: Украина
ildarIDC писал(а):
А текст глобального скрипта можно?
Пожалуйста:
Код:
#include "apdefap.h"

int gscAction( void )
{
// WINCC:TAGNAME_SECTION_START
#define username "@CurrentUser"
// WINCC:TAGNAME_SECTION_END

#pragma code ("UseAdmin.DLL")
#include "pwrt_api.h"
#pragma code ()

   if (strcmp(GetTagChar(username), "") == 0)
      PWRTSilentLogin("OPERATOR", "1111111");

   return 0;
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср сен 30, 2009 11:43 
Не в сети
Новый писатель

Зарегистрирован: Сб июн 20, 2009 5:51
Сообщения: 13
спасибо все откликнувшимся.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб окт 03, 2009 5:57 
Не в сети
Новый писатель

Зарегистрирован: Сб июн 20, 2009 5:51
Сообщения: 13
Eugene

Вроде все понятно, но не работает.
Что делал:

-Создал глобальный скрипт
- назначил тригер 500 мс (сначала, без привязки тега)
- скрипт работает, но функция PWRTSilentLogin работать не хочет.
т.е. все равно выскакивает окно ввода пользователя.
(для проверки вместо PWRTSilentLogin вставил
MessageBox - сообщение выскакивает;
прописанный в PWRTSilentLogin пользователь - в наличии)

-потом, создал тригер по тегу @CurrentUser , результат тот же.

в чем может быть проблема? В каком направлении еще покапаться?

Р.S. Было еще на форуме сообщение, где рекомендуют привязать
скрипт к событию открытия стартового окна, но честно говоря не знаю,
к какому окну привязать, попробовал на окне logo, результата то же нет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб окт 03, 2009 7:50 
Не в сети
Это точно не человек

Зарегистрирован: Чт фев 16, 2006 12:27
Сообщения: 7340
Откуда: Украина
Цитата:
-потом, создал тригер по тегу @CurrentUser, результат тот же.
Правильное решение, скрипт должен вызываться только по изменению тега @CurrentUser.

Цитата:
в чем может быть проблема? В каком направлении еще покапаться?
Попробуйте для отладки скрипта вывести printf'ом значение, возвращаемое функцией PWRTSilentLogin (TRUE - всё нормально, FALSE - login denied), а не выводить сообщение MessageBox'ом (что само по себе чревато боком):
Код:
#include "apdefap.h"

int gscAction( void )
{
// WINCC:TAGNAME_SECTION_START
#define username "@CurrentUser"
// WINCC:TAGNAME_SECTION_END

#pragma code ("UseAdmin.DLL")
#include "pwrt_api.h"
#pragma code ()

BOOL result;
char UN[100];

   strcpy(UN, GetTagChar(username));
   if (strcmp(UN, "") == 0)
      result = PWRTSilentLogin("OPERATOR", "1111111");
   printf("%s %d\r\n", UN, result);

   return (int)result;
}


Окно ввода пользователя при использовании PWRTSilentLogin выводиться не должно, оно появляется при использовании PWRTLogin. Может, Вы пароль неверно указываете, раз уж пользователь прописан?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс окт 04, 2009 10:54 
Не в сети
Новый писатель

Зарегистрирован: Сб июн 20, 2009 5:51
Сообщения: 13
Спасибо за советы, практически все получилось.

Но остался небольшой вопрос. Функция PWRTSilentLogin
не выполняет регистрацию, пока висит окно System Login.
Я обошел это, написав скрипт, в котором закрываю
это окно средствами WinAPI.

Но внутри WinCC не нашел средства, как не допустить вызова
окна System Login вообще.
На предприятии стоят 2 системы на WinCC, У них данное окно не вызывается совсем. Т.е. для загрузки системы оператор должен
явно вызвать процесс регистрации.
Но обшарил все настройки, скрипты, но ничего не нашел.

На форуме данный вопрос задавали, но как обойтись без WinAPI
ответов не было.

Может у кого будут мысли, в каком направлении еще покапаться?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс окт 04, 2009 13:23 
Не в сети
Это точно не человек

Зарегистрирован: Чт фев 16, 2006 12:27
Сообщения: 7340
Откуда: Украина
ildarIDC писал(а):
Но остался небольшой вопрос. Функция PWRTSilentLogin не выполняет регистрацию, пока висит окно System Login. Я обошел это, написав скрипт, в котором закрываю
это окно средствами WinAPI.
Рискну предположить, что изначально проект создавался посредством OS Project Editor. В этом случае при наличии запараметрированных пользователей автоматически при старте рантайма выводится окно логина. Вызов этого диалога ЕМНИП запрограммировано в событии открытия главного экрана @screen.pdl.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн окт 05, 2009 9:06 
Не в сети
Известный Писатель

Зарегистрирован: Пн фев 09, 2009 14:38
Сообщения: 192
А чем отличаются теги "@CurrentUser" и "@CurrentUserName"?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн окт 05, 2009 9:53 
Не в сети
Писатель со стажем

Зарегистрирован: Чт май 29, 2008 15:48
Сообщения: 985
Откуда: Минск
ildarIDC писал(а):
Функция PWRTSilentLogin
не выполняет регистрацию, пока висит окно System Login.


Само по себе это окно не вызывается.

ildarIDC писал(а):
А чем отличаются теги "@CurrentUser" и "@CurrentUserName"?


Когда используешь пользователей из Windows, то в CurrentUserName записывается соотв. полное имя пользователя. По-моему, когда юзаешь только встроенный User ADministrator, в этот тег ничего не пишется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн окт 05, 2009 11:08 
Не в сети
Новый писатель

Зарегистрирован: Сб июн 20, 2009 5:51
Сообщения: 13
проект создавался средствами PCS7.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн окт 05, 2009 15:23 
Не в сети
Это точно не человек

Зарегистрирован: Чт фев 16, 2006 12:27
Сообщения: 7340
Откуда: Украина
ildarIDC писал(а):
проект создавался средствами PCS7.
Это многое объясняет. Память мне всё-таки изменила:-) Посмотрите экран @Welcome.pdl, а вернее его событие Open Picture. Там есть вызов функции PASSLoginDialog. Она-то и вызывает диалог регистрации. Я его закомментировал, а PWRTSilentLogin вызываю в глобальном скрипте, описанном выше.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт окт 06, 2009 11:54 
Не в сети
Новый писатель

Зарегистрирован: Сб июн 20, 2009 5:51
Сообщения: 13
Все получилось.

Особое спасибо Eugene1974


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
 [ Сообщений: 16 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: FreshMan, YandexBot и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group