|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2008-10-03 13:07 UTC] 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
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 09:00:01 2025 UTC |
.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