BV Script Com Interface Keine Daten

  • VB.NET
  • .NET (FX) 4.5–4.8

    BV Script Com Interface Keine Daten

    VB Script Com Interface liefert Keine Daten


    Ich will mit Visual Basic Script auf die folgende com Schnitstelle zugreifen



    C-Quellcode

    1. interface INmsDbData : IDispatch
    2. {
    3. [id(1)] HRESULT Do ( [in] long id, [in] BSTR version, [in] BSTR sender, [in] BSTR login, [in] BSTR selection, [out, retval] long* retval);
    4. [id(2)] HRESULT Request ( [in] long id, [in] BSTR version, [in,out] BSTR sender, [in] BSTR login, [in] BSTR selection, [in, out] BSTR* data , [out, retval] long* retval );
    5. [id(3)] HRESULT OnTicket ( [in] BSTR dialNumber, [in] BSTR recordType, [in] BSTR calculatedCharge, [in] BSTR currency, [in] BSTR chargePulseInfo, [in] BSTR timeStamp, [in] BSTR duration, [in] BSTR digits, [out, retval] long* retval );
    6. [id(4)] HRESULT sendCmd ( [in] BSTR cmd, [in, out] BSTR* result );
    7. [id(5)] HRESULT sendCmdBinary ( [in] BSTR clientName, [in] BSTR userName, [in] BSTR cmd, [in, out] BSTR* result );
    8. [id(6)] HRESULT Request64 ( [in] long id, [in] BSTR version, [in,out] BSTR sender, [in] BSTR login, [in] BSTR selection, [in, out] BSTR* data , [in, out] BSTR data64, [out, retval] long* retval );
    9. };


    Und dies mit der folgenden Funktion

    VB.NET-Quellcode

    1. Private Sub Request_2_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Request_2.Click
    2. Dim r As Integer
    3. Dim data As String
    4. ErrorText.Text = ""
    5. If obj Is Nothing Then obj = CreateObject("NmsTaskDbSv.64Bit_NmsDbData")
    6. 'UPGRADE_WARNING: Couldn't resolve default property of object obj.Request. Click for more: 'ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?keyword="6A50421D-15FE-4896-8A1B-2EC21E9037B2"'
    7. r = obj.Request(15102, "1.0", "DatO", "customerservice/customer", "ACCOUNT=" & Par_2_1.Text, (data))
    8. If (r = 0) Then
    9. Result_2.Text = data
    10. Else
    11. ShowLastError()
    12. End If
    13. End Sub


    Das Script läuft auch ohne Feher durch. Aber im Data String sind die vom com Interface gelieferten Daten nich drinn. Wen ich den Aufruf request

    VB.NET-Quellcode

    1. r = obj.Request(15102, "1.0", "DatO", "customerservice/customer", "ACCOUNT=" & Par_2_1.Text, data)



    ohne Klammern aufrufe gibt es eine type mismatch error zur laufzeit



    was mache ich falsch ?

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „TAK“ ()