Sample code for 30+ languages & platforms
Visual Basic 6.0

XMP Array Property - Bag, Seq, or Alt

See more XMP Examples

How to insert or update an XMP array property (bag, seq, or alt).

Chilkat Visual Basic 6.0 Downloads

Visual Basic 6.0
Dim success As Long
success = 0

' This requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.

Dim xmp As New ChilkatXmp

' Load a JPG or TIF image file.
' Sample JPG's with XMP metadata may be found at:
' http://www.chilkatsoft.com/testData/xmp/sample1.jpg
' http://www.chilkatsoft.com/testData/xmp/sample2.jpg
' http://www.chilkatsoft.com/testData/xmp/sample3.jpg
success = xmp.LoadAppFile("sample1.jpg")
If (success <> 1) Then
    Debug.Print xmp.LastErrorText
    Exit Sub
End If

Debug.Print "Num embedded XMP docs: " & xmp.NumEmbedded

' Assuming there is at least one, get the 1st.
' (There is typically never more than one, but theoretically it's possible.)
Dim xml As ChilkatXml
Set xml = xmp.GetEmbedded(0)
If (xmp.LastMethodSuccess = 1) Then

    ' Create an object to hold one or more string values.
    Dim sa As New CkStringArray
    success = sa.Append("value_1")
    success = sa.Append("value_2")
    ' ...

    success = xmp.AddArray(xml,"bag","Iptc4xmpCore:Chilkat",sa)
    If (success <> 1) Then
        Debug.Print xmp.LastErrorText
    Else
        ' Save the JPG.
        success = xmp.SaveAppFile("modified.jpg")
        If (success <> 1) Then
            Debug.Print xmp.LastErrorText
        End If

    End If

Else
    Debug.Print xmp.LastErrorText
End If