我需要使用这个(非托管)C++ 库。其中一种方法具有 wchar_t* 作为参数。尝试在 C# 中使用它,但我所有的尝试都导致错误代码“无效参数”。
我为它写了一个托管的 C++ 包装器——同样的问题。现在我比较了我的 C++ 包装器和库附带的本机 C++ 示例中的参数值。我看到的唯一显着区别是我的托管 C++ 中的 NUL 是“0 L''”(Visual Studio watch),而非托管示例中的 NUL 只是“0”。它们都具有相同的值... 0。
这真的是问题吗?(我尝试手动将该字符设置为“0”但得到相同的结果)如果是,我该如何解决?
编辑:图片: http: //img6.imageshack.us/img6/5977/comparisonofvalues.png 好的,左侧是我的代码(托管 C++),右侧是示例(非托管 C++)。事实上,右边的工作,左边的不是(函数拒绝参数)。我认为问题在于第 17 个字符 - NUL。还有什么想法吗?