Also ich habe das nochmals alles durchgeschaut, die Werte gehen über $olCC in die _OL_ItemRecipientAdd ab da bin ich raus, komme da nicht mehr mit.
Func _OL_ItemRecipientAdd($oOL, $vItem, $sStoreID, $iType, $vP1, $vP2 = "", $vP3 = "", $vP4 = "", $vP5 = "", $vP6 = "", $vP7 = "", $vP8 = "", $vP9 = "", $vP10 = "", $bAllowUnresolved = True)
Local $oRecipient, $aRecipients[10], $oTempRecipient
If Not IsNumber($iType) Then Return SetError(5, 0, 0)
If Not IsObj($vItem) Then
If StringStripWS($vItem, 3) = "" Then Return SetError(1, 0, 0)
$vItem = $oOL.Session.GetItemFromID($vItem, $sStoreID)
If @error Then Return SetError(2, @error, 0)
EndIf
; Move members into an array
If Not IsArray($vP1) Then
$aRecipients[0] = $vP1
$aRecipients[1] = $vP2
$aRecipients[2] = $vP3
$aRecipients[3] = $vP4
$aRecipients[4] = $vP5
$aRecipients[5] = $vP6
$aRecipients[6] = $vP7
$aRecipients[7] = $vP8
$aRecipients[8] = $vP9
$aRecipients[9] = $vP10
Else
$aRecipients = $vP1
EndIf
; add recipients to the item
For $iIndex = 0 To UBound($aRecipients) - 1
; recipient is an object = recipient name already resolved
If IsObj($aRecipients[$iIndex]) Then
$vItem.Recipients.Add($aRecipients[$iIndex])
If @error Then Return SetError(3, $iIndex, 0)
Else
If StringStripWS($aRecipients[$iIndex], 3) = "" Then ContinueLoop
$oRecipient = $oOL.Session.CreateRecipient($aRecipients[$iIndex])
If @error Or Not IsObj($oRecipient) Then Return SetError(600 + $iIndex, @error, 0)
$oRecipient.Resolve
If @error Or Not $oRecipient.Resolved Then
If Not (StringInStr($aRecipients[$iIndex], "@")) Or Not ($bAllowUnresolved) Then Return SetError(400 + $iIndex, @error, 0)
EndIf
#forceref $oTempRecipient ; to prevent the AU3Check warning: $oTempRecipient: declared, but not used in func.
$oTempRecipient = $vItem.Recipients.Add($oRecipient)
If @error Then Return SetError(300 + $iIndex, @error, 0)
$oTempRecipient.Type = $iType
EndIf
Next
$vItem.Save()
Return $vItem
EndFunc ;==>_OL_ItemRecipientAdd
[/autoit]