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

Conversion ANSI/OEM

2 réponses
Avatar
Yodaz
Bonjour,
je cherche une fonction qui convertit une chaîne VB (ANSI) en chaîne OEM
afin de créer un fichier .bat avec des caractères accentués valides.
Est ce que quelqu'un a une idée ?

Merci d'avance.

2 réponses

Avatar
Picalausa François
"Yodaz" a écrit dans le message de news:
44abaa66$0$10275$
je cherche une fonction qui convertit une chaîne VB (ANSI) en chaîne OEM
afin de créer un fichier .bat avec des caractères accentués valides.
Est ce que quelqu'un a une idée ?



Hello,

Tu peux employer les API CharToOem et OemToChar destinées à cet usage:

Private Declare Function CharToOem _
Lib "user32" _
Alias "CharToOemA" _
( _
ByVal lpszSrc As String, _
ByVal lpszDst As String _
) _
As Long
Private Declare Function OemToChar _
Lib "user32" _
Alias "OemToCharA" _
( _
ByVal lpszSrc As String, _
ByVal lpszDst As String _
) _
As Long

Private Sub cmdANSITOOEM_Click()
Dim strSrc As String
strSrc = txtANSI.Text

If CharToOem(strSrc, strSrc) Then
txtOEM.Text = strSrc
End If
End Sub

Private Sub cmdOEMTOANSI_Click()
Dim strSrc As String
strSrc = txtOEM.Text

If OemToChar(strSrc, strSrc) Then
txtANSI.Text = strSrc
End If
End Sub

--
Picalausa François
Avatar
Fred
dans : news:44abaa66$0$10275$,
Yodaz écrivait :

Bonjour,



Bonjour,

je cherche une fonction qui convertit une chaîne VB (ANSI) en chaîne
OEM afin de créer un fichier .bat avec des caractères accentués
valides. Est ce que quelqu'un a une idée ?



Problème souvent évoqué sur d'autres groupes.
Il existe une autre solution (sous XP ou 2000) qui permet de garder les
batchs en ANSI. C'est quand même plus agréable pour pouvoir les lire
avec notepad plutôt qu'avec edit.
Il suffit que la première ligne du batch soit : CHCP 1252
Cela bascule la page de code de l'interpréteur de commande en ANSI et
tout ce qui suit est correctement interprété.


--
Fred
http://www.cerbermail.com/?3kA6ftaCvT