Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Executing commands may hang on Windows XP for some programs #124

Open
GoogleCodeExporter opened this issue Aug 28, 2015 · 6 comments
Open

Comments

@GoogleCodeExporter
Copy link

It's a PHP bug 44942:
https://bugs.php.net/bug.php?id=44942

When executing wmic.exe to fetch software/hardware information, it will hang:

  ob_start();
  $ret = system("C:\Windows\System32\wbem\wmic.exe path win32_computersystemproduct get uuid");
  $output = ob_get_contents();
  ob_end_clean();

Tried using WScript.Shell COM object and its method Exec() instead, but it 
failed as well.

We may introduce ExecuteCommand function to javascript API.

Another option is to create a helper executable for eg. exec-cmd.exe that would 
work around the PHP bug, it would be called like this:

  system("exec-cmd.exe \"C:\Windows\System32\wbem\wmic.exe path win32_computersystemproduct get uuid\"");

Original issue reported on code.google.com by [email protected] on 3 Oct 2014 at 3:56

@GoogleCodeExporter
Copy link
Author

In PHP bug 44942 there is a comment by claudix with a supposedly workaround fix 
by making calls to session_start() and session_write_close(), and using 
proc_open/proc_close functions instead of system().

Original comment by [email protected] on 3 Oct 2014 at 5:09

@GoogleCodeExporter
Copy link
Author

A FINAL SOLUTION TO THIS ISSUE. Use a command like this: "echo | command...". 
For example:

  $output = shell_exec("echo | {$_ENV['SYSTEMROOT']}\System32\wbem\wmic.exe path win32_computersystemproduct get uuid");
  if ($output) echo "Command succeeded. Output=".$output;
  else echo "Command failed.";

Original comment by [email protected] on 4 Oct 2014 at 6:30

@Croydon
Copy link

Croydon commented Mar 23, 2017

No XP support anymore, right?

@cztomczak
Copy link
Owner

The last version that supported XP is the 47.5 release. Some people will still need/ask for XP support, so that 47.5 release will be still provided on Download wiki page for a long time. I am not closing this issue because it is still an issue for those who need to support XP.

@cztomczak
Copy link
Owner

@darkterminal
Copy link

@Croydon or you can find inspiration in my example

I have pull example how to create Windows Print Service on start up and on shutdown application just feel free to take a look #305 maybe it's help you to know how it's work for me. I forgot to write settings.json value listen_on with fixed value in README.md example.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants