Не дискретность, а ограниченная разрядность -> ограниченная точность -> погрешность представления в заданном формате Во-первых, однажды возникнув...
Вообще-то если поставить параметр и не передавать его, то при stdcall должно быть нарушение стека при выходе из функции. А так, наличие и полное...
Но в твоем случае не обязательно занулять весь блок - достаточно самому записать 0 в первый байт выделенного блока
Ты в описание HeapAlloc заглядывал ? Флаг HEAP_ZERO_MEMORY для чего нужен - чтобы занулить выделенный блок. Иначе в нем может содержаться любой...
PS: мусор+hello
А в буфере, что должно быть ? Правильно, другая строка, заканчивающася нулем. А у тебя, что ? Мусор - вот и получай мусор :D
Ни то, ни другое. Особым образом обрабатывается только чтение после записи (STLF - store to load forwarding). Но делается это не ради какого-то...
Будет делать два
Интересно, что скрывается за "call funcadr" ? Не забывай, что call м.б. либо относительным (E8) - тогда funcadr д.б. = смещению вызываемой функции...
Rel В своем процессе просто GetModuleHandle, т.к. хэндл модуля это и есть его базовый адрес. В чужом можно через toolhelp...
Dukales Помимо погрешности вычислений еще есть погрешность представления вещественного числа, т.к. далеко не каждое дробное число можно точно...
32756 or 4 = 8004h = CALG_SHA1
А откуда 32758 взялось, если нужно 32771 = 8003h ?!
Ну как же не тот, если у тебя на картинке в #7 та же самая строка, что и я привел в #10 Я ж те толкую, что если в wsprintf передавать 4 dword'а,...
E8 - это не абсолютный call, а относительный, т.е. операнд = знаковому смещению переходника jmp myFunc относительно адреса следующей команды....
Ес-но, т.к. ты передаешь temp - постоянный адрес, а нужно значение [temp] hash db 40 dup(?) ;!!! 32 не хватает для заверш.0 hashMask...
А должно ? Надо не напрямую выводить temp в MessageBox как строку, а через wsprintf преобразовать int64 в HEX и сравнить с HashCalc'ом, например
Надо не размер буфера увеличивать, а установить templen = 64 перед вызовом CryptGetHashParam
kiber_punk Может не вылетает, а просто придуривается - прячется ;) Если да, то попробуй к своему мазохистскому арсеналу добавить такое...
Фу ты, блин, темой ошибся. И не удалишь, не отредактируешь. Не форум, а какая-то убогость ;)
Имена участников (разделяйте запятой).