Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

get the recipients from Outlook Address book

Îåêßíçóå áðü ôï ìÝëïò manosB. Τελευταία δημοσίευση από το μέλος manosB στις 03-05-2007, 15:27. Υπάρχουν 3 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  30-04-2007, 08:53 31058

    get the recipients from Outlook Address book

    Χαιρετώ την ομύγυρη

    Θέλω να εμφανίσω το standart παράθυρο του βιβλίο Διευθύνσεων του Outlook. Να διαλέγει ο χρήστης τις διευθύνσεις που θέλει και μετά να τους παίρνω στην εφαρμογή μου

    Ακολουθεί πρόχειρα γραμμένος κώδικας Embarrassed

    Private Sub MailBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MailBtn.Click

            Dim objOutlook As Object
            Dim ObjAddressBook As Object
            Dim ObjMessage As Object

            objOutlook = Microsoft.VisualBasic.CreateObject("MAPI.session")
            objOutlook.logon("Microsoft Outlook", "", "true")
            ObjMessage = objOutlook.outbox.messages.add

            ObjAddressBook = objOutlook.addressbook(ObjMessage.recipients, "Επιλογή Αποδεκτών", True, True, 1, "add")

    ''''''''''''''''''έδώ θέλω κάτι για να πιάσω τις επιλογές του χρήστη. Καμιά ιδέα??

            objOutlook.logoff()

            ObjAddressBook = Nothing
            ObjMessage = Nothing
            objOutlook = Nothing

        End Sub


    Manos
  •  02-05-2007, 08:48 31203 σε απάντηση της 31058

    Απ: get the recipients from Outlook Address book

    Κανείς δεν μπορεί να βοηθήσει??

    Manos
  •  02-05-2007, 10:57 31210 σε απάντηση της 31058

    Απ: get the recipients from Outlook Address book

    Απ' ότι βλέπω, χρησιμοποιείς late binding (όλα αυτά τα "As Object") που σημαίνει ότι θα σου βγει η πίστη για να βρεις τις μεθόδους και τα properties από τα objects. Επιπρόσθετα, μπορεί να προκύψουν run-time errors που δεν θα τα πιάσει το compilation. Μάλλον αυτός ο κώδικας είναι από VBScript και έχει γίνει port σε VB.NET, οπότε παράτα τον...

    Για το standard address book δεν ξέρω να σε βοηθήσω, ωστόσο μπορείς να ακολουθήσεις εναλλακτική οδό. Μπορείς να διαβάσεις όλα τα contacts και να τα εμφανίσεις σε δική σου φόρμα. Είχα κάνει κάτι παρόμοιο και με είχε βοηθήσει αυτό το άρθρο: http://support.microsoft.com/?kbid=313802

    Επίσης, θα πρέπει να δεις τι θα κάνεις με το security, καθώς στη μέση μπαίνει το Outlook Object Model Guard. Δες εδώ http://www.outlookcode.com/d/sec.htm κι εδώ http://msdn2.microsoft.com/en-us/library/aa168346(office.11).aspx

    Γενικά, μπορείς να βρεις πολλές πληροφορίες για development με το Outlook εδώ: http://www.outlookcode.com/d/index.htm#dotnet

     


    Vir prudens non contra ventum mingit
  •  03-05-2007, 15:27 31362 σε απάντηση της 31210

    Απ: get the recipients from Outlook Address book

    KelMan:

    Απ' ότι βλέπω, χρησιμοποιείς late binding (όλα αυτά τα "As Object") που σημαίνει ότι θα σου βγει η πίστη για να βρεις τις μεθόδους και τα properties από τα objects. Επιπρόσθετα, μπορεί να προκύψουν run-time errors που δεν θα τα πιάσει το compilation. Μάλλον αυτός ο κώδικας είναι από VBScript και έχει γίνει port σε VB.NET, οπότε παράτα τον...

     
    Είχες δίκιο Kel. Το παράτησα τον κώδικα και το υλοποίησα με τον κλασσικό τρόπο.

    Απλά βαριόμουν να φτιάξω από την αρχή φορμούλα για το Address Book.Embarrassed

    Γεια όποιον ενδιαφέρεται ο κώδικας πάει κάπως έτσι 

            Dim oApp As Outlook.Application = New Outlook.Application()

            ' Get NameSpace and Logon.
            Dim oNS As Outlook.NameSpace = oApp.GetNamespace("mapi")

            Try
                oNS.Logon("Microsoft Outlook", "", False, True)
                Dim MyAddressList As Outlook.AddressList = oNS.AddressLists("My Address List")
                'Retrieve the contacts of the selected address book
                Dim MyAddressEntries As Outlook.AddressEntries = MyAddressList.AddressEntries
                Dim myentry As Outlook.AddressEntry

                For i = 1 To MyAddressEntries.Count
                    myentry = MyAddressEntries.Item(i)
                    Me.AddressLst.Items.Add(myentry.Name)
                Next
            Catch
                MsgBox("Μη Προσβάσιμο Βιβλίο Διευθύνσεων!", vbExclamation)
                Me.Close()
            Finally
                oNS.Logoff()
                oApp = Nothing
                oNS = Nothing
            End Try


    Manos
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems