; English forum: http://www.purebasic.fr/english/viewtopic.php?t=13436&highlight= ; Author: Leo ; Date: 20. December 2004 ; OS: Windows ; Demo: No ; Using COM and SOAP to get temperature at XMethods ; ************************************************* ; To promote the use of ActiveX and of Axend's InterfaceGenerator, I post here ; a small example how to use the pocketSOAP component that can be downloaded ; from http://www.pocketsoap.com/ The example retrieves the temperature from ; the http://services.xmethods.net:80/soap/servlet/rpcrouter site ; ; For some reason the ComLib of Axend does not work with CreateObject ; ("pocketSOAP.HTTPTransport.2") (it crashes), so I used the CoCreateInstanceEx ; instead. ; ; The generated Interface pSoap32.pb ; Interface generated by Interface Generator 1.0, Date 12/10/2004 ; PocketSOAP, PocketSOAP 1.5.0 Type Library ; Enumerations Enumeration ; sfConfigOptions #sfcNormal_11 = 0 #sfcScripting_11 = 1 #sfcNormal_12 = 2 #sfcScripting_12 = 3 EndEnumeration Enumeration ; pocketSOAPErrors #E_SOAPFAULT = -2147204607 #E_NOFAULTCODE = -2147204606 #E_NOFAULTSTRING = -2147204605 #E_DONT_UNDERSTAND = -2147204604 #E_INVALID_ARRAY_POS = -2147204592 #E_ARRAY_COORD_FORMAT = -2147204591 #E_NO_DESERIALIZER = -2147204576 #E_NO_SERIALIZER = -2147204560 #E_ATTR_SIMPLE_ONLY = -2147204559 #E_DESER_NO_SIMPLE = -2147204558 #E_PARSE_ERROR = -2147204544 #E_UNKNOWN_PRIMARYSCHEMA = -2147204528 #E_INVALID_LEX_REP = -2147204512 EndEnumeration Enumeration ; pocketSOAPHttpErrors #E_SSL_FAILURE = -2147204351 #E_DEFLATE_FAILURE = -2147204350 #E_INFLATE_FAILURE = -2147204349 EndEnumeration ; Interfaces Interface ISOAPEnvelope Extends IUnknown get_ThrowFaults(a) put_ThrowFaults(a) get_URI(a) put_URI(a) get_MethodName(a) put_MethodName(a) get_EncodingStyle(a) put_EncodingStyle(a) SetMethod(a,b) Parse(a,b,c,d,e) Serialize(a) get_Headers(a) get_Body(a) get_Parameters(a) get_SerializerFactory(a) putref_SerializerFactory(a) EndInterface Interface ISOAPNodes Extends IUnknown get__NewEnum(a) get_Item(a,b) get_ItemByName(a,b,c) get_Count(a) Append(a) Clear() Create(a,b,c,d,e,f,g,h,i) EndInterface Interface ISOAPNode Extends IUnknown get_Name(a) put_Name(a) get_Namespace(a) put_Namespace(a) get_Type(a) put_Type(a) get_TypeNS(a) put_TypeNS(a) get_Value(a) put_Value(a,b,c,d) get_ValueAs(a,b,c) putref_SerializerFactory(a) get_root(a) get_id(a) get_href(a) get_actor(a) get_mustUnderstand(a) get_offset(a) get_position(a) get_nil(a) put_root(a) put_id(a) put_href(a) put_actor(a) put_mustUnderstand(a) put_offset(a) put_position(a) put_nil(a) get_Nodes(a) EndInterface Interface ISerializerFactoryConfig Extends IUnknown ElementMapping(a,b,c,d) Deserializer(a,b,c,d,e,f,g,h) Serializer(a,b,c,d,e,f,g) get_PrimarySchema(a) put_PrimarySchema(a) get_RootFirst(a) put_RootFirst(a) SetConfig(a,b,c,d) EndInterface Interface ISOAPNamespaces Extends IUnknown GetPrefixForURI(a,b) GetURIForPrefix(a,b) EndInterface Interface ISOAPEnvelope2 Extends ISOAPEnvelope get_EnvelopeVersion(a) put_EnvelopeVersion(a) EndInterface Interface ISOAPTransport Extends IUnknown Send(a,b) Receive(a,b) EndInterface Interface IHTTPTransport Extends ISOAPTransport get_SOAPAction(a) put_SOAPAction(a) EndInterface Interface IHTTPTransportAdv Extends IHTTPTransport put_Timeout(a) get_Timeout(a) SetProxy(a,b) NoProxy() Authentication(a,b) ProxyAuthentication(a,b) get_StatusCode(a) get_MaxRedirectDepth(a) put_MaxRedirectDepth(a) EndInterface Interface ISOAPTransport2 Extends IUnknown Send(a,b,c,d,e) Receive(a,b) EndInterface Interface ISwATransport Extends IUnknown get_ContentType(a) put_ContentType(a) Send(a,b,c,d,e) Receive(a,b) EndInterface Interface ISOAPTransportTimeout Extends ISOAPTransport put_Timeout(a) get_Timeout(a) EndInterface Interface IHTTPTransportAdv2 Extends IHTTPTransportAdv get_Option(a,b) put_Option(a,b,c,d,e) EndInterface Interface ISOAPNode2 Extends ISOAPNode get_EncodingStyle(a) put_EncodingStyle(a) EndInterface Interface ISOAPNode3 Extends ISOAPNode2 get_explicitRoot(a) put_explicitRoot(a) EndInterface Interface ISOAPNode12 Extends IUnknown get_role(a) put_role(a) get_relay(a) put_relay(a) get_ref(a) put_ref(a) EndInterface Interface ISerializerFactory Extends IUnknown SerializerForValue(a,b) SerializerForNode(a,b) ReturnSerializer(a) DeserializerForType(a,b,c,d) DeserializerForElement(a,b,c,d) ReturnDeSerializer(a) XsiForPrimaryNS(a) IsAnyType(a,b,c) AreEqualComTypes(a,b,c,d,e) FindComType(a,b,c) EndInterface Interface ISoapSerializer Extends IUnknown Serialize(a,b,c) EndInterface Interface ISerializerContext Extends IUnknown get_Namespaces(a) get_SerializerFactory(a) EndInterface Interface ISerializerOutput Extends IUnknown StartElement(a,b) EndElement(a,b) Attribute(a,b,c) QNameAttribute(a,b,c,d) SerializeNode(a) SerializeValue(a,b,c) WriteText(a) WriteTextNoEncoding(a) EndInterface Interface ISoapDeSerializer Extends IUnknown Start(a,b,c,d) Child(a,b,c) ChildReady(a,b) ChildRef(a,b) ref(a,b) Characters(a) End() EndInterface Interface ISoapDeSerializerAttributes Extends IUnknown Exists(a,b,c) Value(a,b,c) EndInterface Interface ISerializerFactoryConfig2 Extends ISerializerFactoryConfig LocalTypeMapping(a,b,c,d,e,f) EndInterface Interface ISerializerFactory2 Extends ISerializerFactory DeserializerForChild(a,b,c,d,e,f,g,h) EndInterface Interface ISerializerFactoryPool Extends IUnknown Reset() EndInterface Interface ISerializerFactoryPool2 Extends ISerializerFactoryPool Fetch(a,b) EndInterface Interface ISerializerFactoryEx Extends IUnknown SerializerForValue(a,b,c,d,e,f,g,h) SerializerForNode(a,b,c,d,e,f) ReturnSerializer(a) DeserializerForType(a,b,c,d) DeserializerForElement(a,b,c,d,e,f,g,h) ReturnDeSerializer(a) FindType(a,b,c,d,e,f) XsiForPrimaryNS(a) IsAnyType(a,b,c) AreEqualComTypes(a,b,c,d,e) FindComType(a,b,c) EndInterface Interface ISerializerFactoryConfig3 Extends ISerializerFactoryConfig2 understoodHeader(a,b) EndInterface Interface ITypesInit Extends IUnknown Initialize(a,b,c,d,e,f) EndInterface Interface ISimpleSoapSerializer Extends IUnknown Serialize(a,b,c) EndInterface Interface IXmlQName Extends IUnknown get_Name(a) put_Name(a) get_Namespace(a) put_Namespace(a) Set(a,b) EndInterface Interface IInterfaceFinder Extends IUnknown DefaultIID(a,b) EndInterface Interface ISerializerOutput2 Extends ISerializerOutput SerializeAttribute(a,b,c) EndInterface Interface ISoapDeSerializerAttributes2 Extends ISoapDeSerializerAttributes ValueAs(a,b,c,d,e) EndInterface Interface ISerializerContext2 Extends ISerializerContext get_EnvelopeVersion(a) EndInterface Interface IHTTPTransportDisp Extends IUnknown Send(a,b,c,d,e) Receive(a,b) get_SOAPAction(a) put_SOAPAction(a) put_Timeout(a) get_Timeout(a) SetProxy(a,b) NoProxy() Authentication(a,b) ProxyAuthentication(a,b) get_StatusCode(a) get_MaxRedirectDepth(a) put_MaxRedirectDepth(a) get_Option(a,b) put_Option(a,b,c,d,e) EndInterface Interface ISOAPNodeDisp Extends IUnknown get_Name(a) put_Name(a) get_Namespace(a) put_Namespace(a) get_Type(a) put_Type(a) get_TypeNS(a) put_TypeNS(a) get_Value(a) put_Value(a,b,c,d) get_ValueAs(a,b,c) putref_SerializerFactory(a) get_root(a) get_id(a) get_href(a) get_actor(a) get_mustUnderstand(a) get_offset(a) get_position(a) get_nil(a) put_root(a) put_id(a) put_href(a) put_actor(a) put_mustUnderstand(a) put_offset(a) put_position(a) put_nil(a) get_Nodes(a) get_EncodingStyle(a) put_EncodingStyle(a) get_explicitRoot(a) put_explicitRoot(a) get_role(a) put_role(a) get_relay(a) put_relay(a) get_ref(a) put_ref(a) EndInterface ; IDE Options = PureBasic v4.02 (Windows - x86) ; Folding = -