AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Sendmessage an Dialogfenster

Ein Thema von Nimmersatt · begonnen am 14. Feb 2014 · letzter Beitrag vom 18. Feb 2014
 
Nimmersatt

Registriert seit: 14. Feb 2014
86 Beiträge
 
#14

AW: Sendmessage an Dialogfenster

  Alt 17. Feb 2014, 22:05
Hallo Jänicke,

Danke für die Info, diese werde ich mal testen.
Vielleicht funktioniert diese Option ja.

Aber vielleicht gibt es ja doch einen Weg, um dieses Problem innerhalb von Delphi zu lösen, wie die zwei Beiträge hoffen lassen.

Hallo matsch,

soweit ich weiss, kann man das Symbol nicht ausblenden. Du kannst Dir aber sehr einfach ein eigenes ExpressClickYes bauen (Dazu benötigst Du die API-Funktionen FindWindow und SendMessage), bzw. die Funktionalität in direkt in Deine Anwendung integrieren (z.B. in einem Hintergrundthread, der in der Main-methode angestoßen wird). Bei einem eigenen Programm kannst Du selbst bestimmten, ob und falls wie es sichtbar ist, oder nicht.


Hallo Rainbird,

ich versuche gerade so einen autoatischen "Klick" in mein Programm einzubauen. Es klappt alles auch wunderbar, nur habe ich beim letzten Schritt ein Problem. Der Versuch den Button "Erteilen" zu drücken passiert einfach nichts. Die schritte vorher funktionieren, dh. es ist alles korrekt ausgewählt (Fenster bleibt ja erstmal so stehen). Das vorher ermittelte Button Handle stimmt aber (mit WinSpy überprüft). Hier mal mein Ablauf:
hwndCheckbox = Checkbox, die erstmal aktiviert werden muss, um die gewünschte Zeit auswählen zu können
hwndCombobox = Combobox mit Zeitangabe
hwndButton = Handle des Buttons "Erteilen", welcher den Zugriff erlaubt
hWnd = Handle des kleinen Outlook Fensters (Zugriff gewähren?)

C#-Code:
PostMessage(hWnd, WM_SETFOCUS, 0, 0);
PostMessage(hwndCheckbox, WM_SETFOCUS, 0, 0);
PostMessage(hwndCheckbox, WM_KEYDOWN, VK_SPACE, 0);
PostMessage(hwndCheckbox, WM_KEYUP, VK_SPACE, 0xC0000000);
PostMessage(hwndCombobox, WM_KEYDOWN, VK_DOWN, 0);
PostMessage(hwndCombobox, WM_KEYUP, VK_DOWN, 0xC0000000);
PostMessage(hwndCombobox, WM_KEYDOWN, VK_DOWN, 0);
PostMessage(hwndCombobox, WM_KEYUP, VK_DOWN, 0xC0000000);
PostMessage(hwndCombobox, WM_KEYDOWN, VK_DOWN, 0);
PostMessage(hwndCombobox, WM_KEYUP, VK_DOWN, 0xC0000000);
PostMessage(hwndButton, WM_SETFOCUS, 0, 0);
PostMessage(hwndButton, WM_KEYDOWN, VK_SPACE, 0);
PostMessage(hwndButton, WM_KEYUP, VK_SPACE, 0xC0000000);

Ist irgendwas in meinem Ablauf falsch? Ich habe auch schon SendMessage probiert, aber auch damit wird der Button nicht gedrückt.

Quelle
http://www.mycsharp.de/wbb2/thread.php?threadid=42888
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:56 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz