Rody66 » 24.11.2011 (Чт) 21:01
Собственно, возник интерес к тому, как Chr$(CharCode) представляется в скомпилированном exe, если просматривать екзешник хекc-редактором. Например, обычная строка s = "iAny" в блокноте будет выглядеть, как i A n y, где пробел на самом деле ZC. Сперва возникла мысль сравнить как будет выглядеть s = "iAny" & Chr$(255) и s = "iAny" & Chr$(254) в exe. Но, на мое удивление, никакой разницы в именно в записи i A n y не оказалось (i<00>A<00>n<00>y<00><00><00><00><00>, где <00> - ZC). Что ж, раз такое дело, сделаю как бинарное сравнение файлов, при помощи UltraCompare, подумал я. Но не тут было. Как оказалось, при каждой компиляции, вб создает уникальный екзешник, не зависимо от того, был ли изменен исходник или нет. Причем меняется не просто пару байтов, а весьма немалое количество мест, что делает процесс сравнения крайне затруднительным. В общем, как Chr$(*) представляется в готовом exe? И как поменять текстовое значение у готового екзешника, если часть этого значения было записано используя Chr$(*) ?