私はc#でカスタムのPowerShellプロバイダーを作成しようとしています。これにより、ユーザーはアイテムを(フォルダータイプのディレクトリで)管理でき、->ファイル/フォルダーにcdして、子アイテムなどを表示して操作できるようになります。私の問題は、いつでもルートディレクトリに移動できることですが、場所をmyAcme:/ any_path_here_of_valid_itemに設定しようとすると、次のようにエラーが発生します。このパスでアイテムを取得できるので、これは奇妙です。私はここで何かを誤解していますか、それともあなたの場所をアイテムの場所に設定することはできませんか(子アイテムを取得するために私の場所をそのアイテムに設定しようとしています)
PS my****:\> cd myAcme:/
PS myAcme:\> get-item /files/folders/****
<Removed so you don' get hit by a wall of text but this displays the items info fine>
PS myAcme:\> cd myAcme:/files/folders/****
Set-Location : Cannot find path 'myAcme:/files/folders/****' because it does not exist.
At line:1 char:3
+ cd <<<< myAcme:/files/folders/****
+ CategoryInfo : ObjectNotFound: (myAcme:/files/folders/****:String) [Set-Location], ItemNotFoundException
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
containercmdletproviderの概念を理解していない可能性が高いと確信しているため、ここではコードを表示しません。
編集デバッガーに追加するのを忘れました。コマンドcdmyAcme:/ files / folder / * *を実行すると、ItemExistsがtrueを返します。