Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBS/WHS/JS - Скрипт для последовательного запуска нескольких программ

Ответить
Настройки темы
VBS/WHS/JS - Скрипт для последовательного запуска нескольких программ

Аватара для skatet

Новый участник


Сообщения: 22
Благодарности: 3


Конфигурация

Профиль | Отправить PM | Цитировать


Всем привет. У вас впервые. Появилась задача - переписать в се написанное на батниках на возможностях WSH.
Кто может подсказать - необходимо в VBS написать скрипт который бы запускал поочередно одну за другой запуск программ. Перед каждым запуском необходимо спросить - запустить программу, если да то запускает, после ее выключения запускает следующую, если ответ был нет, то сразу запускает 2ю и т.д. по той же схеме.
Вот начало как вариант:
Option Explicit

' Объявляем переменные
Dim WshShell,theNotepad,Res,Text,Title
' Создаем объект WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")

Text="Запуск установки программного обеспечения" & vbCrLf & "Установка Хранителя Паролей "
Title="Установка"
' Выводим диалоговое окно на экран
Res=WshShell.Popup(Text,0,Title,vbOkCancel)
' Определяем, какая из кнопок была нажата в диалоговом окне
If (Res=vbOk) Then
Set theNotepad = WshShell.Exec("C:\Program Files\KeePass-1.08\KeePass.exe")
Else
WScript.Sleep 100




End If

или вот еще скрипт. Как я понял WshShell.Run в отличие от WshShell.Exec позволяет дождаться завершения пред программы.

Set WshShell = CreateObject("WScript.Shell")
RetCode = WshShell.Run("notepad", 1, True)
RetCode = WshShell.Run(""C:\Program Files\KeePass-1.08\KeePass.exe"", 1, True)
RetCode = WshShell.Run("notepad", 1, True)
MsgBox "Обработка завершена! Код возврата - " & RetCode

Проблема возникла при запуске программ содерж. пробелы в назв. пути, ее попытался решить """путь длинный\программа""" но в этом случае очередность не соблюдается и все программы запускаются одновременно.

Отправлено: 08:27, 16-11-2007

 

Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


skatet
Цитата skatet:
У вас впервые »
- имхо для этой темы оффтоп;
- код скрипта нужно брать в теги "CODE";
- почему количество кавычек в примере и в пояснении разное?.. так работает:
Код: Выделить весь код
Set WshShell = CreateObject("WScript.Shell")
RetCode = WshShell.Run("notepad", 1, vbTrue)
RetCode = WshShell.Run("""C:\Program Files\WinRAR\WinRAR.exe""", 1, vbTrue)
RetCode = WshShell.Run("notepad", 1, vbTrue)
Это сообщение посчитали полезным следующие участники:

Отправлено: 07:02, 17-11-2007 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для skatet

Новый участник


Сообщения: 22
Благодарности: 3

Профиль | Отправить PM | Цитировать


1 - почему для этой темы оффтоп?
2 - код скрипта нужно брать в теги "CODE - для чего?, что они позволяют?
3 - количество кавычек в примере и в пояснении разное - сорри, не заметил - работает только при 3х кавычках
4 - отлично Скрипт заработал как надо!
5 - чем отличается параметр vbTrue от True? (сам тоже поищу ответ) - дело было только в этом?
Огромной Респект!

Еще вопрос возник теперь, если с запуском программ более проблем не будет, то как теперь сделать чтоб в зависимости от необходимости установки программ, скрипт перенаправлял на установку текущей программы или на запрос установки следующей программы?

Отправлено: 09:08, 17-11-2007 | #3


Аватара для ShaddyR

Железных Дел Мастер


Moderator


Сообщения: 24527
Благодарности: 4498

Профиль | Сайт | Отправить PM | Цитировать


Цитата skatet:
почему для этой темы оффтоп? »
вероятно, это потому, что тема называется
Цитата:
CMD/BAT - нужна помощь в написании *.bat файлов »
и в названии темы ничего не сказано про VB-скрипты?

-------
[FAQ] Как определить аппаратную конфигурацию компьютера и правильно задать вопрос
-------
В благодарность за помощь нажимаем ссылочку "Полезное сообщение" внизу этого самого сообщения (подробнее). Помните: админ конфеты НЕ ПЬЁТ ;)
-------
Говори, что думаешь и думай, что говоришь! (c) || МОЙ ShaddyR.at.UA/blog - Как поменять термопасту за 100+ баксов


Отправлено: 12:05, 17-11-2007 | #4


Аватара для skatet

Новый участник


Сообщения: 22
Благодарности: 3

Профиль | Отправить PM | Цитировать


тем неменее на этом форуме много обсуждений скриптов.
Ну ладно, пойду туда..

Отправлено: 12:40, 17-11-2007 | #5


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


skatet
Цитата skatet:
Ну ладно, пойду туда »
хм... если перечисленных ниже тем мало создай свою, но тут все-таки про батники:

Хелп! Нужен скрипт на на WSH или VBS
Скрипт на VBS
VBS/WHS/JS - скрипты VBS

Цитата skatet:
как теперь сделать чтоб в зависимости от необходимости установки программ, скрипт перенаправлял на установку текущей программы или на запрос установки следующей программы?
ты же вроде сам привел пример через WshShell.Popup

Отправлено: 11:49, 19-11-2007 | #6


Аватара для skatet

Новый участник


Сообщения: 22
Благодарности: 3

Профиль | Отправить PM | Цитировать


все правильно, но:
|
| установить программу№1? |

Да нет
|
установка программы |
| |
| завершение установки | |
| |
| установить программу№2? |
и тд...

вот как надо

ммм пробелы оказ не учитываются

подстава

Отправлено: 14:42, 19-11-2007 | #7


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


skatet
не понял - выход при согласии или при отказе... если второе то можно так:
Код: Выделить весь код
Set WshShell = WScript.CreateObject("WScript.Shell")

Text="Запуск установки программного обеспечения" & vbCrLf & """Установка Хранителя Паролей"""
Title="Установка"

Res=WshShell.Popup(Text,0,Title,vbOkCancel)
If Res=vbOk Then
	Set theNotepad = WshShell.Exec("C:\Program Files\KeePass-1.08\KeePass.exe")
Else
	WScript.Quit
End If
Цитата skatet:
пробелы оказ не учитываются »
в теге CODE учитываются

Отправлено: 06:41, 20-11-2007 | #8


Аватара для skatet

Новый участник


Сообщения: 22
Благодарности: 3

Профиль | Отправить PM | Цитировать


- "установить программу №1?":
- если да, то установка программы - ожидание окончания - "установить программу №2 ?" .
если да то тоже самое для Пр№3, 4 и т.д.
- если нет - то "установить программу №2 ?"
если нет то тоже самое для Пр№3, 4 и т.д.

"установить программу №1?":
1) - если да, то установка программы - ожидание окончания - "установить программу №2 ?" .
если да то тоже самое для Пр№3, 4 и т.д.
2) - если нет - то "установить программу №2 ?"
если нет то тоже самое для Пр№3, 4 и т.д.

Отправлено: 07:59, 20-11-2007 | #9


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


skatet
ну и в чем проблема?
Код: Выделить весь код
Set WshShell = WScript.CreateObject("WScript.Shell")

If WshShell.Popup("Text1",0,"Title1",vbOkCancel)=vbOk Then WshShell.Run "notepad.exe",1,vbTrue
If WshShell.Popup("Text2",0,"Title2",vbOkCancel)=vbOk Then WshShell.Run """c:\Program Files\WinRAR\WinRAR.exe""",1,vbTrue

Отправлено: 10:06, 21-11-2007 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBS/WHS/JS - Скрипт для последовательного запуска нескольких программ

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Универсальный скрипт для упрощения автоустановки программ -AAA- Автоматическая установка приложений 8 16-12-2011 22:43
Любой язык - нужен скрипт для удаления всех файлов кроме нужных для запуска Windows XP Dark Ange1 Скриптовые языки администрирования Windows 11 07-03-2010 13:34
VBS/WSH/JS - [решено] Скрипт запуска музыки. Как исправить? Pozia Скриптовые языки администрирования Windows 1 15-11-2009 13:47
Доступ - [решено] как установить ограничения в реестре для запуска программ? Дима К. Microsoft Windows 2000/XP 13 25-10-2007 19:27




 
Переход