ID: 46224 Comment by: p dot stankowski at transcomp dot pl Reported By: mark at koalit dot dk Status: Open Bug Type: COM related Operating System: Vista Business SP1 (da) PHP Version: 5.2.6 New Comment:
.Net framework 3.5 installed. PHP version 2.3.0. I have created class library in C# called TestLibrary.dll. It has only one class: namespace TestLibrary { public class Test { public string GetString() { return "Test passed"; } } } Then signed it and added it to GAC. In C:\Windows\assembly I have found all values needed: Version: 1.0.0.0 Culture: Neutral Public Key Token: c42df41937303b82 Script: <?php $test = new DOTNET("TestLibrary, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c42df41937303b82'", "TestLibrary.Test"); print($test->GetString()); ?> Expected result: Test passed Actual result: PHP Fatal error: Uncaught exception 'com_exception' with message 'Failed to instantiate .Net object [CreateInstance] [0x80131047] ' in C:\home\Projects\hi_1289_IT-ZEB-SERVER\trunk\src\PHPWithNETTest\index.php:10 Stack trace: #0 C:\home\Projects\hi_1289_IT-ZEB-SERVER\trunk\src\PHPWithNETTest\index.php(10): dotnet->dotnet('TestLibrary, Ve...', 'TestLibrary.Tes...') #1 {main} thrown in C:\home\Projects\hi_1289_IT-ZEB-SERVER\trunk\src\PHPWithNETTest\index.php on line 10 Previous Comments: ------------------------------------------------------------------------ [2008-10-24 10:39:56] bj...@php.net reclassified. ------------------------------------------------------------------------ [2008-10-03 13:08:31] mark at koalit dot dk Forgot to include PHP version (5.2.6) ------------------------------------------------------------------------ [2008-10-03 13:07:10] mark at koalit dot dk Description: ------------ .Net framework version 3.5 (latest) is installed. Installed a specific .Net component, but PHP fails to instantiate the object. The script is runnning from command line. The standard example: $stack = new DOTNET("mscorlib", "System.Collections.Stack"); $stack->Push(".Net"); $stack->Push("Hello "); echo $stack->Pop() . $stack->Pop(); Works fine - returns "Hello .Net" Seems like lot's of users have problems using .Net objects from PHP - can you confirm this as a bug or is a local problem ? Reproduce code: --------------- $pdf = new DOTNET("Assembly=ABCpdf, Version=6.1.1.5, Culture=neutral, PublicKeyToken=a7a0b3f5184f2169", "Websupergoo.ABCpdf6.Doc"); (needs to install ABCpdf 6.1 .Net from www.websupergoo.com) Expected result: ---------------- nothing Actual result: -------------- PHP Fatal error : Uncaught exception 'com_exception' with message 'Failed to instantiate .Net object [CreateInstance] [0x80131047]' in D:\dotnet\dotnet.php Stack trace: #0 (snip) dotnet->dotnet('Assembly=ABCpdf...', 'Websupergoo.ABCpdf6.Doc') #1 {main} thrown in D:\dotnet\dotnet.php ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=46224&edit=1