Тема: uudeview.dll
Показать сообщение отдельно
  #1  
Старый 17.02.2012, 15:26
ivanisimus ivanisimus вне форума
Прохожий
 
Регистрация: 17.02.2012
Сообщения: 11
Репутация: 10
Злость uudeview.dll

Здравствуйте.
Есть такая замечательная библиотека uudeview.dll
На сайте разработчика есть ее исходные коды(си), там же есть документация...
Я использую ее в своей программе, пишу на Delphi.
Все работает кроме одной функции.
UUSetBusyCallback

вот часть моего кода:
Код:
    type TUUProgress = record
           action:integer;
           curfile:array [1..256] of char;
           partno:integer;
           numparts:integer;
           fsize:int64;
           percent:integer;
           fofset:int64;
           totsize:int64;
    end;
    type PTUUProgress=^TUUProgress;

function UUSetBusyCallback(p:Pointer;  f:TCallBackBusyFunction; msec:int64): integer stdcall; external 'uudeview.dll';

function BusyCallBack(p:Pointer;pr:PTUUProgress):integer;
var test:string;
begin
  Result:=0;
  test:=Pchar(p);
    Log(test);
  /// pr???
end;


begin
....
UUSetBusyCallback(PChar('Test'),BusyCallBack,500);
....
end;
Админ: Теги, теги иеще раз теги!


Начинаю декодировать.. вызывается BusyCallBack, срабатывает Log с текстом "Test". Функция вызывается все отлично. Но прочитать "v:PTUUProgress" не получается. При проходе дебагерром, значение любого поля pr: "Inaccessible value"

Помогите пожалуйста, бьюсь не первый день. В интернете есть несколько примеров реализаций но они все то ли на си то ли на php, а вот на Delphi работать отказывается...
Ответить с цитированием