Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

FodasticC

Criar um macro

Recommended Posts

como eu faço um macro que fique apertando a Tecla: Barra de espaço toda hora

 

eu fiz isso:

 

procedure TForm1.Timer1Timer(Sender: TObject);

begin

keybd_event(VK_SPACE, 0, 0, 0);

end;

 

agora quero add uma funçao de parar ele pois fica direto, entao preciso de ajuda pra add a funçao de parar e de continuar

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao esta dando pra editar entao vo postar denovo:

 

e tambem que ele fique ativo no jogo pois, só fica em outros lugares: como bloco de notas,sites etc e no jogo nao.

 

se alguem puder me ajudar agradeço flws aew pessoal

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu tenho uma função para simulação de teclas que encontrei na net, porém, não testei...

 

teste aí para ver se serve pra resolver seu problema:

 

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, 
  Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure PostKeyEx32(key: Word; const shift: 
   TShiftState; specialkey: Boolean);
{ 
Parâmetros: 
* key : código virtual da tecla a ser enviada. Para teclas que possuem caracteres este será o código ANSI (Ord(character)) . 
* shift : estado das teclas de modificação. É um conjunto, de modo que você pode especificar várias teclas (shift, control, alt, botões do mouse) todas juntas. O tipo TShiftState é declarado na unit Classes. 
* specialkey: normalmente este valor deve ser False. Defina-o como True para especificar uma tecla no teclado numérico.
}
type
   TShiftKeyInfo = record
     shift: Byte;
     vkey: Byte;
   end;
   ByteSet = set of 0..7;
const
   shiftkeys: array [1..3] of TShiftKeyInfo =
     ((shift: Ord(ssCtrl); vkey: VK_CONTROL),
     (shift: Ord(ssShift); vkey: VK_SHIFT),
     (shift: Ord(ssAlt); vkey: VK_MENU));
var
   flag: DWORD;
   bShift: ByteSet absolute shift;
   j: Integer;
begin
   for j := 1 to 3 do
   begin
     if shiftkeys[j].shift in bShift then
       keybd_event(shiftkeys[j].vkey, 
       MapVirtualKey(shiftkeys[j].vkey, 0), 0, 0);
   end;
   if specialkey then
     flag := KEYEVENTF_EXTENDEDKEY
   else
     flag := 0;

   keybd_event(key, MapvirtualKey(key, 0), flag, 0);
   flag := flag or KEYEVENTF_KEYUP;
   keybd_event(key, MapvirtualKey(key, 0), flag, 0);

   for j := 3 downto 1 do
   begin
     if shiftkeys[j].shift in bShift then
       keybd_event(shiftkeys[j].vkey, 
       MapVirtualKey(shiftkeys[j].vkey, 0), 
       KEYEVENTF_KEYUP, 0);
   end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  // Simula PRINTSCREEN - snapshot da tela inteira
  //PostKeyEx32(VK_SNAPSHOT, [], False);

  // Simula PRINTSCREEN - snapshot da janela ativa
  //PostKeyEx32(VK_SNAPSHOT, [ssAlt], False);

  // Simula a tecla Windows da esquerda
  //PostKeyEx32(VK_LWIN, [], False);

  // Simula Alt+F4 - fecha a janela ativa
  PostKeyEx32(VK_F4, [ssAlt], False);
end;

end.

abraços !!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.