-1

我正在使用 DLLImport 将一些函数从我的非托管 DLL 加载到 C# 中,并CharSet = CharSet.Ansi用于字符串。

当我使用 .NET 3.5 编译项目时,字符串看起来很好。但是,当我使用 .NET 4.0 进行编译时,我的字符串似乎具有错误的字符集。

怎么了?

4

1 回答 1

0

但是,我不确定您看到的问题是什么 - 请记住,C# 和 Visual Basic 的默认值已经是,而CharSet.AnsiC++ 的默认值是CharSet.None,相当于CharSet.Ansi. 所以你的声明是不必要的。

也许在不明确定义 CharSet 的情况下尝试一下,看看会发生什么。

你也可以试试CharSet.Auto,它会尝试自动选择正确的字符集

于 2012-12-06T18:38:34.293 回答