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

Вниз

Помогите портировать с С++ на Delphi   Найти похожие ветки 

 
П7   (2004-11-12 13:29) [0]

Пытаюсь портировать заголовочный файл звуковой системы "Шквал". Возник вот такой вопрос:
Как вот такое

typedef unsigned int (__cdecl* squall_callback_open_t)      (const char* Name);
typedef int          (__cdecl* squall_callback_read_t)      (unsigned int Handle, void* Buffer, int Size);
typedef int          (__cdecl* squall_callback_seek_t)      (unsigned int Handle, int Position, int SeekMode);
typedef void         (__cdecl* squall_callback_close_t)     (unsigned int Handle);

перевести на Delphi?


 
Digitman ©   (2004-11-12 13:40) [1]

наверно, примерно так:

type

squall_callback_open_t = function(const Name: PChar): UINT; cdecl;

squall_callback_read_t = function(Handle: UINT; var Buffer; Size: Integer): Integer; cdecl;

squall_callback_seek_t = function(Handle: UINT; Position, SeekMode: Integer): Integer; cdecl;

squall_callback_close_t = procedure(Handle: UINT); cdecl;


 
Romkin ©   (2004-11-12 13:40) [2]

Может, так?

type
 squall_callback_open_t = function (const Name: PChar): cardinal; cdecl;
 squall_callback_read_t = function (Handle: Cardinal; var Buffer; Size: integer): integer; cdecl;
 squall_callback_seek_t = function (Handle: Cardinal; Position, SeekMode: integer): integer; cdecl;
 squall_callback_close_t = procedure (Handle: integer); cdecl;


 
Romkin ©   (2004-11-12 13:52) [3]

Нее, cardinal - лучше :))


 
Digitman ©   (2004-11-12 13:59) [4]


> Romkin ©   (12.11.04 13:52) [3]


тады уж THandle ..

мало ли каке хенделя существует, но всех их в Win можно не боясь окрестить как THandle ... куда уж понятней в таком случае, что параметр - это по логике имено хендель, а не фихзнаетчто именем Кардинала


 
Romkin ©   (2004-11-12 14:10) [5]

Да. Причем похоже, что первая функция именно THandle возвращает.
Тогда действительно, логичнее его. Кстати, это LongWord, также как и UINT.


 
П7   (2004-11-14 01:19) [6]

Ага, так это тип функции... (: Прикольно. Никогда бы не догадался... Ну, тогда дело пойдёт быстрее... (:

Спасибо за помощь... Если что, ещё чё-нибудь спрошу. (:



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

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

Наверх




Память: 0.45 MB
Время: 0.036 c
3-1098958119
Black
2004-10-28 14:08
2004.11.28
SQL сервер своими руками


9-1090961036
xdev
2004-07-28 00:43
2004.11.28
Как создать дугу между тремя точками в OpenGL


14-1100329029
gn
2004-11-13 09:57
2004.11.28
Банки борются с кардингом с помощью SMS


1-1100542247
the_ram
2004-11-15 21:10
2004.11.28
Компонет для прожега в Delphi


4-1097591069
#Мастер#
2004-10-12 18:24
2004.11.28
Скины





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский