jayfox911
17th April 2009 23:45 UTC
ExecWait with double quote
the command fails with double quotes with the command area.
all fail:
ExecWait '"${DOTNETPATH20}regasm /nologo /codebase "${JROOT}bin\board.dll"" x -y'
ExecWait '"${DOTNETPATH20}regasm /nologo /codebase \"${JROOT}bin\board.dll\"" x -y'
StrCpy$0 '"${JROOT}bin\board.dll"'
>ExecWait '"${DOTNETPATH20}regasm /nologo /codebase $0" x -y'
820815
18th April 2009 00:06 UTC
Re: ExecWait with double quote
ExecWait '"${DOTNETPATH20}regasm" /nologo /codebase "${JROOT}bin\board.dll" x -y'
Pidgeot
18th April 2009 00:12 UTC
Well, yes - of course they do. You have surrounded both the executable name and some of the parameters in a single set of double quotes - that will never work, as the quotes tell the shell to treat the contained part as a single element (since it's the first part, it'd be treated as the full executable name). Obviously, you wouldn't expect there to actually be a file with this name (hell, the Win32 subsystem doesn't even ALLOW that name).
Move the ending " to just after regasm, and it will likely work just fine.
(I'm assuming you have verified that ${JROOT} and ${DOTNETPATH20} actually contain what they're supposed to, but if they don't, then that's obviously going to be a problem as well.)
Static_VoiD
18th April 2009 00:14 UTC
You can use escape sequence $\" - now you'll be able to use quotes as many times as you want :) .
jayfox911
20th April 2009 15:22 UTC
Originally posted by Static_VoiD
You can use escape sequence $\" - now you'll be able to use quotes as many times as you want :) .
Thanks, I was doing \" not $\"
There are spaces in ${JROOT} that is why I needed the second set of quotes.