Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched.
Close
Hallo Zusammen.
Bei der Nutzung der Funktion SysProcessExecuteCommand oder SysProcessExecuteCommand2, wenn der pszComand-String solche Zeichen wie '=' oder '&' beinhaltet, dann wird dieses Befehl nicht ausgeführt und man bekommt als Result Errorcode = 25. Obwohl dieses Befehl im CODESYScontrol.cfg freigegeben ist und das Gleiches Befehl mit einem Argument ohne die o.g. Zeihen wird erfolgreich ausgeführt. Unten ist ein Beispiel mit einfachem "echo"-Befehl.
Hier im Argument für "echo" ist ein "=" Zeichen und der wird anscheint nicht als Zeichen, sondern als Kommando interpretiert. Somit beendet es mit einem 25-Fehler. Ohne "=" Zeichen ist Ergebnis = OK. Weiß jemand wie man dieses Problem umgehen kann?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Danke, aber den Argument "wg=10.12" wollte ich variabel zum einem *.sh übergeben. Kann man solchen Zeichen wie "=" oder "&" irgendwie escapen, dass diese nicht mehr als Steuerzechen betrachtet werden?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo Zusammen.
Bei der Nutzung der Funktion SysProcessExecuteCommand oder SysProcessExecuteCommand2, wenn der pszComand-String solche Zeichen wie '=' oder '&' beinhaltet, dann wird dieses Befehl nicht ausgeführt und man bekommt als Result Errorcode = 25. Obwohl dieses Befehl im CODESYScontrol.cfg freigegeben ist und das Gleiches Befehl mit einem Argument ohne die o.g. Zeihen wird erfolgreich ausgeführt. Unten ist ein Beispiel mit einfachem "echo"-Befehl.
SysProcessExecuteCommand2('echo wg=10.12', pszStdOut, SIZEOF(szStdOut), pRtsIecResult);
Hier im Argument für "echo" ist ein "=" Zeichen und der wird anscheint nicht als Zeichen, sondern als Kommando interpretiert. Somit beendet es mit einem 25-Fehler. Ohne "=" Zeichen ist Ergebnis = OK. Weiß jemand wie man dieses Problem umgehen kann?
echo wg=10.12 als myecho.sh aufrufen...
Danke, aber den Argument "wg=10.12" wollte ich variabel zum einem *.sh übergeben. Kann man solchen Zeichen wie "=" oder "&" irgendwie escapen, dass diese nicht mehr als Steuerzechen betrachtet werden?