Запуск exe из 1с без записи на жесткий диск (например, используя поток в памяти?)

1. acces969 351 26.09.20 09:28 Сейчас в теме +0.5 $m
Есть приложение exe. Хранится в макете конфигурации. Для запуска приложения оно программно записывается на жесткий диск во временные файлы, запускается из 1с с переданными параметрами. Приложение в свою очередь создает файл с результатом своей работы и завершается. После завершения 1с продолжает выполнение своей части работы, обрабатывая созданный приложением файл.
Требуется исключить запись приложения exe на жесткий диск. Например, двоичные данные приложения были помещены в оперативную память и произведен запуск приложения из 1с с передачей параметров. Такое возможно?
Или альтернативные варианты, предложения.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. malikov_pro 1314 26.09.20 09:49 Сейчас в теме
(1) реализовать в виде сервиса к которому по HTTP обращается сервер 1С, пример https://infostart.ru/1c/articles/1282996/
3. acces969 351 26.09.20 09:51 Сейчас в теме
(2) К сожалению, не годится. Не везде есть доступ в Интернет, к тому же требуется передача больших объемов информации на сервер. Скажется на быстродействии.
6. papami 56 26.09.20 20:26 Сейчас в теме
(1)
А цель какая изначально? Почему на диск нельзя писать?
Приложение ваше? Может его переписать во внешнюю компоненту...тогда можно без сохранения на диск использовать.
4. PerlAmutor 130 26.09.20 10:13 Сейчас в теме
Из 1С такое сделать невозможно. Такое даже сложно реализуется с помощью обычного своего приложения, написанного на каком-нибудь С++. Для этого требуется глубокое знание WinAPI (использование недокументированных вызовов ядра системы), структуры памяти Windows, структуры заголовков (PE) исполняемых файлов. Видел такое реализовывали для вирусов, но это было еще на WindowsXP. Как сейчас обстоят с этим дела, в условиях повышенной безопасности со стороны современных ОС и антивирусов, сказать сложно.

Так что, применимо к 1С, и .exe файл и .dll файл с компонентой обязательно должны быть записаны на диск, хотя бы 1 раз и там лежать.
5. pavel06 2 26.09.20 11:40 Сейчас в теме
А если часть памяти выделена под виртуальный диск, на который и записывается?
RAMdisk другими словами.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот