Results 1 to 3 of 3

Thread: Ctrl+S versturen naar een externe applicatie

  1. #1
    John van Dijk
    Join Date
    Aug 2006
    Location
    Belfeld
    Posts
    51

    Ctrl+S versturen naar een externe applicatie

    Hallo,
    Ik wil een tooltje schrijven dat iedere ca 10 minuten toetscombinatie Ctrl+S verstuurd naar een andere openstaande applicatie.
    Op die manier wil ik een soort van Auto-Save creeëren, hetgeen in die betreffende applicatie niet voorhanden is.
    Hoe kan ik dit realiseren?

  2. #2

  3. #3
    John van Dijk
    Join Date
    Aug 2006
    Location
    Belfeld
    Posts
    51
    Ik heb dit op internet gevonden, het werkt:

    Code:
    procedure TfrmMain.SendKey(Wnd, VK: Cardinal; Ctrl, Alt, Shift: Boolean);
    var
      MC,MA,MS : Boolean;
    begin
      // Try to bring target window to foreground
      ShowWindow(Wnd,SW_SHOW);
      SetForegroundWindow(Wnd);
    
      // Get current state of modifier keys
      MC:=Hi(GetAsyncKeyState(VK_CONTROL))>127;
      MA:=Hi(GetAsyncKeyState(VK_MENU))>127;
      MS:=Hi(GetAsyncKeyState(VK_SHIFT))>127;
    
      // Press modifier keys if necessary (unless already pressed by real user)
      if Ctrl<>MC then keybd_event(VK_CONTROL,0,Byte(MC)*KEYEVENTF_KEYUP,0);
      if Alt<>MA then keybd_event(VK_MENU,0,Byte(MA)*KEYEVENTF_KEYUP,0);
      if Shift<>MS then keybd_event(VK_SHIFT,0,Byte(MS)*KEYEVENTF_KEYUP,0);
    
      // Press key
      keybd_event(VK,0,0,0);
      keybd_event(VK,0,KEYEVENTF_KEYUP,0);
    
      // Release modifier keys if necessary
      if Ctrl<>MC then keybd_event(VK_CONTROL,0,Byte(Ctrl)*KEYEVENTF_KEYUP,0);
      if Alt<>MA then keybd_event(VK_MENU,0,Byte(Alt)*KEYEVENTF_KEYUP,0);
      if Shift<>MS then keybd_event(VK_SHIFT,0,Byte(Shift)*KEYEVENTF_KEYUP,0);
    end;
    Aanroep is dan zoiets:
    Code:
    wHandle := FindWindowByTitle( edtWindowName.Text );
    SendKey(wHandle,83,True,False,False); // 83="S"

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •