Форум программистов, компьютерный форум, киберфорум
VBScript/JScript/WSH/WMI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/40: Рейтинг темы: голосов - 40, средняя оценка - 4.73
2 / 2 / 1
Регистрация: 16.04.2016
Сообщений: 11
VBS

Закрыть экземпляр Wscript.exe после выполнения скрипта

06.10.2016, 11:47. Показов 7573. Ответов 6

Студворк — интернет-сервис помощи студентам
Как закрыть экземпляр Wscript.exe после выполнения скрипта?
Доброго времени суток! Запускаю Outlook VBS скриптом. Почтовый клиент запускается как надо, но процесс Wscript.exe остаётся. Проблемка усугубляется тем, что есть другие скрипты, которые должны работать и дальше. Как завершить текущий (данный) процесс Wscript.exe, не трогая другие? Вот мой скрипт:
Кстати, берите кому надо: этот скрипт запускает Outlook в трей.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
CONST PATH_TO_OUTLOOK = "C:\Program Files\Microsoft Office\Office14\OUTLOOK.EXE"
CONST SHOW_MAXIMIZED = 3 
CONST MINIMIZE = 1 
DIM shell, outlook 
SET shell = WScript.CreateObject("WScript.Shell") 
 
ON ERROR RESUME NEXT 
SET outlook = WScript.CreateObject("Outlook.Application") 
WScript.Sleep(100) 
outlook.ActiveExplorer.WindowState = SHOW_MAXIMIZED 
 
WHILE Err.Number <> 0 Err.Clear 
WScript.Sleep(100)
SET outlook = NOTHING 
SET outlook = WScript.CreateObject("Outlook.Application") 
outlook.ActiveExplorer.WindowState = MINIMIZE 
WEND 
 
ON ERROR GOTO 0 
SET outlook = NOTHING 
SET shell = NOTHING
 
WScript.Quit
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.10.2016, 11:47
Ответы с готовыми решениями:

Результат выполнения программы в консоли пропадает после выполнения скрипта
нужно отпарсить файл , но мне надо видеть что выводит сценарий , иначе мне его неотладить. Запускаю файл вот так python index.py

Получить результат выполнения скрипта perl во время выполнения скрипта bash
доброго времени суток. знатоки, нужна ваша помощь- подскажите как из bash-скрипта вызвать perl-скрипт, получить результат его выполнения и...

Закрыть форму после выполнения программы
Здравствуйте. В моем решении(solution) учавствуют несколько проектов(projects). 2 формы.То есть 2 исполняемых файла. Через 1 форму...

6
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
09.10.2016, 23:23
Лучший ответ Сообщение было отмечено ComSpec как решение

Решение

Попробуйте так:

Visual Basic
1
2
3
4
CONST PATH_TO_OUTLOOK = "C:\Program Files\Microsoft Office\Office14\OUTLOOK.EXE"
 
SET shell = WScript.CreateObject("WScript.Shell")
shell.Run PATH_TO_OUTLOOK, 2, false
или так:

Visual Basic
1
2
3
4
5
6
7
8
SET outlook = WScript.CreateObject("Outlook.Application")
 
ON ERROR RESUME NEXT 
Do
  Err.Clear 
  WScript.Sleep(100)
  outlook.ActiveExplorer.WindowState = 1 'MINIMIZE 
Loop While Err.Number <> 0
0
2 / 2 / 1
Регистрация: 16.04.2016
Сообщений: 11
10.10.2016, 05:05  [ТС]
Увы, не тот ни другой вариант ....
В первом варианте спотыкается на
Цитата Сообщение от Dragokas Посмотреть сообщение
shell.Run PATH_TO_OUTLOOK, 2, false
пишет что файл не найден (файл на месте конечно)
Второй вариант запускает Outlook, но процесс Wscript.exe так и остаётся работать...

Добавлено через 8 минут
Пробовал команды WScript.exit и WScript.close....
Блин, неужели у меня одного такой проблемас!
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
10.10.2016, 13:07
Цитата Сообщение от Стас111 Посмотреть сообщение
пишет что файл не найден (файл на месте конечно)
Значит неправильно указали путь.
0
2 / 2 / 1
Регистрация: 16.04.2016
Сообщений: 11
10.10.2016, 15:27  [ТС]
Путь был одинаков во всех вариантах скрипта. Копировал, перепроверял.
0
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18033 / 7736 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
10.10.2016, 16:51
Если пишет, что не найден, значит так и есть.
Путь, который указан в запускаемом скрипте, на диске не существует.

Можете сами убедиться, скопировать и вставить его в окно Win + R.
1
2 / 2 / 1
Регистрация: 16.04.2016
Сообщений: 11
11.10.2016, 15:52  [ТС]
Лучший ответ Сообщение было отмечено ComSpec как решение

Решение

"Платон мне друг, но истина дороже"
Путь одинаков во всех версиях этого скрипта, проверил и перепроверил. Но ведь вопрос не в этом. Неужто создатели VBS не предусмотрели такой простой вещи как закрытие сервера сценариев после выполнения скрипта? Или это я такой дуб?

Добавлено через 10 часов 14 минут
Dragokas, спасибо за участие, вы навели меня на правильную мысль. Сделал код, работает как надо. Процесс Wscript.exe выгружается, почтовый клиент загружается в трей и проверяет почту. Привожу с комментариями, может кому понадобиться:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Option Explicit
dim WshShell
dim OLObj 
set WshShell = WScript.CreateObject("Wscript.Shell") 
 ' Открываем Outlook. Обратите внимание, что несмотря на параметры запуска он зараза откроется
 ' в обычном окне. Путь к файлу прописывать не надо, винда типа сама знает, где расположен Outlook.
WshShell.Run "OUTLOOK.EXE", 2, false 
 ' чтобы свернуть его в трей делаем паузу в 10 сек
WScript.Sleep(10000)
Set OLObj = GetObject(,"Outlook.Application")
 ' активируем окно 
OLObj.ActiveExplorer.Activate
 ' посылаем команду свернуть
OLObj.ActiveExplorer.WindowState = 1
 ' то что Outlook сразу не сворачивается в трей - это может и к лучшему.
 ' я где то читал, что если его сразу запустить в трей, он не проверяет почту
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.10.2016, 15:52
Помогаю со студенческими работами здесь

Закрыть консоль после выполнения программы
Здравствуйте. Как сделать, чтобы консоль закрывалась после выполнения программы?

Закрыть окно fancybox после успешного выполнения
Подскажите как сделать? У меня есть форма обратной связи - всплывающее модальное окно, реализованное с помощью fancybox. Данные из этого...

Как закрыть форму сразу после выполнения процедуры
Видимо я что-то не правильно понимаю. Есть у меня 2 формы, Form1 и Form2, на From1 1 кнопка, которая открывает форму2 командой...

После выполнения всех команд закрыть процесс по PID
Помогите пожалуйста, Есть скрипт Vbs 'Запускаю появляется процесс mshta.exe нужно закрыть окно именно ads.hta так как существует и...

Фиксирование данных после выполнения скрипта
Всем добрый день! Есть 4 поля if в которые юзер вводит данные, потом нажимает кнопку и скрипт обрабатывает эти данные, НО! после...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru