Ir para conteúdo
Fórum Script Brasil
  • 0

Pedido de ajuda em script do autoit.


belini

Pergunta

Pessoal estou com um um problema num script do autoit é o seguinte a função deste script é fazer determinadas tarefas quando estiver com um jogo de computador aberto tais como adiçionar tempo encerrar o jogo quando o tempo acabar e fechar o jogo quando a tecla 9 for pressionada, o script funciona perfeitamante em todos os jogos que testei até agora menos em jogos de computador como por exemplo o "pes2009", se algum jogo de computador for aberto as funções do script perdem o efeito nos testes que fiz se minimizar o jogo de computador o script volta a funçionar e isto só aconteçe mesmo com jogos de pc em outros funçiona normalmente se alguém souber me dizer o que fazer para corrigir isto por favor poste aqui estou enviando uma parte do script para análise esta parte é a responsável por fehar o jogo.

Citação:

----------------------------------------------------

Dados contidos no meu arquivo .bat

@echo off

if %1 == pc02 goto pes2009

@echo off

if %1 == pc03 goto Street

goto erro

pes2009

echo Chamando Pro Evolution 2009

D:

cd\ARCADE\JOGOS\PC\pc02

pcgame.exe

:Street

echo Chamando Street Fighter Hd Remix

D:

cd\ARCADE\JOGOS\PC\pc03

pcgame.exe

-----------------------------------------------------

linhas no advmenu.rc:

#Jogos de computador

#***********************************************

emulator "pc" generic ".8_pc\openpc.bat" "%s"

emulator_roms "pc" "..\JOGOS\pc"

emulator_altss "pc" "..\SNAP\pc

#***********************************************

----------------------------------------------------

minha função fecha emulador:

;função que irá verificar o estado do emulador e fecha-lo caso necessario

Func FechaEmulador()

Const $MASCARA = 0x8000

Const $TECLA9 = 57

Local $emulador, $fechou,$estado_tecla

$estado_tecla = _WinAPI_GetAsyncKeyState($TECLA9)

If BitAND($estado_tecla,$MASCARA) Then

MsgBox(0,"SUCESSO","PARTE 1 FUNCIONANDO")

;remove os hotkeys

HotKeySet("9")

HotKeySet("-")

;envia um ESC para o emulador

if Not WinActive("classname=pcgame") Then

WinActivate ("classname=pcgame")

MsgBox(0,"SUCESSO","PARTE 2 FUNCIONANDO")

EndIf

$PID =ProcessExists("pcgame.exe")

If $PID Then

ProcessClose($PID)

EndIf

;mostra a menssagem

SplashImageOn("", "..\auxiliar\image\mensa6.gif", 220, 40, -1, -1, 1)

SoundPlay("..\auxiliar\som\fechaemu.wav",1)

$fechou=WinWaitClose("classname=pcgameWIN","", 5)

if Not $fechou Then

ProcessClose("pcgame.exe")

EndIf

;atualiza o banco de dados

GravaTempo()

SplashOff()

$lopping=0

EndIf

EndFunc

----------------------------------------------------

E no início do script esta assim:

;verifica as janelas pela classe

AutoItSetOption("WinTitleMatchMode", 4)

----------------------------------------------------

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Como eu ainda não tinha tido resposta para a minha dúvida continuei pesquizando na internet e estudando mais o autoit e por fim consegui resolver e ainda melhorar ainda mais a função de toda maneira agradeço a quem tenha se interessado e tentado me ajudar mesmo não tendo conseguido, quem sabe em outra dúvida vocês possam me ajudar.

Editado por belini
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...