Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pb IPconfig

9 réponses
Avatar
Michel Claveau
Bonjour !

J'ai un petit problème de sortie (affichage) avec IPConfig.

Alors :
- j'ouvre une invite de commande
- je tape IPconfig [Entrer] ; ça marche
- ensuite : IPconfig >ip.txt
- puis : type ip.txt ; et, là, des caractères parasites
apparaissent ! (notamment des "á" incompréhensibles)
- si je fais CHCP 1252 + type ip.txt , l'affichage est correct
(mais les caractères bizarres sont toujours là).

Le problème vient de ces caractères parasites, qui sont bien envoyés
sur la sortie standard (STDIO), et est donc interprétée, par certains
logiciels, comme une bascule, à la volée, en Unicode (UTF-16) (ce qui
est une démarche fréquente de Windows), mais provoque des erreurs de
traitement du texte).

Savez-vous d'où vient ce problème ?
Auriez-vous une idée de solution ?

Précision : XP SP2

--
@-salutations

Michel Claveau

9 réponses

Avatar
Jacques Barathon [MS]
"Michel Claveau" <Enleverles wrote in message
news:
Bonjour !

J'ai un petit problème de sortie (affichage) avec IPConfig.

Alors :
- j'ouvre une invite de commande
- je tape IPconfig [Entrer] ; ça marche
- ensuite : IPconfig >ip.txt
- puis : type ip.txt ; et, là, des caractères parasites apparaissent !
(notamment des "á" incompréhensibles)
- si je fais CHCP 1252 + type ip.txt , l'affichage est correct (mais
les caractères bizarres sont toujours là).

Le problème vient de ces caractères parasites, qui sont bien envoyés sur
la sortie standard (STDIO), et est donc interprétée, par certains
logiciels, comme une bascule, à la volée, en Unicode (UTF-16) (ce qui est
une démarche fréquente de Windows), mais provoque des erreurs de
traitement du texte).


Curieux, lorsque j'essaie sur mon poste XP SP2, le passage en codepage 1252
affiche tout le texte correctement, exactement comme l'affichage d'ipconfig
en interactif.

Mon poste est en français MUI, ceci explique peut-être cela ? Si quelqu'un
sur le groupe peut faire l'essai sur un XP nativement français ?...

Jacques

Avatar
MC
Re !

J'ai essayé sur d'autres machines. Pour la visu en CP1252, ça dépend
aussi de la propriété "Police" de la fenêtre.

Il reste quand même le problème avec IPconfig >ip.txt
+ type ip.txt en CHCP 850 (par défaut pour l'invite de commande) ; et
cela, même si le IPconfig >ip.txt a été fait sous CP1252

--
@-salutations

Michel Claveau
Avatar
Méta-MCI
Re !

Je suis allé voir avec un éditeur hexa : dans le fichier ip.txt, il y a bien
des caractères 160 (0x0a0) au lieu de certains espaces.
Ensuite, selon le code-page, ou le logiciel, on les voit ou non. Mais ils
sont bien là.

C'est un bug de Windows ! Maintenant, il faudrait savoir quelles mesures
vont prendre Ségolène ou Nicolas, lorsqu'elle, ou il, sera élu(e), pour
remédier à cette situation catastrophique...

@+

Michel Claveau
Avatar
Gilles LAURENT
"Méta-MCI" a écrit dans le message de
news:%
| Re !

Bonjour,

| Je suis allé voir avec un éditeur hexa : dans le fichier ip.txt, il y
| a bien des caractères 160 (0x0a0) au lieu de certains espaces.
| Ensuite, selon le code-page, ou le logiciel, on les voit ou non.
| Mais ils sont bien là.

En effet, ce comportement est identique sous XP SP1/SP2 et W2K3 SP1. Les
caractères parasites (0xa0) dans la sortie de commande redirigée
"forcent" une conversion ansi du fichier (fichier ou pipe d'ailleur). La
suppression à la volée des caractères parasites permet de conserver le
codage oem. Ci dessous un petit script pour mettre cela en évidence :

+++ Exemples
>cscript //nologo myipconfig.vbs
>cscript //nologo myipconfig.vbs > ip.txt

--- Coupez ici : myipconfig.vbs ---

Option Explicit

' déclaration des variables
Dim oSh, oExec
Dim strLines

' initialisation des objets
Set oSh = CreateObject ("WScript.Shell")
Set oExec = oSh.Exec ("ipconfig.exe")

' remplacement des caractères parasites
strLines=replace (oExec.StdOut.ReadAll,Chr(160),Chr(32))

' écriture de la sortie dans la console
WScript.Echo strLines

--- Coupez ici : myipconfig.vbs ---

| C'est un bug de Windows !

C'est plutôt un bug dans la commande ipconfig

--
Gilles LAURENT
http://glsft.free.fr
Avatar
Méta-MCI
Salut, Gilles !


Pour mettre en évidence le problème dans les PIPEs (filtres), c'est simple :

à partir de la console normale (CHCP 850, par défaut) :
1) on tape : ipconfig [Entrer] c'est bon
2) on tape : ipconfig | more [Entrer] c'est pas bon

Sans commentaires...


Enfin, si, un commentaire (c'est plus fort que moi). En pratique, c'est
d'abord avec les PIPEs que j'ai eu le problème. Mais, j'ai mis un certain
temps, avant de trouver l'origine du truc.
Mais, IPconfig n'est pas la seule à provoquer ce genre de soucis. Cela m'est
arrivé sur d'autres commandes ; malheureusement, je n'ai pas noté...
Reste à savoir si le problème existe encore sous Vista français (Jacques ?)
; au passage, il est dommage que la dernière bêta de Vista ne soit pas
sortie en français, ce qui a empêché de régler les problèmes des
clients/utilisateurs, avant la sortie réelle du truc.


@+

MCI
Avatar
Michel Claveau
Bonjour !

Je viens d'essayer sous Power-Shell :
ipconfig | more [Entrer]
Il y a aussi les caractères "parasites".

--
@-salutations

Michel Claveau
Avatar
Jacques Barathon [MS]
"Méta-MCI" wrote in message
news:
<...>
Reste à savoir si le problème existe encore sous Vista français (Jacques
?)


Mon Vista est en English, donc pas de test pour moi. Je pourrais installer
le pack Fr mais bon, on va dire que j'ai la flemme... :-) Je demanderai à un
collègue.

; au passage, il est dommage que la dernière bêta de Vista ne soit pas
sortie en français, ce qui a empêché de régler les problèmes des
clients/utilisateurs, avant la sortie réelle du truc.


La dernière bêta est bien sortie en français. Je ne connais pas les règles
exactes de distribution mais j'ai vu sur les groupes de discussion dédiés à
Vista que de nombreux utilisateurs l'ont testée.

Jacques

Avatar
Jacques Barathon [MS]
"Michel Claveau" <Enleverles wrote in message
news:
Bonjour !

Je viens d'essayer sous Power-Shell :
ipconfig | more [Entrer]
Il y a aussi les caractères "parasites".


Sous PowerShell tu peux même varier les plaisirs. Sachant que "more" est une
fonction (tape $function:more pour voir sa définition), tu as la joie
d'avoir des caractères parasites différents de ceux retranscrits par la
commande more.com utilisée par cmd.exe. Pour voir la différence, tape:

ipconfig | more.com

Jacques

Avatar
~Jean-Marc~ [MVP]
Salutations Méta-MCI, tu nous disais :

Reste à savoir si le problème existe encore sous Vista français


Je n'ai pas été fichu de trouver un seul "a0" " " dans le ip.txt que je viens
générer sous Vista Ultimate RTM Fr.

@+

--
~Jean-Marc~ MVP Shell/User Fr
( Vista x86 Ultimate )
- http://msmvps.com/blogs/docxp/ -
- http://docxp.mvps.org -