Page 5 of 6
Posted: 2008-04-21, 08:33 UTC
by Terka
Ahoj, dalsi zajimavy dotaz:
mejme otevreny soubor (napr. v excelu).
slo by dat jmeno tohoto souboru s cestou do schranky nebo promenne?
Posted: 2008-04-21, 16:22 UTC
by Hacker
No, v Exceli 2007 by bolo mozne zistit iba meno daneho suboru, v inych Exceloch neviem. Skus sa pohrat s Window Spy.
Este ohladom toho predosleho, nic mi zial nenapadlo.
Roman
Posted: 2008-04-21, 20:48 UTC
by Terka
excelem umim dat jmeno do bunky, myslela jsem jestli nejde neco pomoci ahk (nejaka fce). no nevadi. diky!
Posted: 2008-04-21, 20:58 UTC
by Hacker
No, funkcia nie, z nazvu okna to vie zistit.
Roman
Posted: 2008-04-23, 11:21 UTC
by Terka
Tak me napada, existuje, nebo slo by napsat nejaky environment pro AHK ktery by po napsani prikazu (serie prikazu) provedl vysledek?
neco jako shell v linuxu. aby uzivatel nemusel vytvaret "zkusebni" program a spoustet ho
napr.
chci zjistit jak funguje
msgbox
po napsani
msgbox a a zmacknuti enter by provedl prikaz
a=ahoj ; msgbox %a% enter by provedl prikaz(y)
a=ahoj ; msgbox a enter by provedl prikaz(y)
Posted: 2008-04-23, 14:24 UTC
by Hacker
Tak me napada, existuje, nebo slo by napsat nejaky environment pro AHK ktery by po napsani prikazu (serie prikazu) provedl vysledek?
neco jako shell v linuxu. aby uzivatel nemusel vytvaret "zkusebni" program a spoustet ho
napr.
chci zjistit jak funguje
msgbox
po napsani
msgbox a a zmacknuti enter by provedl prikaz
No, neviem, ci take nieco existuje, ale zlozite by to asi nebolo, jeden GUI riadok, ktory by po Entere skopiroval sam seba do AHK skriptu a spustil ho.
a=ahoj ; msgbox %a% enter by provedl prikaz(y)
a=ahoj ; msgbox a enter by provedl prikaz(y)
Tomuto som celkom neporozumel.
Roman
Posted: 2008-04-23, 14:47 UTC
by Terka
jedno vyhodi "ahoj", druhe "a"
proste kdyz zacatecnik jako ja nezna syntaxi.
mohl bys mi prosim neco takoveho napsat?
Posted: 2008-04-23, 18:06 UTC
by Hacker
Terka,
mohl bys mi prosim neco takoveho napsat?
Take jednoduche to zas nie je.

V GUI sa nevyznam, a kedze tam chces aj premenne, nestaci jeden riadok. Ale ak by si to napisala na
AHK fore, urcite by sa niekto skusenejsi nasiel.
Roman
Posted: 2008-04-24, 10:23 UTC
by Hacker
Terka,
Mozno
toto tutok take je co hladas.
HTH
Roman
Posted: 2008-04-25, 08:39 UTC
by Terka
Romane, diky za odpovedi.
Vyzkousela jsem fci execute, ale neni to ono, viz diskuse o e("msgbox",x).
zkusim napsat cos mi radil, psala bych to v libovolnem textaku a misto enter by se to spoustelo jinou kombinaci.
Kdybys nekdy na neco narazil, co by vypadalo jako "debugger" pro ahk, dej mi plz vedet.
Posted: 2009-05-14, 11:30 UTC
by Terka
Romane,
slo by kdyz po f7 napise, ze adr. uz existuje, aby TC rovnou skocil do onoho adresare?
Posted: 2009-05-14, 19:08 UTC
by Hacker
Ahoj
Terka,
Mas stastie, ze nemam nic lepsie tento vecer na robote.
Code: Select all
DetectHiddenText, On
Loop
{
WinText =
DirName1 =
PID =
TCPath =
sFilePath =
FoundPos =
WinWaitActive, Total Commander ahk_class #32770
WinGetText, WinText
FoundPos := RegExMatch(WinText, "OK\r\nError: Directory \[(.*)\]\ralready exists!\rPlease specify a different name\.", DirName)
IfEqual, FoundPos, 0
Continue
WinWaitActive, ahk_class TTOTAL_CMD
WinGet, PID, PID
VarSetCapacity(sFilePath, 260)
VarSetCapacity(sCmdLine, 512)
pFunc := DllCall("GetProcAddress", "Uint", DllCall("GetModuleHandle", "str", "kernel32.dll"), "str", "GetCommandLineA")
hProc := DllCall("OpenProcess", "Uint", 0x043A, "int", 0, "Uint", pid)
hThrd := DllCall("CreateRemoteThread", "Uint", hProc, "Uint", 0, "Uint", 0, "Uint", pFunc, "Uint", 0, "Uint", 0, "Uint", 0)
DllCall("WaitForSingleObject", "Uint", hThrd, "Uint", 0xFFFFFFFF)
DllCall("GetExitCodeThread", "Uint", hThrd, "UintP", pcl)
DllCall("ReadProcessMemory", "Uint", hProc, "Uint", pcl, "str", sCmdLine, "Uint", 512, "Uint", 0)
DllCall("psapi\GetModuleFileNameExA", "Uint", hProc, "Uint", 0, "str", sFilePath, "Uint", 260)
DllCall("CloseHandle", "Uint", hThrd)
DllCall("CloseHandle", "Uint", hProc)
WinGetText, TCWindowText
Loop, Parse, TCWindowText, `n, `r
If (SubStr(A_LoopField, 0) = ">")
{
StringTrimRight, TCPath, A_LoopField, 1
Break
}
Run, "%sFilePath%" /O /S "/L=%TCPath%\%DirName1%"
}
Samozrejme, funguje to iba ked je v TC nastavena anglictina, inac treba upravit ten RegExMatch.
HTH
Roman
Posted: 2009-05-18, 10:31 UTC
by Terka
diky!!
ten kod vypada docela hrozive.
Pouzivam TC v cestine, RE si upravim.
Terka
Posted: 2009-05-18, 11:27 UTC
by Terka
Romane, da se to integrovat do meho skriptu, co vypada takto?
nebo kvuli loopu to musi bezet separatne?
#IfWinActive, ahk_class TTOTAL_CMD
$+F5::
#Include c:\ahk\tc\tc_backup_shift_f5.ahk
$^c:: ;copy - names, full_names, path to clipboard
#Include c:\ahk\tc\TC_copy.ahk
$f7::
#include TVUJ SKRIPT
Posted: 2009-05-18, 14:07 UTC
by Hacker
Terka,
Ono, vela veci sa da zjednodusit, ak zadas cestu k TC priamo do premennej v skripte, aby si ju nemusel cucat sam zo zakuti Windowsu. Skusim napisat kratsiu verziu trochu neskor, a aj s tym F7 sa to bude dat.
Roman