|
Проблема с переходом на x64 винду - Общение разработчиков - Программирование для Perfect World, общение и обсуждене разработок |
14.03.2014, 05:13
|
#1
|
|
|
|
Разведчик
|
Регистрация: 06.10.2013
Сообщений: 27
Популярность: 10
Сказал(а) спасибо: 24
Поблагодарили 12 раз(а) в 8 сообщениях
|
Проблема с переходом на x64 винду
Суть проблемы: Юзаю длл "kernel32" и функцию там "ReadProcessMemory", мой кусок кода до смены винды работал правильно, а теперь при любом адресе всегда получаю 0. Студия Vb.net 2008 expres. Просьба Помочь разобраться с проблемой.
объявляю функцию так:
Private Declare Function ReadProcessMemory Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
|
|
|
14.03.2014, 12:44
|
#2
|
|
|
|
Сержант
|
Регистрация: 11.12.2010
Сообщений: 110
Популярность: 541
Сказал(а) спасибо: 5
Поблагодарили 66 раз(а) в 39 сообщениях
|
Re: Проблема с переходом на x64 винду
Возможно, дело в конфликте размеров типов. Попробуй компилировать свою программу под x64. Как вариант, если не лень, попробуй поставить новую студию (2013), там это по дефолту.
Ещё, как вариант, нарой где-нибудь kernel32 из x86 винды.
________________
Принимаю реквесты на статьи, программы. Всё будет запилено в лучшем виде :3
|
|
|
14.03.2014, 17:06
|
#3
|
|
|
|
Главнокомандующий
|
Регистрация: 20.01.2010
Сообщений: 1,539
Популярность: 22780
Золото Zhyk.Ru: 600
Сказал(а) спасибо: 43
Поблагодарили 1,717 раз(а) в 538 сообщениях
|
Re: Проблема с переходом на x64 винду
В х64 версиях OS имеется два набора библиотек, нативные(x64) и для обратной совместимости (x86). Windows автоматически "отдает" библиотеку, в зависимости от того режима, в котором запущено приложение.
Грубо говоря, если ваше приложение работает в х64 режиме, то библиотека будет использоваться эта:
C:\Windows\System32\kernel32.dll
Если же ваше приложение работает в х86 режиме, то эта:
C:\Windows\SysWOW64\kernel32.dll
Самый простой вариант решения вашей проблемы, это принудить студию компилировать в х86 режиме. Делается это в свойствах проекта.
________________
Fireball - Быстрое снятие и загрузка скриншотов на хостинг.
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 14:17.
|
|