Ist das Script für euch nützlich? 7
-
Nein, ich benutze kein Windows Mail (4) 57%
-
Ja, kann ich gebrauchen (2) 29%
-
Nein, ich benutze immer noch Xp und hab kein Vista (1) 14%
Hallo,
ich wollte gerade Windows Mail unter Vista einrichten und dabei ist mir aufgefallen, dass man das Programm nicht in den Tray minimieren kann. Also hab ich mir die Mühe gemacht, ein kleines Script zu schreiben, das Windows Mail beim minimieren unsichtbar macht und nur einen Symbol im Traybereich anzeigt. Unter Vista funktioniert das Script. Gibt es unter Windows 7 auch Windows Mail?
Im Anhang ist das Script als Code und kompiliert vorzufinden.
Spoiler anzeigen
#cs ----------------------------------------------------------------------------
[/autoit] [autoit][/autoit] [autoit]AutoIt Version: 3.3.6.0
Author: Burak Keskin
Script Function:
Template AutoIt script.
#ce ----------------------------------------------------------------------------
[/autoit] [autoit][/autoit] [autoit]; Script Start - Add your code below here
[/autoit] [autoit][/autoit] [autoit]Opt("TrayMenuMode", 1)
Opt("TrayOnEventMode", 1)
#include <Constants.au3>
[/autoit] [autoit][/autoit] [autoit]Local Const $ScriptOrdner = @ScriptDir
Local Const $ProgrammOrdner = @ProgramFilesDir
Local Const $WindowsMailPath = $ProgrammOrdner & "\Windows Mail\WinMail.exe"
_StarteWinMail()
Local Const $FensterHandle = WinGetHandle("[CLASS:Outlook Express Browser Class]")
Local Const $Delay = 200 ;Aktualisierungszeit in ms.
If Not ProcessExists("WinMail.exe") Then
MsgBox(16, "Fehler", "Sie müssen zuerst Windows Mail starten.")
Exit
EndIf
TraySetIcon($WindowsMailPath, -1)
TraySetOnEvent($TRAY_EVENT_PRIMARYDOUBLE , "_ZeigeWindowsMailFenster")
If WinGetState($FensterHandle) <> 23 Then
TraySetState(2)
Else
TraySetState(1)
EndIf
AdlibRegister("_VersteckeWindowsMail", $Delay)
[/autoit] [autoit][/autoit] [autoit];Nichts
While 1
Sleep(50)
WEnd
;Versteckt das Fenster, wenn es minimiert wurde.
Func _VersteckeWindowsMail()
Switch WinGetState($FensterHandle)
Case 23 ;Minimiert
TraySetState(1)
WinSetState($FensterHandle,"", @SW_HIDE)
EndSwitch
If Not ProcessExists("WinMail.exe") Then Exit
EndFunc
;Stellt das Fenster wieder her.
Func _ZeigeWindowsMailFenster()
Switch WinGetState($FensterHandle)
Case 7, 21, 39
TraySetState(2)
WinActivate($FensterHandle)
WinSetState($FensterHandle, "", @SW_RESTORE)
EndSwitch
EndFunc
;Startet Windows Mail.
Func _StarteWinMail()
If ProcessExists("WinMail.exe") Then Return 0
Run($WindowsMailPath)
WinWait("Posteingang - Windows Mail", "Symbolleiste")
WinSetState("Posteingang - Windows Mail", "Symbolleiste", @SW_MINIMIZE)
EndFunc