Hotstring aus Datei per Loop erzeugen Topic is solved

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

Ahk_fan
Posts: 50
Joined: 31 Aug 2018, 14:34

Hotstring aus Datei per Loop erzeugen

16 Mar 2019, 05:06

Hallo Community,

wieder mal ich mit einer wahrscheinlich doofen Frage. Habe mich im Forum dumm und dämlich gesucht, aber nichts passendes gefunden.

Folgendes möchte ich:
Ein kompiliertes Script soll aus einer AHK/TXT Datei die Hotstrings einlesen. Diese Datei ist dynamisch, d.h. kann immer wieder verändert werden, deswegen kommt #Include nicht in Frage, da da ja die Datei in das Script integriert wird.

Problem:
Die Datei wird korrekt eingelesen, geparst und die Arrays an den Befehl Hotstring weitergegeben, allerding funktioniert der Hotstring nicht (siehe 1. Schleife). --> z.B. mfgmm, oder ghm --> geht nicht!
Wenn ich einfach per Loop einen Hotsring erzeuge, geht es (siehe 2.Schleife). --> abc1, abc2 --> geht!

Hier mein Code der Hauptdatei

Code: Select all

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
#Persistent
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
FileRead, myfile, %A_ScriptDir%\test.ahk
Loop, parse, myfile, `n, `r
{
	HSKuerzel :=
	HSText :=
	teilen := strSplit(A_LoopField, ":")
	HSKuerzel := teilen[3]
	HSText := teilen[5]
	;msgbox, %HSKuerzel% / %HSText%
	if HSKuerzel =
		continue
	if HSText =
		continue
	Hotstring("::" HSKuerzel, HSText)
}
loop, 4
{
	HSKuerzel := "abc" A_Index
	HSText := "jldakjdlkajdslkajsle" A_Index
	Hotstring("::" HSKuerzel, HSText)
}
return
und hier die test.ahk, die in das gleich Directory speichern, wie das Hauptscript

Code: Select all

::mfg::Mit freundlichen Grüßen,
::mfgmm::Mit freundlichen Grüßen,max Mustermann
::Fr::Fr.
::Hr::Hr.
::sgdh::Sehr geehrte Damen und Herren,
::sgh::Sehr geehrte Herren,
::BEschaffung::Beschaffung
::grm::Gruß Max
was mache ich falsch?

Danke schon mal!
regards,
AHK_fan :)
just me
Posts: 6366
Joined: 02 Oct 2013, 08:51
Location: Germany

Re: Hotstring aus Datei per Loop erzeugen  Topic is solved

16 Mar 2019, 05:35

Moin,

wenn ich Deine Testdaten händisch in die Variable myfile stelle und die dann parse, funktioniert by mir alles wie es soll. Vielleicht ist etwas mit der Datei?
Ahk_fan
Posts: 50
Joined: 31 Aug 2018, 14:34

Re: Hotstring aus Datei per Loop erzeugen

16 Mar 2019, 07:08

Ich werde wahnsinnig! Ja es liegt an der Datei...sobald ich sie mit dem Notepad öffne und speicher, speichert der Notepad es als ANSI, obwohl es im naotepad++ als UTF8 gepeichert wurde.
Danke dir!
regards,
AHK_fan :)
just me
Posts: 6366
Joined: 02 Oct 2013, 08:51
Location: Germany

Re: Hotstring aus Datei per Loop erzeugen

16 Mar 2019, 11:12

Dann hast Du in NP++ die Byte-Order-Mark (BOM) vergessen. Mit BOM erkennt auch das einfache Notepad die Kodierung.

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: No registered users and 17 guests