Você está na página 1de 31

Traduzido100%

Ingls

Portugus

Tabeladecontedos:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.

Visogeral
Guiadeintroduo
Preferncias
Gestosdetreinamento
Criaodeaes
Definiodeaplicaes
Criandoteclasdeatalho
Windowsignorado
Relatriodeao
Luaglobal
VariveisdisponveisparatodososscriptsLua
Funesdeao

[voltaraotopo]Resumo:
StrokesPlusumprogramadereconhecimentodegestodemousequepermitequevocautomatizetarefasrepetitivaspor
simplesmentedesenharumgestocomomouseourealizandomodificadoresdomouseoutecladoparadispararuma
sequnciadeao.
Seaseqnciadeao,quevocestquerendofogousaumgesto,mouse/tecladomodifier(s)ouambos,voccomeacom
pressionandoobotoselecionadonocursodeseumouse.Porpadro,obotodocursoatribudoaobotodireitodo
mouse.Parainiciar,pressioneesegureobotodeataqueetambmdesenharogestoouexecutaromodifier(s)de
mouse/tecladoe,emseguida,solteobotodeataque.Seoseventossoreconhecidoscomosendoamarradoemuma
sequnciadeao,StrokesPlusvaidemitiraseqnciadeao.
NaFigura1abaixo,nsvamosdesenharaletraRmantendopremidoobotodireitodomouse,desenhandoogestoR,em
seguida,solteobotodireitodomouse.OgestoRatribudoaumaaoqueabreacaixadedilogoExecutardoWindows
etipos"notepad"(Figura2),pressionaEnter,fazumapausaporummomento,entotipos"Olmundo"seguiu
pressionandoALT+H(paraabriromenudeajudanoblocodenotas)efinalmentepressiona"um"paraselecionarsobreo
blocodenotasnomenu,queexibeajanelasobreoblocodenotas(Figura3).

Figura1

Figura2

Figura3

Muitasdastarefascomunsqueaspessoasescolhemparacriarseqnciasdeaoparasoaspectosmuitomundanosdo
usandooWindows,comominimizaroumaximizarumajanela,refrescandoumapginadaweboufecharumprograma.Mas
namedidaemquevocpodeaproveitarStrokesPlusparaaumentarasuaprodutividadelimitadaapenaspelasua
imaginao!
[voltaraotopo]Introduo:
StrokesPlusvemcomvriosgestosjtreinadoseumavariedadedeseqnciasdeaocomunsjdefinido.Parafazeroutra
coisasenoousoStrokesPlusparadispararseqnciasdeao,vocdevecliqueoconedeStrokesPlusnareadabandeja
dabarradetarefas,pertodorelgio(Figura4).

Figura4

Nessemenu,vocpode:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.

entrarnoMododetreino(quetambmpodeserrealizadapormeioclicandonoconedeStrokesPlus)
alterarobotodeataque
habilitaroudesabilitarodesenhodegestosnatela
desabilitaroStrokesPlus(quetambmpodeserrealizadaporclicarnoconedeStrokesPlusoupressionandoCTRL+
SHIFT+WIN+Z)
AbraajaneladeListadeignorados
Abraajaneladeaes(quetambmpodeserrealizadapelaesquerdaclicandoduasvezesnoconedeStrokesPlus)
Abraajaneladepreferncias(quetambmpodeserrealizadapormeioclicandoduasvezesnoconedeStrokesPlus)
DefiniroualterarasuasenhaparacriptografarStrokesPlus.xmlerestringiroacessojaneladeconfigurao.
RecarregarosdadosdeconfiguraodosStrokesPlusdosStrokesPlus.xml
Abrirestapginadeajuda
StrokesPlusdesada(quetambmpodeserrealizadapressionandoCTRL+ALT+SHIFT+WIN+END)

[voltaraotopo]Preferncias:
AFigura5representaajaneladeprefernciasemStrokesPlus.Destajanela,vocpodealterarvriasdascaractersticas
dosStrokesPlusparaatendersuaspreferncias.
Botodeacidentevascularcerebralobotodomouseutilizadoparainiciarodisparoseqnciasdeao
Ignorarchavepressionadoantesdepressionarobotodeataque,sevocnoquerStrokesPlusatentativade
reconhecerumaao.IstotilquandovocdesejaexecutaralgumaaonoWindowsououtroaplicativoquerequer
usandoobotodeataque.
CancelaroatrasoesteotempodeesperaparaumaaodetimeoutStrokesPlus.Porexemplo,sevocdecidiu,clique
earrastealgunsarquivosnoWindowsExplorer,StrokesPluscomeariaaprocurarporseqnciasdeaosejaacionado
quandovocsoltaobotodeataque.Noentanto,sevocquerStrokesPlusparainterromperacapturaaseqncia,
simplesmentemantenhaobotodeataquepressionadoeparardesemoverorato.Apsonmerodemilissegundos
especificadoparacancelaroatraso,StrokesPlusirinterromperacapturadeeventosdemouseeteclado,emseguida,
repetiroseventosdemousequeocorreu.Nestecaso,eleteriainstantaneamentemoveromousedevoltaparaaposio
inicialeenviaramensagemcomobotodireito,entomovaomouseparaondevoctinha.Ento,nesteexemplo,voc
veriaosarquivosanexadosparaocursordomousecomovocfariasevoctivesserightclickedearrastoualgunsarquivos
noExplorersemStrokesPluscorrendo(ousevoctivessemantidoatecladeignorarantesdepressionarobotodireitodo
mouse).
SynapticsTouchPadsefordetectadoumSynapticsTouchPadesoftware,permitequevocespecifiquese1(torneirae
segurar),2ou3dedosserousadosparacapturarumgesto.ControlesdeSensibilidadedemovimentodocursorcomo
rpidasoulentasoponteirodomousesemoveenquantodesenhasobreoTouchPadIstopodeserde5%esuperior.1
dedomovimentolimiteespecificaonmerodetiquesdoTouchPadacimadoqualaatividadedoTouchPadno
consideradaumgesto(ouseja,quevocsestmovendooponteiro).1dedopreensoatrasoquantotempovoctem
quesegurarseudedoaindaparas+iniciaracapturadeumgesto.VerificaDesabilitarintegraoparaimpedirques+
nemcarregarainterfaceSynapticsinternamente.
EstilodetraadoestescampospermitemquevocpersonalizecomoStrokesPlusdesenhagestosnatela.Escolhera
cor...permiteselecionaracordalinhadetraodogesto.Widthespecificaaespessuradalinha.Comprimentode
gestodemin.Especificaadistnciaquedeveserestabelecidaantess+consideraqueumgestodeveserreconhecido.
Comprimentodosegmentodemin.especificaadistnciaentresegmentosdedesenho.Comprimentoindicao
comprimentomximo(trilha)queirdesenharStrokesPlus,0paraoinfinito.Issonoafetaogestorealsendodesenhado,
apenasquantoalinhanatela.Opacidadeafetaatransparnciadalinha1serquaseinvisvele255seropaco(slido).
MostrarinstruiStrokesPlusounoatolimiteemtudo.

Avanado/Experimentalopesessasconfiguraesdeveserusadocomcautelapoisalgunsdelespodemcausar
problemascomStrokesPlusououtrosaplicativos.
PrecisodepartidacomofinamenteStrokesPlusinterpolagestosparausarparacomparao.Opadro100,eno
devehavernenhumanecessidadedemudaressaconfigurao.
Probabilidadedecorresponderaprobabilidadedecorrespondnciadogestodesenhadoparagestossalvos.Superiorfaz
ogestodecorrespondnciamaisestrito.
AgressivamentegerenciarmemriadizStrokesPlusagressivamentelimparmemriaemmuitospontosdaoperaodo
programa.DeixemarcadoparagarantirquestrokesplususaamenorquantidadedememriaRAMduranteaexecuo.
DesmarqueaoposevocquerdeixaroWindowsgerenciarosusosdeStrokesPlusdememriaObservequeoWindows
muitoliberal,sarrumarseoutrosprocessosrequeremmemriausadaporoutrosprogramaseamemriaRAMdisponvel
tornouselimitada.
Lanamento/reinicializaremSuspend/Resumeseverificado,StrokesPlusirremoveroconedabandeja,solteo
mouseetecladoedestruiroSynaptics(TouchPad)COMinterface*quandoWindowsinsereummododesuspenso(por
exemplo,selecionandoosononomenudedesligamento).QuandooWindowsreinicia,StrokesPlusirrecriarseucone,re
ligaroratoeotecladoerecriaroSynaptics(TouchPad)COMinterface*(ses+notiversidodesabilitada,claro).
*Synaptics(TouchPad)COMinterfaceapenasdestruda/reinicializadaquandoaopo'Desativarintegrao'no
verificada.
DesabilitarmensagemdegestonovoimpedequeoStrokesPlusexibindoamensagemdepopupquandovocclique
emnovoparacriarumnovogesto.
Redefinircancelardemoraemmovimento/modificadorsedesmarcada,dizStrokesPlusparacancelargestosquando
oatrasodecancelaratingido,independentementedaatividadedomouseouteclado.
MantergestodesenharjanelanapartesuperiormantenhasempreajanelatransparenteparaqueStrokesPlus
desenhaalinhadegestoemcima.Issopodesertilparasistemasdebaixoconsumodeenergiaeevitaracintilao
elementosdeinterfacedousurioparausuriosdoWindowsXP.Noentanto,podehaverproblemascomoutrosprogramas
sereagemjaneladegestodosStrokesPlusestaracimadelas.Portanto,estaumacaractersticaexperimental.
Noescondergestodesenharjanelaquandonoestdesenhandoumgesto,ajaneladedesenhonormalmente
enviadaportrsdetodasasoutrasjanelasparaaumentarodesempenhoeeliminarcintilaoemouselagquandoseinicia
umnovogesto.DesmarqueestaopoparainstruirStrokesPlusparaocultarajanelacompletamente.(Essaconfigurao
noterefeitoseMantenhagestodesenharjanelanapartesuperiorestmarcada.
HabilitarMouserodaRelayStrokesPlusirretransmitirtodososeventosdemouserodarolagemdiretamenteparao
controleabaixoocursordomouse,independentementedoestado.Issopermitequevocrolecontroles,listas,janelasque
nosoativoouselecionadoapenasrolandoarodadomouseporcimadeles.
ReconhecimentodefogonarolagemdarodadoMouseStrokesPlustentarreconheceredispararaesquandoa
rodadomouseroladaparacimaouparabaixo(apenasquandoobotodeataqueestsendomantidopressionada).Isso
permitequevoctenhaaesquefogoparacadaescala,istotilparaaesdevolume,alternarabas,etc.
PermitirMouserodacarrapatoScript*permitequeoscriptdecarrapatoderodadomousedescritoaqui.
PermitirHorizontaldoMouserodacarrapatoScript*permitequeoscriptdecarrapatoderodadomousehorizontal
descritoaqui.
Somentecapturarnadefinidoaplicativos(semaesglobais)aesglobaissoignoradas,ignoradoappsnoso
processados,orato/TouchPadssocapturadosquandodesenhoemumajanelaquepartedeumaplicativodefinidona
guiaaes.Istobasicamentecolocas+emmododelistabranca.
ModificadoresdecapturaremcursobotoDown*almdecapturarosmodificadoresquandoelesocorremdepoisde
premirobotodeataque,StrokesPlustambmterseuestadonomomentoqueocursobotopressionado.Entosevoc
tinhaachavedecontrolerealizadaprviaparapressionarobotodeataquepressionado(emantidapressionadano
momento),omodificadordecontroleseriareconhecidocomopartedadefiniodeao.
PermitirdepoisdeActionScript*permitequeoscriptapsaaodescritaaqui.Parasolucionarproblemasdeerrode
scriptparaalgumaspessoas,eusepareioprocessamentoparaafuncionalidadeapsaao.Entosevocnouslo,
deixandoestadesmarcadoserligeiramentemaiseficiente.
PermitirqueapslanamentoScript*permitequeoscriptapsliberaodescritaaqui.Permitedefinirumafuno
emLuaGlobalquechamadosemprequeobotodeataqueliberado.
PermitirmeiocliqueemScript*permitequeoscriptcliquemdiodescritoaqui.
PermitirX1cliqueemScript*permitequeoX1Clickscriptdescritoaqui.
PermitirX2cliqueemScript*permitequeoX2cliquescriptdescritoaqui.
VerificarCursorbandeiras*determinases+irverificarossinalizadoresdecursoredecidirsedesejacapturaro
mouse,ouno.Sevoctemumprogramaqueestfazendocoisasfunkycomocursordomousees+nocapturargestos,
tentedesmarcarestaopo.
Gestoderetransmissonanocorrespondncia*repeteaseqnciadegestosenohouvessenenhuma
correspondnciaemappsouaesglobais.Aesusandoodifiersougestosdefogoderodadomouseexcluemsedeste
recurso.

Tocarsomparasemcorrespondnciatocaumsomseogestonoexisteounocorrespondeaumaaodefinida
Som(arquivo)arquivoWAVajogarquandonenhumacorrespondncia.Seestivervazio,osomdefinidoparapergunta
dentrodoWindowsjogado.

Figura5

[voltaraotopo]Formaogestos:
StrokesPlusvemcommuitosgestostreinados,noentanto,vocpodeinseriroMododetreinosevocdesejacriarseu
prprioselecionandomododeformaodoconedebandejadoStrokesPlus.VoctambmpodetreinarStrokesPlussobre
gestosexistentes.Porexemplo,dizerqueamaneiraquevocdesenharaletra"R"nateladiferentedamaneiracomofao,
StrokesPlusaprendeuamaneiradequedesenhar"R"eelenopodereconhecloquandovocdesenhar"R".Aoentrarno
mododetreinamentoedesenho"R",vocverajanelanaFigura6.SeStrokesPlusreconheceogesto,acaixadetexto
serpreviamentepreenchidacomonomedogestoacreditaquefoidesenhado.SeStrokesPlusestavaincorretoem
reconhecerogestoquesedestina,digiteonomedogestocorretoaquiecliqueemsalvar.Istoadicionaroseudesenho
paraacoleodepadresdepontoassociadocomessenomedegesto.Ospadresdepontomaisqueumgestotem
associadoaele,omelhorStrokesPluspodemseremreconheclos.
Claro,seseudesenhode"R"dramaticamentediferentedoqueoquechamode"R",queseriamelhorexcluirogestode
"R"dajaneladeaeserecriarumusandoapenasseuspadresdepontoparaqueStrokesPlusvaiaprenderoseuestilode
"R"muitomaisrpido.Vocencontrarqueamaioriadosgestosexigemapenasumpontopadro(capturadeformao),
enquantooutros,como"R"e"B"voprecisardevriosconjuntosdetreinamentoparacadaletraumavezqueelesso
bastantesemelhantes,geometricamente.

Figura6

[voltaraotopo]Criandoaes:
AessoaalmadeStrokesPlus.AquiondevocdizexatamenteoquefazerquandovocconcluirumgestoStrokesPlus.
Umaaoreconhecidasetodososcritriosforematendidos.Issoincluiogesto,ModificadoresdeMouse,e/ou
Modificadoresdechave.nicodestesitensdeveserselecionadoparaserreconhecidopeloStrokesPlus.Porexemplo,eu
tenhoumaaodefinidacomapenasomodificadordaEsquerdabotodomousenenhumgestooumodificadorchave
selecionadaEntotudooqueeufaopressioneobotodeacidentevascularcerebral(direita,paramim)epressioneo
botoesquerdodomouseesolteobotocerto.IssotimoparatarefasmuitorepetitivasEuusoparaabrirlinksemuma
novaabadonavegador.EutambmtenhoumaaodefinidacomapenasRolaratqueeuusoparaaumentarovolume.
Emboraamaioriadosgestoenvolvemdesenharalgonatela,comomuitofciltermuitosgestosondeexistemapenas
tantosbotesdomouse.Observequemodificadoresnotmdesermantidosparaaduraodaseqncia,realizada
apenasumavezdepoisdepremirobotodeataque.Entosevocpressionouobotodeataqueecomeouadesenhar,
vocpoderiabateratecladecontroleumavezantesdesoltarobotodeataqueeseriareconhecidocomoodesenho+
chavedecontroleesevoctemumaaodefinidacomodesenhoeachavedecontrole,StrokesPlusdespediaseoscript
deLuaparaaao.
SevoctemModificadoresdecapturaremcursobotoDown*selecionadanaguiapreferncias,vocpodetambm
qualificarquandomodificadoressoreconhecidosporumaaonomomentoqueocursotecla,depoisqueele
pressionado,ouqualquertempodequalquerum.Issopermitequevoctenhaduasaescomasmesmasconfiguraesde
gesto/modificador,massoreconhecidosdependendodequandoomodifier(s)foipressionado.Istogeralmentetilparaa
criaodegestosdebalancim,ondevoctemumaaoqueexecutadoquandovocpressionarobotodireitodomouse,
emseguidaesquerda(juntos)etemumoutrofogodeaoquandoobotoesquerdodomousepressionadoemantido
primeiro,seguidodobotodireitodomouse.
OmenususpensoAesdisponveisexibeumalistadetodasasaesexpostasaLua.Obotodeinformaoir
aparecerumamensagemdescrevendoaao.ClicaremInserirircolarumtrechodaaonacaixadetextodeLuano
localdocursor.
AcaixadeverificaoGuardarautomaticamentedizStrokesPlus,sevocquisersalvarautomaticamenteasalteraes
quandovocalternarparaumaplicativodiferenteouao,oufechaajaneladeaes.SeAutosalvarnoverificada,voc
deveclicaremaplicarantesdetrocaraesoufecharajanela,ouasalteraesseroperdidas.
VariveiseaescobremavariveiseaesStrokesPlusexpeaLua.ParasintaxegeraldeLua,simplesmentepesquisano
Googlepor"RefernciadeprogramaodeLua".

Figura7

[voltaraotopo]Definindoaplicativos:

Aesglobaissoaquelasqueseracionadoindependentementedequalaplicativosobomouse(excluindoowindows
ignorado,cobertosnaprximaseo).Noentanto,vocpodequerertertodoumconjuntodegestosquesoespecficosao
aplicativoapenasnicocomoumwebbrowser.Paraconseguirisso,cliquenobotoAdicionaraplicativo,digiteumnome
ecliqueemOK.Vocvaiverummontedecamposdisponveisparasequalificareaplicaoeumacaixadejanelaencontrar
comumamiraquepodeserusadaparalocalizarumaplicativo,ouapenaspartedeumaplicativo.
ApenasumcampoobrigatrioegeralmenteoNomedoarquivosuficienteeirgarantirquetodooprogramasempre
correspondido.Depoisdeusaramiradejanelaencontrar,muitosdoscamposseropreenchidoscomvalores.Enquanto
vocpodedeixlostodoscomo,elepodecriarumescopomuitoestreitoquedefineoapppotencialmentesomenteuma
determinadareadaappousomenteseottulodoaplicativoaconteceserexatamenteoquefoicapturadodepoisdeusara
ferramentajanelaencontrar.Comoeudisse,limpetodososcamposmasonomedoarquivoamenosquevoctemcerteza
sobreoimpactodecomoosqualificadoresvoafetaroseuresultadodesejado.
Ospadrodevrioscampossousadosparacorrespondersecombaseemexpressesregulares(usosregexbiblioteca
BOOST,FYI).Istopodesertilsevocdesejacorresponderumamplooutalvezmuitoespecficotipodecondiopara
definirumaplicativo.
Quandoumgestocompleto,StrokesPlustentacombinaraplicativosprimeiro.Senenhumacorrespondnciaforencontrada,
entoeleirverificarasaesglobaisparaumapartida,amenosquenoprocessaraesglobaisparaesteapp,
apenasasaesappverificado

Figura8

[voltaraotopo]CriandoHotkeys:
TeclasdeatalhopodeseratribudoaofogoscriptsLua.Estassocomoaes,excetooratonoestenvolvido.Esses
scriptssoexecutadosexatamentecomoExistemsemvariveisextraspassadoscomogsx,gsy,etcenoacionamas
funessp_before_actionesp_after_action.

Figura9

[voltaraotopo]IgnoradoWindows:
WindowsignoradosoaquelesquefarcomqueStrokesPlusignorarobotodeataquequandoelepressionadoemuma
janelaqueestnalistadeignorados.Paraadicionarumajanelalistadeignorados,cliquenobotoAdicionar,digiteum
nomeecliqueemOK.Vocvaiverummontedecamposdisponveisparasequalificareaplicaoeumacaixadejanela
encontrarcomumamiraquepodeserusadaparalocalizarumaplicativo,ouapenaspartedeumaplicativo.
ApenasumcampoobrigatrioegeralmenteoNomedoarquivosuficienteeirgarantirquetodooprogramasempre
correspondido.Depoisdeusaramiradejanelaencontrar,muitosdoscamposseropreenchidoscomvalores.Enquanto
vocpodedeixlostodoscomo,elepodecriarumescopomuitoestreitoquedefineajanelaignoradapotencialmente
somenteumadeterminadareadaappousomenteseottulodoaplicativoaconteceserexatamenteoquefoicapturado
depoisdeusaraferramentajanelaencontrar.Comoeudisse,limpetodososcamposmasonomedoarquivoamenosque
voctemcertezasobreoimpactodecomoosqualificadoresvoafetaroseuresultadodesejado.
Ospadrodevrioscampossousadosparacorrespondersecombaseemexpressesregulares(usosregexbiblioteca
BOOST,FYI).Istopodesertilsevocdesejacorresponderumamplooutalvezmuitoespecficotipodecondiopara
definirumaplicativoqueserignorado.
AcaixadeseleoDesativars+seesteaplicativoativadodizs+completamentesoltaromouseeotecladoseo
aplicativoignoradotornaseajanelaativa(primeiroplano).Issotilsevocdesejadesabilitars+quandoabreumjogo
detelacheia.Comoignorarajaneladojogoaindaenvolves+verificandoqueseajanelaignoradacadavezque
pressionarobotodeataque,issopodecausarumatrasomuitobreveantess+encaminhaoeventodemouseparaojogo.
Paraaplicativosdealtodesempenho,ters+desativadodefinitivamenteocaminhoapercorrer,especialmentequandose
tratadejogos.Notequevocterquerehabilitarmanualmentes+umavezqueeledesativasedevidoaestaoposer
marcadacomonohnenhumamaneiraconfivelparas+saberoquevocquerreativado.
AcaixadeseleoEnableS+IfNonIgnoredApptornaseativoinstruis+parahabilitarsesealgumajanelasetorna
ativaquenoestnalistadeignoradosdejanela.Issoacontecermesmoquevocjdesativadamanualmentes+.O
objetivoterignoradoosappsquedesativars+,masquandovocdeixlos,s+vaiserreativadoautomaticamente.
Desdequeessecomportamentonemmanualmentesubstituis+configuraocomodesabilitada,noparatodos.
Noseesqueadeclicaremaplicardepoisdefazeralteraesnestajanela,sevocnotemqueguardarautomaticamente
verificado.

Figura10

[voltaraotopo]Relatriodeao:
Esteguiamostraumalistadetodosdefinidoseaesativas.

Figura11

[voltaraotopo]Luaglobal:
EsteguiamostraocontedodoseuarquivodeStrokesPlus.lua.Vocpodeusaressearquivoparadefinirsuasprprias
funesouvariveisquepodemserutilizadasportodasasaes.

Figura12

[voltaraotopo]VariveisdisponveisparatodososscriptsLua:
Asseguintesvariveissopreenchidasautomaticamenteaoconcluirumgesto.Elesmuitasvezessoutilizadospormuitas
dasfunesdeao(abordadasnaseoseguinte)paraidentificarajanela(s)aseratingidopelaao.
sp_gesture_name(tambmpodeserreferidacomognm):stringonomedogestodesenhado
sp_gesture_start_x(tambmpodeserreferidacomogsx):inteiroTheXcoordenardeondecomeouogesto
sp_gesture_start_y(tambmpodeserreferidacomogsy):inteiroTheYcoordenardeondecomeouogesto
sp_gesture_end_x(tambmpodeserreferidacomogex):inteiroTheXcoordenardeondeterminouogesto
sp_gesture_end_y(tambmpodeserreferidacomogey):inteiroTheYcoordenardeondeterminouogesto
sp_wheel_delta(tambmpodeserreferidacomogwd):inteiroodeltaderolagemdarodadomouse[nmeropositivo
ounegativo],mousepadrorodasso120porcarrapatoderoda
sp_app_name(tambmpodeserreferidacomogapp):stringonomedoaplicativoquefoicorrespondido,ou"Aes
globais"(ouoqueforespecificadoemLanguage.xml)
sp_action_name(tambmpodeserreferidacomogact):stringonomedaaoquecoincidiu
GBL:inteiroodelimitadoradeixoucoordenada(extremaesquerdaXdogestodesenhado)
GBT:inteiroacoordenadasuperiordelimitador(Ymaisaltodogestodesenhado)
GBR:inteiroacoordenadacertadelimitador(direitomaisXdogestodesenhado)
GBB:inteiroadelimitadoracoordenadainferior(maisbaixodogestodesenhadodeY)
Almdisso,alien.coreealien.structestodisponveisparascriptsdeLuaparafazerdirecionarchamadasDLL.Vocno
precisaincluir:
exigem"aliengena"
..noseuscriptdeLua(comomuitosscriptsdeexemplosobreoInternet),vocreceberumerro,amenosqueoaliengena
DLLsestoemalgumlugarnocaminho,masnotenhocertezasequeelesiriajogarbemjuntos...entoaseuprprio
risco.
ExemploLuaScriptparachamaruser32.dlldiretamenteparaexibirumacaixademensagem(noviaoacMessageBox()
limite,istoestdiretamentechamando):

alienlocal=alien.core
localmb=alien.load("user32.dll")
messageboxlocal=mb.MessageBoxA
MessageBox:Types{ret='tempo',abi='stdcall','','ponteirolongo','string','long'}
teste="teste"
MessageBox(0,teste,"test2",0)
ObservequefazendodiretoDLLchamadaspodemcausarS+oLuamotorbaterdurosevocestragaralgumacoisano
scriptoudefinindoosconcursos,entoesteumusoemsuaprpriacaractersticaderisco.EurecomendoinstalaroLua
paraWindowsetestarscriptslsevocesttendoproblemasouantesdeadicionarumaao(removendoreferncias
exigem"alien").
Almdisso,vocpodeincluirquaisquervariveisoufunesnoarquivoStrokesPlus.luanamesmapastacomo
StrokesPlus.exe.QuandoStrokesPluscarrega(ouselecionarrecarregarConfignomenudebandeja),qualquerLuaem
StrokesPlus.luaexecutadoepersistente.Porexemplo,sevocquisessecriarsuaprpriafunodeLuaquevocqueria
sercapazdechamardequalquerao,vocpodearmazenloemStrokesPlus.lua.Outalvezvocdesejacriaralgumas
variveisglobaisquesocompartilhadasentreaes,elespoderiamserdeclarado/inicializadoltambm.
ComeandocomStrokesPlusverso1.9.7,asseguintesmedidaspodemserdefinidasemStrokesPlus.lua(porvoc)se
quiserquedeterminadocdigoLuadespedirseantesdetudoseusscriptsdeao.Porexemplo,algumaspessoaspodem
desejarterumachamadaparaacActivateWindowantesdetodososscriptsdeaes.
Parautilizarestafuncionalidade,vocdevedefinirafunoquevocdesejas+aofogousandoomodeloabaixo:
functionsp_before_action(gnm,gsx,gsy,gex,gey,gwd,gapp,gact)

yourcodehere
end

Observequesp_before_actionchamadodepoisqueasvariveislocaissodefinidas(gnm,gsx,gsy,etc)paraqueseu
cdigopodetrabalharcomelesconformenecessrio.
ComeandocomStrokesPlusverso1.9.8,asseguintesmedidaspodemserdefinidasemStrokesPlus.lua(porvoc)se
quiserquedeterminadocdigoLuaaofogodepoisdetodososscriptsdeao.Noentanto,vocdevehabilitaraopo
permitirdepoisdeActionScript*nasprefernciasdoprimeiro.Comoaopoindica,issopodecausarerrosdescript
paraalgunsusurios.Eusouincapazdereproduzir,assim,solucionarproblemas,acausadoerroporesserecursoaqui
paraaquelesquenoencontramoserrosdescript.
Parautilizarestafuncionalidade,vocdevedefinirafunoquevocdesejas+aofogousandoomodeloabaixo:
functionsp_after_action(gnm,gsx,gsy,gex,gey,gwd,gapp,gact)

yourcodehere
end

ComeandocomStrokesPlusverso2.4.7,asseguintesacespodemserdefinidasemStrokesPlus.lua(porvoc)sequiser
quedeterminadocdigoLuasejaacionadoquandoaLuaestado1inicializado.Porexemplo,algumaspessoaspodem
desejarterumachamadaparaacToggleTrayIcon(1)[paraocultaroconedebandejados+)quandocomeaos+.
Parautilizarestafuncionalidade,vocdevedefinirafunoquevocdesejas+aofogousandoomodeloabaixo:
functionsp_init()

yourcodehere
end

Observequesp_initchamadoapenaspeloestadodaLua1.Comotal,somenteocdigosemmonitoraodeestado/no
persistentedeveserusadoaqui.
ComeandocomStrokesPlusverso2.6.2,asseguintesmedidaspodemserdefinidasemStrokesPlus.lua(porvoc)se
quiserquedeterminadocdigoLuaaofogodepoisdesoltarobotodeataque(ondes+capturadoomouse).Noentanto,
vocdevehabilitaraopopermitirapslanamentoScript*nasprefernciasdoprimeiro.
Parautilizarestafuncionalidade,vocdevedefinirafunoquevocdesejas+aofogousandoomodeloabaixo:
functionsp_after_release()

yourcodehere
end

ComeandocomStrokesPlusverso2.7.3(emodelodefunoalteradano2.8.0),aseguinteaopodeserdefinidaem
StrokesPlus.luasequiserquedeterminadocdigoLuasejaacionadoquandovocclicarnobotodomeiodomouse(quando
obotodomeionoobotodeacidentevascularcerebral).Noentanto,vocdevehabilitaraopopermitirmeio
cliqueemScript*nasprefernciasdoprimeiro.
Parautilizarestafuncionalidade,vocdevedefinirafunoquevocdesejas+aofogousandoomodeloabaixo:
functionsp_middle_mouse_up(x,y,fwKeys)

yourcodehere

x=thexcoordinateofthemousewherethemiddlebuttonwasclicked

y=theycoordinateofthemousewherethemiddlebuttonwasclicked

fwKeys=thekeystateatthetimethemiddlebuttonwaspressed
end

Notesequechequesdejanelapadroignoradoocorrernolocaldomousequandopressionadoocliquedomeio.Essa
funcionalidadetambmcumpreasregrasdasSomentecapturarnadefinidoaplicativos(semaesglobais),se
habilitado.

ComeandocomStrokesPlusverso2.7.9,aseguinteaopodeserdefinidaemStrokesPlus.luasequiserquedeterminado
cdigoLuasejaacionadoquandovocrolararodadomouse.Noentanto,vocdevehabilitaraopopermitirMouseroda
carrapatoScript*nasprefernciasdoprimeiro.
Parautilizarestafuncionalidade,vocdevedefinirafunoquevocdesejas+aofogousandoomodeloabaixo:

functionsp_wheel_tick(control,wParam,lParam,x,y,delta)

yourcodehere

control=thehandletothecontrolbelowthemouse

wParam=theprecraftedwParamofthemousewheelevent,toeitherdeconstructforuseorrelaytothecontrol

lParam=sameasabove,butforthelParam

x=thexcoordinateofthemousewherethewheelwasscrolled

y=theycoordinateofthemousewherethewheelwasscrolled

delta=thedeltaofthemousewheelscroll,usuallyitis120forasinglewheeltickscrollingupand120scrollingdownforonetic
end

Notesequechequesdejanelapadroignoradoocorrernolocaldomousequandoarodadomouserolada.Essa
funcionalidadetambmcumpreasregrasdasSomentecapturarnadefinidoaplicativos(semaesglobais),se
habilitado.
ComeandocomStrokesPlusverso2.8.0,asseguintesaespodemserdefinidasemStrokesPlus.luasequiserque
determinadocdigoLuasejaacionadoquandovocrolarouinclinaarodadomousehorizontaloubotesdomousede
imprensaX1ouX2(esquerdaedireitodomouseclicaradicionadoem2.8.2).Noentanto,vocdevehabilitarapermitir
HorizontaldoMouserodacarrapatoScript*,permitirX1cliqueemScript*oupermitirX2cliqueemScript*,
respectivamente,oponasprefernciasdoprimeiro.
Parautilizarestafuncionalidade,vocdevedefinirafunoquevocdesejas+aofogousandoosmodelosabaixo:
RodadoMousehorizontal:

functionsp_h_wheel_tick(control,wParam,lParam,x,y,delta)

yourcodehere

control=thehandletothecontrolbelowthemouse

wParam=theprecraftedwParamofthemousewheelevent,toeitherdeconstructforuseorrelaytothecontrol

lParam=sameasabove,butforthelParam

x=thexcoordinateofthemousewherethewheelwasscrolled

y=theycoordinateofthemousewherethewheelwasscrolled

delta=thedeltaofthemousewheelscroll,usuallyitis120forasinglewheeltickscrollingupand120scrollingdownforonetic
end

X1clique:
functionsp_x1_mouse_up(x,y,fwKeys)

x=thexcoordinateofthemousewheretheX1buttonwasclicked

y=theycoordinateofthemousewheretheX1buttonwasclicked

fwKeys=thekeystateatthetimetheX1buttonwaspressed
end

2Xclique:
functionsp_x2_mouse_up(x,y,fwKeys)

x=thexcoordinateofthemousewheretheX2buttonwasclicked

y=theycoordinateofthemousewheretheX2buttonwasclicked

fwKeys=thekeystateatthetimetheX2buttonwaspressed
end

Cliqueesquerdo:
functionsp_left_mouse_up(x,y,fwKeys)

x=thexcoordinateofthemousewheretheleftbuttonwasclicked

y=theycoordinateofthemousewheretheleftbuttonwasclicked

fwKeys=thekeystateatthetimetheleftbuttonwaspressed
end

Cliquedireito:
functionsp_right_mouse_up(x,y,fwKeys)

x=thexcoordinateofthemousewheretherightbuttonwasclicked

y=theycoordinateofthemousewheretherightbuttonwasclicked

fwKeys=thekeystateatthetimetherightbuttonwaspressed
end

Notesequechequesdejanelapadroignoradoocorrernolocaldomousequandoarodadomousehorizontalroladaou
esquerda/direita/X1/1Xpressionado.EssafuncionalidadetambmcumpreasregrasdasSomentecapturarnadefinido
aplicativos(semaesglobais),sehabilitado.
[voltaraotopo]Funesdeao:
Localizeaaesdejanela:
acFindWindow
acFindWindowByTitleRegex
acGetAllWindows
acGetOwnerWindowByPoint
acGetParentWindowByPoint
acGetWindowByPoint
acGetForegroundWindow
acGetDesktopWindow
Aesdeestadodejanela:

acActivateWindow
acPauseResumeThreadList
acSetProcessPriority
acTerminateProcess
acCloseApplication
Aesdecolocaodejanela:
acMoveWindow
acMinimizeWindow
acRestoreWindow
acMaximizeWindow
acMaximizeOrRestoreWindow
acTileWindows
Aesdetamanhodejanela:
acGetWindowLeft
acGetWindowTop
acGetWindowRight
acGetWindowBottom
acSetWindowSize
Aesdeordemdejanela:
acSetTopmost
acClearTopmost
acToggleTopmost
acSendWindowToBottom
acPreviousApplication
acNextApplication
Aceschavecoretransparnciadejanelas:
acGetWindowTransparency
acGetWindowColorKeyR
acGetWindowColorKeyG
acGetWindowColorKeyB
acSetWindowColorKey
acSetWindowTransparencyAndColorKey
acSetWindowTransparency
Janeladiversasaes:
acGetWindowTitle
acGetClassName
acGetControlID
acGetExecutableName
MltiplasaesdoMonitor:
acCenterWindowToScreen
acClipWindowToScreen
acFitWindowToScreen
acMaximizeToAllScreens
acGetMonitorBrightness
acSetMonitorBrightness
acGetMonitorFromPoint
acGetMonitorName
acSendWindowToPreviousMonitor
acSendWindowToMonitorByName
acSendWindowToMonitorByHandle
acSendWindowToNextMonitor
acGetMonitorFromName
acGetMonitorBottom
acGetMonitorTop
acGetMonitorLeft
acGetMonitorRight
Aesdeteclado:
acSendKeys
acSendKeyDown
acSendKeyUp
acSendWinDown
acSendWinUp
acSendControlDown

acSendControlUp
acSendAltDown
acSendAltUp
acSendShiftDown
acSendShiftUp
Aesdomouse:
acGetMouseLocationX
acGetMouseLocationY
acMouseMove
acMouseClick
acGetMouseCursorType
acAutoHideMouseCursor
acHideMouseCursor
acShowMouseCursor
Aesdetransferncia:
acGetClipboardText
acSetClipboardText
Aesdeudio:
acSetVolume
acGetVolume
acToggleMute
acGetMute
acSetMute
acPlaySound
Utilitriodeaes:
acConsumePhysicalInput
acDelay
acGetSystemMetrics
acGetPixelRByPoint
acGetPixelGByPoint
acGetPixelBByPoint
acSetDisplayGamma
acMessageBox
acDisplayBalloonTip
acDisplayText
acKillDisplayText
acGetProcessIDFromPattern
acGetWindowFromProcessID
acIsImmersiveProcess
acGetFileVersion
acGetFileProductVersion
acInputBox
acRunProgram
acShellExecute
acLockWindows
acGetNumber
acSetNumber
AesderegistrodoWindows:
acRegistryCreateKey
acRegistryDeleteKey
acRegistryDeleteValue
acRegistryGetString
acRegistrySetString
acRegistryGetNumber
acRegistrySetNumber
AesdemensagensdoWindows:
acSendMessage
acPostMessage
AesdecontroledeStrokesPlus:
acShowSettings
acShowActions
acShowHotkeys
acShowIgnoreList

acShowPrefs
acShowAbout
acDisable
acDisableNext
acDisableCapture
acEnableCapture
acDisableHotkey
acEnableHotkey
acReloadConfig
acRelayGesture
acToggleTrayIcon
acExit
acActivateWindow(hwndTarget,x,y,mtodo)
Parmetros:
hwndTarget:Oidentificadorparaajanelaparaserativado"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanelaparaserativado
y:oY(topo)coordenardajanelaparaserativado
mtodo:Otipodemtodousadoparaativarajanela0,porpadro,1paraosegmentodeentrada,2parakeypressALT
temporria.Use0(padro),apenasusarosoutrosse0noestfuncionandoparavoc.
Retorna:inteiro(sempre1)
Comentrios:Ativaajanelanascoordenadasespecificadas
acAutoHideMouseCursor(hidetimer,rehidetimer)
Parmetros:
hidetimer:comotempo(emmilissegundos)aaguardarsemmovimentodomouseantesescondendoocursordomouse.
Passandode0(zero)desativaautoocultar.
rehidetimer:quantasvezes(emmilissegundos)pararehideocursordomouseseeledeveseroculto(nocasodeaplicaes
outrareexibeocursor)
Retorna:inteiro(sempre1)
Comentrios:Autoescondetodososcursoresdemousepadrobaseiamostemporizadoresespecificados.
acCenterWindowToScreen(hwndTarget,x,y,useworkarea)
Parmetros:
hwndTarget:Oidentificadorparaajaneladesejada(se"nil",xeyserusadoparaobterajanelaascoordenadas)
x:senenhumhwndTargetespecificado,esteObtmoidentificadordejanelanoxeycoordenadas
y:vejaacima
useworkarea:(0paraFalse,1paraverdadeiro)sedeveusarareadetrabalhodatelaouno(readetrabalhoexcluio
espaousadopelabarradetarefas)
Retorna:inteiro(sempre1)
Comentrios:Centrosdajanelanatela
acClipWindowToScreen(hwndTarget,x,y,useworkarea)
Parmetros:
hwndTarget:Oidentificadorparaajaneladesejada(se"nil",xeyserusadoparaobterajanelaascoordenadas)
x:senenhumhwndTargetespecificado,esteObtmoidentificadordejanelanoxeycoordenadas
y:vejaacima
useworkarea:(0paraFalse,1paraverdadeiro)sedeveusarareadetrabalhodatelaouno(readetrabalhoexcluio
espaousadopelabarradetarefas)
Retorna:inteiro(sempre1)
Comentrios:Reposicionaajanelanatela,fazomelhorparagarantirqueajanelanoestforadoslimitesdatela,mas
noredimensionarajanela
acClearTopmost(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro(sempre1)
Comentrios:LimpaoSinalizardenvelsuperiordajanela
acCloseApplication(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanelaaserfechado"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanelaaserfechado
y:oY(topo)coordenardajanelaaserfechado
Retorna:inteiro(sempre1)
Comentrios:Fechaajanelaemcoordenadasespecificadas
acConsumePhysicalInput(value)
Parmetros:
valor:(0paraFalse,1paraverdadeiro)ses+deveconsumirtodososfsicos(mouseeteclado)deentrada.
Retorna:inteiro(sempre1)

Comentrios:Issopodesertilsevocestprestesaligarumratoouentradadeaodotecladoondevocnoquer
qualquerfsicoparainterferircomaaco.Mascertifiquesequevocchamarnovamente,passando0,dentrodomesmo
scriptLuaparapermitiraentradaouoseucomputadorpodesetornarinutilizvel!
acDelay(duration)
Parmetros:
Durao:(ms)nmerodemilissegundosparapausar
Retorna:inteiro(sempre1)
Comentrios:OscriptLuafazumapausaparaaduraoespecificada(Sleep(n))
acDisable()
Retorna:inteiro(sempre1)
Comentrios:DesabilitaaStrokesPlus.
acDisableCapture()
Retorna:inteiro(sempre1)
Comentrios:ImpedequeoStrokesPluscapturaomouseatquechamaseacEnableCapture(),ouosEstadosdeLuaso
reinicializados.
acDisableHotkey(hkid)
Parmetros:
hkid:idinternodatecladeatalhoIstoarmazenadonohkidedisponvelapenasparascriptdasteclasdeatalho.
Retorna:inteiro(sempre1)
Comentrios:Cancelaoregistroachavequente.Destinadoaousosomentedentrodoscriptparaatecladeatalho.hkid
automaticamentedefinidoepassadosparaoscriptdatecladeatalho.
acDisableNext()
Retorna:inteiro(sempre1)
Comentrios:Desabilitaogestoprximodacaptura
acDisplayBalloonTip(ttulo,mensagem,cone)
Parmetros:
Ttulo:Ottuloparaexibir
mensagem:Amensagemparaexibir
cone:Oconeparaexibirnobalo:0=nenhum,1=informao,2=aviso,3=erro
Retorna:inteiro(sempre1)
Comentrios:Exibeumadicadebalopertodoconedabandejados+.ObservequeoWindowslimitaafrequncianaqual
balodicaspodemserexibidaseotempoemgeral,entosevoctentarchamarissodenovo,algunssegundosdepoisa
pontafoidemitida,novaiacontecernada.PareceserdiferentenoWinXPvsWin7.
acDisplayText()
Parmetros:
mensagem:Otextoaserexibido
Fonte:Onomedafonteparausar
Tamanho:Otamanhodotexto
vermelho:Apartevermelhadacordacordotexto(RGB)
verde:Aparteverdedacordacordotexto(RGB)
azul:Aparteazuldacordacordotexto(RGB)
Durao:quantotempoparaexibirotexto,emmilissegundos
x:acoordenadadeX(esquerda)paracolocarotexto
y:acoordenadaY(top)paracolocarotexto
Retorna:inteiro(sempre1)
Comentrios:Exibeotextoespecificadonatela.
acEnableCapture()
Retorna:inteiro(sempre1)
Comentrios:InstruiStrokesPluspararetomaracapturaomouse,depoischamaseacDisableCapture().
acEnableHotkey(hkid)
Parmetros:
hkid:idinternodatecladeatalhoIstoarmazenadonohkidedisponvelapenasparascriptdasteclasdeatalho.
Retorna:inteiro(sempre1)
Comentrios:Registranovamenteatecladeatalho.Destinadoaousosomentedentrodoscriptparaatecladeatalho.hkid
automaticamentedefinidoepassadosparaoscriptdatecladeatalho.
acExit()
Retorna:inteiro(sempre1)
Comentrios:SadasStrokesPlus

acFindWindow(classname,ttulo)
Parmetros:
ClassName:Onomedaclassedajanelaaserlocalizado
Ttulo:Ottulodajanelaparaserlocalizado
Retorna:inteiroidentificadorparaajanela,se0noencontrado
Comentrios:Encontraumajaneladeclasseettulo,acorrespondnciaexata.Passeo[b]nil[/b]nolugardequalquer
parmetroparaexclulodabusca.Porexemplo,acFindWindow("Winampv1.x",nil)irencontraraclasseWinampeignorar
aqualificaodettulo.
acFindWindowByTitleRegex(titlepattern)
Parmetros:
titlepattern:Aexpressoregularparausaraoprocurarporumttulodejanela
Retorna:inteiroidentificadorparaajanela,se0noencontrado
Comentrios:Localizaaprimeirajanelacombinandoottuloparaaexpressoregularpassadaem
acFitWindowToScreen(hwndTarget,x,y,useworkarea)
Parmetros:
hwndTarget:Oidentificadorparaajaneladesejada(se"nil",xeyserusadoparaobterajanelaascoordenadas)
x:senenhumhwndTargetespecificado,esteObtmoidentificadordejanelanoxeycoordenadas
y:vejaacima
useworkarea:(0paraFalse,1paraverdadeiro)sedeveusarareadetrabalhodatelaouno(readetrabalhoexcluio
espaousadopelabarradetarefas)
Retorna:inteiro(sempre1)
Comentrios:Seencaixaajanelaparaatelaqueprincipalmenteocupando,paraocupartodaatela.
acGetAllWindows(toplevel)
Parmetros:
topo:0pararetornartodasasjanelamanipula(muito),1pararetornarsomentedenvelsuperiorwindows(recomendados)
Retorna:inteiro(sempre1)
Comentrios:Preencheatabelaglobalsp_all_windowscomosidentificadoresdejanelasolicitada.Vocnoprecisadefinira
tabeladesp_all_windows.
acGetClassName(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanelaoucontrole"nil"usaroxeyparalocalizarajanelaoucontrole
x:acoordenadadeX(esquerda)dajanelaoucontroleaserlocalizado
y:oY(topo)coordenardajanelaoucontroleaserlocalizado
Retorna:string
Comentrios:Obtmonomedeclassedajanelaespecificadaoucontrole.Observeque,aocontrriodeoutrasaesondeX
eYretornamajaneladeSELECTOWINGTEAM,estecontroleretornaajanelanopontoespecificado,porisso,seopontode
maisdeumboto,onomedobotoclasseserretornado.Sevocgostariadeandaratahierarquiaderecipiente,voc
podechamaracGetOwnerWindowByPoint()ouacGetParentWindowByPoint().
acGetClipboardText()
Retorna:string
Comentrios:Retornaotextoatualdareadetransferncia
acGetControlID(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanelaoucontrole"nil"usaroxeyparalocalizarajanelaoucontrole
x:acoordenadadeX(esquerda)dajanelaoucontroleaserlocalizado
y:oY(topo)coordenardajanelaoucontroleaserlocalizado
Retorna:string
Comentrios:ObtmoIDdocontroleparaoidentificadordocontroleespecificado.
acGetDesktopWindow()
Retorna:inteiro
Comentrios:RetornaoidentificadordajaneladoDesktop,estajanelaquerepresentaareadetrabalhodoWindows
acGetExecutableName(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanelaaserlocalizado
y:oY(topo)coordenardajanelaaserlocalizado
Retorna:string
Comentrios:ObtmonomedoEXEquedetmajanela
acGetFileVersion(arquivo,hwndTarget,x,y)
Parmetros:

arquivo:Ocaminhocompletoparaoarquivo""usarohwndTargetoux,yderelatriocombaseemumhwndTargetde
janela:Oidentificadorparaajanela"Nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanelaaserlocalizado
y:oY(topo)coordenardajanelaaserlocalizado
Retorna:string
Comentrios:Obtmaversodoarquivodoarquivoespecificadonoparmetrodearquivo,ouquepossuiajanelaquandoo
arquivoestvazio
acGetFileProductVersion(arquivo,hwndTarget,x,y)
Parmetros:
arquivo:Ocaminhocompletoparaoarquivo""usarohwndTargetoux,yderelatriocombaseemumhwndTargetde
janela:Oidentificadorparaajanela"Nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanelaaserlocalizado
y:oY(topo)coordenardajanelaaserlocalizado
Retorna:string
Comentrios:Obtmaversodoprodutodoarquivodoarquivoespecificadonoparmetrodearquivo,ouquepossuia
janelaquandooarquivoestvazio
acGetForegroundWindow()
Retorna:inteiro
Comentrios:Retornaoidentificadordajaneladeprimeiroplano(partesuperior),aquelequeestativonomomento
acGetMonitorBrightness(monitorhandle,x,y,modo)
Parmetros:
monitorhandle:Oidentificadorparaomonitor
x:acoordenadaxdopontousadoparalocalizaromonitor
y:acoordenadaydopontousadoparalocalizaromonitor
modo:1=valoratual,2=valormnimosuportado,3=valormximosuportado
Retorna:inteiro(1parasucesso,1parafalha)
Comentrios:Retornaovalordebrilhoespecificado(baseadonoparmetromode)doprimeiromonitorfsicoassociadocom
oidentificadordemonitor(nosuportadoantesVistanememalgunsmonitores,consultealterarologparadetalhes)
acGetMonitorBottom(monitorhandle,useworkarea)
Parmetros:
monitorhandle:Oidentificadorparaomonitor
useworkarea:seconsiderarapenasareadetrabalho,nocompletomonitor(excluiabarradetarefas,janelasancoradas)
Retorna:inteiro
Comentrios:ObtmacoordenadadeCY(inferior)domonitorespecificado
acGetMonitorFromName(monitorname)
Parmetros:
monitorname:Onomedomonitor(valordeveestarnoformulriodeescape,"\\"para"\",porexemplo,"\\.\DISPLAY1"
seriaescritonoscriptLuacomo"\\\.\\DISPLAY1")
Retorna:inteirocabodemonitor
Comentrios:Obtmidentificadorparaomonitorespecificado
acGetMonitorFromPoint(x,y)
Parmetros:
x:acoordenadaxdopontousadoparalocalizaromonitor
y:vejaacima
Retorna:inteiro
Comentrios:Retornaoidentificadorparaomonitorondeox,yestlocalizado
acGetMonitorLeft(monitorhandle,useworkarea)
Parmetros:
monitorhandle:Oidentificadorparaomonitor
useworkarea:seconsiderarapenasareadetrabalho,nocompletomonitor(excluiabarradetarefas,janelasancoradas)
Retorna:inteiro
Comentrios:ObtmacoordenadadeX(esquerda)domonitorespecificado
acGetMonitorName(monitorhandle)
Parmetros:
monitorhandle:identificadorparaomonitor
Retorna:string
Comentrios:Retornaonomedomonitor
acGetMonitorRight(monitorhandle,useworkarea)
Parmetros:
monitorhandle:Oidentificadorparaomonitor
useworkarea:seconsiderarapenasareadetrabalho,nocompletomonitor(excluiabarradetarefas,janelasancoradas)
Retorna:inteiro

Comentrios:ObtmoCX(direita)coordenadadomonitorespecificado
acGetMonitorTop(monitorhandle,useworkarea)
Parmetros:
monitorhandle:Oidentificadorparaomonitor
useworkarea:seconsiderarapenasareadetrabalho,nocompletomonitor(excluiabarradetarefas,janelasancoradas)
Retorna:inteiro
Comentrios:ObtmacoordenadaY(topo)domonitorespecificado
acGetMouseCursorType()
Retorna:string
Comentrios:Retornaonomedocursordomousedomouseatual:
SETA,IBEAM,espera,CROSS,at,SIZENWSESIZENESW,SIZEWE,SIZENS,SIZEALL,no,mo,APPSTARTING,ajudaou
desconhecido
acGetMouseLocationX()
Retorna:inteiro
Comentrios:RetornaacoordenadadeX(esquerda)dalocalizaoatualdomouse
acGetMouseLocationY()
Retorna:inteiro
Comentrios:RetornaoY(topo)coordenardaposioatualdomouse
acGetMute()
Retorna:inteiro1parasilenciado,0paranomudo
Comentrios:Retornaoestadodosmudosnocanalmestre
acGetNumber()
Retorna:inteiroovalorarmazenadonos+definidopelachamadaacSetNumber
Comentrios:RetornaovaloranteriormentearmazenadoporacSetNumber
acGetOwnerWindowByPoint(x,y)
Parmetros:
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro
Comentrios:Retornaoidentificadordajaneladoproprietrio(ancestral),qualpertenceajaneladedestino
acGetParentWindowByPoint(x,y)
Parmetros:
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro
Comentrios:Retornaoidentificadordajanelapai,aoqualpertenceajaneladedestino
acGetPixelBByPoint(x,y)
Parmetros:
x:acoordenadadeX(esquerda)dopontode
y:acoordenadaY(topo)dopontode
Retorna:inteiro0255
Comentrios:Obtmaparte(B)azuldacornopontoespecificado
acGetPixelGByPoint(x,y)
Parmetros:
x:acoordenadadeX(esquerda)dopontode
y:acoordenadaY(topo)dopontode
Retorna:inteiro0255
Comentrios:Obtmaparteverde(G)dacornopontoespecificado
acGetPixelRByPoint(x,y)
Parmetros:
x:acoordenadadeX(esquerda)dopontode
y:acoordenadaY(topo)dopontode
Retorna:inteiro0255
Comentrios:Obtmapartevermelha(R)dacornopontoespecificado
acGetProcessIDFromPattern(filepattern)
Parmetros:
filepattern:Onomeouopadrodeexpressoregularparaprocurar.
Retorna:inteiroIDdoprocesso,seumacorrespondnciaforencontrada,0seno

Comentrios:Determinasehumprocessoemexecuoquecorrespondeaopadrodearquivo.Arquivopadropodesero
nomeexatodoexecutvel,ouprocuraumaexpressoregularparaocuringa.
acGetSystemMetrics(value)
Parmetros:
valor:OID(nmero)(baseadoemWin32especificaes)pararecuperar
Retorna:inteiroovalorretornadopeloWindows
Comentrios:IssochamadiretamenteGetsystemMetrics,quepodesertilemdescobrirvriasmtricasdaconfiguraodo
Windows.Veja:http://msdn.microsoft.com/enus/library/windows/desktop/ms724385.aspx
acGetVolume()
Retorna:inteiroatualnveldevolume,0100
Comentrios:Retornaoatualvolumedocanalmestre
acGetWindowBottom(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajaneladesejada(se"nil",xeyserusadoparaobterajanelaascoordenadas)
x:senenhumhwndTargetespecificado,esteObtmoidentificadordejanelanoxeycoordenadas
y:vejaacima
Retorna:inteiro
Comentrios:ObtmoCY(inferior)dajanelaespecificada
acGetWindowByPoint(x,y)
Parmetros:
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro
Comentrios:Retornaoidentificadordajanelaemcoordenadasespecificadas
acGetWindowColorKeyB(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro0255
Comentrios:Obtmaparte(B)azuldacorqueachavedecoresdajanela
acGetWindowColorKeyG(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro0255
Comentrios:Obtmaparteverde(G)dacorqueachavedecoresdajanela
acGetWindowColorKeyR(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro0255
Comentrios:Obtmapartevermelha(R)dacorqueachavedecoresdajanela
acGetWindowFromProcessID(processID)
Parmetros:
processID:OIDdeprocessoparausaraoprocurarporumajaneladenvelsuperior.
Retorna:inteiroidentificadorparaaprimeirajaneladenvelsuperiordoprocesso,ouzerosenenhumacorrespondnciafoi
encontrada.
Comentrios:ProcuraporumajaneladenvelsuperiorquepertenceaIDdeprocessopassados.Seumacorrespondnciafor
encontrada,oidentificadorretornado,casocontrrio,nuloserretornado.
acGetWindowLeft(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajaneladesejada(se"nil",xeyserusadoparaobterajanelaascoordenadas)
x:senenhumhwndTargetespecificado,esteObtmoidentificadordejanelanoxeycoordenadas
y:vejaacima
Retorna:inteiro
Comentrios:ObtmacoordenadadeX(esquerda)dajanelaespecificada

acGetWindowRight(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajaneladesejada(se"nil",xeyserusadoparaobterajanelaascoordenadas)
x:senenhumhwndTargetespecificado,esteObtmoidentificadordejanelanoxeycoordenadas
y:vejaacima
Retorna:inteiro
Comentrios:ObtmoCX(direita)dajanelaespecificada
acGetWindowTitle(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:stringttulodajanela
Comentrios:Retornaottulodajanelaespecificada
acGetWindowTop(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajaneladesejada(se"nil",xeyserusadoparaobterajanelaascoordenadas)
x:senenhumhwndTargetespecificado,esteObtmoidentificadordejanelanoxeycoordenadas
y:vejaacima
Retorna:inteiro
Comentrios:ObtmacoordenadaY(topo)dajanelaespecificada
acGetWindowTransparency(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro0255
Comentrios:Obtmonveldetransparnciadeumajanela,sendoinvisvel,sendoslidode2550
acHideMouseCursor()
Retorna:inteiro(sempre1)
Comentrios:Ocultatodososcursoresdemousepadro.
acInputBox(ttulo,mensagem,padro,delim)
Parmetros:
Ttulo:Otextoaserexibidonabarradettulodajaneladacaixadeentrada
mensagem:Otextoaserexibidonoformulriodejaneladecaixadeentrada
padro:Ovalorpadroparapreencheracaixadetextocom
delim:seespecificado,oparmetropadroestdivididosobreessevalordedelimitadoregeradaumalistasuspensa
Retorna:string
Comentrios:Exibeumwindowsqueaceitaentradadousurio.
acIsImmersiveProcess(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanelaaserlocalizado
y:oY(topo)coordenardajanelaaserlocalizado
Retorna:inteiro0seajanelanoenvolvente,1sefor
Comentrios:Determinaseoprocessopossuirjanelaenvolvente(programaWindows8Metro/AppStore)
acKillDisplayText()
Retorna:inteiro(sempre1)
Comentrios:ForafechaajaneladeacDisplayTextantesdeduraotempolimitefoiatingido.
acLockWindows()
Retorna:inteiro(sempre1)
Observaes:LocksWindows,equivalenteapressionarWIN+L
acMaximizeWindow(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanelaasermaximizada"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanelaasermaximizada
y:oY(topo)coordenardajanelaasermaximizada
Retorna:inteiro(sempre1)
Comentrios:Maximizaajanelanascoordenadasespecificadas

acMaximizeOrRestoreWindow(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanelaparaserrestauradooumaximizado"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanelaaserrestauradaoumaximizada
y:oY(topo)coordenardajanelaparaserrestauradooumaximizado
Retorna:inteiro(sempre1)
Comentrios:Restauraoumaximizaajanela,dependendodoseuestado,nascoordenadasespecificadas
acMaximizeToAllScreens(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajaneladesejada(se"nil",xeyserusadoparaobterajanelaascoordenadas)
x:senenhumhwndTargetespecificado,esteObtmoidentificadordejanelanoxeycoordenadas
y:vejaacima
Retorna:inteiro(sempre1)
Comentrios:Estendeseajanelaparaocupartodaareadetrabalho,atravsdetodasastelas.Geralmente,issono
muitoprtico,masestlporquevaleapena.
acMessageBox(mensagem,ttulo,estilo)
Parmetros:
mensagem:Amensagemprincipalaserexibido
Ttulo:ttulodajaneladecaixademensagem
estilo:Ointeiro(combaseemespecificaesdeWin32)querepresentaoestilodacaixademensagem,queincluiocone,
botesebotopadro.zeroparanenhumestilo(botoOkapenas)
Retorna:inteiroovalorretornadopelacaixademensagem,sefoiespecificadoumestilo,qualbotofoiclicadoser
retornado(comoumsim/semcaixa,ovalorderetornoindicaqueobotoquefoiclicado)
Comentrios:ExibeumacaixademensagemdoWindowspadro.Podepassarnoestiloparapersonalizaroconeeos
botes.
acMinimizeWindow(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanelaparaserminimizado"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanelaparaserminimizado
y:oY(topo)coordenardajanelaparaserminimizado
Retorna:inteiro(sempre1)
Comentrios:Minimizaajanelanascoordenadasespecificadas
acMouseClick(x,y,boto,baixo,cima)
Parmetros:
x:acoordenadadeX(esquerda)deondeocliquedeveocorrer
y:acoordenadaY(top)deondeocliquedeveocorrer
boto:botodomouse,quedeveserenviado
0:botosecundrio(direitoporpadro,amenosqueosbotesdomousesotrocados)
1:botomdio
2:botoprincipal(esquerdaporpadro,amenosqueosbotesdomousesotrocados)
3:1botox
4:2botox
embaixo:(0paraFalse,1paraverdadeiro)seamensagemMOUSE_BUTTON_DOWNdeveserenviada
acima:(0paraFalse,1paraverdadeiro)seamensagemMOUSE_BUTTON_UPdeveserenviada
Retorna:inteiro(sempre1)
Comentrios:Enviarummouseparabaixoe/oueventoemcoordenadasespecificadas
acMouseMove(x,y)
Parmetros:
x:acoordenadadeX(esquerda)paramoverocursordomousepara
y:oY(topo)coordenarparamoverocursordomousepara
Retorna:inteiro(sempre1)
Comentrios:Moveocursordomouseparaascoordenadasespecificadas
acMoveWindow(hwndTarget,x,y,esquerda,superior)
Parmetros:
hwndTarget:Oidentificadorparaajanelaparasermovido"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanelaasermovido
y:oY(topo)coordenardajanelaasermovido
esquerda:AnovaX(esquerda)coordenadalocaldajanela
partesuperior:AnovacoordenadaY(topo)dalocalizaodajanela
Retorna:inteiro(sempre1)
Comentrios:Moveajanelausandocoordenadasespecificadas
acNextApplication()
Retorna:inteiro(sempre1)
Comentrios:Alternaparaaprximaaplicaonalistadejanela,comosegurarALTepressionartab(percorreosprogramas
abertos)

acPauseResumeThreadList(hwndTarget,x,y,currculo)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
currculo:(0paraFalse,1paraverdadeiro)1pararetomartpicos,0parasuspender
Retorna:inteiro(sempre1)
Comentrios:Suspendeoureiniciatodosossegmentosdeumajanela.Istomuitoperigosoenorecomendado,pormim
ouMicrosoft,naverdade.
acPlaySound(filename)
Parmetros:
nomedoarquivo:Ocaminhocompleto(lembrandosobreescaparLuacadeiasdecaracteres)paraoarquivoWAV
Retorna:inteiro(sempre1)
Comentrios:Tocaumsom.
acPostMessage(hwndTarget,MessageID,wParam,lParam)
Parmetros:
hwndTarget:Opunhododestinodajaneladeondeamensagemestaserenviado
MessageID:IDde(inteiro)amensagemaserenviada.
wParam:wParam(inteiro)paraserenviado
lParam:OlParam(inteiro)paraserenviado
Retorna:inteiro(sempre1)
Comentrios:Estaumaformamuitosimples,nopermitindoaestruturasdedadoscomplexasemwParamelParam.
Eupretendoexperimentaresuporteaqualquertipodeparmetronofuturo.
acPreviousApplication()
Retorna:inteiro(sempre1)
Comentrios:Alternaparaajanelaanterior,comopressionarALT+TAB
acRegistryCreateKey(rootkey,path)
Parmetros:
ROOTKEY:(inteiro)achaveraizdoregistro:
1=HKEY_CLASSES_ROOT
2=HKEY_LOCAL_MACHINE
3=HKEY_CURRENT_USER
4=HKEY_USERS
caminho:(string)ocaminhodachaveasercriado(\devemserantecedidascomo\\)
Retorna:inteiro,0=falhou,1=sucesso
Comentrios:Criaumanovachavenocaminhoespecificado.
acRegistryDeleteKey(rootkey,path)
Parmetros:
ROOTKEY:(inteiro)achaveraizdoregistro:
1=HKEY_CLASSES_ROOT
2=HKEY_LOCAL_MACHINE
3=HKEY_CURRENT_USER
4=HKEY_USERS
caminho:(string)ocaminhodachaveasereliminado(\devemserantecedidascomo\\)
Retorna:inteiro,0=falhou,1=sucesso
Comentrios:Excluiachavenocaminhoespecificado.(noexcluirseexistiremsubchavessubchavesdevemser
eliminadasprimeiro)
acRegistryDeleteValue(rootkey,caminho,nome)
Parmetros:
ROOTKEY:(inteiro)achaveraizdoregistro:
1=HKEY_CLASSES_ROOT
2=HKEY_LOCAL_MACHINE
3=HKEY_CURRENT_USER
4=HKEY_USERS
caminho:(string)ocaminhodachaveasereliminado(\devemserantecedidascomo\\)
Nome:(string)onomedovaloraserexcludo
Retorna:inteiro,0=falhou,1=sucesso
Comentrios:Excluiovalornachave/caminhoespecificado.
acRegistryGetNumber(rootkey,caminho,nome,padro)
Parmetros:
ROOTKEY:(inteiro)achaveraizdoregistro:
1=HKEY_CLASSES_ROOT
2=HKEY_LOCAL_MACHINE

3=HKEY_CURRENT_USER
4=HKEY_USERS
caminho:(string)ocaminhoparaachavedesejada(\devemserantecedidascomo\\)
Nome:(string)onomedovalor
padro:(inteiro)onmeropararetornarseachavenofoiencontrada
Retorna:(inteiro)valoroupadrosenoforencontrado
Comentrios:Recebeumvalordenmerodechave/caminhoespecificado.
acRegistryGetString(rootkey,caminho,nome,padro)
Parmetros:
ROOTKEY:(inteiro)achaveraizdoregistro:
1=HKEY_CLASSES_ROOT
2=HKEY_LOCAL_MACHINE
3=HKEY_CURRENT_USER
4=HKEY_USERS
caminho:(string)ocaminhoparaachavedesejada(\devemserantecedidascomo\\)
Nome:(string)onomedovalor
padro:(string)astringpararetornarseachavenofoiencontrada
Retorna:(string)valoroupadrosenoforencontrado
Comentrios:Recebeumvalordeseqnciadecaracteresdecaminho/chaveespecificado.ChavesdotipoREG_EXPAND_SZ
tersuasvariveisdeambienteexpandidoscomodisponvel.
acRegistrySetNumber(rootkey,caminho,nome,valor)
Parmetros:
ROOTKEY:(inteiro)achaveraizdoregistro:
1=HKEY_CLASSES_ROOT
2=HKEY_LOCAL_MACHINE
3=HKEY_CURRENT_USER
4=HKEY_USERS
caminho:(string)ocaminhoparaachavedesejada(\devemserantecedidascomo\\)
Nome:(string)onomedovalor
valor:(inteiro)ovaloraserarmazenado
Retorna:inteiro,0=falhou,1=sucesso
Comentrios:Defineumvalornumriconocaminho/chaveespecificado.
acRegistrySetString(rootkey,caminho,nome,valor,tipo)
Parmetros:
ROOTKEY:(inteiro)achaveraizdoregistro:
1=HKEY_CLASSES_ROOT
2=HKEY_LOCAL_MACHINE
3=HKEY_CURRENT_USER
4=HKEY_USERS
caminho:(string)ocaminhoparaachavedesejada(\devemserantecedidascomo\\)
Nome:(string)onomedovalor
valor:Ovaloraserarmazenado(cadeiadecaracteres)
tipo:(inteiro)otipodechavedoregistro:
1=REG_SZ(padro)
2=REG_EXPAND_SZ
Retorna:inteiro,0=falhou,1=sucesso
Comentrios:Defineumvalordeseqnciadecaracteresnocaminho/chaveespecificado.
acRelayGesture()
Retorna:inteiro(sempre1)
Comentrios:Repetealtimaseqnciadegestoparaqueoutroaplicativopodemanipularogestomodificadoresnoso
retransmitidas.
acReloadConfig()
Retorna:inteiro(sempre1)
Comentrios:InstruiStrokesPluspararecarregarosdadosdoarquivodeconfigurao(StrokesPlus.xml)
acRestoreWindow(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro(sempre1)
Comentrios:Restauraajanelaespecificada
acRunProgram(fullpath,parmetros,segundos,estilo)
Parmetros:
FullPath:caminhocompletoparaEXErequerescapebarrasinvertidas(C:\windows\notepad.exeprecisaserescritocomo
C:\\windows\\notepad.exe).

parmetros:osparmetrosdelinhadecomandoparapassarparaoprograma
segundos:ossegundosdeesperaparaoprogramasair(paraobterumcdigodesada)seaduraopassoueoprograma
aindaestfuncionando,0retornado.
estilo:Oestilodajaneladoprograma,usandoumdovalornCmdShowdescritoaqui:http://msdn.microsoft.com/en
us/library/windows/desktop/ms633548.aspx
Retornos:cdigointeiro0ouretornodoprograma(seelesaiantesdeatingiraduraodesegundos)
Comentrios:Executaumprograma
acSendAltDown()
Retorna:inteiro(sempre1)
Comentrios:EnviaateclaAltparaevento
acSendAltUp()
Retorna:inteiro(sempre1)
Comentrios:EnviaoAltchaveevento
acSendControlDown()
Retorna:inteiro(sempre1)
Comentrios:Enviaachavedecontroleparabaixodeevento
acSendControlUp()
Retorna:inteiro(sempre1)
Comentrios:Enviaachavedecontroleevento
acSendKeyDown(VKey)
Parmetros:
VKey:Okeycodevirtualparaenviar
Retorna:inteiro(sempre1)
Comentrios:Enviaachaveparabaixodeeventoparaajanelaativa.
acSendKeys(keystring)
Parmetros:
KeyString:Aseqnciadecaracteresdeenviarcomandos(cobertoaquideteclas)
Retorna:inteiro(sempre1)
Comentrios:Enviapressionamentosdeteclasparaajanelaativa.
acSendKeyUp(VKey)
Parmetros:
VKey:Okeycodevirtualparaenviar
Retorna:inteiro(sempre1)
Comentrios:Enviaachavedeeventoparaajanelaativa.
acSendMessage(hwndTarget,MessageID,wParam,lParam)
Parmetros:
hwndTarget:Opunhododestinodajaneladeondeamensagemestaserenviado
MessageID:IDde(inteiro)amensagemaserenviada.
wParam:wParam(inteiro)paraserenviado
lParam:OlParam(inteiro)paraserenviado
Retorna:inteiro(sempre1)
Comentrios:Estaumaformamuitosimples,nopermitindoaestruturasdedadoscomplexasemwParamelParam.
Eupretendoexperimentaresuporteaqualquertipodeparmetronofuturo.
acSendShiftDown()
Retorna:inteiro(sempre1)
Comentrios:Enviaachavededeslocamentoparabaixodeevento
acSendShiftUp()
Retorna:inteiro(sempre1)
Comentrios:Enviaachavedemudanadeevento
acSendWinDown()
Retorna:inteiro(sempre1)
Comentrios:Enviaachavedavitrianoevento
acSendWinUp()
Retorna:inteiro(sempre1)
Comentrios:EnviaachaveWinevento

acSendWindowToBottom(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro(sempre1)
Comentrios:Enviaajanelaespecificadaparaoinferiordajanelapilha(imaginetransformarsuatelaplanaeolhandopara
baixoadespejarsobreele)
acSendWindowToMonitorByHandle(monitorhandle)
Parmetros:
monitorhandle:Oidentificadorparaomonitordesejado
Retorna:inteiro(sempre1)
Comentrios:Enviaajanelaparaomonitorespecificado(posiescombasenoLEFTeTOP,noredimensionar)
acSendWindowToMonitorByName(monitorname)
Parmetros:
monitorname:Onomedomonitordesejado(deveserumaseqnciadeescape!\\para\,porexemplo,"\\.\DISPLAY1"
seriaescritonoscriptLuacomo"\\\.\\DISPLAY1")
Retorna:inteiro(sempre1)
Comentrios:Enviaajanelaparaomonitorespecificado(posiescombasenoLEFTeTOP,noredimensionar)
acSendWindowToNextMonitor(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajaneladesejada(se"nil",xeyserusadoparaobterajanelaascoordenadas)
x:senenhumhwndTargetespecificado,esteObtmoidentificadordejanelanoxeycoordenadas
y:vejaacima
Retorna:inteiro(sempre1)
Comentrios:Enviaajanelaparaoprximomonitor(posiescombasenoLEFTeTOP,noredimensionar)
acSendWindowToPreviousMonitor(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajaneladesejada(se"nil",xeyserusadoparaobterajanelaascoordenadas)
x:senenhumhwndTargetespecificado,esteObtmoidentificadordejanelanoxeycoordenadas
y:vejaacima
Retorna:inteiro(sempre1)
Comentrios:Enviaajanelaparaomonitoranterior(posiescombasenoLEFTeTOP,noredimensionar)
acSetClipboardText(value)
Parmetros:
valor:Otextoparasalvarareadetransferncia
Retorna:inteiro(sempre1)
Comentrios:Defineotextodeclipboardao"valor"
acSetDisplayGamma(vermelho,verde,azul)
Parmetros:
vermelho:Onovovalordegamavermelho(0255)
verde:Onovovalordegamaverde(0255)
azul:Onovovalordegamaazul(0255)
Retorna:inteiro(1parasucesso,1parafalha)
Comentrios:Ajustaarampadegamaemtodaareadetrabalhointeira,sesuportadopelaplacadevdeo.
acSetMonitorBrightness(monitorhandle,x,y,valor)
Parmetros:
monitorhandle:Oidentificadorparaomonitor
x:acoordenadaxdopontousadoparalocalizaromonitor
y:acoordenadaydopontousadoparalocalizaromonitor
valor:Onovovaloraserdefinidocomoobrilho
Retorna:inteiro(1parasucesso,1parafalha)
Comentrios:Defineovalordebrilhodomonitorprimeirofsicoassociadocomoidentificadordemonitor(nosuportado
antesVistanememalgunsmonitores,consultealterarologparadetalhes)
acSetMute(value)
Parmetros:
valor:1a0paranomudo,mudo
Retorna:inteiro(sempre1)
Comentrios:Defineoestadocombasenovalorpassadoem

acSetNumber(value)
Parmetros:
valor:onmeroparaarmazenarems+parausoporacGetNumber
Retorna:inteiro(sempre1)
Comentrios:Armazenaonmeroems+pararecuperaoporacGetNumber
acSetProcessPriority(hwndTarget,x,y,prioridade)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
prioridade:(inteiro)ovalordanovaprioridade(combasenovalordedwPriorityClassaqui:http://msdn.microsoft.com/en
us/library/windows/desktop/ms686219.aspx)
Retorna:inteiro(sempre1)
Comentrios:Defineaprioridadedoprocessodajanela
acSetTopmost(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro(sempre1)
Comentrios:DefineosinalizadordenvelsuperiordajanelaparaON
acSetVolume(valor,incremento)
Parmetros:
valor:(0100deinteiro)valorparadefinirovolumepara
incremento:(0paraFalse,1paraverdadeiro)trueSPdizparausaroparmetrodevalorcomoumajusteparaoatual
volme,falsedefineovolumeparaovalorexplicitamente
Retorna:inteiro(sempre1)
Comentrios:Defineonveldevolumeprincipal
acSetWindowColorKey(hwndTarget,x,y,remover,vermelho,verde,azul)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
remover:(boolean)truepararemoverachavedecor
vermelho:Overmelhovalordacorparatornarachavedecor
verde:Overdeparaovalordacorparatornarachavedecor
azul:Oazulvalordacorparatornarachavedecor
Retorna:inteiro(sempre1)
Comentrios:Defineachavedecoresparaumajanela,oquefazcomquetodasaspartesdeumajanelaquecombinarcom
acor(R,G,B)transparente.Podeterresultadosestranhosdependendodajanela!
acSetWindowSize(hwndTarget,x,y,esquerda,cima,largura,altura)
Parmetros:
hwndTarget:Oidentificadorparaajanelaparasermovido/porte"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanelaparasermovido/tamanho
y:oY(topo)coordenardajanelaparasermovido/tamanho
largura:Anovalarguradajanela
altura:Anovaalturadajanela
Retorna:inteiro(sempre1)
Comentrios:Moveetamanhosdejanelausandoascoordenadasespecificadaselargura/altura
acSetWindowTransparency(hwndTarget,x,y,opacidade)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
opacidade:Ovalorparadefinironveldeopacidadepara,0255(255opaco)
Retorna:inteiro(sempre1)
Comentrios:Defineonveldetransparnciadeumajanela,sendoinvisvel,sendoslidode2550
acSetWindowTransparencyAndColorKey(hwndTarget,x,y,opacidade,vermelho,verdeeazul)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
opacidade:Ovalorparadefinironveldeopacidadepara,0255(255opaco)
vermelho:Overmelhovalordacorparatornarachavedecor
verde:Overdeparaovalordacorparatornarachavedecor

azul:Oazulvalordacorparatornarachavedecor
Retorna:inteiro(sempre1)
Comentrios:Defineatransparnciaeacorchaveparaumajanela
acShellExecute(verbo,arquivo,parmetros,diretrio,estilo)
Parmetros:
verbo:editar,explorar,encontrar,abrir,imprimir.PesquisaparaShellExecuteMSDNnaInternetparaobtermaisdetalhes.
arquivo:Oarquivoouprogramaparaabrir(ouexecutaroutrasaescontra).Seespecificarocaminhocompletoneste
parmetro,escapebarrasinvertidassorequer(C:\windows\notepad.exeprecisaserescritocomo
C:\\windows\\notepad.exe)
parmetros:(opcional)osparmetrosdelinhadecomandoparapassarparaoprograma
diretrio:(opcional)especificaodiretriodetrabalho
estilo:Oestilodajaneladoprograma(escondido,normal,maximiza,etc.),usandoumdonCmdShowvalordescritoaqui:
http://msdn.microsoft.com/enus/library/windows/desktop/ms633548.aspx
Retorna:inteiro(sempre1)
Comentrios:Executaoverboespecificadonoarquivoounoobjetoespecificado.Porexemplo,especificarumdocumentodo
MSWordcom"aberta"eeleserabertonoMSWord.OuumEXEpodeseraberto,semelhanteaoacRunProgram().
acShowAbout()
Retorna:inteiro(sempre1)
Comentrios:Mostraajanelasobre
acShowMouseCursor()
Retorna:inteiro(sempre1)
Comentrios:Recarregatodososcursoresdemousepadro
acShowSettings()
Retorna:inteiro(sempre1)
Comentrios:Mostraajaneladeconfiguraes
acShowActions()
Retorna:inteiro(sempre1)
Comentrios:Mostraajaneladeaes
acShowHotkeys()
Retorna:inteiro(sempre1)
Comentrios:Mostraajaneladeteclasdeatalho
acShowIgnoreList()
Retorna:inteiro(sempre1)
Comentrios:Mostraajaneladelistadeignorados
acShowPrefs()
Retorna:inteiro(sempre1)
Comentrios:Mostraajaneladepreferncias
acTerminateProcess(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro(sempre1)
Comentrios:Mataoprocessoprincipaldajanelaespecificada.Istonoenviaumamensagemdefechamentoamigvelque
pedeparasalvararquivos,etc.
acTileWindows(modo,rea,mtodo)
Parmetros:
modalidade:1aoladoaladoverticalmente,2aoladoaladohorizontalmente
rea:0telharsomentenatelaonderesideajanelasoboinciodogesto,1paraazulejoemtodaareadetrabalhovirtual
inteira
mtodo:0terStrokesPluslidarcomatelha,1terjanelalidarcomaladoalado
Retorna:inteiro(sempre1)
Comentrios:Telhastodasasjanelasabertasverticalmenteouhorizontalmenteatravsdatelaoutodasastelas.Noteque
algumasjanelasnopodemposicionarcorretamentedevidocriaodejanelanopadro.Voucontinuararefinarthiese
aesnessesentido,mastentemudaromtodotambmparaveroquefuncionamelhorparavoc.
acToggleMute()
Retorna:inteiro(sempre1)
Comentrios:Alternaomutenocanalmestre

acToggleTopmost(hwndTarget,x,y)
Parmetros:
hwndTarget:Oidentificadorparaajanela"nil"usaroxeyparalocalizarajanela
x:acoordenadadeX(esquerda)dajanela
y:acoordenadaY(topo)dajanela
Retorna:inteiro(sempre1)
Comentrios:Alternaabandeirasuperiordajanela,ligadooudesligado
acToggleTrayIcon(state)
Parmetros:
Estado:1apenasescondeoconedabandeja,0alternaoconedebandejaparaoopostodeseuestadoatual,1saparece
oconedebandejaretorna:inteiro(sempre1)
Comentrios:AlternaouespecificaseoconedebandejadoStrokesPlusvisvelouoculto.Tambmpodeserrealizada
pressionandoCTRL+SHIFT+WIN+S
[voltaraotopo]acSendKeysuso:
Baseadonoprojetoaseguir:
http://www.CodeProject.com/KB/cpp/sendkeys_cpp_Article.aspx

Modificadoresdechave(indicaqueobotodeveserpressionadojuntocomocaractereseguinte,tilparaoenviodeALT
+H,queleria"%h"):
@=WINKEY
+=SHIFT
^=CTRL
%=ALT
Outrasfunes:
{VKEYX}enviaoVKEYespecificado.tilsehouverumVKEYeunotenhadefinido.Porexemplo,{VKEY13}equivalente
aVK_RETURN.
Veja:http://msdn.microsoft.com/enus/library/dd375731%28v=VS.85%29.aspx
{BEEPXY}emiteumsinalsonorocomumafrequnciadeXeumaduraodeYms.
{ATRASOX}atrasosenviandoaseguintechavedeXmilissegundos.
Apsoatrasonaseguintechave,aschavessubseqentesseronomaisatrasadassenohouverumvalordeatraso
padro(consulteDELAY=X).
Exemplo:{Atraso1000}<..traodechavesubseqentesatrasosdurante1segundo.
{ATRASO=X}defineovalordeatrasopadroXmilissegundos.IssofarcomquetodasaschavesseradiadaXms.
Seumvalorjdefinidoevocespecificar{atrasoY}vocterseusmsdeatrasochaveYaseguirmasaschaves
subseqentesseroatrasadasXms.
Exemplo:{atraso=1000}<..todasaschavessubseqentesseroadiadaspara1segundo.
ListacompletadeSendKeys:
{ADICIONAR}=VK_ADD
{APLICATIVOS}=VK_APPS
{EM}=@
{BACKSPACE}=VK_BACK
{BKSP}=VK_BACK
{RUPTURA}=VK_CANCEL
{BROWSERBACK}=VK_BROWSER_BACK
{BROWSERFAVORITES}=VK_BROWSER_FAVORITES
{BROWSERFORWARD}=VK_BROWSER_FORWARD
{BROWSERHOME}=VK_BROWSER_HOME
{BROWSERREFRESH}=VK_BROWSER_REFRESH
{BROWSERSEARCH}=VK_BROWSER_SEARCH
{BROWSERSTOP}=VK_BROWSER_STOP
{B}=VK_BACK
{CAPSLOCK}=VK_CAPITAL
{CURSOR}=^
{CLARO}=VK_CLEAR
{DECIMAL}=VK_DECIMAL
{DEL}=VK_DELETE
{DELETE}=VK_DELETE
{DIVIDE}=VK_DIVIDE
{BAIXO}=VK_DOWN
{FINAL}=VK_END
{ENTER}=VK_RETURN
{ESC}=VK_ESCAPE

{ESCAPE}=VK_ESCAPE
{F10}=VK_F10
{F11}=VK_F11
{F12}=VK_F12
{F13}=VK_F13
{F14}=VK_F14
{F15}=VK_F15
{F16}=VK_F16
{F_1}=VK_F1
{F_2}=VK_F2
{F_3}=VK_F3
{F_4}=VK_F4
{F_5}=VK_F5
{F_6}=VK_F6
{F_7}=VK_F7
{F_8}=VK_F8
{F_9}=VK_F9
{AJUDA}=VK_HELP
{HOME}=VK_HOME
{INS}=VK_INSERT
{LBRACE}={
{ESQUERDA}=VK_LEFT
{LPAREN}=(
{LWIN}=VK_LWIN
{MEDIANEXTTRACK}=VK_MEDIA_NEXT_TRACK
{MEDIAPLAYPAUSE}=VK_MEDIA_PLAY_PAUSE
{MEDIAPREVTRACK}=VK_MEDIA_PREV_TRACK
{MEDIASTOP}=VK_MEDIA_STOP
{MULTIPLICAR}=VK_MULTIPLY
{NUMLOCK}=VK_NUMLOCK
{NUMPAD0}=VK_NUMPAD0
{NUMPAD1}=VK_NUMPAD1
{NUMPAD2}=VK_NUMPAD2
{NUM3}=VK_NUMPAD3
{NUMPAD4}=VK_NUMPAD4
{NUMPAD5}=VK_NUMPAD5
{NUMPAD6}=VK_NUMPAD6
{NUMPAD7}=VK_NUMPAD7
{NUMPAD8}=VK_NUMPAD8
{NUMPAD9}=VK_NUMPAD9
{%}=%
{PGDN}=VK_NEXT
{PGUP}=VK_PRIOR
{E}=+
{PRTSC}=VK_PRINT
{RBRACE}=}
{RIGHT}=VK_RIGHT
{RPAREN}=)
{RWIN}=VK_RWIN
{ROLO}=VK_SCROLL
{SEPARADOR}VK_SEPARATOR
{SLEEP}VK_SLEEP
{INSTANTNEO}=VK_SNAPSHOT
{SUBTRAIR}VK_SUBTRACT
{TAB}=VK_TAB
{TIL}=~
{UP}=VK_UP
{VOLDOWN}=VK_VOLUME_DOWN
{VOLMUTE}=VK_VOLUME_MUTE
{VOLUP}=VK_VOLUME_UP
{WIN}=VK_LWIN

Você também pode gostar