Currently I am trying to build myself a GUI test interface to exiftool using the -stay_open interface using std::in, out & err.
It sort of works for as far as I have been able to test the stay_open feature, but when I try to pass a -lang option, such as -lang en-ca to that interface it is rejected and the std::err output reports "Invalid TAG name: lang en-ca"
Running exiftool for the same image file & option on the command line works as expected.
Is this supposed to work or did I miss something relevant in the documentation :-)
See FAQ #29 (https://exiftool.org/faq.html#Q29)
Those instructions were followed in this test.
StarGeek is correct. You need a linefeed between -lang and en-ca since you are reading the arguments using the -@ feature.
- Phil
As it shows in that FAQ with the -d option
-lang
en-ca
not
-lang en-ca
Thank you both, yes, that is what it took, but ....
a trailing space on -lang was another one of the issues.
Also, one cannot have any "-execute" statements in between -lang & en-ca ( I was using -executexx to debug the output) nor anywhere else before the file name (obvious, sort of) in hind sight, though not really, if one assumes -execute to mean 'have a look at what I have sent you and tell me what, if anything is incorrect'.
At least, by now, I understand the -@ protocol better.