Access Beispiel: OutlookSicherheitsabfrage

Aus DBWiki
Wechseln zu: Navigation, Suche

Beschreibung des Beispiels Datei:AccSampleClickYes.zip

Das Beispiel zeigt eine Möglichkeit, die Outlook- Sicherheitsabfrage "Ein Programm versucht ... Zugriff gewähren für..." automatisch wegzuklicken. Es läßt sich damit weder das Fenster unterdrücken, noch eine Nachricht "unbemerkt" verschicken aber das war auch nicht mein Ziel. Das Beispiel funktioniert nur mit Outlook-Automatisierung, nicht mit "SendObject" weil da ein anderes Fenster kommt, das sich mit den vorgestellten Mitteln nicht wegklicken läßt.

Funktionsweise

Es wird im temp- Verzeichnis des Benutzers eine Datenbank angelegt, in die das Modul "modClickYes" und das Formular "frmClickyes" exportiert wird (Im Folgenden "ClickYesDB" genannt). Diese ClickYesDB wird gestartet sobald in der Outlook-Code läuft.

Die ClickYesDB sucht jede Sekunde (Timer in frmClickYes) eben das wegzuklickende Fenster, setzt den Haken, zentriert den Mauszeiger über den "Ja-Button" und führt einen Linksklick aus.

Somit läuft der Outlook-Code schön durch, leider kann man .Send nicht direkt ausführen sondern muß den Umweg über SendKeys nehmen. Zum Schluß wird die ClickYesDB zugemacht und gelöscht.

Anmerkungen

  • ich habe die "Lebenszeit" der ClickYesDB auf 5 Sek begrenzt
  • Getestet unter W2K/A03/OL03
  • Funktioniert im Moment nur mit deutschem Outlook -> ClickYes - Funktion
  • Es war viel Copy&Paste Programming, Quellen sind im Code genannt

Für Outlook XP muß im Modul "modClickYes" die Zeile

hWnd = FindWindow(vbNullString, "Microsoft Office Outlook")

geändert werden in

hWnd = FindWindow(vbNullString, "Microsoft Outlook")

Außerdem ist im Moment die Zeile im Formular1

tmpDB = CreateClickYesDB 'Formular und Modul in extra Datenbank...

auskommentiert. Das darf natürlich auch nicht sein.

Viel Spaß damit, Bastian