Как обеспечить пользовательскую реализацию для внешних методов в .NET? - PullRequest
1 голос
/ 30 августа 2011

В C # модификатор extern используется для объявления метода, который реализован извне.Обычно он используется с атрибутом DllImport для вызова некоторой функции в неуправляемом коде.

Интересно, есть ли способ обеспечить пользовательскую реализацию метода extern?

Чтобы лучше понятьПроблема рассмотрим следующий вариант использования.У меня есть набор функций, реализованных в неуправляемом коде, и я хотел бы предоставить указатели на эти функции во время выполнения (во время загрузки сборки).

То же самое делает атрибут DllImport, но яЯ хотел бы предоставить указатели самостоятельно.

Ответы [ 2 ]

1 голос
/ 30 августа 2011

Это возможно, хотя вам нужно PInvoke несколько вещей (LoadLibrary и GetProcAddress - см. Ссылки ниже) ... это называется "нативный код позднего связывания" ...

Некоторые важныессылки с источником:

0 голосов
/ 30 августа 2011

Вам нужно будет использовать LoadLibrary и GetProcAddress

...