• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            woaidongmao

            文章均收錄自他人博客,但不喜標題前加-[轉貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數據加載中……

            SOAP中發中文的VC示例

            在Pwin97/Win2000 Professional下運行通過。
            #include <windows.h>
            #include <easysoap/SOAP.h>
            USING_EASYSOAP_NAMESPACE
            //
            //  The namespace for the methods we're calling.  This
            //  is the same namespace defined in calchandler.h.
            int main(int argc, const char *argv[])
            {
                int iRet = 0;
                unsigned short* strWideChar = NULL;
                char* strANSIReturn = NULL;
                try
                {
                    const char * strUrl = "http://169.254.45.130/WS/Service1.asmx?op=HelloWorld";
                    const char * strNameSpace = "http://tempuri.org/";
                    const char * strSOAPAction = "http://tempuri.org/HelloWorld";
                    const char * strMethodName = "HelloWorld";
                    SOAPString url(strUrl);
                    SOAPUrl endpoint(url);
                    SOAPProxy proxy(endpoint);
                    SOAPMethod method(strMethodName, strNameSpace, strSOAPAction);
                    SOAPString inputValue;
                    char str[5] = "中文";
                    int iLenWideChar = MultiByteToWideChar(0, 0, const_cast<char *>(str), sizeof(str), NULL, 0);
                    strWideChar = new unsigned short[iLenWideChar];
                    if(NULL == strWideChar)
                    {
                        goto Exit;
                    }
                    int iLenRet = MultiByteToWideChar(0, 0, const_cast<char *>(str), sizeof(str), strWideChar, iLenWideChar);
                    inputValue.Append(strWideChar);
                    method.AddParameter("a") << 1;
                    method.AddParameter("b") << inputValue;
                    const SOAPResponse& response = proxy.Execute(method);
                    SOAPString strRet = response.GetReturnValue().GetString();
                    //get return value (UTF-8 encoding)
                    char * strReturn = strRet.Str();
                    unsigned int iLenReturn = sp_strlen(strReturn);
                    SOAPArray<unsigned short> UTF8Return(iLenReturn);
                    char * iterator = strReturn;
                    //convert UTF-8 to WideChar
                    for(unsigned int i=0; iterator <= (strReturn+iLenReturn) && i<iLenReturn; ++i)
                    {
                        sp_UTF8_UCS(iterator,UTF8Return[i]);
                    }
                    //UTF-8 to UTF16
                    int iLenANSIReturn = WideCharToMultiByte(0, 0, UTF8Return, -1, NULL, 0, NULL, NULL);
                    strANSIReturn = new char[iLenANSIReturn];
                    if(NULL == strANSIReturn)
                    {
                        goto Exit;
                    }
                    WideCharToMultiByte(0, 0, UTF8Return, -1, strANSIReturn, iLenANSIReturn, NULL, NULL);
                    printf("ANSI:%s\n", strANSIReturn);
                    getchar();
                }
                catch (SOAPException& ex)
                {
                    printf("Caught SOAP exception: %s\n", ex.What().Str());
                    iRet = 1;
                }
            Exit:
                if(NULL != strWideChar)
                {
                    delete [] strWideChar;
                    strWideChar = NULL;
                }
                if(NULL != strANSIReturn)
                {
                    delete [] strANSIReturn;
                    strANSIReturn = NULL;
                }
                return iRet;
            }

            posted on 2008-05-27 18:17 肥仔 閱讀(579) 評論(0)  編輯 收藏 引用 所屬分類: 網絡編程

            久久精品人人槡人妻人人玩AV | 国产精品久久一区二区三区 | 国产精品成人无码久久久久久 | 国产Av激情久久无码天堂| 久久亚洲AV成人出白浆无码国产 | 精品久久久久久无码专区 | 开心久久婷婷综合中文字幕| 亚洲午夜精品久久久久久app| 亚洲中文久久精品无码| 久久综合久久自在自线精品自| 99久久777色| 久久中文字幕人妻丝袜| 九九99精品久久久久久| 久久大香萑太香蕉av| 国产精品视频久久| 国产A三级久久精品| 国产精品久久影院| 一本色道久久88—综合亚洲精品| 久久亚洲AV成人无码国产| 久久亚洲中文字幕精品一区| 国产婷婷成人久久Av免费高清| 久久久久久国产a免费观看不卡| 午夜精品久久久久久毛片| 久久综合一区二区无码| 狠狠干狠狠久久| 久久精品国产亚洲AV无码娇色| 久久久精品波多野结衣| 青青青青久久精品国产h| 人妻少妇久久中文字幕一区二区| 无码人妻久久一区二区三区蜜桃| 999久久久国产精品| 国产精品久久国产精品99盘| 久久亚洲AV成人出白浆无码国产| 国产成人综合久久精品红| 久久精品亚洲乱码伦伦中文 | 久久久久久九九99精品| 亚洲女久久久噜噜噜熟女| 久久精品卫校国产小美女| 欧美精品丝袜久久久中文字幕| 久久精品无码一区二区三区日韩| 久久夜色精品国产亚洲|