public static void StringToBuffer(string s, byte* b, int maxLength) { IntPtr sptr = Marshal.StringToHGlobalAnsi(s); memcpy((IntPtr)b, sptr, Math.Min(s.Length, maxLength)); Marshal.FreeHGlobal(sptr); }