Текущий архив: 2003.05.08;
Скачать: CL | DM;
Вниз
Библиотеки C++ и Delphi Найти похожие ветки
← →
Manulo (2003-04-21 16:01) [0]Собственно можно ли подключить любую сишнуб библиотеку (С++ билдера 5) к делфе? Вот :)
← →
wicked (2003-04-21 16:07) [1]имхо можно.... почти.... :)
← →
Manulo (2003-04-21 16:11) [2]Я так и подумал :) А теперь вопрос на засыпку, как? :) К билдеру делфяцкие модули прикрутил, а наоборот нет :( А нада :(
← →
JibSkeart (2003-04-21 16:28) [3]Хотелось бы и самому увидеть :))
Толко вот помойму ентого сделать нельзя
← →
Manulo (2003-04-21 16:32) [4]А это плохо... Здаёться мне, что во времена ТурбоПаскаля можно было делать вставки кода на си и на асме.... На асме можно и в Делфе, а вот си....? Это плохо....
← →
Слесарь Матерящийся (2003-04-21 16:42) [5]Там проблема с расширениями имён функций.
По BCB имя на экспорт - это <Имя ф-и>+"$"+<Строка, характеризующая параметры>.
Для получения списка ф-й используйте tdump.
Для просмотра - PE explorer.
Если dll поставляется в готовом виде, используйте динамическую загрузку и импортируйте по именам, выявленным tdump.
Если пишете dll сами, можно этого не делать, но потребуются манипуляции с def файлом при сборке dll в BCB.
Если хотите узнать, как, могу рассказать.
← →
Manulo (2003-04-21 16:50) [6]
> Если dll поставляется в готовом виде, используйте динамическую
> загрузку и импортируйте по именам, выявленным tdump.
>
> Если пишете dll сами, можно этого не делать, но потребуются
> манипуляции с def файлом при сборке dll в BCB.
> Если хотите узнать, как, могу рассказать.
Фак в том, что это не *.dll, а *.h... Вот...
← →
Слесарь Матерящийся (2003-04-21 17:03) [7]А! Ну, если .h + .c или .срр, тогда никaк...
← →
Manulo (2003-04-21 17:48) [8]фак :(....
Ну собственно я вот к чему спрашивал... Скачал с MSDN Microsoft Speech SDK, а как прикантачить его к делфе, пока не придумал :( Там есть готовые библиотеки под С++ и пот VB, примеры под DHTML, а вот делфю, родную, великую и могучую, мелкософтовцы не жалуюют :(((
Если есть пару намёков (может я в чём то не прав) как использовать SDK совмесно с делфей, поделитесь, народ, не скупитесь на советы :)
← →
wicked (2003-04-21 19:06) [9]
> Скачал с MSDN Microsoft Speech SDK
так с этого надо начинать - там другой формат библиотек... даже билдер их не прожует...
разве что найти конвертеры типа coff2omf, хотя, по моему печальному опыту, они не работают.....
← →
wnew (2003-04-21 19:36) [10]Если я правильно понял, что тебя интересует, то нужно, просто руками переписывать Сишные структуры в паскалевские, к примеру так:
Си c MSDN:
typedef struct _IP_ADAPTER_INFO { struct _IP_ADAPTER_INFO* Next; DWORD ComboIndex; char AdapterName[MAX_ADAPTER_NAME_LENGTH + 4]; char Description[MAX_ADAPTER_DESCRIPTION_LENGTH + 4]; UINT AddressLength; BYTE Address[MAX_ADAPTER_ADDRESS_LENGTH]; DWORD Index; UINT Type; UINT DhcpEnabled; PIP_ADDR_STRING CurrentIpAddress; IP_ADDR_STRING IpAddressList; IP_ADDR_STRING GatewayList; IP_ADDR_STRING DhcpServer; BOOL HaveWins; IP_ADDR_STRING PrimaryWinsServer; IP_ADDR_STRING SecondaryWinsServer; time_t LeaseObtained; time_t LeaseExpires;
} IP_ADAPTER_INFO, *PIP_ADAPTER_INFO;
Превращенно в Паскаль:
time_t = int64;
PIP_ADAPTER_INFO = ^IP_ADAPTER_INFO;
IP_ADAPTER_INFO = packed record
Next : PIP_ADAPTER_INFO;
ComboIndex : DWORD;
AdapterName : array [1..MAX_ADAPTER_NAME_LENGTH+4] of Char ;
Description : array [1..MAX_ADAPTER_DESCRIPTION_LENGTH+4] of Char;
AddressLength : UINT;
Address : array [1..MAX_ADAPTER_ADDRESS_LENGTH] of Byte;
Index : DWORD;
dwType : UINT;
DhcpEnabled : UINT;
CurrentIpAddress : PIP_ADDR_STRING;
IpAddressList : IP_ADDR_STRING;
GatewayList : IP_ADDR_STRING;
DhcpServer : IP_ADDR_STRING;
HaveWins : Boolean;
PrimaryWinsServer : IP_ADDR_STRING;
SecondaryWinsServer : IP_ADDR_STRING;
LeaseObtained : time_t;
LeaseExpires : time_t;
end;
А за тем импортировать нужные тебе функции из MSDN библиотек с необходимыми параметрами.
Пример:
function GetAdaptersInfo(const pAdapterInfo : PIP_ADAPTER_INFO;const pOutBufLen : PULONG) : DWORD; stdcall; external "IPHLPAPI.DLL" name "GetAdaptersInfo";
← →
wnew (2003-04-21 19:38) [11]Хм. Там плохо получилось, текст не отформатирован. Я просто скопировал с сайта MSDN.
← →
wnew (2003-04-21 19:55) [12]Разумеется, структуру: PIP_ADDR_STRING тоже нужно превратить в паскаль и константам: MAX_ADAPTER_NAME_LENGTH, MAX_ADAPTER_DESCRIPTION_LENGTH и MAX_ADAPTER_ADDRESS_LENGTH присвоить соответствующие значения.
← →
[NIKEL] (2003-04-21 21:15) [13]wicked © (21.04.03 19:06)
> Скачал с MSDN Microsoft Speech SDK
так с этого надо начинать - там другой формат библиотек... даже билдер их не прожует...
разве что найти конвертеры типа coff2omf, хотя, по моему печальному опыту, они не работают.....
--------------------------------------------------------------------------------
прожует еще как, coff2omf и все в порядке
← →
Manulo (2003-04-22 11:34) [14]
> wnew © (21.04.03 19:36)
Спасибо, будем жевать
Страницы: 1 вся ветка
Текущий архив: 2003.05.08;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.008 c