[OT] [AHK] zaklady prace s AHK

Moderated forum for Slovak and Czech users

Moderator: Hacker

User avatar
Hacker
Moderator
Moderator
Posts: 13052
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

Terka,
No ok, mozno nie jednoduchsi, ale urcite zabavnejsi a funkcnejsi: :)

Code: Select all

~$F7::
	WinWait, Total Commander ahk_class TCOMBOINPUT
	WinWaitClose, Total Commander ahk_class TCOMBOINPUT
	WinWait, Total Commander ahk_class #32770, , 2
	IfEqual, ErrorLevel, 0
	{
		WinText =
		FoundPos =
		DirName1 =
		TCWindowText =
		TCPath =

		WinGetText, WinText
		FoundPos := RegExMatch(WinText, "OK\r\nError: Directory \[(.*)\]\ralready exists!\rPlease specify a different name\.", DirName)

		IfEqual, FoundPos, 0
			Return

		; WinClose
		; Uncomment the line above to suppress the error message that the directory already exists

		WinWaitActive, ahk_class TTOTAL_CMD
		
		WinGetText, TCWindowText
		Loop, Parse, TCWindowText, `n, `r
			If (SubStr(A_LoopField, 0) = ">")
			{
				StringTrimRight, TCPath, A_LoopField, 1
				Break
			}

		Dir = %TCPath%\%DirName1%`r
		VarSetCapacity(CopyDataStruct, 12, 0)
		NumPut(Asc("C"), CopyDataStruct, 0)
		NumPut(Asc("D"), CopyDataStruct, 1)
		NumPut(StrLen(Dir)+4, CopyDataStruct, 4)
		NumPut(&Dir, CopyDataStruct, 8)
		NumPut(Asc("S"), Dir, StrLen(Dir) + 1)
		SendMessage, 0x4A, 0, &CopyDataStruct,, ahk_class TTOTAL_CMD
		VarSetCapacity(CopyDataStruct, 0)
	}
Return
HTH
Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
Terka
Senior Member
Senior Member
Posts: 326
Joined: 2006-05-24, 09:04 UTC

Post by *Terka »

its 8) !!
kdo umi ten umi, diky!
Terka
Senior Member
Senior Member
Posts: 326
Joined: 2006-05-24, 09:04 UTC

Post by *Terka »

nepouzivam moc diakritiku, ale rada bych do zkratek pridala neco s diakritikou. nechodi mi napr. "č"
User avatar
Hacker
Moderator
Moderator
Posts: 13052
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

Terka wrote:nepouzivam moc diakritiku, ale rada bych do zkratek pridala neco s diakritikou. nechodi mi napr. "č"
To som svojho casu skusal, a sice uz neviem presne, ako som dopadol, ale tiez mi to sfleku neslo, ale minimalne ked som to zadefinoval sko Special Key, tak to slo. Viac info vid AHK Help - Key List (Keyboard, Mouse, Joystick) uplne na spodku.

HTH
Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
Terka
Senior Member
Senior Member
Posts: 326
Joined: 2006-05-24, 09:04 UTC

Post by *Terka »

dik, zkusim
Terka
Senior Member
Senior Member
Posts: 326
Joined: 2006-05-24, 09:04 UTC

Post by *Terka »

ahoj dotaz nejspis na Hackera,
protoze mam jiz mnoho zkratek a #Include,
rada bych si udelala vlastni menu. Premyslela jsem o konfigurovatelnosti, a nejlepsi mi prijde ze by menu mohlo byt dynamicke podle adresarove struktury.
eXcel
Word
Tc

will generate menu:
eXcel
Word
Tc

obdobne s podmenu. V adresarich by pak byly soubory, ktere se spusti.
zkousela jsem dotaz na:
http://www.autohotkey.com/forum/viewtopic.php?t=14641&highlight=subdirectory
ale nedokazu udelat podadresare. Mohl bys mi s tim prosim pomoct?
Diky Terka
User avatar
Hacker
Moderator
Moderator
Posts: 13052
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

Ahoj Terka,
Mohl bys mi s tim prosim pomoct?
Obavam sa, ze nie, s GUI som skoro vobec nic nerobil.

Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
Terka
Senior Member
Senior Member
Posts: 326
Joined: 2006-05-24, 09:04 UTC

Post by *Terka »

Nevadi, i tak diky T
Terka
Senior Member
Senior Member
Posts: 326
Joined: 2006-05-24, 09:04 UTC

Post by *Terka »

Hackere,
chtela jsem poprosit o radu:

path_to_scripts = "c:\ahk\final"
#Include %path_to_scripts%\skript.ahk

co delam spatne?
diky T.
User avatar
Hacker
Moderator
Moderator
Posts: 13052
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

Ahoj Terka,
Od pohladu by tam asi tie uvodzovky nemali byt.

HTH
Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
Terka
Senior Member
Senior Member
Posts: 326
Joined: 2006-05-24, 09:04 UTC

Post by *Terka »

diky, ale nepomuze to.
User avatar
Hacker
Moderator
Moderator
Posts: 13052
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

Terka,
Aha, no, v Helpe je uvedene:
AHK Help wrote:The file name must not contain variable references
Takze s premennymi to nepojde.

Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
Terka
Senior Member
Senior Member
Posts: 326
Joined: 2006-05-24, 09:04 UTC

Post by *Terka »

dik. skoda :(
Terka
Senior Member
Senior Member
Posts: 326
Joined: 2006-05-24, 09:04 UTC

Post by *Terka »

Ahoj Romane,
skok do existujici adresare prestal fungovat, vypada to ze

Code: Select all

FoundPos := RegExMatch(WinText, "OK\r\nError: Directory \[(.*)\]\ralready exists!\rPlease specify a different name\.", DirName)
promenna DirName se naplni spatne a asi to bude verzi AHK.
http://www.autohotkey.com/board/topic/83135-regexmatch-returning-line-instead-of-subpat/
Ale stejne mi to nejde naplnit, at delam co delam. :twisted:
diky,
T.
User avatar
Hacker
Moderator
Moderator
Posts: 13052
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

Ahoj Terka,
No, ja mam problem skor s tym, ze ta posledna cast skriptu, konkretne

Code: Select all

SendMessage, 0x4A, 0, &CopyDataStruct,, ahk_class TTOTAL_CMD
zhodi TC. DirName je u mna naplnena spravne. Skus:

Code: Select all

~$F7::
	WinWait, Total Commander ahk_class TCOMBOINPUT
	WinWaitClose, Total Commander ahk_class TCOMBOINPUT
	WinWait, Total Commander ahk_class #32770, , 2
	IfEqual, ErrorLevel, 0
	{
		WinGetText, WinText
		FoundPos := RegExMatch(WinText, "(?<=OK\r\nError: Directory \[).*(?=\]\ralready exists!\rPlease specify a different name\.)", DirName)

		IfEqual, FoundPos, 0
			Return

		; WinClose
		; Uncomment the line above to suppress the error message that the directory already exists

		WinWaitActive, ahk_class TTOTAL_CMD

		WinGetText, WinText, ahk_class TTOTAL_CMD
		RegExMatch(WinText, "(?<=\n).*(?=>)", TCPath)

		Run, %COMMANDER_EXE% /O /S "/L=%TCPath%\%DirName%"

		WinText =
		FoundPos =
		TCPath =
		DirName =
	}
Return
HTH
Roman
P.S.: Mozno ten skript musi byt spusteny z TC (teda ze ten .ahk musis spustit z TC) aby vedel nacitat premennu COMMANDER_EXE, ktoru vytvara v systeme TC.
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
Post Reply