Что нового

Запуск скрипта в Logoff

Timerlan

Новичок
Сообщения
93
Репутация
0
Здрасти уважаемые гуру. Меня интересует вопрос как можно запустить скрипт в Logoff'е. К примеру я я поставил задачу в шедулере для запуска скрипта на Autoit, ПК находится в Logoff'е скрипт почему то не хочет запускатся для автоустановки программы, а если запускать к примеру скрипт сделанный на CMD то все норм. Если какой то пармеир в AutoIt чтоб он работал в LOGOFF'е?
 

Mur

Осваивающий
Сообщения
132
Репутация
32
Попробуй через:
Пуск>Выполнить>cmd>taskschd или compmgmnt >Задания

Создавай новое задание для запуска своего скрипта, вкладка "условия" - Галочка "Пробуждать компьютер для выполнения задания". После пробуждения выполнится точно (=
Потом можешь просто поставить задание на обратный logoff

Кстати:
Why doesn't my script work on a locked workstation?

On a locked station any window will never be active (active is only dialog with text "Press Ctrl+Alt+Del"). In Windows locked state applications run hidden (behind that visible dialog) and do not have focus and active status. So generally don't use Send() MouseClick() WinActivate() WinWaitActive() WinActive() etc. Instead use ControlSend() ControlSetText() ControlClick() WinWait() WinExists() WinMenuSelectItem() etc. This way you may have your script resistive against another active windows. It's possible to run such a script from scheduler on locked Windows stations.
 

dimentr

Новичок
Сообщения
3
Репутация
0
Он не производит вход. Скрипт сам запускается, но только запускается и запускает указанную в нем программу, фокуса в формы не получает, данные не вводит(правильно как он получит фокус если передним окно входа, и он его свернуть не может), дальше никаких действий. Я так понимаю, надо делать чтобы он автоматических логинился и после этого выполнял скрипт. Как этого добиться ?
 

Mur

Осваивающий
Сообщения
132
Репутация
32
Если не требуется вводить пароль, то можно отключить это "окно" в настройках системы. Тогда с диспетчером заданий проблем не будет.

Скрипт не сможет войти в систему из под этого окна (залогиниться) (если не прав, поправьте)


Переведите это:
Why doesn't my script work on a locked workstation?

On a locked station any window will never be active (active is only dialog with text "Press Ctrl+Alt+Del"). In Windows locked state applications run hidden (behind that visible dialog) and do not have focus and active status. So generally don't use Send() MouseClick() WinActivate() WinWaitActive() WinActive() etc. Instead use ControlSend() ControlSetText() ControlClick() WinWait() WinExists() WinMenuSelectItem() etc. This way you may have your script resistive against another active windows. It's possible to run such a script from scheduler on locked Windows stations.

Вам нужно использовать другие команды для управления процессом инсталляции и прочих.

OffTopic:
Timerlan = dimentr ?



+
нужно использовать другие команды, например ?
Да прочитайте в конце концов цитату ;D
 

dimentr

Новичок
Сообщения
3
Репутация
0
Не, я просто Dimentr. :smile: Вы правильно меня поняли, вход требует ввода пароля. Вы сказали что нужно использовать другие команды, например ? Или все таки я обречен? Нужно именно чтобы при залоченом и с вводом пароль.
 
Автор
T

Timerlan

Новичок
Сообщения
93
Репутация
0
В любом случае какой то выход есть наверно. Какая то определенная команда
 

Mur

Осваивающий
Сообщения
132
Репутация
32
:shooting1: он и работает! Просто нужно заменить некоторые команды для автоматизации ваших действий.
Это из-за того, что вы будете работать не с активным (с невидимым) окном!

Какая то определенная команда
Или для чего вам команда нужна?
 
Автор
T

Timerlan

Новичок
Сообщения
93
Репутация
0
Why doesn't my script work on a locked workstation?

On a locked station any window will never be active (active is only dialog with text "Press Ctrl+Alt+Del"). In Windows locked state applications run hidden (behind that visible dialog) and do not have focus and active status. So generally don't use Send() MouseClick() WinActivate() WinWaitActive() WinActive() etc. Instead use ControlSend() ControlSetText() ControlClick() WinWait() WinExists() WinMenuSelectItem() etc. This way you may have your script resistive against another active windows. It's possible to run such a script from scheduler on locked Windows stations.

Я пробывал так как тут написано ни помогает((( :scratch:


Добавлено:
Сообщение автоматически объединено:

Главное в диспечар задач висит сам .exe но ни че не устанавливает. :(
 

Mur

Осваивающий
Сообщения
132
Репутация
32
Недавно наводил в компе порядок, наткнулся на это.
Раз у вас по-другому не выходит, пробуйте так...(К сообщениям #3 и #5)
 
Автор
T

Timerlan

Новичок
Сообщения
93
Репутация
0
Автор: Mur
Недавно наводил в компе порядок, наткнулся на это.
Раз у вас по-другому не выходит, пробуйте так...(К сообщениям #3 и #5)
Нет это не то, надо, чтоб скрипт выполнялся когда ПК находится именно в logoff'е. Че никто не сталкивался с этим чтоли???
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
А у меня работает...
Код:
While @MIN < 02
	Sleep(10000)
WEnd

$file = FileOpen("logoff.txt", 1)
FileWriteLine($file, "Запущен в " & @HOUR & ":" & @MIN & ":" & @SEC)
FileClose($file)


[box title=logoff.txt]Запущен в 10:02:07[/box]

Давайте, может быть, обсуждать что-то конкретное - скрипт, операционная система, и т.д.
 
Автор
T

Timerlan

Новичок
Сообщения
93
Репутация
0
Автор: C2H5OH
А у меня работает...
Код: AutoIt [Выделить]
While @MIN < 02
Sleep(10000)
WEnd

$file = FileOpen("logoff.txt", 1)
FileWriteLine($file, "Запущен в " & @HOUR & ":" & @MIN & ":" & @SEC)
FileClose($file)

logoff.txtЗапущен в 10:02:07

Давайте, может быть, обсуждать что-то конкретное - скрипт, операционная система, и т.д.

У меня тоже скрипт запускается, но проблема в том что не может произвести автоустановку программы. В диспечере задач висит setup.exe но в итоге ни чего не устанавливается. После того как заходишь в ПК, нету даже активного окна программы, а setup.exe программы висит. Ваще не понятно как быть в этой ситуации, что может вылечить это? Попробуй ради интереса напиши скрипт автоустановки проги какой нить и проверь, глядишь получится мб нет.
 

InnI

AutoIT Гуру
Сообщения
4,982
Репутация
1,460
Timerlan [?]
проблема в том что не может произвести автоустановку программы. В диспечере задач висит setup.exe но в итоге ни чего не устанавливается. После того как заходишь в ПК, нету даже активного окна программы, а setup.exe программы висит
На сколько я понимаю, вы пытаетесь установить программу при помощи GUI установщика. GUI - Graphical user interface - графический интерфейс пользователя. Нет пользователя - нет интерфейса. Если вы вышли из системы (LogOff), то окна создаваться не будут. Нужно обязательно логиниться.
Для примера, создайте в планировщике задачу на запуск, например, калькулятора или блокнота, от имени пользователя "система" и выполните её вручную. Вы увидите процесс, но окна не будет.
И не путайте "LogOff" и "locked workstation". Если система заблокирована (locked) или произведено переключение пользователя (switch user), то сеанс пользователя не завершён. И вот в этом случае можно управлять приложением, но только через неактивные контролы, как и указано в английском описании.
 
Автор
T

Timerlan

Новичок
Сообщения
93
Репутация
0
На сколько я понимаю, вы пытаетесь установить программу при помощи GUI установщика. GUI - Graphical user interface - графический интерфейс пользователя. Нет пользователя - нет интерфейса. Если вы вышли из системы (LogOff), то окна создаваться не будут. Нужно обязательно логиниться.
Для примера, создайте в планировщике задачу на запуск, например, калькулятора или блокнота, от имени пользователя "система" и выполните её вручную. Вы увидите процесс, но окна не будет.
И не путайте "LogOff" и "locked workstation". Если система заблокирована (locked) или произведено переключение пользователя (switch user), то сеанс пользователя не завершён. И вот в этом случае можно управлять приложением, но только через неактивные контролы, как и указано в английском описании.

Короче как я понял в LogOff нельзя установить программу через AutoIt.((( :( Тока я не пойму сам то скрипт запускает .exe программы которую я хочу установить. просто он не хочет нажимать далее и т.д короче.
 

InnI

AutoIT Гуру
Сообщения
4,982
Репутация
1,460
Timerlan [?]
Короче как я понял в LogOff нельзя установить программу через AutoIt.
Если использовать AutoIt, как "кликер" и "сендер", то не получится.
Тока я не пойму сам то скрипт запускает .exe программы которую я хочу установить.
Всё правильно. Программы работать будут, но без графического интерфейса. В этом вы могли убедиться на примере обращения к файловой системе.
просто он не хочет нажимать далее и т.д
Ну почему же "не хочет"? :smile: Хочет. И даже пытается. Просто нажимать не на что - нет ни окон ни кнопок.
 
Верх