Question
Audit Server & Workstation
- Olivier
- Auteur du sujet
- Hors Ligne
- Membre elite
-
- Messages : 182
- Remerciements reçus 0
En cherchant un peu, suis tombé sur un script très intéressant pour faire de l'audit de stations \"Server\" et/ou \"Workstation\".
Ce dernier a été mis à disposition chez \"Virtu-Al\" à l'adresse suivante :
teckinfo.blogspot.com/2009/01/powershell...ionserver-audit.html
ou plu précisément ici :
bpbwfg.blu.livefilestore.com/y1p9ZTNEhnA...I/Audit.ps1?download
Après l'avoir téléchargé, me suis empressé de le démarrer mais suis tombé sur une erreur que voici :
You cannot call a method on a null-valued expression.
At F:\Windows\PowerShell\Scripts\Audit.ps1:790 char:46
+ $dtmEventDate = $ObjEvent.ConvertToDateTime <<<< ($objEvent.TimeWritten)
+ CategoryInfo : InvalidOperation: (ConvertToDateTime: String) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
You cannot call a method on a null-valued expression.
At F:\Windows\PowerShell\Scripts\Audit.ps1:823 char:44
+ $StrWMIDate = $ObjEvent.ConvertToDateTime <<<< ($objEvent.TimeWritten)
+ CategoryInfo : InvalidOperation: (ConvertToDateTime: String) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
PS, j'ai modifier à deux endroite la syntaxe pour éviter ça :
ConvertToDateTime:String
Voilà, étant que je débute avec PowerShell, j'essaie de comprendre au mieux et là, je désespère pour la résolution de ce problème ...
Est-ce que quelqu'un pourrait m'expliquer et me diriger quant à la recherche de solutions ?
Merci d'avance à tous ceux qui pourront me guider et m'aider !!!
Olivier
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
Super ce script d'audit, je ne connaissais pas !
Cette erreur se produit parce qu'à mon avis tu essaies d'executer ce script sur une machine qui n'existe pas.
Probablement une faute de frappe dans ton fichier de machines.
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- Olivier
- Auteur du sujet
- Hors Ligne
- Membre elite
-
- Messages : 182
- Remerciements reçus 0
Merci bien pour cette rapide réponse !
En fait, je vois pas comment la machine ne pourrait pas exister, suis assis dessus
En fait, peut-être que le nom de la machine n'est pas conforme ... En fait, dans le script, la variable $targets me revoie le nom de la station \"Travail\".
En toute franchise, il me semble pas que le problème vienne de là. En fait, il spécifie les ligne 790 et 823 qui posent problème. Dans ces lignes, la méthode \"converttodatetime\" n'a pas l'air de plair à PowerShell
Je pense que pour bien comprendre ce problème, il faudrait que quelqu'un puisse télécharger le script et l'exécuter sur un poste et voir si ça lui fait la même chose ...
Mon poste ne fait pas partie d'un domaine et c'est juste mon PC à la maison que j'utilise pour travailler ...
Voici l'un des deux \"paragraphes\" qui me posent problème :
[code:1]ForEach ($objEvent in $colLoggedEvents)
{
$dtmEventDate = $ObjEvent.ConvertToDateTime($objEvent.TimeWritten)
$Report+= \" <tr>\"
$Report+= \" <td width='10%'>$($objEvent.EventCode)</font></td>\"
$Report+= \" <td width='10%'>$($objEvent.SourceName)</font></td>\"
$Report+= \" <td width='15%'>$dtmEventDate</font></td>\"
$Report+= \" <td width='10%'>$($objEvent.LogFile)</font></td>\"
$Report+= \" <td width='55%'>$($objEvent.Message)</font></td>\"
$Report+= \" </tr>\"
}[/code:1]
Merci d'avance à tous ceux qui pourront éclairer ma lanterne
Olivier<br><br>Message édité par: Olivier, à: 3/02/09 20:15
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
Je vais essayer de comprendre ce qui pose problème...
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
Ligne 151, remplace \"Error\" par \"Erreur\"
Ligne 154, remplace \"Warning\" par \"Avertissement\"
Ca fonctionne mais il reste un problème d'encodage à régler car les caractères accentués ne sont pas affichés correctement.
Arnaud
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ?
Connexion ou Créer un compte pour participer à la conversation.
- Olivier
- Auteur du sujet
- Hors Ligne
- Membre elite
-
- Messages : 182
- Remerciements reçus 0
Moi aussi, même configuration que toi. Soit, Windows Vista SP2 avec PowerShell V2 CTP3.
Moi que je croyait que c'était juste un problème avec cette commande ConvertToDateTime ..
Merci bien pour tes infos qui me seront d'un très grand secour !!<br><br>Message édité par: Olivier, à: 3/02/09 21:12
Connexion ou Créer un compte pour participer à la conversation.
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Audit Server & Workstation