Freigeben über


Connection.StillExecuting-Eigenschaft (DAO)

Gilt für: Access 2013, Office 2013

Syntax

Ausdruck . StillExecuting

Ausdruck Eine Variable, die ein Connection -Objekt darstellt.

Bemerkungen

Verwenden Sie die StillExecuting-Eigenschaft , um zu bestimmen, ob die zuletzt aufgerufene asynchrone Execute - oder OpenConnection-Methode (d. h. eine methode, die mit der Option dbRunAsync ausgeführt wurde) abgeschlossen ist. Solange die StillExecuting-Eigenschaft True ist, kann nicht auf zurückgegebene Objekte zugegriffen werden.

Sobald die StillExecuting-EigenschaftFalse zurückgibt, kann nach dem OpenConnection-Aufruf , der das zugeordnete Connection-Objekt zurückgibt, auf das Objekt verwiesen werden. Solange StillExecutingTrue bleibt, wird möglicherweise nicht auf das Objekt verwiesen, außer die StillExecuting-Eigenschaft zu lesen.

Mit der Cancel -Methode können Sie die Ausführung einer Aufgabe beenden.

Beispiel

In diesem Beispiel werden die StillExecuting-Eigenschaft und die Cancel-Methode verwendet, um ein Connection-Objekt asynchron zu öffnen.

    Sub CancelConnectionX() 
     
     Dim wrkMain As Workspace 
     Dim conMain As Connection 
     Dim sngTime As Single 
     
     Set wrkMain = CreateWorkspace("ODBCWorkspace", _ 
     "admin", "", dbUseODBC) 
     ' Open the connection asynchronously. 
     
     ' Note: The DSN referenced below must be configured to 
     ' use Microsoft Windows NT Authentication Mode to 
     ' authorize user access to the Microsoft SQL Server. 
     Set conMain = wrkMain.OpenConnection("Publishers", _ 
     dbDriverNoPrompt + dbRunAsync, False, _ 
     "ODBC;DATABASE=pubs;DSN=Publishers") 
     
     sngTime = Timer 
     
     ' Wait five seconds. 
     Do While Timer - sngTime < 5 
     Loop 
     
     ' If the connection has not been made, ask the user 
     ' if she wants to keep waiting. If she does not, cancel 
     ' the connection and exit the procedure. 
     Do While conMain.StillExecuting 
     
     If MsgBox("No connection yet--keep waiting?", _ 
     vbYesNo) = vbNo Then 
     conMain.Cancel 
     MsgBox "Connection cancelled!" 
     wrkMain.Close 
     Exit Sub 
     End If 
     
     Loop 
     
     With conMain 
     ' Use the Connection object conMain. 
     .Close 
     End With 
     
     wrkMain.Close 
     
    End Sub