Bonjour,
Je recherche une aide pour écrire un script VBS qui respectera les exigences ci-dessous :
1 + Fichier au format XML, mais pas encodé en UTF-8
2 + Script VBS qui peut lire et afficher le contenu à l'écran, en encodant le tout au format UTF-8, avec les commandes Microsoft XMLDOM. (Microsoft.XMLDOM).
J'ajoute 2 fichiers scripts qui fonctionne déjà mais qui ne font rien en Microsoft XMLDOM et en UTF-8.

D'ailleurs, je sais pas comment vérifier cela ...

Fichier OCS_proc_lan.vbs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
'Pour obtenir la liste des processus réseaux en écoute sous Windows
'Utilisation de la commande NETSTAT 
' netstat -ano
'
'Option Explicit
Dim TXT_FILE,COMMAND_ECHO1,COMMAND_NETSTAT_A,COMMAND_ECHO2,COMMAND_ANALYSE,XML_FILE,XML_FILE_G,oShell0,oShell1
Dim oProtocol,oLocalAddress,oForeignAddress,oState,oPID
Dim ComputersElement,ComputerElement
'
Set TXT_FILE = CreateObject("WScript.Shell")
'
TXT_FILE = "cmd /C c:\nmsa\ocsagent\bin\plugins\RESULTNETSTAT.txt"
COMMAND_NETSTAT_A=("cmd /C netstat -ano > c:\nmsa\ocsagent\bin\plugins\RESULTNETSTAT.txt")
COMMAND_ANALYSE=("cmd /C c:\nmsa\ocsagent\bin\plugins\NETSTAT_ANALYSIS.cmd")
XML_FILE=("C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTAT.xml")
XML_FILE_G=("C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTATG.xml")
 
'
'Création du fichier RESULTNETSTAT.TXT
    'SET oShell0 = WScript.CreateObject("WSCript.shell")
    'oShell0.run TXT_FILE,0,true
'Liste Processus en écoute NETSTAT -ano
	'wscript.echo "NETSTAT -ano dans RESULTNETSTAT.txt : DEBUT"
    SET oShell1 = WScript.CreateObject("WSCript.shell")
    oShell1.run COMMAND_NETSTAT_A,0, true
	'wscript.echo "NETSTAT -ano dans RESULTNETSTAT.txt : FIN"
 
DIM filesys,oShell
SET filesys = CreateObject("Scripting.FileSystemObject")
SET oShell = WScript.CreateObject("WSCript.shell")
'Analyse du fichier résultat et transformation en fichier XML
'wscript.echo "Analyse du fichier résultat et transformation en fichier XML"
    oShell.run COMMAND_ANALYSE,0, true
	'
	'
	'wscript.echo "Affichage du Résultat dans le fichier RESULTNETSTATG.xml"
	DIM filesys4, readfile4, contents4,Result4 
	SET filesys4 = CreateObject("Scripting.FileSystemObject") 
	SET readfile4 = filesys4.OpenTextFile("C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTATG.xml",1) 
	SET WshShell = CreateObject("WScript.Shell")
		DO UNTIL readfile4.AtEndOfStream
			contents4 = readfile4.ReadLine 
			WScript.Echo contents4
		LOOP 
	readfile4.close
Fichier netstat_analysis.cmd
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
@ECHO ON
::
del /F C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTAT.xml
::
del /F C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTATG.xml
::
cmd /c echo (" <?xml version="1.0" encoding="UTF-8"?> ") > c:\nmsa\ocsagent\bin\plugins\RESULTCODAGE.txt
cmd /c echo " <PROCS> " > c:\nmsa\ocsagent\bin\plugins\RESULTECHO1.txt
::
cmd /c echo " </PROCS>  > c:\nmsa\ocsagent\bin\plugins\RESULTECHO2.txt
::
::
ECHO OFF
::
FOR /F "eol= skip=3 tokens=1,2,3,4,5 delims= " %%i in (C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTAT.txt) do (
	IF %%l==LISTENING (
		@echo %%i %%j %%k %%l %%m >> C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTAT2.txt
	) ELSE ( 
		IF %%l==ESTABLISHED (
			@echo %%i %%j %%k %%l %%m >> C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTAT2.txt
		) 
	@echo %%i %%j %%k state_vide %%l %%m >> C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTAT2.txt
)
)
::
FOR /F "eol= skip=3 tokens=1,2,3,4,5 delims= " %%i in (C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTAT2.txt) do (@echo " <PROC> <PROTOCOL> %%i </PROTOCOL> <LOCAL_ADDRESS> %%j </LOCAL_ADDRESS> <Foreign_Address> %%k </Foreign_Addresss> <STATE> %%l </STATE> <PID> %%m </PID> </PROC> " >> C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTAT.xml)
::
FOR /F "eol= tokens=1,2,3,4,5 delims= " %%m in (C:\nmsa\ocsagent\bin\Plugins\RESULTCODAGE.txt) do (@echo %%n %%o %%p  > C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTATG.xml )
::
FOR /F "eol= tokens=1,2,3 delims= " %%t in (C:\nmsa\ocsagent\bin\Plugins\RESULTECHO1.txt) do (@echo %%u >> C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTATG.xml )
::
FOR /F "eol= skip=1 tokens=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18 delims= " %%A in (C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTAT.XML) do (@echo %%B %%C %%D %%E %%F %%G %%H %%I %%J %%K %%L %%M %%N %%O %%P %%Q %%R >> C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTATG.XML )
::
FOR /F "eol= tokens=1,2,3 delims= " %%w in (C:\nmsa\ocsagent\bin\Plugins\RESULTECHO2.txt) do (@echo %%x >> C:\nmsa\ocsagent\bin\Plugins\RESULTNETSTATG.xml )
Cordialement