DLL是C++写的,确定正确,函数需要上传vs2005中C++的const char * 形式的参数,请问C#应当提供什么格式的参数才能使用这个函数呢?目前传得打出来都是乱码。

解决方案 »

  1.   

    C++         C#
    char *      string或StringBuider
      

  2.   

    C++                C#
    char *           string或StringBuider
      

  3.   

    byte[]
    得到后尝试不同的字符集转换
    例如
    string result = Encoding.GetEncoding(936).GetString(你获取的byte数组变量);
      

  4.   

    先感谢各位了,DLL是我在vs2005下用C++写的,有个函数是要求上传一个const char *类型的参数,然后在场景中把字符打出来,我同样在vs2005下用mfc单文档写了一个检验程序调用这个DLL是没有问题的,不过客户使用的是C#,打出来就成乱码了。C#我不熟,想请问大家这是什么情况?跟编码什么的有关系么?
      

  5.   

    据说C#默认是ANSI编码,跟Unicode不兼容?
      

  6.   

    c#默认是ansi,不过也可用unicode的,这个不会不兼容
      

  7.   

    C++ C#
    char * string或StringBuide