kiSower
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Всем привет! Мне необходимо распаковать arc архив с отображением процесса (на delphi). Как я понимаю консольная версия здесь не пойдет, нашел unarc.dll для IS, взял две dll-ки подключил вроде бы, но вот только прога виснет при вызове функции WrapCallback из innocallback.dll. Я не знаю, раньше не работал с dll практически, подскажите как осуществить задуманное. Сразу приведу код: Код: type TFreeArcCallback = function (what: PAnsiChar; int1, int2: Integer; str: PAnsiChar): Integer; function FreeArcExtract (callback: longword; cmd1,cmd2,cmd3,cmd4,cmd5,cmd6,cmd7,cmd8,cmd9,cmd10: PAnsiChar): integer; cdecl; external 'unarc.dll'; function wrapcallback (callback: TFreeArcCallback; paramcount: integer):longword;stdcall; external 'innocallback.dll'; var Form1: TForm1; callback: cardinal; implementation {$R *.dfm} function FreeArcCallback (what: PAnsiChar; Mb, sizeArc: Integer; str: PAnsiChar): Integer; begin // Form1.Memo1.Lines.Add(string(what)); //showmessage(''); end; procedure TForm1.Button1Click(Sender: TObject); begin //showmessage(''); callback:= WrapCallback(@FreeArcCallback, 4); showmessage(''); FreeArcExtract(callback, 'x', '-o+', '-dpc:\test', '--', 'e:\test.arc', '', '', '', '', ''); end; end. | Заранее спасибо | Всего записей: 2 | Зарегистр. 20-11-2010 | Отправлено: 15:52 20-11-2010 | Исправлено: kiSower, 05:40 21-11-2010 |
|