VB-Homepage Tipp 155

Ermitteln ob MS Mail-Client (16Bit) aktiv ist

Wer schon mit der MAPI.DLL zu tun hatte der weiß, das es mit der Materie nicht so einfach ist. Denn jedes Mail öffnen, hat eine eigne Sessionnummer, diese ist nur in dieser Sitzung gültig und wenn man z.Bsp einen Notifyer nebenher laufen lassen will, der nur über neue Nachrichten informiert, dann hilft es also gar nichts eine neues Session aufzumachen, die ist nicht für eine schon aktive Mailsession gültig.
Also ich hab damals das Handtuch geworfen, weil das Programm zwar im Prinzip lief, aber zu unsicher war. Sollten Sie aber notgedrungen oder aus lieber langer Weile sich mit der Thematik auseinander setzen müssen oder wollen, dann haben wir hier zumindestens etwas, das Ihnen die Arbeit abnimmt zu ermitteln, ob der Mailclient schon gestartet ist oder nicht. (nur 16Bit Client).

mailaktv.mak
MAILAKTV.FRM
ProjWinSize=152,402,248,215
ProjWinShow=2
Title="MAILAKTV"
ExeName="MAILAKTV.EXE"

mailaktv.frm
VERSION 2.00
Begin Form Form1
BorderStyle = 3 'Fixed Double
Caption = "VB-Homepage Tipp"
ClientHeight = 840
ClientLeft = 2970
ClientTop = 4290
ClientWidth = 2670
Height = 1245
Left = 2910
LinkTopic = "Form1"
ScaleHeight = 840
ScaleWidth = 2670
Top = 3945
Width = 2790
Begin CommandButton Command1
Caption = "Prüfe, ob MS Mail aktiv"
Height = 375
Left = 120
TabIndex = 0
Top = 120
Width = 2415
End
Begin Label Label1
Alignment = 2 'Center
BackStyle = 0 'Transparent
Caption = "nur MS Mail 16Bit Client"
FontBold = 0 'False
FontItalic = 0 'False
FontName = "MS Sans Serif"
FontSize = 8.25
FontStrikethru = 0 'False
FontUnderline = 0 'False
Height = 255
Left = 120
TabIndex = 1
Top = 600
Width = 2415
End
End
Declare Function GetModuleHandle Lib "Kernel" (ByVal lpModuleName As String) As Integer
Sub Command1_Click ()
x = IsMicrosoftMailRunning()
If x <> 0 Then
MsgBox "MS Mail ist aktiv"
Else
MsgBox "MS Mail nicht aktiv"
End If
End Sub
Private Function IsMicrosoftMailRunning ()
On Error GoTo IsMicrosoftMailRunning_Err
IsMicrosoftMailRunning = GetModuleHandle("MSMAIL")
IsMicrosoftMailRunning_Err:
If Err Then
MsgBox "MS Mail nicht aktiv"
End If
End Function

Um den Code zu nutzen, erstellen Sie sich mit einem Editor Dateien, die Sie wie angegeben benennen und fügen den Quellcode ein. Starten Sie nun die *.vbp Datei oder öffnen Sie das Projekt aus VB heraus.

Tipp-Download

Quelle : Calvin Smith

Zurück zur Übersichtsseite