Как импортировать TypeLib как безопасный вызов или стандартный вызов в Delphi 2010 - PullRequest
4 голосов
/ 12 января 2010

В версиях Delphi до 2010 года в среде Delphi была опция, которую можно было установить: «Все интерфейсы v-таблицы». Это изменит соглашение о вызовах при импорте библиотек типов. В 2010 году вариант ушел. Как импортировать библиотеку типов с соглашением о вызовах safecall? Я надеюсь, что в 2010 году уровень контроля может быть более детальным, чем в предыдущих версиях, но независимо от того, как мне это сделать сейчас?

Спасибо.

Ответы [ 2 ]

3 голосов
/ 24 февраля 2010

Я не пробовал использовать опцию «Все интерфейсы v-таблиц» в Delphi 2010 IDE. Это было определенно сломано в D2009.

Вы можете использовать инструмент командной строки tlibimp для создания необходимых файлов _tlb.pas:

tlibimp -P -Pt <tlb file>
0 голосов
/ 13 января 2010

Если вы посмотрите на полученный сгенерированный файл .ridl, вы увидите, что методы имеют _stdcall.

Теперь у вас более высокий уровень контроля с использованием файлов .ridl.

...