$string.IndexOf('.') à l'intérieur de powershell fonction renvoie l'invocation de méthode a échoué

Function doSomething($param1 $param2 $file)
{
...doing stuff
$pos = $file.IndexOf('.')
}

doSomething -param1 'stuff' -param2 'more stuff' -file 'C:\test.txt'

Renvoie l'erreur: l'invocation de Méthode a échoué parce que [le Système.IO.FileInfo] ne contient pas une méthode nommée "IndexOf'.

Mais en l'appelant à l'extérieur d'une fonction ou à partir de la ligne de commande fonctionne avec hors de question.

Est-ce une limitation de powershell ou est-il une astuce pour appeler les fonctions de chaîne à l'intérieur de powershell fonctions?

Merci pour l'aide!

OriginalL'auteur Dane Boulton | 2013-09-25