Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.11;
Скачать: CL | DM;

Вниз

Распаковать буфер   Найти похожие ветки 

 
Anatoliy   (2004-06-24 14:24) [0]

Помогите распаковать буфер. У меня есть указатель на буфер, структура данных описана на С++ так:

typedef BOOLEAN DDKAPI
(*PPARALLEL_TRY_ALLOCATE_ROUTINE)(
IN PVOID TryAllocateContext);

typedef VOID DDKAPI
(*PPARALLEL_FREE_ROUTINE)(
IN PVOID FreeContext);

typedef ULONG DDKAPI
(*PPARALLEL_QUERY_WAITERS_ROUTINE)(
IN PVOID QueryAllocsContext);

typedef struct _PARALLEL_PORT_INFORMATION {
PHYSICAL_ADDRESS OriginalController;
PUCHAR Controller;
ULONG SpanOfController;
PPARALLEL_TRY_ALLOCATE_ROUTINE TryAllocatePort;
PPARALLEL_FREE_ROUTINE FreePort;
PPARALLEL_QUERY_WAITERS_ROUTINE QueryNumWaiters;
PVOID Context;
} PARALLEL_PORT_INFORMATION, *PPARALLEL_PORT_INFORMATION;


В буфере структура PARALLEL_PORT_INFORMATION.

Чег-то у меня на Паскале не получается ее грамотно описать..


 
Ega23 ©   (2004-06-24 14:26) [1]

PHYSICAL_ADDRESS
PPARALLEL_TRY_ALLOCATE_ROUTINE
PPARALLEL_FREE_ROUTINE
PPARALLEL_QUERY_WAITERS_ROUTINE

Где описания этих типов?


 
Anatoliy   (2004-06-24 14:32) [2]

typedef
BOOLEAN
(*PPARALLEL_TRY_ALLOCATE_ROUTINE)(
   IN PVOID  TryAllocateContext
   );

typedef
VOID
(*PPARALLEL_FREE_ROUTINE)(
   IN PVOID  FreeContext
   );

typedef
ULONG
(*PPARALLEL_QUERY_WAITERS_ROUTINE)(
   IN PVOID  QueryAllocsContext
   );

PHYSICAL_ADDRESS  - не знаю.


Думал что-то стандартное.

Детально на http://www.osr.com/ddk/ddk2.htm


 
Anatoliy   (2004-06-24 14:35) [3]

Простите, да не ту ссылку, http://www.osr.com/ddk/parallel/cisspd_9qk2.htm


 
Ega23 ©   (2004-06-24 14:54) [4]

Что-то я не могу найти в хидерах что такое PUCHAR


 
Anatoliy   (2004-06-24 15:06) [5]

UCHAR это что-то типа unsigned char (?) или Byte в Дельфи. Во всяком случае я так уже распаковывал и прошло. А PUCHAR не знаю. Может указатель на UCHAR?

Особенно меня волнует PPARALLEL_QUERY_WAITERS_ROUTINE, мне как-то надо будет с ней работать.


 
Ega23 ©   (2004-06-24 15:39) [6]

Нашёл,
вот строчка из ntdef.h
typedef UCHAR *PUCHAR;


 
Anatoliy   (2004-06-24 15:48) [7]

Спасибо, а то у меня ведь даже DDK нету, тягаю хидеры по одному из Нета. А как потом работать с PPARALLEL_QUERY_WAITERS_ROUTINE, не подскажете? Большое спасибо что столько времени уделяете.


 
Ega23 ©   (2004-06-24 15:59) [8]

typedef
ULONG
(*PPARALLEL_QUERY_WAITERS_ROUTINE)(
  IN PVOID  QueryAllocsContext
  );

Это на CallBack похоже...
Признаюсь честно, в С не силён, опыт программирования на нём небольшой.

DDK можно с microsoft.com скачать, если мне память не изменяет.
Могу на ftp какой-нибудь залить.


 
Anatoliy   (2004-06-24 16:09) [9]

Действительно похоже. Как нибудь его из Дельфи можно вызвать? Мне нужен результат этой функции и все. Сколько там этих WAITERS.  Для этого и всю структуру тяну.

DDK на microsoft.com конечно же искал. Но что-то там они поменяли вроде-бы, и я не нашел пока. Если куда-нибудь сольете, я втяну.


 
Ega23 ©   (2004-06-24 16:16) [10]

Если куда-нибудь сольете, я втяну.

"Куда-нибудь" слить не могу, т.к. до наших институтских серверов "извне" не достучаться. Давай адрес, юзернейм/пассворд, и чтобы 70 Мб свободных было.

Или, как вариант, могу на мыло все хидеры выслать.


 
Anatoliy   (2004-06-24 16:38) [11]

Я сейчас договариваюсь насчет "адреса, юзернейм/пассворд, и чтобы 70 Мб свободных было". Тут где я нахожусь, тоже все закрыто, но я прошу, может ненадолго откроют.

А какая у тебя версия пакета?


 
Ega23 ©   (2004-06-24 16:50) [12]

есть для 2000, есть для NT 4


 
Anatoliy   (2004-06-24 16:58) [13]

Я на 2000. А там какие-то версии есть?


 
Ega23 ©   (2004-06-24 17:03) [14]

Я на 2000. А там какие-то версии есть?

Не знаю. Вроде есть какие-то. Не парился никогда по этому поводу.


 
Anatoliy   (2004-06-24 17:27) [15]

Значит место будет, я попросил знакомого, он обещался помочь, жду что позвонит и скажет куда можно згрузить.

А если суммировать насчет буфера, какой нибудь код получился? А то надо мне двигаться дальше, сам не знаю куда теперь :).


 
Anatoliy   (2004-06-24 18:15) [16]

Если не трудно то сюда:

 ftp.klast.com
 login: lv_vova@klast.com
 password: abof4v

Спасибо за помощь.


 
Anatoliy   (2004-06-24 18:48) [17]

Я написал новый пароль тебе на мыло. (Без спросу, правда) :)


 
Ega23 ©   (2004-06-24 19:12) [18]

Хорошо, завтра к 13:00 залью. С этой работы не могу - режим :-)


 
Anatoliy   (2004-06-25 13:22) [19]

Добрый день. А ты можеш сообщить когда зальеш? Чтобы сразу прикрыть..


 
Ega23 ©   (2004-06-25 13:32) [20]

Я через час, максимум полтора пойду на другую работу, там поставлю качаться. А дальше - всё от скорости зависит. :о)


 
Anatoliy   (2004-06-25 13:36) [21]

Ок, спасибо



Страницы: 1 вся ветка

Текущий архив: 2004.07.11;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.044 c
14-1087991370
AlexG
2004-06-23 15:49
2004.07.11
Еще вопрос про сжатие...


1-1088003458
tria
2004-06-23 19:10
2004.07.11
Как сделать, чтобы вид окон под ХР не портился?


6-1084492318
Andrei82
2004-05-14 03:51
2004.07.11
Работа с HTML в Delphi


14-1087569243
cf
2004-06-18 18:34
2004.07.11
;)


1-1088168029
oleg_
2004-06-25 16:53
2004.07.11
А можно ли opendialog превратить в createdialog