Freigeben über


So verwenden Sie eine persistente Verbindung

Im folgenden Thema wird beschrieben, wie Sie eine dauerhafte Verbindung mit Windows-Initiated Processing (WIP) verwenden.

So verwenden Sie eine dauerhafte Verbindung mit WIP

  1. Legen Sie das COMTIContext-Schlüsselwort CONNTYPE auf OPEN fest.

    Wenn ein Anruf erfolgreich abgeschlossen wird, nachdem CONNTYPE auf OPEN gesetzt wurde, wird das zurückgegebene COMTIContext-Array das CONNTYPE-Stichwort den Wert USE aufweisen.

    Nachdem Sie das COMTIContext-Schlüsselwort CONNTYPE auf OPEN festgelegt haben, können Sie CONNTYPE auf USE festlegen. Diese Aktion ist jedoch nicht obligatorisch, da sie standardmäßig auf USE festgelegt ist.

  2. Nachdem Sie die Verbindung hergestellt haben, können Sie das COMTIContext-Objekt verwenden, um auf den Mainframe zuzugreifen.

  3. Wenn der Methodenaufruf fehlschlägt, verwenden Sie UpdateContextInfo und GetConnectionInfo auf der COMTIContextLib.ContextObject, um den aktualisierten Status der Verbindung abzurufen.

  4. Um einen Aufruf zu tätigen und die persistente Verbindung zu beenden, legen Sie das SCHLÜSSELwort CONNTYPE auf CLOSE fest.

    Wenn der Aufruf erfolgreich abgeschlossen ist, weist das zurückgegebene COMTIContext-Array CONNTYPE-Schlüsselwort den Wert NON-PERSISTENT auf.

    Optional können Sie ClosePersistentConnection jederzeit aufrufen, um eine dauerhafte Verbindung zu schließen. Die Verbindung wird beendet, und es gibt keine Interaktion mit einem Serverprogramm.

Beispiel

Im folgenden Visual Basic 6.0-Codebeispiel wird gezeigt, wie Sie die OPEN- und CLOSE-Methodenaufrufe verwenden, die möglicherweise einen Fehler zurückgeben. Im Beispiel wird auch veranschaulicht, wie sie ermitteln können, ob eine Verbindung noch verwendet werden kann.

Public CtxCount As Long  
Public COMTIContext() As Variant  
Public ContextObj As COMTIContextLib.ContextObject  
  
Dim fConIsPersistent as Boolean  
Dim fConnIsViable as Boolean  
Dim varConnType as Variant  
  
Private Sub cmdBalance_Click()  
  On Error GoTo ErrorHandler  
  
OpenCall:  
  varConnType = "OPEN"  
  ContextObj.WriteContext "CONNTYPE", varConnType, COMTIContext  
  lngReturn = objBank.cedrbank(txtName.Text, txtAccount.Text, curRetBalance, COMTIContext)  
  
UseCall:  
  lngReturn = objBank.cedrbank(txtName.Text, txtAccount.Text, curRetBalance, COMTIContext)  
  
CloseCall:  
  If (fCloseWithMethod) Then  
      varConnType = "CLOSE"  
      ContextObj.WriteContext "CONNTYPE", varConnType, COMTIContext  
      lngReturn = objBank.cedrbank(txtName.Text, txtAccount.Text, curRetBalance, COMTIContext)  
  Else  
      COMTIContext = objBank.ClosePersistentConnection  
  End-if  
  
  Exit Sub  
  
ErrorHandler:  
    COMTIContext  = objBank.UpdateContextInfo   Optional for COM required for .NET  
    ContextObj.GetConnectionInfo (COMTIContext, fConnIsPersistent, fConnIsViable)  
    If (fConnIsPersistent = True And fConnIsViable = True) Then  
        Continue with the next Use or Close method call is OK  
    Else  
        Connection is either Non-persistent or no longer viable  
        So a Use or Close call is not valid  
    End-if  
    Exit Sub  
  
End Sub  

Siehe auch

Persistente Verbindungen
COMTIContext-Schnittstelle
COMTIContext-Schlüsselwörter