· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.HELHEIM —› Не работает процедура из dll-ки…

Посл.отвђт Сообщенiе


Дата: Июн 18, 2004 12:10:43

В программе используются функции из библиотеки, все работает нормально, кроме одной функции. Может я чего не так делаю???


Дата: Июн 18, 2004 12:26:23

NaZGuL
Может я чего не так делаю???
Возможно :)


Дата: Июн 18, 2004 14:47:50

Вот код ...

invoke RARSetCallback, hArcData, offset CallbackProc, 2
mov HeaderData.CmtBuf,0

.WHILE TRUE
invoke RARReadHeader, hArcData,addr HeaderData
mov RHCode,ax
.BREAK .if RHCode != 0
invoke lstrcat,addr m15,addr HeaderData.FileName
invoke RARProcessFile,addr hArcData, RAR_TEST, 0, 0
mov PFCode,ax

.if PFCode == 0
invoke MessageBox,hWnd,0,0,MB_OK
.else
invoke OutProcessFileError,PFCode
.Break
.endif
.endw

Ошибка вылезает в строке
invoke RARProcessFile,addr hArcData, RAR_TEST, 0, 0
почему не пойму...


Дата: Июн 18, 2004 15:10:00 · Поправил: Kozyr

NaZGuL
Так чуть лучше, но все еще не понятна природа ошибки (не приведен полный диагноз).

Могу предположить, что нужно убрать addr перед hArcData.
invoke RARProcessFile, hArcData, RAR_TEST, 0, 0 


Дата: Июн 18, 2004 15:48:32

Суть ошибки мне самому не понятна. Я пробовал и без addr и с addr, разница лишь в одном прога не виснит, а просто вылетает с ошибкой. Давай я залью весь исходник, может поможет... (в исходнике нет UnRar.dll она весит 175 kb)

631330706__UnRAR.rar


Дата: Июн 18, 2004 16:52:19 · Поправил: PavPS

Не мучайся. Открой UnRar.dll в IDA и посмотри чё она (ф-я)делает с какими параметрами. И там стразу же поймешь: где надо addr,offset или просто. Или поймай обращение к ней ч/з SoftIce , когда её юзает рабочая прога - и тоже глянь на параметра. Зачастую очень помогает


Дата: Июн 18, 2004 21:34:05

Я не такой ас штоб по кодам параметры определять :((((
И к тому же я перепробовал все параметры (с offset вообще выдает ощибку при линковке).
Кстати почти такая же прога у меня есть на Delphi ... она работает, а вот на асме нет 8-(
А так как я еще не ас (нет не то что вы подумали), то у меня нет нормального дебугера (про SoftIce я вообще молчу). Если вы мне поможете разобраться в чем дело я буду очень презнателен


Дата: Июн 18, 2004 21:52:57

Аттач мне на почту исходник дельфи и UnRar.dll (PavPS@list.ru) Пока сэссия - на выходных отдохну.


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.123