Pergunta

Why can't i do this in TCL:

set path "|C:/Program Files/Example/My Program/prgrm.exe"

The string path will get the value:

"C:/Program".

But if I remove the spaces it will get the full path... Anyone got an idea?

Foi útil?

Solução

It's because the code for running a subprocess with pipe takes a Tcl list after the | character. Build and run it like this:

set path "C:/Program Files/Example/My Program/prgrm.exe"
set pipe [open |[list $path]]

(Later items in that list are the arguments to pass to prgrm.exe.)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top