Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ACE+gSOAPʵÏÖ¸ßÐÔÄÜWebService Server£¨C/C++£©

1¡¢¿ª·¢»·¾³Çë²Î¿¼¡¶´î½¨ACE-5.7.4+VS2008¿ª·¢»·¾³¡·Ò»ÎÄ
2¡¢gSOAP¿â£¬ÏÂÔØµØÖ·£ºhttp://gsoap2.sourceforge.net/£¬±¾ÎÄʹÓõİ汾ÊÇ£ºgsoap_2.7.15£¬gSOAPµÄ±à³Ì¿ÉÒԲο¼docĿ¼ÏµÄsoapdoc2.pdf£¬¹Ù·½ÎĵµÐ´µÄ·Ç³£Ïêϸ¡£
ÈÃÎÒÃÇ¿ªÊ¼gSOAP±àÂëÂọ́º
1¡¢´´½¨gsoap_server.h£º
//gsoap ns2 service namespace: http://localhost:9908/ccm_mimport/services.wsdl
//gsoap ns2 service location: http://localhost:9908/ccm_mimport/services
typedef char * xsd__string; // encode char * value as the xsd:string schema type
typedef int xsd__int; // encode xsd__int value as the xsd:int schema typ
struct ns2__makeCardNotifyReqBean
{
xsd__string id_makecard_order;
xsd__int card_type;
xsd__string file_name;
xsd__string start_card_serial;
xsd__string end_card_serial;
xsd__int card_count;
};
struct ns2__makeCardNotifyRspBean
{
xsd__int result; //½á¹û
xsd__string error_desc; //´íÎóÃèÊö
};
//¿¨Êý¾ÝÉú³É½á¹û֪ͨ½Ó¿Ú
int ns2__makeCardNotify(struct ns2__makeCardNotifyReqBean req, struct ns2__makeCardNotifyRspBean *rsp);

×¢£ºÍ·ÎļþÉÏÃæµÄ×¢ÊÍÓÃÓÚÅäÖ÷þÎñ·ÃÎʵØÖ·£¬¶ø·Çµ¥´¿µÄ×¢ÊÍ£»ÏêϸÅäÖÃ˵Ã÷¿ÉÒԲο¼¹Ù·½Îĵµ
2¡¢°Ñ%GSOAP_HOME%\gsoap\bin\win32Ŀ¼ÅäÖõ½ÏµÍ³%Path%À»òÕß½«Ä¿Â¼ÏµÄsoapcpp2.exeºÍwsdl2h.exeÁ½¸öÎļþÖ±½Ó¿½±´µ½gsoap_server.hËùÔÚĿ¼£»
3¡¢±àдÅú´¦ÀíÎļþ£º
echo off
del *.c *.h *.xml *.nsmap *.cpp
soapcpp2 -c -S gsoap_server.h
copy soapC.c ..\soapC.cpp
copy soapServer.c ..\soapServer.cpp
copy soapH.h ..\soapH.h
copy soapStub.h ..\soapStub.h
copy ns2.nsmap ..\gsoap_server.nsmap
echo .
echo /******************************/
echo .
echo Éú³ÉµÄns2.wsdl±ØÐëɾ³ýschemaLocation="http://schemas.xmlsoap.org/soap/encoding/"ÊôÐÔ
echo .
echo /******************************/
echo .
pause

4¡¢±àдҵÎñʵÏÖ´úÂ룺
#include <ctype.h>
#include <string>
#include <ace/OS.h>
#include <ace/OS_NS_ctype.h>
#include <ace/OS_NS_string.h>
#include "Global_Define.h"
#include "ffcs_logger.h"
#include "stdsoap2.h"
#include "soapH.h"
#include "gsoap_se


Ïà¹ØÎĵµ£º

C\C++º¯Êýµ÷Óõļ¸ÖÖ·½Ê½

µ÷Óú¯Êýʱ£¬¼ÆËã»ú³£ÓÃÕ»À´´æ´¢´«µÝ¸øº¯ÊýµÄ²ÎÊý¡£
Õ»ÊÇÒ»ÖÖÏȽøºó³öµÄÊý¾Ý½á¹¹£¬Õ»ÓÐÒ»¸ö´æ´¢Çø¡¢Ò»¸öÕ»¶¥Ö¸Õë¡£Õ»¶¥Ö¸ÕëÖ¸Ïò¶ÑÕ»ÖеÚÒ»¸ö¿ÉÓõÄÊý¾ÝÏ±»³ÆÎªÕ»¶¥£©¡£Óû§¿ÉÒÔÔÚÕ»¶¥ÉÏ·½ÏòÕ»ÖмÓÈëÊý¾Ý£¬Õâ¸ö²Ù×÷±»³ÆÎªÑ¹Õ»(Push)£¬Ñ¹Õ»ÒÔºó£¬Õ»¶¥×Ô¶¯±ä³ÉмÓÈëÊý¾ÝÏîµÄλÖã¬Õ»¶¥Ö¸ÕëÒ²ËæÖ®Ð޸ġ£Óû§Ò²¿ÉÒÔ´Ó¶ÑÕ»ÖÐ ......

ÈçºÎʹC£¬C++±àÒëÆ÷¶¼¿ÉÒÔµ÷ÓÃCдµÄDLL

    ÓÉÓÚC++±àÒëÆ÷ÐèÒªÖ§³Öº¯ÊýµÄÖØÔØ£¬»á¸Ä±äº¯ÊýµÄÃû³Æ£¬Óë±ê×¼CÖк¯ÊýÃû³Æ²»Í¬¡£È»¶ødllµÄµ¼³öº¯Êýͨ³£ÊDZê×¼C¶¨ÒåµÄ£¬Èñê×¼C±àдµÄdllº¯Êý¶¨ÒåÔÚCºÍC++±àÒëÆ÷϶¼ÄܱàÒëͨ¹ý£¬Í¨³£»áʹÓÃÒÔϵĸñʽ£º£¨Õâ¸ö¸ñʽÔںܶà³ÉÊìµÄ´úÂëÖкܳ£¼û£©
#ifdef __cplusplus extern "C" 

#endif
// ......

±ê×¼Cº¯ÊýÖ® getchar

getcharº¯ÊýÊǶ¨ÒåÔÚ stdio.h ÎļþÖеÄÒ»¸öÊäÈ뺯Êý¡£Ëü´Ó±ê×¼ÊäÈëÉ豸£¨Ò»°ãÊǼüÅÌ£©ÖжÁȡһ¸ö×Ö·û¡£
ÔÚʵ¼Ê¹¤×÷ÖУ¬ËüÊÇÕâÑùÍê³ÉµÄ£º
¼üÅÌÊäÈëµ½¼ÆËã»úÖеÄ×Ö·û²¢²»ÊÇÁ¢¿ÌË͵½ÄÚ´æÖÐÖ¸¶¨Î»Ö㬶øÊÇ»áÊ×ÏÈ»º´æµ½Ò»¸ö»º³åÇøÖС£Õâ¸öÊǼÆËã»úΪÁËÃÖ²¹²»Í¬Ó²¼þÖ®¼äËٶȲî¾à£¬¶ø¹ßÓõļ¿Á©¡£
µ±ÔÚ³ÌÐòÖеÚÒ»´Îµ÷Óà getchar ......

»ã±à½ÒÃØCÓïÑÔÖеIJÎÊý´«µÝÎÊÌâ[zz]

»ã±à½ÒÃØCÓïÑÔÖеIJÎÊý´«µÝÎÊÌâ[zz]
ÎÄÕÂ×÷Õߣºcook702
ºÜ¶àѧϰ»ã±àµÄÅóÓÑÏë±Ø¶ÔCÒ²±È½ÏÁ˽⣬ÒòΪÔÚµ±Ç°´óѧµÄ¿Î³ÌÌåϵÀËüºÜÓпÉÄܾÍÊÇÄã½Ó´¥µ½µÄµÚÒ»Ãűà³ÌÓïÑÔ¡£ÓÉÓÚ¶Ô¼ÆËã»úµÄÀí½â²»¹»£¬Ñ§Ï°Ê±±Ø¶¨»áÓöµ½¸÷ÖÖÎÊÌâ¡£ÓÐЩÎÊÌâÊÇÄãͨ¹ý˼¿¼¾Í¿ÉÒÔ½â¾öµÄ£¬¶ø¸ü¶àµÄÎÊÌâÔòÊÇÄãÎÞ´Ó˼¿¼£¬¾ÍºÃÏñËüÌìÉú¾ÍÊÇÕâÑù£¬ÄãÖ»Òª¼ ......

×ÛºÏÔËÓÃCÓïÑÔÖ¸ÕëÇ¿ÖÆ×ª»»ºÍ»Øµ÷º¯Êý


  
ÔÚÕâ¸öÀý×ÓÀ»Øµ÷º¯Êý±È½ÏÁ½¸öÖµ¡£²éÕÒº¯ÊýÏò±È½Ïº¯Êý´«µÝÁ½¸öÖ¸ÏòÐèÒª½øÐбȽϵÄÖµµÄÖ¸Õ룬²¢¼ì²é±È½Ïº¯ÊýµÄ·µ»ØÖµ¡£ÀýÈ磺Áã±íʾÏàµÈµÄÖµ£¬ÏÖÔÚ²éÕÒº¯
Êý¾ÍÓëÀàÐÍÎ޹أ¬ÒòΪËü±¾Éí²¢²»Ö´ÐÐʵ¼ÊµÄ±È½Ï¡£È·Êµ£¬µ÷ÓÃÕß±ØÐë±àд±ØÐèµÄ±È½Ïº¯Êý£¬µ«ÕâÑù×öÊǺÜÈÝÒ׵ģ¬ÒòΪµ÷ÓÃÕßÖªµÀÁ´±íÖÐËù°üº¬µÄÖµµÄÀàÐÍ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ