0

My PHP is in the path c:\php on a Windows 2012 server I added c:\php to the PATH variable.

I added php_pdo_sqlsrv_56_ts.dll in c:\php\ext directory

I added following lines in c:\php\php.ini file:

extension_dir = "c:\php\ext"
extension=php_pdo_sqlsrv_56_ts.dll

But the following command gives me warning that it cannot find the module whereas it exists there:

php --ini
PHP Warning:  PHP Startup: Unable to load dynamic library 'c:\php\ext\php_sqlsrv_56_ts.dll' - The specified module could not be found. in Unknown on line 0

PHP Warning:  PHP Startup: Unable to load dynamic library 'c:\php\ext\php_pdo_sqlsrv_56_ts.dll' - The specified module could not be found. in Unknown on line 0

Configuration File (php.ini) Path: C:\Windows

Loaded Configuration File:         C:\php\php.ini
2
  • What version of PHP are you using? Commented Oct 11, 2017 at 16:23
  • php 5.6 @apokryfos Commented Oct 11, 2017 at 16:31

1 Answer 1

2

This might be a Windows problem whereby a DLL is reported as "not existing" if itself requires another DLL that is not found. So for example:

php_someextusingssl.dll    - the file exists

But php_someextusingssl.dll requires ssleay32.dll, and that is not found at run time. So the error you get is "Cannot load php_someextusingssl.dll: file not found". The file not being found is not php_someextusingssl.dll, it is ssleay32.dll.

How do you solve this problem: get hold of some utility such as DEPENDS.EXE, and open the misbehaving extension. It should display the extension and all the DLLs on which it depends. IF I am right, then one or more will be marked red as "missing". Those are the DLLs you need to make available.

UPDATE 1: chances are that the missing files are among those listed on Microsoft SQL Server Driver page.

UPDATE 2: I've downloaded a copy of the Microsoft driver. Yours depends on ODBC32.DLL, MSVCP110.DLL and MSVCR110.DLL. The latter two are part of the Microsoft Visual C++ 2010 SP1 Redistributable for x86, which you can find here. The first is part of the ODBC32 driver listed as per Update 1.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.