powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Создать простую форму для вызова из CSCRIPT
8 сообщений из 8, страница 1 из 1
Создать простую форму для вызова из CSCRIPT
    #38562835
Фотография Царь в голове
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос новичка. Дайте, пожалуйста, пример создания простой формы для вызова из CSCRIPT в консоли. Пусть в ней будет, например, текстовое поле и кнопка "OK". Дальше я, думаю, смогу сам разобраться.

Зачем это нужно. Изначально ставилась задача в bat-скрипте запросить у пользователя пароль так, чтобы он не выводился на экран. Штатного средства не нашел. Вариант с CreateObject("ScriptPW.Password") в win7 не работает (копирование библиотеки из winXP не рассматривается как приемлемое решение). Сторонние программы типа editv использовать нельзя. InputBox("title", "prompt", "default") не имеет опции задания символа маскирования ввода. Пароль надо записать в переменную окружения. Вариант на Java не подходит, поскольку из-за особенностей bat-программирования не удается предоставить JRE консоль. Подозреваю, что у текстового есть что-то типа PasswordSymbol.

Спасибо.
...
Рейтинг: 0 / 0
Создать простую форму для вызова из CSCRIPT
    #38562882
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Царь в головетекстовое поле и кнопка "OK"InputBox()
...
Рейтинг: 0 / 0
Создать простую форму для вызова из CSCRIPT
    #38562883
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Царь в головеInputBox("title", "prompt", "default") не имеет опции задания символа маскирования ввода.А нафиг он нужен, если он хранится в открытом виде?
...
Рейтинг: 0 / 0
Создать простую форму для вызова из CSCRIPT
    #38562925
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Впрочем, если и правда надо...
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
Dim bPasswordBoxWait ' A required global variable 
wsh.echo "You entered:", PasswordBox("Enter your password") 

Function PasswordBox(sTitle) 
  set oIE = CreateObject("InternetExplorer.Application") 
  With oIE 
    .FullScreen = False 
    .ToolBar   = False : .RegisterAsDropTarget = False 
    .StatusBar = False : .Navigate("about:blank") 
    While .Busy : WScript.Sleep 100 : Wend 
    With .document 
      With .ParentWindow 
        .resizeto 400,100 
        .moveto .screen.width/2-200, .screen.height/2-50 
      End With 
      .WriteLn("<html><body bgColor=Silver><center>") 
      .WriteLn("<b>" & sTitle & "</b><br>") 
      .WriteLn("Password <input type=password id=pass><button id=but0>Submit</button>") 
      .WriteLn("</center></body></html>") 
      With .ParentWindow.document.body 
        .scroll="no" 
        .style.borderStyle = "outset" 
        .style.borderWidth = "3px" 
      End With 
      .all.but0.onclick = getref("PasswordBox_Submit") 
      .all.pass.focus 
      oIE.Visible = True 
      bPasswordBoxOkay = False : bPasswordBoxWait = True 
      On Error Resume Next 
      While bPasswordBoxWait 
        WScript.Sleep 100 
        if oIE.Visible Then bPasswordBoxWait = bPasswordBoxWait 
        if Err Then bPasswordBoxWait = False 
      Wend 
      PasswordBox = .all.pass.value 
    End With ' document 
    .Visible = False 
  End With   ' IE 
End Function 


Sub PasswordBox_Submit() 
  bPasswordBoxWait = False 
End Sub


Откуда брал - не помню.
...
Рейтинг: 0 / 0
Создать простую форму для вызова из CSCRIPT
    #38562930
Фотография Царь в голове
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaА нафиг он нужен, если он хранится в открытом виде?
Не в открытом. setlocal стирает установленный пароль после выхода из bat-скрипта.
...
Рейтинг: 0 / 0
Создать простую форму для вызова из CSCRIPT
    #38562964
Фотография Царь в голове
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina, спасибо

Это работает и даже, что удивительно, довольно-таки быстро. Можно будет использовать.

Еще хотелось бы для разнообразия обычную Windows-форму (чтобы без IE).
...
Рейтинг: 0 / 0
Создать простую форму для вызова из CSCRIPT
    #38562972
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В системе нет никаких объектов, умеющих конструировать формы.
...
Рейтинг: 0 / 0
Создать простую форму для вызова из CSCRIPT
    #38563417
Фотография Царь в голове
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: javascript
1.
oIE.document.parentWindow.focus() 


выводит окно запроса на передний план.

WScript.Sleep 100 -- не радует, конечно, но, в принципе, ну и бог с ним http://www.sql.ru/forum/images/biggrin.gif
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Создать простую форму для вызова из CSCRIPT
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]