Добрый день.
Есть задача. Удаленное подключение клиентов к серверам через терминал.(сис админы за улыбаются)
Есть куча пользователей,разработчиков итд итп, которым нужно подключится к той или иной машинке.
Что бы потом не разбирать "полеты" юзеров, был создан на основе autoit не сложный скрипт, который при нажатие на него -высылает данные о подключение сис админу организации.
Выглядит со стороны пользователей примерно так http://take.ms/GKiei
Но так как машин(для удаленного подключения) перевалило за 10, то в скриптах (генерации exe) я уже начинаю путаться.Да и иногда под рукой нет AUTOIT а пользователь тычит в присланный exe -который его пытается подключить к другой (перепутанной) машине.
Вот у меня вопрос в следующем.Нельзя ли "активизировать" кнопку НАСТРОЙКИ, что бы под паролью экстренно менять настройки? То есть вписывать переменные(менять ip к подключению).
Код выкладываю,единственное конечно потер учетки
Или хотя бы направьте в русло нужное
СПАСИБО!!!!!!!!!!!!
Есть задача. Удаленное подключение клиентов к серверам через терминал.(сис админы за улыбаются)
Есть куча пользователей,разработчиков итд итп, которым нужно подключится к той или иной машинке.
Что бы потом не разбирать "полеты" юзеров, был создан на основе autoit не сложный скрипт, который при нажатие на него -высылает данные о подключение сис админу организации.
Выглядит со стороны пользователей примерно так http://take.ms/GKiei
Но так как машин(для удаленного подключения) перевалило за 10, то в скриптах (генерации exe) я уже начинаю путаться.Да и иногда под рукой нет AUTOIT а пользователь тычит в присланный exe -который его пытается подключить к другой (перепутанной) машине.
Вот у меня вопрос в следующем.Нельзя ли "активизировать" кнопку НАСТРОЙКИ, что бы под паролью экстренно менять настройки? То есть вписывать переменные(менять ip к подключению).
Код выкладываю,единственное конечно потер учетки
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ButtonConstants.au3>
#include <ListBoxConstants.au3>
#include 'encoding.au3'
#include <File.au3>
#include <Inet.au3>
$PublicIP = _GetIP()
$compname=@ComputerName
$IPAddress1=@IPAddress1
GUICreate("Удаленное подключение к компьютерам", -1, -1, -1, -1, $WS_OVERLAPPEDWINDOW + $WS_POPUP) ; Создаёт окно в центре экрана
GUISetState(@SW_SHOW) ; показывает созданное окно
GUICtrlCreateLabel('Внимание!!!!!!!', 10, 10, 350, 17)
GUICtrlCreateLabel('Следующие данные будут отосланы в blabala:', 10, 35, 350, 17)
GUICtrlCreateLabel('Ваш Внешний IP: '&$PublicIP, 10, 55, 350, 17)
GUICtrlCreateLabel('Ваш Внутренний IP: '&$IPAddress1, 10, 75, 350, 17)
GUICtrlCreateLabel('Ваше Имя компьютера: '&$compname, 10, 95, 350, 17)
GUICtrlCreateLabel('Ваше Имя Пользователя: '&@UserName, 10, 115, 350, 17)
GUICtrlCreateLabel('Информация отправляется для учета подключений', 10, 155, 350, 17)
GUICtrlCreateLabel('к распространению среди третьих лиц не предназначена', 10, 175, 350, 17)
GUICtrlCreateLabel('только для использования IT персоналом компании blabala', 10, 195, 350, 17)
$Button_1 = GUICtrlCreateButton("Подтвердить и подключится", 50, 300, 300)
$Button_2 = GUICtrlCreateButton("Настройки", 300, 10, 100)
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
Case $Button_1
#Region переменные
$sSmtpServer = "smtp.yandex.ru"
$sFromName = "[email protected]"
$sFromAddress = "[email protected]"
$sUsername = "[email protected]"
$sPassword = "11212121212"
$sSubject = "Удаленный вход на Server2016 для разработчиков"
$sBody = "Вход выполнен с внешнего ip "&" "&$PublicIP&" Имя компьютера"&" "&$compname&" Внутренний адрес"&" "&$IPAddress1&" Имя пользователя"&" "&@UserName
$sToAddress = "[email protected]"
$iIPPort = 465
$iSsl = 1
Dim $aAttach[0] ; Массив прикрепляемых файлов
Global $oMyRet[2]
Global $oMyError = ObjEvent("AutoIt.Error", "MyErrFunc")
#EndRegion
$rc = _INetSmtpMailCom($sSmtpServer, $sFromName, $sFromAddress, $sToAddress, $sSubject, $sBody, $aAttach, Default, $sUsername, $sPassword, $iIPPort, $iSsl)
If @error Then
MsgBox(0, "Error sending message", "Error code:" & @error & " Description:" & $rc)
EndIf
Func _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject = "", $as_Body = "", $a_Attach = "", $s_Importance="Normal", $s_Username = "", $s_Password = "", $IPPort = 465, $ssl = True)
Local $objEmail = ObjCreate("CDO.Message"), $i_Error = 0, $i_Error_desciption = ""
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/languagecode") = 1049
$objEmail.BodyPart.CharSet = "utf-8"
$objEmail.BodyPart.ContentTransferEncoding = "quoted-printable"
$objEmail.From = '"' & $s_FromName & '" <' & $s_FromAddress & '>'
$objEmail.To = $s_ToAddress
$objEmail.Subject = $s_Subject
; Можно отправлять в формате HTML
;$objEmail.HTMLBody = $as_Body
$objEmail.TextBody = $as_Body
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/usemessageresponsetext") = True
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = $IPPort
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password
If UBound($a_Attach) > 0 Then
For $j = 0 To UBound($a_Attach)-1
If FileExists($a_Attach[$j]) Then
$objEmail.AddAttachment ($aAttach[$j])
Else
Exit MsgBox(4096, "", "Файл " & $a_Attach[$j] & " не найден")
EndIf
Next
EndIf
If $ssl Then
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
EndIf
$objEmail.Configuration.Fields.Update
$objEmail.Fields.Update
$objEmail.Send
If @error Then
SetError(2)
Return $oMyRet[1]
EndIf
$objEmail=""
EndFunc ;==>_INetSmtpMailCom
Func MyErrFunc()
$HexNumber = Hex($oMyError.number, 8)
$oMyRet[0] = $HexNumber
$oMyRet[1] = StringStripWS($oMyError.description, 3)
ConsoleWrite("### COM Error ! Number: " & $HexNumber & " ScriptLine: " & $oMyError.scriptline & " Description:" & $oMyRet[1] & @LF)
SetError(1); something to check for when this function returns
Return
EndFunc ;==>MyErrFunc
$i_PID1 =RunWait(@ComSpec & ' /C ping 23.251.81.60 -f -n 1 -l 432', '', @SW_HIDE, 8)
sleep (1000)
$i_PID2 =RunWait(@ComSpec & ' /C ping 23.251.81.60 -f -n 1 -l 521', '', @SW_HIDE, 8)
sleep (1000)
$i_PID3 =RunWait(@ComSpec & ' /C ping 23.251.81.60 -f -n 1 -l 598', '', @SW_HIDE, 8)
sleep (1000)
$i_PID4 =RunWait(@ComSpec & ' /C mstsc.exe /v:23.251.81.60:4565', '', @SW_HIDE, 8)
exit
Case $Button_2
Run('notepad.exe') ; будет запущен или открыт блокнот
EndSwitch
WEnd
;Do
;Until GUIGetMsg() = $GUI_EVENT_CLOSE
Или хотя бы направьте в русло нужное
СПАСИБО!!!!!!!!!!!!