Goedemiddag, is het mogelijk om een sub te starten in vb.net nadat een email verplaatst is in een betreffende map? In principe wil ik de notificatie in Outlook pas zien wanneer er mail in een specifieke map wordt geplaatst. Dat plaatsen in die map kan ik echter niet met een rule doen maar gebeurt met de hand. ik heb wat zitten stoeien met de eventhandler maar kom er niet uit.
Quickstartcverkooyen schreef op dinsdag 31 mei 2011 @ 17:46:
ik heb wat zitten stoeien met de eventhandler maar kom er niet uit.
Dus: mogen we wat relevante(!) stukken code, exacte foutmeldingen, resultaten van je debugging (Debuggen: Hoe doe ik dat?) etc. ?4. Geef vervolgens aan waar je denkt dat het aan ligt.
5. Geef daarna aan wat je al geprobeerd hebt om zelf tot een oplossing te komen.
Een duidelijke omschrijving geven van dingen die je al geprobeerd hebt voorkomt ook dat mensen tips geven die voor jou oude koek zijn.
6. Geef aan waarom je denkt dat jouw oplossing niet werkt of geef aan waarom je denkt dat dat niet werkt.
Je eigen oplossing heeft niet gewerkt. Als je begrijpt waarom niet, vertel dit dan. Als je dat niet begrijpt, kun je dat als "subvraag" in je topicstart opnemen.
7. Geef altijd aan wat voor eventuele foutmeldingen of waarschuwingen je krijgt.


Definieer vooral ook even "kom er niet uit". Waar kom je niet uit? Wat werkt er precies wel/niet? Wélke eventhandler hebben we het überhaupt over hier? En welke versie van Outlook?
[Voor 11% gewijzigd door RobIII op 31-05-2011 17:55]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Roses are red Violets are blue, Unexpected ‘{‘ on line 32.
Over mij
Zoek eens op het ItemAdd event (binnen Outlook dan).
Vlinders moet je volgen, niet vangen...
Excuus voor de wat sumiere topic start. Ik gebruik Outlook 2010 en probeer wat te programmeren in vb.net maar als dit net zo makkelijk met vba in Outlook kan dan moet ik daar maar eens naar gaan kijken. Ik had tot zover de volgende code om in een map te kijken:
ierbij wordt er gekeken naar de ongelezen berichten in een map maar ik wil dus eigenlijk gewoon de nieuw geplaatste e-mails ondervangen.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| Dim objOutlook As Outlook.Application = CreateObject("Outlook.Application") Dim nSpace As Outlook.NameSpace Dim objFolder As Outlook.MAPIFolder Dim DatalijstFolder As Outlook.MAPIFolder Dim objMail As Outlook.MailItem nSpace = objOutlook.Application.GetNamespace("MAPI") objFolder = nSpace.GetDefaultFolder(objOutlook.OlDefaultFolders.olFolderInbox) DatalijstFolder = objFolder.Folders(Me.TextBox1.Text) For Each objMail In DatalijstFolder.Items If (objMail.UnRead) Then End If Next |
ierbij wordt er gekeken naar de ongelezen berichten in een map maar ik wil dus eigenlijk gewoon de nieuw geplaatste e-mails ondervangen.
Je zegt in je TS:cverkooyen schreef op dinsdag 31 mei 2011 @ 18:10:
ierbij wordt er gekeken naar de ongelezen berichten in een map maar ik wil dus eigenlijk gewoon de nieuw geplaatste e-mails ondervangen.
Ik ben dus geïnteresseerd in wat je daar (precies) in hebt zitten stoeien, wat er niet werkt (of de eventhandler bijv. überhaupt aangeroepen wordt) etc.cverkooyen schreef op dinsdag 31 mei 2011 @ 17:46:
ik heb wat zitten stoeien met de eventhandler maar kom er niet uit.
De code die je nu post werkt (naar ik aanneem? dat haal ik niet uit je post) en ik zie niet wat wij daar nog op zouden moeten aanvullen. Je zegt wel "ik wil dit-en-dat-en-zus-en-zo" maar je laat nou nét de relevante informatie (de poging(en) met de eventhandler) daartoe achterwege. En dan komt 't, nogmaals, neer op een scriptrequest. Snappie?

[Voor 16% gewijzigd door RobIII op 31-05-2011 18:16]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Roses are red Violets are blue, Unexpected ‘{‘ on line 32.
Over mij
Ja de code die ik poste werkt in principe. Eerlijk gezegd begrijp ik nog niet goed hoe ik de event handler moet aanroepen, daar heb ik mee zitten stoeien. De enigste event die ik kan oproepen is:
Waarbij ik dus een sub kan starten bij het ontvangen van een nieuw e-mailtje.
code:
1
2
| Dim m_Olapp As New Outlook.Application AddHandler m_Olapp.NewMail, AddressOf Me.eventhandlerNewMail |
Waarbij ik dus een sub kan starten bij het ontvangen van een nieuw e-mailtje.
[Voor 5% gewijzigd door cverkooyen op 31-05-2011 18:27]
Eerlijk gezegd word ik een beetje moe het steeds uit je te moeten trekken, maar: wat werkt er niet aan de code die je nu post? Wordt de functie die je met AddHandler toekent wel uitgevoerd? Zo ja: weet je het zeker? Heb je dat gecontroleerd? En als die functie dan wordt uitgevoerd, wat is dan concreet het probleem? En zo nee: hoe heb je het gecontroleerd?cverkooyen schreef op dinsdag 31 mei 2011 @ 18:26:
Waarbij ik dus een sub kan starten bij het ontvangen van een nieuw e-mailtje.
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Roses are red Violets are blue, Unexpected ‘{‘ on line 32.
Over mij
Inmiddels heb ik het werkende gekregen met Vba in Outlook.
Ik gebruik de code:
Nu zit ik nog met één ding. Is het mogelijk om de desktop alert zelf aan te roepen via een functie?
Ik gebruik de code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
| Dim Inbox As folder Public WithEvents InboxMails As Outlook.Items Private Sub Application_Startup() Set Inbox = GetNamespace("MAPI").GetDefaultFolder(olFolderInbox) 'Set InboxMails = Inbox.Items Set InboxMails = Inbox.Folders("map").Items End Sub Private Sub InboxMails_ItemAdd(ByVal Item As Object) MsgBox "Item ADD" End Sub |
Nu zit ik nog met één ding. Is het mogelijk om de desktop alert zelf aan te roepen via een functie?
Pagina: 1