Создание диалогового окна в WSH

Windows Script Host (WSH), WMI, vbs скрипты и т.д. Создание и применение скриптов.

Модератор: Модераторы

Новый участник
Сообщения: 6
Зарегистрирован: 05 фев 2005, 16:20
Откуда: Odesa, Lviv

Сообщение Yola » 05 фев 2005, 16:26

Как бы мне в WSH создать окошко с кнопочками и лейбочками? Типа нужно написать, небольшой инсталлер...

Активный пользователь
Сообщения: 243
Зарегистрирован: 30 июн 2004, 16:18
Откуда: Кировоград (Украина)

Сообщение Valeriy » 05 фев 2005, 23:29

Yola
WshShell.Popup
Подробности найдешь в справке.
C уважением, Валерий

Новый участник
Сообщения: 16
Зарегистрирован: 11 фев 2005, 00:37

Сообщение asd_rojd » 11 фев 2005, 00:44

Я бы посоветовал ещё и InputBox () тоже может понадобится
Valeriy ты пишеш ему посмотреть в справку, вопрос в какую справку? если можно скачать то лучше полную ссылку и желательно на русском :) или разберусь с английским

Активный пользователь
Сообщения: 243
Зарегистрирован: 30 июн 2004, 16:18
Откуда: Кировоград (Украина)

Сообщение Valeriy » 11 фев 2005, 09:50

http://www.microsoft.com/downloads/deta ... laylang=en

Материал опубликован в резделе Windows Script Host (WSH)
C уважением, Валерий

Новый участник
Сообщения: 4
Зарегистрирован: 13 янв 2005, 03:47

Сообщение genesis » 03 мар 2005, 14:01

В свое время после моих точно таких же отчаянных воплей по поводу отсутствия компактной и полной инфы по WSH один сердобольный чел кинул в меня ссылочкой:
http://valeo-shkola.kiev.ua/JSBook/?obj ... .htm&dir=6

Попробуйте и может жизнь покажется не такой WSHнутой..:)

Администратор
Сообщения: 3444
Зарегистрирован: 19 дек 2003, 13:36
Откуда: Москва

Сообщение domovoy » 03 мар 2005, 14:14

Цитата
Valeriy ты пишеш ему посмотреть в справку, вопрос в какую справку?
[/quote]

Посмотри заодно вот этуTechNet Script Center Sample Scripts Очень дельная вещь
Правильно заданный вопрос - это уже половина ответа.

Новый участник
Сообщения: 12
Зарегистрирован: 31 май 2005, 16:42

Сообщение xgmann » 01 июн 2005, 12:29

Пишем так:

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<title>Installer</title>
<HTA:APPLICATION
ID="Ir1"
APPLICATIONNAME="Installer"
SCROLL="yes"
SINGLEINSTANCE="yes"
WINDOWSTATE="normal"
MAXIMIZEBUTTON="yes"
NAVIGABLE="yes"
CONTEXTMENU="yes"
caption="yes"
INNERBORDER="no"
SELECTION="yes"
SHOWINTASKBAR="yes"
SYSMENU="yes"
WINDOWSTATE="no"
APPLICATION="no"
BORDER="dialog"
BORDERSTYLE="sunken">

а далее, как для простой веб страницы, используя css, dhtml, javascript, vbscript, wsh, wmi, ado и прочии ActiveX без! ограничений и предупреждений, только сохранить нужно как, например installer.hta и запускайте себе, пожалуйста, без всяких там сложных Win API, C++ и т. д.

Пример списка служб на машинах в сети (наличие домена и соответствующих прав - обязательно):

<html>
<!--Пример применения нта- приложения. Языки: vbscript, javascript.
Технологии: ADSI, DHTML
2005, Валов Александр
-->
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Service</title>
<HTA:APPLICATION
ID="In"
APPLICATIONNAME="Installer"
SCROLL="no"
caption="yes"
INNERBORDER="no"
SELECTION="yes"
SHOWINTASKBAR="yes"
SYSMENU="yes"
WINDOWSTATE="no"
APPLICATION="no"
BORDER="dialog"
BORDERSTYLE="sunken">

<script language=vbscript>
self.ResizeTo 720,300
self.MoveTo 200,100

Sub DomComputer()
Set WshNetwork = CreateObject("WScript.Network")
Set DComp = GetObject("WinNT://" & WshNetwork.UserDomain)
DComp.Filter = Array("Computer")
For Each LComp in DComp
dynS = dynamicComp(LComp.Name)
Next

End Sub

Sub DynService(Name)
DynS = ClearList()
Set WshNetwork = CreateObject("WScript.Network")
Set LocalServices = GetObject("WinNT://" & WshNetwork.UserDomain & "/" & Name & ",computer")
LocalServices.Filter = Array("service")
k = 0
For Each Service In LocalServices
n = "s" + CStr(k)
elmID = dynamicService(Service.Name, n, Service.Status)
k = k + 1
Next

End Sub


</script>

<script language="JavaScript">
var trigg = 0;
var keyID = new Array(1);
var val;
var i = 0;
keyID[0] = "";
keyID[1] = "";
document.onclick=changeclick;

function ClearList()
{
ListSeanse.outerHTML = '<table id="ListSeanse" style="font-size: 0.7em; border-collapse: collapse;" width="100%"></table>';
}

function dynamicService(SName, DName, Status)
{
var dRow = ListSeanse.insertRow();
var dCell = dRow.insertCell();
dCell.className = "Wahl";
dCell.id = DName;
dCell.Name = SName;
switch (Status)
{
case 1:
dCell.innerHTML = '<b>Ñòîï -&nbsp;</b>' + SName;
break;
case 4:
dCell.innerHTML = '<b>Ïóñê -&nbsp;</b>' + SName;
break;
case 7:
dCell.innerHTML = '<b>Ïàóçà -&nbsp;</b>' + SName;
break;
}
dCell.mycolorcool = "tt";

}



function changeclick()
{
var srcem = event.srcElement;
if(srcem.mycolorcool == "tt")
{
tempKey = event.srcElement.id;
keyID[i] = event.srcElement.id;
switch (trigg)
{
case 0 :
srcem.style.backgroundColor="buttonface";
srcem.style.fontWeight = "normal";
srcem.style.borderTop="1px dotted black";
srcem.style.borderBottom="1px dotted black";
srcem.style.textAlign = "left";
break;
case 1 :
srcem.style.backgroundColor="#E3E3E2";
srcem.style.fontWeight = "bold";
srcem.style.borderTop="2px groove black";
srcem.style.borderBottom="2px groove black";
srcem.style.textAlign = "center";
break;
}
if((keyID[0] != "" && keyID[1] != "") && (keyID[0] != keyID[1]))
{
val = (i == 0)? 1: -1;
eval(keyID[i + val] + '.style.backgroundColor="buttonface"');
eval(keyID[i + val] + '.style.fontWeight = "normal"');
eval(keyID[i + val] + '.style.borderTop="1px dotted black"');
eval(keyID[i + val] + '.style.borderBottom="1px dotted black"');
eval(keyID[i + val] + '.style.textAlign = "left"');
eval(keyID[i] + '.style.backgroundColor="#E3E3E2"');
eval(keyID[i] + '.style.fontWeight = "bold"');
eval(keyID[i] + '.style.borderTop="2px groove black"');
eval(keyID[i] + '.style.borderBottom="2px groove black"');
eval(keyID[i] + '.style.textAlign = "center"');

}
i++;
if(i > 1)
{
i = 0;
}
}
trigg = (trigg == 0)? 1: 0;
}

function dynamicComp(Temp)
{
var opt = document.createElement("option");
opt.value = Temp;
opt.text = Temp;
document.all.D1.add(opt);
}

</script>
<style>
.Wahl
{
cursor: hand;
border-top: 1px dotted gray;
border-bottom: 1px dotted gray;
}
.cont
{
position: absolute;
visibility: hidden;
}
.contV
{
position: absolute;
visibility: visible;
}

</style>
</head>

<body OnSelectStart="javascript: event.returnValue=false;">

<table border="0" width="650" height="222" bgcolor="buttonface">
<form name="form1">
<tr>
<td height="222" width="250" valign="top" id="test" onclick="DomComputer()">Здесь щёлкаем</td>
<td height="222" width="150" valign="top">Компьютеры<select size="1" name="D1" style="width: 150; height: 24" class="sList" size="20" onChange="DynService(form1.D1.value)"></select></td>
<td height="222" width="250">
<div style="position: table; overflow: auto; height: 100%; width: 100%;">
<table id="ListSeanse" style="font-size: 0.7em; border-collapse: collapse;" width="100%">
</table>
</div>
</td>
</tr>
</form>
</table>
</body>
</html>


Скопируйте код и сохраните с разрешением *.hta.

Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0