When encoding with .net, you get some memory management, garbage collection, etc., which is why it is called managed code. Older versions are unmanageable (programmer used to manage memory)
And to keep things simple, calling from managed code to unmanaged code can be a pain.
Soulwanderer
source share