Как подтвердить, что данный указатель метода использует соглашение о вызовах stdcall?

В моей библиотеке я вызываю методы при определенных условиях, что требует соглашения о вызове stdcall. В настоящее время я использую статическое разрешение компилятора, реализованное в виде довольно большого списка сигнатур известных методов и соответствующих перегруженных версий моей подпрограммы. Это работает, но выглядит довольно странно и не на 100% охватывает все возможные методы. Я хотел бы добавить возможность работать с указателем общего метода и утверждать правильное соглашение о вызовах, задавая RTTI. И здесь я застрял, пожалуйста, посоветуйте.

Input: code/data pair of pointers as in TMethod 
Output: boolean indicator, true if method is stdcall

Я бы предпочел использовать «классический» RTTI для создания меньшего количества зависимостей версий, однако я не могу найти какой-либо индикатор соглашения о вызовах в «классическом» RTTI ...


NB: Это вопрос НЕ СВЯЗАН с импортом внешних функций

5
задан Premature Optimization 22 May 2011 в 06:16
поделиться