Kontakte in MS-Exchange 2000 verwalten
-
Hallo
Ich arbeite an einem Programm, mit dem ich Kontakte aus einer externen Datenbank (MS-SQL Server),
in den MS-Exchange Server 2000 exportieren kann.
Erstellen der Kontakte klappt einwandfrei, gemäss Beispiel aus der MSDN:
[url]
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/e2k3/e2k3/_clb_adding_a_new_contact_with_cdoex_cpp.asp
[/url]
Kennt jemand eine möglichkeit, einen bestimmten Kontakt wieder zu löschen?Der Ablauf meines Programms sollte dann folgendermassen sein:
1. Alle Kontakte die in der SQL-DB als "Gelöscht" markiert sind, im Exchange löschen
2. Alle "aktiven" Kontakte aus der SQL-DB in den Exchange kopieren.Hier mal mein Code zum reinkopieren der funktioniert:
HRESULT hr = S_OK; CString str,str_url; CListBox *pLB; pLB = (CListBox*)GetDlgItem(IDC_LIST_HISTO); str_url = m_edit_url; str_url = str_url += m_edit_ordner; str_url = str_url += "/"; wchar_t* folderURL = NULL; size_t size; size = mbstowcs(NULL,str_url,0); folderURL = (wchar_t*)malloc(size * sizeof(wchar_t*) + 1); mbstowcs(folderURL,str_url,size+1); BSTR bstrFolderURL = SysAllocString(folderURL); try { CDO::IPersonPtr pPerson(_uuidof(CDO::Person)); CDO::IDataSourcePtr pDsrc; pPerson->put_FirstName(m_edit_vorname.AllocSysString()); pPerson->put_LastName(m_edit_nachname.AllocSysString()); pPerson->put_Email(m_edit_email.AllocSysString()); pPerson->get_DataSource(&pDsrc); hr = pDsrc->SaveToContainer(bstrFolderURL, 0, (enum CDO::ConnectModeEnum) adModeReadWrite, (enum CDO::RecordCreateOptionsEnum)adCreateOverwrite, (enum CDO::RecordOpenOptionsEnum)adOpenSource, L"", L""); if (SUCCEEDED(hr)) { str.Format("Kontakt Erfolgreich hinzugefügt: %s - %s %s",m_edit_vorname,m_edit_nachname,m_edit_email); pLB->AddString(str); str.Format("-> in Ordner: %s",m_edit_ordner); pLB->AddString(str); } else { str.Format("Fehler beim Erstellen: %s - %s %s",m_edit_vorname,m_edit_nachname,m_edit_email); pLB->AddString(str); } } catch(_com_error &e) { dump_com_error(e); } m_edit_nachname = ""; m_edit_vorname = ""; m_edit_email = ""; UpdateData(FALSE); SysFreeString(bstrFolderURL);Vielen Dank