<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Visual Basic 6.0</title><link>https://www.dotnetzone.gr:443/cs/forums/25/ShowForum.aspx</link><description>Θέματα που αφορούν την VB6 και COM components</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Re: SOAP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/2680.aspx</link><pubDate>Sun, 12 Jun 2005 03:13:11 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:2680</guid><dc:creator>George J. Capnias</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/2680.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=25&amp;PostID=2680</wfw:commentRss><description>&lt;p align="justify"&gt;&lt;font face="Georgia" size="2"&gt;Λοιπόν χρήση των Web Services μέσα από VB6. Απαραίτητη είναι η εγκατάσταση του &lt;strong&gt;SOAP Toolkit 3.0&lt;/strong&gt;.&lt;/font&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;font face="Georgia" size="2"&gt;&lt;strong&gt;1&lt;/strong&gt;. Αν θέλουμε να χρησιμοποιήσουμε κάποιο Web Service που προυπάρχει.&lt;/font&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;font face="Georgia" size="2"&gt;&lt;strong&gt;α&lt;/strong&gt;. Πρώτα πρέπει να γίνει reference στο project το Microsft Soap Type Library 3.0.&lt;/font&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;font face="Georgia" size="2"&gt;&lt;strong&gt;β&lt;/strong&gt;. Στην συνέχεια θα πρέπει να ξέρουμε το URL που είναι το WSDL του Web Service που θέλουμε να χρσιμοποιήσουμε, έστω "&lt;/font&gt;&lt;a target="_blank" title="http://localhost/SOAPClassLibrary/ClassLibrary.cCustomer.soap?WSDL" href="http://localhost/SOAPClassLibrary/ClassLibrary.cCustomer.soap?WSDL"&gt;&lt;font face="Georgia" size="2"&gt;http://localhost/SOAPClassLibrary/ClassLibrary.cCustomer.soap?WSDL&lt;/font&gt;&lt;/a&gt;&lt;font face="Georgia" size="2"&gt;".&lt;br /&gt;&lt;/p&gt;&lt;/font&gt; &lt;p align="left"&gt;&lt;font face="Georgia" size="2"&gt;&lt;font face="Courier New"&gt;&amp;lt;&lt;font color="#a52a2a"&gt;service&lt;/font&gt; &lt;font color="#000080"&gt;name&lt;/font&gt;="&lt;strong&gt;cCustomerClassService&lt;/strong&gt;"&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;&lt;font color="#a52a2a"&gt;port&lt;/font&gt; &lt;font color="#000080"&gt;name&lt;/font&gt;="&lt;strong&gt;cCustomerClassPort&lt;/strong&gt;" binding="tns:cCustomerClassBinding"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;soap:address location="&lt;/font&gt;&lt;a target="_blank" title="http://localhost:80/SOAPClassLibrary/ClassLibrary.cCustomer.soap" href="http://localhost:80/SOAPClassLibrary/ClassLibrary.cCustomer.soap"&gt;&lt;font face="Courier New"&gt;http://localhost:80/SOAPClassLibrary/ClassLibrary.cCustomer.soap&lt;/font&gt;&lt;/a&gt;&lt;font face="Courier New"&gt;" /&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;/port&amp;gt;&lt;br /&gt;&amp;lt;/service&amp;gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;γ&lt;/strong&gt;. Αυτό που πρέπει να δούμε μέσα στο WSDL αρχείο, είναι το όνομα του Web Service που θέλουμε να χρησιμοποιήσουμε, ψάχνουμε για το tag &lt;strong&gt;service&lt;/strong&gt;, και στο attribute name είναι το όνομα του service, έστω "&lt;strong&gt;cCustomerClassService&lt;/strong&gt;" για το παράδειγμά μας. Στο tag &lt;strong&gt;service&lt;/strong&gt; περιέχεται το tag &lt;strong&gt;port&lt;/strong&gt; και το attribute name είναι το όνομα του port του service, και αυτού το όνομα "&lt;strong&gt;cCustomerClassPort&lt;/strong&gt;". Αν το αρχείο περιέχει μόνο ένα service, το όνομά του και το όνομα του post που του αντιστοιχεί, δεν είναι απαραίτητα.&lt;br /&gt;&lt;br /&gt;Παράλληλα πρέπει να ξέρουμε το όνομα της μεθόδου, για το παράδειγμα μας "&lt;strong&gt;RecordsetFind(RecordsetID as Integer)&lt;/strong&gt;",&amp;nbsp;που θέλουμε να χρησιμοποιήσουμε, και τις παραμέτρους που δέχεται, που είναι το &lt;strong&gt;RecordsetID&lt;/strong&gt;. Σε αντίθεση με το Visual Studio 2003, η Visual Basic 6 δεν παρέχει intellisence με τις κλάσεις από τα Web Services και τις παραμέτρους που δέχονται, πρέπει να τις βρούμε από μόνοι μας.&lt;/font&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;font face="Georgia" size="2"&gt;δ. Μέσα από την VB6:&lt;br /&gt;&lt;font face="Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim oSoapClient As MSSOAPLib30.SoapClient30&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sWSDL As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sServiceName As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sPortName As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim RecordsetID As Integer&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sXMLData As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sWSDL = "&lt;/font&gt;&lt;/font&gt;&lt;a target="_blank" title="http://localhost/SOAPClassLibrary/ClassLibrary.cCustomer.soap?WSDL" href="http://localhost/SOAPClassLibrary/ClassLibrary.cCustomer.soap?WSDL"&gt;&lt;font face="Courier New" size="2"&gt;http://localhost/SOAPClassLibrary/ClassLibrary.cCustomer.soap?WSDL&lt;/font&gt;&lt;/a&gt;&lt;font face="Courier New" size="2"&gt;"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RecordsetID = 1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sServiceName = "cCustomerClassService"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sPortName = "cCustomerClassPort"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oSoapClient = New MSSOAPLib30.SoapClient30&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Call oSoapClient.MSSoapInit(sWSDL, sServiceName, sPortName)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sXMLData = oSoapClient.RecordsetFind(RecordsetID)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set oSoapClient = Nothing&lt;/font&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;font face="Georgia" size="2"&gt;&lt;strong&gt;2&lt;/strong&gt;. Αν θέλουμε να φτιάξουμε ένα Web Service με VB6 components, ο ευκολότερος τρόπος είναι μέσω των Components Services. Δεν είναι ανάγκη να έχουμε φτιάξει ένα component που θα έχει κάνει implement τα interfaces που χρειάζονται σε ένα component για να γίνει host από τα component services, όπως το COMSVCSLib.ObjectControl. Απαραίτητο σε αυτή την περίπτωση είναι το COM+ 1.5, δηλάδή Windows XP με SP2 ή Windows 2003 Server με SP1.&lt;/font&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;font face="Georgia" size="2"&gt;&lt;strong&gt;α&lt;/strong&gt;. Φτιάχνουμε ένα μια καινούργια εφαρμογή/application που θα είναι άδεια. Επιλέγουμε ένα όνομα, ότι η εφαρμογή/application θα είναι εφαρμογή διακομιστή/server application και στη συνέχεια τον χρήστη με του οποίου το λογαριασμό θα τρέχει η εφαρμογή.&lt;/font&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;font face="Georgia" size="2"&gt;&lt;strong&gt;β&lt;/strong&gt;. Κάτω από το Στοιχεία/Components επιλέγουμε Δημιουργεία/Στοιχείο. Επιλέγουμε να κάνουμε εγκατάσταση νέων στοιχείων/new components και από το παράθυρο που ανοίγει επιλέγουμε τo .dll αρχείο που μας ενδιαφέρει να κάνουμε Web Service. Στην συνέχεια φαίνονται τα στοιχεία που έχουν βρεθεί.&lt;/font&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;font face="Georgia" size="2"&gt;&lt;strong&gt;γ&lt;/strong&gt;. Στη συνέχεια στις ιδιότητες της εφαρμογής/application επιλέγουμε το tab Ενεργοποίηση/Activation. Επιλέγουμε το checkbox "&lt;strong&gt;Χρησιμοποιεί SOAP&lt;/strong&gt; - &lt;strong&gt;Uses SOAP&lt;/strong&gt;" και στην συνέχεια δίνουμε το όνομα που θέλουμε να έχει το directory που θα δημιουργεί κάτω από τον IIS για να φιλοξενηθεί το Web Service. Με το OK μέσα στον IIS θα δημιουργηθεί ένα virtual directory που θα περιέχει τα απαραίτητα αρχεία για την λειτουργία του Web Service. Χρησιμοποιήται ο IIS ,που θα πρέπει ήδη να έχει εγκατασταθεί στο μηχάνημα.&lt;/font&gt;&lt;/p&gt; &lt;p align="left"&gt;&lt;font face="Georgia" size="2"&gt;Περισσότερες πληροφορίες και επεξηγηματικοί οδηγοί μπορούν να βρεθούν στο Help που έρχεται με το SOAP Toolkit 3.0. Ποιο ενδιαφέρον από όλα είναι η χρήση του SQLXML - χρήση του SQL Server σαν Web Service με το exposure των tables, store procedures μέσω της χρήσης updategrams - με το SOAP Toolkit.&lt;/font&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;font face="Georgia" size="2"&gt;&lt;strong&gt;&lt;u&gt;Σχετικοί Σύνδεσμοι&lt;/u&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;font face="Georgia" size="2"&gt;&lt;strong&gt;SOAP Toolkit 3.0&lt;/strong&gt;&lt;br /&gt;&lt;/font&gt;&lt;a target="_blank" title="http://www.microsoft.com/downloads/details.aspx?FamilyId=C943C0DD-CEEC-4088-9753-86F052EC8450&amp;amp;displaylang=en" href="http://www.microsoft.com/downloads/details.aspx?FamilyId=C943C0DD-CEEC-4088-9753-86F052EC8450&amp;amp;displaylang=en"&gt;&lt;font face="Georgia" size="2"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=C943C0DD-CEEC-4088-9753-86F052EC8450&amp;amp;displaylang=en&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;font face="Georgia" size="2"&gt;&lt;strong&gt;SOAP Toolkit 3.0 Redistributable&lt;/strong&gt;&lt;br /&gt;&lt;/font&gt;&lt;a target="_blank" title="http://www.microsoft.com/downloads/details.aspx?FamilyID=ba611554-5943-444c-b53c-c0a450b7013c&amp;amp;DisplayLang=en" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=ba611554-5943-444c-b53c-c0a450b7013c&amp;amp;DisplayLang=en"&gt;&lt;font face="Georgia" size="2"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=ba611554-5943-444c-b53c-c0a450b7013c&amp;amp;DisplayLang=en&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;font face="Georgia" size="2"&gt;&lt;strong&gt;Microsoft SOAP Toolkit Type Mappers&lt;/strong&gt;&lt;br /&gt;&lt;/font&gt;&lt;a target="_blank" title="http://msdn.microsoft.com/webservices/building/soaptk/default.aspx?pull=/library/en-us/dnservice/html/service06042002.asp" href="http://msdn.microsoft.com/webservices/building/soaptk/default.aspx?pull=/library/en-us/dnservice/html/service06042002.asp"&gt;&lt;font face="Georgia" size="2"&gt;http://msdn.microsoft.com/webservices/building/soaptk/default.aspx?pull=/library/en-us/dnservice/html/service06042002.asp&lt;/font&gt;&lt;/a&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;font face="Georgia" size="2"&gt;&lt;br /&gt;George J.&lt;/font&gt;&lt;/p&gt;</description></item><item><title>SOAP</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/2668.aspx</link><pubDate>Sat, 11 Jun 2005 19:04:59 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:2668</guid><dc:creator>lexicon</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/2668.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=25&amp;PostID=2668</wfw:commentRss><description>Γεια σας,&lt;br /&gt;Στην παρουσίαση που κάνατε για το VS 2005 αναφέρατε κάτι για το SOAP sthn VB6&lt;br /&gt;Μήπως υπάρχει κάποιο παράδειγμα;&lt;br /&gt;&lt;br /&gt;Ευχαριστώ</description></item></channel></rss>