DLL manquante lors de l'exécution du script
Que j'essaie de faire un script PHP pour exécuter toutes les 30 minutes sur mon serveur (Win XP SP3, xampp 1.7.3).
Pour ce faire, je suis en exécutant le script suivant (de mise à jour.cmd) à l'aide de la MS planificateur de tâches
SET PATH="C:\xampp\PHP"
start php.exe \htdocs\update_dashboard.php
Je suis en utilisant le oci8 extension php sur mon serveur, mais quand je lance le script, il me donne des erreurs php.exe ne pouvez pas trouver les dll nécessaires pour l'extension oci8. J'obtiens les erreurs suivantes:
This application has failed to start because OCI.dll was not found. Re-installing the application may fix this problem.
PHP Startup: Unable to load dynamic library 'C:\xampp\php\ext\php_oci8.dll' - The specified module count not be found.
Je sais que le fichier est là et je ne suis pas de ces erreurs lorsque le php est exécuté par apache, je suis l'exécution de la mauvaise copie de php.exe? Des idées pourquoi pas? Mon CHEMIN d'accès doivent être définies différemment? Mon Windows CHEMIN d'accès inclut:
C:\instantclient_11_2;C:\oracle\ora92\bin;C:\Program Files\Oracle\jre\1.3.1\bin;C:\Program Files\Oracle\jre\1.1.8\bin;C:\Program Files\ActiveState Komodo Edit 5\;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Altiris\Software Virtualization Agent\
Merci pour votre aide.
OriginalL'auteur The_Denominater | 2010-07-30
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé ce problème lorsque je passe à partir de php 5.3 non thread-safe pour php 5.3 thread-safe sur windows 7, et j'ai coché tout installer
J'ai résolu le problème en commentaire extension=php_oci8.dll, extension=php_oci8_11g.dll, extension=php_pdo_oci.dll dans le php.ini
J'ai également eu des problèmes avec le sybase extension de vouloir un libcs.dll, que j'ai résolu par la suppression de "extension=php_sybase_ct.dll"
par exemple
Deviner si vous avez besoin de sybase et oracle connexions de base de données standard de clients installer oci.dll et libcs.dll dans les endroits appropriés, pour tous les autres qui n'a pas besoin d'utiliser ces dbs, il suffit de désactiver les extensions php, et il doit s'exécuter correctement 🙂
Ant
OriginalL'auteur aqm
J'ai résolu le problème en changeant le script. C'est maintenant:
C:\xampp\PHP\php.exe -f C:\xampp\htdocs\php_scripts\utils\update_dashboard.php
Merci pour l'aide.
OriginalL'auteur The_Denominater
Vérifier le php.ini fichier php par l'exécution d'un phpinfo() de la ligne de commande, et de regarder pour voir ce que les extensions sont activées dans le fichier. Il est tout à fait commopn pour php pour être configuré pour utiliser un autre php.ini fichier lors de l'exécution de la ligne de commande; et xampp utilise certainement un autre php.fichier ini par défaut. Vous pouvez aussi lui dire ce que php.fichier ini pour une utilisation avec le commutateur-c
OriginalL'auteur Mark Baker
J'ai couru le php -m de la commande. S'est avéré que mon système OCI.dll allé, soit corrompus ou manquants. Je l'ai récupéré en exécutant la commande sfc /scannow dans la boîte de dialogue exécuter, redémarré, le système réinstallé, et il était en haut et en cours d'exécution avec mes extensions maintenant, tout de travail.
OriginalL'auteur JamLizzy101
Suis-je correct que les deux
C:\instantclient_11_2
etC:\oracle\ora92\bin
contenir unOCI.DLL
? En raison de l'ordre de la trajectoire que vous pourriez charger la dll tort. Quand j'ai lu Qui OCI8 DLL à utiliser en PHP 5.3 vous avez besoin d'une autre ligne dans le php.ini en fonction de la version du client oracle. J'ai actuellement pas accès à un pc avec oracle, donc je ne peux pas le vérifier.OriginalL'auteur wimh