Link to home
Start Free TrialLog in
Avatar of enasni_mark
enasni_mark

asked on

extensions

Hi

I have my webserver running on Windows 2000 Server using IIS.
In my php.ini i have:

extension_dir = "C:\PHP\"
...
extension=php_gd.dll

and i have the php_gd.dll in C:\PHP\
Now whenever i try to access any page on my server, a message box comes up on the server saying:
Unknown(): Unable to load dynamic link library 'C:\PHP\php_gd.dll' - The specified procedure could not be found.

I have tried putting the extension_dir as different directories and moving the .dll to those directories but it always comes up with that error just with the C:\PHP\ changed.
How can i make it recognise the file exists?

By the way, this is the only extension i have ever used.
Avatar of madwax
madwax

have you reloaded the web server between the times?
Hi

php_gd.dll calls a lib(include()) gds32.dll...

You need to set your (lib folder) -> via your OS path.....

follow this.....

Go To >> My Computer >> right click >> scroll down to "Properties"

System Properties opens....

left click >> Advanced (tab) >> go to bottom >> left click >> Environment Variables

Environment Variables opens...

In the "LOWER" window >> left click to highlite "Path" >> left click the "Edit" button below the lower window!

Edit System Variable opens....

In the "Variable Value" check to see what the last single character is....

if it is this character ";" <- without the quotes

Then add the path to your PHP "dlls folder" right after the last character!

Example.....

Current "Path" Variable Value....

E:\www\perl\bin\;%SystemRoot%\system32;e:\sql\lib;e:\spellcheck\bin; <- end with ";"

Your PHP path to your PHP "dlls" folder

C:\php\dlls

Your new path value would be.....

E:\www\perl\bin\;%SystemRoot%\system32;e:\sql\lib;e:\spellcheck\bin;C:\php\dlls

If the last character is not ";" <- without the quotes

Then add it to the end of your path before adding your your PHP "dlls folder"

Example....

Current "Path" Variable Value....

E:\www\perl\bin\;%SystemRoot%\system32;e:\sql\lib;e:\spellcheck\bin <- does not end with ";"

Your PHP path to your PHP "dlls" folder

C:\php\dlls

Your new path value would be.....

E:\www\perl\bin\;%SystemRoot%\system32;e:\sql\lib;e:\spellcheck\bin;C:\php\dlls


click "OK" (2) times to save changes


Go to "Start" >> "Run", type....

net stop iisadmin /y

Click "OK"

wait till it is done, it will self close....

Then type....

net start w3svc

Click "OK" this will restart IIS services


// if you have FTP running, run this too!

net start msftpsvc

// if you have SMTP running, run this too!

net start smtpsvc



F!



Avatar of enasni_mark

ASKER

what should the extension_dir be set to?
That's up to you really - typically it would live under c:\P.H.P\ like for instance c:\P.H.P\extensions\

As long as the path in your php.ini matches, it'll work wherever you put it.

If you're referring to the lib folder, that can go wherever you want too as long as you set the environment variable as described above.  You can skip that though, if you just put gds32.dll in one of the paths that's already mentioned there.  I usually put extension libraries in my WINDOWS/system32 folder (and forget about them ;) ).  The bit above that says %SYSTEMROOT% is the WINDOWS (or sometimes WINNT) folder.
extension_dir = ./extensions/
On Windows you need to use backslashes, c:\php\extensions\
i don't have a clue what the problem was but i solved it by uninstalling php and then just using the php zip file and extracting it. then put the extension_dir as "./extensions/"
works fine now:)
i don't really know what to do with the points, what should i do?
ASKER CERTIFIED SOLUTION
Avatar of Lunchy
Lunchy
Flag of Canada image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial