Аватар для Zuzik
298 / 256 / 57
Регистрация: 11.06.2012
Сообщений: 1,557

Запуск внешнего процесса

27.11.2014, 10:56. Показов 1668. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно сделать вот что : пользователь вводит данные в текстовое поле на сайте, данные проверяются, на их основе запускается программа в операционной системе, там где расположен сайт, далее пользователю на сайте выдается то что выдала данная программа.
Порядок действий таков примерно:
1) Ввод данных, их проверка проблем не составит.
2) Потом введенные данные передаются представлению, которое запускает программу с помощью subprocess.
Как именно реализовывать следующие 2 пункта я хз.
3) Пользователь в это время видит красивую ( или неочень красивую ) картинку, мол программа работает, ждите.
4) как только программа отработала картинка сменяется выведенными результатами работы программы.
Подскажите примерно как это нужно делать, можно хотя бы идею, реализую сам.
Как то так. Буду рад любым ответам. Очень рад.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.11.2014, 10:56
Ответы с готовыми решениями:

Запуск внешнего .exe файла и сравнение того, что он выведет в консоль
Итак, необходимо запустить .exe файл с ограничением по времени, передав ему в входные данные что-либо, потом проверив выходные файлы с...

Запуск внешнего процесса их программы
Здравствуйте. Хочу запустить внешний процесс из программы. Пишу: ProcessBuilder processBuilder = new ProcessBuilder(); ...

Запуск внешнего приложения с возможностью выделения рабочих ядер процесса
Добрый день! подскажите можно ли реальзовать следующую задачу... Необходим запуск внешней программы с возможностью выделения рабочих...

6
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
27.11.2014, 11:23
Лучший ответ Сообщение было отмечено Zuzik как решение

Решение

Это все к celery
1
529 / 432 / 159
Регистрация: 25.11.2014
Сообщений: 1,662
27.11.2014, 11:41
Лучший ответ Сообщение было отмечено Zuzik как решение

Решение

Цитата Сообщение от Zuzik Посмотреть сообщение
3) Пользователь в это время видит красивую ( или неочень красивую ) картинку, мол программа работает, ждите.
Я делал это с использованием JQuery ajax. Пользователь давит на кнопку, js-том показываю картинку, и вызываю обращение к сервису через метод load, который загружает потом HTML в нужный мне элемент на странице. Грубо, выглядит примерно так:
JavaScript
1
$('#user_details').html(ajax_load).load(query_url + "?user=" + $("#user").val());
ajax_load - это код, что отображается, пока обрабатывается запрос. query_url - это адрес, откуда данные запрашиваю.
1
 Аватар для Zuzik
298 / 256 / 57
Регистрация: 11.06.2012
Сообщений: 1,557
27.11.2014, 12:03  [ТС]
Спасибо за оперативные ответы. Celery - обязательно ознакомлюсь, но в данном случае наверное все же буду делать через ajax, потому что у меня время ожидания не слишком большое будет, да celery как я посмотрел вещь не самая маленькая, конкретно в моем случае это будет стрельба из пушки по воробьям.
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
27.11.2014, 13:11
Это все к celery
Цитата Сообщение от Zuzik Посмотреть сообщение
на их основе запускается программа в операционной системе
Если программа будет долго работать, то у тебя запрос по timeout отвалится и пользователь увидит ошибку. Тебе из view нужно её асинхронно вызывать, по этому я предложил celery.

Добавлено через 1 минуту
Цитата Сообщение от Zuzik Посмотреть сообщение
но в данном случае наверное все же буду делать через ajax
ajax это просто асинхронный вызов к серверу, то есть он не блокирует браузер, а тебе надо разобираться как асинхронно запустить код из view.
0
 Аватар для Zuzik
298 / 256 / 57
Регистрация: 11.06.2012
Сообщений: 1,557
27.11.2014, 17:11  [ТС]
tsar925, понял я. Просто надеюсь что программа будет работать не слишком долго, и хватит ajax. Но чем больше думаю, то понимаю что все таки его не хватит. Скорее всего использоваться будет celery.
0
2742 / 2341 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
27.11.2014, 19:01
Zuzik, ну как вариант можно использовать или потоки или процессы, если в celery впираться не хочешь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.11.2014, 19:01
Помогаю со студенческими работами здесь

Порождение нового процесса и запуск программы в рамках порожденного процесса
Цель работы. Изучение программных средств создания процессов, а также простейших способов обмена данными между процессами. Задание к...

Получение расположения процесса и запуск файла из директории процесса
Здравствуйте . Нужен готовый код для c# . Необходимо получит расположение процесса steam.exe , далее сохранить его в виде переменной...

Запуск процесса процесса, приложения на стороне клиента
Доброго времени суток господа программисты, помогите новичку решить вопрос, Есть Web приложение связанное с базой SQL, в базе имеются...

Запуск нового процесса в контейнере существующего процесса
Здравствуйте. Недавно задался целью запустить игру(minecraft), которая уже имеется на компьютере, с помощью кода на C#. Реализовал это с...

Прогресс внешнего процесса
Доброго времени. В общем: Имеется программа foobar2000 (плеер и конвертер). Так вот, чтобы переконвертировать музыку в нее нужно ручками...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru