Bonjour à tous, je pense poster ma question dans la bonne partie mais si je me suis trompé je présente toutes mes excuses.
Je développe actuellement un application dont une fonctionnalité est de lancer un test Microsoft Baseline Security Analyser sur une machine voulue (en réseau).
Je donne donc le chemin de l'exécutable MBSA auquel je donne les paramètres que je désire. Quand je l'exécute en ligne de commande, tout marche parfaitement. Mais quand je l'exécute en php, j'ai un problème :
le script s'execute bien mais le résultat final est différent. Normalement à la fin un fichier est créé dans un dossier prédéfini. En ligne de commande le fichier se crée, mais en php rien du tout.
voici mon code php :
Code :
system("mbsa.bat" );
j'ai aussi testé avec un [B]exec [/B]mais c'est pareil.
L'affichage du traitement mbsa s'inscrit normalement et il n'y a aucun affichage d'erreur, simplement le fichier n'est pas créé.
Si quelqu'un a une idée je suis preneur, c'est pour mon stage qui se termine bientôt. Merci
Les droits sur les dossiers sont parfaitement configurés, sinon j'ai aussi testé sur une autre machine et je rencontre le même problème.
Voici le retour system :
[#0038c6][...]Ici je passe les détails du rapport MBSA[...][/#0038c6]
D:\xampp\xampp\htdocs\gipi\mbsa>move "C:\Documents and Settings\user\SecurityScans"\172.31.30.103.mbsa "D:\xampp\xampp\htdocs\gipi\mbsa"\172.31.30.103.xml
Le move final ne fonctionne pas puisque le fichier n'est pas créé dans le répertoire SecurityScans à la fin du traitement MBSA.
Une idée ?
j'y ai pensé également, mais ça ne donne rien, j'ai même essayé avec plein de cd à la suite histoire d'être sûr d'être dans le bon répertoire mais ça n'a rien arrangé.
La commande start n'apporte aucun changement Merci quand même de t'intéresser à mon problème...
Je lis "C:\Documents and Settings\user\SecurityScans" dans le rapport.
C'est le dossier de l'utilisateur "user". Mais le script que tu lances, il est exécuté par le serveur PHP, qui s'exécute sans doute sous un login différent. Il faut sans doute aller chercher ton fichier dans le dossier "SecurityScans" de l'utilisateur "PHP" (moi, je me comprends )
Dans MBSA.BAT, essaie ça :
Code :
@ECHO OFF
ECHO Test pour MBSA
ECHO Utilisateur: %USERNAME%
CD "C:\Program Files\Microsoft Baseline Security Analyzer 2"
bonne idée zeb , je suis en train de tester.
le mot 'user' je l'ai mis dans l'exemple de code sur le forum pour ne pas mettre mon vrai nom, mais le principe reste le même.
je vous tiens au courant