Powershell invoke-webrequest avec xml enveloppe soap corps contenant £ char erreurs

Je suis en train d'utiliser Powershells Invoke-Webrequest d'envoyer une enveloppe soap à un mot de passe protégé de service web. Le mot de passe contient le '£' char, qui est à l'origine de l'erreur suivante:

Invoke-WebRequest ...The formatter threw an exception while trying to deserialize the message: There was an error while trying to deserialize parameter http://tempuri.org/:password. The InnerException message was 'There was an error deserializing the object of type System.String. '�inthemiddle' contains invalid UTF8 bytes.'.  Please see InnerException for more details.</faultstring></s:Fault></s:Body></s:Envelope>

C'est le script (information sensible supprimé):

[xml]$SOAP = '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/">
   <soapenv:Header/>
   <soapenv:Body>
      <tem:MethodName>
         <tem:password>passwordtextwit£inthemiddle</tem:password>
      </tem:MethodName>
   </soapenv:Body>
</soapenv:Envelope>'

$headers = @{"SOAPAction" = "http://tempuri.org/service/MethodName"}

$URI = "https://<MY URI.com>/service.svc"
$out = Invoke-WebRequest $uri -Method post -ContentType 'text/xml' -Body $SOAP -Headers $headers

Il ne semble pas d'importance ce type de/encodage, j'vigueur le $SAVON de, Appelez-Webrequest insiste sur l'interprétation de la '£' comme un '�'.

Des idées?

Est votre fichier de script lui-même unicode ou utf-8?
Son être générées à la volée par un agent (pas écrit par moi) - mais si je prends la sortie et le coller dans ISE j'ai le même problème, donc quel que soit l'encodage ISE sur Windows 2012 R2 (PS 4.0) la valeur par défaut je suppose.

OriginalL'auteur ItsNotMyStrongPoint | 2015-04-08