Извлечение информации о функции из c ++ dll - PullRequest
1 голос
/ 11 июня 2010

У меня есть c ++ DLL и 1 программа (не код), эта программа вызывает 1 функцию из DLL, я знаю только имя этой функции, теперь все хотят вызвать эту функцию из моего приложения (C #).Возможно ли это?

Спасибо

1 Ответ

2 голосов
/ 11 июня 2010

Я предполагаю, что у вас есть только библиотека DLL, если у вас есть и файл заголовка, это будет намного проще, так как вы можете сразу перейти к выяснению, как вызвать его.

Сначала вы должны получить сигнатуру функции, чтобы вы знали аргументы и их типы. Если это C ++ DLL, вы можете получить это с помощью Dependency Walker , если это C DLL, вам, возможно, придется взглянуть на фактический код сборки, чтобы выяснить аргументы и их типы.

Если вы выясните подпись, то вы можете использовать PInvoke для вызова ее из C #, посмотрите на сайте PInvoke для получения более подробной информации и множества образцов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...