Using W32api functions in PHP
| From: | Andrew Thomas | Date: | Wed, 19 Feb 2003 07:30:26 +0000 |
| Subject: | Using W32api functions in PHP | ||
| Groups: | php.windows | ||
| Request: | Send a blank email to php-windows+get-18594@lists.php.net to get a copy of this message | ||
Hi,
I am trying to use some W32api functions in PHP (to do some Windows NT Domain login stuff).
Problems I am having:
I have looked at:
http://www.php.net/manual/en/ref.w32api.php
Which gives a simple example of using dl() to load the appropriate dll extension, then registering
the functions I want to use and
running them.
The first problem I run into is:
Warning: dl() [function.dl]: Not supported in multithreaded Web servers - use extension statements
in your php.ini in c:\program
files\apache group\apache\htdocs\pm\login.php3 on line 39
So rather than use the dl() function, I used a line in my PHP.ini file:
extension="php_w32api.dll"
to load the extension as it says in the warning.
However, this does not seem to load this extension at all, because when I call
w32api_register_function, I get:
Fatal error: Call to undefined function: w32api_register_function() in c:\program files\apache
group\apache\htdocs\pm\login.php3 on
line 44
And when I run:
extension_loaded('php_w32api.dll')
It returns false and running php.exe -m on the command line does not list php_w32api.dll loaded.
However, if I change the line
extension="php_w32api.dll"
to
extension="php_w32api1.dll"
i.e. so that the dll does not exist - an error is listed in the log saying it cannot find the dll,
so I figured it must be loading
it cause it does not list an error on the line when the name is correct.
Sorry for the Essay bordering on War and Peace. Hope someone can help me out?
Cheers,
Andrew