Hey Jungs und Mädels,
Hab hier n kleines Problem.
Mein script für die Arbeit soll per Hotkey in ein anderes Programm eine Laufende Nummer eintragen.
Funzt auch gut so, bis auf den Umstand, das nach ausführen eines der Hotkeys manchmal einfach dei Steuerungstaste gedrückt bleibt.
hab schon einiges versucht, aber noch auf keinen grünen Zweig gekommen.
Der Fehler tritt in der Arbeit genauso auf, wie zu Hause.
hier mein Script.
Spoiler anzeigen
#Include <File.au3>
Global $version=("Programmliste V0.3")
Global $ini=("liste.ini")
Global $logfile=(@username&"_Programmliste.txt")
if iniread($ini,@username,"hk1","")="" Then
FileWriteLine($ini," ")
FileWriteLine($ini," ")
FileWriteLine($logfile,"")
IniWrite($ini,@username,"shortname","X")
IniWrite($ini,@username,"shortnumber","4")
IniWrite($ini,@username,"hk1","^!{F1}")
IniWrite($ini,@username,"hk2","^!{F2}")
IniWrite($ini,@username,"hk3","^!{F4}")
IniWrite($ini,@username,"number","10000")
EndIf
$nxtnbr = TrayCreateItem("nächste Nummer")
$logedit = TrayCreateItem("Liste")
$iniedit = TrayCreateItem("Ini editieren")
TrayCreateItem("")
$info = TrayCreateItem("Info")
TrayCreateItem("")
$exit = TrayCreateItem("Exit")
Opt("TrayMenuMode",1)
Global $hk1=IniRead($ini,@username,"hk1","")
Global $hk2=IniRead($ini,@username,"hk2","")
Global $hk3=IniRead($ini,@username,"hk3","")
HotKeySet($hk1,"_paste")
HotKeySet($hk2,"_paste")
HotKeySet($hk3,"_numchange")
While 1
$msg = TrayGetMsg ()
select
case $msg=$exit
exit
case $msg=$logedit
Run("Notepad.exe "&$logfile)
case $msg=$nxtnbr
_numchange ()
case $msg=$iniedit
_iniedit ()
case $msg=$info
MsgBox(0,@scriptname,$version&@crlf&"Sponsored by Michi")
EndSelect
sleep(3)
WEnd
Func _paste ()
FileClose ($ini)
FileClose ($logfile)
;~ ProcessClose ("notepad.exe")
$number=IniRead($ini,@username,"number","X")
$shortname=IniRead($ini,@username,"shortname","X")
$shortnumber=IniRead($ini,@username,"shortnumber","0")
$pgmname=($shortname&$number)
_FileWriteToLine($logfile,1, $pgmname&" "&@MDAY&"."&@MON&" "&@HOUR&":"&@MIN&":"&@SEC)
send("{HOME}")
Send("+{END}")
send($pgmname)
Send("{TAB}")
send("{HOME}")
Send("+{END}")
if @HotKeyPressed = $hk2 Then $pgmname=($shortnumber&$number)
send($pgmname)
$number =(number($number)+1)
IniWrite($ini,@username,"number",$number)
EndFunc
Func _numchange ()
$number=IniRead($ini,@username,"number","X")
$number = InputBox(@scriptname,"Gib die nächste Programmnummer ein!",$number)
if @error =0 then IniWrite($ini,@username,"number",$number)
EndFunc
func _iniedit ()
Run("Notepad.exe "&$ini)
EndFunc