Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.72/18: Рейтинг темы: голосов - 18, средняя оценка - 4.72
0 / 0 / 0
Регистрация: 11.07.2020
Сообщений: 90

Загрузка x64 dll из x32 программы

14.08.2020, 13:10. Показов 4323. Ответов 41
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Если какие небудь решения в такой ситуации, что можно предпринять?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.08.2020, 13:10
Ответы с готовыми решениями:

Inject dll из приложения x64 в игру x32
Как правильно производить инжет библиотеки из приложения x64 в прилоожение x32? Пробовал использовать пример из интернета, пока моё...

Bass.dll для x32 и x64 битных систем
Здравствуйте! Как сделать чтобы bass.dll работала и на x64 битных и на 32битных системах. Точнее заставить работать библиотеку...

Получение информации о бинарности (x64 - x32) dll или exe файлах
Добрых день. Появилась необходимость получения информации о разрядности dll или exe файлах (или других иных бинарных файлах) . Вопрос...

41
0 / 0 / 0
Регистрация: 25.07.2020
Сообщений: 150
22.08.2020, 23:42
Студворк — интернет-сервис помощи студентам
AndryS1, так я неё смогу запустить dll x32... мне нужно загружать и 32 и 64 dll . И всмысле если я сделаю сво прогру x64, он же не запуститься на пк x32
0
653 / 466 / 183
Регистрация: 23.04.2019
Сообщений: 1,987
22.08.2020, 23:44
Цитата Сообщение от Dhdbdb Посмотреть сообщение
он же не запуститься на пк x32
Цитата Сообщение от Dhdbdb Посмотреть сообщение
мне нужно загружать и 32 и 64 dll
на 32-битном пк условно невозможно загрузить 64-битную dll
0
0 / 0 / 0
Регистрация: 25.07.2020
Сообщений: 150
23.08.2020, 10:30
AndryS1, как бы если я сделаю прогру поставлю x64, то у пользователя x32 на пк не запустится
0
Эксперт .NET
 Аватар для Rius
13156 / 7714 / 1679
Регистрация: 25.05.2015
Сообщений: 23,506
Записей в блоге: 14
23.08.2020, 10:38
Dhdbdb, делается 2 проги и пользователь скачивает нужную ему версию. Это не очевидно?!
Миниатюры
Загрузка x64 dll из x32 программы  
0
0 / 0 / 0
Регистрация: 25.07.2020
Сообщений: 150
23.08.2020, 10:52
Rius, мда, типо об этом не знал. А может я не хочу 2 версии программы?
0
Эксперт .NET
 Аватар для Rius
13156 / 7714 / 1679
Регистрация: 25.05.2015
Сообщений: 23,506
Записей в блоге: 14
23.08.2020, 11:01
Тогда делайте только 32-битную версию. Она будет работать и на 64 в режиме совместимости, если не использует чего-то стороннего , привязанного к x64.
0
0 / 0 / 0
Регистрация: 25.07.2020
Сообщений: 150
23.08.2020, 11:23
Rius, я знаю то, что x64 придерживает x32. Теперь мне нужно загружать dll с одного приложения(если у пользователя есть оно). И в функции dll передавать аргументы, функция должна возвращать значение. И вот, если у пользователя пк x32, то я без проблем сделаю эти действия, а если у него будет система на x64, то облом. Как вы это сказали, нужно открывать x64 битный процесс, и через сокеты результатами обмениваться. Вот я прошу как нибудь реализации, ведь в инете я ничего подобного не находил
0
Эксперт .NET
 Аватар для Rius
13156 / 7714 / 1679
Регистрация: 25.05.2015
Сообщений: 23,506
Записей в блоге: 14
23.08.2020, 11:52
Цитата Сообщение от Dhdbdb Посмотреть сообщение
ведь в инете я ничего подобного не находил
Это как бы прозрачно вам намекает, что такая реализация намного сложнее, чем создание x86 и x64 версий приложения.

Зайдите в раздел загрузок сайта любой нативной программы. Там либо две версии - x86 и x64, либо только одна x86 (на x64 работает в режиме совместимости) или x64 (на поддержку x86 забили).

Добавлено через 12 минут
Если лень переписывать весь объём великого кода - вынесите вызов dll в небольшую отдельную консольную программу и её вызывайте через консоль.
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
23.08.2020, 11:59
Цитата Сообщение от Dhdbdb Посмотреть сообщение
Как вы это сказали, нужно открывать x64 битный процесс, и через сокеты результатами обмениваться. Вот я прошу как нибудь реализации, ведь в инете я ничего подобного не находил
Чего ты не находил? Как запускать процесс, или как работать с сокетами?
Что-то ты взялся за задачу которая явно на порядок выше твоего уровня. Для начала изучи хотя бы что такое процессы и как можно обмениваться данными между ними - сокеты, rpc, shared memory и т.д.
0
2735 / 890 / 331
Регистрация: 10.02.2018
Сообщений: 2,112
23.08.2020, 12:26
Если вопрос чисто практический, то можно сделать две версии программы, одна 32х битная, вторая 64х. И сделать 32х битный ланчер. Пользователь запускает ланчер, который определяет битность и запускает нужную версию вашей программы. Или просто запускает обе программы, одна из них да выполниться.
0
0 / 0 / 0
Регистрация: 25.07.2020
Сообщений: 150
23.08.2020, 17:05
oleg-m1973, как загрузить процесс, и использовать сокета я знаю. А вот как в запущенном процессе загружать dll.
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
23.08.2020, 17:18
Цитата Сообщение от Dhdbdb Посмотреть сообщение
oleg-m1973, как загрузить процесс, и использовать сокета я знаю. А вот как в запущенном процессе загружать dll.
LoadLibrary
0
0 / 0 / 0
Регистрация: 25.07.2020
Сообщений: 150
23.08.2020, 17:39
oleg-m1973, так я открою процесс, как ему передать команды для запуска dll?
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
23.08.2020, 18:03
Цитата Сообщение от Dhdbdb Посмотреть сообщение
oleg-m1973, так я открою процесс, как ему передать команды для запуска dll?
Interprocess Communications
Или просто через командную строку
0
0 / 0 / 0
Регистрация: 11.07.2020
Сообщений: 90
24.08.2020, 17:33  [ТС]
Здравствуйте всем, я ищу рабочие варианты загрузки x64 из программы x32. Мне здесь на форуме подсказали,что можно открывать x64 процесс и в нем загружать dll, в интернете ничего я не нахожу. Как это реализовать, если можно, то рабочий код. Или ругие мысли по загрузки dll x64 из программы x32.
0
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,302
24.08.2020, 18:47
Цитата Сообщение от WalStrile Посмотреть сообщение
Мне здесь на форуме подсказали,что можно открывать x64 процесс и в нем загружать dll
Открыть х64 процесс можно, а вот загружать dll нельзя

Тут можно прочитать об этом https://docs.microsoft.com/ru-... dfrom=MSDN

On 64-bit Windows, a 64-bit process cannot load a 32-bit dynamic-link library (DLL). Additionally, a 32-bit process cannot load a 64-bit DLL. However, 64-bit Windows supports remote procedure calls (RPC) between 64-bit and 32-bit processes (both on the same computer and across computers). On 64-bit Windows, an out-of-process 32-bit COM server can communicate with a 64-bit client, and an out-of-process 64-bit COM server can communicate with a 32-bit client. Therefore, if you have a 32-bit DLL that is not COM-aware, you can wrap it in an out-of-process COM server and use COM to marshal calls to and from a 64-bit process.
В общем, надо их связывать через COM сервер
0
0 / 0 / 0
Регистрация: 25.07.2020
Сообщений: 150
24.08.2020, 20:43
tooru, так есть какие недель реализации загрузки x64 dll из x32 программы

Добавлено через 1 час 20 минут
Что нету не у кого никаких идей?
0
Эксперт .NET
 Аватар для Rius
13156 / 7714 / 1679
Регистрация: 25.05.2015
Сообщений: 23,506
Записей в блоге: 14
24.08.2020, 20:44
Все идеи уже высказаны. Реализуйте. А не тролльте.
0
0 / 0 / 0
Регистрация: 25.07.2020
Сообщений: 150
24.08.2020, 21:02
Rius, какие идеи? Одна идея была, загрузить x64 процесс в нем длл, так не не рабочий
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
24.08.2020, 21:05
Цитата Сообщение от Dhdbdb Посмотреть сообщение
Rius, какие идеи? Одна идея была, загрузить x64 процесс в нем длл, так не не рабочий
С чего ты решил, что нерабочий?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.08.2020, 21:05
Помогаю со студенческими работами здесь

Создание программы в Win7 x64 и в WinXP x32
Сделал небольшой проект в делфи. Изначально делалось всё в системе Win7 x64. Сделал - всё работало. Попытался запустить на ПК с WinXP x32...

Как запустить GNU-fortran x32 на комп x32 c Win10 x64?
приходится переходить с COMPACK на gfortran. Кто-нибудь подскажет где найти сборку для gfortran под Win 10 x64, желательно с простой...

Можно ли дополнительно к установленной Windows 7 x32 установить Windows 7 x64, а затем удалить Windows 7 x32?
Хочу перейти на x64. Но сносить сразу Win 7 x32 не хочу. Хочу постепенно переехать. Пока буду ставить программы и игры на x64, буду...

x32 vs x64
Какие преимущества на данный момент у x32-битных ОС перед x64? И стоит ли ставить x64?

X32, X86, X64
У меня сейчас установлена винда 7 х32, хочу установить windows8. Я смогу установить только х32 или 86 разрядную архитектуру тоже смогу?...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru