Ввод строки через форму
Имеется такой скрипт:
Код:
DIM Wsh
set wsh=WScript.CreateObject("WScript.Shell")
Set oSys = CreateObject("JSSys3.Ops")
errCode = oSys.GetTextCB(str)
wsh.Run(Chr(34) & "C:\Program Files\DameWare Development\DameWare NT Utilities 7.5\DWRCC.exe" & Chr(34) & "-c: -h: -m:" & str & " -u:User -p:%Password% " )
Нужно что-бы при запуске выходила форма, куда я бы вбивал значение для %Password%, после чего он выполнялся с введенными данными.
|
Так?
Код:
Option Explicit
Dim strPassword
strPassword = InputBox("Enter password", "Password")
If Len(strPassword) <> 0 Then
WScript.CreateObject("WScript.Shell").Run _
"""%ProgramFiles%\DameWare Development\DameWare NT Utilities 7.5\DWRCC.exe""" & _
" -c: -h: -m:" & WScript.CreateObject("htmlfile").script.clipboardData.getData("Text") & _
" -u:User -p:" & strPassword
End If
WScript.Quit 0
|
Решено, благодарю
Прошу прощения, а есть возможность сделать текстовое поле "паролевым", тоесть чтобы символы вводились звездочками?
И было бы идеально убрать кнопку "Отмена" в форме :)
|
Цитата:
Цитата Jeander
Прошу прощения, а есть возможность сделать текстовое поле "паролевым", тоесть чтобы символы вводились звездочками? »
|
Пожалуй, есть. Надо написать HTA. Будет время — попробую.
Цитата:
Цитата Jeander
И было бы идеально убрать кнопку "Отмена" в форме »
|
Зачем?
|
Ответ "хочу" не подойдет?:)
|
Прошу прощения, кнопка "отмена" оказалась очень кстати
|
Цитата:
Цитата Jeander
Ответ "хочу" не подойдет? »
|
Вам — да. А остальным?
С таким посылом… Если мне не интересен сам вопрос, то вряд ли я стану заниматься его решением. Как остальные коллеги — не знаю, у каждого своё мнение на этот счёт.
Цитата:
Цитата Iska
Надо написать HTA. Будет время — попробую. »
|
Попробовал:
читать дальше »
Код:
<html id="appHTML">
<head>
<meta charset="windows-1251">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">
<title>Запуск «DameWare Mini Remote Control» с параметрами</title>
<hta:Application
Icon = "%ProgramFiles%\DameWare Development\DameWare NT Utilities 7.5\DWRCC.exe"
Id="oHTA"
ApplicationName="DameWare Mini Remote Control Executor"
Border="normal"
BorderStyle="normal"
Caption="yes"
ContextMenu="no"
InnerBorder="yes"
MaximizeButton="no"
MinimizeButton="yes"
Navigable="no"
Scroll="auto"
ScrollFlat="no"
Selection="no"
ShowInTaskbar="yes"
SingleInstance="yes"
SysMenu="yes"
Version="1.0"
WindowState="normal"
/>
<style type="text/css">
BODY {
font: x-small Verdana, Arial, sans-serif;
color: WindowText;
background-color: ButtonFace;
}
.Row{
clear:both;
}
.Left{
float:Left;
clear:none;
}
.Right{
float:Right;
clear:none;
}
.NonValid { color:FireBrick; }
#Status { font: xx-small; }
</style>
<script language="VBScript">
Option Explicit
'----------------------------------------------------------------------
Sub ExecuteDWRCC_OnClick
' Если введённые данные корректны…
If ValidateFields() Then
With document
.getElementByID("Status").innerText = "Идёт обработка…"
.getElementByID("HostName").disabled = True
.getElementByID("UserID").disabled = True
.getElementByID("Password").disabled = True
.getElementByID("ExecuteDWRCC").disabled = True
.getElementByID("tagBody").style.cursor = "wait"
End With
' Опосредованно вызываем основную процедуру обработки документа
setTimeout "ExecuteDWRCC", 0
End If
End Sub
'----------------------------------------------------------------------
'----------------------------------------------------------------------
Sub ExecuteDWRCC_OnBlur()
' При потере фокуса элементом SetOMR очистить строку статуса
' и стили элементов управления
With document
.getElementByID("Status").innerText = ""
.getElementByID("lblHostName").className = ""
.getElementByID("HostName").className = ""
.getElementByID("lblUserID").className = ""
.getElementByID("UserID").className = ""
.getElementByID("lblPassword").className = ""
.getElementByID("Password").className = ""
End With
End Sub
'----------------------------------------------------------------------
'----------------------------------------------------------------------
' Функция проверки введённых данных на корректность
'----------------------------------------------------------------------
Function ValidateFields()
ValidateFields = True
End Function
'----------------------------------------------------------------------
'----------------------------------------------------------------------
' Mini Remote Control Command Line Switches (http://support.dameware.com/kb/article.aspx?ID=300002)
'----------------------------------------------------------------------
Sub ExecuteDWRCC()
With document
CreateObject("WScript.Shell").Run _
"""" & strPath2DWRCC & """ -c: -h: " & _
"-m:" & Trim(CStr(.getElementByID("HostName").value)) & " " & _
"-u:" & Trim(CStr(.getElementByID("UserID").value)) & " " & _
"-p:""" & CStr(.getElementByID("Password").value) & """"
.getElementByID("Status").innerText = ""
.getElementByID("HostName").disabled = False
.getElementByID("UserID").disabled = False
.getElementByID("Password").disabled = False
.getElementByID("ExecuteDWRCC").disabled = False
.getElementByID("tagBody").style.cursor = "auto"
End With
End Sub
'----------------------------------------------------------------------
</script>
</head>
<body id="tagBody" scroll="auto">
<span Class="Row">
<span Class="left"><span id="lblHostName">Введите имя или IP-адрес хоста:</span></span>
<span Class="right"><input type="Text" name="HostName" value="HostName" size="40"></span>
</span>
<span Class="Row">
<span Class="left"><span id="lblUserID">Введите User ID:</span></span>
<span Class="right"><input type="Text" name="UserID" value="User ID" size="40"></span>
</span>
<span Class="Row">
<span Class="left"><span id="lblPassword">Введите пароль:</span></span>
<span Class="right"><input type="Password" name="Password" value="" size="40"></span>
</span>
<span Class="Row">
<span Class="left"><span id="lblExecuteDWRCC"></span></span>
<span Class="right"><input type="Button" name="ExecuteDWRCC" value="Запустить «DameWare Mini Remote Control»"></span>
</span>
<hr Class="Row" />
<span Class="Row">
<span id="Status"> </span>
</span>
</body>
<script language="VBScript">
Option Explicit
Dim objFSO
Dim objShell
Dim strPath2DWRCC
' Позиционирование и изменение размера окна
With window
.resizeTo tagBody.scrollWidth + 25, tagBody.scrollHeight + 32
.moveTo (.screen.availWidth - tagBody.offsetWidth) \ 2, (.screen.availHeight - tagBody.offsetHeight) \ 2
End With
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("Shell.Application")
strPath2DWRCC = objShell.NameSpace("shell:ProgramFiles").Self.Path & "\DameWare Development\DameWare NT Utilities 7.5\DWRCC.exe"
If Not objFSO.FileExists(strPath2DWRCC) Then
MsgBox "Не найден исполняемый файл «DameWare Mini Remote Control»:" & vbCrLf & vbCrLf & _
strPath2DWRCC & vbCrLf & vbCrLf & "Приложение будет закрыто.", vbOkOnly + vbCritical, _
"DameWare Mini Remote Control"
window.close
End If
' Первоначальное заполнение полей
With document
.getElementByID("HostName").value = Trim(CStr(window.clipboardData.getData("Text")))
End With
Set objShell = Nothing
Set objFSO = Nothing
</script>
</html>
Примерный вид окна:
|
Jeander, в качестве «User ID» в «DameWare Mini Remote Control» что используется?
|
Тип идентификации: "Encrypted Windows Logon"
User ID: Administrator
|
Jeander, там используются свои учётные записи, да? Не имя текущего домена/пользователя?
|
Iska, локальные учетные записи, машины не в домене
|
Jeander, я имею в виду: есть ли смысл подставлять имя текущего пользователя в соответствующее поле формы? Я сначала сделал так, потом меня смутило имя «User ID» из базы знаний DameWare, и я убрал этот функционал.
|
Iska, на удаленной машине свои у/з, отличные от пользователей на локальной машине, так что смысла нет.
|
Подскажите что делает данный скрипт?, а то что то я его запустил у себя и ничего не происходит, вписал ип, вписал админа пасс, не вышло, вписал учётку доменную и пас тоже ничего не происходит, попробовал вписать ип своей локальной машины тоже ничего не выполнят, подскажите пожалуйста, для чего это?
|
bort-747, отпишитесь автору вопроса в личку. Вряд ли он специально станет следить за этой темой.
У меня «DameWare NT Utilities» нет, а у него есть, и работает через данную форму.
|
Время: 20:50.
© OSzone.net 2001-