ребят, вопрос есть. как P/Invoke работает? я могу как то иначе дернуть процедуру без P/Invoke например по её адресу?
Ну гляди. Ты спомощью winapi поможешь в области памяти, в которой ты можешь что-то запускать выделить память под свою программу (virtual alloc). Потом в эту область положить любую процедуру с помощью marshal.copy.
Затем с помощью marshal.getdelegateforfunctionpointer вернуть делегат твоей функции, которую за запульнул в память. И использовать этот делегат.
Но вопрос зачем, если есть pinvoke. Разве что, ты хочешь юзать прям asm команды в сыром виде.