using System;
using System.Drawing;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Collections.Generic;
public static class Utilities
{
public unsafe static string MarshalStr(IntPtr p)
{
// instead of
// System.Runtime.InteropServices.Marshal.PtrToStringAuto(p)
sbyte* ps = (sbyte*)p;
int size = 0;
for (; ps[size] != 0; ++size)
;
return new String(ps, 0, size);
}
}