AGB  ·  Datenschutz  ·  Impressum  







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

Tastenkombination an Programm senden

Ein Thema von Mazel · begonnen am 19. Jan 2007 · letzter Beitrag vom 19. Mär 2007
Antwort Antwort
Leo0385

Registriert seit: 19. Mär 2007
2 Beiträge
 
#1

Re: Tastenkombination an Programm senden

  Alt 19. Mär 2007, 13:30
Ich stehe zur Zeit vor dem gleichen Problem. Eine Lösung wäre diese hier:
Delphi-Quellcode:

procedure PostKeyDown(key: Byte);
begin
  keybd_event(key, Mapvirtualkey(key, 0), 0, 0 );
end;

procedure PostKeyUp(key: Byte);
begin
  keybd_event(key, Mapvirtualkey(key, 0), KEYEVENTF_KEYUP, 0 );
end;


TForm1.Button1Click(Sender: TObject);
...
...
  wnd := FindWindowEx(0, 0, nil, 'Deine Anwendung');
  if wnd <> 0 then
  begin
    // weil die Proc PostKeyDown kein HWND benutzt,
    // muss das ZielFenster im Vordergrund stehen

    SetForegroundWindow(wnd);
    ShowWindow(wnd, 1);

    // 1 Sek. Verzögerung, um sicher zu stellen, dass
    // das ZielFenster bereit ist.

    Sleep(1000);

    // Jetzt die Tastenkombinationen senden...
    // (= DATEI SPEICHERN)

    PostKeyDown(VK_MENU);
    PostKeyDown(Ord('D'));
    PostKeyUp(Ord('D'));
    PostKeyUp(VK_MENU);
    PostKeyDown(Ord('S'));
    PostKeyUp(Ord('S'));
  end;
...
...
end;
Das wird dir helfen, wenn du die Abhandlung lokal durchführen willst. Ich stehe allerdings weiterhin vor dem Problem, weil meine Lösung auf einem REMOTE-PC laufen muss. Und wenn die Console geschlossen wird, funktioniert keybd_event leider nicht mehr.

Hat es vielleicht jmd fertig gebracht, mit PostMessage(wnd, WM_??????, VK_MENU, lParam) die Alt-Taste auszulösen? Ich würde mich über jede Hilfe freuen.

Gruß
Leo
  Mit Zitat antworten Zitat
Antwort Antwort


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 05:15 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 by Thomas Breitkreuz