El problema al instalar PHP en el IIS7 es que hay que escoger entre hacerlo como modulo ISAPI o que corra sobre CGI (para desarrollo no existe verdadera diferencia, pero parece ser que para producción se recomienda el modulo ISAPI por desempeño). Si escoges ISAPI no carga las librerias externas que se necesitan para conectar con Bases de Datos (mi problema fue con php_mysql.dll pero probablemante pase para php_mysqli.dll y para postgre, oracel, mssql, etc) cuando se ejecuta desde un script en el IIS (si se ejecuta desde la línea de comandos, todo va bien, pero para que diablos quiere uno algo así? Si se está instalando PHP y MySQL lo MÁS probable es que sea para Web, así que es obvio que vamos a correr los php’s desde wwwroot (o de lo contrario es que eres un super nerd desagradable que gusta de correr los php’s en un ambiente de línea de comando de hueva)), y por el otro lado parece que si se escoge usar CGI hay un problema con SESSION, pero aquí eso no importa porque escogimos la primera opción:
Cuando das de alta PHP como modulo ISAPI hace falta dar de alta también un Filtro ISAPI en el IIS que apunte al mismo .dll de PHP (probablemente php5isapi.dll) y listo! Nada de cambiar versiones de libmysql.dll ni de revisar las configuraciones por horas!
Casi todo un día perdido buscando esta pinche solución, y el problema es cuando buscas por esto ya aparecen sólo guías para instalar PHP, MYSQL y IIS, lo cual es de hueva, ya dejen de copiar contenido para jalar tráfico, aquí está una que encontré después de solucionar el problema que lo explica también:
http://www.canerten.com/php-installation-with-extensions-mysql-for-iis7-in-windows-vista/
No para lo que acostumbro, pero si llegaste aquí por este tema específico, me lo agradecerás.
Saludos,
Gorka
FE DE ERRATAS - (No por error de ortografía, sino por odio y falta de tolerancia) Maten al que hizo IIS7, cambien toda su configuración: saquen todo lo de los filtros ISAPI de PHP, y pongan el handler (que era php5isapi.dll) al php-cgi.exe y maten a cualquiera que vean que trabaje para Microsoft.
Esto porque una vez que logran usar la extensión mysql y creen que todo es cuesta abajo se van a dar cuenta que otras librerías derepente tampoco cargan, a mi me pasó con curl.
http://bugs.php.net/bug.php?id=39163