给出此P / Invoke:
[DllImport(DotNetWrapper,CharSet = CharSet.Ansi,CallingConvention = CallingConvention.StdCall)]
private static extern int DENTRIXAPI_RegisterUser([
MarshalAs(UnmanagedType.LPStr)]string szKeyFilePath);
我在szKeyFilePath
行收到警告:
警告CA2101-为P / Invoke字符串参数指定封送处理
但是我是?这是一个需要char
字符串的ANSI API,所以这是正确的。如果我按编辑器的需要将其更改为UnmanagedType.LPWStr
,它肯定会损坏。
我为什么收到此警告?