Page 1 of 1

php-cgi.exe breaking and not able to reach my site anymore

PostPosted: December 13th, 2017, 6:34 pm
by jose.enser
Hi
I'm using a WIMP configuration
Windows 10 Enterprise
IIS 10.0.15063.0
MySQL 5.7
PHP 7.1.12RC1 (Latest 7.1.X)

& My Dev versions:
PHP Tools For VS: 1.25.10447.2015 (Latest one)
Visual Studio 2015 Professional 14.0.25420.01 Update 3
XDebug: php_xdebug-2.5.0-7.1-vc14-nts-x86_64

And everything is well configured on the php.ini file.

Each time I try to run my app through Visual Studio...
it starts debugging but really shortly : (no more than 2 seconds) I have this output:

- Invalid information were received from PHP.Debugger.Server.
- Invalid information were received from PHP.Debugger.Server.
- The program '[108728] php-cgi.exe' has exited with code -1 (0xffffffff).

and after that not more breakpoints and even i'm not able to reach my site anymore.
I'm stuck on "Waiting for ..." forever until I have a Timeout error.


here the Description of the VS ActivityLog.xml:

<description>
System.Runtime.Serialization.SerializationException: Binary stream &apos;0&apos; does not contain a valid BinaryHeader. Possible causes are invalid stream or object version change between serialization and deserialization.&#x000D;&#x000A; at
System.Runtime.Serialization.Formatters.Binary.__BinaryParser.Run()&#x000D;&#x000A; at
System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)&#x000D;&#x000A; at
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)&#x000D;&#x000A; at
PHP.VisualStudio.Debugger.DebugConnectionListener.GetSocketInformation(Socket socket)&#x000D;&#x000A; at
PHP.VisualStudio.Debugger.DebugConnectionListener.&lt;&gt;c.&lt;AcceptDebugSocket&gt;b__13_0()&#x000D;&#x000A; at
Devsense.VisualStudio.Shell.GuardedOperations.Call[T](Object source, Func`1 action, T default)
</description>


<description>
System.Runtime.Serialization.SerializationException: The input stream is not a valid binary format. The starting contents (in bytes) are: 00-07-01-00-00-00-FF-FF-FF-FF-6F-70-74-69-6F-6E-73 ...&#x000D;&#x000A; at
System.Runtime.Serialization.Formatters.Binary.SerializationHeaderRecord.Read(__BinaryParser input)&#x000D;&#x000A; at
System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadSerializationHeaderRecord()&#x000D;&#x000A; at
System.Runtime.Serialization.Formatters.Binary.__BinaryParser.Run()&#x000D;&#x000A; at
System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler handler, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)&#x000D;&#x000A; at
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage)&#x000D;&#x000A; at
PHP.VisualStudio.Debugger.DebugConnectionListener.GetSocketInformation(Socket socket)&#x000D;&#x000A; at
PHP.VisualStudio.Debugger.DebugConnectionListener.&lt;&gt;c.&lt;AcceptDebugSocket&gt;b__13_0()&#x000D;&#x000A; at
Devsense.VisualStudio.Shell.GuardedOperations.Call[T](Object source, Func`1 action, T default)
</description>





I've tried different versions of XDebug with Multiple version of PHP Tools For Visual Studio
I don't know what else i can do.

Thanks in advance and Best Regards

Re: php-cgi.exe breaking and not able to reach my site anymo

PostPosted: December 14th, 2017, 10:25 am
by Miloslav Beno
Hello,

Thank you for your feedback.

From the information you've provided it seems the issue is not with the xdebug and not in some particular version of PHP Tools. It seems something is interfering with communication of PHP Tools and our PHP.Debubugger.Server which is the process that passes open xdebug socket to PHP Tools. In your case the data that PHP Tools receive from the process are somehow corrupted.

May I ask you to try turn off firewall, antivirus, vpn software or anything that could interfer with tcp/ip communication?

Please let me know if that influced this behaviour.

Thanks,

Re: php-cgi.exe breaking and not able to reach my site anymo

PostPosted: December 14th, 2017, 9:06 pm
by jose.enser
Hey Milo,

First of all, thank you for your quick response.
I'm working on a big company with a lot of bureaucracy, thats the reason i'm not the full Admin of my PC, So i can not try a lot of stuff really quick.

Could you be more specific on which i should enable for this to work?

I mean: Enabling the port 9000? another one ? Inbound? Outbound?
Allowing php-cgi.exe ? or the Debugger.exe ? something else?

I'm asking this because each time i want to try something is so much time i need to lose on my end and any more specific information would be well appreciate it.

Thanks again & Best regards

Re: php-cgi.exe breaking and not able to reach my site anymo

PostPosted: December 19th, 2017, 2:19 pm
by jose.enser
Hey Milo,
I was able to shut down the firewall and uninstall momentarily the Anti Virus and same result.

I was digging on the web and apparently after a Windows 10 upgrade (coming from Windows 10) there are several dlls that are corrupt or outdated or something ... i've tried to reinstall Visual Studio PHP and everything else but i dont know what else i can do, or which dlls to check for this stuff.

Any thoughts ?

Best Regards

Re: php-cgi.exe breaking and not able to reach my site anymo

PostPosted: December 19th, 2017, 3:45 pm
by Miloslav Beno
Hi Jose,

Thanks for trying to turn off security stuff.

I had to google around, because .net just sends wrong data, not much we could do differently there. I've found some people on another software with the same issue, they say this has helped. I don't see any relevance here, but it's worth to try. Just please try to reinstall File and Printing sharing service.

31879731-9d9a3a18-b7de-11e7-97a7-b4cc0b4596e6.png


Please let me know if you've tried or if you are able to try.

Thanks