2016-12-06 11 views
0

Visual Studio Codeに使用しています。Visual StudioコードPowershell拡張機能がデバッグ中にプロファイルを認識しない

C:私は他のスクリプトを利用できるようにするいくつかの関数や変数を含めることXXXXXXXX \ドキュメント\ \ Users \ユーザーWindowsPowerShell \ Microsoft.VSCode_profile.ps1

私がプロフィールを更新しました。別のスクリプト内のプロファイルから変数を参照すると、プロファイルがロードされたようには見えません。 VSコードコンソールからクエリを実行すると、変数の値が空白になるため、これは疑わしいです。標準のPowershellコンソールから関連するプロファイルを使って同じテストを実行すると、変数の値が解決されます。

デバッグ中にVSコードでPowershellプロファイルを使用するために何が必要なのか教えていただけますか?

答えて

0

デバッグセッション内で実行:$profile。これにより、現在使用されているプロファイルファイルへのパスが返されますので、そこで変更を加えることができます。

別の方法としては、複数のプロファイルがありますC:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1

+0

私が示したように、私は適切なプロファイルに変更を加えました。私はむしろ、システム全体のプロファイルを変更しないでください。 – rrirower

+0

'$ profile'がパス' C:\ Users \ xxxxxxxx \ Documents \ WindowsPowerShell \ Microsoft.VSCode_profile.ps1'を返す場合、VSコードチームでバグを起こしてください:) – Raf

1

でシステム全体のプロファイルを変更することができます。開始点は、PowerShellの組み込みの$profile変数の次のプロパティを読み取ることで見つけることができる4つの場所です。 WindowsはPowerShellとPowerShellのISEの両方を持っているので、

$profile.CurrentUserAllHosts 
$profile.CurrentUserCurrentHost 
$profile.AllUsersCurrentHost 
$profile.AllUsersAllHosts 

this article by The Scripting Guyで述べたように、あなたは、現在のホストの少なくとも2つの可能な値なので、少なくとも6つのプロファイルを持っています。

これまでのところ、AllUsersのプロファイルがC:\Windows\System32であり、したがって、64ビットシステムでもC:\Windows\SysWOW64\にミラーリングされているという複雑な問題があります。したがって、32ビットまたは64ビットのエディタを使用しているかどうか、32ビットまたは64ビットのプロセスでPowershellをホストしているかどうかによって、編集しているファイルがPowershellに影響を与えていない可能性があります。

1

VSコードPowerShell拡張機能のちょうどreleased version 0.10.0を使用すると、以前に読み込まれたprofile.ps1が利用可能なデバッグが実装されるようになりました。対話型コンソールとデバッガは同じPSセッションを共有します。

関連する問題