AdsWrite[Datatype]Req

AdsWriteIntegerReq

AdsWriteLongReq

AdsWriteSingleReq

AdsWriteDoubleReq

AdsWriteStringReq

Setzt ein Read-Request für ein Datum von Typ Integer, Long, Single, Double oder String ab.

object.AdsWrite[Datatype]Req(
  nInvokeId As Long,
  nIndexGroup As Long,
  nIndexOffset As Long,
  cbLength As Long,
  pData As [Datatype]
) As Long

Parameter

nInvokeId

[in] Auftragsnummer zur Identifizierung der Antwort

nIndexGroup

[in] Index-Gruppe der ADS-Variable

nIndexOffset

[in] Index-Offset der ADS-Variable

cbLength

[in] Länge der Daten in Byte (siehe VB-Variablenlängen)

pData

[in] Visual Basic-Variable, aus der die Daten in die ADS-Variable geschrieben werden

Rückgabewert

Siehe ADS-Fehlercodes

Bemerkungen

Nachdem das Write-Request an das ADS-Gerät abgesetzt wurde, wird mit der Abarbeitung des Visual Basic-Programms fortgefahren. Sobald die Daten geschrieben wurden, löst das ADS-OCX die Ereignisfunktion AdsWriteConf() aus.

Beim Absetzen vom Write-Request muß eine Identifizierungsnummer mit angegeben werden, die später beim Aufruf der Ereignisfunktion wieder zurückgegeben wird. Dadurch ist eine Zuordnung zwischen Write-Request und der Ereignisfunktion möglich.

Anmerkung zum Datentyp String: Bei der Länge der Daten ist zu beachten, dass sich diese auf die Länge der Variable im Visual Basic Programm bezieht. Da Visual Basic ein Zeichen mit 2 Byte darstellt, muss die Länge der Variable mit LenB() ermittelt werden, nicht mit Len().

Beispiel

Dim VBVar As Integer
Dim nInvokeId As Long
VBVar = 100
nInvokeId = 1
Call AdsOcx1.AdsWriteIntegerReq(nInvokeId, &H4020&, 0&, 2&, VBVar)

Private Sub AdsOcx1_AdsWriteConf(ByVal nInvokeId As Long, ByVal nResult As Long)
    If (nResult <> 0) Then MsgBox ("Error AdsWriteConf " & nResult)
End Sub
Dim VBVar As String
Dim InvokeId As Long
VBVar = "TwinCAT"
InvokeId = 1
Call AdsOcx1.AdsWriteStringReq(InvokeId, &H4020&, 0&, LenB(VBVar), VBVar)

Private Sub AdsOcx1_AdsWriteConf(ByVal nInvokeId As Long, ByVal nResult As Long)
    If (nResult <> 0) Then MsgBox ("Error AdsWriteConf " & nResult)
End Sub