Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Каковы критические отличия для программиста на C++ под x86 и x64 платформы?

408
20 июля 2011 года
Lei fang
265 / / 01.10.2005
Здравствуйте. Дело в общем темное :D
написал я враппер для одной из дллек сторонней софтины.
у себя тестил на Vista и XP обе 32 битные и на обоих работает.
отдал клиентам, пишут не стартует приложение... проверил сам через тим вьювер все на правильность. действительно так.
у клиента стоит Windows 7 64-х битная. Ничего отлаживать там конечно не возможно и это было чисто исключение, что мне предоставили доступ по тим вьюверу.

Собственно и вопрос, что может быть такого не совместимого в том что я напрогал?
у меня там ставятся хуки на АПИ функции и внутренние функции софтины.
активно используются указатели на места в памяти софтины.
278
20 июля 2011 года
Alexander92
1.1K / / 04.08.2008
1. Что значит "не стартует"? В системном журнале есть какие-то записи?
2. Какие API-функции перехватываете и чем?
408
20 июля 2011 года
Lei fang
265 / / 01.10.2005
не стратует, значит не может загрузить свою длл, для которой я сделал враппер
чтобы было понятно о чем идет речь: http://segaempire.somee.com/files/schema.jpg
до системного журнала не добрался. дело в том, что у пользователя есть большое недоверие к подобным вещам, и он мог по просту отключить меня, если б я полез дальше чем он предоставил.

перехватываю send и GetAdaptersInfo. с помощью модифицированного примера из этой темы http://forum.codenet.ru/threads/67769-Как-правильно-ставить-хук-на-GetAdatersInfo

кстати ни у кого антивирь не ругается при посещении этого форума? у меня авг про эксплойт постоянно пишет, который он заблокировал
14
20 июля 2011 года
Phodopus
3.3K / / 19.06.2008
Поставьте себе 64бит да отлаживайте.
408
21 июля 2011 года
Lei fang
265 / / 01.10.2005
так я думал есть какие-то всем известные проблемы переносимости.
к тому же я не уверен, что установка х64 винды на х86 проц соблюла бы чистоту эксперимента
к тому же задача решена и тему можно удалить... проблема оказалась совсем в другом
416
21 июля 2011 года
MaitreDesir
380 / / 02.01.2008
Цитата: Lei fang
проблема оказалась совсем в другом


В чем, если не секрет? Я просто лично сталкивался с проблемами переноса с 32 бит на 64 при перехвате GetAdaptersInfo...

408
21 июля 2011 года
Lei fang
265 / / 01.10.2005
в том что у меня было не достаточно знаний о том, как должно происходить создание кода.
на других компах банально не хватало библиотек.
выставил в visual c++ в свойствах проекта на вкладке c/c++ -> создание кода -> библиотека времени выполнения: Многопоточная (/MT)
а раньше стояло Многопоточная DLL(/MD)
мой враппер увеличился в размерах раз в 5, но стал запускаться на чужих компах не зависимо от архитектуры...

врятли ваш случай. у меня проблема не имела какого-то отношения к архитектурам.
14
21 июля 2011 года
Phodopus
3.3K / / 19.06.2008
Разрешите полюбопытствовать тогда уж (у всех кто это делал), а в чем такая популярность перехвата GetAdaptersInfo() ?
408
21 июля 2011 года
Lei fang
265 / / 01.10.2005
иногда оригинальные разработчики слишком "стараются", так что за ними приходится подправлять глупости не возможности запускать несколько сетевых приложений на одном компе
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог