Re: Problems with exec() on windows
| From: | Shawn McKenzie | Date: | Thu, 19 Mar 2009 15:25:57 +0000 |
| Subject: | Re: Problems with exec() on windows | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-290282@lists.php.net to get a copy of this message | ||
Kyohere Luke wrote:
> Hi,
> I'm trying to use exec to call gammu.exe and send sms on windows XP.
>
> This works from commandline:
>
> C:\path\to\gammu.exe 1 --sendsms EMS 200 -text "test1 test2"
>
> But if I run it through php like this:
>
> $command = "\"C:\path\to\gammu.exe\" --sendsms EMS 200 -text \"test1
> test2\"".;
> @exec($command, $response, $retval);
>
> This always fails, returns 1 and the response is empty.
>
> If the last argument is a string with no spaces, and the double quotes were
> omitted, it works perfectly.
>
> If the double quotes are added around the string with no spaces, it fails
> again, which makes me believe that the problem is with the double quotes.
>
> I've used procmon and it shows that when the double quotes are added around
> the last argument, gammu.exe is not even called at all.
>
> Problem is that the double quotes are required by gammu to send an sms with
> spaces in it.
>
> Any ideas? :-(
>
> Luke
>
Why not try:
$command = 'C:\path\to\gammu.exe --sendsms EMS 200 -text "test1 test2"';
--
Thanks!
-Shawn
http://www.spidean.com