Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 30.05.2011
Сообщений: 12

Проверка программы, запущенной через Shell

17.02.2012, 19:03. Показов 1833. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я использую внешнюю программу для расчётов определённого вида, при этом запускаю её через Shell(). Как мне узнать, завершила ли она работу? (после этого я буду подгружать файл с данными)

Заранее спасибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.02.2012, 19:03
Ответы с готовыми решениями:

Как определить IP-компьютера из запущенной VB программы?
как определить IP-компьютера из запущенной VB программы

Как масштабировать картинку в режиме запущенной программы
как маштабировать картинку в режиме ЗАПУЩЕННОЙ программы чтобы ДО________________________________ПОСЛЕ

Как из программы управлять другой, уже запущенной программой
Добрый день всем! Просьба не пинать если эта тема уже была.. Пишу Loader на VB 6. функции: 1. Проверка путей, файлов + 1....

1
6 / 6 / 3
Регистрация: 17.10.2007
Сообщений: 1,119
17.02.2012, 22:53
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
24
25
26
27
Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
 
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessID As Long) As Long
 
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
 
Const SYNCHRONIZE = &H100000
Const WAIT_TIMEOUT = &H102
 
Public Sub ShellAndWait(CommandLine As String)
 
   Dim dwProcessID As Long
   Dim hProcess As Long
    
   dwProcessID = Shell(CommandLine, vbNormalFocus)
    
   If dwProcessID <> 0 Then
      hProcess = OpenProcess(SYNCHRONIZE, False, dwProcessID)
      If hProcess <> 0 Then
         Do While WaitForSingleObject(hProcess, 100) = WAIT_TIMEOUT
            DoEvents
         Loop
         CloseHandle hProcess
      End If
   End If
  
End Sub
Успехов
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.02.2012, 22:53
Помогаю со студенческими работами здесь

Отслеживание закрытия внешней программы запущенной из моего проекта
Где то затрагивалась иема по поводу отслеживания закрытия внешней программы запущенной из моего проекта - но не могу найти.

Запуск через Shell
Как сделать запуск данной команды через Shell (Memory - переменная): C:\Program Files\Java\jre7\bin\javaw.exe&quot;&quot; -XmsMEMORYM...

Запуск MS Word через функцию Shell
Всем доброго времени суток. Нужно открыть документ *.doc при помощи Word. Почему-то функция Shell упорно отказывается это делать. Строка...

Проверка на наличие запущенной программы каждые Н секунд в PowerShell
Попытка номер 3. Пытался сделать через смд, там был определенный недочет. Теперь через ПС. Проверка на наличие файла - Есть - закрываю все....

Доступ к файлу в локальной сети из программы запущенной через браузер
Столкнулся с проблемой, которую даже не имею понятия как решать. Моя программа запускается Веб аппликацией с помощью VB script. Программа...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru