Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » VNC авторизация

Ответить
Настройки темы
VNC авторизация

Аватара для batyaPS

Ветеран


Сообщения: 968
Благодарности: 61

Профиль | Отправить PM | Цитировать


Изменения
Автор: batyaPS
Дата: 17-08-2011
Может есть у кого готовый или помогите создать скрипт для автоматической авторизации при vnc подключении.
Требуется входить как с доменной авторизацией так и просто по паролю (окна при этих авторизациях разные).

т.е. нужен процесс или служба работающая в ожидании нужного окна (запрос авторизации по VNC)
и при появлении требуемого (их бывает два - с доменной авторизацией и авторизация по паролю - они разные) окна
осуществляла ввод (нужного) логина + пароля (в случае с доменной авторизацией) или просто пароля (в случае обычной авторизации).

думаю многим очень будет полезна данная наработка


решение
реализация с ini файлом

Отправлено: 13:10, 09-08-2011

 

Аватара для batyaPS

Ветеран


Сообщения: 968
Благодарности: 61

Профиль | Отправить PM | Цитировать


Данные окна с доменной авторизацией

Title:Ultr@VNC Авторизация
Class:#32770
Поле с логином
Class:Edit
Instance:1
Поле с паролем
Class:Edit
Instance:2

Данные окна с авторизацией по паролю
Title:VNC Авторизация
Class:#32770
Поле с паролем
Class:Edit
Instance:1

Отправлено: 11:46, 11-08-2011 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


batyaPS,
А есть кнопка, на которую надо нажимать?

Отправлено: 12:47, 11-08-2011 | #3


Аватара для batyaPS

Ветеран


Сообщения: 968
Благодарности: 61

Профиль | Отправить PM | Цитировать


madmasles,

Данные окна с доменной авторизацией

Title:Ultr@VNC Авторизация
Class:#32770
Поле с логином
Class:Edit
Instance:1
Поле с паролем
Class:Edit
Instance:2
кнопка "войти"
Class:Button
Instance:1


Данные окна с авторизацией по паролю
Title:VNC Авторизация
Class:#32770
Поле с паролем
Class:Edit
Instance:1
кнопка "войти"
Class:Button
Instance:1


либо Enter

Отправлено: 15:12, 11-08-2011 | #4


Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


batyaPS,
Попробуйте так:
Код: Выделить весь код
#NoTrayIcon
#include <WinAPIEx.au3>;Yashied, http://autoit-script.ru/index.php/topic,47.0.html

Opt('MustDeclareVars', 1)
Opt('TrayMenuMode', 1)

Global $sTitleScript = @ScriptName & '{[/@$@\]}', $sTitleLogPass = '[Title:Ultr@VNC Авторизация;Class:#32770]', _
        $sTitlePass = '[Title:VNC Авторизация;Class:#32770]', $fLogPass, $fPass, $nExitItem, $msg

If WinExists($sTitleScript) Then Exit
AutoItWinSetTitle($sTitleScript)

HotKeySet('{Esc}', '_Exit')
$nExitItem = TrayCreateItem('Выход')
TraySetState()
TraySetToolTip('<VNC Авторизация>' & @LF & 'Выход - нажать кнопку "Esc"')
_WinAPI_EmptyWorkingSet()
While 1
    $msg = TrayGetMsg()
    If WinExists($sTitleLogPass) Then
        If Not $fLogPass Then
            _AvtorLogPass()
            If Not @error Then $fLogPass = True
        EndIf
    Else
        $fLogPass = False
    EndIf
    If WinExists($sTitlePass) Then
        If Not $fPass Then
            _AvtorPass()
            If Not @error Then $fPass = True
        EndIf
    Else
        $fPass = False
    EndIf
    Switch $msg
        Case 0
            ContinueLoop
        Case $nExitItem
            _Exit()
    EndSwitch
WEnd

Func _AvtorLogPass()
    Local $h_Win, $n_Log = '[Class:Edit;Instance:1]', $n_Pass = '[Class:Edit;Instance:2]', _
            $n_Button = '[Class:Button;Instance:1]', $s_Log = 'TestUser', $s_Pass = 'TestPass';свои данные поставьте
    $h_Win = WinGetHandle($sTitleLogPass)
    If Not $h_Win Then Return SetError(1)
    ControlSetText($h_Win, '', $n_Log, $s_Log)
    ControlSetText($h_Win, '', $n_Pass, $s_Pass)
    If ControlGetText($h_Win, '', $n_Log) <> $s_Log Then Return SetError(1)
    If ControlGetText($h_Win, '', $n_Pass) <> $s_Pass Then Return SetError(1)
    ControlClick($h_Win, '', $n_Button)
    If WinExists($h_Win) Then Return SetError(1)
    Return SetError(0)
EndFunc   ;==>_AvtorLogPass

Func _AvtorPass()
    Local $h_Win, $n_Pass = '[Class:Edit;Instance:1]', $n_Button = '[Class:Button;Instance:1]', _
            $s_Pass = 'TestPass';свои данные поставьте
    $h_Win = WinGetHandle($sTitlePass)
    If Not $h_Win Then Return SetError(1)
    ControlSetText($h_Win, '', $n_Pass, $s_Pass)
    If ControlGetText($h_Win, '', $n_Pass) <> $s_Pass Then Return SetError(1)
    ControlClick($h_Win, '', $n_Button)
    If WinExists($h_Win) Then Return SetError(1)
    Return SetError(0)
EndFunc   ;==>_AvtorPass

Func _Exit()
    Exit
EndFunc   ;==>_Exit

Последний раз редактировалось madmasles, 11-08-2011 в 18:04. Причина: Поправил код.


Отправлено: 16:51, 11-08-2011 | #5


Аватара для batyaPS

Ветеран


Сообщения: 968
Благодарности: 61

Профиль | Отправить PM | Цитировать


При компиляции ошибка
Aut2Exe Error

Line 2 (File .......)
#include <WinAPIEx.au3>
Error: Error opening the file/



у меня чего то в наборе не хватает я так понимаю ??

Последний раз редактировалось batyaPS, 11-08-2011 в 19:43.


Отправлено: 19:34, 11-08-2011 | #6


Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Расширение стандартной AutoIt библиотеки WinAPI.au3
Это сообщение посчитали полезным следующие участники:

Отправлено: 20:04, 11-08-2011 | #7


Аватара для madmasles

Ветеран


Сообщения: 812
Благодарности: 353

Профиль | Отправить PM | Цитировать


Цитата batyaPS:
При компиляции ошибка »
Как Вы считаете, я во второй строке кода дал ссылку просто так?

Отправлено: 20:53, 11-08-2011 | #8


Аватара для batyaPS

Ветеран


Сообщения: 968
Благодарности: 61

Профиль | Отправить PM | Цитировать


Цитата madmasles:
Как Вы считаете, я во второй строке кода дал ссылку просто так? »
я заметил, скачал, положил в папку с программой, но ошибка повторяеться

Отправлено: 09:38, 12-08-2011 | #9


Аватара для batyaPS

Ветеран


Сообщения: 968
Благодарности: 61

Профиль | Отправить PM | Цитировать


Всё, разобрался. Окна отлавливаются, ввод логина+пароля / пароля осуществляеться.
Кнопка "Войти" не отрабатывает .

Отправлено: 09:57, 12-08-2011 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » VNC авторизация

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интернет - Ultra VNC ElmandeRRR Программное обеспечение Windows 2 27-01-2012 17:38
Route/Bridge - Вопрос по vnc loki222 Сетевые технологии 5 27-11-2010 19:14
VNC на Microsoft windows CE batyaPS Мобильные ОС, смартфоны и планшеты 5 22-09-2009 07:33
Прочее - VNC с помощью телефона mewkoff Сетевые технологии 7 25-06-2009 16:18
XDM vs VNC что предпочесть? Vlad Drakula Общий по Linux 2 17-02-2007 10:42




 
Переход