Alle Outlook Kontakte eines ordners löschen

11/08/2008 - 17:41 von Bernhard Sollfrank | Report spam
Hallo,

ich versuche verzweifelt, für ein Sync-Add-In alle Items eines öffentlichen
Outlook-Ordners zu löschen. Dabei gibt es eine Fehlermeldung:

Wenn ich per Schleife durch den folder gehe, bricht er mir GENAU nach der
Hàlfte mit folgender Meldung ab:

System.Runtime.InteropServices.COMException (0xD6A20009): Array-Index
außerhalb des zulàssigen Bereichs.
bei Microsoft.Office.Interop.Outlook.ItemsClass.get_Item(Object Index)
bei OutlookSync2008.ThisApplication.LoopItems(Items Items, MAPIFolder
geloeschte, Int64 CountFrom, Int64 CountTo) in C:oot\projekte\Outlook Sync
2008\VB\OutlookSync2008\OutlookSync2008\ThisApplication.vb:Zeile 108.


In dem Ordner befinden sich nur Kontakte.

(Code vereinfacht)

dim folder as Outlook.MAPIFolder = Me.ActiveExplorer().Session.PickFolder
Dim Items As Outlook.Items = folder.items

Dim contact As Outlook.ContactItem
Dim i As Long

For i = 1 to items.count

contact = Items(i)
contact.delete

Next

End Sub

ebensowenig geht das hier:


...

for each item in items

item.delete

Next

...


Wie gesagt, nach der Hàlfte krieg ich die besagte Meldung. Solange ich nur
einzelne oder vielleicht 20 Kontakte lösche, klappt alles wunderbar.

Hat vielleicht jemand eine Idee, wie ich die Kontakte sauber rausbekomme?

Vielen Dank im Voraus!

Bernhard Sollfrank
 

Lesen sie die antworten

#1 Bernhard Sollfrank
12/08/2008 - 10:03 | Warnen spam
Oh je. Da brauch ich wohl mal wieder eine VB Auffrischung :-) Vielen Dank!

Aber nochwas: Wie gehe ich in einem Outlook-Add In mit der MAPI-Begrenzung
von Exchange (max. 250 Objekte pro Session) um, wenn ich mehr als 250
Kontakte löschen will?

mit besten Grüssen
Bernhard Sollfrank








"Peter Fleischer" wrote:

in einer Auflistung sollte man immer von hinten löschen, da sich mit jedem
Löschvorgang die Nummerierung àndert.

Ähnliche fragen