Access memory of an external process

This is probably a long shot, but is there anything in the .Net/Mono framework that would allow Unity to have direct read/write memory access to an external process?

The background for this concept is that I think it would be pretty neat to create a visualizer and interface for Dwarf Fortress using Unity.

I would imagine that this could be possible with a platform specific plugin. However, that would require Unity Pro. Thus, I’m looking for a way to do it with Mono, thereby allowing direct memory access from within a Unity script. I suspect that this isn’t possible, but I figured I’d still try and see if anyone knows a way.

System.Environment or better part of the classes below it which can be used to find out about running processes could offer you this access, unsure about it.

The important thing is that it is only available in standalone naturally, as any system access is blocked in the webplayer.

Requiring that this be a standalone app isn’t an issue here.

The System.Environment class doesn’t seem to do what I need. It’s more for accessing environment variables and the like; not direct memory access.

sorry, my error, meant System.Diagnostics, as a starting point (MSDN + Google as the path after likely)

So far, I can’t find what I’m looking for in System.Diagnostics.

I don’t believe there is any .net equivalent to the relevant api calls. They’re all in kernel32.dll.

You would need to use Unity Pro and a C++ plugin.