操作系统:32位win7 
开发工具:vs2008
gsoap版本:2.8.3
运行环境:服务器端客户端都运行在32 win7生成webservice服务器端和客户端代理的头文件:
int ns__GetService(std::wstring input, std::wstring* output);客户端,服务器端的代理对象都设置了mode
m_pProxy->imode |= SOAP_C_UTFSTRING;
m_pProxy->omode |= SOAP_C_UTFSTRING;
m_pProxy->mode |= SOAP_C_UTFSTRING;服务端和客户端在接收中文时没有问题,接收中文标点时像感叹号,冒号确是乱码有遇到的么?

解决方案 »

  1.   

    Strings with 8-bit content can hold ASCII (default) or UTF8. The latter is possible by enabling the SOAP_C_UTFSTRING flag. When enabled, all std::string and char* strings MUST contain UTF8.
    你把中文转换为utf8编码了么?
      

  2.   

    int ns__GetService(std::wstring input, std::wstring* output);
      

  3.   

    是原来在gbk和utf8之间转换的时候有问题,换个方法转换就好了
    int ns__GetService(std::string input, std::string* output);