Question

Another issue that is driving me absolutely nuts. This seems to be a common error that I have not been able to fix with "traditional" methods (answers provided by others for the same issue)..

Windows 2008 R2 - x64

Apache 2.2.25

PHP 5.3.27

I have these lines in my php.ini:

extension_dir = "C:\Program Files (x86)\PHP\ext\"
[COM_DOT_NET]
extension=php_com_dotnet.dll

php_com_dotnet.dll exists in that directory, I even took it one step further and tried assigning read permission to Everyone for the PHP folder although it should have access just fine as it does load other libraries in there.

Below is the configure command from phpinfo() which is really the only thing mentioning COM.

cscript /nologo configure.js "--enable-snapshot-build" "--disable-isapi" "--enable-debug-pack" "--without-mssql" "--without-pdo-mssql" "--without-pi3web" "--with-pdo-oci=C:\php-sdk\oracle\instantclient10\sdk,shared" "--with-oci8=C:\php-sdk\oracle\instantclient10\sdk,shared" "--with-oci8-11g=C:\php-sdk\oracle\instantclient11\sdk,shared" "--enable-object-out-dir=../obj/" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--disable-static-analyze"

Any suggestions are greatly appreciated! Thanks

EDIT

get_cfg_var('cfg_file_path') = C:\Program Files (x86)\PHP\php.ini

Which is the php.ini I have edited.

Also, here is the error log, nothing pointing to an issue....

[Mon Mar 31 14:51:09 2014] [notice] Apache/2.2.25 (Win32) PHP/5.3.27 mod_aspdotnet/2.2 configured -- resuming normal operations

[Mon Mar 31 14:51:09 2014] [notice] Server built: Jul 10 2013 01:52:12

[Mon Mar 31 14:51:09 2014] [notice] Parent: Created child process 3708

[Mon Mar 31 14:51:09 2014] [notice] mod_aspdotnet: CorBindToRuntimeEx has loaded version v2.0.50727 of the .NET CLR engine.

[Mon Mar 31 14:51:40 2014] [notice] Child 3708: Child process is running

[Mon Mar 31 14:51:40 2014] [notice] Child 3708: Acquired the start mutex.

[Mon Mar 31 14:51:40 2014] [notice] Child 3708: Starting 250 worker threads.

[Mon Mar 31 14:51:40 2014] [notice] Child 3708: Starting thread to listen on port 8086.

[Mon Mar 31 14:51:40 2014] [notice] Child 3708: Starting thread to listen on port 8084.
Was it helpful?

Solution

Not an answer - just trying to get more data
What's the output of

<?php
$config = file(get_cfg_var('cfg_file_path'));
foreach( $config as $n=>$l) {
    if ( false!==strpos($l, 'dotnet') ) {
        printf("%03d %s<br />\r\n", $n, $l);
    }
}
echo 'com_dotnet: ', extension_loaded('com_dotnet') ? 'yes':'no', "<br />\r\n";
echo 'class: ', class_exists('COM')  ? 'yes':'no', "<br />\r\n";

?

UPDATE: (answer from comments)

The answer seemed to be a corrupt or somehow "bad" php_com_dotnet.dll, which the windows installer did not replace. I simply grabbed the matching version binary zip, overwrote the dll by hand - VOILA! Marking your answer as the answer since it was the closest and got me on the right track.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top