title: PHP 7 on IIS: Call_user_function could not be located
body: <p>I am trying to use the Microsoft SQL Server drivers with PHP 7.1 Not Thread Safe x64 on Windows 2012 R2 64-bit server. </p>
  
  <p>No matter what I do I am getting an error when I run php from a admin command prompt </p>
  
  <blockquote>
    <p>Warning: PHP Startup: Unable to load dynamic library
    'ext\php_pdo_sqlsrv_7_nts.dll' - The specified procedure could not be
    found.</p>
  </blockquote>
  
  <p>Additionally it display a windows pop up that states </p>
  
  <blockquote>
    <p>The procedure entry point call_user_function could not be located in
    the dynamic link library C:\PHP7\ext\php_pdo_dqlsrv7_nts_x64.dll</p>
  </blockquote>
  
  <p>I have verified that the php.ini is pointing to a file that exists, because if I rename the .dll file, the error messages changes to "specified module could not be found", instead of specified procedure.</p>
  
  <p>I have installed Microsoft Visual C++ runtime 15 x64 as required by PHP 7. </p>
  
  <p>I have installed Microsoft ODBC driver 13 as required by the Microsoft SQL Server driver.</p>
  
  <p>I have rebooted the server twice.</p>
  
  <p>There is nothing else I can think to even try. The Microsoft WinCache.dll is loading and working fine in PHP, as verified by phpinfo. </p>