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

C# et requete WMI

3 réponses
Avatar
RienNeSePerd
Tout d'abord bonjour à tous.

Je vous soumet un problème que je rencontre avec les requetes WMI en C#,
cela concerne les chemins de dossiers contenant des apostrophes et je
m'embrouille un peu entre les caractères d'échappement du C#, ceux du WMI ...

Le chemin contenu dans ma requete WMI doit être ainsi: "C:\\Mon
dossier\\dossier aujourd\'hui" avec le \' pour "échapper" l'apostrophe.
Cepandant dans mes tests en C#:
- le couple \' est interpreté comme un apostrophe simple ( ' )
j'obtiens "C:\\Mon dossier\\dossier aujourd'hui"
- le trio \\' est interprété dans la chaine de la requete comme tel (
\\' )
j'obtiens "C:\\Mon dossier\\dossier aujourd\\'hui"

Je n'arrive donc pas à obtenir dans ma chaine en c# la requete souhaitée
avec le bon chemin soit ( C:\\Mon dossier\\dossier aujourd\'hui )

Ps:
Si vous aviez une idée, elle serait la bienvenue, merci d'avance
Cordialement

3 réponses

Avatar
RienNeSePerd
désolé j'ai oublié le post scriptum, il n'y en avait pas
Avatar
Gilles TOURREAU
Le Thu, 19 Jul 2007 14:36:02 +0200, RienNeSePerd
a écrit:

Tout d'abord bonjour à tous.

Je vous soumet un problème que je rencontre avec les requetes WMI en C#,
cela concerne les chemins de dossiers contenant des apostrophes et je
m'embrouille un peu entre les caractères d'échappement du C#, ceux du
WMI ...

Le chemin contenu dans ma requete WMI doit être ainsi: "C:Mon
dossierdossier aujourd'hui" avec le ' pour "échapper" l'apostrophe.
Cepandant dans mes tests en C#:
- le couple ' est interpreté comme un apostrophe simple ( ' )
j'obtiens "C:Mon dossierdossier aujourd'hui"
- le trio ' est interprété dans la chaine de la requete comme
tel (
' )
j'obtiens "C:Mon dossierdossier aujourd'hui"

Je n'arrive donc pas à obtenir dans ma chaine en c# la requete souhaitée
avec le bon chemin soit ( C:Mon dossierdossier aujourd'hui )

Ps:
Si vous aviez une idée, elle serait la bienvenue, merci d'avance
Cordialement




Le mieux pour garder ses cheveux :

string chaine = @"C:Mon dossierdossier aujourd'hui";

Cordialement

--
Gilles TOURREAU


S.A.R.L. P.O.S
Le spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Avatar
RienNeSePerd
Merci de votre réponse si prompte

J'avais essayé avec cette définition:

string chainechemin = @"C:Mon dossierdossier aujourd'hui"

Le problème c'est que la chaine de ma requete (Debutderequete + chainechemin
+ Finderequete) contient: "[...] where name ='C:Mon dossierdossier
aujourd'hui' "

Visiblement C# me double l'antislash avant l'apostrophe dans la chaine
chainechemin.