сделать dll для проги на delphi
Участников: 3
FreeBasic :: Программирование :: Общее
Страница 1 из 1
сделать dll для проги на delphi
Собственно нужно сабж.
Хочу с одним человеком заняться проектом.
А как состыковать не знаем.
Проблемы опять со строками и массивами.
Точнее, проблемы я только предвижу. Сейчас будем пытаться соеденить наши усилия.
Хочу с одним человеком заняться проектом.
А как состыковать не знаем.
Проблемы опять со строками и массивами.
Точнее, проблемы я только предвижу. Сейчас будем пытаться соеденить наши усилия.
Re: сделать dll для проги на delphi
вопервых, использовать stdcall, вовторых попробовать для строк использовать определенные в винде типы lpctstr. приведу кусок кода, определения функций
ну а экспорт функций делается так:
я на delphi не пишу, просто кое что могу прочесть из исходников.
кстати, экспорт функций, сделан в файле *.dpr, имеет ли это значение- незнаю.
поповоду массивов, тоже незнаю. а поповоду строк, спроси у этого человека, который программит на delphi, он наверное знает, что такое строки с завершающимся нулем или знает на какой тип строки в delphi указывает LPCTSTR.
самый верный способ, в заголовочных файлах отыскать этот lpctstr, а там будет все понятно.
и еще. в дельфи, функции сделанные как stdcall, в FreeBasic надо определить так:
extern "windows-ms" lib "mydll"
declare function PGetEngines alias "PGetEngines"(byval number as word) as LPCTSTR
end extern
- Код:
procedure PSpeak(Text: LPCTSTR); stdcall;
procedure PSelectEngine(EngineName: LPCTSTR); stdcall;
procedure PSelectEngineNumber(EngineNumber: word); stdcall;
function PGetEngines(number: word): LPCTSTR; stdcall;
ну а экспорт функций делается так:
- Код:
exports
{ BASE API export}
CreateSpeech,
DestroySpeech,
PSpeak,
Speak,
Pause,
Resume,
Stop;
я на delphi не пишу, просто кое что могу прочесть из исходников.
кстати, экспорт функций, сделан в файле *.dpr, имеет ли это значение- незнаю.
поповоду массивов, тоже незнаю. а поповоду строк, спроси у этого человека, который программит на delphi, он наверное знает, что такое строки с завершающимся нулем или знает на какой тип строки в delphi указывает LPCTSTR.
самый верный способ, в заголовочных файлах отыскать этот lpctstr, а там будет все понятно.
и еще. в дельфи, функции сделанные как stdcall, в FreeBasic надо определить так:
extern "windows-ms" lib "mydll"
declare function PGetEngines alias "PGetEngines"(byval number as word) as LPCTSTR
end extern
electrik- Сообщения : 391
Дата регистрации : 2008-09-02
Возраст : 43
Откуда : галактика Млечный путь, система Солнечная, планета Земля, страна россия, город Санкт Петербург
Re: сделать dll для проги на delphi
Проблемы с массивами будут. Можно поконкретнее, что именно со строками и массивами будете делать во ФриБейсике? И что надо передавать в параметрах?
vbman- Сообщения : 52
Дата регистрации : 2008-11-19
Возраст : 42
Откуда : Украина, Кировоград
Re: сделать dll для проги на delphi
Я со своим знакомым, хочу сделать прогу с плагинами.
Основная будет на делфи, но по сути это будет интерфейс, настройки и управляющий менеджер.
А весь функционал будет реализован в плагинах.
Хотелось бы, как-то связать это воедино.
Нужен некий стандартный интерфейс, чтобы прогу можно было бы расширять не только плагинами на делфи или фрибэйсике, но и сделаными другими языками.
Сейчас проект приостановлен. Мы только попытались нащупать общие точки.
Что там будет... Трудно сказать. Возможно (и очень даже) что будут строки.
На счёт массивов, списков и прочего трудно сказать, вероятнее будут просто буфера.
Основная будет на делфи, но по сути это будет интерфейс, настройки и управляющий менеджер.
А весь функционал будет реализован в плагинах.
Хотелось бы, как-то связать это воедино.
Нужен некий стандартный интерфейс, чтобы прогу можно было бы расширять не только плагинами на делфи или фрибэйсике, но и сделаными другими языками.
Сейчас проект приостановлен. Мы только попытались нащупать общие точки.
Что там будет... Трудно сказать. Возможно (и очень даже) что будут строки.
На счёт массивов, списков и прочего трудно сказать, вероятнее будут просто буфера.
FreeBasic :: Программирование :: Общее
Страница 1 из 1
Права доступа к этому форуму:
Вы не можете отвечать на сообщения
|
|