Какую версию Oracle Вы используете? Если его 10 г или больше, необходимо посмотреть на использование Объекта преобразования данных вместо импорта/экспорта так или иначе. Я не на 100% уверен, может ли это обработать этот сценарий, но я ожидал бы, что это могло.
Объект преобразования данных является заменой для exp/imp для 10 г и выше. Это работает очень похожее на exp/imp, кроме (предположительно, я не использую его, так как я застреваю в 9i земля), лучше.
Как MSDN говорит , правильный способ написать это
typedef void (__stdcall *MessageHandler)(const Task*);