Почему компилятор перетасовывает константы?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
timsoft
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 181
Зарегистрирован: 18.10.2003 (Сб) 10:50
Откуда: Odessa, Ukraine

Почему компилятор перетасовывает константы?

Сообщение timsoft » 02.11.2004 (Вт) 18:00

есть несколько констант
в коде они идут так:
Код: Выделить всё
...
const s1 = "СТАРТ01"
...
const е1 = "ФИНИШ01"
...
const s2 = "СТАРТ02"
...
const е2 = "ФИНИШ02"
...


после компиляции смотрим ехе-шник и видим, что "ФИНИШ02" стоит раньше, чем "СТАРТ02"
причем картина меняется самым непредсказуемым образом при компиляциях с использованием оптимизации по скорости, размеру кода и т.д.

как бы сделать так, чтоб константы в экзешнике шли одна за другой?

Sedge
Alternative Choice
Alternative Choice
Аватара пользователя
 
Сообщения: 1049
Зарегистрирован: 16.05.2002 (Чт) 18:23
Откуда: Somewhere-In-The-Net

Сообщение Sedge » 02.11.2004 (Вт) 18:05

Хм. Как сделать я не знаю.
Но можно нескромный вопрос - а зачем?

timsoft
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 181
Зарегистрирован: 18.10.2003 (Сб) 10:50
Откуда: Odessa, Ukraine

Сообщение timsoft » 02.11.2004 (Вт) 18:08

Sedge писал(а):Хм. Как сделать я не знаю.
Но можно нескромный вопрос - а зачем?


я пользуюсь защитой, ASProtect
Он ищет эти метки в коде и шифрует блоки кода между ними.
А вот когда перепутаны старт и финиш, то нихрена не защищается
:roll:

xolod
Гуру
Гуру
 
Сообщения: 1162
Зарегистрирован: 15.01.2004 (Чт) 0:42
Откуда: Moscow

Сообщение xolod » 03.11.2004 (Ср) 17:09

К сожалению, никак. Если конечно, не хочешь написать на support@microsoft.com и попросить переписать компилятор.
З.Ы.: Он и не обязан их твоем порядке ставить, он их ставит в порядке, зависящем от ситуации (какая константа раньше запрашивается, у какой больше размер, тип и т.п.)
З.З.Ы.: Единственное - попробовать в p-code "компилить", но тогда от ASProtect толку мало.

Constant ERROR_SUCCESS deprecated. I'm so happy.
Программирование и дизайн – http://www.macrointellect.ru

codemaster
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 604
Зарегистрирован: 13.02.2004 (Пт) 13:35

Re: Почему компилятор перетасовывает константы?

Сообщение codemaster » 03.11.2004 (Ср) 17:38

timsoft писал(а):есть несколько констант
в коде они идут так:
после компиляции смотрим ехе-шник и видим, что "ФИНИШ02" стоит раньше, чем "СТАРТ02"
причем картина меняется самым непредсказуемым образом при компиляциях с использованием оптимизации по скорости, размеру кода и т.д.


Дальнейшее исп. констант? Где объявлены константы?

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 03.11.2004 (Ср) 18:15

timsoft писал(а):
Sedge писал(а):Хм. Как сделать я не знаю.
Но можно нескромный вопрос - а зачем?


я пользуюсь защитой, ASProtect
Он ищет эти метки в коде и шифрует блоки кода между ними.
А вот когда перепутаны старт и финиш, то нихрена не защищается
:roll:

Эти метки не в коде, а в данных.
Даже если ты и зашифруешь то, что между ними, код останется голым.
Изображение

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 04.11.2004 (Чт) 0:20

Шифровать VB-шный код? А как ты его вскрывать собрался? :)


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot и гости: 6

    TopList