НовичокЧок |
Отправлено: 14.05.2005, 13:44 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 10
|
Проблема в следующем:
При загрузке программы необходимо проверить последний байт EXE'ка (выполняемой программы) на наличие определенного символа (например "BB" (буквы латинского алфавита), символ записываю в EXE'шник при помощи HEX-редактора). Использую следующий код:
CODE |
AnsiString ss;
ss=GetCurrentDir()+"\"+"R1.exe";
TFileStream* pr1 = new TFileStream(ss,fmOpenRead);
char Buf[1];
pr1->Position=pr1->Size-1;
pr1->ReadBuffer(Buf,1);
if ( Buf[1] == Char("»")) ShowMessage("Работает !!!");
// или
if ( Buf == ("»") ) ShowMessage("Работает !!!");
delete pr1;
|
при выполнении проги имеем следующие значения:
Buf="»"
Buf[1] ='I'
Char("»") = 'I'
все вышеперечисленные условия дают false.
Подскажите пожалуйста почему условия не дают true.
Заранее благодарен. |
|
Георгий |
Отправлено: 14.05.2005, 17:34 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
CODE | if ( Buf[0] == '»' ) ShowMessage("Работает !!!"); | |
|
** НовичокЧок |
Отправлено: 23.05.2005, 11:44 |
|
Не зарегистрирован
|
Спасибо !!! |
|