12 / 10 / 1
Регистрация: 12.03.2012
Сообщений: 127
|
||||||
1 | ||||||
Запуск приложения из ресурсов12.03.2012, 02:15. Показов 5493. Ответов 11
Метки нет (Все метки)
Нужно реализовать запуск стороннего приложения которое лежит в ресурсах моего.
Пробовал так:
Код самого ресурса: Возможно я не от того иду... Мну нужно просто по клику запускать приложение и выходить из моей программы.
0
|
12.03.2012, 02:15 | |
Ответы с готовыми решениями:
11
Запуск приложения из ресурсов, переименование окна Запуск *.exe из ресурсов Запуск exe из ресурсов программы Локализация приложения с использованием ресурсов |
107 / 107 / 9
Регистрация: 19.12.2010
Сообщений: 417
|
|
12.03.2012, 03:33 | 2 |
Может всё-таки кто-то предложит нормальный вариант?
0
|
134 / 87 / 22
Регистрация: 28.08.2009
Сообщений: 363
|
|||||||||||||||||||||
12.03.2012, 04:50 | 3 | ||||||||||||||||||||
обычно делаю так
приложение, которое нужно стартануть, наследуется от интерфейса например
в нем реализован метод Show, который стартанет твое приложение
Добавлено через 4 минуты только сейчас мысль пришла, может тебе exe приложение надо запустить? можно так
0
|
12 / 10 / 1
Регистрация: 12.03.2012
Сообщений: 127
|
|
12.03.2012, 17:33 [ТС] | 4 |
Стороннее приложение должно хранится в ресурсах) + оно написано на плюсах
Добавлено через 2 часа 22 минуты А какой аналог memcpy в c#? Marshal.Copy? Добавлено через 5 часов 5 минут Нашёл одно решение: _ruring.info/index.php?db=so&id=305203#en но половина прог не работает ( на NtResumeThread падает ). Сейчас реализую другой способ. Проблема в плохом знании c#. Подскажите аналог memcpy
0
|
12 / 10 / 1
Регистрация: 12.03.2012
Сообщений: 127
|
|
13.03.2012, 18:15 [ТС] | 5 |
ап
)
0
|
12 / 10 / 1
Регистрация: 12.03.2012
Сообщений: 127
|
|
15.03.2012, 15:12 [ТС] | 6 |
ап
)
0
|
2756 / 2059 / 384
Регистрация: 22.07.2011
Сообщений: 7,781
|
|
15.03.2012, 15:47 | 7 |
Отражение исполняемых файлов C++ может вызвать исключение BadImageFormatException. Причина этого, вероятнее всего, в том, что компилятор C++ удаляет адреса переадресации или раздел .reloc из исполняемого файла. Чтобы сохранить адрес .reloc для исполняемого файла на языке C++, следует задать при компоновке значение /fixed:no.
Добавлено через 5 минут И вообще, могу ошибаться, но по моему загрузить в домен можно только управляемые сборки, т.к классический PE формат несколько отличается от PE NET формата, по меньшей мере он не содержит метаданных , которые анализируются при загрузки сборки.
0
|
12 / 10 / 1
Регистрация: 12.03.2012
Сообщений: 127
|
|
15.03.2012, 16:03 [ТС] | 8 |
sau
Я умею обращаться к справке.
0
|
2756 / 2059 / 384
Регистрация: 22.07.2011
Сообщений: 7,781
|
||||||
15.03.2012, 16:43 | 9 | |||||
Ну да, если сам хочешь с указателями работать, как я понял ты хочешь записать в память текущего процесса исполняемый код , а потом дергать его по адресу ?
другого гемороя. Хотя конечно интереснее запустить код программы без создания файла на диске, на С++ тупо выделяем память, пишем туда код, получаем адрес и переходим через асм инструкцию mov 0xАдресс. - интересно как такое на шарпе провернуть. Видимо что то вроде:
0
|
12 / 10 / 1
Регистрация: 12.03.2012
Сообщений: 127
|
||||||
15.03.2012, 16:51 [ТС] | 10 | |||||
sau
Держать на диске файл мне не подходит. Вот наброски:
- Скопировать PE заголовки - Скопировать секции - Обработать таблицу импорта - Получить точку входа и вызывать её Добавлено через 2 минуты Но я уже думаю реализовать либу на плюсах и её подтягивать, ибо на c# мне тяжелей)
0
|
2756 / 2059 / 384
Регистрация: 22.07.2011
Сообщений: 7,781
|
|
15.03.2012, 17:10 | 11 |
Нет уж, давайте на c# ), ибо мне тоже интересно..., все нативные структуры отражаются через маршалинг типа Marshal.PtrToStructure и тому подобное, ну или через unsafe как у вас.
https://www.cyberforum.ru/csha... 42135.html - тут основные моменты расписаны, думаю должно хватить для решения задачи.
0
|
12 / 10 / 1
Регистрация: 12.03.2012
Сообщений: 127
|
|
15.03.2012, 17:16 [ТС] | 12 |
Спасибо, приеду с работы обязательно попробую и отпишусь.
0
|
15.03.2012, 17:16 | |
15.03.2012, 17:16 | |
Помогаю со студенческими работами здесь
12
Использование ресурсов в папке приложения Как скопировать файл на диск из ресурсов приложения? Запуск exe из ресурсов Запуск exe-файла из ресурсов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи | |||||
В чем отличие между INNER JOIN и OUTER JOIN
bytestream 22.01.2025
В современных базах данных информация часто распределена между множеством взаимосвязанных таблиц, что делает операции объединения JOIN неотъемлемой частью работы с SQL. Эти операции позволяют. . .
|
Как сделать первую букву заглавной в JavaScript
bytestream 22.01.2025
JavaScript предоставляет разработчикам множество инструментов для эффективной работы с текстовыми данными. Одной из часто встречающихся задач при обработке строк является преобразование первой буквы. . .
|
Что такое Big O нотация и алгоритмическая сложность
bytestream 22.01.2025
Введение в алгоритмическую сложность
В мире разработки программного обеспечения эффективность алгоритмов играет crucial роль в создании качественных приложений. Алгоритмическая сложность. . .
|
Как решать конфликты слияния (merge) в Git
bytestream 22.01.2025
Конфликты слияния в системе контроля версий Git возникают в ситуациях, когда две или более ветки разработки содержат несовместимые изменения в одних и тех же участках кода. Эти конфликты представляют. . .
|
Как использовать регулярные выражения
bytestream 22.01.2025
Регулярные выражения представляют собой мощный инструмент для работы с текстовыми данными, который позволяет осуществлять поиск, проверку и манипуляцию строками на основе определенных шаблонов. Этот. . .
|
Как выйти из Vim
bytestream 22.01.2025
Vim (Vi IMproved) представляет собой один из самых влиятельных текстовых редакторов в истории компьютерной индустрии, эволюционировавший из своего предшественника Vi, созданного Биллом Джоем в 1976. . .
|
NoSQL базы данных: что это такое и какие существуют
bytestream 22.01.2025
В современную эпоху цифровой трансформации объемы данных растут экспоненциально, создавая новые вызовы для традиционных систем управления базами данных. NoSQL (Not Only SQL) представляет собой. . .
|
Обновление исследования от команды MCM (январь 2025 г.)
Programma_Boinc 22.01.2025
Обновление исследования от команды MCM (январь 2025 г. )
Мы продолжаем изучать молекулярные сигнатуры, связанные с раком легких, с текущим фокусом на GCM1, факторе транскрипции, участвующем в. . .
|
Как работать с Kafka в Go (Golang)
bytestream 22.01.2025
Apache Kafka представляет собой распределенную платформу потоковой передачи данных, которая произвела революцию в области обработки событий и интеграции микросервисов. Эта система, изначально. . .
|
Как использовать RabbitMQ в Go (Golang)
bytestream 22.01.2025
RabbitMQ представляет собой надежный и широко используемый брокер сообщений, который играет ключевую роль в построении современных распределенных систем и микросервисной архитектуры. В основе работы. . .
|
Как преобразовать список списков в простой список в Python
bytestream 22.01.2025
При работе с Python разработчики часто сталкиваются с необходимостью обработки сложных структур данных, среди которых особое место занимают вложенные списки. Эти структуры представляют собой списки,. . .
|
Что такое GUID / UUID и как их создать
bytestream 22.01.2025
В мире разработки программного обеспечения существует постоянная потребность в уникальной идентификации объектов, записей и ресурсов. Эта задача становится особенно актуальной в распределенных. . .
|