Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Программирование "удобняшек" на VBScript

Автор: Sun Ray
Дата сообщения: 19.08.2007 16:30
Как можно "подписать" скрипт на событие создания какого-либо объекта в АД?
Автор: UNHELPMAN
Дата сообщения: 22.08.2007 14:51
Прочитал всю тему , но похожего не нашёл.
Требуется ..
Есть приложение . Пусть - Блокнот. Необходимо послать ему ряд кодов.
Цыфири - 1 4 7 9 и так далее. В цикле.
Цикл - раз 200.
Между посылками цифр интервал 5- 10 секунд .
Вся загвоздка в том , что всё должно происходить в ФОТОВОМ режиме -
Приложение запущено , затем свёрнуто. То есть - неактивно .
Таким образом классический вариант с


Цитата:
if (WshShell.AppActivate("Блокнот"))
{
WshShell.SendKeys("1");
WScript.Sleep(300);
WshShell.SendKeys("4");
WScript.Sleep(300);
WshShell.SendKeys("3");
WScript.Sleep(300);
WshShell.SendKeys("6");
WScript.Sleep(5000);
}

Не подходит.
В общем - как обойти (чем заменить) ???
Автор: MiK_85
Дата сообщения: 27.08.2007 10:32
Все же наверняка знаю, что 1С для сертификации людей использует тест, так называемые "для профессионалов". Так вот, существует ли какая-нить обработка, которая дёргает правильные ответы из подобных тестов?! Заренее благодарен...

П.С. тесты написаны на ВБ...
Автор: Tipulatoid
Дата сообщения: 04.09.2007 14:14
Возможен ли скрипт, который бы конвертил содержимое текстового файла из DOS (866) в Windows (1251) кодировку. В идеале он должен взять текст в input.txt а результат записать в output.txt
Я читал этот пост но 1-ых, он вроде только одну строку конвертит, и 2-ых я по ламерству своему не сообразил как тот код запустить - куда ему строку скармливать?
Автор: distance
Дата сообщения: 04.09.2007 16:55
Tipulatoid
само перекодирование можно сделать так

Код:
function Recode( sourceText, srcEncoding, destEncoding )
{
var adReadAll = -1;
var adTypeText = 2;

var result = "";
var strm = WScript.CreateObject("ADODB.Stream");

strm.Open();
strm.Type = adTypeText;
strm.Charset = destEncoding;
strm.WriteText(sourceText);
strm.Flush();
strm.Position = 0;
strm.Charset = srcEncoding;
result = strm.ReadText(adReadAll);
strm.Close();
return (result);
}
Автор: Tipulatoid
Дата сообщения: 04.09.2007 17:33
distance
Спасибо большое. Не могли бы эти части в готовый скрипт собрать? Так чтоб кликнул на скрипте - и результат в output.txt
Не шарю я абсолютно.
Автор: distance
Дата сообщения: 05.09.2007 11:58
distance
всё уже готово к работе. просто объединяешь все три части и сохраняешь в файл с расширением js. убедись, что рядом лежит input.txt и запускай скрипт.
Автор: Tipulatoid
Дата сообщения: 05.09.2007 15:53
distance
Ясно, спасибо; я объединял все в файл *.vbs
Автор: Malexa
Дата сообщения: 06.09.2007 12:35
Как реализовать прогрессбар при копировании файлов?
На худой конец - отображение окна "прошло столько то времени с начала запуска" ?
Автор: ViSiToR
Дата сообщения: 06.09.2007 12:49
Malexa

Цитата:
Как реализовать прогрессбар при копировании файлов?


Например так:


Код: CopyWithProgress "E:\Downloads\vista_live_cd.iso", "C:\Programms\"

Function CopyWithProgress(SourcePath, DestPath)
    Set Shell_Obj = WScript.CreateObject("shell.application")
    Shell_Obj.NameSpace(DestPath).CopyHere(SourcePath)
End Function
Автор: blackmanos
Дата сообщения: 17.09.2007 17:03

Цитата:
Народ всем привет у меня вопрос такой, есть веб страница на ней есть две кнопки обе type submit по полю name одинаковый отличаются только по value как можно выполнить submit нужной кнопки, а то на JS есть а вот как на VBS не знаю может кто подскажет??? Буду очень благодарен!!!

Отвечаю сам себе, а зачем париться через вебстраницу если можно эмулировать запросы через
Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP")
и вбивать там какую тебе надо информацию...


Автор: Tinca
Дата сообщения: 22.09.2007 19:01
Подскажите пожалуйста какие-нибудь ресурсы по изучению VBScript.
В инернете в основном попадаются статьи о веб-программировании, а про сценарии Windows ничего нет. Все ссылки на первой странице темы дохлые.
В принципе вот такого плана что-нибудь хотелось бы почитать.

http://vbrussian.com/Article.asp?ID=86

Только желательно для чайников. А то я запутался в методах, классах, функциях.
Автор: mozers
Дата сообщения: 22.09.2007 20:33
Tinca
Цитата:
ресурсы по изучению VBScript.
В инернете в основном попадаются статьи о веб-программировании
Это потому что ты в поисковой строке пишешь "VBScript", а надо писать "WSH".
Если не знаешь с чего начать - начни отсюда.
Автор: VikLabel
Дата сообщения: 27.09.2007 15:40
Есть такой скриптик (учусь):

Код:
Dim PathRAR, Input, Output
PathRAR = "C:\Progra~1\WinRAR\WinRAR.exe U -pVic -ibck"
set WSHShell = WScript.CreateObject("WScript.Shell")

Input = "C:\Documents and Settings\Vic\Application Data\Mozilla"
Output = "D:\Catalog\Интернет и сеть\Браузеры и утилиты\Firefox\BackUpSettingFf.rar"

WSHShell.Run PathRAR&" "&Output&" "&Input
Автор: KapralBel
Дата сообщения: 27.09.2007 15:49
VikLabel
У тебя после подстановки кавычки пропадают

Output = "D:\Catalog\Интернет и сеть\Браузеры и утилиты\Firefox\BackUpSettingFf.rar"
WSHShell.Run PathRAR&" "&Output&" "&Input


Надо
WSHShell.Run PathRAR&" "&chr(34)&Output&chr(34)&" "&chr(34)&Input&chr(34)
Автор: VikLabel
Дата сообщения: 27.09.2007 22:25
KapralBel
Данке шон!

Не особо важно, но хотелось бы знать для своего развития в VBScriptах
написал "обычный путь" к WinRAR:
PathRAR = "C:\Program Files\WinRAR\WinRAR.exe U -pVic -ibck"
...
...
WSHShell.Run chr(34)&PathRAR&chr(34)&" "&chr(34)&Output&chr(34)&" "&chr(34)&Input&chr(34)
Ошибка! Убирал слева, справа, добавлял - никак.
Видать не понял принцип расстановки chr(34)
Как надо сделать?

Автор: Nagual
Дата сообщения: 28.09.2007 22:56
VikLabel
Код: PathRAR="""C:\Program Files\WinRAR\WinRAR.exe"""&" U -pVic -ibck "
Input_file="""C:\Documents and Settings\Vic\Application Data\Mozilla"""
Output_file="""D:\Catalog\Интернет и сеть\Браузеры и утилиты\Firefox\BackUpSettingFf.rar"""&" "
CreateObject("WScript.Shell").Run PathRAR&Output_file&Input_file
Автор: VikLabel
Дата сообщения: 29.09.2007 21:25
Nagual
Спасибо, в книгах об этом " и этом """ никогда не читал, и даже не видел правил или не правил их расстановки. Почему аж три """?
Автор: Nagual
Дата сообщения: 01.10.2007 18:38
VikLabel
очевидно, для того, чтобы экранировать среднюю кавычку боковыми и не писать каждый раз вместо кавычки ее ANSI-код, как делал это выше KapralBel
посмотри, ты в своем коде изначально использовал " " (не могу выделить пробел )
здесь же происходит тоже самое, то есть """
иными словами тройная кавычка будет эквивалентна одной для выполняемой команды там, где это необходимо, то есть в отрезках команд, путей и т.д., содержащих пробелы и т.д.
Автор: alur2005
Дата сообщения: 19.10.2007 08:42
Подскажите можно ли с помощью скриптов проверить запущена служба или нет
например служба SpIDer Guard for Windows NT (программа DrWeb)
Автор: Nagual
Дата сообщения: 19.10.2007 09:03
alur2005

Код: Set objShellApp = CreateObject("Shell.Application")
ServiceName = "NtLmSsp"
If objShellApp.IsServiceRunning(ServiceName) Then
MsgBox "Сервис " & ServiceName & " запущен!", vbInformation
Else
MsgBox "Сервис " & ServiceName & " НЕ запущен!", vbInformation
End If
Автор: mozers
Дата сообщения: 19.10.2007 09:28
alur2005
Да. Для этого надо скачать Script Center и взять там один из 1000 скриптов
Код: strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colRunningServices = objWMIService.ExecQuery("Select * from Win32_Service")

For Each objService in colRunningServices
Wscript.Echo objService.DisplayName & VbTab & objService.State
Next
Автор: Nagual
Дата сообщения: 19.10.2007 11:18
mozers
ничего, два варианта оно надёжнее
Автор: alur2005
Дата сообщения: 19.10.2007 12:51
Nagual
mozers

спасибо все работает.
Автор: fdl
Дата сообщения: 23.10.2007 11:31
Добрый день!
Есть простой скрипт на VBS, который умеет сделать копию файла (имя которого задается в скрипте) и поместить в спец. папку.
Хотелось бы, чтобы можно было правой кнопкой мыши подсветить файл в проводнике, скажем, в выпадающем меню выбрать нужный пункт и скрипт получил бы полный путь этого файла в качестве параметра. Первое, насколько я понимаю, делается правкой в реестре (если можно, напомните какой), а вот второе требует чего-то от VBS...
Автор: Nagual
Дата сообщения: 23.10.2007 14:06
fdl
в лоб (через реестр) задачу решать неохото, но есть другой вариант, если устроит, то вот он:
обзови поприятнее свой скриптик и кинь его в "%USERPROFILE%\sendto"
после этого выделяешь нужный(е) объект(ы), в контекстном меню выбираешь "Отправить >" и отправляешь их на этот скриптик
вот, собсна, и все
Автор: mozers
Дата сообщения: 23.10.2007 14:43
fdl
Вот, чисто для примера, такое бестолковое расширение контекстного меню для файлов TXT - показывает полный путь к файлу:
test.vbs
Код: Set objArgs = WScript.Arguments
if objArgs.Count < 1 then
MsgBox [no]"Отсутствует обязательный аргумент!"[/no]
WScript.Quit
else
MsgBox objArgs(0)
end if
Автор: fdl
Дата сообщения: 23.10.2007 17:29
mozers
Спасибо, все работает!
А можно достичь, чтобы скрипту передавался %1 не в формате 8.3, а полностью?

:::Исправлено
Сам нашел
Function GetFullName(f)
    Dim fso, shellObj, file, folderObject, folderItem
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set shellObj = CreateObject("Shell.Application")
    Set file = fso.GetFile(f)
    Set folderObject = shellObj.Namespace(file.ParentFolder.Path)
    Set folderItem = folderObject.ParseName(file.Name)
    GetFullName=folderItem.Path
End Function
Автор: mozers
Дата сообщения: 24.10.2007 00:09
fdl
Все правильно. Можно и так, правда наворочено...
Только у меня в приведенном мной примере путь и без того полностью передается. Видимо дело в настройках ОС.
Автор: Sun Ray
Дата сообщения: 26.10.2007 04:07
Как на VB сделать меню для открытия программ? Подскажиет куда копать...

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475

Предыдущая тема: Работа в Delphi c CryptoApi


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.