Информация об изменениях

Сообщение Re: Получения адреса секции в msvc от 16.10.2018 10:08

Изменено 16.10.2018 10:12 Pavel Dvorkin

Re: Получения адреса секции в msvc
Здравствуйте, reider, Вы писали:

R>Есть ли более человеческий способ?


А такое не пойдет ?

#pragma data_seg(".1111")
int x = 5;
#pragma data_seg()

int main()

{
    int * px = &x;
}


Иными словами, взять указатель на первую переменную в секции. Для надежности можно сбросить 12 младших бит в указателе, хотя (сейчас попробовал) они и так сброшены.
Re: Получения адреса секции в msvc
Здравствуйте, reider, Вы писали:

R>Есть ли более человеческий способ?


А такое не пойдет ?

#pragma data_seg(".1111")
int x = 5;
#pragma data_seg()

int main()

{
    int * px = &x;
}


Иными словами, взять указатель на первую переменную в секции. Для надежности можно сбросить 12 младших бит в указателе, хотя (сейчас попробовал) они и так сброшены.

Кстати, ты зря думаешь, что hInstance = 0x00400000. Начиная с Vista, он где угодно может быть