Hallo zusammen,
ich suche eine Möglichkeit, dass Autoit bei einer Mail nach bestimmten Wörtern sucht..
Z.B. Kommt eine E-Mail an in Outlook 2003, Autoit sieht in in der rechten Spalte und schaut ob da ein Wort drin vorkommt (z.B. Fritz)...
Wenn ja, soll Funktion xyz ausgeführt werden...
Nun dachte ich mein erster Schritt wäre, in eine Variable den E-Mail Inhalt zu speichern. - Hier scheiter ich jedoch
- Die Mails sind alle im Textformat ! Keine Html-Mail ist dabei.
Hat jemand von Euch eine Lösung?
Auf autoitscript.com habe ich im Forum ein Script gefunden. Es tut genau das was ich will, aber mit dem Notepad...
Spoiler anzeigen
; My first DLLCall
; ptrex
#include <GUIConstants.au3>
#Include <date.au3>
#include <Array.au3>
#include <GuiEdit.au3>
Opt("WinTitleMatchMode", 4); Allow ClassName lookup
;Global Const $EM_GETLINE = 0xC4
[/autoit] [autoit][/autoit] [autoit]Dim $LineCount
Dim $LineNum
Dim $Ret
Dim $LineLen
Dim $FirstCharPos
Dim $Buffer
Const $Applhandle = WinGetHandle("classname=rctrl_renwnd32")
Const $Ctrlhandle = ControlGetHandle("","",2748 )
WinWaitActive($Applhandle)
sleep(500)
WinHandle()
;CtrlReadLineNum($Ctrlhandle)
;LineIndex($Ctrlhandle)
;LineLenght($Ctrlhandle)
CtrlRead($Ctrlhandle)
Func WinHandle(); tested = OK
$result = DllCall("user32.dll", "int", "MessageBox", "hwnd", 0, "str", "Window Active " & $Ctrlhandle, "str", "Handle Test" , "int", 0)
EndFunc
Func CtrlReadLineNum($Ctrlhandle); tested = OK
$Ctrlread = _GUICtrlEditGetLineCount($Ctrlhandle)
MsgBox(0,"Test","Line #" & " "& $Ctrlread)
EndFunc
Func LineIndex($Ctrlhandle); tested = OK
$Ctrlread =_GUICtrlEditLineIndex($Ctrlhandle)
MsgBox(0,"Test","Line Index" & " "& $Ctrlread)
EndFunc
Func LineLenght($Ctrlhandle); tested = OK
$Ctrlread =_GUICtrlEditLineLength($Ctrlhandle)
MsgBox(0,"Test","Line Lenght" & " "& $Ctrlread)
EndFunc
Func CtrlRead($Ctrlhandle); tested = OK
$LineCount = _GUICtrlEditGetLineCount($Ctrlhandle)
MsgBox(0, "Test", "Line #" & " " & $LineCount)
For $LineNum = 0 To $LineCount - 1
$FirstCharPos = _GUICtrlEditLineIndex($Ctrlhandle, $LineNum)
MsgBox(0, "Test", "First Char Pos on Line IDX: " & $FirstCharPos)
$LineLen = _GUICtrlEditLineLength($Ctrlhandle, $FirstCharPos)
MsgBox(0, "Test", "Length: " & $LineLen)
$Buffer = $LineLen
$Ret = DllCall("user32.dll", "int", "SendMessage", "hwnd", $Ctrlhandle, "int", 0xC4, "int", $LineNum, "str", "")
MsgBox(0, "Test", "Text is =" & " " & $Ret[4])
Next
EndFunc ;==>CtrlRead
Const $Applhandle = WinGetHandle("classname=rctrl_renwnd32")
Const $Ctrlhandle = ControlGetHandle("","",2748)
habe ich selber angepasst.
Wenn ich mit Au3Info auf das Vorschaufenster in Outlook zeige erhalte ich folgende Informationen:
>>>> Window <<<<
Title: Posteingang - Microsoft Outlook
Class: rctrl_renwnd32
Position: -4, -4
Size: 1288, 1004
Style: 0x17CF0000
ExStyle: 0x00040100
>>>> Control <<<<
Class: RichEdit20W
Instance: 4
ID: 8224
Text:
Position: 600, 224
Size: 663, 732
ControlClick Coords: 101, 28
Style: 0x51201844
ExStyle: 0x00000000
>>>> Mouse <<<<
Position: 701, 252
Cursor ID: 5
Color: 0xFFFFFF
>>>> StatusBar <<<<
1: 3 Elemente
2:
>>>> Visible Text <<<<
MsoDockTop
Standard
Kontaktnamen eingeben
Menüleiste
Frage hier eingeben
WunderBar
NUIDocumentWindow
3 Elemente
Tabellenansicht
Betreff
Willkommen bei Microsoft Office Outlook 2003
Von
Outlook 2003-Team [olteam@microsoft.com]
An:
Neuer Outlook-Benutzer
Anlagen:
Anlagen
; ; ; ; ; ; ; ; ; ;
Nachricht
Nachricht
Nachricht
Herzlich willkommen bei Microsoft® Office Outlook® 2003! [....]
Vielen Dank!
Ihr Outlook-Team
>>>> Hidden Text <<<<
MsoDockLeft
MsoDockRight
Aufgabenbereich
Web
outlook:today
MsoDockBottom
Cc:
DAL=on
MsoWorkPane
Alle Nachschlagewerke
Alles anzeigen