c#引用一个c++的dll传入一个string参数,如果传入英文或数字就只能显示五位而且显示的字符之间好像有空格一样,如果传入汉字就显示乱码,还请指教

解决方案 »

  1.   

    我遇到过类似的问题,你可以试试charset = CharSet.Unicode或者charset = CharSet.Ansi
     [DllImport("dllname", CharSet = CharSet.Unicode)],不过的确存在返回string有乱码的情况,无论charset设置为任何值都返回乱码。呵呵,你试试吧,祝你好运!
      

  2.   

    引用?是Add reference过来的吗,如果是的话,那是你dll的问题;
    如果是DllImport过来,可以设置CharSet
      

  3.   

    我设置了charset但是没有效果,一个汉字都显示不出来