Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi BM_CLICK bei deaktivierten Blickschirm (https://www.delphipraxis.net/186407-bm_click-bei-deaktivierten-blickschirm.html)

Gebhard 1. Sep 2015 09:49

BM_CLICK bei deaktivierten Blickschirm
 
Guten Morgen,

ich möchte gerne den Parameter "BM_Click" für das Speichern von einer Exceldatei mit dem Dialogfeld "Dateidownload" des Internetexplorers nutzen. Dieses Speichern soll in regelmäßigen Abständen vollautomatisch erfolgen.

Ablauf in Kurzform:
- Aufruf der URL, über die die Exceldatei importiert wird,
- starten einer DLL, die den Schalter "Speichern" anklickt, denn das Dialogfeld "Dateidownload" ist Modal und
- speichern der Datei mit Hilfe des darauffolgenden Dialgfeldes "Speichern unter".

Die DLL ermitteilt mit Hilfe der Funktionen "FindWindow" und "FindWindowEx" die HWND des Schalters. Setzt das Dialogfeld mit "SetForegroundWindow" in den Vordergrund und klickt mit dem Befehl "SendMessage(hSchalter, BM_CLICK, 0, 0);" den Schalter an. Bei einem aktiven Bildschirm funktioniert alles Fehlerfrei. Bei einem deaktivierten Bildschirm (Bildschirmschoner oder gesperrt) wird der Befehl "SetForegroundWindow" nicht angenommen und das Programm steht still. Andere Befehle wie "...WM_Settext...", "...WM_KEYDOWN..." oder das Aktivieren anderer Schalter wie z.B. "Öffnen" werden ohne Probleme ausgeführt. Auf "SendMessage(hSchalter, WM_KEYDORN, VK_RETURN, 0);" erfolgt immer ein Abbruch. Egal, welcher Schalter aktiv ist. Der Befehl "...KEYDOWN, ORD('S'),...) wird ignoriert.

Ich arbeite mit dem BS Win7 und Delhpi 2005. Das Problem liegt sowohl bei "SendMessage..." als auch bei "PostMessage..." vor.

Hat Jemand eine Idee, wie "BM_CLICK" bei deaktivierten Bildschirm funktionieren könnte?

Vielen Dank für Eure Hilfe und Antwort.

baumina 1. Sep 2015 10:00

AW: BM_CLICK bei deaktivierten Blickschirm
 
Der Umweg über den IE ist vorgegeben, oder könntest du nicht einfach die Datei selbst vom Internet runterladen?

Gebhard 1. Sep 2015 11:34

AW: BM_CLICK bei deaktivierten Blickschirm
 
Danke für die Antwort.

Leider geht das direkte Runterladen nicht, weil die Exceldatei erst beim Aufruf durch LotusNotes erstellt wird.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:02 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz