delphi中的PwideChar在c#中用哪个类型代替?

Function ks_cmd(cmdName: PwideChar; cmdData: PwideChar): PwideChar; stdcall;

有个dll是delphi写的,代码如上,我想在c#调用这个dll,不知道声明怎么写

StringBuilder或者byte[]然后用 Encoding.编码.GetString

[DllImport(FileDLL,
CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
private static extern IntPtr ks_cmd(StringBuilder v_cmdName, StringBuilder v_cmdData);

[DllImport(FileDLL,
CharSet = CharSet.Ansi, CallingConvention = CallingConvention.StdCall)]
private static extern IntPtr ks_cmd(byte[] v_cmdName, byte[] v_cmdData);

都试过,得到不正确的值,还有哪位大哥有招?

CharSet.Ansi对应delphi的AnsiString或PAnsiChar,CharSet.Unicode对应delphi的WideString或PWideChar