15

VB6 プログラムから外部 Web サービスを使用する必要があります。可能であれば、SOAP ツールキットなしでプログラムを展開できるようにしたいのですが、それは必須ではありません。Web サービスのソースがなく、作成もしていません。ベンダー提供のサービスです。

では、SOAP ツールキット以外で、VB6 から Web サービスを利用する最良の方法は何でしょうか?

4

7 に答える 7

11

この関数を使用して、Web サービスからデータを取得します。

Private Function HttpGetRequest(url As String) As DOMDocument
    Dim req As XMLHTTP60
    Set req = New XMLHTTP60
    req.Open "GET", url, False
    req.send ""

    Dim resp As DOMDocument
    If req.responseText <> vbNullString Then
        Set resp = New DOMDocument60
        resp.loadXML req.responseText
    Else
        Set resp = req.responseXML
    End If
    Set HttpGetRequest = resp
End Function
于 2008-09-23T19:39:43.253 に答える
4

.NET は初日から Web サービスを適切にサポートしているため、Web サービス クライアント ロジックを .NET で .dll ライブラリ/アセンブリとして開発し、COM 相互運用機能を介して VB6 アプリで使用できます。

于 2008-09-23T18:06:15.677 に答える
3

Windows XP Professional 以降で実行していると仮定すると、興味深い方法の 1 つは、SOAP モニカを使用することです。いくつかの MSDN ページから取り上げた例を次に示します。この特定のサービスが機能するかどうかはわかりませんが、アイデアはわかります...

   set SoapObj = GetObject
       ("soap:wsdl=http://www.xmethods.net/sd/TemperatureService.wsdl")
   WScript.Echo "Fairbanks Temperature = " & SoapObj.getTemp("99707")

このメカニズムは、VBScript からも機能します。いいですね。

于 2008-09-23T18:01:19.073 に答える
2

ポケットソープはとてもよく効きます。オブジェクトを生成するには、WSDL ジェネレーターを使用します。これを使用すると、自分で何も解析する必要がありません。さらに、すべてが素晴らしく、強く型付けされています。

于 2008-09-23T21:43:02.177 に答える
1

これまでのところ、PocketSOAP を使用して Salesforce API に接続することである程度の成功を収めています。WSDL ウィザードは、呼び出し名の最初の 23 文字を使用してラッパー クラスのファイル名を生成し、結果として重複するため、使用できませんでした。それでも、PocketSOAP は、ウィザードがなくても十分に機能しており、DOMDocument で XMLHTTP を使用するよりもはるかに簡単です。

また、.NET でラッパーを作成するか、「MS Office {MSO バージョン} Web サービス ツールキット」ライブラリの 1 つを使用することも検討しましたが、これらのオプションにはかなりの展開上の問題がありました。PocketSOAP は単純な COM DLL であり、MS Office の特定のバージョンに依存せず、MPL の下でライセンスされています。

于 2010-03-31T19:57:06.223 に答える
1

MSDN VB 6.0 リソース センターの Scott Swigart によるこの記事を参照してください。

簡単な方法で Visual Basic 6 から Web サービスを呼び出す

于 2008-10-22T23:28:12.473 に答える
0

SOAP ツールキットは間違いなく入手できる最高のものです。それなしで同じことをしようとすると、かなりの追加の労力が必要になります。それを行うには、かなり深刻な理由が必要です。

SOAP メッセージの形式は、手動で読み書きするのは簡単ではないため、サードパーティのライブラリを使用することを強くお勧めします。

于 2008-09-23T17:58:49.890 に答える