Outook: Globale Kontakte anzeigen lassen



  • Ja moin Leute,

    ich will mir die Einträge meiner Kontakte (besser aber die Globalen Kontakte) anzeigen lassen!

    Ich hab da scho ma was gebastelt, das er mir einen neuen Kontakt in meine persönlichen kontaktordner schreibt!

    Ich will aber das er mir gerade diesen Ordner ausliest!
    Ich weiss aber leider nich wie ich des realisieren kann, und brauche nun eure Hilfe! Anbei ma den Source den ich bis jetzt getipt habe (also des schreibt mir nen Kontakt!!!!)

    Scho ma danke an euch!!

    Gruß

    SEF

    #include "stdafx.h"
    #include "gdfgdfg.h"
    #include "gdfgdfgDlg.h"
    
    #ifdef _DEBUG
    #define new DEBUG_NEW
    #undef THIS_FILE
    static char THIS_FILE[] = __FILE__;
    #endif
    
    #include "msoutl9.h" 
    
       // Ole-initialization class.
       class OleInitClass {
       public:
          OleInitClass() {
             OleInitialize(NULL);
          }
          ~OleInitClass() {
             OleUninitialize();
          }
       };
       OleInitClass g_OleInitClass;
    
    CGdfgdfgDlg::CGdfgdfgDlg(CWnd* pParent /*=NULL*/)
    	: CDialog(CGdfgdfgDlg::IDD, pParent)
    {
    	//{{AFX_DATA_INIT(CGdfgdfgDlg)
    		// HINWEIS: Der Klassenassistent fügt hier Member-Initialisierung ein
    	//}}AFX_DATA_INIT
    	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
    }
    
    void CGdfgdfgDlg::DoDataExchange(CDataExchange* pDX)
    {
    	CDialog::DoDataExchange(pDX);
    	//{{AFX_DATA_MAP(CGdfgdfgDlg)
    		// HINWEIS: Der Klassenassistent fügt an dieser Stelle DDX- und DDV-Aufrufe ein
    	//}}AFX_DATA_MAP
    }
    
    BEGIN_MESSAGE_MAP(CGdfgdfgDlg, CDialog)
    	//{{AFX_MSG_MAP(CGdfgdfgDlg)
    	ON_WM_PAINT()
    	ON_WM_QUERYDRAGICON()
    	ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
    	//}}AFX_MSG_MAP
    END_MESSAGE_MAP()
    
    BOOL CGdfgdfgDlg::OnInitDialog()
    {
    	CDialog::OnInitDialog();
    
    	SetIcon(m_hIcon, TRUE);			// Großes Symbol verwenden
    	SetIcon(m_hIcon, FALSE);		// Kleines Symbol verwenden
    
    	// ZU ERLEDIGEN: Hier zusätzliche Initialisierung einfügen
    
    	return TRUE;  // Geben Sie TRUE zurück, außer ein Steuerelement soll den Fokus erhalten
    }
    
    // Wollen Sie Ihrem Dialogfeld eine Schaltfläche "Minimieren" hinzufügen, benötigen Sie 
    //  den nachstehenden Code, um das Symbol zu zeichnen. Für MFC-Anwendungen, die das 
    //  Dokument/Ansicht-Modell verwenden, wird dies automatisch für Sie erledigt.
    
    void CGdfgdfgDlg::OnPaint() 
    {
    	if (IsIconic())
    	{
    		CPaintDC dc(this); // Gerätekontext für Zeichnen
    
    		SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);
    
    		// Symbol in Client-Rechteck zentrieren
    		int cxIcon = GetSystemMetrics(SM_CXICON);
    		int cyIcon = GetSystemMetrics(SM_CYICON);
    		CRect rect;
    		GetClientRect(&rect);
    		int x = (rect.Width() - cxIcon + 1) / 2;
    		int y = (rect.Height() - cyIcon + 1) / 2;
    
    		// Symbol zeichnen
    		dc.DrawIcon(x, y, m_hIcon);
    	}
    	else
    	{
    		CDialog::OnPaint();
    	}
    }
    
    HCURSOR CGdfgdfgDlg::OnQueryDragIcon()
    {
    	return (HCURSOR) m_hIcon;
    }
    
    void CGdfgdfgDlg::OnButton1() 
    {
       // Start Outlook.
    
       _Application olApp;
       COleException e;
       if(!olApp.CreateDispatch("Outlook.Application", &e)) {
          CString str;
          str.Format("CreateDispatch() failed w/error 0x%08lx", e.m_sc);
          AfxMessageBox(str, MB_SETFOREGROUND);
          return;
       }
    
       _NameSpace olNs(olApp.GetNamespace("MAPI"));
       COleVariant covOptional((long)DISP_E_PARAMNOTFOUND, VT_ERROR);
       olNs.Logon(covOptional, covOptional, covOptional, covOptional);
    
       // Neuer Kontakt
       _ContactItem olItem(olApp.CreateItem(2));
    
       //Kontakt informationen...
       olItem.SetFullName("Tester");
       COleDateTime bdDate;
       bdDate.SetDate(1975, 9, 15);
       olItem.SetBirthday(bdDate);
       olItem.SetCompanyName("Testsoft");
       olItem.SetHomeTelephoneNumber("4562555488");
       olItem.SetEmail1Address("someone@testsoft.com");
       olItem.SetJobTitle("Developer");
       olItem.SetHomeAddress("25 Teststrasse\n, Testcity 28226");
    
       // Speichere Kontakt
       olItem.Save();
    
       AfxMessageBox("All done.", MB_SETFOREGROUND);
       olNs.Logoff();	
    }
    

Anmelden zum Antworten