Поскольку вы можете вызывать P / для чего угодно, вы можете создать собственную библиотеку c / c ++, которая запускает vm и делает все, что вам нужно, а затем вызывает для нее методы из c #.
Если вы попытаетесь разместить материал пользовательского интерфейса, то, вероятно, было бы полезно что-то вроде jnbridge, вместо того, чтобы пытаться свернуть все это самостоятельно.