diff --git a/.gitignore b/.gitignore index 31a08b7..784f484 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,8 @@ ## Ignore Visual Studio temporary files, build results, and ## files generated by popular Visual Studio add-ons. +*.nupkg + # User-specific files *.suo *.user diff --git a/.vs/StrongNaming/CopilotIndices/17.14.670.39694/CodeChunks.db b/.vs/StrongNaming/CopilotIndices/17.14.670.39694/CodeChunks.db new file mode 100644 index 0000000..7f1967a Binary files /dev/null and b/.vs/StrongNaming/CopilotIndices/17.14.670.39694/CodeChunks.db differ diff --git a/.vs/StrongNaming/CopilotIndices/17.14.670.39694/SemanticSymbols.db b/.vs/StrongNaming/CopilotIndices/17.14.670.39694/SemanticSymbols.db new file mode 100644 index 0000000..a7c3b73 Binary files /dev/null and b/.vs/StrongNaming/CopilotIndices/17.14.670.39694/SemanticSymbols.db differ diff --git a/.vs/StrongNaming/FileContentIndex/8ea2206f-0a57-43d1-a2c8-4be867afc79e.vsidx b/.vs/StrongNaming/FileContentIndex/8ea2206f-0a57-43d1-a2c8-4be867afc79e.vsidx new file mode 100644 index 0000000..55b05a8 Binary files /dev/null and b/.vs/StrongNaming/FileContentIndex/8ea2206f-0a57-43d1-a2c8-4be867afc79e.vsidx differ diff --git a/.vs/StrongNaming/FileContentIndex/c9b221f9-25bb-4144-893d-dbf6745c8563.vsidx b/.vs/StrongNaming/FileContentIndex/c9b221f9-25bb-4144-893d-dbf6745c8563.vsidx new file mode 100644 index 0000000..8fc581f Binary files /dev/null and b/.vs/StrongNaming/FileContentIndex/c9b221f9-25bb-4144-893d-dbf6745c8563.vsidx differ diff --git a/.vs/StrongNaming/v17/DocumentLayout.backup.json b/.vs/StrongNaming/v17/DocumentLayout.backup.json new file mode 100644 index 0000000..8e9a629 --- /dev/null +++ b/.vs/StrongNaming/v17/DocumentLayout.backup.json @@ -0,0 +1,136 @@ +{ + "Version": 1, + "WorkspaceRootPath": "C:\\dev\\github\\strongnaming\\", + "Documents": [ + { + "AbsoluteMoniker": "D:0:0:{8B14DAA3-AF04-4AF7-9AE1-217937CFFBD5}|StrongNaming.Tests\\StrongNaming.Tests.csproj|C:\\dev\\github\\strongnaming\\strongnaming.tests\\tests.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{8B14DAA3-AF04-4AF7-9AE1-217937CFFBD5}|StrongNaming.Tests\\StrongNaming.Tests.csproj|solutionrelative:strongnaming.tests\\tests.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|c:\\dev\\github\\strongnaming\\strongnaming\\setstrongnamecommand.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|solutionrelative:strongnaming\\setstrongnamecommand.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{00000000-0000-0000-0000-000000000000}|\u003CSolution\u003E|StrongNaming||{04B8AB82-A572-4FEF-95CE-5222444B6B64}|" + }, + { + "AbsoluteMoniker": "D:0:0:{8B14DAA3-AF04-4AF7-9AE1-217937CFFBD5}|StrongNaming.Tests\\StrongNaming.Tests.csproj|C:\\dev\\github\\strongnaming\\strongnaming.tests\\packages.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}", + "RelativeMoniker": "D:0:0:{8B14DAA3-AF04-4AF7-9AE1-217937CFFBD5}|StrongNaming.Tests\\StrongNaming.Tests.csproj|solutionrelative:strongnaming.tests\\packages.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}" + }, + { + "AbsoluteMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|C:\\dev\\github\\strongnaming\\strongnaming\\packages.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}", + "RelativeMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|solutionrelative:strongnaming\\packages.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}" + }, + { + "AbsoluteMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|C:\\dev\\github\\strongnaming\\strongnaming\\postbuildscripts\\buildnewpackage-ranautomatically.ps1||{3B902123-F8A7-4915-9F01-361F908088D0}", + "RelativeMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|solutionrelative:strongnaming\\postbuildscripts\\buildnewpackage-ranautomatically.ps1||{3B902123-F8A7-4915-9F01-361F908088D0}" + }, + { + "AbsoluteMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|C:\\dev\\github\\strongnaming\\strongnaming\\getassemblynamecommand.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|solutionrelative:strongnaming\\getassemblynamecommand.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + } + ], + "DocumentGroupContainers": [ + { + "Orientation": 0, + "VerticalTabListWidth": 256, + "DocumentGroups": [ + { + "DockedWidth": 200, + "SelectedChildIndex": 1, + "Children": [ + { + "$type": "Bookmark", + "Name": "ST:128:0:{1fc202d4-d401-403c-9834-5b218574bb67}" + }, + { + "$type": "Document", + "DocumentIndex": 0, + "Title": "Tests.cs", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming.Tests\\Tests.cs", + "RelativeDocumentMoniker": "StrongNaming.Tests\\Tests.cs", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming.Tests\\Tests.cs", + "RelativeToolTip": "StrongNaming.Tests\\Tests.cs", + "ViewState": "AgIAACQAAAAAAAAAAAAAwAoAAAAUAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-05-26T14:08:27.606Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 3, + "Title": "packages.config", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming.Tests\\packages.config", + "RelativeDocumentMoniker": "StrongNaming.Tests\\packages.config", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming.Tests\\packages.config", + "RelativeToolTip": "StrongNaming.Tests\\packages.config", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000601|", + "WhenOpened": "2025-05-26T14:18:10.296Z" + }, + { + "$type": "Document", + "DocumentIndex": 6, + "Title": "GetAssemblyNameCommand.cs", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming\\GetAssemblyNameCommand.cs", + "RelativeDocumentMoniker": "StrongNaming\\GetAssemblyNameCommand.cs", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming\\GetAssemblyNameCommand.cs", + "RelativeToolTip": "StrongNaming\\GetAssemblyNameCommand.cs", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-05-26T14:12:31.469Z" + }, + { + "$type": "Document", + "DocumentIndex": 4, + "Title": "packages.config", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming\\packages.config", + "RelativeDocumentMoniker": "StrongNaming\\packages.config", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming\\packages.config", + "RelativeToolTip": "StrongNaming\\packages.config", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAAMAAABnAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000601|", + "WhenOpened": "2025-05-26T14:10:54.936Z" + }, + { + "$type": "Document", + "DocumentIndex": 1, + "Title": "SetStrongNameCommand.cs", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming\\SetStrongNameCommand.cs", + "RelativeDocumentMoniker": "StrongNaming\\SetStrongNameCommand.cs", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming\\SetStrongNameCommand.cs", + "RelativeToolTip": "StrongNaming\\SetStrongNameCommand.cs", + "ViewState": "AgIAAH0AAAAAAAAAAAAWwIgAAAAVAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-05-26T14:08:52.799Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 5, + "Title": "BuildNewPackage-RanAutomatically.ps1", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming\\PostBuildScripts\\BuildNewPackage-RanAutomatically.ps1", + "RelativeDocumentMoniker": "StrongNaming\\PostBuildScripts\\BuildNewPackage-RanAutomatically.ps1", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming\\PostBuildScripts\\BuildNewPackage-RanAutomatically.ps1", + "RelativeToolTip": "StrongNaming\\PostBuildScripts\\BuildNewPackage-RanAutomatically.ps1", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001001|", + "WhenOpened": "2025-05-26T14:13:07.381Z" + }, + { + "$type": "Document", + "DocumentIndex": 2, + "Title": "StrongNaming", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming\\StrongNaming.csproj", + "RelativeDocumentMoniker": "StrongNaming\\StrongNaming.csproj", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming\\StrongNaming.csproj", + "RelativeToolTip": "StrongNaming\\StrongNaming.csproj", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001001|", + "WhenOpened": "2025-05-26T14:13:37.117Z" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/.vs/StrongNaming/v17/DocumentLayout.json b/.vs/StrongNaming/v17/DocumentLayout.json new file mode 100644 index 0000000..1951c5e --- /dev/null +++ b/.vs/StrongNaming/v17/DocumentLayout.json @@ -0,0 +1,136 @@ +{ + "Version": 1, + "WorkspaceRootPath": "C:\\dev\\github\\strongnaming\\", + "Documents": [ + { + "AbsoluteMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|c:\\dev\\github\\strongnaming\\strongnaming\\setstrongnamecommand.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|solutionrelative:strongnaming\\setstrongnamecommand.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{8B14DAA3-AF04-4AF7-9AE1-217937CFFBD5}|StrongNaming.Tests\\StrongNaming.Tests.csproj|C:\\dev\\github\\strongnaming\\strongnaming.tests\\tests.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{8B14DAA3-AF04-4AF7-9AE1-217937CFFBD5}|StrongNaming.Tests\\StrongNaming.Tests.csproj|solutionrelative:strongnaming.tests\\tests.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + }, + { + "AbsoluteMoniker": "D:0:0:{00000000-0000-0000-0000-000000000000}|\u003CSolution\u003E|StrongNaming||{04B8AB82-A572-4FEF-95CE-5222444B6B64}|" + }, + { + "AbsoluteMoniker": "D:0:0:{8B14DAA3-AF04-4AF7-9AE1-217937CFFBD5}|StrongNaming.Tests\\StrongNaming.Tests.csproj|C:\\dev\\github\\strongnaming\\strongnaming.tests\\packages.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}", + "RelativeMoniker": "D:0:0:{8B14DAA3-AF04-4AF7-9AE1-217937CFFBD5}|StrongNaming.Tests\\StrongNaming.Tests.csproj|solutionrelative:strongnaming.tests\\packages.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}" + }, + { + "AbsoluteMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|C:\\dev\\github\\strongnaming\\strongnaming\\packages.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}", + "RelativeMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|solutionrelative:strongnaming\\packages.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}" + }, + { + "AbsoluteMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|C:\\dev\\github\\strongnaming\\strongnaming\\postbuildscripts\\buildnewpackage-ranautomatically.ps1||{3B902123-F8A7-4915-9F01-361F908088D0}", + "RelativeMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|solutionrelative:strongnaming\\postbuildscripts\\buildnewpackage-ranautomatically.ps1||{3B902123-F8A7-4915-9F01-361F908088D0}" + }, + { + "AbsoluteMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|C:\\dev\\github\\strongnaming\\strongnaming\\getassemblynamecommand.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}", + "RelativeMoniker": "D:0:0:{96D292D8-D29E-44FC-B3D4-72EA26E48A5A}|StrongNaming\\StrongNaming.csproj|solutionrelative:strongnaming\\getassemblynamecommand.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}" + } + ], + "DocumentGroupContainers": [ + { + "Orientation": 0, + "VerticalTabListWidth": 256, + "DocumentGroups": [ + { + "DockedWidth": 200, + "SelectedChildIndex": 5, + "Children": [ + { + "$type": "Bookmark", + "Name": "ST:128:0:{1fc202d4-d401-403c-9834-5b218574bb67}" + }, + { + "$type": "Document", + "DocumentIndex": 1, + "Title": "Tests.cs", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming.Tests\\Tests.cs", + "RelativeDocumentMoniker": "StrongNaming.Tests\\Tests.cs", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming.Tests\\Tests.cs", + "RelativeToolTip": "StrongNaming.Tests\\Tests.cs", + "ViewState": "AgIAACQAAAAAAAAAAAAAwDEAAAAMAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-05-26T14:08:27.606Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 3, + "Title": "packages.config", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming.Tests\\packages.config", + "RelativeDocumentMoniker": "StrongNaming.Tests\\packages.config", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming.Tests\\packages.config", + "RelativeToolTip": "StrongNaming.Tests\\packages.config", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000601|", + "WhenOpened": "2025-05-26T14:18:10.296Z" + }, + { + "$type": "Document", + "DocumentIndex": 6, + "Title": "GetAssemblyNameCommand.cs", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming\\GetAssemblyNameCommand.cs", + "RelativeDocumentMoniker": "StrongNaming\\GetAssemblyNameCommand.cs", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming\\GetAssemblyNameCommand.cs", + "RelativeToolTip": "StrongNaming\\GetAssemblyNameCommand.cs", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-05-26T14:12:31.469Z" + }, + { + "$type": "Document", + "DocumentIndex": 4, + "Title": "packages.config", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming\\packages.config", + "RelativeDocumentMoniker": "StrongNaming\\packages.config", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming\\packages.config", + "RelativeToolTip": "StrongNaming\\packages.config", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAAMAAABnAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000601|", + "WhenOpened": "2025-05-26T14:10:54.936Z" + }, + { + "$type": "Document", + "DocumentIndex": 0, + "Title": "SetStrongNameCommand.cs", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming\\SetStrongNameCommand.cs", + "RelativeDocumentMoniker": "StrongNaming\\SetStrongNameCommand.cs", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming\\SetStrongNameCommand.cs", + "RelativeToolTip": "StrongNaming\\SetStrongNameCommand.cs", + "ViewState": "AgIAAH0AAAAAAAAAAAAWwIcAAAAYAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|", + "WhenOpened": "2025-05-26T14:08:52.799Z", + "EditorCaption": "" + }, + { + "$type": "Document", + "DocumentIndex": 5, + "Title": "BuildNewPackage-RanAutomatically.ps1", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming\\PostBuildScripts\\BuildNewPackage-RanAutomatically.ps1", + "RelativeDocumentMoniker": "StrongNaming\\PostBuildScripts\\BuildNewPackage-RanAutomatically.ps1", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming\\PostBuildScripts\\BuildNewPackage-RanAutomatically.ps1", + "RelativeToolTip": "StrongNaming\\PostBuildScripts\\BuildNewPackage-RanAutomatically.ps1", + "ViewState": "AgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001001|", + "WhenOpened": "2025-05-26T14:13:07.381Z" + }, + { + "$type": "Document", + "DocumentIndex": 2, + "Title": "StrongNaming", + "DocumentMoniker": "C:\\dev\\github\\strongnaming\\StrongNaming\\StrongNaming.csproj", + "RelativeDocumentMoniker": "StrongNaming\\StrongNaming.csproj", + "ToolTip": "C:\\dev\\github\\strongnaming\\StrongNaming\\StrongNaming.csproj", + "RelativeToolTip": "StrongNaming\\StrongNaming.csproj", + "Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.001001|", + "WhenOpened": "2025-05-26T14:13:37.117Z" + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/DummyLibrary/DummyLibrary.csproj b/DummyLibrary/DummyLibrary.csproj index 07f4656..e890061 100644 --- a/DummyLibrary/DummyLibrary.csproj +++ b/DummyLibrary/DummyLibrary.csproj @@ -1,5 +1,5 @@  - + Debug @@ -9,8 +9,9 @@ Properties DummyLibrary DummyLibrary - v3.5 + v4.8 512 + true @@ -20,6 +21,7 @@ DEBUG;TRACE prompt 4 + false pdbonly @@ -28,6 +30,7 @@ TRACE prompt 4 + false diff --git a/DummyReferenceLibrary/DummyReferenceLibrary.csproj b/DummyReferenceLibrary/DummyReferenceLibrary.csproj index 2113da4..45fe480 100644 --- a/DummyReferenceLibrary/DummyReferenceLibrary.csproj +++ b/DummyReferenceLibrary/DummyReferenceLibrary.csproj @@ -9,7 +9,7 @@ Properties DummyReferenceLibrary DummyReferenceLibrary - v3.5 + v4.8 512 @@ -21,6 +21,7 @@ DEBUG;TRACE prompt 4 + false pdbonly @@ -29,6 +30,7 @@ TRACE prompt 4 + false diff --git a/StrongNaming.Tests/StrongNaming.Tests.csproj b/StrongNaming.Tests/StrongNaming.Tests.csproj index bb79123..ed24523 100644 --- a/StrongNaming.Tests/StrongNaming.Tests.csproj +++ b/StrongNaming.Tests/StrongNaming.Tests.csproj @@ -8,7 +8,7 @@ Properties StrongNaming.Tests StrongNaming.Tests - v3.5 + v4.8 512 {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} 10.0 @@ -26,6 +26,7 @@ DEBUG;TRACE prompt 4 + false pdbonly @@ -34,13 +35,16 @@ TRACE prompt 4 + false 3.5 - + + ..\packages\Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0\lib\net461\System.Management.Automation.dll + @@ -72,6 +76,7 @@ PreserveNewest + diff --git a/StrongNaming.Tests/Tests.cs b/StrongNaming.Tests/Tests.cs index bc8cddc..e855fc8 100644 --- a/StrongNaming.Tests/Tests.cs +++ b/StrongNaming.Tests/Tests.cs @@ -32,7 +32,7 @@ internal PowerShell Shell public void Init() { var ps = PowerShell.Create(); - ps.AddScript("ipmo .\nivot.powershell.strongnaming.dll").Invoke(); + ps.AddScript("ipmo ./nivot.powershell.strongnaming.dll").Invoke(); TestContext.Properties.Add(ShellKey, ps); } @@ -49,9 +49,9 @@ public void Test_Sign_Primary_Assembly() { var result = Shell.AddScript( - "$k = import-strongnamekeypair .\\key.snk;" + - "set-strongname .\\dummylibrary.dll -force -key $k;" + - "test-strongname .\\dummylibrary.dll") + "$k = import-strongnamekeypair ./key.snk -verbose;" + + "set-strongname ./dummylibrary.dll -force -key $k -nobackup -verbose;" + + "test-strongname ./dummylibrary.dll -verbose") .Invoke().Single(); Assert.IsTrue(result, "Assembly was not signed."); diff --git a/StrongNaming.Tests/packages.config b/StrongNaming.Tests/packages.config new file mode 100644 index 0000000..2b7c88b --- /dev/null +++ b/StrongNaming.Tests/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/StrongNaming/Nivot.StrongNaming.nuspec b/StrongNaming/Nivot.StrongNaming.nuspec index 97105fb..641f5ad 100644 --- a/StrongNaming/Nivot.StrongNaming.nuspec +++ b/StrongNaming/Nivot.StrongNaming.nuspec @@ -2,7 +2,7 @@ Nivot.StrongNaming - 1.0.3 + 2.0.0 Assembly Strong Naming Toolkit oisin Oisin Grehan @@ -13,6 +13,9 @@ Nivot.StrongNaming ================== +* v2.0.0 [2025/05/25] + * upgrade to net48 + * v1.0.3 [2014/01/26] * Assembly references without a strongname will be given a strong name using the same public key token as the primary target assembly. diff --git a/StrongNaming/PostBuildScripts/NuGet.exe b/StrongNaming/PostBuildScripts/NuGet.exe index be85ec2..c8c2be6 100644 Binary files a/StrongNaming/PostBuildScripts/NuGet.exe and b/StrongNaming/PostBuildScripts/NuGet.exe differ diff --git a/StrongNaming/StrongNaming.csproj b/StrongNaming/StrongNaming.csproj index 405de97..3d3f497 100644 --- a/StrongNaming/StrongNaming.csproj +++ b/StrongNaming/StrongNaming.csproj @@ -1,5 +1,5 @@  - + Debug @@ -9,7 +9,7 @@ Properties Nivot.PowerShell.StrongNaming Nivot.PowerShell.StrongNaming - v3.5 + v4.8 512 publish\ true @@ -28,6 +28,7 @@ true ..\ true + true @@ -37,6 +38,7 @@ DEBUG;TRACE prompt 4 + false pdbonly @@ -45,6 +47,7 @@ TRACE prompt 4 + false true @@ -54,24 +57,22 @@ - - False - ..\packages\Mono.Cecil.0.9.5.4\lib\net35\Mono.Cecil.dll + + ..\packages\Mono.Cecil.0.11.6\lib\net40\Mono.Cecil.dll - - ..\packages\Mono.Cecil.0.9.5.4\lib\net35\Mono.Cecil.Mdb.dll + + ..\packages\Mono.Cecil.0.11.6\lib\net40\Mono.Cecil.Mdb.dll - - ..\packages\Mono.Cecil.0.9.5.4\lib\net35\Mono.Cecil.Pdb.dll + + ..\packages\Mono.Cecil.0.11.6\lib\net40\Mono.Cecil.Pdb.dll - - ..\packages\Mono.Cecil.0.9.5.4\lib\net35\Mono.Cecil.Rocks.dll + + ..\packages\Mono.Cecil.0.11.6\lib\net40\Mono.Cecil.Rocks.dll - - False - ..\..\..\powershell\Reference Assemblies\PS2.0-RTM-A-WIN7\System.Management.Automation.dll + + ..\packages\Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0\lib\net461\System.Management.Automation.dll @@ -120,7 +121,7 @@ REM Create a NuGet package for this project and place the .nupkg file in the project's output directory. ECHO Building NuGet package in Post-Build event... -PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& '$(ProjectDir)PostBuildScripts\BuildNewPackage-RanAutomatically.ps1' -ProjectFilePath '$(ProjectPath)' -OutputDirectory '$(TargetDir)' -Configuration='$(ConfigurationName)' -Platform='$(PlatformName)'" +REM PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& '$(ProjectDir)PostBuildScripts\BuildNewPackage-RanAutomatically.ps1' -ProjectFilePath '$(ProjectPath)' -OutputDirectory '$(TargetDir)' -Configuration='$(ConfigurationName)' -Platform='$(PlatformName)'" + + + + Gets and sets generator associated with the current runspace + + + + + Seed used to reinitialize random numbers generator + + + + + Maximum number to generate + + + + + Minimum number to generate + + + + + List from which random elements are chosen + + + + + Number of items to output (number of list items or of numbers) + + + + + Get a random Int64 type number + + + + + + + + This method implements the BeginProcessing method for get-random command + + + + + This method implements the ProcessRecord method for get-random command + + + + + This method implements the EndProcessing method for get-random command + + + + + Provides an adapter API for random numbers that may be either cryptographically random, or + generated with the regular pseudo-random number generator. Re-implementations of + methods using the NextBytes() primitive based on the CLR implementation: + http://referencesource.microsoft.com/#mscorlib/system/random.cs + + + + + Constructor + + + + + Generates a random floating-point number that is greater than or equal to 0.0, and less than 1.0. + + A random floating-point number that is greater than or equal to 0.0, and less than 1.0 + + + + Generates a non-negative random integer. + + A non-negative random integer. + + + + Returns a random integer that is within a specified range. + + The exclusive upper bound of the random number returned. + + + + + Returns a random integer that is within a specified range. + + The inclusive lower bound of the random number returned. + The exclusive upper bound of the random number returned. maxValue must be greater than or equal to minValue + + + + + Fills the elements of a specified array of bytes with random numbers. + + The array to be filled + + + + Samples a random integer + + A random integer, using the full range of Int32 + + + + Samples a random int when the range is large. This does + not need to be in the range of -Double.MaxValue .. Double.MaxValue, + just 0.. (2 * Int32.MaxValue) - 1 + + + + + + Class implemeting Invoke-Expression + + + + + Command to execute. + + + + + For each record, execute it, and push the results into the + success stream. + + + + + implementation for the new-timespan command + + + + + This parameter indicates the date the time span begins; + it is used if two times are being compared + + + + + This parameter indicates the end of a time span. It is used if two + times are being compared. If one of the times is not specified, + the current system time is used. + + + + + Allows the user to override the day + + + + + Allows the user to override the hour + + + + + Allows the user to override the minute + + + + + Allows the user to override the second + + + + + Calculate and write out the appropriate timespan + + + + + Class for Tee-object implementation + + + + + object to process + + + + + FilePath parameter + + + + + Literal FilePath parameter + + + + + Append switch + + + + + Variable parameter + + + + + + + + + + + + + + + + + + + + Dispose method in IDisposeable + + + + + Finalizer + + + + + Implements a cmdlet that applies a script block + to each element of the pipeline. + + + + + This parameter specifies the current pipeline object + + + + + The script block to apply + + + + + Output the timer + + + + + Execute the script block passing in the current pipeline object as + it's only parameter. + + + + Removes the Zone.Identifier stream from a file. + + + + The path of the file to unblock + + + + + The literal path of the file to unblock + + + + + Generate the type(s) + + + + + IsValidFileForUnblocking is a helper method used to validate if + the supplied file path has to be considered for unblocking. + + File or directory path. + True is the supplied path is a + valid file path or else false is returned. + If the supplied path is a directory path then false is returned. + + + + The base class for all command processor classes. It provides + abstract methods to execute a command. + + + + + Checks whether the exception is a severe exception which should + cause immediate process failure. + + can be null + + + CB says 02/23/2005: I personally would err on the side + of treating OOM like an application exception, rather than + a critical system failure.I think this will be easier to justify + in Orcas, if we tease apart the two cases of OOM better. + But even in Whidbey, how likely is it that we couldnt JIT + some backout code? At that point, the process or possibly + the machine is likely to stop executing soon no matter + what you do in this routine. So I would just consider + AccessViolationException. (I understand why you have SO here, + at least temporarily). + + + + + Converts the textencodingtype enum value to the corresponding encoding + + + + + + + abc + + + + + No encoding. + + + + + Unicode encoding. + + + + + Unicode encoding. + + + + + Byte encoding. + + + + + Big Endian Unicode encoding. + + + + + UTF8 encoding. + + + + + UTF7 encoding. + + + + + ASCII encoding. + + + + + Utility class to contain resources for the Microsoft.PowerShell.Utility module + + + + + + + + + + + + + Error message to indicate that Format-Hex cmdlet does not directly support the type provided as input. + + + + + Error message to indicate that Format-Hex cmdlet does not directly support the type provided as input. + + + + + The resource string used to indicate 'PATH:' in the formating header. + + + + + Error message to indicate that requested algorithm is not supported on the target platform. + + + + + The file '{0}' could not be parsed as a PowerShell Data File. + + + + + ByteCollection is used as a wrapper class for the collection of bytes. + + + + + ByteCollection constructor. + + The Offset address to be used while displaying the bytes in the collection. + Underlying bytes stored in the collection. + Indicates the path of the file whose contents are wrapped in the ByteCollection. + + + + ByteCollection constructor. + + The Offset address to be used while displaying the bytes in the collection. + Underlying bytes stored in the collection. + + + + ByteCollection constructor. + + Underlying bytes stored in the collection. + + + + The Offset address to be used while displaying the bytes in the collection. + + + + + Underlying bytes stored in the collection. + + + + + Indicates the path of the file whose contents are wrapped in the ByteCollection. + + + + + Displays the hexadecimal format of the bytes stored in the collection. + + + + + + The implementation of the "set-alias" cmdlet + + + + + + The main processing loop of the command. + + + + + + The implementation of the "get-alias" cmdlet + + + + + + The Name parameter for the command + + + + + + The Exclude parameter for the command + + + + + + The scope parameter for the command determines + which scope the aliases are retrieved from. + + + + + + Parameter definition to retrieve aliases based on their definitions. + + + + + The main processing loop of the command. + + + + + + The implementation of the "new-alias" cmdlet + + + + + + The main processing loop of the command. + + + + + + The base class for the SetAliasCommand and NewAliasCommand + + + + + + The Name parameter for the command + + + + + + The Value parameter for the command + + + + + + The description for the alias. + + + + + + The Option parameter allows the alias to be set to + ReadOnly (for existing aliases) and/or Constant (only + for new aliases). + + + + + + If set to true, the alias that is set is passed to the + pipeline. + + + + + + The scope parameter for the command determines + which scope the alias is set in. + + + + + + If set to true and an existing alias of the same name exists + and is ReadOnly, the alias will be overwritten. + + + + + + The formats that export-alias supports + + + + + Aliases will be exported to a CSV file + + + + + Aliases will be exported as an MSH script + + + + + The implementation of the "export-alias" cmdlet + + + + + + The Path of the file to export the aliases to. + + + + + + The literal path of the file to export the aliases to. + + + + + + The Name parameter for the command + + + + + + If set to true, the alias that is set is passed to the + pipeline. + + + + + + Parameter that determines the format of the file created. + + + + + + Property that sets append parameter. + + + + + Property that sets force parameter. + + + + + Property that prevents file overwrite. + + + + + The description that gets added to the file as a comment + + + + + + The scope parameter for the command determines + which scope the aliases are retrieved from. + + + + + + The main processing loop of the command. + + + + + + Writes the aliases to the file + + + + + Holds all the matching aliases for writing to the file + + + + + Open the file to which aliases should be exported + + + If not null, this is the file whose read-only attribute + was cleared (due to the -Force parameter). The attribute + should be reset. + + + + + + The implementation of the "import-alias" cmdlet + + + + + + The path from which to import the aliases + + + + + + The literal path from which to import the aliases + + + + + + The scope to import the aliases to. + + + + + + If set to true, the alias that is set is passed to the + pipeline. + + + + + + If set to true and an existing alias of the same name exists + and is ReadOnly, the alias will be overwritten. + + + + + + The main processing loop of the command. + + + + + + The implementation of the "import-localizeddata" cmdlet + + + + + + The path from which to import the aliases + + + + + + The scope to import the aliases to. + + + + + + The scope to import the aliases to. + + + + + + The scope to import the aliases to. + + + + + + The command allowed in the data file. If unspecified, then ConvertFrom-StringData + is allowed. + + + + + The main processing loop of the command. + + + + + + Class comment + + + + + The list of properties to display + These take the form of an MshExpression + + + + + + + + + + + + Retrieves input from the host virtual console and writes it to the pipeline output. + + + + + + + Constructs a new instance. + + + + + + + The objects to display on the host before collecting input. + + + + + + + Set to no echo the input as is is typed. + + + + + + + Write the prompt, then collect a line of input from the host, then + output it to the output stream. + + + + + + This class is used to parse CSV text. + + + + + Gets or sets the delimiter that separates the values + + + + + + Parse a CSV String. + + + + String to be parsed + + + + + + This class implements the base for exportcsv and converttocsv commands + + + + + Property that sets delimiter + + + + + Delimiter to be used. + + + + + Culture switch for csv conversion + + + + + Abstract Property - Input Object which is written in Csv format + Derived as Different Attributes.In ConvertTo-CSV, This is a positional parameter. Export-CSV not a Positional behaviour. + + + + + NoTypeInformation : should the #TYPE line be generated + + + + + Write the string to a file or pipelin + + + + + BeginProcessing override + + + + + implementation for the export-csv command + + + + + Input Object for CSV Writing. + + + + + mandatory file name to write to + + + + + The literal path of the mandatory file name to write to + + + + + Property that sets force parameter. + + + + + Property that prevents file overwrite. + + + + + Encoding optional flag + + + + + Property that sets append parameter. + + + + + BeginProcessing override + + + + + Convert the current input object to Csv and write to file/WriteObject + + + + + EndProcessing + + + + + handle to file stream + + + + + stream writer used to write to file + + + + + handle to file whose read-only attribute should be reset when we are done + + + + + Write the csv line to file + + + + + + Set to true when object is disposed + + + + + public dispose method + + + + + Implements Import-Csv command + + + + + Property that sets delimiter + + + + + mandatory file name to read from + + + + + The literal path of the mandatory file name to read from + + + + + Property that sets UseCulture parameter + + + + + Header property to customize the names + + + + + Encoding optional flag + + + + + Avoid writing out duplicate warning messages when there are + one or more unspecified names + + + + + + + + + + ProcessRecord overload + + + + + Implements ConvertTo-Csv command + + + + + Overrides Base InputObject + + + + + Stores Property Names + + + + + + + + + + BeginProcessing override + + + + + Convert the current input object to Csv and write to stream/WriteObject + + + + + + + + + + + Implements ConvertFrom-Csv command + + + + + Property that sets delimiter + + + + + Culture switch for csv conversion + + + + + Input Object which is written in Csv format + + + + + Header property to customize the names + + + + + Avoid writing out duplicate warning messages when there are + one or more unspecified names + + + + + BeginProcessing override + + + + + Convert the current input object to Csv and write to stream/WriteObject + + + + + + + + + + + + + + + + + + + + + + Get the name of properties from source PSObject and + add them to _propertyNames. + + + + + Converts PropertyNames in to a CSV string + + + + + + + + + + + + + + Get value from property object + + + + + + + Prepares string for writing type information + + + + + + + Escapes the " in string if necessary. + Encloses the string in double quotes if necessary. + + + + + + Set to true when object is disposed + + + + + public dispose method + + + + + Helper class to import single CSV file + + + + + Reference to cmdlet which is using this helper class + + + + + CSV delimiter (default is the "comma" / "," character) + + + + + Use "UnspecifiedName" when the name is null or empty + + + + + Avoid writing out duplicate warning messages when there are + one or more unspecified names + + + + + Reference to header values + + + + + ETS type name from the first line / comment in the CSV + + + + + Reader of the csv content + + + + + This is set to true when end of file is reached + + + + + Peeks the next character in the stream and returns true if it is + same as passed in character. + + + + + + + Reads a line from file. This consumes the end of line. + Only use it when end of line chars are not important. + + + + + + Validate the names of properties + + + + + + Read the type information, if present + + Type string if present else null + + + + Reads the next record from the file and returns parsed collection + of string. + + + Indicates if the parsed row is a header row or a values row. + + + Parsed collection of strings. + + + + + This function reads the characters till next delimiter and adds them + to current + + + + this is true if end of record is reached + when delimiter is hit. This would be true if delimiter is NewLine + + + If this is true, eat the trailing blanks. Note:if there are non + whitespace characters present, then trailing blanks are not consumed + + + + + Helper class for CSV conversion + + + + + This class implements Set-PSBreakpoint command. + + + + + the action to take when hitting this breakpoint + + + + + The column to set the breakpoint on + + + + + the command(s) to set the breakpoint on + + + + + the line to set the breakpoint on + + + + + the script to set the breakpoint on + + + + + the variables to set the breakpoint(s) on + + + + + + + + + + verifies that debugging is supported + + + + + set a new breakpoint + + + + + Types of breakpoints + + + + Breakpoint on a line within a script + + + + Breakpoint on a variable + + + Breakpoint on a command + + + + This class implements Remove-PSBreakpoint + + + + + Scripts of the breakpoints to output + + + + + IDs of the breakpoints to output + + + + + Variables of the breakpoints to output + + + + + Commands of the breakpoints to output + + + + + Commands of the breakpoints to output + + + + + remove breakpoints + + + + + Gives the criteria to filter breakpoints + + + + + Returns the items in the input list that match an item in the filter array according to + the given selection criterion. + + + + + This class implements Remove-PSBreakpoint + + + + + Removes the given breakpoint + + + + + Base class for Enable/Disable/Remove-PSBreakpoint + + + + + the breakpoint to enable + + + + + The Id of the breakpoint to enable + + + + + Gathers the list of breakpoints to process and calls ProcessBreakpoints + + + + + Process the given breakpoint + + + + + This class implements Enable-PSBreakpoint + + + + + Gets or sets the parameter -passThru which states whether the + command should place the breakpoints it processes in the pipeline. + + + + + Enables the given breakpoint + + + + + This class implements Disable-PSBreakpoint + + + + + Gets or sets the parameter -passThru which states whether the + command should place the breakpoints it processes in the pipeline. + + + + + Disables the given breakpoint + + + + + This cmdlet takes a Runspace object and checks to see if it is debuggable (i.e, if + it is running a script or is currently stopped in the debugger. If it + is debuggable then it breaks into the Runspace debugger in step mode. + + + + + The Runspace to be debugged. + + + + + The name of a Runspace to be debugged. + + + + + The Id of a Runsapce to be debugged. + + + + + The InstanceId of a Runspace to be debugged. + + + + + End processing. Do work. + + + + + Stop processing. + + + + + This cmdlet returns runspaces in the PowerShell session. + + + + + Specifies name or names of Runspaces to return. + + + + + Specifies one or more Ids of Runspaces to return. + + + + + Specifies one or more InstanceId Guids of Runspaces to return. + + + + + Process record + + + + + Runspace Debug Options class + + + + + When true this property will cause any breakpoints set in a Runspace to stop + the running command or script when the breakpoint is hit, regardless of whether a + debugger is currently attached. The script or command will remain stopped until + a debugger is attached to debug the breakpoint. + + + + + When true this property will cause any running command or script in the Runspace + to stop in step mode, regardless of whether a debugger is currently attached. The + script or command will remain stopped until a debugger is attached to debug the + current stop point. + + + + + Name of runspace for which the options apply. + + + + + Local Id of runspace for which the options apply. + + + + + Constructor. + + Enable debugger option + BreakAll option + Runspace name + Runspace local Id + + + + Abstract class that defines common Runpace Command parameters. + + + + + RunspaceParameterSet + + + + + RunspaceNameParameterSet + + + + + RunspaceIdParameterSet + + + + + RunspaceInstanceIdParameterSet + + + + + ProcessNameParameterSet + + + + + Runspace Name + + + + + Runpace + + + + + Runspace Id + + + + + RunspaceInstanceId + + + + + Gets or Sets the ProcessName for which runspace debugging has to be enabled or disabled. + + + + + Gets or Sets the AppDomain Names for which runspace debugging has to be enabled or disabled. + + + + + Returns a list of valid runspaces based on current parameter set. + + IReadOnlyList + + + + Returns Runspace Debugger + + Runspace + Debugger + + + + SetDebugPreferenceHelper is a helper method used to enable/disabe debug preference. + + Process Name + App Domain Name + Indicates if debug preference has to be enabled or disabled. + FullyQualifiedErrorId to be used on error. + + + + This cmdlet enables debugging for selected runspaces in the current or specified process. + + + + + When true this property will cause any running command or script in the Runspace + to stop in step mode, regardless of whether a debugger is currently attached. The + script or command will remain stopped until a debugger is attached to debug the + current stop point. + + + + + Process Record + + + + + This cmdlet disables Runspace debugging in selected Runspaces. + + + + + Process Record + + + + + This cmdlet returns a PSRunspaceDebug object for each found Runspace object. + + + + + Process Record + + + + + This cmdlet causes a running script or command to stop in the debugger at the next execution point. + + + + + EndProcessing + + + + + + Implements the write-progress cmdlet + + + + + + + Describes the activity for which progress is being reported. + + + + + + + + Describes the current state of the activity. + + + + + + + + Uniquely identifies this activity for purposes of chaining subordinate activities. + + + + + + + + Percentage completion of the activity, or -1 if n/a + + + + + + + + Seconds remaining to complete the operation, or -1 if n/a + + + + + + + + Description of current operation in activity, empty if n/a + + + + + + + + Identifies the parent Id of this activity, or -1 if none. + + + + + + + + Identifies whether the activity has completed (and the display for it should be removed), + or if it is proceededing (and the display for it should be shown). + + + + + + + + Identifies the source of the record. + + + + + + + + Writes a ProgressRecord created from the parameters. + + + + + + This is the base class for update-typedata and update-formatdata + + + + + File parameter set name + + + + + Files to append to the existing set + + + + + Files to prepend to the existing set + + + + + + + + + + + + + + This class implements update-typeData command. + + + + + The member type of to be added + + + + + The name of the new member + + + + + First value of the new member. The meaning of this value + changes according to the member type. + + + + + Second value of the new member. The meaning of this value + changes according to the member type. + + + + + The type converter to be added + + + + + The type adapter to be added + + + + + SerializationMethod + + + + + TargetTypeForDeserialization + + + + + SerializationDepth + + + + + DefaultDisplayProperty + + + + + InheritPropertySerializationSet + + + + + StringSerializationSource + + + + + DefaultDisplayPropertySet + + + + + DefaultKeyPropertySet + + + + + PropertySerializationSet + + + + + The type name we want to update on + + + + + True if we should overwrite a possibly existing member + + + + + The TypeData instances + + + + + This method verify if the Type Table is shared and cannot be updated + + + + + This method implements the ProcessRecord method for update-typeData command + + + + + This method implements the EndProcessing method for update-typeData command + + + + + Process the dynamic type update + + + + + Get the members for the TypeData + + + + + + Check if the TypeData instance contains no members + + + false if empty, true if not + + + + Generate error record + + + + + + + + + + This class implements update-typeData command. + + + + + This method verify if the Format database manager is shared and cannot be updated + + + + + This method implements the ProcessRecord method for update-FormatData command + + + + + Remove-TypeData cmdlet + + + + + The target type to remove + + + + + The type xml file to remove from the cache + + + + + The TypeData to remove + + + + + This method implements the ProcessRecord method for Remove-TypeData command + + + + + This method implements the EndProcessing method for Remove-TypeData command + + + + + Get-TypeData cmdlet + + + + + Get Formatting information only for the specified + typename + + + + + Takes out the content from the database and writes them + out + + + + + To make it easier to specify a TypeName, we add an ArgumentTransformationAttribute here. + * string: retrun the string + * Type: return the Type.ToString() + * instance: return instance.GetType().ToString() + + + + + implementation for the Export-Clixml command + + + + + Depth of serialization + + + + + mandatory file name to write to + + + + + mandatory file name to write to + + + + + Input object to be exported + + + + + Property that sets force parameter. + + + + + Property that prevents file overwrite. + + + + + Encoding optional flag + + + + + + BeginProcessing override + + + + + + + + + + + + + + + + + + + + handle to file stream + + + + + stream writer used to write to file + + + + + Serializer used for serialization + + + + + FileInfo of file to clear read-only flag when operation is complete + + + + + Set to true when object is disposed + + + + + public dispose method + + + + + Implements Import-Clixml command + + + + + mandatory file name to read from + + + + + mandatory file name to read from + + + + + public dispose method + + + + + ProcessRecord overload + + + + + + + + + + implementation for the convertto-xml command + + + + + Depth of serialization + + + + + Input Object which is written to XML format + + + + + Property that sets NoTypeInformation parameter. + + + + + Property that sets As parameter. + + + + + BeginProcessing override + + + + + override ProcessRecord + + + + + + + + + + + + + + + XmlText writer + + + + + Serializer used for serialization + + + + + Memory Stream used for serialization + + + + + Cleaning up the MemoryStream + + + + + Set to true when object is disposed + + + + + public dispose method + + + + + Helper class to import single XML file + + + + + XML file to import + + + + + Reference to cmdlet which is using this helper class + + + + + handle to file stream + + + + + XmlReader used to read file + + + + + Set to true when object is disposed + + + + + public dispose method + + + + + This cmdlet is used to search an xml document based on the XPath Query. + + + + + Specifies the path which contains the xml files. The default is the current + user directory + + + + + Specifies the literal path which contains the xml files. The default is the current + user directory + + + + + The following is the definition of the input parameter "XML". + Specifies the xml Node + + + + + The following is the definition of the input parameter in string format. + Specifies the string format of a fully qualified xml. + + + + + The following is the definition of the input parameter "Xpath". + Specifies the String in XPath language syntax. The xml documents will be + searched for the nodes/values represented by this parameter. + + + + + The following definition used to specify the + NameSpace of xml. + + + + + ProcessRecord method. + + + + + The object returned by Select-Xml representing the result of a match. + + + + + If the object is InputObject, Input Stream is used. + + + + + The XmlNode that matches search + + + + + The FileName from which the match is found. + + + + + The pattern used to search + + + + + Returns the string representation of this object. The format + depends on whether a path has been set for this object or not. + + + + + + Return String representation of the object + + + + + + + Returns the XmlNode Value or InnerXml. + + + + + + Returns the path of the matching file truncated relative to the parameter. + + For example, if the matching path was c:\foo\bar\baz.c and the directory argument was c:\foo + the routine would return bar\baz.c + + + The directory base the truncation on. + The relative path that was produced. + + + + Formats a line for use in ToString. + + + + + + + + + Class comment + + + + + The incoming object + + + + + The list of properties to display + These take the form of an MshExpression + + + + + + Text to go after the opening body tag + and before the table + + + + + + Text to go into the head section + of the html doc + + + + + + The string for the title tag + The title is also placed in the body of the document + before the table between h3 tags + If the -Head parameter is used, this parameter has no + effect. + + + + + + This specifies whether the objects should + be rendered as an HTML TABLE or + HTML LIST + + + + + + This specifies a full or partial URI + for the CSS information. + The html should reference the css file specified + + + + + When this switch is specified generate only the + HTML representation of the incoming object + without the HTML,HEAD,TITLE,BODY,etc tags. + + + + + Specifies the text to include prior the + closing body tag of the HTML output + + + + + Specifies the text to include after the + body tag of the HTML output + + + + + definitions for hash table keys + + + + + This allows for @{e='foo';label='bar';alignment='center';width='20'} + + + + + Create a list of MshParameter from properties + + can be a string, ScriptBlock, or Hashtable + + + + + Resolve all wildcards in user input Property into resolvedNameMshParameters + + + + + calls ToString. If an exception occurs, eats it and return string.Empty + + + + + + + + + + + + Reads Width and Alignment from Property and write Col tags + + + + + + Writes the list entries when the As parameter has value List + + + + + To write the Property name + + + + + To write the Property value + + + + + To write the Table header for the object property names + + + + + To write the Table row for the object property values + + + + + + + + + + + + + + + + list of incoming objects to compare + + + + + This class implements Export-PSSession cmdlet. + Spec: TBD + + + + + Version of the script generator used (by this Export-PSSession cmdlet) to generate psm1 and psd1 files. + Generated script checks this version to see if it needs to be regenerated. There are 2 situations where this is needed + 1. the script needs to be regenerated because a bug fix made previous versions incompatible with the rest of the system (i.e. with ObjectModelWrapper) + 2. ths script needs to be regenerated because a security vulnerability was found inside generated code (there is no way to service generated code, but we can service the dll that reports the version that the generated script checks against) + + + + + Mandatory file name to write to + + + + + Property that sets force parameter. + + + + + Encoding optional flag + + + + + Performs initialization of cmdlet execution. + + + + + This class implements Import-PSSession cmdlet. + Spec: http://cmdletdesigner/SpecViewer/Default.aspx?Project=PowerShell&Cmdlet=Import-Command + + + + + This parameter specified a prefix used to modify names of imported commands + + + + + Disable warnings on cmdlet and function names that have non-standard verbs + or non-standard characters in the noun. + Also disable security related checks against command and parameter names. + + + + + Performs initialization of cmdlet execution. + + + + + Base class for implicit remoting cmdlets + + + + + Gets or sets the path(s) or name(s) of the commands to retrieve + + + + + Allows shadowing and/or overwriting of existing local/client commands + + + + + The parameter that all additional arguments get bound to. These arguments are used + when retrieving dynamic parameters from cmdlets that support them. + + + + + Gets or sets the type of the command to get + + + + + Gets or sets the PSSnapin parameter to the cmdlet + + + + + Gets or sets the FullyQualifiedModule parameter to the cmdlet + + + + + Gets or sets the types for which we should get formatting and output data + + + + + This parameter specified a prefix used to modify names of imported commands + + + + + Gets or sets the certificate with which to sign the format file and psm1 file. + + + + + The PSSession object describing the remote runspace + using which the specified cmdlet operation will be performed + + + + + Returns true if command doesn't shadow OR is in the -AllowShadowing parameter + + + + + + + Validates that a name or identifier is safe to use in generated code + (i.e. it can't be used for code injection attacks) + + name to validate + true if the name is safe; false otherwise + + + + Validates that a parameter name is safe to use in generated code + (i.e. it can't be used for code injection attacks) + + parameter name to validate + true if the name is safe; false otherwise + + + + Validates that a type can be safely used as a type constraint + (i.e. it doesn't introduce any side effects on the client) + + type to validate + true if the type is safe; false otherwise + + + + Validates that command metadata returned from the (potentially malicious) server is safe. + Writes error messages if necessary. Modifies command metadata to make it safe if necessary. + + command metadata to verify + true if the command metadata is safe; false otherwise + + + + Converts remote (deserialized) CommandInfo objects into CommandMetadata equivalents + + Dictionary where rehydrated CommandMetadata are going to be stored + Dictionary mapping alias names to resolved command names + Remote (deserialized) CommandInfo object + CommandMetadata equivalents + + + + Gets CommandMetadata objects from remote runspace + + (rehydrated) CommandMetadata objects + + + + + + + + + + + Gets CommandMetadata objects from remote runspace + + (rehydrated) CommandMetadata objects + + + + Generates a proxy module in the given directory. + + base directory for the module + fileName prefix for module files + encoding of generated files + whether to overwrite files + remote commands to generate proxies for + dictionary mapping alias names to resolved command names + remote format data to generate format.ps1xml for + Paths to generated files + + + + Gets a connection URI associated with the remote runspace + + Connection URI associated with the remote runspace + + + + This is needed to work with Default Port DCR change from WSMan. See BUG + 542726. If http/https is specified in the connectionURI and no port is + specified then defaults for http/https (80/443) are applied. But WSMan + by default listens on 5985/5986. To overcome this, this function + creates a -ComputerName parameter set or -ConnectionUri parameter + set depending on the situation. + + + + + + Generates a proxy module in the given directory. + + base directory for the module + filename prefix for module files + encoding of generated files + whether to overwrite files + remote commands to generate proxies for + dictionary mapping alias names to resolved command names + remote format data to generate format.ps1xml for + certificate with which to sign the format files + Path to the created files + + + + This cmdlet updates the property of incoming objects and passes them to the + pipeline. This cmdlet also returns a .NET object with properties that + defines the update action on a list. + + This cmdlet is most helpful when the cmdlet author wants the user to do + update action on object list that are not directly exposed through + cmdlet parameter. One wants to update a property value which is a list + (multi-valued parameter for a cmdlet), without exposing the list. + + + + + The following is the definition of the input parameter "Add". + Objects to be add to the list + + + + + The following is the definition of the input parameter "Remove". + Objects to be removed from the list + + + + + The following is the definition of the input parameter "Replace". + Objects in this list replace the objects in the target list. + + + + + The following is the definition of the input parameter "InputObject". + List of InputObjects where the updates needs to applied to the + specific property + + + + + The following is the definition of the input parameter "Property". + Defines which property of the input object should be updated with Add and + Remove actions + + + + + ProcessRecord method. + + + + + EndProcessing method. + + + + + implementation for the Send-MailMessage command + + + + + Specifies the files names to be attached to the email. + If the filename specified can not be found, then the relevant error + message should be thrown. + + + + + Specifies the address collection that contains the + blind carbon copy (BCC) recipients for the e-mail message. + + + + + Specifies the body (content) of the message + + + + + Specifies a value indicating whether the mail message body is in Html. + + + + + Specifies the encoding used for the content of the body and also the subject. + + + + + Specifies the address collection that contains the + carbon copy (CC) recipients for the e-mail message. + + + + + Specifies the delivery notifications options for the e-mail message. The various + option available for this parameter are None, OnSuccess, OnFailure, Delay and Never + + + + + Specifies the from address for this e-mail message. The default value for + this parameter is the email address of the currently logged on user + + + + + Specifies the name of the Host used to send the email. This host name will be assigned + to the Powershell variable PSEmailServer,if this host can not reached an appropriate error + message will be displayed. + + + + + Specifies the priority of the email message. The valid values for this are Normal, High and Low + + + + + Specifies the subject of the email message. + + + + + Specifies the To address for this e-mail message. + + + + + Specifies the credential for this e-mail message. + + + + + Specifies if Secured layer is required or not + + + + + Specifies the Port to be used on + + + Value must be greater than zero. + + + + + Add the input addresses which are either string or hashtable to the MailMessage + It returns true if the from parameter has more than one value + + + + + + + + ProcessRecord override + + + + + ProcessRecord override + + + + + EndProcessing + + + + + To make it easier to specify -Encoding parameter, we add an ArgumentTransformationAttribute here. + When the input data is of type string and is valid to be converted to System.Text.Encoding, we do + the conversion and return the converted value. Otherwise, we just return the input data. + + + + + Gets formatting information from the loading + format information database + + Currently supports only table controls + + + + + Get Formatting information only for the specified + typename + + + + + When specified, helps control whether or not to send richer formatting data + that was not supported by earlier versions of PowerShell. + + + + + set the default filter + + + + + Takes out the content from the database and writes them + out + + + + + Cmdlet used to write a collection of formatting directives to + an XML file + + + + + type definition to include in export + + + + + Path of the XML file + + + + + Literal path of the XML file + + + + + Force writing a file + + + + + Do not overwrite file if exists + + + + + Include scriptblocks for export + + + + + Adds the type to the collection + + + + + writes out the formatting directives from the + collection to the specified XML file + + + + + implementation for the format-table command + + + + + constructor to set the inner command + + + + + implementation for the format-custom command. It just calls the formatting + engine on complex shape + + + + + constructor to se the inner command + + + + + Positional parameter for properties, property sets and table sets + specified on the command line. + The paramater is optional, since the defaults + will be determined using property sets, etc. + + + + + + + + + + + implementation for the format-table command + + + + + constructor to set the inner command + + + + + implementation for the format-table command + + + + + constructor to se the inner command + + + + + Positional parameter for properties, property sets and table sets + specified on the command line. + The paramater is optional, since the defaults + will be determined using property sets, etc. + + + + + optional, non positional parameter + + + + + + optional, non positional parameter + + + + + + implementation for the out-file command + + + + + set inner command + + + + + mandatory file name to write to + + + + + mandatory file name to write to + + + + + Encoding optional flag + + + + + + Property that sets append parameter. + + + + + Property that sets force parameter. + + + + + Property that prevents file overwrite. + + + + + optional, number of columns to use when writing to device + + + + + False to add a newline to the end of the output string, true if not. + + + + + read command line parameters + + + + + one time initialization: acquire a screen host interface + by creating one on top of a file + NOTICE: we assume that at this time the file name is + available in the CRO. JonN recommends: file name has to be + a MANDATORY parameter on the command line + + + + + execution entry point + + + + + execution entry point + + + + + + + + + + handle to file stream + + + + + stream writer used to write to file + + + + + indicate whether the ProcessRecord method was executed. + When the Out-File is used in a redirection pipelineProcessor, + its ProcessRecord method may not be called when nothing is written to the + output pipe, for example: + Write-Error error > test.txt + In this case, the EndProcess method should return immediately as if it's + never been called. + + + + + FileInfo of file to clear read-only flag when operation is complete + + + + + implementation for the out-string command + + + + + optional, non positional parameter to specify the + streaming behavior + FALSE: accumulate all the data, then write a single string + TRUE: write one line at the time + + + + + optional, number of columns to use when writing to device + + + + + set inner command + + + + + read command line parameters + + + + + one time initialization: acquire a screen host interface + by creating one on top of a stream + + + + + callback to add lines to the buffer or to write them to + the output stream + + + + + + execution entry point + + + + + execution entry point + + + + + writer used by the LineOutput + + + + + buffer used when buffering until the end + + + + + Implementation of the LineOutput interface for printer + + + + + full buffering for printer + + + + + do the printing on playback + + + + + the # of columns for the printer + + + + + + the # of rows for the printer + + + + + + write a line to the output device + + line to write + + + + Used for static initializations like DefaultPrintFontName + + + + + constructor for the class + + name of printer, if null use default printer + + + + callback to be called when IConsole.WriteLine() is called by WriteLineHelper + + string to write + + + + callback to be called when Console.Write() is called by WriteLineHelper + This is called when the WriteLineHelper needs to write a line whose length + is the same as the width of the screen buffer + + string to write + + + + do the printing + + + + + helper to create a font. + If the font object exists, it does nothing. + Else, the a new object is created and verified + + GDI+ graphics object needed for verification + + + + internal helper to verify that the font is fixed pitch. If the test fails, + it reverts to the default font + + GDI+ graphics object needed for verification + + + + Event fired for each page to print + + sender, not used + print page event + + + + flag for one time initialization of the interface (columns, etc.) + + + + + callback to ask the outputter to playback its cache + + + + + name of the printer to print to. Null means default printer + + + + + name of the font to use, if null the default is used + + + + + font size + + + + + default font, used if the printFont is not specified or if the + printFont is not fixed pitch. + + + This default must be loaded from a resource file as different + cultures will have different defaults and the localizer would + know the default for different cultures. + + + + + default size for the default font + + + + + number of columns on the sheet + + + + + text lines ready to print (after output cache playback) + + + + + cached font object + + + + + implementation for the out-printer command + + + + + set inner command + + + + + optional name of the printer to print to + The alias allows "lp -P printer" + + + + + read command line parameters + + + + + one time initialization: acquire a screen host interface + by creating one on top of a memory buffer + + + + + Auxiliar used in GetValue methods since the list does not deal well with unlimited sized lines + + source string + the source string limited in the number of lines + + + + Enum for SelectionMode parameter. + + + + + None is the default and it means OK and Cancel will not be present + and no objects will be written to the pipeline. + The selectionMode of the actual list will still be multiple + + + + + Allow selection of one sinlge item to be written to the pipeline. + + + + + Allow select of multiple items to be written to the pipeline. + + + + + Implementation for the Out-GridView command + + + + + Constructor for OutGridView + + + + + This parameter specifies the current pipeline object + + + + + Gets/sets the title of the Out-GridView window. + + + + + Field used for the Block parameter. + + + + + Get or sets a value indicating whether the cmdlet should wait for the window to be closed + + + + + Field used for the OutputMode parameter. + + + + + Get or sets a value indicating whether the selected items should be written to the pipeline + and if it should be possible to select multiple or single list items + + + + + Gets or sets a value indicating whether the selected items should be written to the pipeline + Setting this to true is the same as setting the OutputMode to Multiple + + + + + Provides a one-time, pre-processing functionality for the cmdlet. + + + + + Blocks depending on the wait and selected + + + + + Provides a record-by-record processing functionality for the cmdlet. + + + + + StopProcessing is called close the window when Ctrl+C in the command prompt. + + + + + Converts the provided PSObject to a string preserving PowerShell formatting. + + PSObject to be converted to a string. + + + + Execute formatting on a single object + + object to process + + + + Implements IDisposable logic + + true if being called from Dispose + + + + Dispose method in IDisposeable + + + + + Finalizer + + + + Columns definition of the underlying Management List + + + + Initializes a new instance of the OutWindowProxy class. + + + + + Adds columns to the output window. + + An array of property names to add. + An array of display names to add. + An array of types to add. + + + + Adds an item to the out window. + + + The item to add. + + + + + Adds an item to the out window. + + + The item to add. + + + + + Shows the out window if it has not already been displayed. + + + + + Implements IDisposable logic + + true if being called from Dispose + + + + Dispose method in IDisposeable + + + + + Close the window if it has already been displayed. + + + + + Gets a value indicating whether the out window is closed. + + + True if the out window is closed, false otherwise. + + + + Returns any exception that has been thrown by previous method calls. + The thrown and caught exception. It returns null if no exceptions were thrown by any previous method calls. + + + + Return the selected item of the OutGridView. + + + The selected item + + + + + Method to filter resolved expressions as per table view needs. + For v1.0, table view supports only 10 properties. + + This method filters and updates "activeAssociationList" instance property. + + None. + This method updates "activeAssociationList" instance property. + + + + The ConvertFrom-Json command + This command convert a Json string representation to a JsonObject + + + + + gets or sets the InputString property + + + + + inputObjectBuffer buffers all InputObjet contents avaliable in the pipeline. + + + + + Prerequisite checks + + + + + Buffers InputObjet contents avaliable in the pipeline. + + + + + the main execution method for the convertfrom-json command + + + + + ConvertFromJsonHelper is a helper method to convert to Json input to .Net Type. + + Input String. + True if successfully converted, else returns false. + + + + The ConvertTo-Json command + This command convert an object to a Json string representation + + + + + gets or sets the InputObject property + + + + + gets or sets the Depth property + + + + + gets or sets the Compress property. + If the Compress property is set to be true, the Json string will + be output in the compressed way. Otherwise, the Json string will + be output with indentations. + + + + + Prerequisite checks + + + + + Caching the input objects for the convertto-json command + + + + + Do the conversion to json and write output + + + + + Convert the Json string to a more readable format + + + + + + + Convert a Json List, which starts with '['. + + + + + + + + + + + Convert the quoted string. + + + + + + + + + Convert a Json dictionary, which starts with '{'. + + + + + + + + + + + Add tabs to result + + + + + + + Add spaces to result + + + + + + + Return an alternate representation of the specified object that serializes the same JSON, except + that properties that cannot be evaluated are treated as having the value null. + + Primitive types are returned verbatim. Aggregate types are processed recursively. + + The object to be processed + The current depth into the object graph + An object suitable for serializing to JSON + + + + Add to a base object any properties that might have been added to an object (via PSObject) through the Add-Member cmdlet. + + The containing PSObject, or null if the base object was not contained in a PSObject + The base object that might have been decorated with additional properties + The current depth into the object graph + the processed object is a pure PSObject + the processed object is a custom object + + The original base object if no additional properties had been added, + otherwise a dictionary containing the value of the original base object in the "value" key + as well as the names and values of an additional properties. + + + + + Append to a dictionary any properties that might have been added to an object (via PSObject) through the Add-Member cmdlet. + If the passed in object is a custom object (not a simple object, not a dictionary, not a list, get processed in ProcessCustomObject method), + we also take Adapted properties into account. Otherwise, we only consider the Extended properties. + When the object is a pure PSObject, it also gets processed in "ProcessCustomObject" before reaching this method, so we will + iterate both extended and adapted proerpties for it. Since it's a pure PSObject, there will be no adapted properties. + + The containing PSObject, or null if the base object was not contained in a PSObject + The dictionary to which any additional properties will be appended + The current depth into the object graph + The processed object is a custom object + + + + Return an alternate representation of the specified dictionary that serializes the same JSON, except + that any contained properties that cannot be evaluated are treated as having the value null. + + + + + + + + Return an alternate representation of the specified collection that serializes the same JSON, except + that any contained properties that cannot be evaluated are treated as having the value null. + + + + + + + + Return an alternate representation of the specified aggregate object that serializes the same JSON, except + that any contained properties that cannot be evaluated are treated as having the value null. + + The result is a dictionary in which all public fields and public gettable properties of the original object + are represented. If any exception occurs while retrieving the value of a field or property, that entity + is included in the output dictionary with a value of null. + + + + + + + + FormObject used in HtmlWebResponseObject + + + + + gets or private sets the Id property + + + + + gets or private sets the Method property + + + + + gets or private sets the Action property + + + + + gets or private sets the Fields property + + + + + constructor for FormObject + + + + + + + + FormObjectColletion used in HtmlWebResponseObject + + + + + Gets the FormObject from the key + + + + + + + JsonObject class + + + + + Convert a Json string back to an object + + + + + + + + Construct the Useragent string + + + + + Useragent string for InternetExplorer (9.0) + + + + + Useragent string for Firefox (4.0) + + + + + Useragent string for Chrome (7.0) + + + + + Useragent string for Opera (9.0) + + + + + Useragent string for Safari (5.0) + + + + + Microsoft.PowerShell.Commands.WebResponse has a public property RawContentStream + which is of type MemoryStream. We shipped like that in PowerShell 3. Creating + this class as a wrapper to MemoryStream to lazily initialize. Otherwise, the + content will unnecessarily be read even if there are no consumers for it. + + + + + + + + + Owner cmdlet if any + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Saves content from stream into filePath. + Caller need to ensure postion is properly set. + + + + + + + + WebCmdletElementCollection for elements in html web responses + + + + + Finds the element with name or id + + + + + + + Finds the element by id + + + + + + + Finds the element by name + + + + + + + enums for web request method. + + + + + Default method + + + + + GET method + + + + + HEAD method + + + + + POST method + + + + + PUT method + + + + + DELETE method + + + + + TRACE method + + + + + OPTIONS method + + + + + MERGE method + + + + + PATCH method + + + + + WebRequestSession for holding session infos. + + + + + gets or sets the Header property + + + + + gets or sets the Cookies property + + + + + gets or sets the UseDefaultCredentials property + + + + + gets or sets the Credentials property + + + + + gets or sets the Certificates property + + + + + gets or sets the UserAgent property + + + + + gets or sets the Proxy property + + + + + gets or sets the RedirectMax property + + + + + Construct a new instance of a WebRequestSession object. + + + + + Add a X509Certificate to the Certificates collection. + + The certificate to be added. + + + + Response object for html content without DOM parsing + + + Response object for html content without DOM parsing + + + + + gets or protected sets the Content property + + + + + gets the Fields property + + + + + gets the Links property + + + + + gets the Images property + + + + + Reads the response content from the web response. + + + + + Constructor for HtmlWebResponseObject + + + + + + Constructor for HtmlWebResponseObject with memory stream + + + + + + + Response object for html content + + + Response object for html content + + + + + gets or protected sets the Content property + + + + + gets the ParsedHtml property + + + + + gets the Forms property + + + + + gets the Fields property + + + + + gets the Links property + + + + + gets the Images property + + + + + gets the Scripts property + + + + + gets the Elements property + + + + + Reads the response content from the web response. + + + + + Dispose the the instance of the class. + + + + + Finalizer to free the COM objects. + + + + + Constructor for HtmlWebResponseObject + + + + + + + Constructor for HtmlWebResponseObject with memory stream + + + + + + + + The Invoke-RestMethod command + This command makes an HTTP or HTTPS request to a web service, + and returns the response in an appropriate way. + Intended to work against the wide spectrum of "RESTful" web services + currently deployed across the web. + + + + + gets or sets the parameter Method + + + + + enum for rest return type. + + + + + Return type not defined in reponse, + best effort detect + + + + + Json return type + + + + + Xml return type + + + + + Process the web reponse and output corresponding objects. + + + + + + Base class for Invoke-RestMethod and Invoke-WebRequest commands. + + + Base class for Invoke-RestMethod and Invoke-WebRequest commands. + + + + + gets or sets the parameter UseBasicParsing + + + + + gets or sets the Uri property + + + + + gets or sets the Session property + + + + + gets or sets the SessionVariable property + + + + + gets or sets the Credential property + + + + + gets or sets the UseDefaultCredentials property + + + + + gets or sets the CertificateThumbprint property + + + + + gets or sets the Certificate property + + + + + gets or sets the UserAgent property + + + + + gets or sets the DisableKeepAlive property + + + + + gets or sets the TimeOut property + + + + + gets or sets the Headers property + + + + + gets or sets the RedirectMax property + + + + + gets or sets the Method property + + + + + gets or sets the Proxy property + + + + + gets or sets the ProxyCredential property + + + + + gets or sets the ProxyUseDefaultCredentials property + + + + + gets or sets the Body property + + + + + gets or sets the ContentType property + + + + + gets or sets the TransferEncoding property + + + + + gets or sets the InFile property + + + + + keep the original file path after the resolved provider path is + assigned to InFile + + + + + gets or sets the OutFile property + + + + + gets or sets the PassThrough property + + + + + Verifies that Internet Explorer is available, and that its first-run + configuration is complete. + + True if we should try to access IE's COM object. Not + needed if an HtmlDocument will be created shortly. + + + + Read the supplied WebResponse object and push the + resulting output into the pipeline. + + Instance of a WebResponse object to be processed + + + + the WebRequest we will GetResponse for. + + + + + the main execution method for cmdlets derived from WebRequestPSCmdlet. + + + + + Implementing ^C, after start the BeginGetResponse + + + + + Call back method for BeginGetResponse + + + + + + Call back method for timeout + + + + + + + Sets the ContentLength property of the request and writes the specified content to the request's RequestStream. + + The WebRequest who's content is to be set + A byte array containing the content data. + The number of bytes written to the requests RequestStream (and the new value of the request's ContentLength property + + Because this function sets the request's ContentLength property and writes content data into the requests's stream, + it should be called one time maximum on a given request. + + + + + Sets the ContentLength property of the request and writes the specified content to the request's RequestStream. + + The WebRequest who's content is to be set + A String object containing the content data. + The number of bytes written to the requests RequestStream (and the new value of the request's ContentLength property + + Because this function sets the request's ContentLength property and writes content data into the requests's stream, + it should be called one time maximum on a given request. + + + + + Sets the ContentLength property of the request and writes the specified content to the request's RequestStream. + + The WebRequest who's content is to be set + A Stream object containing the content data. + The number of bytes written to the requests RequestStream (and the new value of the request's ContentLength property + + Because this function sets the request's ContentLength property and writes content data into the requests's stream, + it should be called one time maximum on a given request. + + + + + The web request state is used when place asynchronous call to get response of a web request. + + + + + The timeout state is used when the request is a http request and need to timeout + + + + + WebResponseObject + + + WebResponseObject + + + + + gets or protected sets the Content property + + + + + gets the StatusCode property + + + + + gets the StatusDescription property + + + + + gets the RawContentStream property + + + + + gets the RawContentLength property + + + + + gets or protected sets the RawContent property + + + + + Reads the response content from the web response. + + + + + Returns the string representation of this web response. + + The string representation of this web response. + + + + gets or sets the BaseResponse property + + + + + gets the Headers property + + + + + Constructor for WebResponseObject + + + + + + Constructor for WebResponseObject with contentStream + + + + + + + The Invoke-RestMethod command + This command makes an HTTP or HTTPS request to a web server and returns the results. + + + + + Process the web reponse and output corresponding objects. + + + + + + Override abstract methods + + + + + Registers for an event on an object. + + + + + The object on which to subscribe + + + + + The event name to subscribe + + + + + Returns the object that generates events to be monitored + + + + + Returns the event name to be monitored on the input object + + + + + Registers for an event coming from the engine. + + + + + Parameter for an identifier for this event subscription + + + + + Returns the object that generates events to be monitored + + + + + Returns the event name to be monitored on the input object + + + + + Waits for a given event to arrive. + + + + + An identifier for this event subscription + + + + + If timeout is specified, the cmdlet will only wait for this number of seconds. + Value of -1 means never timeout. + + + + + Wait for the event to arrive + + + + + Handle Control-C + + + + + Gets events from the event queue. + + + + + An identifier for this event subscription + + + + + An identifier for this event subscription + + + + + Get the requested events + + + + + Removes an event from the event queue. + + + + + A source identifier for this event subscription + + + + + An identifier for this event subscription + + + + + Remove the event from the queue + + + + + Lists all event subscribers. + + + + + An identifier for this event subscription + + + + + An identifier for this event subscription + + + + + Also show supporting events + + + + + Get the subscribers + + + + + Unregisters from an event on an object. + + + + + An identifier for this event subscription + + + + + An identifier for this event subscription + + + + + Flag that determines if we should include subscriptions used to support + other subscriptions + + + + + Unsubscribe from the event + + + + + Generates a new event notification. + + + + + Adds an event to the event queue + + + + + Data relating to this event + + + + + Data relating to this event + + + + + Data relating to this event + + + + + Add the event to the event queue + + + + + A cmdlet that gets the TraceSource instances that are instantiated in the process + + + + + Gets or sets the category parameter which determines + which trace switch to get. + + + + + + Gets the PSTraceSource for the specified category + + + + + This subclass of TraceListener allows for the trace output + coming from a System.Management.Automation.TraceSwitch + to be passed to the Msh host's RawUI methods. + + + + This trace listener cannot be specified in the app.config file. + It must be added through the add-tracelistener cmdlet. + + + + + + Default constructor used if no. + + + + + Closes the TraceListenerDialog so that it no longer + receives trace output. + + + + true if the TraceListener is being disposed, false + otherwise. + + + + + + Closes the dialog and then calls the base class Close + + + + + Sends the given output string to the host for processing + + + The trace output to be written + + + + + + Sends the given output string to the host for processing + + + The trace output to be written + + + + + The host interface to write the debug line to. + + + + + A cmdlet that sets the properties of the TraceSwitch instances that are instantiated in the process + + + + + The TraceSource parameter determines which TraceSource categories the + operation will take place on. + + + + + + The flags to be set on the TraceSource + + + + + + The parameter which determines the options for output from the + trace listeners. + + + + + + Adds the file trace listener using the specified file + + + + + + Force parameter to control read-only files + + + + + If this parameter is specified the Debugger trace listener + will be added. + + + + + + If this parameter is specified the Msh Host trace listener + will be added. + + + + + + If set, the specified listeners will be removed regardless + of their type. + + + + + + If set, the specified file trace listeners will be removed. + + + + + + Determines if the modified PSTraceSource should be written out. + Default is false. + + + + + + Sets the TraceSource properties + + + + + A base class for cmdlets that has helper methods for globbing + trace source instances + + + + + Gets the matching PSTraceSource instances for the + specified patterns. + + + + The patterns used to match the PSTraceSource name. + + + + If true and the pattern does not contain wildcard patterns and no + match is found, then WriteError will be called. + + + + A collection of the matching PSTraceSource instances. + + + + + + Gets the matching PSTraceSource instances for the + specified patterns. + + + + The patterns used to match the PSTraceSource name. + + + + If true and the pattern does not contain wildcard patterns and no + match is found, then WriteError will be called. + + + + The patterns for which a match was not found. + + + + A collection of the matching PSTraceSource instances. + + + + + + A cmdlet that traces the specified categories and flags for the duration of the + specified expression. + + + + + This parameter specifies the current pipeline object + + + + + The TraceSource parameter determines which TraceSource categories the + operation will take place on. + + + + + + The flags to be set on the TraceSource + + + + + + The parameter for the expression that should be traced. + + + + + + The parameter for the expression that should be traced. + + + + + + When set, this parameter is the arguments to pass to the command specified by + the -Command parameter + + + + + The parameter which determines the options for output from the + trace listeners. + + + + + + Adds the file trace listener using the specified file + + + + + + Force parameter to control read-only files + + + + + If this parameter is specified the Debugger trace listener + will be added. + + + + + + If this parameter is specified the Msh Host trace listener + will be added. + + + + + + Gets the PSTraceSource instances that match the names specified. + + + + + Executes the expression. + + Note, this was taken from apply-expression + + + + + Finishes running the command if specified and then sets the + tracing options and listeners back to their original values. + + + + + Ensures that the sub-pipeline we created gets stopped as well. + + + + + + Resets the TraceSource flags back to their original value and restores + the original TraceListeners. + + + + + This class acts a pipe redirector for the sub-pipeline created by the Trace-Command + cmdlet. It gets attached to the sub-pipelines success or error pipeline and redirects + all objects written to these pipelines to trace-command pipeline. + + + + + + Get the wait handle signaled when buffer space is available + in the underlying stream. + + + + + Check if the stream is open for further writes. + + true if the underlying stream is open, otherwise; false. + + Attempting to write to the underlying stream if IsOpen is false throws + an . + + + + + Returns the number of objects in the underlying stream + + + + + Get the capacity of the stream + + + The capacity of the stream. + + + The capacity is the number of objects that stream may contain at one time. Once this + limit is reached, attempts to write into the stream block until buffer space + becomes available. + + + + + Close the stream + + + Causes subsequent calls to IsOpen to return false and calls to + a write operation to throw an ObjectDisposedException. + All calls to Close() after the first call are silently ignored. + + + The stream is already disposed + + + + + Flush the data from the stream. Closed streams may be flushed, + but disposed streams may not. + + + The underlying stream is disposed + + + + + Write a single object into the underlying stream + + The object to add to the stream + + One, if the write was successful, otherwise; + zero if the stream was closed before the object could be written, + or if the object was AutomationNull.Value. + + + The underlying stream is closed + + + + + Write objects to the underlying stream + + object or enumeration to read from + + If enumerateCollection is true, and + is an enumeration according to LanguagePrimitives.GetEnumerable, + the objects in the enumeration will be unrolled and + written seperately. Otherwise, + will be written as a single object. + + The number of objects written + + The underlying stream is closed + + + contains AutomationNull.Value + + + + + A base class for the trace cmdlets that allow you to specify + which trace listeners to add to a TraceSource + + + + + The TraceSource parameter determines which TraceSource categories the + operation will take place on. + + + + + + The flags to be set on the TraceSource + + + + + + True if the Options parameter has been set, or false otherwise. + + + + + The parameter which determines the options for output from the + trace listeners. + + + + + + True if the TraceOptions parameter was specified, or false otherwise + + + + + Adds the file trace listener using the specified file + + + + + + Property that sets force parameter. This will clear the + read-only attribute on an existing file if present. + + + Note that we do not attempt to reset the read-only attribute. + + + + + If this parameter is specified the Debugger trace listener + will be added. + + + + + + If this parameter is specified the Msh Host trace listener + will be added. + + + + + + Adds the console, debugger, file, or host listener + if requested. + + + + + + The file streams that were open by this command + + + + + + Removes the tracelisteners from the specified trace sources + + + + + + Sets the trace listener options based on the ListenerOptions parameter + + + + + Sets the flags for all the specified TraceSources + + + + + + Turns on tracing for the TraceSources, flags, and listeners defined by + the parameters + + + + + Resets tracing to the previous level for the TraceSources defined by the parameters. + Note, TurnOnTracing must be called before calling ResetTracing or else all + TraceSources will be turned off. + + + + + Clears the store TraceSource state. + + + + + Show-Command displays a GUI for a cmdlet, or for all cmdlets if no specific cmdlet is specified. + + + + + Set to true when ProcessRecord is reached, since it will allways open a window + + + + + Determines if the command should be sent to the pipeline as a string instead of run. + + + + + Uses ShowCommandProxy to invoke WPF GUI object. + + + + + Data container for all cmdlets. This is populated when show-command is called with no command name. + + + + + List of modules that have been loaded indexed by module name + + + + + Record the EndProcessing error. + + + + + Field used for the CommandName parameter. + + + + + Field used for the Height parameter. + + + + + Field used for the Width parameter. + + + + + Field used for the NoCommonParameter parameter. + + + + + A value indicating errors should not cause a message window to be displayed + + + + + Object used for ShowCommand with a command name that holds the view model created for the command + + + + + Finalizes an instance of the ShowCommandCommand class + + + + + Gets or sets the command name. + + + + + Gets or sets the Width. + + + + + Gets or sets the Width. + + + + + Gets or sets a value indicating Common Parameters should not be displayed + + + + + Gets or sets a value indicating errors should not cause a message window to be displayed + + + + + Gets or sets a value indicating the command should be sent to the pipeline as a string instead of run + + + + + Executes a PowerShell script, writing the output objects to the pipeline. + + Script to execute + + + + Dispose method in IDisposeable + + + + + Initialize a proxy instance for show-command. + + + + + ProcessRecord with or without CommandName. + + + + + Optionally displays errors in a message + + + + + StopProcessing is called close the window when user press Ctrl+C in the command prompt. + + + + + Runs the script in a new PowerShell instance and hooks up error stream to pottentlially display error popup. + This method has the inconvenience of not showing to the console user the script being executed. + + script to be run + + + + Issues an error when this.commandName was not found + + + + + Issues an error when there is more than one command matching this.commandName + + + + + Called from CommandProcessRecord to run the command that will get the CommandInfo and list of modules + + command to be retrieved + list of loaded modules + + + + ProcessRecord when a command name is specified. + + true if there was no exception processing this record + + + + ProcessRecord when a command name is not specified. + + true if there was no exception processing this record + + + + Waits untill the window has been closed answering HelpNeeded events + + + + + Writes the output of a script being run into the pipeline + + output collection + output event + + + + Writes the errors of a script being run into the pipeline + + error collection + error event + + + + Implements IDisposable logic + + true if being called from Dispose + + + + Wraps interop code for console input buffer + + + + + Constant used in calls to GetStdHandle + + + + + Adds a string to the console input buffer + + string to add to console input buffer + true to add Enter after the string + true if it was succesfull in adding all characters to console input buffer + + + + Gets the console handle + + which console handle to get + the console handle + + + + Writes to the console input buffer + + console handle + inputs to be written + number of inputs to be written + returned number of inputs actually written + 0 if the function fails + + + + A record to be added to the console buffer + + + + + The proper event type for a KeyEvent KEY_EVENT_RECORD + + + + + input buffer event type + + + + + The actual event. The original structure is a union of many others, but this is the largest of them + And we don't need other kinds of events + + + + + Sets the necessary fields of for a KeyDown event for the + + input record to be set + character to set the record with + + + + Type of INPUT_RECORD which is a key + + + + + true for key down and false for key up, but only needed if wVirtualKeyCode is used + + + + + repeat count + + + + + virtual key code + + + + + virtual key scan code + + + + + character in input. If this is specified, wVirtualKeyCode, and others don't need to be + + + + + State of keys like Shift and control + + + + + Help show-command create WPF object and invoke WPF windows with the + Microsoft.PowerShell.Commands.ShowCommandInternal.ShowCommandHelperhelp type defined in Microsoft.PowerShell.GraphicalHost.dll + + + + + Implements a facade around CommandInfo and its deserialized counterpart + + + + + Creates an instance of the ShowCommandCommandInfo class based on a CommandInfo object + + + + The object to wrap. + + + + + Creates an instance of the ShowCommandCommandInfo class based on a PSObject object + + + + The object to wrap. + + + + + Builds a strongly typed IEnumerable{object} out of an IEnumerable + + + + The object to enumerate. + + + + + A string representing the definition of the command. + + + + + A string representing module the command belongs to. + + + + + A reference to the module the command came from. + + + + + An enumeration of the command types this command belongs to. + + + + + A string representing the definition of the command. + + + + + A string representing the definition of the command. + + + + + Implements a facade around PSModuleInfo and its deserialized counterpart + + + + + Creates an instance of the ShowCommandModuleInfo class based on a CommandInfo object + + + + The object to wrap. + + + + + Creates an instance of the ShowCommandModuleInfo class based on a PSObject object + + + + The object to wrap. + + + + + Gets the name of this module + + + + + Implements a facade around ShowCommandParameterInfo and its deserialized counterpart + + + + + Creates an instance of the ShowCommandParameterInfo class based on a CommandParameterInfo object + + + + The object to wrap. + + + + + Creates an instance of the ShowCommandParameterInfo class based on a PSObject object + + + + The object to wrap. + + + + + Gets the name of the parameter. + + + + + True if the parameter is dynamic, or false otherwise. + + + + + Gets whether the parameter can take values from the incoming pipeline object. + + + + + Gets the type of the parameter. + + + + + The possible values of this parameter + + + + + Gets whether the parameter has a parameter set. + + + + + Gets the position in which the parameter can be specified on the command line + if not named. If the returned value is int.MinValue then the parameter must be named. + + + + + Implements a facade around CommandParameterSetInfo and its deserialized counterpart + + + + + Creates an instance of the ShowCommandParameterSetInfo class based on a CommandParameterSetInfo object + + + + The object to wrap. + + + + + Creates an instance of the ShowCommandParameterSetInfo class based on a PSObject object + + + + The object to wrap. + + + + + Gets the name of the parameter set + + + + + Gets whether the parameter set is the default parameter set. + + + + + Gets the parameter information for the parameters in this parameter set. + + + + + Implements a facade around ShowCommandParameterInfo and its deserialized counterpart + + + + + Creates an instance of the ShowCommandParameterType class based on a Type object + + + + The object to wrap. + + + + + Creates an instance of the ShowCommandParameterType class based on a Type object + + + + The object to wrap. + + + + + The full name of the outermost type + + + + + Whether or not this type is an enum + + + + + Whether or not this type is an dictionary + + + + + Whether or not this enum has a flag attribute + + + + + Whether or not this type is an array type + + + + + Gets the inner type, if this corresponds to an array type + + + + + Whether or not this type is a string + + + + + Whether or not this type is an script block + + + + + Whether or not this type is a bool + + + + + Whether or not this type is a switch parameter + + + + + If this is an enum value, return the list of potential values + + + + + Defines the ConvertFrom-String cmdlet. + + + /// Usage: + Import-Module 'D:\documents\Visual Studio Projects\ParseString\bin\debug\ConvertFrom-String.dll' + gc -Raw {inputFile} | ConvertFrom-String -TemplateFile {markupFile} [| sort [-desc] {propertyName} + gc -Raw {inputFile} | ConvertFrom-String -TemplateFile {markupFile} ParameterNames AddressStruct=Address,A=B [| sort [-desc] {propertyName} + + Various formatting options... + ... | format-table -autosize + ... | format-custom -depth 3 + + Basic flow is simple: + ProcessRecord is called by PS + This calls WriteObject - using the override to allow PS to enumerate objects + + + + + Gets or sets the Delimiter parameter + + + + + Gets or sets the property name mapping (used for structs) + + + + + The name of the file containing the template markup. + + + + + The content of the template markup + + + + + Set whether extract the properties' extentText + + + + + Write the programs to the template file + + + + + Gets or sets the InputObject parameter + + + + + To support stream reading we build this up in ProcessRecord then process it in EndProcessing. + + + + + Begin process incoming objects + + + + + To use UpdateTemplate, users need t select a file + + + + + Process incoming objects + + + + + Output results + + + + + Defines the ConvertString cmdlet. + + + + + The input output examples for Flashfill + User can pass a single string with the pattern "input example = output example" + Or user can pass a list of psobjects with before and after properties + + + + + Gets or sets the InputObject parameter + + + + + Begin processing + + + + + Process incoming objects + + + + + It parses the content of the example in the form of input=output + + + + + + + Checks if the example is of the type "input value = output value" + + + + + + This class is the highest element in the schema, representing the entire file. + + + + + A generic converter interface exposing the name for retrieving it. + + + + + The name of this converter + + + + + Protected constructor. + + + + + + Generic ConvertSchemaElement factory exposing only the creation methods used in different parse methods (grammar and whole program). + It does not refer to the child regions. + + + + + + + Class to extend to create conversion rules between regions and extraction programs. + It can eventually convert the same region to iself, e.g. for removing clutter in input. + + The type of extraction program visible to the parent + The type of region that the parent sees + The type of the extraction program of the child + The type of region used by + + + + Method to convert the parent region to the child region. + Many converters can convert the same region to another one. + + + + + + + Returns the child program extraction learner. + + + + + + Private constructor used in Create and CreateAndParseChildInternal + + + + + + + + + + Parses a child, calling the SchemaElement.Parse method. + + The element in xml + The list of converters + The way programs are formatted + A way to retrieve the program set from the xml element, if any + + + + + Creates a ConvertSchemaElement and parse its provided child with its program and children in xml format. + + Name + The parent of the returned element + If this element is nullable + The learner of the Parent's region and Program Extraction + The child in xml + The list of available converters + The way the programs are serialized (xml or HumanReadable) + The ConvertSchemaElement + + + + Creates a ConvertSchemaElement for a top-down creation. + + Name + The parent of the returned element + If this element is nullable + The learner of the Parent's region and Program Extraction + + + + + Creates and element and parses its child (not programs) using the SchemaGrammar.Parse method. + + The name of the convert schema element. Can be different from the name of the converter + The child in xml format + If this element is nullable + The learner of the parent of the returned ConvertSchemaElement + The list of converters + The ConvertSchemaElement + + + + Allows one schema element of type Child be part of a schema element of type Parent + + + + + + + + + Bottom-up constructor of ConvertSchemaElement. + Used to learn programs from examples. + + The converter + The name of this ConvertSchemaElement. Can be different from the converter's name + The child element already constructed + If this element is nullable + The learner. + + + + Top-down constructor of StructSchemaElement + Used to parse programs. + + + + + + + + + + Top-down constructor of StructSchemaElement + Used to parse programs. + + + + + Top-down constructor of SchemaElement + Used to parse programs. + + + + + + + + + Sibling method to top-down build this SchemaElement + + + + + + Store the execution cache of the kth program in Programs under a string + + + + + The node that serves as a boundary. + This node is not neccessarily the Parent. + It can be any ancestor (including \bot). + + + + + If the program extracting this node is a sequence or a substring. + + + + + The top field extraction programs for this node. + + + + + All field extraction programs for this node. + + + + + An even handler when this schema finishes to execute. + + + + + Returns the value computed by the hierarchical application of the instance. + + + + + Parses an xml element and returns a SchemaElement. + + The code to parse as XElement + + + + If the programs are formatted in XML or in human-readable format. + + + + + + Parses an xml element in a string and returns the corresponding SchemaElement. + + + + + + Computes the references node and returns it. Computes whether this element will run for a SequenceTreeElement or just a field/struct. + + Returns true if this node is a sequence, false otherwise + + + + Build the execution tree for this element and its children. + + + + + Returns the absolute positioning of this label. + The boundaries of its parent can be retrieved when the parent is run. + + + + + Returns the top-level run of the referenced element. + + The whole string on which to run the parent. + + + + + Returns the absolute positions in the string of this program when all ancestor programs execute. + + The whole string + + + + Returns the top level run with the dependency to the parent. + + + + Execute the kth program of this element on the region . + + + + + This class represents a kth program of all learned programs of an element in a schema. + + + + + The class that represents the schema tree. Essentially a wrapper around a SchemaElement. + - Parsing functions to retrieve a schema from a string; + + + + + Return the node in the schema whose id is + + + + + Top-down constructor of StructSchemaElement + Used to parse programs. + + + + + + + + + Bottom-up constructor of StructSchemaElement. + Used to learn programs from examples. + + + + + Top-down constructor of StructSchemaElement + Used to parse programs. + + + + + Short-circuit so that this method can be run even without RunTree. + + + + + Return the singleton object wrapped by the sequence tree inside the boundaries. + There should be exactly one element, as this is used by implicit structs only. + + + + + Returns true if the given child/member is defining implicit boundaries. + + The child to test + + + + + Bottom-up constructor. + + + + + + + + + Top-down constructor of StructSchemaElement + Used to parse programs. + + + + + + + + + A Region is a data type commonly used in extraction tasks. + It refers to the type T which should be the subclass itself. + + + + + + Put the main region of mainRegion as the main region of this region. + In other words, update the pointer fo this region to the mainR + + The total region + + + + A wrapper around regions to record relation between regions (e.g. used in dependent negative examples) + One region is the input, and other dependent regions are stored in Outputs. + + The type of region it wraps + + + + Wrapper around a SchemaElement of the given type, used to perform learning on one element + + The program wrapper at the field or struct level + The type of regions on which this operates + The type of selector used by the method Select + + + + Creates a region from the input and a selector. + + + + + + + + Executes the schema program on the string . Returns the highlighting of the tree. + + + + + Execute the schema program on the string . + + + + + Learn an element interactively. We can repeatedly call this method (with an increasing number of + examples) to learn a field. Once we switch to a new field, we cannot call this method on + previously learned fields. + + + + + Learn an element interactively. We can repeatedly call this method (with an increasing number of + examples) to learn a field. Once we switch to a new field, we cannot call this method on + previously learned fields. + + + + + Learn an element interactively. We can repeatedly call this method (with an increasing number of + examples) to learn a field. Once we switch to a new field, we cannot call this method on + previously learned fields. + + + + + Learner for returning a sequence of schemaPrograms. + + The type of schema it should create + The type of extraction program + The type of the region used + The type of the selector + + + + Creates a region from the input and a selector. + + + + + + + + Learn schema program from multiple examples at once + + + + + Learn a schema program from a set of all examples of every field. + + + + + Learn schema program from multiple examples at once + + The custom learner + Schema in XML format + A list of specifications, each containing an input document and dictionaries with positive + and negative examples for fields to learn + Number of programs to learn + If true, the program set will be generated. + An array of converters + + + + + Learns a schema from one input file and positive/negative examples. + + Custom learner provided + Schema in XML format + A list of specifications, each containing an input document and dictionaries with positive + and negative examples for fields to learn + Number of programs to learn + If true, the program set will be generated. + An array of converters + + + + + + + + + + + + + + + + Number of programs to learn + If true, the program set will be generated. + An array of converters + + + + + This class represents a program to extract a substring or a sequence of substrings from a text file. + + + + + The flag indicates whether each region contains a substring or a sequence of substrings + + + + + The grammar symbol of the program + + + + + The ranking score (the higher the better) + + + + + Converts the to an XML element parseable to retrieve the program. + + + + + + Return the serialized program + + + + + When the length of the input file exceeds this number, FE takes every long time to learn. + If that is the case, we trim the input file, do the learning on the trimmed file, + and execute the learned program on the original file. + Reducing this number will make the learning faster, but the disadvantage is it will + potentially increase the number of examples, because we can only verify the output on a + (short) prefix of the file. + + + + + FlashMeta only learns k programs for each child. If all of these programs produce bad + output (e.g., has null), the "best" program is "after" these k. We learn extra programs + with the hope that these extra programs contain the best program. The disadvantage is + learning time is larger. + + + + + Learn k most likely substring programs from multiple field specs . + + + + + Learn k most likely substring programs from multiple field specs and regex specs. + + + + + Learn k most likely sequence programs from multiple sequence specs . + + + + + Learn k most likely sequence programs from multiple sequence specs and regex specs. + + + + + Learn the implicit negative examples for field spec. + If the specs contains A B C where only B has positive example, the entire input of A will become negative. + + + + + Learn a list of regexes that match on its right. The match should not pass + . If is set, will only return regexes that + that will have matches of length end - pos + + + + + Learn a list of regexes that match on its left. The match should not pass + . + + + + + Learn possible absolute positions from multiple examples, each of which contains + 1. A state + 2. The learning boundary + 3. A list of position examples + Additionally, we provide two parameters to specify whether we want forward and backward position + (i.e., positive or negative k). + + + + + Learn possible regex pairs from multiple examples, each of which contains + 1. A state + 2. The context + 3. The learning boundary + 4. A list of position examples + + + + + Learn possible k for regex positions from multiple examples, each of which contains + 1. A state + 2. The context + 3. The learning boundary + 4. The regex pair + 5. A list of position examples + Additionally, we provide two parameters to specify whether we want forward and backward position + (i.e., positive or negative k). + + + + + A regular expression is a sequence of tokens. We limit its length to 3 for performance reason. + + + + + + + + + + + + + + + + + + + + + Return all matching positions in a string + + + + + Return all matching positions within a range in a string + + + + + Return all matching positions within a range in a string + + + + + The ranking score of the regular expression. The higher the better. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Returns the associated complete regular expression. + Use this to let the user re-match this regular expression on his text. + + + + + + Returns the associated complete regular expression. + Use this to let the user re-match this regular expression on his text. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A token is a sequence of characters of a particular kind. + There are two kinds of token: static tokens (predefined) and dynamic tokens (string literal that are learned from + the context) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A position match contains a matching position and a matching length (of a match of tokens or regular expressions). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A token match is a token and its length. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The list that caches the values + + + + + + + + + + + + + Return the index span of the cached values within the range + + The beginning of the range + The end of the range + The index span of the cached values within the range + + + + + + + + + + + + Represent the context of tokens in extracting a particular string. + It contains the tokens (both static and dynamics) and their matches in the string. + Implemented as Singleton. + + + + + The (modified) string content + + + + + + + + + + + + + Determine the validity of the start position of the boundary. + True if this position is precise, which allows the program to make reference to the starting position. + + + + + Determine the validity of the end position of the boundary. + True if this position is precise, which allows the program to make reference to the ending position. + + + + + Represent the prefix regex of the field. Serve as an additional spec. + + + + + Represent the regex of the field. Serve as an additional spec. + + + + + Represent the suffix regex of the field. Serve as an additional spec. + + + + + All tokens in the context (both static and dynamic) + + + + + The flag indicates that we have populated the caches for static tokens. + + + + + Store all matches that start at a position + + + + + Store all matches of static tokens that start at a position. We need it to reset the cache to the new context. + + + + + Return true if there exist some tokens that match at . + Also return these token matches. + + + + + Return true if matches at the position . + Also return this match. + + + + + Store all matches that end at a position + + + + + Store all matches of static tokens that end at a position. We need it to reset the cache to the new context. + + + + + Return true if there exist some tokens whose match end at . + Also return these token matches. + + + + + Return true if the match of ends at the position . + Also return this match. + + + + + Store all matching position of all tokens + + + + + Store all matching position of static tokens + + + + + + + + + + + + + + + + + + + + + + + + + Learn the (possible) dynamic tokens wrt the positive and negative examples. + A dynamic token is a shared string that start/end at the beginning/end of the examples. + In case we have only one example, we need to guess the dynamic tokens. + Those are the words before/after the only example. + + + + + If is true, we find the shared string that starts from . + Otherwise, we find the shared string that ends at + + + + + Creates implicit bounds from bounds and parent run. Should be run from the whole input file. + + + + + + + + The root of the result tree. + + + + + The input text file EOL-normalized + + + + + The root of the property tree + + + + + The updated template with the learned programs + + + + + Class to cache programs from FlashExtractWrapper + If the programs were already generated for some template, it reuses these programs + + + + + Maximum number of cached program sets. A set of programs is the programs for a given template + + + + + Time for cleaning the caching + + + + + the programs are represented in a PropertyTree, each property has its respective program. + The dictionary key is the root property of each template file. + + + + + Queue for keeping the size of the dictionary up to MaxCachedPrograms + + + + + Only used by the unit tests. + + todo: add a fxCop remove warning for production + + + + Timer for cleaning the cache every five minutes + + + + + It has only one instance of the FlashExtractCache + + + + + Adds a new program set (PropertyTree) to the cache. If the cache is full, removes the first program set. + + + + + It cleans the cached programs every 5 minutes + + + + + it defines whether FE updates the template content with the learned program + + + + + original template text with markups and without the program section + + + + + Exception generated when FlashExtract cannot generate a program for + the provided input text. + + + + + Creates a ProgramNotFoundException + + + + + Creates a ProgramNotFoundException from a message and exception + + + + + + + Creates a ProgramNotFoundException from a message + + + + + + Creates a ProgramNotFoundException from a serialization context + + + + + + + Exception generated when FlashExtract cannot generate a program for + the provided input text. + + + + + Creates a ResultNotFoundException + + + + + Creates a ResultNotFoundException from a message and exception + + + + + + + Creates a ResultNotFoundException from a message + + + + + + Creates a ResultNotFoundException from a serialization context + + + + + + + All Spans in the file, in file order by Start. + it is using by the testing infraestructure + + + + + The parsed tree of Properties. + + + + + The text of the template file, with markup removed. + + + + + Original text of the template file without the program section + + + + + The starting line of the span in the markup file; used for error reporting. + + + + + The starting char (on the starting line) of the span in the markup file; used for error reporting + + + + + The start position in the stripped template file of the value for this span. + + + + + Provides 'set' functionality to the otherwise immutable base Span property, as we build this up + during parsing. + + + + + The type of the Span's data. + + + + + Any format string associated with the span's type. + + + + + Whether the Span is optional (i.e. missing values are supported). + + + + + If true, this is a structure; it contains nested Spans rather than a value. + + + + + If true, there are multiple occurrences of this property in the parent (or root). + + + + + Exception generated when FlashExtract cannot generate a program for + the provided input text. + + + + + Creates a TemplateParsingException + + + + + Creates a TemplateParsingException from a message and exception + + + + + + + Creates a TemplateParsingException from a message + + + + + + Creates a TemplateParsingException from a serialization context + + + + + + + The original text of the template file witout the learned program section + + + + + The array of lines of the file. + + + + + The file stripped of markup (including escapes). + + + + + Index of the current line in the markup file. + + + + + Index of the current char in the current markup line. + + + + + Index of the current character of the current line, not including by escaped chars and brackets. + + + + + The current FSA state. + + + + + Index of the curren span. + + + + + All Spans in the file, in file order by Start. + + + + + If it is true, it does not parse the embedded program section since it will be re-learned + + + + + The line of markup currently being processed. + + + + + The stack of Spans currently being processed; if there are nested spans then the stack depth is > 1. + + + + + The current span being processed, if any. + + + + + The nesting level within brackets. + + + + + The number of lines in the file. + + + + + Name of the Property; set by the UI or read from one of the persisted formats. + + + + + The type of the Property. + + + + + Any format string associated with the Property's type. // TODO doc: last one wins + + + + + Whether the Span is optional (i.e. missing values are supported). + + + + + If true, this is a structure; it contains nested Spans rather than a value. + + + + + If true, there are multiple occurrences of this property in the parent (or root). + + + + + This is a structure inferred from the layout rather than an explicitly selected region + containing nested regions. Used only by the UI. + + + + + Positive examples, either set by the UI or read from one of the persisted formats. + + + + + Positive examples, either set by the UI or read from one of the persisted formats. + + + + + The list of Spans associated with this property. + + + + + The hierarchical parent of this Property. + + + + + Indicates whether this is the root (pseudo)property of the PropertyTree. + + + + + + + + + + Add a child to our list of children. + + + + + Creates a PropertyTree populated with Properties that are explicit structs and Spans. + + + + + The tuple of positions; immutable after Span creation (except for ParserSpan). + + + + + The starting position (in non-markup terms) of the Span. Syntactic sugar. + + + + + The ending position (in non-markup terms) of the Span. Syntactic sugar. + + + + + Whether the Span is a positive or negative example. + + + + + The Span's example value, as a string. + + + + + The Property for this Span (after processing the completed span hierarchy). + + + + + Children of this Span in the SpanTree + + + + + Determines if currentRegion contains the span and if not, increments the current parentRegionIndex + and keeps trying. This assumes the returned spans and parent regions are always in the same order. + + + + + Learns RR. + + + + + Learns K. + + + + + Returns the grammar rule associated with this node, or null otherwise. + + + + + Returns the value computed by the hierarchical application of the instance. + + + + + Applies a callback to each descendant, starting with itself. Returns this for chaining purposes. + + + + + Transforms a programNode to another using the given function. + Clones the programNode if the transformation returned null. + + + + + Applies a callback to each descendant, ending with itself + + + + + Represents a diagnostic that produces an error message similar to: "Referenced file not found: {0}." + + + + + Constructs a diagnostic that produces an error message similar to: "Referenced file not found: {0}." + + + + + Represents a diagnostic that produces an error message similar to: "Type {0} is not found in any of the referenced assemblies. Check that it is internal and is in scope of all imported namespaces." + + + + + Constructs a diagnostic that produces an error message similar to: "Type {0} is not found in any of the referenced assemblies. Check that it is internal and is in scope of all imported namespaces." + + + + + Represents a diagnostic that produces a warning message similar to: "Type {0} should be a internal static class." + + + + + Constructs a diagnostic that produces a warning message similar to: "Type {0} should be a internal static class." + + + + + Represents a diagnostic that produces an error message similar to: "Member {0} not found in the specified class {1}. Check that it is internal and static." + + + + + Constructs a diagnostic that produces an error message similar to: "Member {0} not found in the specified class {1}. Check that it is internal and static." + + + + + Represents a diagnostic that produces a warning message similar to: "Cannot load a reference from the file '{0}'. Currently supported references are: .NET assemblies (.dll/.exe), FlashMeta compiled grammars (.grammar.xml)." + + + + + Constructs a diagnostic that produces a warning message similar to: "Cannot load a reference from the file '{0}'. Currently supported references are: .NET assemblies (.dll/.exe), FlashMeta compiled grammars (.grammar.xml)." + + + + + Represents a diagnostic that produces an error message similar to: "Unknown external language: '{0}'." + + + + + Constructs a diagnostic that produces an error message similar to: "Unknown external language: '{0}'." + + + + + Represents a diagnostic that produces an error message similar to: "Symbol {0} was not found in the language {1}." + + + + + Constructs a diagnostic that produces an error message similar to: "Symbol {0} was not found in the language {1}." + + + + + Represents a diagnostic that produces an error message similar to: "Feature '{0}' was not found in the language {1}." + + + + + Constructs a diagnostic that produces an error message similar to: "Feature '{0}' was not found in the language {1}." + + + + + Represents a diagnostic that produces an error message similar to: "In the feature calculator {0}, return type {1} cannot be converted to the required feature type {2}." + + + + + Constructs a diagnostic that produces an error message similar to: "In the feature calculator {0}, return type {1} cannot be converted to the required feature type {2}." + + + + + Represents a diagnostic that produces an error message similar to: "No '{0}' feature calculator was found for the rule {1}. Please define a internal static function in the class {2} and mark it with [FeatureCalculator] attribute." + + + + + Constructs a diagnostic that produces an error message similar to: "No '{0}' feature calculator was found for the rule {1}. Please define a internal static function in the class {2} and mark it with [FeatureCalculator] attribute." + + + + + Represents a diagnostic that produces a warning message similar to: "No '{0}' member was found in the class {1} as a variable default for the feature '{2}'. {3} will be used instead." + + + + + Constructs a diagnostic that produces a warning message similar to: "No '{0}' member was found in the class {1} as a variable default for the feature '{2}'. {3} will be used instead." + + + + + Represents a diagnostic that produces an error message similar to: "Expected a learning info parameter of type IDictionary<string, object> as the first parameter." + + + + + Constructs a diagnostic that produces an error message similar to: "Expected a learning info parameter of type IDictionary<string, object> as the first parameter." + + + + + Represents a diagnostic that produces an error message similar to: "In nonterminal feature calculator {0}, parameter '{1}' has type {2}, expected a type derived from ProgramNode." + + + + + Constructs a diagnostic that produces an error message similar to: "In nonterminal feature calculator {0}, parameter '{1}' has type {2}, expected a type derived from ProgramNode." + + + + + Represents a diagnostic that produces an error message similar to: "Literal feature calculator {0} has {1} parameters, expected {2}." + + + + + Constructs a diagnostic that produces an error message similar to: "Literal feature calculator {0} has {1} parameters, expected {2}." + + + + + Represents a diagnostic that produces an error message similar to: "In feature '{0}' calculator {1}, parameter '{2}' has type {3}, expected {4}." + + + + + Constructs a diagnostic that produces an error message similar to: "In feature '{0}' calculator {1}, parameter '{2}' has type {3}, expected {4}." + + + + + Represents a diagnostic that produces an error message similar to: "Ambiguous '{0}' feature calculator for the rule {1}: cannot choose between {2} and {3}." + + + + + Constructs a diagnostic that produces an error message similar to: "Ambiguous '{0}' feature calculator for the rule {1}: cannot choose between {2} and {3}." + + + + + Represents a diagnostic that produces an error message similar to: "Circular symbol dependency detected: {0}." + + + + + Constructs a diagnostic that produces an error message similar to: "Circular symbol dependency detected: {0}." + + + + + Represents a diagnostic that produces an error message similar to: "No start symbols found. Please mark one of the nonterminals of the language as @start." + + + + + Constructs a diagnostic that produces an error message similar to: "No start symbols found. Please mark one of the nonterminals of the language as @start." + + + + + Represents a diagnostic that produces a warning message similar to: "More then one start symbol detected: {0}." + + + + + Constructs a diagnostic that produces a warning message similar to: "More then one start symbol detected: {0}." + + + + + Represents a diagnostic that produces a warning message similar to: "No input symbols found. Please mark one of the terminals of the language as @input." + + + + + Constructs a diagnostic that produces a warning message similar to: "No input symbols found. Please mark one of the terminals of the language as @input." + + + + + Represents a diagnostic that produces an error message similar to: "More then one input symbol detected: {0}." + + + + + Constructs a diagnostic that produces an error message similar to: "More then one input symbol detected: {0}." + + + + + Represents a diagnostic that produces an error message similar to: "In concept rule {0}, the set of formal parameters {1} on the left-hand side should be equal to the set of the unbound symbols {2} on the right-hand side." + + + + + Constructs a diagnostic that produces an error message similar to: "In concept rule {0}, the set of formal parameters {1} on the left-hand side should be equal to the set of the unbound symbols {2} on the right-hand side." + + + + + Represents a diagnostic that produces an error message similar to: "Symbol {0} has type {1}, but is initialized with a symbol {2}, which has type {3}" + + + + + Constructs a diagnostic that produces an error message similar to: "Symbol {0} has type {1}, but is initialized with a symbol {2}, which has type {3}" + + + + + Represents a diagnostic that produces an error message similar to: "No semantics found for the rule {0}. Expected a function with signature 'internal static {1} {0}({2})' in any of the semantics locations." + + + + + Constructs a diagnostic that produces an error message similar to: "No semantics found for the rule {0}. Expected a function with signature 'internal static {1} {0}({2})' in any of the semantics locations." + + + + + Represents a diagnostic that produces an error message similar to: "Ambiguous semantics for the rule {0}: cannot choose between {1} and {2}." + + + + + Constructs a diagnostic that produces an error message similar to: "Ambiguous semantics for the rule {0}: cannot choose between {1} and {2}." + + + + + Represents a diagnostic that produces an error message similar to: "Semantics function {0} returns {1}, expected {2}." + + + + + Constructs a diagnostic that produces an error message similar to: "Semantics function {0} returns {1}, expected {2}." + + + + + Represents a diagnostic that produces an error message similar to: "Invalid type {0} of symbol {1}: the concept '{2}' expects an argument of type {3} here." + + + + + Constructs a diagnostic that produces an error message similar to: "Invalid type {0} of symbol {1}: the concept '{2}' expects an argument of type {3} here." + + + + + Represents a diagnostic that produces an error message similar to: "Invalid type {0} of symbol {1}: the concept '{2}' returns a type {3} here." + + + + + Constructs a diagnostic that produces an error message similar to: "Invalid type {0} of symbol {1}: the concept '{2}' returns a type {3} here." + + + + + Represents a diagnostic that produces a warning message similar to: "Witness holder {0} is not found in any of the referenced assemblies. Check that it is a internal static class." + + + + + Constructs a diagnostic that produces a warning message similar to: "Witness holder {0} is not found in any of the referenced assemblies. Check that it is a internal static class." + + + + + Represents a diagnostic that produces a warning message similar to: "Tactic class {0} is not found in any of the referenced assemblies. Check that it is a internal static class." + + + + + Constructs a diagnostic that produces a warning message similar to: "Tactic class {0} is not found in any of the referenced assemblies. Check that it is a internal static class." + + + + + Represents a diagnostic that produces a warning message similar to: "Illegal witness function specification for the terminal rule {0}, ignored." + + + + + Constructs a diagnostic that produces a warning message similar to: "Illegal witness function specification for the terminal rule {0}, ignored." + + + + + Represents a diagnostic that produces an error message similar to: "Witness function {0} expects rule type {1} as its first parameter, but the rule {2} has type {3}, which cannot be converted to {1}." + + + + + Constructs a diagnostic that produces an error message similar to: "Witness function {0} expects rule type {1} as its first parameter, but the rule {2} has type {3}, which cannot be converted to {1}." + + + + + Represents a diagnostic that produces an error message similar to: "Expected a witness function with a signature deriving from (GrammarRule rule, int parameter, InductiveSpecification outerSpec, [, object userData] [, InductiveSpecification prereqs...]) -> InductiveSpecification." + + + + + Constructs a diagnostic that produces an error message similar to: "Expected a witness function with a signature deriving from (GrammarRule rule, int parameter, InductiveSpecification outerSpec, [, object userData] [, InductiveSpecification prereqs...]) -> InductiveSpecification." + + + + + Represents a diagnostic that produces an error message similar to: "Expected either a last parameter of type InductiveSpecification[], or last {0} parameters of types deriving InductiveSpecification as prerequisites." + + + + + Constructs a diagnostic that produces an error message similar to: "Expected either a last parameter of type InductiveSpecification[], or last {0} parameters of types deriving InductiveSpecification as prerequisites." + + + + + Represents a diagnostic that produces an error message similar to: "In the witness function {0}, the parameter specification is out of range of valid parameters for the body of the rule {1}." + + + + + Constructs a diagnostic that produces an error message similar to: "In the witness function {0}, the parameter specification is out of range of valid parameters for the body of the rule {1}." + + + + + Represents a result of a computation that can fail, along with a list of diagnostics, collected during a computation. + For a successful result, the property contains the result of computation, null otherwise. + + + + + Given a parameter index in the DSL operator, returns the position of the corresponding child in the concept implementation + as a coordinate path. + + The index of the requested child in the list of DSL operator parameters + + + + + Describe usage properties of a parameter of a concept rule as an argument in its concept implementation. + + + + + How the formal parameter corresponds to the concept argument? It can be either used directly as an argument + symbol, or passed on to the argument symbol as a child (if the argument symbol is a lambda symbol or another + concept). + + + + + The semantics of a black-box rule: ?f(N1, ..., N?)? s = f(?N1? s, ..., ?N?? s). + Such a function does not change its given state s during execution, therefore it is not given this state explicitly. + + The values of the evaluated argument nodes: [?N1? s, ..., ?N?? s]. + + + + + Constructs a valid State with which this rule should have been invoked to produce the given + states and values for its parameter invocations. + + Null if the given states are incompatible with the rule logic; a valid State otherwise. + + + + Optional user-defined class that holds witness functions for the parameters of this rule. + + + + + A list of recursion limits for each body parameter; "nothing" if the parameter is not recursive, or recursion is unlimited. + + + + + + + + + + + + + + + + + + + + + True if the produced specification does not guarantee compositional equivalence of the learned program spaces + for the rule parameters, and the composed programs should be verified. + + + + + The format of serialization of AST into strings. Used in and . + + + + + Returns a set of all possible programs in the grammar that this symbol can expand to, or if + the set is undefined due to unlimited recursion or unrestricted literals without explicit value generators on the leaf level. + + + + + Produces a copy of this where the provided inputs are transformed with a given + transformer function , and the associated constrains on the inputs remain the same. + + + + + An output of the program is a set of objects. + A specification provides a subset of the output on a given input. An invocation of a program on the same input + is valid if its output is a superset of the example output. + + + + + An output of the program is a set of objects. + A specification provides a subset of the output on a given input an a set of elements that are not part of the + output. + An invocation of a program on the same input is valid if its output is a superset of the example output. + + + + + A trivial specification that stores no inputs, and is satisfied by any program. + + + + + Starting at this program set, traverse the tree of program sets among the first children for which the predicate is true. + Returns the last program set for which the predicate is true but false for all of its children. + + A function telling if the program set is the one we are looking for + Optional: A function telling if we should traverse the set's children + The last program set for which the predicate is true but false for all of its children + + + + Intersects this program set with another program set , producing a concise + representation of the program set that consists of all programs in both this program set + and the . + + + + + The minimum size of a program set that will be represented as a version space algebra. + + + + + Returns the ProgramSet corresponding to the child; given that this ProgramSet can represent the parent. + + The parent (member of this ProgramSet) + The index of child in the parent's children + + + + Returns true iff this instance contains the given program as a set. + + + + + Returns the maximal number of free variables that can appear in any path from the root to leaves, + or if it can be infinite. + + + + + Wraps this object instance into an IEnumerable<T> + consisting of a single item. + + Type of the wrapped object. + The object to wrap. + + An IEnumerable<T> consisting of a single item. + + + + + Converts a C# type alias or a type name into the corresponding .NET type, using standard C# resolution rules. + + + + + Creates a fast typed delegate from a runtime method information. The delegate is assumed to be of a kind + Func<T1, T2, ..., Tk, object[], object>. In other words, the delegate takes several first parameters + directly, and the rest via the residual object[] array (usually specified as a variable-length parameter on + the calling side). The technique is explained at + https://msmvps.com/blogs/jon_skeet/archive/2008/08/09/making-reflection-fly-and-exploring-delegates.aspx#1644203 + + A delegate of a kind Func<T1, T2, ..., Tk, object[], object> + MethodInfo of an external method to convert. Must be static and consistent with TDelegate. + + + + Creates a compiled delegate similarly to , but from an instance method instead of a shared + method. + + The delegate type. The first argument in its signature has to be an instance to call upon. + + + + A dictionary that holds multiple items with the same key. + + + + + + + + + + + + + Creates a "pythonic" slice of a string. See http://stackoverflow.com/questions/509211/pythons-slice-notation + + String to slice + Slice start, inclusive. Negative to count from the end of the string. + Slice end, exclusive. Negative to count from the end of the string. + Slice step. Positive for forward slicing direction, negative for backward. + + + + + Finds a set of longest common substrings in a set of strings + + Input set of strings + Minimum length of the substring + Split string beforeheand on line boundaries? + Maximum length of the substring + + + + + In a state the program produced the value . + + + + + The TopDown strategy, in which we need to explore various Tactics for RHS rule enumeration and invocation of + witness functions. + + + + + 0. If there are any preferred tactics for the rule, launch them first. Otherwise proceed to manual learning. + 1. Given a rule/spec, collect all witness functions for rule parameters that have been defined for this + rule/spec type. Some of them may be dependent on other witness functions. + 2. Build a dependency graph of witness functions. Any topsort of this graph is a valid computation path. + In future, we may consider exploring multiple combinations of witness functions and doing some kind of + local search on "whether this particular choice of parameter spec is productive for its learning". + 3. Make a topsort and calculate the parameters in order. + 4. Apply the specified combiner. By default it is the "combinatorial" combiner, but can also be + a "learn-and-verify" combiner, or any other one, if the user has specified it. + + + + + A task that consolidates all the information required for the learning API call: the symbol, specification, and additional request parameters. + + + + + The root symbol for which a caller wants to synthesize programs. + + + + + The specification that the synthesized programs have to satisfy. + + + + + Optional additional representative inputs, provided during the learning process + + + + + The number of times grammar symbols appeared in the synthesis call stack up to and including this call. + + + + + An optional restriction on the number of synthesized programs. + A caller may request only top-K programs according to the specified feature value. + + + + + An optional ranking feature for selecting top-k synthesized programs. + A caller may request only top-K programs according to the specified feature value. + + + + + Returns a union of all input states provided in the task: the ones embedded in the specification and the ones provided additionally. + + + + + Creates a parameter learning subtask from a given learning task, and updates the tracked recursion info. + + + + + Defined on a generic collection that hashes its contents using an . + + The type of element hashed in the collection. + + + + Gets the comparer used to obtain hash codes for the keys and check equality. + + + + + Defined on a generic collection that sorts its contents using an . + + The type of element sorted in the collection. + + + + Gets the comparer used to sort keys. + + + + + An adapter that allows a single foreach loop in C# to avoid + boxing an enumerator when possible, but fallback to boxing when necessary. + + The type of value to be enumerated. + The type of the enumerator struct. + + + + The enumerator object to use if not null. + + + + + The enumerator struct to use if is null. + + + This field must NOT be readonly because the field's value is a struct and must be able to mutate + in-place. A readonly keyword would cause any mutation to take place in a copy rather than the field. + + + + + Initializes a new instance of the struct + for enumerating over a strongly typed struct enumerator. + + The initialized enumerator struct. + + + + Initializes a new instance of the struct + for enumerating over a (boxed) enumerator. + + The initialized enumerator object. + + + + Gets the current enumerated value. + + + + + Moves to the next value. + + + + + Disposes the underlying enumerator. + + + + + Returns a copy of this struct. + + + This member is here so that it can be used in C# foreach loops. + + + + + An interface for binary tree nodes that allow our common enumerator to walk the graph. + + + + + Gets the depth of the tree below this node. + + + + + Gets a value indicating whether this node is empty. + + + + + Gets the number of non-empty nodes at this node and below. + + Thrown if the implementation does not store this value at the node. + + + + Gets the left branch of this node. + + + + + Gets the right branch of this node. + + + + + An interface for binary tree nodes that allow our common enumerator to walk the graph. + + The type of value for each node. + + + + Gets the value represented by the current node. + + + + + Gets the left branch of this node. + + + + + Gets the right branch of this node. + + + + + An internal non-generic interface implemented by ImmutableArray{T} + that allows for recognition of an ImmutableArray{T} instance and access + to its underlying array, without actually knowing the type of value + stored in it. + + + Casting to this interface requires a boxed instance of the ImmutableArray{T} struct, + and as such should be avoided. This interface is useful, however, where the value + is already boxed and we want to try to reuse immutable arrays instead of copying them. + ** This interface is INTENTIONALLY INTERNAL, as it gives access to the inner array. ** + + + + + Gets an untyped reference to the array. + + + + + An immutable key-value dictionary. + + The type of the key. + The type of the value. + + + + Gets an empty dictionary with equivalent ordering and key/value comparison rules. + + + + + Adds the specified key and value to the dictionary. + + The key of the entry to add. + The value of the entry to add. + The new dictionary containing the additional key-value pair. + Thrown when the given key already exists in the dictionary but has a different value. + + If the given key-value pair are already in the dictionary, the existing instance is returned. + + + + + Adds the specified key-value pairs to the dictionary. + + The pairs. + The new dictionary containing the additional key-value pairs. + Thrown when one of the given keys already exists in the dictionary but has a different value. + + + + Sets the specified key and value to the dictionary, possibly overwriting an existing value for the given key. + + The key of the entry to add. + The value of the entry to add. + The new dictionary containing the additional key-value pair. + + If the given key-value pair are already in the dictionary, the existing instance is returned. + If the key already exists but with a different value, a new instance with the overwritten value will be returned. + + + + + Applies a given set of key=value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + + The key=value pairs to set on the dictionary. Any keys that conflict with existing keys will overwrite the previous values. + An immutable dictionary. + + + + Removes the specified keys from the dictionary with their associated values. + + The keys to remove. + A new dictionary with those keys removed; or this instance if those keys are not in the dictionary. + + + + Removes the specified key from the dictionary with its associated value. + + The key to remove. + A new dictionary with the matching entry removed; or this instance if the key is not in the dictionary. + + + + Determines whether this dictionary contains the specified key-value pair. + + The key value pair. + + true if this dictionary contains the key-value pair; otherwise, false. + + + + + Searches the dictionary for a given key and returns the equal key it finds, if any. + + The key to search for. + The key from the dictionary that the search found, or if the search yielded no match. + A value indicating whether the search was successful. + + This can be useful when you want to reuse a previously stored reference instead of + a newly constructed one (so that more sharing of references can occur) or to look up + the canonical value, or a value that has more complete data than the value you currently have, + although their comparer functions indicate they are equal. + + + + + Determines whether the ImmutableDictionary<TKey,TValue> + contains an element with the specified value. + + + The value to locate in the ImmutableDictionary<TKey,TValue>. + The value can be null for reference types. + + + true if the ImmutableDictionary<TKey,TValue> contains + an element with the specified value; otherwise, false. + + + + + A list of elements that can only be modified by creating a new instance of the list. + + The type of element stored in the list. + + Mutations on this list generate new lists. Incremental changes to a list share as much memory as possible with the prior versions of a list, + while allowing garbage collection to clean up any unique list data that is no longer being referenced. + + + + + Gets an empty list that retains the same sort or unordered semantics that this instance has. + + + + + Searches for the specified object and returns the zero-based index of the + first occurrence within the range of elements in the ImmutableList<T> + that starts at the specified index and contains the specified number of elements. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + + The zero-based starting index of the search. 0 (zero) is valid in an empty + list. + + + The number of elements in the section to search. + + + The equality comparer to use in the search. + + + The zero-based index of the first occurrence of item within the range of + elements in the ImmutableList<T> that starts at index and + contains count number of elements, if found; otherwise, -1. + + + + + Searches for the specified object and returns the zero-based index of the + last occurrence within the range of elements in the ImmutableList<T> + that contains the specified number of elements and ends at the specified + index. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + The starting position of the search. The search proceeds from toward the beginning of this instance. + The number of elements in the section to search. + + The equality comparer to use in the search. + + + The zero-based index of the last occurrence of item within the range of elements + in the ImmutableList<T> that contains count number of elements + and ends at index, if found; otherwise, -1. + + + + + Adds the specified value to this list. + + The value to add. + A new list with the element added, or this list if the element is already in this list. + + + + Adds the specified values to this list. + + The values to add. + A new list with the elements added. + + + + Inserts the specified value at the specified index. + + The index at which to insert the value. + The element to insert. + The new immutable list. + + + + Inserts the specified values at the specified index. + + The index at which to insert the value. + The elements to insert. + The new immutable list. + + + + Removes the specified value from this list. + + The value to remove. + + The equality comparer to use in the search. + + A new list with the element removed, or this list if the element is not in this list. + + + + Removes all the elements that match the conditions defined by the specified + predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to remove. + + + The new list. + + + + + Removes the specified values from this list. + + The items to remove if matches are found in this list. + + The equality comparer to use in the search. + + + A new list with the elements removed. + + + + + Removes the specified values from this list. + + The starting index to begin removal. + The number of elements to remove. + + A new list with the elements removed. + + + + + Removes the element at the specified index. + + The index. + A new list with the elements removed. + + + + Replaces an element in the list at a given position with the specified element. + + The position in the list of the element to replace. + The element to replace the old element with. + The new list -- even if the value being replaced is equal to the new value for that position. + + + + Replaces the first equal element in the list with the specified element. + + The element to replace. + The element to replace the old element with. + + The equality comparer to use in the search. + + The new list -- even if the value being replaced is equal to the new value for that position. + Thrown when the old value does not exist in the list. + + + + An interface that describes the methods that the ImmutableList and ImmutableList+Builder types have in common. + + The type of element in the collection. + + + + Converts the elements in the current ImmutableList<T> to + another type, and returns a list containing the converted elements. + + + A System.Converter<TInput,TOutput> delegate that converts each element from + one type to another type. + + + The type of the elements of the target array. + + + A ImmutableList<T> of the target type containing the converted + elements from the current ImmutableList<T>. + + + + + Performs the specified action on each element of the list. + + The System.Action<T> delegate to perform on each element of the list. + + + + Creates a shallow copy of a range of elements in the source ImmutableList<T>. + + + The zero-based ImmutableList<T> index at which the range + starts. + + + The number of elements in the range. + + + A shallow copy of a range of elements in the source ImmutableList<T>. + + + + + Copies the entire ImmutableList<T> to a compatible one-dimensional + array, starting at the beginning of the target array. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + + + + Copies the entire ImmutableList<T> to a compatible one-dimensional + array, starting at the specified index of the target array. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + + The zero-based index in array at which copying begins. + + + + + Copies a range of elements from the ImmutableList<T> to + a compatible one-dimensional array, starting at the specified index of the + target array. + + + The zero-based index in the source ImmutableList<T> at + which copying begins. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + The zero-based index in array at which copying begins. + The number of elements to copy. + + + + Determines whether the ImmutableList<T> contains elements + that match the conditions defined by the specified predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to search for. + + + true if the ImmutableList<T> contains one or more elements + that match the conditions defined by the specified predicate; otherwise, + false. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the first occurrence within the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The first element that matches the conditions defined by the specified predicate, + if found; otherwise, the default value for type T. + + + + + Retrieves all the elements that match the conditions defined by the specified + predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to search for. + + + A ImmutableList<T> containing all the elements that match + the conditions defined by the specified predicate, if found; otherwise, an + empty ImmutableList<T>. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the range of elements in the ImmutableList<T> that extends + from the specified index to the last element. + + The zero-based starting index of the search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the range of elements in the ImmutableList<T> that starts + at the specified index and contains the specified number of elements. + + The zero-based starting index of the search. + The number of elements in the section to search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the last occurrence within the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The last element that matches the conditions defined by the specified predicate, + if found; otherwise, the default value for type T. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the range of elements in the ImmutableList<T> that extends + from the first element to the specified index. + + The zero-based starting index of the backward search. + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the range of elements in the ImmutableList<T> that contains + the specified number of elements and ends at the specified index. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Determines whether every element in the ImmutableList<T> + matches the conditions defined by the specified predicate. + + + The System.Predicate<T> delegate that defines the conditions to check against + the elements. + + + true if every element in the ImmutableList<T> matches the + conditions defined by the specified predicate; otherwise, false. If the list + has no elements, the return value is true. + + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element + using the default comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + + The zero-based index of item in the sorted System.Collections.Generic.List<T>, + if item is found; otherwise, a negative number that is the bitwise complement + of the index of the next element that is larger than item or, if there is + no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + + + The default comparer System.Collections.Generic.Comparer<T>.Default cannot + find an implementation of the System.IComparable<T> generic interface or + the System.IComparable interface for type T. + + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element + using the specified comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements.-or-null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + + The zero-based index of item in the sorted System.Collections.Generic.List<T>, + if item is found; otherwise, a negative number that is the bitwise complement + of the index of the next element that is larger than item or, if there is + no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + + + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default + cannot find an implementation of the System.IComparable<T> generic interface + or the System.IComparable interface for type T. + + + + + Searches a range of elements in the sorted System.Collections.Generic.List<T> + for an element using the specified comparer and returns the zero-based index + of the element. + + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + + The zero-based index of item in the sorted System.Collections.Generic.List<T>, + if item is found; otherwise, a negative number that is the bitwise complement + of the index of the next element that is larger than item or, if there is + no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + + + index is less than 0.-or-count is less than 0. + + + index and count do not denote a valid range in the System.Collections.Generic.List<T>. + + + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default + cannot find an implementation of the System.IComparable<T> generic interface + or the System.IComparable interface for type T. + + + + + An immutable queue. + + The type of elements in the queue. + + + + Gets a value indicating whether this is the empty queue. + + + true if this queue is empty; otherwise, false. + + + + + Gets an empty queue. + + + + + Gets the element at the front of the queue. + + + The element on the top of the stack. + + Thrown when the stack is empty. + + + + Adds an element to the back of the queue. + + The value. + + The new queue. + + + + + Returns a queue that is missing the front element. + + A queue; never null. + Thrown when the stack is empty. + + + + An immutable stack. + + The type of elements stored in the stack. + + + + Gets a value indicating whether this is the empty stack. + + + true if this stack is empty; otherwise, false. + + + + + Gets an empty stack. + + + + + Pushes an element onto a stack and returns the new stack. + + The element to push onto the stack. + The new stack. + + + + Pops the top element off the stack. + + The new stack; never null + Thrown when the stack is empty. + + + + Gets the element on the top of the stack. + + Thrown when the stack is empty. + + + + A set of initialization methods for instances of . + + + + + A two element array useful for throwing exceptions the way LINQ does. + + + + + Creates an empty ImmutableArray{T}. + + The type of element stored in the array. + An empty array. + + + + Creates an ImmutableArray{T} with the specified element as its only member. + + The type of element stored in the array. + The element to store in the array. + A 1-element array. + + + + Creates an ImmutableArray{T} populated with the contents of the specified sequence. + + The type of element stored in the array. + The elements to store in the array. + An immutable array. + + + + A readonly array with O(1) indexable lookup time. + + The type of element stored by the array. + + This type has a documented contract of being exactly one reference-type field in size. + Our own ImmutableInterlocked class depends on it, as well as others externally. + IMPORTANT NOTICE FOR MAINTAINERS AND REVIEWERS: + This type should be thread-safe. As a struct, it cannot protect its own fields + from being changed from one thread while its members are executing on other threads + because structs can change *in place* simply by reassigning the field containing + this struct. Therefore it is extremely important that + ** Every member should only dereference this ONCE. ** + If a member needs to reference the array field, that counts as a dereference of this. + Calling other instance members (properties or methods) also counts as dereferencing this. + Any member that needs to use this more than once must instead + assign this to a local variable and use that for the rest of the code instead. + This effectively copies the one field in the struct to a local variable so that + it is insulated from other threads. + + + + + A writable array accessor that can be converted into an + instance without allocating memory. + + + + + The backing array for the builder. + + + + + The number of initialized elements in the array. + + + + + Initializes a new instance of the class. + + The initial capacity of the internal array. + + + + Initializes a new instance of the class. + + + + + Get and sets the length of the internal array. When set the internal array is + reallocated to the given capacity if it is not already the specified length. + + + + + Gets or sets the length of the builder. + + + If the value is decreased, the array contents are truncated. + If the value is increased, the added elements are initialized to default(T). + + + + + Gets or sets the element at the specified index. + + The index. + + + + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + + Returns an immutable copy of the current contents of this collection. + + An immutable array. + + + + Extracts the internal array as an and replaces it + with a zero length array. + + When doesn't + equal . + + + + Removes all items from the . + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + + + Adds an item to the . + + The object to add to the . + + + + Adds the specified items to the end of the array. + + The items. + + + + Adds the specified items to the end of the array. + + The items. + + + + Adds the specified items to the end of the array. + + The items. + + + + Adds the specified items to the end of the array. + + The items. + The number of elements from the source array to add. + + + + Adds the specified items to the end of the array. + + The items. + + + + Adds the specified items to the end of the array. + + The items. + The number of elements from the source array to add. + + + + Adds the specified items to the end of the array. + + The items. + + + + Adds the specified items to the end of the array. + + The items. + + + + Adds the specified items to the end of the array. + + The items. + + + + Removes the specified element. + + The element. + A value indicating whether the specified element was found and removed from the collection. + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Creates a new array with the current contents of this Builder. + + + + + Copies the current contents to the specified array. + + The array to copy to. + The starting index of the target array. + + + + Resizes the array to accommodate the specified capacity requirement. + + The required capacity. + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Searches the array for the specified item. + + The item to search for. + The index at which to begin the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item. + + The item to search for. + The index at which to begin the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item. + + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item in reverse. + + The item to search for. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item in reverse. + + The item to search for. + The index at which to begin the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item in reverse. + + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Reverses the order of elements in the collection. + + + + + Sorts the array. + + + + + Sorts the array. + + The comparer to use in sorting. If null, the default comparer is used. + + + + Sorts the array. + + The index of the first element to consider in the sort. + The number of elements to include in the sort. + The comparer to use in sorting. If null, the default comparer is used. + + + + Returns an enumerator for the contents of the array. + + An enumerator. + + + + Returns an enumerator for the contents of the array. + + An enumerator. + + + + Returns an enumerator for the contents of the array. + + An enumerator. + + + + Adds items to this collection. + + The type of source elements. + The source array. + The number of elements to add to this array. + + + + An array enumerator. + + + It is important that this enumerator does NOT implement IDisposable. + We want the iterator to inline when we do foreach and to not result in + a try/finally frame in the client. + + + + + The array being enumerated. + + + + + The currently enumerated position. + + + -1 before the first call to . + >= this.array.Length after MoveNext returns false. + + + + + Initializes a new instance of the struct. + + The array to enumerate. + + + + Gets the currently enumerated value. + + + + + Advances to the next value to be enumerated. + + true if another item exists in the array; false otherwise. + + + + An array enumerator that implements IEnumerator pattern (including IDisposable). + + + + + A shareable singleton for enumerating empty arrays. + + + + + The array being enumerated. + + + + + The currently enumerated position. + + + -1 before the first call to . + this.array.Length - 1 after MoveNext returns false. + + + + + Initializes a new instance of the class. + + + + + Gets the currently enumerated value. + + + + + Gets the currently enumerated value. + + + + + If another item exists in the array, advances to the next value to be enumerated. + + true if another item exists in the array; false otherwise. + + + + Resets enumeration to the start of the array. + + + + + Disposes this enumerator. + + + Currently has no action. + + + + + Creates an enumerator for the specified array. + + + + + An empty (initialized) instance of ImmutableArray{T}. + + + + + The backing field for this instance. References to this value should never be shared with outside code. + + + This would be private, but we make it internal so that our own extension methods can access it. + + + + + Initializes a new instance of the struct + *without making a defensive copy*. + + The array to use. May be null for "default" arrays. + + + + Checks equality between two instances. + + The instance to the left of the operator. + The instance to the right of the operator. + true if the values' underlying arrays are reference equal; false otherwise. + + + + Checks inequality between two instances. + + The instance to the left of the operator. + The instance to the right of the operator. + true if the values' underlying arrays are reference not equal; false otherwise. + + + + Checks equality between two instances. + + The instance to the left of the operator. + The instance to the right of the operator. + true if the values' underlying arrays are reference equal; false otherwise. + + + + Checks inequality between two instances. + + The instance to the left of the operator. + The instance to the right of the operator. + true if the values' underlying arrays are reference not equal; false otherwise. + + + + Gets the element at the specified index in the read-only list. + + The zero-based index of the element to get. + The element at the specified index in the read-only list. + + + + Gets or sets the element at the specified index in the read-only list. + + The zero-based index of the element to get. + The element at the specified index in the read-only list. + Always thrown from the setter. + Thrown if the property returns true. + + + + Gets a value indicating whether this instance is read only. + + + true if this instance is read only; otherwise, false. + + + + + Gets a value indicating whether this collection is empty. + + + + + Gets the number of array in the collection. + + + + + Gets the number of array in the collection. + + Thrown if the property returns true. + + + + Gets the number of array in the collection. + + Thrown if the property returns true. + + + + Gets the element at the specified index. + + The index. + + The element. + + Thrown if the property returns true. + + + + Gets a value indicating whether this struct was initialized without an actual array instance. + + + + + Gets a value indicating whether this struct is empty or uninitialized. + + + + + Gets an untyped reference to the array. + + + + + Gets the string to display in the debugger watches window for this instance. + + + + + Searches the array for the specified item. + + The item to search for. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item. + + The item to search for. + The index at which to begin the search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item. + + The item to search for. + The index at which to begin the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item. + + The item to search for. + The index at which to begin the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item. + + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item in reverse. + + The item to search for. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item in reverse. + + The item to search for. + The index at which to begin the search. + The number of elements to search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Searches the array for the specified item in reverse. + + The item to search for. + The index at which to begin the search. + The number of elements to search. + The equality comparer to use in the search. + The 0-based index into the array where the item was found; or -1 if it could not be found. + + + + Determines whether the specified item exists in the array. + + The item to search for. + true if an equal value was found in the array; false otherwise. + + + + Copies the contents of this array to the specified array. + + The array to copy to. + + + + Copies the contents of this array to the specified array. + + The array to copy to. + The index into the destination array to which the first copied element is written. + + + + Copies the contents of this array to the specified array. + + The index into this collection of the first element to copy. + The array to copy to. + The index into the destination array to which the first copied element is written. + The number of elements to copy. + + + + Returns a new array with the specified value inserted at the specified position. + + The 0-based index into the array at which the new item should be added. + The item to insert at the start of the array. + A new array. + + + + Inserts the specified values at the specified index. + + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + + Inserts the specified values at the specified index. + + The index at which to insert the value. + The elements to insert. + The new immutable collection. + + + + Returns a new array with the specified value inserted at the end. + + The item to insert at the end of the array. + A new array. + + + + Adds the specified values to this list. + + The values to add. + A new list with the elements added. + + + + Adds the specified values to this list. + + The values to add. + A new list with the elements added. + + + + Returns an array with the item at the specified position replaced. + + The index of the item to replace. + The new item. + The new array. + + + + Replaces the first equal element in the list with the specified element. + + The element to replace. + The element to replace the old element with. + The new list -- even if the value being replaced is equal to the new value for that position. + Thrown when the old value does not exist in the list. + + + + Replaces the first equal element in the list with the specified element. + + The element to replace. + The element to replace the old element with. + + The equality comparer to use in the search. + + The new list -- even if the value being replaced is equal to the new value for that position. + Thrown when the old value does not exist in the list. + + + + Returns an array with the first occurrence of the specified element removed from the array. + If no match is found, the current array is returned. + + The item to remove. + The new array. + + + + Returns an array with the first occurrence of the specified element removed from the array. + If no match is found, the current array is returned. + + The item to remove. + + The equality comparer to use in the search. + + The new array. + + + + Returns an array with the element at the specified position removed. + + The 0-based index into the array for the element to omit from the returned array. + The new array. + + + + Returns an array with the elements at the specified position removed. + + The 0-based index into the array for the element to omit from the returned array. + The number of elements to remove. + The new array. + + + + Removes the specified values from this list. + + The items to remove if matches are found in this list. + + A new list with the elements removed. + + + + + Removes the specified values from this list. + + The items to remove if matches are found in this list. + + The equality comparer to use in the search. + + + A new list with the elements removed. + + + + + Removes the specified values from this list. + + The items to remove if matches are found in this list. + + A new list with the elements removed. + + + + + Removes the specified values from this list. + + The items to remove if matches are found in this list. + + The equality comparer to use in the search. + + + A new list with the elements removed. + + + + + Removes all the elements that match the conditions defined by the specified + predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to remove. + + + The new list. + + + + + Returns an empty array. + + + + + Returns a sorted instance of this array. + + + + + Returns a sorted instance of this array. + + The comparer to use in sorting. If null, the default comparer is used. + + + + Returns a sorted instance of this array. + + The index of the first element to consider in the sort. + The number of elements to include in the sort. + The comparer to use in sorting. If null, the default comparer is used. + + + + Returns a builder that is populated with the same contents as this array. + + The new builder. + + + + Returns an enumerator for the contents of the array. + + An enumerator. + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + + true if the current object is equal to the parameter; otherwise, false. + + + + + Initializes a new instance of the struct based on the contents + of an existing instance, allowing a covariant static cast to efficiently reuse the existing array. + + The array to initialize the array with. No copy is made. + + Covariant upcasts from this method may be reversed by calling the + or method. + + + + + Initializes a new instance of the struct by casting the underlying + array to an array of type . + + Thrown if the cast is illegal. + + + + Creates an immutable array for this array, cast to a different element type. + + The type of array element to return. + + A struct typed for the base element type. If the cast fails, an instance + is returned whose property returns true. + + + Arrays of derived elements types can be cast to arrays of base element types + without reallocating the array. + These upcasts can be reversed via this same method, casting an array of base + element types to their derived types. However, downcasting is only successful + when it reverses a prior upcasting operation. + + + + + Filters the elements of this array to those assignable to the specified type. + + The type to filter the elements of the sequence on. + + An System.Collections.Generic.IEnumerable<T> that contains elements from + the input sequence of type TResult. + + + + + Returns an enumerator for the contents of the array. + + An enumerator. + Thrown if the property returns true. + + + + Returns an enumerator for the contents of the array. + + An enumerator. + Thrown if the property returns true. + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + Adds an item to the . + + The object to add to the . + + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection, + + + + + + Removes all items from the . + + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if the is found in the ; otherwise, false. + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + + + + Gets a value indicating whether this instance is fixed size. + + + true if this instance is fixed size; otherwise, false. + + + + + Gets a value indicating whether this instance is read only. + + + true if this instance is read only; otherwise, false. + + + + + Gets the size of the array. + + Thrown if the property returns true. + + + + See the ICollection interface. + + + + + Gets the sync root. + + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + + + + Gets or sets the at the specified index. + + + The . + + The index. + + Always thrown from the setter. + Thrown if the property returns true. + + + + Copies the elements of the to an , starting at a particular index. + + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Determines whether an object is structurally equal to the current instance. + + The object to compare with the current instance. + An object that determines whether the current instance and other are equal. + true if the two objects are equal; otherwise, false. + + + + Returns a hash code for the current instance. + + An object that computes the hash code of the current object. + The hash code for the current instance. + + + + Determines whether the current collection object precedes, occurs in the + same position as, or follows another object in the sort order. + + The object to compare with the current instance. + + An object that compares members of the current collection object with the + corresponding members of other. + + + An integer that indicates the relationship of the current collection object + to other. + + + + + Throws a null reference exception if the array field is null. + + + + + Throws an if the array field is null, ie. the + property returns true. The + InvalidOperationException message specifies that the operation cannot be performed + on a default instance of ImmutableArray. + + This is intended for explicitly implemented interface method and property implementations. + + + + + Returns an array with items at the specified indexes removed. + + A **sorted set** of indexes to elements that should be omitted from the returned array. + The new array. + + + + Throws a NullReferenceException if the specified array is uninitialized. + + + + + A simple view of the immutable collection that the debugger can show to the developer. + + + + + The collection to be enumerated. + + + + + Initializes a new instance of the class. + + The collection to display in the debugger + + + + Gets a simple debugger-viewable collection. + + + + + A set of initialization methods for instances of . + + + + + Returns an empty collection. + + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The immutable collection. + + + + Creates a new immutable collection prefilled with the specified items. + + The type of keys stored by the dictionary. + The type of values stored by the dictionary. + The items to prepopulate. + The new immutable collection. + + + + Creates an immutable dictionary given a sequence of key=value pairs. + + The type of key in the map. + The type of value in the map. + The sequence of key=value pairs. + The key comparer to use when building the immutable map. + The value comparer to use for the immutable map. + An immutable map. + + + + Creates an immutable dictionary given a sequence of key=value pairs. + + The type of key in the map. + The type of value in the map. + The sequence of key=value pairs. + An immutable map. + + + + Gets the value for a given key if a matching key exists in the dictionary. + + The type of the key. + The type of the value. + The dictionary to retrieve the value from. + The key to search for. + The default value to return if no matching key is found in the dictionary. + + The value for the key, or if no matching key was found. + + + + + Contains the inner Builder class. + + + Contains the inner HashBucketComparer class. + + + Contains the inner Enumerator struct. + + + Contains the inner HashBucket struct. + + + Contains the inner MutationInput class. + + + Contains the inner MutationResult class. + + + An immutable unordered dictionary implementation. + + The type of the key. + The type of the value. + + + + A dictionary that mutates with little or no memory allocations, + can produce and/or build on immutable dictionary instances very efficiently. + + + + While + and other bulk change methods already provide fast bulk change operations on the collection, this class allows + multiple combinations of changes to be made to a set with equal efficiency. + + + Instance members of this class are not thread-safe. + + + + + + The root of the binary tree that stores the collection. Contents are typically not entirely frozen. + + + + + The comparers. + + + + + The number of elements in this collection. + + + + + Caches an immutable instance that represents the current state of the collection. + + Null if no immutable view has been created for the current version. + + + + A number that increments every time the builder changes its contents. + + + + + The object callers may use to synchronize access to this collection. + + + + + Initializes a new instance of the class. + + The map that serves as the basis for this Builder. + + + + Gets or sets the key comparer. + + + The key comparer. + + + + + Gets or sets the value comparer. + + + The value comparer. + + + + + Gets the number of elements contained in the . + + The number of elements contained in the . + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + See + + + + + Gets an containing the keys of the . + + An containing the keys of the object that implements . + + + + See + + + + + Gets an containing the values in the . + + An containing the values in the object that implements . + + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + + Gets an containing the keys of the . + + + An containing the keys of the object that implements . + + + + + Gets an containing the values in the . + + + An containing the values in the object that implements . + + + + + Gets an object that can be used to synchronize access to the . + + An object that can be used to synchronize access to the . + + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + + Adds an element with the provided key and value to the object. + + The to use as the key of the element to add. + The to use as the value of the element to add. + + + + Determines whether the object contains an element with the specified key. + + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + + + + Returns an object for the object. + + + An object for the object. + + + + + + Removes the element with the specified key from the object. + + The key of the element to remove. + + + + Gets or sets the element with the specified key. + + The key. + + + + + Copies the elements of the to an , starting at a particular index. + + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Gets the current version of the contents of this builder. + + + + + Gets the initial data to pass to a query or mutation method. + + + + + Gets or sets the root of this data structure. + + + + + Gets or sets the element with the specified key. + + The element with the specified key. + is null. + The property is retrieved and is not found. + The property is set and the is read-only. + + + + Adds a sequence of values to this collection. + + The items. + + + + Removes any entries from the dictionaries with keys that match those found in the specified sequence. + + The keys for entries to remove from the dictionary. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the value for a given key if a matching key exists in the dictionary. + + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + + Gets the value for a given key if a matching key exists in the dictionary. + + The key to search for. + The default value to return if no matching key is found in the dictionary. + + The value for the key, or if no matching key was found. + + + + + Creates an immutable dictionary based on the contents of this instance. + + An immutable map. + + This method is an O(n) operation, and approaches O(1) time as the number of + actual mutations to the set since the last call to this method approaches 0. + + + + + Adds an element with the provided key and value to the . + + The object to use as the key of the element to add. + The object to use as the value of the element to add. + is null. + An element with the same key already exists in the . + The is read-only. + + + + Determines whether the contains an element with the specified key. + + The key to locate in the . + + true if the contains an element with the key; otherwise, false. + + is null. + + + + Determines whether the ImmutableSortedMap<TKey,TValue> + contains an element with the specified value. + + + The value to locate in the ImmutableSortedMap<TKey,TValue>. + The value can be null for reference types. + + + true if the ImmutableSortedMap<TKey,TValue> contains + an element with the specified value; otherwise, false. + + + + + Removes the element with the specified key from the . + + The key of the element to remove. + + true if the element is successfully removed; otherwise, false. This method also returns false if was not found in the original . + + is null. + + The is read-only. + + + + Gets the value associated with the specified key. + + The key whose value to get. + When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the parameter. This parameter is passed uninitialized. + + true if the object that implements contains an element with the specified key; otherwise, false. + + is null. + + + + See the interface. + + + + + Adds an item to the . + + The object to add to the . + The is read-only. + + + + Removes all items from the . + + The is read-only. + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + See the interface. + + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + The is read-only. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Applies the result of some mutation operation to this instance. + + The result. + + + + A shareable container for the comparers used by an immutable dictionary. + + + To reduce allocations, we directly implement the HashBucket and Key-Only comparers, + but we try to keep this an implementation detail by exposing properties that return + references for these particular facilities, that are implemented as returning "this". + + + + + The default instance to use when all the comparers used are their default values. + + + + + The equality comparer to use for the key. + + + + + The value comparer. + + + + + Initializes a new instance of the class. + + The key only comparer. + The value comparer. + + + + Gets the key comparer. + + + The key comparer. + + + + + Gets the key only comparer. + + + The key only comparer. + + + + + Gets the value comparer. + + + The value comparer. + + + + + Gets the equality comparer to use with hash buckets. + + + + + Determines whether the specified objects are equal. + + The first object to compare. + The second object to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for this instance. + + The obj. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Determines whether the specified objects are equal. + + The first object to compare. + The second object to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for this instance. + + The obj. + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Gets an instance that refers to the specified combination of comparers. + + The key comparer. + The value comparer. + An instance of + + + + Returns an instance of that shares the same key comparers + with this instance, but uses the specified value comparer. + + The new value comparer to use. + A new instance of + + + + Enumerates the contents of the collection in an allocation-free manner. + + + + + The builder being enumerated, if applicable. + + + + + The enumerator over the sorted dictionary whose keys are hash values. + + + + + The enumerator in use within an individual HashBucket. + + + + + The version of the builder (when applicable) that is being enumerated. + + + + + Initializes a new instance of the struct. + + The root. + The builder, if applicable. + + + + Gets the current element. + + + + + Gets the current element. + + + + + Advances the enumerator to the next element of the collection. + + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + The collection was modified after the enumerator was created. + + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + The collection was modified after the enumerator was created. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Throws an exception if the underlying builder's contents have been changed since enumeration started. + + Thrown if the collection has changed. + + + + Contains all the key/values in the collection that hash to the same value. + + + + + One of the values in this bucket. + + + + + Any other elements that hash to the same value. + + + This is null if and only if the entire bucket is empty (including ). + It's empty if has an element but no additional elements. + + + + + Initializes a new instance of the struct. + + The first element. + The additional elements. + + + + Gets a value indicating whether this instance is empty. + + + true if this instance is empty; otherwise, false. + + + + + Gets the first value in this bucket. + + + + + Gets the list of additional (hash collision) elements. + + + + + Returns an enumerator that iterates through the collection. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Throws an exception to catch any errors in comparing HashBucket instances. + + + + + Adds the specified key. + + The key to add. + The value to add. + The key comparer. + The value comparer. + The intended behavior for certain cases that may come up during the operation. + A description of the effect was on adding an element to this HashBucket. + A new HashBucket that contains the added value and any values already held by this hashbucket. + + + + Removes the specified value if it exists in the collection. + + The key to remove. + The equality comparer. + A description of the effect was on adding an element to this HashBucket. + A new HashBucket that does not contain the removed value and any values already held by this hashbucket. + + + + Gets the value for the given key in the collection if one exists.. + + The key to search for. + The key comparer. + The value for the given key. + A value indicating whether the key was found. + + + + Searches the dictionary for a given key and returns the equal key it finds, if any. + + The key to search for. + The key comparer. + The key from the dictionary that the search found, or if the search yielded no match. + A value indicating whether the search was successful. + + This can be useful when you want to reuse a previously stored reference instead of + a newly constructed one (so that more sharing of references can occur) or to look up + the canonical value, or a value that has more complete data than the value you currently have, + although their comparer functions indicate they are equal. + + + + + Freezes this instance so that any further mutations require new memory allocations. + + + + + Enumerates all the elements in this instance. + + + + + The bucket being enumerated. + + + + + The current position of this enumerator. + + + + + The enumerator that represents the current position over the additionalValues of the HashBucket. + + + + + Initializes a new instance of the struct. + + The bucket. + + + + Describes the positions the enumerator state machine may be in. + + + + + The first element has not yet been moved to. + + + + + We're at the firstValue of the containing bucket. + + + + + We're enumerating the additionalValues in the bucket. + + + + + The end of enumeration has been reached. + + + + + Gets the current element. + + + + + Gets the current element. + + + + + Advances the enumerator to the next element of the collection. + + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + The collection was modified after the enumerator was created. + + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + The collection was modified after the enumerator was created. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Description of the current data structure as input into a + mutating or query method. + + + + + The root of the data structure for the collection. + + + + + The comparer used when comparing hash buckets. + + + + + The current number of elements in the collection. + + + + + Initializes a new instance of the struct. + + The root. + The comparers. + The current number of elements in the collection. + + + + Initializes a new instance of the struct. + + The map. + + + + Gets the root of the data structure for the collection. + + + + + Gets the key comparer. + + + + + Gets the key only comparer. + + + + + Gets the value comparer. + + + + + Gets the comparers. + + + + + Gets the current number of elements in the collection. + + + + + Describes the result of a mutation on the immutable data structure. + + + + + The root node of the data structure after the mutation. + + + + + The number of elements added or removed from the collection as a result of the operation (a negative number represents removed elements). + + + + + Initializes a new instance of the struct. + + The unchanged input. + + + + Initializes a new instance of the struct. + + The root. + The count adjustment. + + + + Gets the root node of the data structure after the mutation. + + + + + Gets the number of elements added or removed from the collection as a result of the operation (a negative number represents removed elements). + + + + + Returns an immutable dictionary that captures the result of this mutation. + + The prior version of the map. Used to capture the equality comparer and previous count, when applicable. + The new collection. + + + + An empty immutable dictionary with default equality comparers. + + + + + The singleton delegate that freezes the contents of hash buckets when the root of the data structure is frozen. + + + + + The number of elements in the collection. + + + + + The root node of the tree that stores this map. + + + + + The comparer used when comparing hash buckets. + + + + + Initializes a new instance of the class. + + The root. + The comparers. + The number of elements in the map. + + + + Initializes a new instance of the class. + + The comparers. + + + + How to respond when a key collision is discovered. + + + + + Sets the value for the given key, even if that overwrites an existing value. + + + + + Skips the mutating operation if a key conflict is detected. + + + + + Throw an exception if the key already exists with a different key. + + + + + Throw an exception if the key already exists regardless of its value. + + + + + The result of a mutation operation. + + + + + The change was applied and did not require a change to the number of elements in the collection. + + + + + The change required element(s) to be added or removed from the collection. + + + + + No change was required (the operation ended in a no-op). + + + + + See the interface. + + + + + Gets the number of elements in this collection. + + + + + Gets a value indicating whether this instance is empty. + + + true if this instance is empty; otherwise, false. + + + + + Gets the key comparer. + + + + + Gets the value comparer used to determine whether values are equal. + + + + + Gets the keys in the map. + + + + + Gets the values in the map. + + + + + Gets the empty instance. + + + + + Gets the keys. + + + + + Gets the values. + + + + + Gets a data structure that captures the current state of this map, as an input into a query or mutating function. + + + + + Gets the with the specified key. + + + + + Gets or sets the with the specified key. + + + + + Creates a collection with the same contents as this collection that + can be efficiently mutated across multiple operations using standard + mutable interfaces. + + + This is an O(1) operation and results in only a single (small) memory allocation. + The mutable collection that is returned is *not* thread-safe. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + Applies a given set of key=value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + + The key=value pairs to set on the map. Any keys that conflict with existing keys will overwrite the previous values. + An immutable dictionary. + + + + See the interface. + + + + + See the interface. + + + + + Determines whether the specified key contains key. + + The key. + + true if the specified key contains key; otherwise, false. + + + + + Determines whether [contains] [the specified key value pair]. + + The key value pair. + + true if [contains] [the specified key value pair]; otherwise, false. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + Determines whether the ImmutableSortedMap<TKey,TValue> + contains an element with the specified value. + + + The value to locate in the ImmutableSortedMap<TKey,TValue>. + The value can be null for reference types. + + + true if the ImmutableSortedMap<TKey,TValue> contains + an element with the specified value; otherwise, false. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + See the IImmutableMap{TKey,TValue} interface + + + + + See the IImmutableMap{TKey,TValue} interface + + + + + Applies a given set of key=value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + + The key=value pairs to set on the map. Any keys that conflict with existing keys will overwrite the previous values. + An immutable dictionary. + + + + See the IImmutableMap{TKey,TValue} interface + + + + + See the IImmutableMap{TKey,TValue} interface + + + + + See the IImmutableMap{TKey,TValue} interface + + + + + Adds an element with the provided key and value to the . + + The object to use as the key of the element to add. + The object to use as the value of the element to add. + is null. + + + An element with the same key already exists in the . + + + The is read-only. + + + + + Removes the element with the specified key from the . + + The key of the element to remove. + + true if the element is successfully removed; otherwise, false. This method also returns false if was not found in the original . + + is null. + + + The is read-only. + + + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + + Gets an containing the keys of the . + + + An containing the keys of the object that implements . + + + + + Gets an containing the values in the . + + + An containing the values in the object that implements . + + + + + Gets the root node (for testing purposes). + + + + + Adds an element with the provided key and value to the object. + + The to use as the key of the element to add. + The to use as the value of the element to add. + + + + Determines whether the object contains an element with the specified key. + + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + + + + Returns an object for the object. + + + An object for the object. + + + + + + Removes the element with the specified key from the object. + + The key of the element to remove. + + + + Gets or sets the element with the specified key. + + The key. + + + + + Clears this instance. + + + + + + Copies the elements of the to an , starting at a particular index. + + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Gets an object that can be used to synchronize access to the . + + An object that can be used to synchronize access to the . + + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Gets an empty collection with the specified comparers. + + The comparers. + The empty dictionary. + + + + Attempts to discover an instance beneath some enumerable sequence + if one exists. + + The sequence that may have come from an immutable map. + Receives the concrete typed value if one can be found. + true if the cast was successful; false otherwise. + + + + Performs the operation on a given data structure. + + + + + Performs the operation on a given data structure. + + + + + Performs the operation on a given data structure. + + + + + Performs the operation on a given data structure. + + + + + Performs the operation on a given data structure. + + + + + Performs the operation on a given data structure. + + + + + Performs the operation on a given data structure. + + + + + Performs the set operation on a given data structure. + + + + + Wraps the specified data structure with an immutable collection wrapper. + + The root of the data structure. + The comparers. + The number of elements in the data structure. + + The immutable collection. + + + + + Wraps the specified data structure with an immutable collection wrapper. + + The root of the data structure. + The adjusted count if the root has changed. + The immutable collection. + + + + Bulk adds entries to the map. + + The entries to add. + true when being called from ToHashMap to avoid StackOverflow. + + + + A simple view of the immutable collection that the debugger can show to the developer. + + + + + The collection to be enumerated. + + + + + The simple view of the collection. + + + + + Initializes a new instance of the class. + + The collection to display in the debugger + + + + Gets a simple debugger-viewable collection. + + + + + A simple view of the immutable collection that the debugger can show to the developer. + + + + + The collection to be enumerated. + + + + + The simple view of the collection. + + + + + Initializes a new instance of the class. + + The collection to display in the debugger + + + + Gets a simple debugger-viewable collection. + + + + + Extension methods for immutable types. + + + + + Tries to divine the number of elements in a sequence without actually enumerating each element. + + The type of elements in the sequence. + The enumerable source. + Receives the number of elements in the enumeration, if it could be determined. + true if the count could be determined; false otherwise. + + + + Tries to divine the number of elements in a sequence without actually enumerating each element. + + The type of elements in the sequence. + The enumerable source. + Receives the number of elements in the enumeration, if it could be determined. + true if the count could be determined; false otherwise. + + + + Gets the number of elements in the specified sequence, + while guaranteeing that the sequence is only enumerated once + in total by this method and the caller. + + The type of element in the collection. + The sequence. + The number of elements in the sequence. + + + + Gets a copy of a sequence as an array. + + The type of element. + The sequence to be copied. + The number of elements in the sequence. + The array. + + This is more efficient than the Enumerable.ToArray{T} extension method + because that only tries to cast the sequence to ICollection{T} to determine + the count before it falls back to reallocating arrays as it enumerates. + + + + + Provides a known wrapper around a sequence of elements that provides the number of elements + and an indexer into its contents. + + The type of elements in the collection. + The collection. + An ordered collection. May not be thread-safe. Never null. + + + + Clears the specified stack. For empty stacks, it avoids the call to Clear, which + avoids a call into the runtime's implementation of Array.Clear, helping performance, + in particular around inlining. Stack.Count typically gets inlined by today's JIT, while + stack.Clear and Array.Clear typically don't. + + Specifies the type of data in the stack to be cleared. + The stack to clear. + + + + Gets a disposable enumerable that can be used as the source for a C# foreach loop + that will not box the enumerator if it is of a particular type. + + The type of value to be enumerated. + The type of the Enumerator struct. + The collection to be enumerated. + A struct that enumerates the collection. + + + + Wraps a List{T} as an ordered collection. + + The type of element in the collection. + + + + The list being exposed. + + + + + Initializes a new instance of the class. + + The collection. + + + + Gets the count. + + + + + Gets the at the specified index. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Wraps any IEnumerable as an ordered, indexable list. + + The type of element in the collection. + + + + The original sequence. + + + + + The list-ified sequence. + + + + + Initializes a new instance of the class. + + The sequence. + + + + Gets the count. + + + + + Gets the at the specified index. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + A set of initialization methods for instances of . + + + + + Returns an empty collection. + + The type of items stored by the collection. + The immutable collection. + + + + Creates a new immutable collection prefilled with the specified items. + + The type of items stored by the collection. + The items to prepopulate. + The new immutable collection. + + + + Enumerates a sequence exactly once and produces an immutable list of its contents. + + The type of element in the sequence. + The sequence to enumerate. + An immutable list. + + + + Searches for the specified object and returns the zero-based index of the + first occurrence within the ImmutableList<T> + + The list to search. + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + The equality comparer to use in the search. + + The zero-based index of the first occurrence of item within the range of + elements in the ImmutableList<T> that extends from index + to the last element, if found; otherwise, -1. + + + + + Contains the inner Builder class. + + + An immutable list implementation. + + The type of elements in the set. + + + + A list that mutates with little or no memory allocations, + can produce and/or build on immutable list instances very efficiently. + + + + While and other bulk change methods + already provide fast bulk change operations on the collection, this class allows + multiple combinations of changes to be made to a set with equal efficiency. + + + Instance members of this class are not thread-safe. + + + + + + The binary tree used to store the contents of the list. Contents are typically not entirely frozen. + + + + + Caches an immutable instance that represents the current state of the collection. + + Null if no immutable view has been created for the current version. + + + + A number that increments every time the builder changes its contents. + + + + + The object callers may use to synchronize access to this collection. + + + + + Initializes a new instance of the class. + + A list to act as the basis for a new list. + + + + Gets the number of elements in this list. + + + + + Gets a value indicating whether this instance is read-only. + + Always false. + + + + Gets the current version of the contents of this builder. + + + + + Gets or sets the root node that represents the data in this collection. + + + + + Gets or sets the value for a given index into the list. + + The index of the desired element. + The value at the specified index. + + + + Gets the element in the collection at a given index. + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Performs the specified action on each element of the list. + + The System.Action<T> delegate to perform on each element of the list. + + + + Copies the entire ImmutableList<T> to a compatible one-dimensional + array, starting at the beginning of the target array. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + + + + Copies the entire ImmutableList<T> to a compatible one-dimensional + array, starting at the specified index of the target array. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + + The zero-based index in array at which copying begins. + + + + + Copies a range of elements from the ImmutableList<T> to + a compatible one-dimensional array, starting at the specified index of the + target array. + + + The zero-based index in the source ImmutableList<T> at + which copying begins. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + The zero-based index in array at which copying begins. + The number of elements to copy. + + + + Creates a shallow copy of a range of elements in the source ImmutableList<T>. + + + The zero-based ImmutableList<T> index at which the range + starts. + + + The number of elements in the range. + + + A shallow copy of a range of elements in the source ImmutableList<T>. + + + + + Converts the elements in the current ImmutableList<T> to + another type, and returns a list containing the converted elements. + + + A System.Converter<TInput,TOutput> delegate that converts each element from + one type to another type. + + + The type of the elements of the target array. + + + A ImmutableList<T> of the target type containing the converted + elements from the current ImmutableList<T>. + + + + + Determines whether the ImmutableList<T> contains elements + that match the conditions defined by the specified predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to search for. + + + true if the ImmutableList<T> contains one or more elements + that match the conditions defined by the specified predicate; otherwise, + false. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the first occurrence within the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The first element that matches the conditions defined by the specified predicate, + if found; otherwise, the default value for type T. + + + + + Retrieves all the elements that match the conditions defined by the specified + predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to search for. + + + A ImmutableList<T> containing all the elements that match + the conditions defined by the specified predicate, if found; otherwise, an + empty ImmutableList<T>. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the range of elements in the ImmutableList<T> that extends + from the specified index to the last element. + + The zero-based starting index of the search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the range of elements in the ImmutableList<T> that starts + at the specified index and contains the specified number of elements. + + The zero-based starting index of the search. + The number of elements in the section to search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the last occurrence within the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The last element that matches the conditions defined by the specified predicate, + if found; otherwise, the default value for type T. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the range of elements in the ImmutableList<T> that extends + from the first element to the specified index. + + The zero-based starting index of the backward search. + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the range of elements in the ImmutableList<T> that contains + the specified number of elements and ends at the specified index. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for the specified object and returns the zero-based index of the + first occurrence within the range of elements in the ImmutableList<T> + that extends from the specified index to the last element. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + + The zero-based starting index of the search. 0 (zero) is valid in an empty + list. + + + The zero-based index of the first occurrence of item within the range of + elements in the ImmutableList<T> that extends from index + to the last element, if found; otherwise, -1. + + + + + Searches for the specified object and returns the zero-based index of the + first occurrence within the range of elements in the ImmutableList<T> + that starts at the specified index and contains the specified number of elements. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + + The zero-based starting index of the search. 0 (zero) is valid in an empty + list. + + + The number of elements in the section to search. + + + The zero-based index of the first occurrence of item within the range of + elements in the ImmutableList<T> that starts at index and + contains count number of elements, if found; otherwise, -1. + + + + + Searches for the specified object and returns the zero-based index of the + first occurrence within the range of elements in the ImmutableList<T> + that starts at the specified index and contains the specified number of elements. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + + The zero-based starting index of the search. 0 (zero) is valid in an empty + list. + + + The number of elements in the section to search. + + The equality comparer to use in the search. + + The zero-based index of the first occurrence of item within the range of + elements in the ImmutableList<T> that starts at index and + contains count number of elements, if found; otherwise, -1. + + + + + Searches for the specified object and returns the zero-based index of the + last occurrence within the range of elements in the ImmutableList<T> + that contains the specified number of elements and ends at the specified + index. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + + The zero-based index of the last occurrence of item within the range of elements + in the ImmutableList<T> that contains count number of elements + and ends at index, if found; otherwise, -1. + + + + + Searches for the specified object and returns the zero-based index of the + last occurrence within the range of elements in the ImmutableList<T> + that contains the specified number of elements and ends at the specified + index. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + + The zero-based index of the last occurrence of item within the range of elements + in the ImmutableList<T> that contains count number of elements + and ends at index, if found; otherwise, -1. + + + + + Searches for the specified object and returns the zero-based index of the + last occurrence within the range of elements in the ImmutableList<T> + that contains the specified number of elements and ends at the specified + index. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + The equality comparer to use in the search. + + The zero-based index of the last occurrence of item within the range of elements + in the ImmutableList<T> that contains count number of elements + and ends at index, if found; otherwise, -1. + + + + + Determines whether every element in the ImmutableList<T> + matches the conditions defined by the specified predicate. + + + The System.Predicate<T> delegate that defines the conditions to check against + the elements. + + + true if every element in the ImmutableList<T> matches the + conditions defined by the specified predicate; otherwise, false. If the list + has no elements, the return value is true. + + + + + Adds the elements of a sequence to the end of this collection. + + + The sequence whose elements should be appended to this collection. + The sequence itself cannot be null, but it can contain elements that are + null, if type is a reference type. + + + + + Inserts the elements of a collection into the ImmutableList<T> + at the specified index. + + + The zero-based index at which the new elements should be inserted. + + + The collection whose elements should be inserted into the ImmutableList<T>. + The collection itself cannot be null, but it can contain elements that are + null, if type T is a reference type. + + + + + Removes all the elements that match the conditions defined by the specified + predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to remove. + + + The number of elements removed from the ImmutableList<T> + + + + + Reverses the order of the elements in the entire ImmutableList<T>. + + + + + Reverses the order of the elements in the specified range. + + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + + + + Sorts the elements in the entire ImmutableList<T> using + the default comparer. + + + + + Sorts the elements in the entire ImmutableList<T> using + the specified System.Comparison<T>. + + + The System.Comparison<T> to use when comparing elements. + + + + + Sorts the elements in the entire ImmutableList<T> using + the specified comparer. + + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + + + + Sorts the elements in a range of elements in ImmutableList<T> + using the specified comparer. + + + The zero-based starting index of the range to sort. + + + The length of the range to sort. + + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element + using the default comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + + The zero-based index of item in the sorted System.Collections.Generic.List<T>, + if item is found; otherwise, a negative number that is the bitwise complement + of the index of the next element that is larger than item or, if there is + no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + + + The default comparer System.Collections.Generic.Comparer<T>.Default cannot + find an implementation of the System.IComparable<T> generic interface or + the System.IComparable interface for type T. + + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element + using the specified comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements.-or-null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + + The zero-based index of item in the sorted System.Collections.Generic.List<T>, + if item is found; otherwise, a negative number that is the bitwise complement + of the index of the next element that is larger than item or, if there is + no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + + + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default + cannot find an implementation of the System.IComparable<T> generic interface + or the System.IComparable interface for type T. + + + + + Searches a range of elements in the sorted System.Collections.Generic.List<T> + for an element using the specified comparer and returns the zero-based index + of the element. + + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + + The zero-based index of item in the sorted System.Collections.Generic.List<T>, + if item is found; otherwise, a negative number that is the bitwise complement + of the index of the next element that is larger than item or, if there is + no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + + + index is less than 0.-or-count is less than 0. + + + index and count do not denote a valid range in the System.Collections.Generic.List<T>. + + + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default + cannot find an implementation of the System.IComparable<T> generic interface + or the System.IComparable interface for type T. + + + + + Creates an immutable list based on the contents of this instance. + + An immutable list. + + This method is an O(n) operation, and approaches O(1) time as the number of + actual mutations to the set since the last call to this method approaches 0. + + + + + Adds an item to the . + + The object to add to the . + + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection, + + + + + + Clears this instance. + + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if the is found in the ; otherwise, false. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + + + + Gets a value indicating whether the has a fixed size. + + true if the has a fixed size; otherwise, false. + + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + + + + Gets or sets the at the specified index. + + + The . + + The index. + + + + + + Copies the elements of the to an , starting at a particular index. + + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + + + Gets an object that can be used to synchronize access to the . + + An object that can be used to synchronize access to the . + + + + + An empty immutable list. + + + + + The root node of the AVL tree that stores this set. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The root of the AVL tree with the contents of this set. + + + + See the interface. + + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element + using the default comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + + The zero-based index of item in the sorted System.Collections.Generic.List<T>, + if item is found; otherwise, a negative number that is the bitwise complement + of the index of the next element that is larger than item or, if there is + no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + + + The default comparer System.Collections.Generic.Comparer<T>.Default cannot + find an implementation of the System.IComparable<T> generic interface or + the System.IComparable interface for type T. + + + + + Searches the entire sorted System.Collections.Generic.List<T> for an element + using the specified comparer and returns the zero-based index of the element. + + The object to locate. The value can be null for reference types. + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements.-or-null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + + The zero-based index of item in the sorted System.Collections.Generic.List<T>, + if item is found; otherwise, a negative number that is the bitwise complement + of the index of the next element that is larger than item or, if there is + no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + + + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default + cannot find an implementation of the System.IComparable<T> generic interface + or the System.IComparable interface for type T. + + + + + Searches a range of elements in the sorted System.Collections.Generic.List<T> + for an element using the specified comparer and returns the zero-based index + of the element. + + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + + The zero-based index of item in the sorted System.Collections.Generic.List<T>, + if item is found; otherwise, a negative number that is the bitwise complement + of the index of the next element that is larger than item or, if there is + no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + + + index is less than 0.-or-count is less than 0. + + + index and count do not denote a valid range in the System.Collections.Generic.List<T>. + + + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default + cannot find an implementation of the System.IComparable<T> generic interface + or the System.IComparable interface for type T. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See ICollection. + + + + + See the ICollection interface. + + + + + Gets the element of the set at the given index. + + The 0-based index of the element in the set to return. + The element at the given position. + + + + Gets the element in the collection at a given index. + + + + + Creates a collection with the same contents as this collection that + can be efficiently mutated across multiple operations using standard + mutable interfaces. + + + This is an O(1) operation and results in only a single (small) memory allocation. + The mutable collection that is returned is *not* thread-safe. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + Removes the specified values from this list. + + The starting index to begin removal. + The number of elements to remove. + A new list with the elements removed. + + + + Removes the specified values from this list. + + The items to remove if matches are found in this list. + + A new list with the elements removed. + + + + + Removes the specified values from this list. + + The items to remove if matches are found in this list. + + The equality comparer to use in the search. + + + A new list with the elements removed. + + + + + See the interface. + + + + + Removes all the elements that match the conditions defined by the specified + predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to remove. + + + The new list. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + Reverses the order of the elements in the entire ImmutableList<T>. + + The reversed list. + + + + Reverses the order of the elements in the specified range. + + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + The reversed list. + + + + Sorts the elements in the entire ImmutableList<T> using + the default comparer. + + + + + Sorts the elements in the entire ImmutableList<T> using + the specified System.Comparison<T>. + + + The System.Comparison<T> to use when comparing elements. + + The sorted list. + + + + Sorts the elements in the entire ImmutableList<T> using + the specified comparer. + + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + The sorted list. + + + + Sorts the elements in a range of elements in ImmutableList<T> + using the specified comparer. + + + The zero-based starting index of the range to sort. + + + The length of the range to sort. + + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + The sorted list. + + + + Performs the specified action on each element of the list. + + The System.Action<T> delegate to perform on each element of the list. + + + + Copies the entire ImmutableList<T> to a compatible one-dimensional + array, starting at the beginning of the target array. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + + + + Copies the entire ImmutableList<T> to a compatible one-dimensional + array, starting at the specified index of the target array. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + + The zero-based index in array at which copying begins. + + + + + Copies a range of elements from the ImmutableList<T> to + a compatible one-dimensional array, starting at the specified index of the + target array. + + + The zero-based index in the source ImmutableList<T> at + which copying begins. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + The zero-based index in array at which copying begins. + The number of elements to copy. + + + + Creates a shallow copy of a range of elements in the source ImmutableList<T>. + + + The zero-based ImmutableList<T> index at which the range + starts. + + + The number of elements in the range. + + + A shallow copy of a range of elements in the source ImmutableList<T>. + + + + + Converts the elements in the current ImmutableList<T> to + another type, and returns a list containing the converted elements. + + + A System.Converter<TInput,TOutput> delegate that converts each element from + one type to another type. + + + The type of the elements of the target array. + + + A ImmutableList<T> of the target type containing the converted + elements from the current ImmutableList<T>. + + + + + Determines whether the ImmutableList<T> contains elements + that match the conditions defined by the specified predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to search for. + + + true if the ImmutableList<T> contains one or more elements + that match the conditions defined by the specified predicate; otherwise, + false. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the first occurrence within the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The first element that matches the conditions defined by the specified predicate, + if found; otherwise, the default value for type T. + + + + + Retrieves all the elements that match the conditions defined by the specified + predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to search for. + + + A ImmutableList<T> containing all the elements that match + the conditions defined by the specified predicate, if found; otherwise, an + empty ImmutableList<T>. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the range of elements in the ImmutableList<T> that extends + from the specified index to the last element. + + The zero-based starting index of the search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the range of elements in the ImmutableList<T> that starts + at the specified index and contains the specified number of elements. + + The zero-based starting index of the search. + The number of elements in the section to search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the last occurrence within the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The last element that matches the conditions defined by the specified predicate, + if found; otherwise, the default value for type T. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the range of elements in the ImmutableList<T> that extends + from the first element to the specified index. + + The zero-based starting index of the backward search. + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the range of elements in the ImmutableList<T> that contains + the specified number of elements and ends at the specified index. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for the specified object and returns the zero-based index of the + first occurrence within the range of elements in the ImmutableList<T> + that starts at the specified index and contains the specified number of elements. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + + The zero-based starting index of the search. 0 (zero) is valid in an empty + list. + + + The number of elements in the section to search. + + + The equality comparer to use in the search. + + + The zero-based index of the first occurrence of item within the range of + elements in the ImmutableList<T> that starts at index and + contains count number of elements, if found; otherwise, -1. + + + + + Searches for the specified object and returns the zero-based index of the + last occurrence within the range of elements in the ImmutableList<T> + that contains the specified number of elements and ends at the specified + index. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + + The equality comparer to use in the search. + + + The zero-based index of the last occurrence of item within the range of elements + in the ImmutableList<T> that contains count number of elements + and ends at index, if found; otherwise, -1. + + + + + Determines whether every element in the ImmutableList<T> + matches the conditions defined by the specified predicate. + + + The System.Predicate<T> delegate that defines the conditions to check against + the elements. + + + true if every element in the ImmutableList<T> matches the + conditions defined by the specified predicate; otherwise, false. If the list + has no elements, the return value is true. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + Inserts the specified value at the specified index. + + The index at which to insert the value. + The element to add. + The new immutable list. + + + + Inserts the specified value at the specified index. + + The index at which to insert the value. + The elements to add. + The new immutable list. + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + Removes the element at the specified index. + + The index. + A new list with the elements removed. + + + + Replaces an element in the list at a given position with the specified element. + + The position in the list of the element to replace. + The element to replace the old element with. + The new list. + + + + Replaces an element in the list with the specified element. + + The element to replace. + The element to replace the old element with. + + The equality comparer to use in the search. + + The new list. + Thrown when the old value does not exist in the list. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Inserts the specified index. + + The index. + The item. + + + + + Removes the value at the specified index. + + The index. + + + + + Gets or sets the value at the specified index. + + + + + Adds the specified item. + + The item. + + + + + Clears this instance. + + + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + + Removes the specified item. + + The item. + + + + + + See the ICollection interface. + + + + + Adds an item to the . + + The object to add to the . + + The position into which the new element was inserted, or -1 to indicate that the item was not inserted into the collection, + + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + + + + Clears this instance. + + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if the is found in the ; otherwise, false. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + + + + Gets a value indicating whether the has a fixed size. + + true if the has a fixed size; otherwise, false. + + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + + + + Gets or sets the at the specified index. + + + The . + + The index. + + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + CAUTION: when this enumerator is actually used as a valuetype (not boxed) do NOT copy it by assigning to a second variable + or by passing it to another method. When this enumerator is disposed of it returns a mutable reference type stack to a resource pool, + and if the value type enumerator is copied (which can easily happen unintentionally if you pass the value around) there is a risk + that a stack that has already been returned to the resource pool may still be in use by one of the enumerator copies, leading to data + corruption and/or exceptions. + + + + + Returns the Root Node of the list + + + + + Creates a new sorted set wrapper for a node tree. + + The root of the collection. + The immutable sorted set instance. + + + + Attempts to discover an instance beneath some enumerable sequence + if one exists. + + The sequence that may have come from an immutable list. + Receives the concrete typed value if one can be found. + true if the cast was successful; false otherwise. + + + + Creates a wrapping collection type around a root node. + + The root node to wrap. + A wrapping collection type for the new tree. + + + + Creates an immutable list with the contents from a sequence of elements. + + The sequence of elements from which to create the list. + The immutable list. + + + + Enumerates the contents of a binary tree. + + + This struct can and should be kept in exact sync with the other binary tree enumerators: + ImmutableList.Enumerator, ImmutableSortedMap.Enumerator, and ImmutableSortedSet.Enumerator. + + CAUTION: when this enumerator is actually used as a valuetype (not boxed) do NOT copy it by assigning to a second variable + or by passing it to another method. When this enumerator is disposed of it returns a mutable reference type stack to a resource pool, + and if the value type enumerator is copied (which can easily happen unintentionally if you pass the value around) there is a risk + that a stack that has already been returned to the resource pool may still be in use by one of the enumerator copies, leading to data + corruption and/or exceptions. + + + + + The resource pool of reusable mutable stacks for purposes of enumeration. + + + We utilize this resource pool to make "allocation free" enumeration achievable. + + + + + The builder being enumerated, if applicable. + + + + + A unique ID for this instance of this enumerator. + Used to protect pooled objects from use after they are recycled. + + + + + The starting index of the collection at which to begin enumeration. + + + + + The number of elements to include in the enumeration. + + + + + The number of elements left in the enumeration. + + + + + A value indicating whether this enumerator walks in reverse order. + + + + + The set being enumerated. + + + + + The stack to use for enumerating the binary tree. + + + + + The node currently selected. + + + + + The version of the builder (when applicable) that is being enumerated. + + + + + Initializes an Enumerator structure. + + The root of the set to be enumerated. + The builder, if applicable. + The index of the first element to enumerate. + The number of elements in this collection. + true if the list should be enumerated in reverse order. + + + + + + + The current element. + + + + + The current element. + + + + + Disposes of this enumerator and returns the stack reference to the resource pool. + + + + + Advances enumeration to the next element. + + A value indicating whether there is another element in the enumeration. + + + + Restarts enumeration. + + + + Resets the stack used for enumeration. + + + + Obtains the right branch of the given node (or the left, if walking in reverse). + + + + + Obtains the left branch of the given node (or the right, if walking in reverse). + + + + + Throws an ObjectDisposedException if this enumerator has been disposed. + + + + + Throws an exception if the underlying builder's contents have been changed since enumeration started. + + Thrown if the collection has changed. + + + + Pushes this node and all its Left descendents onto the stack. + + The starting node to push onto the stack. + + + + A node in the AVL tree storing this set. + + + + + The default empty node. + + + + + The key associated with this node. + + + + + A value indicating whether this node has been frozen (made immutable). + + + Nodes must be frozen before ever being observed by a wrapping collection type + to protect collections from further mutations. + + + + + The depth of the tree beneath this node. + + + + + The number of elements contained by this subtree starting at this node. + + + If this node would benefit from saving 4 bytes, we could have only a few nodes + scattered throughout the graph actually record the count of nodes beneath them. + Those without the count could query their descendents, which would often short-circuit + when they hit a node that *does* include a count field. + + + + + The left tree. + + + + + The right tree. + + + + + Initializes a new instance of the class + that is pre-frozen. + + + + + Initializes a new instance of the class + that is not yet frozen. + + The value stored by this node. + The left branch. + The right branch. + Whether this node is prefrozen. + + + + Gets a value indicating whether this instance is empty. + + + true if this instance is empty; otherwise, false. + + + + + Gets the height of the tree beneath this node. + + + + + Gets the left branch of this node. + + + + + Gets the left branch of this node. + + + + + Gets the right branch of this node. + + + + + Gets the right branch of this node. + + + + + Gets the left branch of this node. + + + + + Gets the right branch of this node. + + + + + Gets the value represented by the current node. + + + + + Gets the number of elements contained by this subtree starting at this node. + + + + + Gets the key. + + + + + Gets the element of the set at the given index. + + The 0-based index of the element in the set to return. + The element at the given position. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through the collection. + + The builder, if applicable. + + A that can be used to iterate through the collection. + + + + + Creates a node tree that contains the contents of a list. + + An indexable list with the contents that the new node tree should contain. + The starting index within that should be captured by the node tree. + The number of elements from that should be captured by the node tree. + The root of the created node tree. + + + + Adds the specified key to the tree. + + The key. + The new tree. + + + + Adds a value at a given index to this node. + + The location for the new value. + The value to add. + The new tree. + + + + Adds the specified keys to the tree. + + The keys. + The new tree. + + + + Adds a collection of values at a given index to this node. + + The location for the new values. + The values to add. + The new tree. + + + + Removes a value at a given index to this node. + + The location for the new value. + The new tree. + + + + Removes all the elements that match the conditions defined by the specified + predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to remove. + + + The new node tree. + + + + + Replaces a value at a given index. + + The location for the new value. + The new value for the node. + The new tree. + + + + Reverses the order of the elements in the entire ImmutableList<T>. + + The reversed list. + + + + Reverses the order of the elements in the specified range. + + The zero-based starting index of the range to reverse. + The number of elements in the range to reverse. + The reversed list. + + + + Sorts the elements in the entire ImmutableList<T> using + the default comparer. + + + + + Sorts the elements in the entire ImmutableList<T> using + the specified System.Comparison<T>. + + + The System.Comparison<T> to use when comparing elements. + + The sorted list. + + + + Sorts the elements in the entire ImmutableList<T> using + the specified comparer. + + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + The sorted list. + + + + Sorts the elements in a range of elements in ImmutableList<T> + using the specified comparer. + + + The zero-based starting index of the range to sort. + + + The length of the range to sort. + + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + The sorted list. + + + + Searches a range of elements in the sorted System.Collections.Generic.List<T> + for an element using the specified comparer and returns the zero-based index + of the element. + + The zero-based starting index of the range to search. + The length of the range to search. + The object to locate. The value can be null for reference types. + + The System.Collections.Generic.IComparer<T> implementation to use when comparing + elements, or null to use the default comparer System.Collections.Generic.Comparer<T>.Default. + + + The zero-based index of item in the sorted System.Collections.Generic.List<T>, + if item is found; otherwise, a negative number that is the bitwise complement + of the index of the next element that is larger than item or, if there is + no larger element, the bitwise complement of System.Collections.Generic.List<T>.Count. + + + index is less than 0.-or-count is less than 0. + + + index and count do not denote a valid range in the System.Collections.Generic.List<T>. + + + comparer is null, and the default comparer System.Collections.Generic.Comparer<T>.Default + cannot find an implementation of the System.IComparable<T> generic interface + or the System.IComparable interface for type T. + + + + + Searches for the specified object and returns the zero-based index of the + first occurrence within the range of elements in the ImmutableList<T> + that starts at the specified index and contains the specified number of elements. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + The equality comparer to use for testing the match of two elements. + + The zero-based index of the first occurrence of item within the range of + elements in the ImmutableList<T> that starts at index and + contains count number of elements, if found; otherwise, -1. + + + + + Searches for the specified object and returns the zero-based index of the + first occurrence within the range of elements in the ImmutableList<T> + that starts at the specified index and contains the specified number of elements. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + + The zero-based starting index of the search. 0 (zero) is valid in an empty + list. + + + The number of elements in the section to search. + + The equality comparer to use for testing the match of two elements. + + The zero-based index of the first occurrence of item within the range of + elements in the ImmutableList<T> that starts at index and + contains count number of elements, if found; otherwise, -1. + + + + + Searches for the specified object and returns the zero-based index of the + last occurrence within the range of elements in the ImmutableList<T> + that contains the specified number of elements and ends at the specified + index. + + + The object to locate in the ImmutableList<T>. The value + can be null for reference types. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + The equality comparer to use for testing the match of two elements. + + The zero-based index of the last occurrence of item within the range of elements + in the ImmutableList<T> that contains count number of elements + and ends at index, if found; otherwise, -1. + + + + + Copies the entire ImmutableList<T> to a compatible one-dimensional + array, starting at the beginning of the target array. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + + + + Copies the entire ImmutableList<T> to a compatible one-dimensional + array, starting at the specified index of the target array. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + + The zero-based index in array at which copying begins. + + + + + Copies a range of elements from the ImmutableList<T> to + a compatible one-dimensional array, starting at the specified index of the + target array. + + + The zero-based index in the source ImmutableList<T> at + which copying begins. + + + The one-dimensional System.Array that is the destination of the elements + copied from ImmutableList<T>. The System.Array must have + zero-based indexing. + + The zero-based index in array at which copying begins. + The number of elements to copy. + + + + Copies the elements of the to an , starting at a particular index. + + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Converts the elements in the current ImmutableList<T> to + another type, and returns a list containing the converted elements. + + + A System.Converter<TInput,TOutput> delegate that converts each element from + one type to another type. + + + The type of the elements of the target array. + + + A node tree with the transformed list. + + + + + Determines whether every element in the ImmutableList<T> + matches the conditions defined by the specified predicate. + + + The System.Predicate<T> delegate that defines the conditions to check against + the elements. + + + true if every element in the ImmutableList<T> matches the + conditions defined by the specified predicate; otherwise, false. If the list + has no elements, the return value is true. + + + + + Determines whether the ImmutableList<T> contains elements + that match the conditions defined by the specified predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to search for. + + + true if the ImmutableList<T> contains one or more elements + that match the conditions defined by the specified predicate; otherwise, + false. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the first occurrence within the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The first element that matches the conditions defined by the specified predicate, + if found; otherwise, the default value for type T. + + + + + Retrieves all the elements that match the conditions defined by the specified + predicate. + + + The System.Predicate<T> delegate that defines the conditions of the elements + to search for. + + + A ImmutableList<T> containing all the elements that match + the conditions defined by the specified predicate, if found; otherwise, an + empty ImmutableList<T>. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the range of elements in the ImmutableList<T> that extends + from the specified index to the last element. + + The zero-based starting index of the search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the first occurrence within + the range of elements in the ImmutableList<T> that starts + at the specified index and contains the specified number of elements. + + The zero-based starting index of the search. + The number of elements in the section to search. + The System.Predicate<T> delegate that defines the conditions of the element to search for. + + The zero-based index of the first occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the last occurrence within the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The last element that matches the conditions defined by the specified predicate, + if found; otherwise, the default value for type T. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the entire ImmutableList<T>. + + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the range of elements in the ImmutableList<T> that extends + from the first element to the specified index. + + The zero-based starting index of the backward search. + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Searches for an element that matches the conditions defined by the specified + predicate, and returns the zero-based index of the last occurrence within + the range of elements in the ImmutableList<T> that contains + the specified number of elements and ends at the specified index. + + The zero-based starting index of the backward search. + The number of elements in the section to search. + + The System.Predicate<T> delegate that defines the conditions of the element + to search for. + + + The zero-based index of the last occurrence of an element that matches the + conditions defined by match, if found; otherwise, -1. + + + + + Freezes this node and all descendent nodes so that any mutations require a new instance of the nodes. + + + + + AVL rotate left operation. + + The tree. + The rotated tree. + + + + AVL rotate right operation. + + The tree. + The rotated tree. + + + + AVL rotate double-left operation. + + The tree. + The rotated tree. + + + + AVL rotate double-right operation. + + The tree. + The rotated tree. + + + + Returns a value indicating whether the tree is in balance. + + The tree. + 0 if the tree is in balance, a positive integer if the right side is heavy, or a negative integer if the left side is heavy. + + + + Determines whether the specified tree is right heavy. + + The tree. + + true if [is right heavy] [the specified tree]; otherwise, false. + + + + + Determines whether the specified tree is left heavy. + + + + + Balances the specified tree. + + The tree. + A balanced tree. + + + + Balance the specified node. Allows for a large imbalance between left and + right nodes, but assumes left and right nodes are individually balanced. + + The node. + A balanced node + + + + Creates a node mutation, either by mutating this node (if not yet frozen) or by creating a clone of this node + with the described changes. + + The left branch of the mutated node. + The right branch of the mutated node. + The mutated (or created) node. + + + + Creates a node mutation, either by mutating this node (if not yet frozen) or by creating a clone of this node + with the described changes. + + The new value for this node. + The mutated (or created) node. + + + + A simple view of the immutable list that the debugger can show to the developer. + + + + + The collection to be enumerated. + + + + + The simple view of the collection. + + + + + Initializes a new instance of the class. + + The list to display in the debugger + + + + Gets a simple debugger-viewable list. + + + + + A simple view of the immutable list that the debugger can show to the developer. + + + + + The collection to be enumerated. + + + + + The simple view of the collection. + + + + + Initializes a new instance of the class. + + The list to display in the debugger + + + + Gets a simple debugger-viewable list. + + + + + An immutable queue. + + The type of elements stored in the queue. + + + + The singleton empty queue. + + + Additional instances representing the empty queue may exist on deserialized instances. + Actually since this queue is a struct, instances don't even apply and there are no singletons. + + + + + The end of the queue that enqueued elements are pushed onto. + + + + + The end of the queue from which elements are dequeued. + + + + + Backing field for the property. + + + + + Initializes a new instance of the class. + + The forward stack. + The backward stack. + + + + Gets the empty queue. + + + + + Gets a value indicating whether this instance is empty. + + + true if this instance is empty; otherwise, false. + + + + + Gets the empty queue. + + + + + Gets an empty queue. + + + + + Gets the reversed stack. + + + + + Gets the element at the front of the queue. + + Thrown when the stack is empty. + + + + Adds an element to the back of the queue. + + The value. + + The new queue. + + + + + Adds an element to the back of the queue. + + The value. + + The new queue. + + + + + Returns a queue that is missing the front element. + + A queue; never null. + Thrown when the stack is empty. + + + + Retrieves the item at the head of the queue, and returns a queue with the head element removed. + + Receives the value from the head of the queue. + The new queue with the head element removed. + Thrown when the stack is empty. + + + + Returns a queue that is missing the front element. + + A queue; never null. + Thrown when the stack is empty. + + + + Returns an enumerator that iterates through the collection. + + + An that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + A memory allocation-free enumerator of . + + + + + The original queue being enumerated. + + + + + The remaining forwards stack of the queue being enumerated. + + + + + The remaining backwards stack of the queue being enumerated. + Its order is reversed when the field is first initialized. + + + + + Initializes a new instance of the struct. + + The queue to enumerate. + + + + The current element. + + + + + Advances enumeration to the next element. + + A value indicating whether there is another element in the enumeration. + + + + A memory allocation-free enumerator of . + + + + + The original queue being enumerated. + + + + + The remaining forwards stack of the queue being enumerated. + + + + + The remaining backwards stack of the queue being enumerated. + Its order is reversed when the field is first initialized. + + + + + A value indicating whether this enumerator has been disposed. + + + + + Initializes a new instance of the struct. + + The queue to enumerate. + + + + The current element. + + + + + The current element. + + + + + Advances enumeration to the next element. + + A value indicating whether there is another element in the enumeration. + + + + Restarts enumeration. + + + + + Disposes this instance. + + + + + Throws an if this + enumerator has already been disposed. + + + + + A simple view of the immutable collection that the debugger can show to the developer. + + + + + The collection to be enumerated. + + + + + The simple view of the collection. + + + + + Initializes a new instance of the class. + + The collection to display in the debugger + + + + Gets a simple debugger-viewable collection. + + + + + Contains the inner Builder class. + + + An immutable sorted dictionary implementation. + + The type of the key. + The type of the value. + + + + A sorted dictionary that mutates with little or no memory allocations, + can produce and/or build on immutable sorted dictionary instances very efficiently. + + + + This class allows multiple combinations of changes to be made to a set with equal efficiency. + + + Instance members of this class are not thread-safe. + + + + + + The binary tree used to store the contents of the map. Contents are typically not entirely frozen. + + + + + The key comparer. + + + + + The value comparer. + + + + + The number of entries in the map. + + + + + Caches an immutable instance that represents the current state of the collection. + + Null if no immutable view has been created for the current version. + + + + A number that increments every time the builder changes its contents. + + + + + The object callers may use to synchronize access to this collection. + + + + + Initializes a new instance of the class. + + A map to act as the basis for a new map. + + + + See + + + + + See + + + + + See + + + + + See + + + + + Gets the number of elements in this map. + + + + + Gets a value indicating whether this instance is read-only. + + Always false. + + + + Gets the current version of the contents of this builder. + + + + + Gets or sets the root node that represents the data in this collection. + + + + + Gets or sets the value for a given key. + + The key. + The value associated with the given key. + + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + + Gets an containing the keys of the . + + + An containing the keys of the object that implements . + + + + + Gets an containing the values in the . + + + An containing the values in the object that implements . + + + + + Gets an object that can be used to synchronize access to the . + + An object that can be used to synchronize access to the . + + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + + Gets or sets the key comparer. + + + The key comparer. + + + + + Gets or sets the value comparer. + + + The value comparer. + + + + + Adds an element with the provided key and value to the object. + + The to use as the key of the element to add. + The to use as the value of the element to add. + + + + Determines whether the object contains an element with the specified key. + + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + + + + Returns an object for the object. + + + An object for the object. + + + + + + Removes the element with the specified key from the object. + + The key of the element to remove. + + + + Gets or sets the element with the specified key. + + The key. + + + + + Copies the elements of the to an , starting at a particular index. + + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + + See + + + + + See + + + + + See + + + + + See + + + + + See the interface. + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + Determines whether the ImmutableSortedMap<TKey,TValue> + contains an element with the specified value. + + + The value to locate in the ImmutableSortedMap<TKey,TValue>. + The value can be null for reference types. + + + true if the ImmutableSortedMap<TKey,TValue> contains + an element with the specified value; otherwise, false. + + + + + Removes any entries from the dictionaries with keys that match those found in the specified sequence. + + The keys for entries to remove from the dictionary. + + + + Removes any entries from the dictionaries with keys that match those found in the specified sequence. + + The keys for entries to remove from the dictionary. + + + + Gets the value for a given key if a matching key exists in the dictionary. + + The key to search for. + The value for the key, or default(TValue) if no matching key was found. + + + + Gets the value for a given key if a matching key exists in the dictionary. + + The key to search for. + The default value to return if no matching key is found in the dictionary. + + The value for the key, or if no matching key was found. + + + + + Creates an immutable sorted dictionary based on the contents of this instance. + + An immutable map. + + This method is an O(n) operation, and approaches O(1) time as the number of + actual mutations to the set since the last call to this method approaches 0. + + + + + An empty sorted dictionary with default sort and equality comparers. + + + + + The root node of the AVL tree that stores this map. + + + + + The number of elements in the set. + + + + + The comparer used to sort keys in this map. + + + + + The comparer used to detect equivalent values in this map. + + + + + Initializes a new instance of the class. + + The key comparer. + The value comparer. + + + + Initializes a new instance of the class. + + The root of the tree containing the contents of the map. + The number of elements in this map. + The key comparer. + The value comparer. + + + + See the interface. + + + + + Gets the value comparer used to determine whether values are equal. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + Gets the keys. + + + + + Gets the values. + + + + + See the interface. + + + + + Gets the root node (for testing purposes). + + + + + Gets the with the specified key. + + + + + Gets or sets the with the specified key. + + + + + Creates a collection with the same contents as this collection that + can be efficiently mutated across multiple operations using standard + mutable interfaces. + + + This is an O(1) operation and results in only a single (small) memory allocation. + The mutable collection that is returned is *not* thread-safe. + + + + + See the interface. + + + + + See the interface. + + + + + Applies a given set of key=value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + + The key=value pairs to set on the map. Any keys that conflict with existing keys will overwrite the previous values. + An immutable dictionary. + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + Determines whether the ImmutableSortedMap<TKey,TValue> + contains an element with the specified value. + + + The value to locate in the ImmutableSortedMap<TKey,TValue>. + The value can be null for reference types. + + + true if the ImmutableSortedMap<TKey,TValue> contains + an element with the specified value; otherwise, false. + + + + + See the interface. + + + + + See the interface. + + + + + Applies a given set of key=value pairs to an immutable dictionary, replacing any conflicting keys in the resulting dictionary. + + The key=value pairs to set on the map. Any keys that conflict with existing keys will overwrite the previous values. + An immutable dictionary. + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + See the interface. + + + + + Adds an element with the provided key and value to the . + + The object to use as the key of the element to add. + The object to use as the value of the element to add. + is null. + + + An element with the same key already exists in the . + + + The is read-only. + + + + + Removes the element with the specified key from the . + + The key of the element to remove. + + true if the element is successfully removed; otherwise, false. This method also returns false if was not found in the original . + + is null. + + + The is read-only. + + + + + Gets a value indicating whether the object has a fixed size. + + true if the object has a fixed size; otherwise, false. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + + Gets an containing the keys of the . + + + An containing the keys of the object that implements . + + + + + Gets an containing the values in the . + + + An containing the values in the object that implements . + + + + + Adds an element with the provided key and value to the object. + + The to use as the key of the element to add. + The to use as the value of the element to add. + + + + Determines whether the object contains an element with the specified key. + + The key to locate in the object. + + true if the contains an element with the key; otherwise, false. + + + + + Returns an object for the object. + + + An object for the object. + + + + + + Removes the element with the specified key from the object. + + The key of the element to remove. + + + + Gets or sets the element with the specified key. + + The key. + + + + + Clears this instance. + + + + + + Copies the elements of the to an , starting at a particular index. + + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Gets an object that can be used to synchronize access to the . + + An object that can be used to synchronize access to the . + + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Creates a new sorted set wrapper for a node tree. + + The root of the collection. + The number of elements in the map. + The key comparer to use for the map. + The value comparer to use for the map. + The immutable sorted set instance. + + + + Attempts to discover an instance beneath some enumerable sequence + if one exists. + + The sequence that may have come from an immutable map. + Receives the concrete typed value if one can be found. + true if the cast was successful; false otherwise. + + + + Bulk adds entries to the map. + + The entries to add. + true to allow the sequence to include duplicate keys and let the last one win; false to throw on collisions. + true when being called from ToHashMap to avoid StackOverflow. + + + + Creates a wrapping collection type around a root node. + + The root node to wrap. + The number of elements in the new tree, assuming it's different from the current tree. + A wrapping collection type for the new tree. + + + + Efficiently creates a new collection based on the contents of some sequence. + + + + + Enumerates the contents of a binary tree. + + + This struct can and should be kept in exact sync with the other binary tree enumerators: + ImmutableList.Enumerator, ImmutableSortedMap.Enumerator, and ImmutableSortedSet.Enumerator. + + CAUTION: when this enumerator is actually used as a valuetype (not boxed) do NOT copy it by assigning to a second variable + or by passing it to another method. When this enumerator is disposed of it returns a mutable reference type stack to a resource pool, + and if the value type enumerator is copied (which can easily happen unintentionally if you pass the value around) there is a risk + that a stack that has already been returned to the resource pool may still be in use by one of the enumerator copies, leading to data + corruption and/or exceptions. + + + + + The resource pool of reusable mutable stacks for purposes of enumeration. + + + We utilize this resource pool to make "allocation free" enumeration achievable. + + + + + The builder being enumerated, if applicable. + + + + + A unique ID for this instance of this enumerator. + Used to protect pooled objects from use after they are recycled. + + + + + The set being enumerated. + + + + + The stack to use for enumerating the binary tree. + + + + + The node currently selected. + + + + + The version of the builder (when applicable) that is being enumerated. + + + + + Initializes an Enumerator structure. + + The root of the set to be enumerated. + The builder, if applicable. + + + + The current element. + + + + + + + + The current element. + + + + + Disposes of this enumerator and returns the stack reference to the resource pool. + + + + + Advances enumeration to the next element. + + A value indicating whether there is another element in the enumeration. + + + + Restarts enumeration. + + + + + Throws an ObjectDisposedException if this enumerator has been disposed. + + + + + Throws an exception if the underlying builder's contents have been changed since enumeration started. + + Thrown if the collection has changed. + + + + Pushes this node and all its Left descendents onto the stack. + + The starting node to push onto the stack. + + + + A node in the AVL tree storing this map. + + + + + The default empty node. + + + + + The key associated with this node. + + + + + The value associated with this node. + + + Sadly this field could be readonly but doing so breaks serialization due to bug: + http://connect.microsoft.com/VisualStudio/feedback/details/312970/weird-argumentexception-when-deserializing-field-in-typedreferences-cannot-be-static-or-init-only + + + + + A value indicating whether this node has been frozen (made immutable). + + + Nodes must be frozen before ever being observed by a wrapping collection type + to protect collections from further mutations. + + + + + The depth of the tree beneath this node. + + + + + The left tree. + + + + + The right tree. + + + + + Initializes a new instance of the class + that is pre-frozen. + + + + + Initializes a new instance of the class + that is not yet frozen. + + The key. + The value. + The left. + The right. + Whether this node is prefrozen. + + + + Gets a value indicating whether this instance is empty. + + + true if this instance is empty; otherwise, false. + + + + + Gets the left branch of this node. + + + + + Gets the right branch of this node. + + + + + Gets the height of the tree beneath this node. + + + + + Gets the left branch of this node. + + + + + Gets the left branch of this node. + + + + + Gets the right branch of this node. + + + + + Gets the right branch of this node. + + + + + Gets the value represented by the current node. + + + + + Gets the number of elements contained by this node and below. + + + + + Gets the keys. + + + + + Gets the values. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through the collection. + + The builder, if applicable. + + A that can be used to iterate through the collection. + + + + + See + + + + + See + + + + + Creates a node tree from an existing (mutable) collection. + + The collection. + The root of the node tree. + + + + Adds the specified key. + + The key. + The value. + The key comparer. + The value comparer. + Receives a value indicating whether this node tree has mutated because of this operation. + + + + Adds the specified key. + + The key. + The value. + The key comparer. + The value comparer. + Receives a value indicating whether an existing value was replaced. + Receives a value indicating whether this node tree has mutated because of this operation. + + + + Removes the specified key. + + The key. + The key comparer. + Receives a value indicating whether this node tree has mutated because of this operation. + The new AVL tree. + + + + Gets the value or default. + + The key. + The key comparer. + The value. + + + + Tries to get the value. + + The key. + The key comparer. + The value. + True if the key was found. + + + + Searches the dictionary for a given key and returns the equal key it finds, if any. + + The key to search for. + The key comparer. + The key from the dictionary that the search found, or if the search yielded no match. + A value indicating whether the search was successful. + + This can be useful when you want to reuse a previously stored reference instead of + a newly constructed one (so that more sharing of references can occur) or to look up + the canonical value, or a value that has more complete data than the value you currently have, + although their comparer functions indicate they are equal. + + + + + Determines whether the specified key contains key. + + The key. + The key comparer. + + true if the specified key contains key; otherwise, false. + + + + + Determines whether the ImmutableSortedMap<TKey,TValue> + contains an element with the specified value. + + + The value to locate in the ImmutableSortedMap<TKey,TValue>. + The value can be null for reference types. + + The value comparer to use. + + true if the ImmutableSortedMap<TKey,TValue> contains + an element with the specified value; otherwise, false. + + + + + Determines whether [contains] [the specified pair]. + + The pair. + The key comparer. + The value comparer. + + true if [contains] [the specified pair]; otherwise, false. + + + + + Freezes this node and all descendent nodes so that any mutations require a new instance of the nodes. + + + + + AVL rotate left operation. + + The tree. + The rotated tree. + + + + AVL rotate right operation. + + The tree. + The rotated tree. + + + + AVL rotate double-left operation. + + The tree. + The rotated tree. + + + + AVL rotate double-right operation. + + The tree. + The rotated tree. + + + + Returns a value indicating whether the tree is in balance. + + The tree. + 0 if the tree is in balance, a positive integer if the right side is heavy, or a negative integer if the left side is heavy. + + + + Determines whether the specified tree is right heavy. + + The tree. + + true if [is right heavy] [the specified tree]; otherwise, false. + + + + + Determines whether the specified tree is left heavy. + + + + + Balances the specified tree. + + The tree. + A balanced tree. + + + + Creates a node tree that contains the contents of a list. + + An indexable list with the contents that the new node tree should contain. + The starting index within that should be captured by the node tree. + The number of elements from that should be captured by the node tree. + The root of the created node tree. + + + + Adds the specified key. Callers are expected to have validated arguments. + + The key. + The value. + The key comparer. + The value comparer. + if true, an existing key=value pair will be overwritten with the new one. + Receives a value indicating whether an existing value was replaced. + Receives a value indicating whether this node tree has mutated because of this operation. + The new AVL tree. + + + + Removes the specified key. Callers are expected to validate arguments. + + The key. + The key comparer. + Receives a value indicating whether this node tree has mutated because of this operation. + The new AVL tree. + + + + Creates a node mutation, either by mutating this node (if not yet frozen) or by creating a clone of this node + with the described changes. + + The left branch of the mutated node. + The right branch of the mutated node. + The mutated (or created) node. + + + + Searches the specified key. Callers are expected to validate arguments. + + The key. + The key comparer. + + + + A simple view of the immutable collection that the debugger can show to the developer. + + + + + The collection to be enumerated. + + + + + The simple view of the collection. + + + + + Initializes a new instance of the class. + + The collection to display in the debugger + + + + Gets a simple debugger-viewable collection. + + + + + A simple view of the immutable collection that the debugger can show to the developer. + + + + + The collection to be enumerated. + + + + + The simple view of the collection. + + + + + Initializes a new instance of the class. + + The collection to display in the debugger + + + + Gets a simple debugger-viewable collection. + + + + + A set of initialization methods for instances of . + + + + + Returns an empty collection. + + The type of items stored by the collection. + The immutable collection. + + + + An immutable stack. + + The type of element stored by the stack. + + + + The singleton empty stack. + + + Additional instances representing the empty stack may exist on deserialized stacks. + + + + + The element on the top of the stack. + + + + + A stack that contains the rest of the elements (under the top element). + + + + + Initializes a new instance of the class + that acts as the empty stack. + + + + + Initializes a new instance of the class. + + The head element on the stack. + The rest of the elements on the stack. + + + + Gets the empty stack, upon which all stacks are built. + + + + + Gets the empty stack, upon which all stacks are built. + + + + + Gets an empty stack. + + + + + Gets a value indicating whether this instance is empty. + + + true if this instance is empty; otherwise, false. + + + + + Gets the element on the top of the stack. + + + The element on the top of the stack. + + Thrown when the stack is empty. + + + + Pushes an element onto a stack and returns the new stack. + + The element to push onto the stack. + The new stack. + + + + Pushes an element onto a stack and returns the new stack. + + The element to push onto the stack. + The new stack. + + + + Returns a stack that lacks the top element on this stack. + + A stack; never null + Thrown when the stack is empty. + + + + Pops the top element off the stack. + + The value that was removed from the stack. + + A stack; never null + + + + + Returns a stack that lacks the top element on this stack. + + A stack; never null + Thrown when the stack is empty. + + + + Returns an enumerator that iterates through the collection. + + + An that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Reverses the order of a stack. + + The reversed stack. + + + + Enumerates a stack with no memory allocations. + + + + + The original stack being enumerated. + + + + + The remaining stack not yet enumerated. + + + + + Initializes a new instance of the struct. + + The stack to enumerator. + + + + Gets the current element. + + + + + Moves to the first or next element. + + A value indicating whether there are any more elements. + + + + Enumerates a stack with no memory allocations. + + + + + The original stack being enumerated. + + + + + The remaining stack not yet enumerated. + + + + + A flag indicating whether this enumerator has been disposed. + + + + + Initializes a new instance of the class. + + The stack to enumerator. + + + + Gets the current element. + + + + + Gets the current element. + + + + + Moves to the first or next element. + + A value indicating whether there are any more elements. + + + + Resets the position to just before the first element in the list. + + + + + Disposes this instance. + + + + + Throws an if this + enumerator has already been disposed. + + + + + A simple view of the immutable collection that the debugger can show to the developer. + + + + + The collection to be enumerated. + + + + + The simple view of the collection. + + + + + Initializes a new instance of the class. + + The collection to display in the debugger + + + + Gets a simple debugger-viewable collection. + + + + + Describes an ordered collection of elements. + + The type of element in the collection. + + + + Gets the number of elements in the collection. + + + + + Gets the element in the collection at a given index. + + + + + An interface that must be implemented by collections that want to avoid + boxing their own enumerators when using the + + method. + + The type of value to be enumerated. + The type of the enumerator struct. + + + + Gets the strongly-typed enumerator. + + + + + + An -like interface that does not derive from . + + The type of value to be enumerated. + + This interface is useful because some enumerator struct types do not want to implement + since it increases the size of the generated code in foreach. + + + + + Returns the current element. + + + + + Advances to the next element. + + + + + A thin wrapper around the Keys or Values enumerators so they look like a collection. + + The type of key in the dictionary. + The type of value in the dictionary. + Either TKey or TValue. + + + + The underlying wrapped dictionary. + + + + + The key or value enumerable that this instance wraps. + + + + + Initializes a new instance of the class. + + The dictionary to base on. + The keys or values enumeration to wrap as a collection. + + + + See + + + + + See + + The number of elements contained in the . + + + + Gets the wrapped dictionary. + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + See + + + + + Copies the elements of the to an , starting at a particular index. + + The one-dimensional that is the destination of the elements copied from . The must have zero-based indexing. + The zero-based index in at which copying begins. + + + + Gets a value indicating whether access to the is synchronized (thread safe). + + true if access to the is synchronized (thread safe); otherwise, false. + + + + Gets an object that can be used to synchronize access to the . + + An object that can be used to synchronize access to the . + + + + A lightweight collection view over and IEnumerable of keys. + + + + + Initializes a new instance of the class. + + + + + See + + + + + A lightweight collection view over and IEnumerable of values. + + + + + Initializes a new instance of the class. + + + + + See + + + + + A simple struct we wrap reference types inside when storing in arrays to + bypass the CLR's covariant checks when writing to arrays. + + + We use RefAsValueType{T} as a wrapper to avoid paying the cost of covariant checks whenever + the underlying array that the Stack{T} class uses is written to. + We've recognized this as a perf win in ETL traces for these stack frames: + clr!JIT_Stelem_Ref + clr!ArrayStoreCheck + clr!ObjIsInstanceOf + + + + + Initializes a new instance of the struct. + + + + + The value. + + + + + Object pooling utilities. + + + + + The ever-incrementing (and wrap-on-overflow) integer for owner id's. + + + + + The ID reserved for unassigned objects. + + + + + Returns a new ID. + + + + + Gets or sets the current owner of this recyclable object. + + + + + Returns the recyclable value if it hasn't been reclaimed already. + + The type of renter of the object. + The renter of the object. + The rented object. + Thrown if is no longer the renter of the value. + + + + A node in the AVL tree storing key/value pairs with Int32 keys. + + + This is a trimmed down version of + with TKey fixed to be Int32. This avoids multiple interface-based dispatches while examining + each node in the tree during a lookup: an interface call to the comparer's Compare method, + and then an interface call to Int32's IComparable's CompareTo method as part of + the GenericComparer{Int32}'s Compare implementation. + + + + + The default empty node. + + + + + The Int32 key associated with this node. + + + + + The value associated with this node. + + + Sadly, this field could be readonly but doing so breaks serialization due to bug: + http://connect.microsoft.com/VisualStudio/feedback/details/312970/weird-argumentexception-when-deserializing-field-in-typedreferences-cannot-be-static-or-init-only + + + + + A value indicating whether this node has been frozen (made immutable). + + + Nodes must be frozen before ever being observed by a wrapping collection type + to protect collections from further mutations. + + + + + The depth of the tree beneath this node. + + + + + The left tree. + + + + + The right tree. + + + + + Initializes a new instance of the class that is pre-frozen. + + + + + Initializes a new instance of the class that is not yet frozen. + + The key. + The value. + The left. + The right. + Whether this node is prefrozen. + + + + Gets a value indicating whether this instance is empty. + + + true if this instance is empty; otherwise, false. + + + + + Gets the height of the tree beneath this node. + + + + + Gets the left branch of this node. + + + + + Gets the right branch of this node. + + + + + Gets the left branch of this node. + + + + + Gets the right branch of this node. + + + + + Gets the number of elements contained by this node and below. + + + + + Gets the value represented by the current node. + + + + + Gets the values. + + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Adds the specified key. + + The key. + The value. + The value comparer. + Receives a value indicating whether an existing value was replaced. + Receives a value indicating whether this node tree has mutated because of this operation. + + + + Removes the specified key. + + The key. + Receives a value indicating whether this node tree has mutated because of this operation. + The new AVL tree. + + + + Gets the value or default. + + The key. + The value. + + + + Tries to get the value. + + The key. + The value. + True if the key was found. + + + + Freezes this node and all descendent nodes so that any mutations require a new instance of the nodes. + + + + + AVL rotate left operation. + + The tree. + The rotated tree. + + + + AVL rotate right operation. + + The tree. + The rotated tree. + + + + AVL rotate double-left operation. + + The tree. + The rotated tree. + + + + AVL rotate double-right operation. + + The tree. + The rotated tree. + + + + Returns a value indicating whether the tree is in balance. + + The tree. + 0 if the tree is in balance, a positive integer if the right side is heavy, or a negative integer if the left side is heavy. + + + + Determines whether the specified tree is right heavy. + + The tree. + + true if [is right heavy] [the specified tree]; otherwise, false. + + + + + Determines whether the specified tree is left heavy. + + + + + Balances the specified tree. + + The tree. + A balanced tree. + + + + Creates a node tree that contains the contents of a list. + + An indexable list with the contents that the new node tree should contain. + The starting index within that should be captured by the node tree. + The number of elements from that should be captured by the node tree. + The root of the created node tree. + + + + Adds the specified key. Callers are expected to have validated arguments. + + The key. + The value. + The value comparer. + if true, an existing key=value pair will be overwritten with the new one. + Receives a value indicating whether an existing value was replaced. + Receives a value indicating whether this node tree has mutated because of this operation. + The new AVL tree. + + + + Removes the specified key. Callers are expected to validate arguments. + + The key. + Receives a value indicating whether this node tree has mutated because of this operation. + The new AVL tree. + + + + Creates a node mutation, either by mutating this node (if not yet frozen) or by creating a clone of this node + with the described changes. + + The left branch of the mutated node. + The right branch of the mutated node. + The mutated (or created) node. + + + + Searches the specified key. Callers are expected to validate arguments. + + The key. + + + + Enumerates the contents of a binary tree. + + + This struct can and should be kept in exact sync with the other binary tree enumerators: + ImmutableList.Enumerator, ImmutableSortedMap.Enumerator, and ImmutableSortedSet.Enumerator. + + CAUTION: when this enumerator is actually used as a valuetype (not boxed) do NOT copy it by assigning to a second variable + or by passing it to another method. When this enumerator is disposed of it returns a mutable reference type stack to a resource pool, + and if the value type enumerator is copied (which can easily happen unintentionally if you pass the value around) there is a risk + that a stack that has already been returned to the resource pool may still be in use by one of the enumerator copies, leading to data + corruption and/or exceptions. + + + + + The resource pool of reusable mutable stacks for purposes of enumeration. + + + We utilize this resource pool to make "allocation free" enumeration achievable. + + + + + A unique ID for this instance of this enumerator. + Used to protect pooled objects from use after they are recycled. + + + + + The set being enumerated. + + + + + The stack to use for enumerating the binary tree. + + + + + The node currently selected. + + + + + Initializes an Enumerator structure. + + The root of the set to be enumerated. + + + + The current element. + + + + + + + + The current element. + + + + + Disposes of this enumerator and returns the stack reference to the resource pool. + + + + + Advances enumeration to the next element. + + A value indicating whether there is another element in the enumeration. + + + + Restarts enumeration. + + + + + Throws an ObjectDisposedException if this enumerator has been disposed. + + + + + Pushes this node and all its Left descendents onto the stack. + + The starting node to push onto the stack. + + + + Common runtime checks that throw ArgumentExceptions upon failure. + + + + + Throws an exception if the specified parameter's value is null. + + The type of the parameter. + The value of the argument. + The name of the parameter to include in any thrown exception. + Thrown if is null + + + + Throws an exception if the specified parameter's value is null. It passes through the specified value back as a return value. + + The type of the parameter. + The value of the argument. + The name of the parameter to include in any thrown exception. + The value of the parameter. + Thrown if is null + + + + Throws an exception if the specified parameter's value is null. + + The type of the parameter. + The value of the argument. + The name of the parameter to include in any thrown exception. + Thrown if is null + + This method exists for callers who themselves only know the type as a generic parameter which + may or may not be a class, but certainly cannot be null. + + + + + Throws an . + + The name of the parameter that was null. + + + + Throws an if a condition does not evaluate to true. + + + + + Throws an . + + + + + Throws an ArgumentException if a condition does not evaluate to true. + + + + + Throws an ObjectDisposedException for a disposed object. + + Specifies the type of the disposed object. + The disposed object. + + + + Indicates to Code Analysis that a method validates a particular parameter. + + + + + + MshUtilityMshSnapin (or MshUtilityMshSnapinInstaller) is a class for facilitating registry + of necessary information for monad utility mshsnapin. + + This class will be built with monad utility dll + + + + + + + Create an instance of this class. + + + + + Get name of this mshsnapin. + + + + + Get the default vendor string for this mshsnapin. + + + + + Get resource information for vendor. This is a string of format: resourceBaseName,resourceName. + + + + + Get the default description string for this mshsnapin. + + + + + Get resource information for description. This is a string of format: resourceBaseName,resourceName. + + + + + This class provides functionality for serializing a PSObject + + + + + depth of serialization + + + + + XmlWriter to be used for writing. + + + + + Whether type information should be included in the xml + + + + + CustomerSerializer used for formatting the output for _writer + + + + + Constructor + + + writer to be used for serialization. + + + should the type information to be shown. + + + depth to be used for serialization. If this value is specified, + depth from types.xml is not used. + + + + + Default depth of serialization + + + + + Default depth of serializaiton + + + + + Constructor + + + writer to be used for serialization. + + + should the type information to be shown. + + + + + Serialzies passed in object + + + object to be serialized + + + + + Serialzies passed in object + + + object to be serialized + + + + + Writes the start of root element + + + + + Write the end of root element + + + + + Flush the writer + + + + + This internal helper class provides methods for serializing mshObject. + + + + + Xml writer to be used + + + + + check first call for every pipeline object to write Object tag else property tag + + + + + should the type information to be shown + + + + + check object call + + + + + Constructor + + + Xml writer to be used + + + Xml writer to be used + + + check first call for every pipeline object to write Object tag else property tag + + + + + Called from a separate thread will stop the serialization process + + + + + This writes one object. + + + source to be serialized. + + + name of property. If null, name attribute is not written. + + + depth to which this object should be serialized. + + + + + Serializes Primitive Known Types. + + + true if source is handled, else false. + + + + + Serializes PSObject whose base objects are of primitive known type + + + + + + true if source is handled, else false. + + + + + Checks if source is known container type and returns appropriate + information + + + + + + + + + Checks if derived is of type baseType or a type derived from baseType + + + + + + + + Serializes an PSObject whose baseobject is of primitive type + and which has notes. + + + source from which notes are written + + + primitive object which is written as base object. In most cases it + is same source.ImmediateBaseObject. When PSObject is serialized as string, + it can be different. for more info. + + + TypeSerializationInfo for the primitive. + + + + + + + Writes start element, attributes and typeNames for PSObject. + + + + + if true, TypeName information is written, else not. + + + + + Returns true if PSObject has notes. + + + + + + + + Serialize member set. This method serializes without writing + enclosing tags and attributes. + + + enumerable containing members + + + + if this is true, write an enclosing "" tag. + + + + + + Serializes properties of PSObject + + + + + Serializes properties from collection + + + Collection of properties to serialize + + + Name for enclosing element tag + + + depth to which each property should be + serialized + + + + + Serializes IEnumerable + + + enumerable which is serialized + + + + + + Serializes IDictionary + + dictionary which is serialized + + + + + Gets the string from PSObject using the information from + types.ps1xml. This string is used for serializing the PSObject. + + + + PSObject to be converted to string + + + + string value to use for serializing this PSObject. + + + + + Reads the information the PSObject + and returns true if this object should be serialized as + string + + PSObject to be serialized + true if the object needs to be serialized as a string + + + + compute the serialization depth for an PSObject instance subtree + + PSObject whose serialization depth has to be computed + current depth + + + + + Writes null + + + + + + Writes an item or property in Monad namespace + + The XmlWriter stream to which the object is serialized. + name of property. Pass null for item + object to be written + serialization information about source + + + + Writes start element in Monad namespace + + + tag of element + + + + Writes attribute in monad namespace + + + name of attribute + value of attribute + + + + This class contains strings required for serialization for Convertto-XML + + + + + Element tag for root node + + + + + Element tag for PSObject + + + + + Element tag for properties + + + + + String for name attribute + + + + + String for type attribute + + + + + Value of name attribute for dictionary key part in dictnary entry + + + + + Value of name attribute for dictionary value part in dictnary entry + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot append CSV content to the following file: {1}. The appended object does not have a property that corresponds to the following column: {0}. To continue with mismatched properties, add the -Force parameter, and then retry the command.. + + + + + Looks up a localized string similar to You must specify either the -Path or -LiteralPath parameters, but not both.. + + + + + Looks up a localized string similar to One or more headers were not specified. Default names starting with "H" have been used in place of any missing headers.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to There is no breakpoint with ID '{0}'.. + + + + + Looks up a localized string similar to Cannot set breakpoint. The language mode for this session is incompatible with the system-wide language mode.. + + + + + Looks up a localized string similar to Wait-Debugger called on line {0} in {1}.. + + + + + Looks up a localized string similar to File '{0}' does not exist.. + + + + + Looks up a localized string similar to Line cannot be less than 1.. + + + + + Looks up a localized string similar to Failed to persist debug options for Process {0}.. + + + + + Looks up a localized string similar to Debugging is not supported on remote sessions.. + + + + + Looks up a localized string similar to Breakpoints cannot be set in the remote session because remote debugging is not supported by the current host.. + + + + + Looks up a localized string similar to You cannot debug the default host Runspace using this cmdlet. To debug the default Runspace use the normal debugging commands from the host.. + + + + + Looks up a localized string similar to To end the debugging session type the 'Detach' command at the debugger prompt, or type 'Ctrl+C' otherwise.. + + + + + Looks up a localized string similar to Cannot debug Runspace. There is no host or host UI. The debugger requires a host and host UI for debugging.. + + + + + Looks up a localized string similar to Cannot debug Runspace. The host has no debugger. Try debugging the Runspace inside the Windows PowerShell console or the Windows PowerShell ISE, both of which have built-in debuggers.. + + + + + Looks up a localized string similar to No Runspace was found.. + + + + + Looks up a localized string similar to Command or script completed.. + + + + + Looks up a localized string similar to Debugging Runspace: {0}. + + + + + Looks up a localized string similar to More than one Runspace was found. Only one Runspace can be debugged at a time.. + + + + + Looks up a localized string similar to Cannot set debug options on Runspace {0} because it is not in the Opened state.. + + + + + Looks up a localized string similar to No debugger was found for Runspace {0}.. + + + + + Looks up a localized string similar to Cannot set breakpoint on file '{0}'; only *.ps1 and *.psm1 files are valid.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Action must be specified for non-forwarded events.. + + + + + Looks up a localized string similar to Event with identifier '{0}' does not exist.. + + + + + Looks up a localized string similar to Event '{0}'. + + + + + Looks up a localized string similar to Event subscription '{0}'. + + + + + Looks up a localized string similar to Event subscription with identifier '{0}' does not exist.. + + + + + Looks up a localized string similar to Event subscription with source identifier '{0}' does not exist.. + + + + + Looks up a localized string similar to Remove. + + + + + Looks up a localized string similar to Event with source identifier '{0}' does not exist.. + + + + + Looks up a localized string similar to Unsubscribe. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to {0} Please note that Single-Threaded Apartment is not supported in PowerShell Core.. + + + + + Looks up a localized string similar to Cannot create type. Only core types are supported in this language mode.. + + + + + Looks up a localized string similar to A constructor was not found. Cannot find an appropriate constructor for type {0}.. + + + + + Looks up a localized string similar to Creating instances of attribute and delegated Windows RT types is not supported.. + + + + + Looks up a localized string similar to Cannot load COM type {0}.. + + + + + Looks up a localized string similar to The object written to the pipeline is an instance of the type "{0}" from the component's primary interoperability assembly. If this type exposes different members than the IDispatch members, scripts that are written to work with this object might not work if the primary interoperability assembly is not installed.. + + + + + Looks up a localized string similar to The value supplied is not valid, or the property is read-only. Change the value, and then try again.. + + + + + Looks up a localized string similar to The member "{1}" was not found for the specified {2} object.. + + + + + Looks up a localized string similar to Cannot find type [{0}]: verify that the assembly containing this type is loaded.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Input object "{0}" is not numeric.. + + + + + Looks up a localized string similar to Property "{0}" is not numeric.. + + + + + Looks up a localized string similar to The property "{0}" cannot be found in the input for any objects.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot open the file because the current provider ({0}) cannot open files.. + + + + + Looks up a localized string similar to The file {0} cannot be read: {1}. + + + + + Looks up a localized string similar to The option "Context" is not valid when searching results that are piped from Select-String output.. + + + + + Looks up a localized string similar to The string {0} is not a valid regular expression: {1}. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The property cannot be processed because the property "{0}" already exists.. + + + + + Looks up a localized string similar to A property is an empty script block and does not provide a name.. + + + + + Looks up a localized string similar to Multiple properties cannot be expanded.. + + + + + Looks up a localized string similar to Property "{0}" cannot be found.. + + + + + Looks up a localized string similar to Cannot rename multiple results.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to "Sort-Object" - "{0}" cannot be found in "InputObject".. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to "The Write-Error cmdlet reported an error.". + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Add variable. + + + + + Looks up a localized string similar to Name: {0}. + + + + + Looks up a localized string similar to Clear variable. + + + + + Looks up a localized string similar to Name: {0}. + + + + + Looks up a localized string similar to New variable. + + + + + Looks up a localized string similar to Name: {0} Value: {1}. + + + + + Looks up a localized string similar to Remove variable. + + + + + Looks up a localized string similar to Name: {0}. + + + + + Looks up a localized string similar to Set variable. + + + + + Looks up a localized string similar to Name: {0} Value: {1}. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to You must specify an object for the Get-Member cmdlet.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to 'maxValue' must be greater than zero.. + + + + + Looks up a localized string similar to The Minimum value ({0}) cannot be greater than or equal to the Maximum value ({1}).. + + + + + Looks up a localized string similar to 'minValue' cannot be greater than maxValue.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Algorithm '{0}' is not supported in this system.. + + + + + Looks up a localized string similar to The file '{0}' could not be parsed as a PowerShell Data File.. + + + + + Looks up a localized string similar to This command cannot be run because '{0}' is empty or blank. Please specify CSSUri and then run the command.. + + + + + Looks up a localized string similar to This command cannot be run because the file path '{0}' is not valid. Please provide a valid file path and then run the command.. + + + + + Looks up a localized string similar to Cannot open the file because the current provider ({0}) cannot open files.. + + + + + Looks up a localized string similar to The file '{0}' cannot be read: {1}. + + + + + Looks up a localized string similar to Path: . + + + + + Looks up a localized string similar to Cannot display the context of {0} as hex. The path resolves to multiple files.. + + + + + Looks up a localized string similar to Cannot convert input of type {0} to hexadecimal. To view the hexadecimal formatting of its string representation, pipe it to the Out-String cmdlet before piping it to Format-Hex.. + + + + + Looks up a localized string similar to The command cannot be run because using the AsHashTable parameter with more than one property requires adding the AsString parameter.. + + + + + Looks up a localized string similar to The command cannot be run because the AsString parameter requires that you specify the AsHashtable parameter.. + + + + + Looks up a localized string similar to The objects grouped by this property cannot be expanded because there is a key duplication. Provide a valid value for the property, and then try again.. + + + + + Looks up a localized string similar to {2} has one or more exceptions that are not valid.. + + + + + Looks up a localized string similar to There are no matching results found for {2}.. + + + + + Looks up a localized string similar to The command is not supported on this operating system.. + + + + + Looks up a localized string similar to Cannot find path '{0}' because it does not exist.. + + + + + Looks up a localized string similar to Cannot use tag '{0}'. The 'PS' prefix is reserved.. + + + + + Looks up a localized string similar to This command cannot be run because the prefix value in the Namespace parameter is null. Provide a valid value for the prefix, and then run the command again.. + + + + + Looks up a localized string similar to '{0}' is not supported in this system.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot process the color because {0} is not a valid color.. + + + + + Looks up a localized string similar to Cannot evaluate the error because a string is not specified.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The member referenced by this alias should not be null or empty.. + + + + + Looks up a localized string similar to Cannot add a member with type "{0}". Specify a different type for the MemberTypes parameter.. + + + + + Looks up a localized string similar to Cannot force the member with name "{0}" and type "{1}" to be added. A member with that name and type already exists, and the existing member is not an instance extension.. + + + + + Looks up a localized string similar to The parameter NotePropertyName cannot take values that could be converted to the type {0}. To define the name of a member with those values, use Add-Member, and specify the member type.. + + + + + Looks up a localized string similar to Cannot add a member with the name "{0}" because a member with that name already exists. To overwrite the member anyway, add the Force parameter to your command.. + + + + + Looks up a localized string similar to The name for a NoteProperty member should not be null or an empty string.. + + + + + Looks up a localized string similar to The TypeName parameter should not be null, empty, or contain only white spaces.. + + + + + Looks up a localized string similar to Both Value and SecondValue parameters should not be null for a member of type "{0}". Specify a non-null value for one of the two parameters.. + + + + + Looks up a localized string similar to The Value parameter is required for a member of type "{0}". Specify the Value parameter when adding members of this type.. + + + + + Looks up a localized string similar to The Value parameter should not be null for a member of type "{0}". Specify a non-null value for the Value parameter when adding members of this type.. + + + + + Looks up a localized string similar to The SecondValue parameter should not be null for a member of type "{0}". Specify a non-null value for the SecondValue parameter when adding members of this type.. + + + + + Looks up a localized string similar to The SecondValue parameter is not necessary for a member of type "{0}", and should not be specified. Do not specify the SecondValue parameter when you add members of this type.. + + + + + Looks up a localized string similar to To add a member, only one member type can be specified. The member types specified are: "{0}". + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot add type. The assembly name {0} matches both {1} and {2}.. + + + + + Looks up a localized string similar to Cannot add type. One or more required assemblies are missing.. + + + + + Looks up a localized string similar to Cannot add type. The assembly '{0}' could not be found.. + + + + + Looks up a localized string similar to Cannot add type. Definition of new types is not supported in this language mode.. + + + + + Looks up a localized string similar to {0}({1}) : {2}. + + + + + Looks up a localized string similar to Cannot add type. Compilation errors occurred.. + + + + + Looks up a localized string similar to Cannot add type due to the following exception: {0}. Verify that Microsoft .NET Framework {1} is installed. On x64-based versions of Windows, you must also install the WOW64 feature.. + + + + + Looks up a localized string similar to Cannot add type. The "{0}" extension is not supported.. + + + + + Looks up a localized string similar to Cannot add type. The -MemberDefinition parameter is not supported for this language.. + + + + + Looks up a localized string similar to Cannot add type. Specify only the Language or CodeDomProvider parameters.. + + + + + Looks up a localized string similar to The generated type defines no public methods or properties.. + + + + + Looks up a localized string similar to Cannot add type. Input files must all have the same file extension.. + + + + + Looks up a localized string similar to Cannot set output assembly. The path {0} did not resolve to a single file.. + + + + + Looks up a localized string similar to Cannot add type. The OutputType parameter requires that the OutputAssembly parameter be specified.. + + + + + Looks up a localized string similar to Cannot add type. The '{0}' language requires Microsoft .NET Framework {1}.. + + + + + Looks up a localized string similar to Cannot add type. The type name '{0}' already exists.. + + + + + Looks up a localized string similar to The generated type is not public.. + + + + + Looks up a localized string similar to Cannot add type. The '{0}' parameter and the '{1}' parameter cannot both be specified.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot open file {0} to export the alias. {1}. + + + + + Looks up a localized string similar to Date/Time : {0:F}. + + + + + Looks up a localized string similar to Computer : {0}. + + + + + Looks up a localized string similar to Alias File. + + + + + Looks up a localized string similar to Exported by : {0}. + + + + + Looks up a localized string similar to Cannot export the aliases because path '{0}' contains wildcard characters that resolved to multiple paths. Aliases can be exported to only one file. Change the value of the Path parameter to a path that resolves to a single file.. + + + + + Looks up a localized string similar to Cannot export the aliases because path '{0}' referred to a '{1}' provider path. Change the Path parameter to a file system path.. + + + + + Looks up a localized string similar to Import Alias. + + + + + Looks up a localized string similar to Cannot import an alias. Line number {1} in the file '{0}' is not a properly-formatted, comma-separated values (CSV) line for aliases. Change the line to contain four values separated by commas. If the value text itself contains a comma, then the value must be contained in quotation marks.. + + + + + Looks up a localized string similar to Cannot open file {0} to import the alias. {1}. + + + + + Looks up a localized string similar to Cannot import the alias because the specified path '{0}' referred to a '{1}' provider path. Change the value of the Path parameter to a file system path.. + + + + + Looks up a localized string similar to Cannot import the alias because line number {1} in the file '{0}' contains an option that is not recognized for aliases. Change the file to contain valid options.. + + + + + Looks up a localized string similar to Cannot import alias because path '{0}' contains wildcard characters that resolve to multiple paths. Aliases can be imported from only one file. Change the value of the Path parameter to a path that resolves to a single file.. + + + + + Looks up a localized string similar to Name: {0} Value: {1}. + + + + + Looks up a localized string similar to New Alias. + + + + + Looks up a localized string similar to Name: {0} Value: {1}. + + + + + Looks up a localized string similar to This command cannot find a matching alias because an alias with the {0} '{1}' does not exist.. + + + + + Looks up a localized string similar to Set Alias. + + + + + Looks up a localized string similar to Name: {0} Value: {1}. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Data item '{1}' in line '{0}' is already defined. . + + + + + Looks up a localized string similar to Data line '{0}' is not in 'name=value' format. . + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot update the format data with a FormatTable instance.. + + + + + Looks up a localized string similar to Cannot update a member with type "{0}". Specify a different type for the MemberType parameter.. + + + + + Looks up a localized string similar to Cannot update the type data with a TypeTable instance.. + + + + + Looks up a localized string similar to Updating format data is not allowed in this runspace. The 'DisableFormatUpdates' property is set to True when creating the runspace.. + + + + + Looks up a localized string similar to The MemberName, Value, and SecondValue parameters cannot be specified without the MemberType parameter.. + + + + + Looks up a localized string similar to Remove TypeData. + + + + + Looks up a localized string similar to Name of the type that will be removed: {0}. + + + + + Looks up a localized string similar to Remove type file. + + + + + Looks up a localized string similar to The value of the SerializationDepth property should not be negative.. + + + + + Looks up a localized string similar to The {0} parameter is required for the type "{1}". Please specify the {0} parameter.. + + + + + Looks up a localized string similar to The {0} parameter should not be null or an empty string for a member of type "{1}". Specify a non-null value for the {0} parameter when updating this member type.. + + + + + Looks up a localized string similar to The {0} parameter is not necessary for a member of type "{1}", and should not be specified. Do not specify the {0} parameter when updating this member type.. + + + + + Looks up a localized string similar to The target type name should not be null, empty, or contain only white spaces.. + + + + + Looks up a localized string similar to No member is specified for the update on type "{0}".. + + + + + Looks up a localized string similar to The file {0} is not imported into the current session.. + + + + + Looks up a localized string similar to Cannot read the file "{0}" because it does not have the file name extension "{1}".. + + + + + Looks up a localized string similar to Cannot open the file because the current provider is "{0}", and this command requires a file.. + + + + + Looks up a localized string similar to Update FormatData. + + + + + Looks up a localized string similar to FileName: {0}. + + + + + Looks up a localized string similar to Update TypeData. + + + + + Looks up a localized string similar to Type to update: {0}. + + + + + Looks up a localized string similar to The Value and SecondValue parameters should not both be null for a member of type "{0}". Specify a non-null value for one of the two parameters.. + + + + + Looks up a localized string similar to Only one member type can be specified. The member types specified are: "{0}". Update the type with only one member type.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot import localized data. The definition of additional supported commands is not allowed in this language mode.. + + + + + Looks up a localized string similar to Cannot find the Windows PowerShell data file '{0}' in directory '{1}', or in any parent culture directories.. + + + + + Looks up a localized string similar to The following error occurred while Windows PowerShell was loading the '{0}' script data file: + {1}.. + + + + + Looks up a localized string similar to The following error occurred while Windows PowerShell was opening the data file '{0}': + {1}.. + + + + + Looks up a localized string similar to The argument for the FileName parameter should not contain a path.. + + + + + Looks up a localized string similar to The data file '{0}' cannot be found. . + + + + + Looks up a localized string similar to The BindingVariable name '{0}' is invalid.. + + + + + Looks up a localized string similar to The FileName parameter was not specified. The FileName parameter is required when Import-LocalizedData is not called from a script file.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Text to describe the activity for which progress is being reported.. + + + + + Looks up a localized string similar to Processing. + + + + + Looks up a localized string similar to Text to describe the current state of the activity for which progress is being reported.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Access to the path '{0}' is denied.. + + + + + Looks up a localized string similar to The cmdlet cannot run because the following conflicting parameters are specified: Body and InFile. Specify either Body or Infile, then retry. . + + + + + Looks up a localized string similar to However, the 'Json.Net' module could not be loaded. For more information, run 'Import-Module Json.Net'.. + + + + + Looks up a localized string similar to The cmdlet cannot run because the following conflicting parameters are specified: Credential and UseDefaultCredentials. Specify either Credential or UseDefaultCredentials, then retry.. + + + + + Looks up a localized string similar to Path '{0}' resolves to a directory. Specify a path including a file name, and then retry the command.. + + + + + Looks up a localized string similar to Cannot convert the JSON string because a dictionary that was converted from the string contains the duplicated keys '{0}' and '{1}'.. + + + + + Looks up a localized string similar to The ConvertTo-Json and ConvertFrom-Json cmdlets require the installation of the .NET Client Profile, sometimes called the .NET extended profile.. + + + + + Looks up a localized string similar to The response content cannot be parsed because the Internet Explorer engine is not available, or Internet Explorer's first-launch configuration is not complete. Specify the UseBasicParsing parameter and try again. . + + + + + Looks up a localized string similar to Ensure 'Json.Net.psd1' and 'Newtonsoft.Json.dll' are available in a versioned subdirectory of '{0}'.. + + + + + Looks up a localized string similar to The ConvertTo-Json and ConvertFrom-Json cmdlets require the 'Json.Net' module. {0}. + + + + + Looks up a localized string similar to The converted JSON string is in bad format.. + + + + + Looks up a localized string similar to The maximum redirection count has been exceeded. To increase the number of redirections allowed, supply a higher value to the -MaximumRedirection parameter.. + + + + + Looks up a localized string similar to Path '{0}' can be resolved to multiple paths.. + + + + + Looks up a localized string similar to The type '{0}' is not supported for serialization or deserialization of a dictionary. Keys must be strings.. + + + + + Looks up a localized string similar to Path '{0}' cannot be resolved to a file.. + + + + + Looks up a localized string similar to Path '{0}' is not a file system path. Please specify the path to a file in the file system.. + + + + + Looks up a localized string similar to The cmdlet cannot run because the following parameter is missing: OutFile. Provide a valid OutFile parameter value when using the PassThru parameter, then retry.. + + + + + Looks up a localized string similar to The cmdlet cannot run because the following conflicting parameters are specified: ProxyCredential and ProxyUseDefaultCredentials. Specify either ProxyCredential or ProxyUseDefaultCredentials, then retry.. + + + + + Looks up a localized string similar to The cmdlet cannot run because the following parameter is missing: Proxy. Provide a valid proxy URI for the Proxy parameter when using the ProxyCredential or UseDefaultProxyCredentials parameters, then retry.. + + + + + Looks up a localized string similar to The cmdlet cannot run because the 'Json.Net' module cannot be loaded. Import the module manually or set the $PSModuleAutoLoadingPreference variable to enable module auto loading. For more information, see 'get-help about_Preference_Variables'.. + + + + + Looks up a localized string similar to The maximum depth allowed for serialization is {0}.. + + + + + Looks up a localized string similar to Reading web response completed. (Number of bytes read: {0}). + + + + + Looks up a localized string similar to Reading web response. + + + + + Looks up a localized string similar to Reading response stream... (Number of bytes read: {0}). + + + + + Looks up a localized string similar to The operation has timed out.. + + + + + Looks up a localized string similar to The cmdlet cannot run because the following conflicting parameters are specified: Session and SessionVariable. Specify either Session or SessionVariable, then retry.. + + + + + Looks up a localized string similar to Unable to retrieve certificates because the thumbprint is not valid. Verify the thumbprint and retry. . + + + + + Looks up a localized string similar to Writing web request completed. (Number of bytes remaining: {0}). + + + + + Looks up a localized string similar to Writing web request. + + + + + Looks up a localized string similar to Writing request stream... (Number of bytes written: {0}). + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot write to console input buffer.. + + + + + Looks up a localized string similar to A command named '{0}' was not found.. + + + + + Looks up a localized string similar to The data format is not supported by Out-GridView.. + + + + + Looks up a localized string similar to Index. + + + + + Looks up a localized string similar to More than one command named '{0}' was found. Start '{1}' with no parameters, and then type '{0}' to filter the results.. + + + + + Looks up a localized string similar to {0} should be smaller than {1}.. + + + + + Looks up a localized string similar to Microsoft .NET Framework 4.5 was installed while one or more Windows PowerShell sessions were running. To use the {0} cmdlet, close all Windows PowerShell windows, and then open a new Windows PowerShell window.. + + + + + Looks up a localized string similar to Type. + + + + + Looks up a localized string similar to Value. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Files cannot be loaded because running scripts is disabled on this system. Provide a valid certificate with which to sign the files.. + + + + + Looks up a localized string similar to Creating a new session for implicit remoting of "{{0}}" command.... + + + + + Looks up a localized string similar to Enter your credentials for {0}.. + + + + + Looks up a localized string similar to Windows PowerShell Credential Request. + + + + + Looks up a localized string similar to Cannot create temporary file for implicit remoting module.. + + + + + Looks up a localized string similar to Proxy creation has been skipped for the following command: '{0}', because it would shadow an existing local command. Use the AllowClobber parameter if you want to shadow existing local commands.. + + + + + Looks up a localized string similar to Could not resolve remote alias '{0}'.. + + + + + Looks up a localized string similar to Running the {0} command in a remote session reported the following error: {1}.. + + + + + Looks up a localized string similar to Data returned by the remote {0} command is not in the expected format.. + + + + + Looks up a localized string similar to No command proxies have been created, because all of the requested remote commands would shadow existing local commands. Use the AllowClobber parameter if you want to shadow existing local commands.. + + + + + Looks up a localized string similar to Running the {0} command in a remote session returned no results.. + + + + + Looks up a localized string similar to No session has been associated with this implicit remoting module.. + + + + + Looks up a localized string similar to The {0} cmdlet requires the following commands in the remote session: Get-Command, Get-FormatData, and Select-Object. The following commands are used, but optional: Get-Help, and Measure-Object. Verify that the remote session includes the required commands, and then try again.. + + + + + Looks up a localized string similar to Proxy creation has been skipped for the '{0}' command, because the name did not match the value of the Name parameter.. + + + + + Looks up a localized string similar to Extended type definition has been skipped for the '{0}' type because its name did not match the value of the FormatTypeName parameter.. + + + + + Looks up a localized string similar to Proxy creation has been skipped for the '{0}' command, because Windows PowerShell could not verify the safety of a parameter alias name: '{1}'.. + + + + + Looks up a localized string similar to Proxy creation has been skipped for the '{0}' command, because Windows PowerShell could not verify the safety of the command name.. + + + + + Looks up a localized string similar to Proxy creation has been skipped for the '{0}' command, because Windows PowerShell could not verify the safety of a parameter name: '{1}'.. + + + + + Looks up a localized string similar to Proxy creation has been skipped for the '{0}' command, because Windows PowerShell could not verify the safety of a parameter set name: '{1}'.. + + + + + Looks up a localized string similar to Implicit remoting event (session id: {0}; event handler id: {1}). + + + + + Looks up a localized string similar to The file {0} could not be signed.. + + + + + Looks up a localized string similar to by {0} cmdlet. + + + + + Looks up a localized string similar to Invoked with the following command line: {0}. + + + + + Looks up a localized string similar to generated on {0}. + + + + + Looks up a localized string similar to Optional parameter that can be used to specify the session on which this proxy module works. + + + + + Looks up a localized string similar to Implicit remoting module. + + + + + Looks up a localized string similar to Creating implicit remoting module .... + + + + + Looks up a localized string similar to Completed.. + + + + + Looks up a localized string similar to Getting command information from remote session ... {0} commands received. + + + + + Looks up a localized string similar to Getting command information from remote session .... + + + + + Looks up a localized string similar to Getting formatting and output information from remote session ... {0} objects received. + + + + + Looks up a localized string similar to Getting formatting and output information from remote session .... + + + + + Looks up a localized string similar to Generating a proxy command for '{0}' .... + + + + + Looks up a localized string similar to Enter the HTTP proxy credentials that are used for the following connection: {0}. + + + + + Looks up a localized string similar to Implicit remoting for {0}. + + + + + Looks up a localized string similar to Session for implicit remoting module at {{0}}. + + + + + Looks up a localized string similar to Commands that are available in the new remote session are different than those available when the implicit remoting module was created. Consider creating the module again by using the Export-PSSession cmdlet.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to This Windows PowerShell snap-in contains utility cmdlets that are used to view and organize data in different ways.. + + + + + Looks up a localized string similar to Windows PowerShell utility snap-in. + + + + + Looks up a localized string similar to Microsoft Corporation. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Courier New. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to A file listener with name '{0}' was not found.. + + + + + Looks up a localized string similar to Trace output can only be written to the file system. The path '{0}' referred to a '{1}' provider path.. + + + + + Looks up a localized string similar to Trace output can only be written to a single file. The path '{0}' resolved to more than one file.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The property '{0}' cannot be found on this object. + + + + + Looks up a localized string similar to You must specify the InputObject parameter when the Property parameter is specified.. + + + + + Looks up a localized string similar to You must specify the Property parameter when the InputObject parameter is specified.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The email cannot be sent because no SMTP server was specified. You must specify an SMTP server by using either the SmtpServer parameter or the $PSEmailServer variable.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The supplied template was invalid: {0}. For more information on the template syntax, type 'Get-Help ConvertFrom-String'. + + + + + Looks up a localized string similar to No input was supplied. + + + + + Looks up a localized string similar to {0} is not a valid Regular Expression delimiter. + + + + + Looks up a localized string similar to One or more PropertyNames are invalid. + + + + + Looks up a localized string similar to Template file path resolves to more than one file. Specify a path to a single file. + + + + + Looks up a localized string similar to ConvertFrom-String appears to be having trouble parsing your data using the template you've provided. We'd love to take a look at what went wrong, if you'd like to share the data and template used to parse it. We've saved these files to {0} and {1} - feel free to attach them in a mail to psdmfb@microsoft.com. We will review all submissions, although we can't guarantee a response.. + + + + + Looks up a localized string similar to ConvertFrom-String appears to be having trouble parsing your data using the template you've provided. We'd love to take a look at what went wrong, if you'd like to share the data and template used to parse it. We've saved these files to {0} and {1} - feel free to attach them in a mail to psdmfb@microsoft.com. We will review all submissions, although we can't guarantee a response.. + + + + + Looks up a localized string similar to Error converting string value to specified type at file character position {0}. + + + + + Looks up a localized string similar to Template file is required for UpdateTemplate parameter. + + + + + Looks up a localized string similar to Template file was not found. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Text examples must follow the pattern "input value = output value". + + + + + Looks up a localized string similar to PSObject examples should have 'Before' and 'After' properties. + + + + + Looks up a localized string similar to Convert-String appears to be having trouble parsing your data using the examples you've provided. We'd love to take a look at what went wrong - feel free to send the command you tried in a mail to psdmfb@microsoft.com. We will review all submissions, although we can't guarantee a response.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to at {0}. + + + + + Looks up a localized string similar to Cannot embed attribute suffixes (e.g. optional, sequence) in names at {0} while processing {1}. + + + + + Looks up a localized string similar to Cached program was not found in template file for property: {0}. + + + + + Looks up a localized string similar to Unable to convert string value to specified type while processing {0}. + + + + + Looks up a localized string similar to There are two instances of non-sequence Property '{0}' at {1} and {2} in parent Span {3}. + + + + + Looks up a localized string similar to Template text does not match cached programs. + + + + + Looks up a localized string similar to Property '{0}' definition at {1} is inconsistent with earlier definition(s). + + + + + Looks up a localized string similar to First character of a name must be a letter or underscore at {0} while processing {1}. + + + + + Looks up a localized string similar to Invalid format at {0} while processing {1}. + + + + + Looks up a localized string similar to Characters of a name must be letters, digits, or underscores at {0} while processing {1}. + + + + + Looks up a localized string similar to Internal error: Invalid parser operation. + + + + + Looks up a localized string similar to Missing Span name at {0} while processing {1}. + + + + + Looks up a localized string similar to Invalid type name '{0}' at {1} while processing {2}. + + + + + Looks up a localized string similar to line {0} column {1}. + + + + + Looks up a localized string similar to Missing Span value at {0} while processing {1}. + + + + + Looks up a localized string similar to The template text contains no example to parse. + + + + + Looks up a localized string similar to Property '{0}' at {1} has no value and is not optional or a containing span. + + + + + Looks up a localized string similar to Internal error: Property '{0}' at {1} has no containing parent. + + + + + Looks up a localized string similar to Internal error: no parent region found.. + + + + + Looks up a localized string similar to No program can be found for the given input. + + + + + Looks up a localized string similar to No template text file start for Span {0}. + + + + + Looks up a localized string similar to Internal error: Property cannot be null. + + + + + Looks up a localized string similar to Internal error: parent regions cannot be null or empty.. + + + + + Looks up a localized string similar to line {0} column {1}. + + + + + Looks up a localized string similar to Internal error: Property '{0}' not found. + + + + + Looks up a localized string similar to Cannot use reserved word '{2}' at {0} while processing {1}. + + + + + Looks up a localized string similar to '{0}'. + + + + + Looks up a localized string similar to Span starting at line {0} column {1}. + + + + + Looks up a localized string similar to Unexpected Span ending bracket found at {0}. + + + + + Looks up a localized string similar to Unexpected EOF while processing {0}. + + + + + Looks up a localized string similar to Expected value indicator at {0} while processing {1}. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Object is not a array with the same initialization state as the array to compare it to.. + + + + + Looks up a localized string similar to Object is not a array with the same number of elements as the array to compare it to.. + + + + + Looks up a localized string similar to Cannot find the old value. + + + + + Looks up a localized string similar to Capacity was less than the current Count of elements.. + + + + + Looks up a localized string similar to MoveToImmutable can only be performed when Count equals Capacity.. + + + + + Looks up a localized string similar to Collection was modified; enumeration operation may not execute.. + + + + + Looks up a localized string similar to An element with the same key but a different value already exists. Key: {0}. + + + + + Looks up a localized string similar to This operation does not apply to an empty instance.. + + + + + Looks up a localized string similar to This operation cannot be performed on a default instance of ImmutableArray<T>. Consider initializing the array, or checking the ImmutableArray<T>.IsDefault property.. + + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ConsoleHost.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ConsoleHost.dll new file mode 100644 index 0000000..ffd291c Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ConsoleHost.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ConsoleHost.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ConsoleHost.xml new file mode 100644 index 0000000..0224c0c --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ConsoleHost.xml @@ -0,0 +1,4601 @@ + + + + Microsoft.PowerShell.ConsoleHost + + + + + + Processes all the command line parameters to ConsoleHost. Returns the exit code to be used to terminate the process, or + Success to indicate that the program should continue running. + + + + + The command line parameters to be processed. + + + + + + + Class ConsoleControl is used to wrap the various win32 console APIs 1:1 (i.e. at a low level, without attempting to be a + "true" object-oriented library. + + + + + + The absolute position of the mouse, or the amount of motion since the last mouse event was generated, depending on the value of the dwFlags member. + Absolute data is specified as the x coordinate of the mouse; relative data is specified as the number of pixels moved. + + + + + The absolute position of the mouse, or the amount of motion since the last mouse event was generated, depending on the value of the dwFlags member. + Absolute data is specified as the y coordinate of the mouse; relative data is specified as the number of pixels moved. + + + + + If dwFlags contains MOUSEEVENTF_WHEEL, then mouseData specifies the amount of wheel movement. A positive value indicates that the wheel was rotated forward, away from the user; + a negative value indicates that the wheel was rotated backward, toward the user. One wheel click is defined as WHEEL_DELTA, which is 120. + + + + + A set of bit flags that specify various aspects of mouse motion and button clicks. + See (http://msdn.microsoft.com/en-us/library/ms646273(VS.85).aspx) + + + + + The time stamp for the event, in milliseconds. If this parameter is 0, the system will provide its own time stamp. + + + + + An additional value associated with the mouse event. An application calls GetMessageExtraInfo to obtain this extra information + + + + + A virtual-key code. The code must be a value in the range 1 to 254. + If the dwFlags member specifies KEYEVENTF_UNICODE, wVk must be 0. + + + + + A hardware scan code for the key. If dwFlags specifies KEYEVENTF_UNICODE, + wScan specifies a Unicode character which is to be sent to the foreground application. + + + + + Specifies various aspects of a keystroke. + This member can be certain combinations of the following values. + + + + + The time stamp for the event, in milliseconds. + If this parameter is zero, the system will provide its own time stamp. + + + + + An additional value associated with the keystroke. + Use the GetMessageExtraInfo function to obtain this information. + + + + + The message generated by the input hardware. + + + + + The low-order word of the lParam parameter for uMsg. + + + + + The high-order word of the lParam parameter for uMsg. + + + + + LEFT ARROW key + + + + + ENTER key + + + + + Specify the type of the input + + + + + INPUT_MOUSE = 0x00 + + + + + INPUT_KEYBOARD = 0x01 + + + + + INPUT_HARDWARE = 0x02 + + + + + If specified, the scan code was preceded by a prefix byte that has the value 0xE0 (224). + + + + + If specified, the key is being released. If not specified, the key is being pressed. + + + + + If specified, wScan identifies the key and wVk is ignored. + + + + + If specified, the system synthesizes a VK_PACKET keystroke. The wVk parameter must be zero. + This flag can only be combined with the KEYEVENTF_KEYUP flag. + + + + + Code to control the display properties of the a window... + + The window to show... + The command to do + true it it was successful + + + + + Types of control ConsoleBreakSignals received by break Win32Handler delegates + + + + + + Set the console's break handler + + + + If Win32's SetConsoleCtrlHandler fails + + + + + Set the console's break handler to null + + + If Win32's SetConsoleCtrlHandler fails + + + + + Returns a ConsoleHandle to the console (keyboard device) + + + + + Returns a ConsoleHandle to the active screen buffer, even if that output has been redirected. + + + + If Win32's CreateFile fails + + + + + + flags used by ConsoleControl.GetMode and ConsoleControl.SetMode + + + + + + + Returns a mask of ConsoleModes flags describing the current modality of the console + + + + If Win32's GetConsoleMode fails + + + + + + Sets the current mode of the console device + + + + + Handle to the console device returned by GetInputHandle + + + + + Mask of mode flags + + + + + If Win32's SetConsoleMode fails + + + + + + + Reads input from the console device according to the mode in effect (see GetMode, SetMode) + + + + + Handle to the console device returned by GetInputHandle + + + + Initial contents of the edit buffer, if any. charactersToRead should be at least as large as the length of this string. + + + + + Number of characters to read from the device. + + + + + true to allow the user to terminate input by hitting the tab or shift-tab key, in addition to the enter key + + + + + bit mask indicating the state of the control/shift keys at the point input was terminated. + + + + + + If Win32's ReadConsole fails + + + + + + Wraps Win32 ReadConsoleInput. + Returns the number of records read in buffer. + + + + handle for the console where input is read + + + + + array where data read are stored + + + + + actual number of input records read + + + + If Win32's ReadConsoleInput fails + + + + + Wraps Win32 PeekConsoleInput + + + + handle for the console where input is peeked + + + + + array where data read are stored + + + + + acutal number of input records peeked + + + + If Win32's PeekConsoleInput fails + + + + + Wraps Win32 GetNumberOfConsoleInputEvents + + + + handle for the console where the number of console input events is obtained + + + + + number of console input events + + + + If Win32's GetNumberOfConsoleInputEvents fails + + + + + Wraps Win32 FlushConsoleInputBuffer + + + + handle for the console where the input buffer is flushed + + + + If Win32's FlushConsoleInputBuffer fails + + + + + Wraps Win32 GetConsoleScreenBufferInfo + Returns Console Screen Buffer Info + + + + Handle for the console where the screen buffer info is obtained + + + + + info about the screen buffer. See the definition of CONSOLE_SCREEN_BUFFER_INFO + + + + If Win32's GetConsoleScreenBufferInfo fails + + + + + set the output buffer's size + + + + + If Win32's SetConsoleScreenBufferSize fails + + + + + Wrap32 WriteConsoleOutput. + This wrapper is not limited to 64K or 8K CHAR_INFO to which Win32's WriteConsoleOutput + is constrained. + + + + handle for the console where output is written + + + + + location on screen buffer where writing starts + + + + + 2D array of cells. Caller needs to ensure that the array is 2D. + + + + If Win32's GetConsoleScreenBufferInfo fails + If there is not enough memory to complete calls to Win32's WriteConsoleOutput + + + If is null + + + If it is illegal to write to the output buffer + + + + + Check the existing screen columns left and right of areas to be written + + + + must be within the screen buffer + + + + + + + If it is illegal to write at + + + If there is not enough memory to complete calls to Win32's ReadConsoleOutput + + + + + Wrap32 ReadConsoleOutput + This wrapper is not limited to 64K or 8K CHAR_INFO to which Win32's ReadConsoleOutput + is constrained. + + + + handle for the console where output is read + + + + + location on screen buffer where reading begins + + + + + indicates the area in where the data read + is stored. + + + + + this is ref because the bounds and size of the array are needed. + + + + If there is not enough memory to complete calls to Win32's ReadConsoleOutput + + + + + If an edge cell read is a blank, it is potentially part of a double width character. Hence, + at least one of the left and right edges should be checked + + + + + + + + + Can handle reading CJK characters, but the left and right edges are not checked + + + + + + + + If there is not enough memory to complete calls to Win32's ReadConsoleOutput + + + + + Wraps Win32 FillConsoleOutputCharacter + + + + handle for the console where output is filled + + + + + character to fill the console output + + + + + number of times to write character + + + + + location on screen buffer where writing starts + + + + If Win32's FillConsoleOutputCharacter fails + + + + + Wraps Win32 FillConsoleOutputAttribute + + + + handle for the console where output is filled + + + + + attribute to fill the console output + + + + + number of times to write attribute + + + + + location on screen buffer where writing starts + + + + If Win32's FillConsoleOutputAttribute fails + + + + + Wrap Win32 ScrollConsoleScreenBuffer + + + + handle for the console where screen buffer is scrolled + + + + + area to be scrolled + + + + + area to be updated after scrolling + + + + + location to which the top left corner of scrollRectangle move + + + + + character and attribute to fill the area vacated by the scroll + + + + If Win32's ScrollConsoleScreenBuffer fails + + + + + Wraps Win32 SetConsoleWindowInfo + + + + handle for the console where window info is set + + + + + If this parameter is TRUE, the coordinates specify the new upper-left and + lower-right corners of the window. If it is false, the coordinates are offsets + to the current window-corner coordinates + + + + + specify the size and position of the console screen buffer's window + + + + If Win32's SetConsoleWindowInfo fails + + + + + Wraps Win32 GetLargestConsoleWindowSize + + + + handle for the console for which the largest window size is obtained + + + + + the largest window size + + + + If Win32's GetLargestConsoleWindowSize fails + + + + + Wraps Win32 GetConsoleTitle. 1K is the safe limit experimentally. The 64K limit + found in the docs is disregarded because it is essentially meaningless. + + + + a string for the title of the window + + + + If Win32's GetConsoleTitle fails + + + + + Wraps Win32 SetConsoleTitle + + + + a string for the title of the window + + + + If Win32's SetConsoleTitle fails + + + + + UpdateLocaleSpecificFont is a helper method used to update + the console font based on the locale. + The default font face used for Powershell Console is Consolas. + However certain locales dont support Consolas font. Hence for such + locales the console font is updated to Raster dynamically. + + + + + Supported Consolas code pages obtained from https://docs.microsoft.com/en-us/typography/font-list/consolas + + + + + + Wrap Win32 WriteConsole + + + + + handle for the console where the string is written + + + + + string that is written + + + + + if the Win32's WriteConsole fails + + + + + + Wraps Win32 SetConsoleTextAttribute + + + + handle for the console where text attribute is set + + + + + text attribute to set the console + + + + + if the Win32's SetConsoleTextAttribute fails + + + + + + From IsConsoleFullWidth in \windows\core\ntcon\server\dbcs.c + Gets the CharSet for a code page + + + The CharSet corresponding to the codePage; defaults to OEM_CHARSET (255) + + + + From IsConsoleFullWidth in \windows\core\ntcon\server\dbcs.c + Precondition: the current code page needs to be a Far East code page. + + char F8F8 makes this function return 1 while in CHT, CHS, and KOR it takes 2 cells. + I don't think we should special-case this because that ought to be a bug outside of + this code. + + + window handle + handle to DC; it is not released by this method + + + + + + + From IsConsoleFullWidth in \windows\core\ntcon\server\dbcs.c + + + + + + + + From IsConsoleFullWidth in \windows\core\ntcon\server\dbcs.c + + + + + + Check if the output buffer code page is Japanese, Simplified Chinese, Korean, or Traditional Chinese + + + + + + + Wraps Win32 SetConsoleCursorPosition + + + + handle for the console where cursor position is set + + + + + location to which the cursor will be set + + + + If Win32's SetConsoleCursorPosition fails + + + + + Wraps Win32 GetConsoleCursorInfo + + + + handle for the console where cursor info is obtained + + + + + cursor info + + + + If Win32's GetConsoleCursorInfo fails + + + + + Wraps Win32 SetConsoleCursorInfo + + + + handle for the console where cursor info is set + + + + + cursor info to set the cursor + + + + If Win32's SetConsoleCursorInfo fails + + + + + Helper function to create the proper HostException + + + + + + + + + + + Class to hold the Native Methods used in this file enclosing class. + + + + + + + Executor wraps a Pipeline instance, and provides helper methods for executing commands in that pipeline. It is used to + provide bookkeeping and structure to the use of pipeline in such a way that they can be interrupted and cancelled by a + break event handler, and track nesting of pipelines (which happens with interrupted input loops (aka subshells) and use + of tab-completion in prompts. The bookkeeping is necessary because the break handler is static and global, and there is + no means for tying a break handler to an instance of an object. + + The class' instance methods manage a single pipeline. The class' static methods track the outstanding instances to + ensure that only one instance is 'active' (and therefore cancellable) at a time. + + + + + + + Constructs a new instance + + + + + A reference to the parent ConsoleHost that created this instance. + + + + + true if the executor is supposed to use nested pipelines; false if not. + + + + + True if the instance will be used to execute the prompt function, which will delay stopping the pipeline by some + milliseconds. This we prevent us from stopping the pipeline so quickly that when the user leans on the ctrl-c key + that the prompt "stops working" (because it is being stopped faster than it can run to completion). + + + + + + This method handles the failure in excecuting pipeline asynchronously + + + + + + + All calls to the Runspace to execute a command line must be done with this function, which properly synchronizes + access to the running pipeline between the main thread and the break handler thread. This synchronization is + necessary so that executions can be aborted with Ctrl-C (including evaluation of the prompt and collection of + command-completion candidates. + + On any given Executor instance, ExecuteCommand should be called at most once at a time by any one thread. It is NOT + reentrant. + + + + + The command line to be executed. Must be non-null. + + + + + Receives the Exception thrown by the execution of the command, if any. If no exception is thrown, then set to null. + Can be tested to see if the execution was successful or not. + + + + + options to govern the execution + + + + + the object stream resulting from the execution. May be null. + + + + + + + Executes a command (by calling this.ExecuteCommand), and coerces the first result object to a string. Any Exception + thrown in the course of execution is returned thru the exceptionThrown parameter. + + + + + The command to execute. May be any valid monad command. + + + + + Receives the Exception thrown by the execution of the command, if any. If no exception is thrown, then set to null. + Can be tested to see if the execution was successful or not. + + + + + The string representation of the first result object returned, or null if an exception was thrown or no objects were + returned by the command. + + + + + + + Executes a command (by calling this.ExecuteCommand), and coerces the first result object to a bool. Any Exception + thrown in the course of execution is caught and ignored. + + + + + The command to execute. May be any valid monad command. + + + + + The Nullable`bool representation of the first result object returned, or null if an exception was thrown or no + objects were returned by the command. + + + + + + + Executes a command (by calling this.ExecuteCommand), and coerces the first result object to a bool. Any Exception + thrown in the course of execution is returned thru the exceptionThrown parameter. + + + + + The command to execute. May be any valid monad command. + + + + + Receives the Exception thrown by the execution of the command, if any. If no exception is thrown, then set to null. + Can be tested to see if the execution was successful or not. + + + + + The Nullable`bool representation of the first result object returned, or null if an exception was thrown or no + objects were returned by the command. + + + + + + + Cancels execution of the current instance. If the current instance is not running, then does nothing. Called in + response to a break handler, by the static Executor.Cancel method. + + + + + + + Resets the instance to its post-ctor state. Does not cancel execution. + + + + + + + Makes the given instance the "current" instance, that is, the instance that will receive a Cancel call if the break + handler is triggered and calls the static Cancel method. + + + + + The instance to make current. Null is allowed. + + + + + Here are some state-transition cases to illustrate the use of CurrentExecutor + + null is current + p1.ExecuteCommand + set p1 as current + promptforparams + tab complete + p2.ExecuteCommand + set p2 as current + p2.Execute completes + restore old current to p1 + p1.Execute completes + restore null as current + + Here's another case: + null is current + p1.ExecuteCommand + set p1 as current + ShouldProcess - suspend + EnterNestedPrompt + set null as current so that break does not exit the subshell + evaluate prompt + p2.ExecuteCommand + set p2 as current + Execute completes + restore null as current + nested loop exit + restore p1 as current + + Summary: + ExecuteCommand always saves/sets/restores CurrentExector + Host.EnterNestedPrompt always saves/clears/restores CurrentExecutor + + + + + + + Cancels the execution of the current instance (the instance last passed to PushCurrentExecutor), if any. If no + instance is Current, then does nothing. + + + + + + + Subclasses S.M.A.Host to implement a console-mode monad host. + + + + + + + Checks whether the exception is a severe exception which should + cause immediate process failure. + + + + CB says 02/23/2005: I personally would err on the side + of treating OOM like an application exception, rather than + a critical system failure.I think this will be easier to justify + in Orcas, if we tease apart the two cases of OOM better. + But even in Whidbey, how likely is it that we couldn't JIT + some backout code? At that point, the process or possibly + the machine is likely to stop executing soon no matter + what you do in this routine. So I would just consider + AccessViolationException. (I understand why you have SO here, + at least temporarily). + + JN/GX 04/15/2005: There is currently no way to log host events, + so these FailFasts cannot be logged. + + + + + + internal Entry point in msh console host implementation + + + + + Configuration information to use for creating runspace. + + + + Banner text to be displayed by ConsoleHost + + + + Help text for minishell. This is displayed on 'minishell -?'. + + + + + Warning occurred prior to this point, for example, a snap-in fails to load beforehand. + This string will be printed out. + + + + + Command line parameters to powershell.exe + + + + + The exit code for the shell. + + NTRAID#Windows OS Bugs-1036968-2005/01/20-sburns The behavior here is related to monitor work. The low word of the + exit code is available for the user. The high word is reserved for the shell and monitor. + + The shell process needs to return: + + - if the shell.exe fails init, 0xFFFF0000 + - if the exit keyword is called with no parameter at the point of top-level prompt, 0x80000000 (e.g. 0 with the high + bit set) + - if the exit keyword is called with any int param less than or equal to 0xFFFF, then that int masked with the high + bit set. e.g. "exit 3" results in 0x80000003 + - if the script ends (in the case of msh -command or msh -commandfile), then 0x80000000. + - if ctrl-break is pressed, with 0xFFFE0000 + - if the shell.exe is passed a bad command-line parameter, with 0xFFFD0000. + - if the shell.exe crashes, with 0x00000000 + + The monitor process gets the exit code. If the high bit is set, then the shell process exited normally (though + possibly due to an error). If not, the shell process crashed. If the shell.exe exit code is x00000000 (crashed) + or 0xFFFE0000 (user hit ctrl-break), the monitor should restart the shell.exe. Otherwise, the monitor should exit + with the same exit code as the shell.exe. + + Anyone checking the exit code of the shell or monitor can mask off the hiword to determine the exit code passed + by the script that the shell last executed. + + + + + + + The break handler for the program. Dispatches a break event to the current Executor. + + + + + + + + + Spin up a new thread to cancel the current pipline. This will allow subsequent break interrupts to be received even + if the cancellation is blocked (which can be the case when the pipeline blocks and nothing implements Cmdlet.Stop + properly). That is because the OS will not inject another thread when a break event occurs if one has already been + injected and is running. + + + + + if true, then flag the parent ConsoleHost that it should shutdown the session. If false, then only the current + executing instance is stopped. + + + + + + Create single instance of ConsoleHost. + + + + + + See base class + + + + + + + + + See base class + + + + + + + + + See base class + + + + + + + + + See base class + + + + + + + + See base class. + + + + + Handles state changed event of the remote runspace. If the remote runspace + gets into a broken or closed state, writes a message and pops out the + runspace + + not sure + arguments describing this event + + + + See base class. + + + + + True if a runspace is pushed; false otherwise. + + + + + Returns the current runspace associated with this host. + + + + + Return the actual console host object so that the user can get at + the unproxied methods. + + + + + + See base class + + + + + + + + + See base class + + + + + + + + + + + + + + + If an input loop is running, then starts a new, nested input loop. If an input loop is not running, + throws an exception. + + + + + If a nested prompt is entered while the host is not running at least one prompt loop. + + + + + + + See base class + + + + + If there is no nested prompt. + + + + + + + See base class + + + + + + + See base class + + + + + + + + Constructs a new instance + + + + + + + Finalizes the instance + + + + + + + Disposes of this instance, per the IDisposable pattern + + + + + + + Indicates if the session should be terminated or not. Typically set by the break handler for Close, Logoff, and + Shutdown events. Note that the only valid transition for this property is from false to true: it is not legal to + try to set it to false after is was set to true. + + + + + true to shut down the session. false is only allowed if the property is already false. + + + + + + + The Runspace ref object being used by this Host instance. A host only opens one Runspace. + + + + + + + + The main run loop of the program: processes command line parameters, and starts up a runspace. + + + + + Commandline parameter parser. The commandline parameter parser is expected to parse all the + arguments before calling this method. + + + + Is there any warning at startup + + + + + The process exit code to be returned by Main. + + + + + + This method is reatined to make V1 tests compatible with V2 as signature of this method + is slighlty changed in v2. + + + + + + + + + + + Loops over the Host's sole Runspace; opens the runspace, initializes it, then recycles it if the Runspace fails. + + + + + The process exit code to be returned by Main. + + + + + + This method is here only to make V1 tests compatible with V2. DO NOT USE THIS FUNCTION! Use DoCreateRunspace instead + + + + + + Opens and Initializes the Host's sole Runspace. Processes the startup scripts and runs any command passed on the + command line. + + + + + + + Escapes backtick and tick characters with a backtick, returns the result + + + + + + + + + Reports an exception accoring to the exception reporting settings in effect. + + + + + The exception to report. + + + + + Optional header message. Empty or null means "no header" + + + + + + raised when the host pops a runspace + + + + + raised when the host pushes a runspace + + + + + Handler for debugger events + + + + + Returns true if the host is in debug mode + + + + + True when debugger command is user and available + for stopping. + + + + + Sets the host to debug mode and enters a nested prompt. + + + + + Exits the debugger's nested prompt. + + + + + Writes a line using the debugger colors + + + + + + InputLoop represents the prompt-input-execute loop of the interactive host. Input loops can be nested, meaning that + one input loop can be interrupted and another started; when the second ends, the first resumes. + + Neither this class' instances nor its static data is threadsafe. Caller is responsible for ensuring threadsafe + access. + + + + + + + + True if next input loop is nested, False otherwise. + + + when there is no instanceStack.Count == 0 + + + + + + Returns current root (non-nested) loop only if there is no + nesting. This is used *only* by the debugger for remote debugging + where data handling on the base commands needs to be blocked + during remote debug stop handling. + + + + + + When a runspace is popped, we need to reevaluate the + prompt + + sender of this event, unused + arguments describing this event, unused + + + + + Evaluates the prompt, displays it, gets a command from the console, and executes it. Repeats until the command + is "exit", or until the shutdown flag is set. + + + + + + By declaring runspace as ObjectRef<Runspace> we are able to hide the real runspace with + a remote runspace in the PushRunspace scenario. By declaring it as a mask, the variable + runspace becomes an indirect reference to the actual runspace which we can override with + a remote runspace while it is pushed. Also we can easily revert back to the original + runspace when the PopRunspace command is invoked. + + + + + Defines arguments passed to ConsoleHost.CreateRunspace + + + + + Constructs RunspaceCreationEventArgs + + + + + + + + + + + + implementation of RawConsole for powershell.exe + + + + + + + + + + If obtaining the buffer's foreground and background color failed + + + + + + + See base class + + + + + + If set to an invalid ConsoleColor + + + + + If obtaining information about the buffer failed + OR + Win32's SetConsoleTextAttribute + + + + + + + See base class + + + + + + If set to an invalid ConsoleColor + + + + + If obtaining information about the buffer failed + OR + Win32's SetConsoleTextAttribute + + + + + + + See base class + + + + + + If set to outside of the buffer + + + + + If obtaining information about the buffer failed + OR + Win32's SetConsoleCursorPosition failed + + + + + + + See base class + + + + + Cursor size + + + + + If set to under 0 or over 100 + + + + + If obtaining a handle to the active screen buffer failed + OR + Win32's GetConsoleCursorInfo failed + OR + Win32's SetConsoleCursorInfo failed + + + + + + + See base class + + + + + + If set outside of the buffer + + + + + If obaining information about the buffer failed + OR + Win32's SetConsoleWindowInfo failed + + + + + + + See base class + + + + + + If setting to an invalid size + + + + + If obtaining a handle to the active screen buffer failed + OR + obtaining information about the buffer failed + OR + Win32's SetConsoleScreenBufferSize failed + + + + + + + See base class + + + + + + If setting width or height to less than 1, larger than the screen buffer, + over the maximum window size allowed + + + + + If obtaining information about the buffer failed + OR + Win32's SetConsoleWindowInfo failed + + + + + + + See base class + + + + + + If obtaining information about the buffer failed + + + + + + + See base class + + + + + + If obtaining a handle to the active screen buffer failed + OR + Win32's GetLargestConsoleWindowSize failed + + + + + + Helper method to create and trace PipelineStoppedException + + + + + + Used by ReadKey, cache KeyEvent based on if input.RepeatCount > 1 + + Input key event record + Cache key event + + + + + See base class + This method unwraps the repeat count in KEY_EVENT_RECORD by caching repeated keystrokes + in a logical queue. The implications are: + 1) Per discussion with Sburns on 2005/01/20, calling this method with allowCtrlC | includeKeyUp may not + return ctrl-c even it is pressed. This is because ctrl-c could generate the following sequence of + key events: {Ctrl, KeyDown}, {Ctrl-c KeyDown}, {Ctrl, KeyUp}, {c, KeyUp} if Ctrl is released before c. + In this case, {Ctrl, KeyUp}, {c, KeyUp} would be returned. + 2) If the cache is non-empty, a call to ReadLine will not return the cached keys. This + behavior is the same as that of System.Console.ReadKey + + + + + + + If neither IncludeKeyDown or IncludeKeyUp is set in + + + + + If obtaining a handle to the active screen buffer failed + OR + Win32's setting input buffer mode to disregard window and mouse input failed + OR + Win32's ReadConsoleInput failed + + + + + + + See base class + + + + + If obtaining a handle to the active screen buffer failed + OR + Win32's FlushConsoleInputBuffer failed + + + + + + + See base class + + + + + + If obtaining a handle to the active screen buffer failed + OR + Win32's GetNumberOfConsoleInputEvents failed + OR + Win32's PeekConsoleInput failed + + + + + + + See base class + + + + + + If set to null + + + + + If set to a string whose length is not between 1 to 1023 + + + + + If Win32's GetConsoleWindowTitle failed + OR + Win32's SetConsoleWindowTitle failed + + + + + + + See base class. + + + + + + location on screen buffer where contents will be written + + + + + array of info to be written + + + + + + If is outside of the screen buffer. + OR + is an ill-formed BufferCell array + OR + it is illegal to write at in the buffer + + + + + If obtaining a handle to the active screen buffer failed + OR + obtaining information about the buffer failed + OR + there is not enough memory to complete calls to Win32's WriteConsoleOutput + + + + + + + If is completely outside of the screen buffer, it's a no-op. + + + + + region with all elements = -1 means "entire screen buffer" + + + + + character and attribute to fill the screen buffer + + + + + Provided for clearing regions -- less chatty than passing an array of cells. + Clear screen is: + SetBufferContents(new Rectangle(-1, -1, -1, -1), ' ', ForgroundColor, BackgroundColor); + CursorPosition = new Coordinates(0, 0); + + fill.Type is ignored + + + + + If 's Left exceeds Right or Bottom exceeds Top + OR + it is illegal to set in the buffer with + + + + + If Win32's CreateFile fails + OR + Win32's GetConsoleScreenBufferInfo fails + OR + there is not enough memory to complete calls to Win32's WriteConsoleOutput + + + + + + + See base class. + If the rectangle is invalid, ie, Right exceeds Left OR Bottom exceeds Top, + + + + + area on screen buffer to be read + + + + + an array of BufferCell containing screen buffer contents + + + + + If 's Left exceeds Right or Bottom exceeds Top. + + + + + If obtaining a handle to the active screen buffer failed + OR + obtaining information about the buffer failed + OR + there is not enough memory to complete calls to Win32's ReadConsoleOutput + + + + + + + See base class + + + + + area to be moved + + + + + top left corner to which source to be moved + + + + + area to be updated caused by the move + + + + + character and attribute to fill the area vacated by the move + + + + + If obtaining the active screen buffer failed + OR + Call to Win32's ScrollConsoleScreenBuffer failed + + + + + + See base class + + + + + + If Win32's WideCharToMultiByte fails + + + + + + See base class + + + + + + + If Win32's WideCharToMultiByte fails + + + + + + + See base class + + + + + + + If Win32's WideCharToMultiByte fails + + + + + + + Clear the ReadKey cache + + + + + + + + + + + + + If is outside of the output buffer area + + + + + Get output buffer info + + + + + If Win32's CreateFile fails + OR + Win32's GetConsoleScreenBufferInfo fails + + + + + + ConsoleHostUserInterface implements console-mode user interface for powershell.exe + + + + + ConsoleHostUserInterface implements console-mode user interface for powershell.exe + + + + + + Command completion implementation object + + + + + This is a test hook for programmatically reading and writing ConsoleHost I/O. + + + + + Return true if the console supports a VT100 like virtual terminal + + + + + + Constructs an instance + + + + + + + + + Supplies an implementation of PSHostRawUserInterface that provides low-level console mode UI facilities. + + + + + + + + + true if command completion is currently running + + + + + + + true if the Read* functions should read from the stdin stream instead of from the win32 console. + + + + + + + true if the host shouldn't write out prompts. + + + + + + + See base class + + + + + + If Win32's SetConsoleMode fails + OR + Win32's ReadConsole fails + OR + obtaining information about the buffer failed + OR + Win32's SetConsoleCursorPosition failed + + + + + + + See base class + + + + + + If obtaining a handle to the active screen buffer failed + OR + Win32's setting input buffer mode to disregard window and mouse input failed + OR + Win32's ReadConsole failed + + + + + + If Ctrl-C is entered by user + + + + + + + Implementation based on NT CredUI's GetPasswdStr. + Use Win32.ReadConsole to construct a SecureString. The advantage of ReadConsole over ReadKey is + Alt-ddd where d is {0-9} is allowed. + It also manages the cursor as keys are entered and "backspaced". However, it is possible that + while this method is running, the console buffer contents could change. Then, its cursor mgmt + will likely be messed up. + + + + + True to specify reading a SecureString; false reading a string + + + + + string for output echo + + + + + + If obtaining a handle to the active screen buffer failed + OR + Win32's setting input buffer mode to disregard window and mouse input failed + OR + Win32's ReadConsole failed + OR + obtaining information about the buffer failed + OR + Win32's SetConsoleCursorPosition failed + + + + + If Ctrl-C is entered by user + + + + + + + Handle writing print token with proper cursor adjustment for ReadLineSafe + + + + + token output for each char input. It must be a one-char string + + + + + it is the cursor position where ReadLineSafe begins + + + + + If obtaining information about the buffer failed + OR + Win32's SetConsoleCursorPosition failed + + + + + + + Handle backspace with proper cursor adjustment for ReadLineSafe + + + + + it is the cursor position where ReadLineSafe begins + + + + + If obtaining information about the buffer failed + OR + Win32's SetConsoleCursorPosition failed + + + + + + Blank out at and move rawui.CursorPosition to + + Position to blank out + + + + + If is set on , unset it and return true; + otherwise return false + + + + + a flag in ConsoleControl.ConsoleModes to be unset in + + + + + + + true if is set on + false otherwise + + + + + + + See base class. + + + + + + If Win32's CreateFile fails + OR + Win32's GetConsoleMode fails + OR + Win32's SetConsoleMode fails + OR + Win32's WriteConsole fails + + + + + + + See base class + + + + + + + + If obtaining information about the buffer failed + OR + Win32's SetConsoleTextAttribute + OR + Win32's CreateFile fails + OR + Win32's GetConsoleMode fails + OR + Win32's SetConsoleMode fails + OR + Win32's WriteConsole fails + + + + + + + See base class + + + + + + Win32's CreateFile fails + OR + Win32's GetConsoleMode fails + OR + Win32's SetConsoleMode fails + OR + Win32's WriteConsole fails + + + + + + + This is a poor-man's word-wrapping routine. It breaks a single string into segments small enough to fit within a + given number of cells. A break is determined by the last occurrance of whitespace that allows all prior characters + on a line to be written within a given number of cells. If there is no whitespace found within that span, then the + largest span that will fit in the bounds is used. + + The problem is complicated by the fact that a single character may consume more than one cell. Conceptually, this + is the same case as placing an upper bound on the length of a line while also having a strlen function that + arbitrarily considers the length of any single character to be 1 or greater. + + + + + Text to be emitted. + Each tab character in the text is replaced with a space in the results. + + + + + Max width, in buffer cells, of a single line. Note that a single character may consume more than one cell. The + number of cells consumed is determined by calling ConsoleHostRawUserInterface.LengthInBufferCells. + + + + + A list of strings representing the text broken into "lines" each of which are guaranteed not to exceed + maxWidthInBufferCells. + + + + + + + Struct used by WrapText + + + + + + + Chops text into "words," where a word is defined to be a sequence of whitespace characters, or a sequence of + non-whitespace characters, each sequence being no longer than a given maximum. Therefore, in the text "this is a + string" there are 7 words: 4 sequences of non-whitespace characters and 3 sequences of whitespace characters. + + Whitespace is considered to be spaces or tabs. Each tab character is replaced with a single space. + + + + + The text to be chopped up. + + + + + The maximum number of buffer cells that each word may consume. + + + + + A list of words, in the same order they appear in the source text. + + + + + This can be made faster by, instead of creating little strings for each word, creating indices of the start and end + range of a word. That would reduce the string allocations. + + + + + + + Helper for ChopTextIntoWords. Takes a span of characters in a string and adds it to the word list, further + subdividing the span as needed so that each subdivision fits within the limit. + + + + + The string of characters in which the span is to be extracted. + + + + + index into text of the start of the word to be added. + + + + + index of the char after the last char to be included in the word. + + + + + The maximum number of buffer cells that each word may consume. + + + + + true if the span is whitespace, false if not. + + + + + The list into which the words will be added. + + + + + + + Writes text, wrapping a "word" boundaries when needed. + + + + + Foreground color to output the text. + + + + + Background color to output the text. + + + + + Text to be emitted. + + + + + + + See base class + + + + + + If obtaining information about the buffer failed + OR + Win32's SetConsoleTextAttribute + OR + Win32's CreateFile fails + OR + Win32's GetConsoleMode fails + OR + Win32's SetConsoleMode fails + OR + Win32's WriteConsole fails + + + + + + + See base class + + + + + + + + See base class + + + + + + If obtaining information about the buffer failed + OR + Win32's SetConsoleTextAttribute + OR + Win32's CreateFile fails + OR + Win32's GetConsoleMode fails + OR + Win32's SetConsoleMode fails + OR + Win32's WriteConsole fails + + + + + + + See base class + + + + + + If obtaining information about the buffer failed + OR + Win32's SetConsoleTextAttribute + OR + Win32's CreateFile fails + OR + Win32's GetConsoleMode fails + OR + Win32's SetConsoleMode fails + OR + Win32's WriteConsole fails + + + + + + + Invoked by CommandBase.WriteProgress to display a progress record. + + + + + + + Reads a line of input from the console. Returns when the user hits enter, a break key, a break event occurrs. In + the case that stdin has been redirected, reads from the stdin stream instead of the console. + + + + + true to end input when the user hits the tab or shift-tab keys, false to only end on the enter key (or a break + event). Ignored if not reading from the console device. + + + + + The initial contents of the input buffer. Nice if you want to have a default result. Ignored if not reading from the + console device. + + + + + Receives an enum value indicating how input was ended. + + + + + TBD + + + + + true to include the results in any transcription that might be happening. + + + + + + The string read from either the console or the stdin stream. null if: + - stdin was read and EOF was reached on the stream, or + - the console was read, and input was terminated with Ctrl-C, Ctrl-Break, or Close. + + + + + If Win32's SetConsoleMode fails + OR + Win32's ReadConsole fails + OR + obtaining information about the buffer failed + OR + Win32's SetConsoleCursorPosition failed + + + + + + Get the character at the cursor when the user types 'tab' in the middle of line. + + the cursor position where 'tab' is hit + + + + + Strip nulls from a string... + + The string to process + The string with any \0 characters removed... + + + + + Reads a line, and completes the input for the user if they hit tab. + + + + + The Executor instance on which to run any pipelines that are needed to find matches + + + + + + null on a break event + the completed line otherwise + + + + + + + Called at the end of a prompt loop to take down any progress display that might have appeared and purge any + outstanding progress activity state. + + + + + + + Invoked by ConsoleHostUserInterface.WriteProgress to update the set of outstanding activities for which + ProgressRecords have been received. + + + + + + Used by Prompt to indicate any common errors when converting the user input string to + the type of the parameter + + + + + No error or not an error prompt handles + + + + + Format error + + + + + Overflow error + + + + + + See base class + + + + + + + + + If is null + OR + at least one FieldDescription in is null + + + + + If count is less than 1 + OR + at least one FieldDescription.AssemblyFullName in is + null or empty + + + + + If a FieldDescription in specifies one of SecureString or + PSCredential and the type can not be loaded. + OR + at least one FieldDescription in specifies an array + whose rank is less than 1. + + + + + If the converting the user input to the prompt field type fails unless it is caused by + OverflowException or FormatException + + + + + + Called by Prompt. Reads user input and processes tilde commands. + + prompt written to host for the field + the field to be read + true to echo user input + true if the field is a list + valid only if listInput is true. set to true if the input signals end of list input + true iff the input is canceled, e.g., by Ctrl-C or Ctrl-Break + processed input string to be converted with LanguagePrimitives.ConvertTo + + + + Uses LanguagePrimitives.ConvertTo to parse inputString for fieldType. Handles two most common parse + exceptions: OverflowException and FormatException. + + the type that inputString is to be interpreted + is the call coming from a remote host + the string to be converted + if there's no error in the conversion, the converted object will be assigned here; + otherwise, this will be the same as the inputString + an object of type fieldType that inputString represents + + + + Handles Tilde Commands in Prompt + If input does not start with PromptCommandPrefix (= "!"), returns input + Tilde commands - + ! end of list, only valid for input field types that implement IList, returns string.Empty + !!* input !* literally, returns !* where * is any string + !h prints out field's Quick Help, returns null + All others tilde comments are invalid and return null + + returns null iff there's nothing the caller can process + + + + + + + + + + See base class + + + + + + + + + + If is null. + + + + + If .Count is 0. + + + + + If is greater than + the length of . + + + + + when prompt is canceled by, for example, Ctrl-c. + + + + + + Presents a dialog allowing the user to choose options from a set of options. + + + Caption to preceed or title the prompt. E.g. "Parameters for get-foo (instance 1 of 2)" + + + A message that describes what the choice is for. + + + An Collection of ChoiceDescription objects that describe each choice. + + + The index of the labels in the choices collection element to be presented to the user as + the default choice(s). + + + The indices of the choice elements that corresponds to the options selected. + + + + + + Guarantee a contrasting color for the prompt... + + + + + Guarantee a contrasting color for the default prompt that is slightly + different from the other prompt elements. + + + + + Prompt for credentials. + + In future, when we have Credential object from the security team, + this function will be modified to prompt using secure-path + if so configured. + + + name of the user whose creds are to be prompted for. If set to null or empty string, the function will prompt for user name first. + + name of the target for which creds are being collected + + message to be displayed. + + caption for the message. + + PSCredential object + + + + + Prompt for credentials. + + name of the user whose creds are to be prompted for. If set to null or empty string, the function will prompt for user name first. + + name of the target for which creds are being collected + + message to be displayed. + + caption for the message. + + what type of creds can be supplied by the user + + options that control the cred gathering UI behavior + + PSCredential object, or null if input was cancelled (or if reading from stdin and stdin at EOF) + + + + + This class provides an entry point which is called by minishell's main + to transfer control to Msh console host implementation. + + + + Entry point in to ConsoleShell. This method is called by main of minishell. + Configuration information which is used to create Runspace. + Banner text to be displayed by ConsoleHost + Help text for minishell. This is displayed on 'minishell -?'. + Commandline parameters specified by user. + An integer value which should be used as exit code for the process. + + + + + Entry point in to ConsoleShell. This method is called by the MSHManagedEntrace + + + + Configuration information which is used to create Runspace. + + + + Banner text to be displayed by ConsoleHost + + + + Help text for minishell. This is displayed on 'minishell -?'. + + + + Warning occurred prior to this point, for example, a snap-in fails to load beforehand. + This string will be printed out. + + + + Commandline parameters specified by user. + + + + An integer value which should be used as exit code for the + process. + + + + + + ProgressPane is a class that represents the "window" in which outstanding activities for which the host has recevied + progress updates are shown. + + + + + + + Constructs a new instance. + + + + + An implementation of the PSHostRawUserInterface with which the pane will be shown and hidden. + + + + + + + Indicates whether the pane is visible on the screen buffer or not. + + + + + true if the pane is visible, false if not. + + + + + + + Shows the pane in the screen buffer. Saves off the content of the region of the buffer that will be overwritten so + that it can be restored again. + + + + + + + Hides the pane by restoring the saved contents of the region of the buffer that the pane occupies. If the pane is + not showing, then does nothing. + + + + + + + Updates the pane with the rendering of the supplied PendingProgress, and shows it. + + + + + A PendingProgress instance that represents the outstanding activities that should be shown. + + + + + + + Represents all of the outstanding progress activities received by the host, and includes methods to update that state + upon receipt of new ProgressRecords, and to render that state into an array of strings such that ProgressPane can + display it. + + The set of activities that we're tracking is logically a binary tree, with siblings in one branch and children in + another. For ease of implementation, this tree is represented as lists of lists. We use ArrayList as out list type, + although List1 (generic List) would also have worked. I suspect that ArrayList is faster because there are fewer links + to twiddle, though I have not measured that. + + This class uses lots of nearly identical helper functions to recursively traverse the tree. If I weren't so pressed + for time, I would see if generic methods could be used to collapse the number of traversers. + + + + + + + Update the data structures that represent the outstanding progress records reported so far. + + + + + Identifier of the source of the event. This is used as part of the "key" for matching newly received records with + records that have already been received. For a record to match (meaning that they refer to the same activity), both + the source and activity identifiers need to match. + + + + + The ProgressRecord received that will either update the status of an activity which we are already tracking, or + represent a new activity that we need to track. + + + + + + + Removes a node from the tree. + + + + + List in the tree from which the node is to be removed. + + + + + Index into the list of the node to be removed. + + + + + + + Adds a node to the tree, first removing the oldest node if the tree is too large. + + + + + List in the tree where the node is to be added. + + + + + Node to be added. + + + + + + + Convenience overload. + + + + + + + Finds a node with a given ActivityId in provided set of nodes. Recursively walks the set of nodes and their children. + + + + + Identifier of the source of the record. + + + + + ActivityId to search for. + + + + + Receives reference to the List where the found node was located, or null if no suitable node was found. + + + + + Receives the index into listWhereFound that indicating where in the list the node was located, or -1 if + no suitable node was found. + + + + + The found node, or null if no suitable node was located. + + + + + + + Finds the oldest node with a given rendering style that is at least as old as a given age. + + + + + List of nodes to search. Child lists of each node in this list will also be searched. + + + + + The minimum age of the node to be located. To find the oldest node, pass 0. + + + + The rendering style of the node to be located. + + + + + The found node, or null if no suitable node was located. + + + + + + + Increments the age of each of the nodes in the given list, and all their children. Also sets the rendering + style of each node to "full." + + All nodes are aged every time a new ProgressRecord is received. + + + + + + + Generates an array of strings representing as much of the outstanding progress activties as possible within the given + space. As more outstanding activities are collected, nodes are "compressed" (i.e. rendered in an increasing terse + fashion) in order to display as many as possible. Ultimately, some nodes may be compressed to the point of + invisibility. The oldest nodes are compressed first. + + + + + The maximum width (in BufferCells) that the rendering may consume. + + + + + The maximum height (in BufferCells) that the rendering may consume. + + + + + The PSHostRawUserInterface used to gauge string widths in the rendering. + + + + + An array of strings containing the textual representation of the outstanding progress activities. + + + + + + + Helper function for Render(). Recursively renders nodes. + + + + + The rendered strings so far. Additional rendering will be appended. + + + + + The nodes to be rendered. All child nodes will also be rendered. + + + + + The current indentation level (in BufferCells). + + + + + The maximum number of BufferCells that the rendering can consume, horizontally. + + + + + The PSHostRawUserInterface used to gauge string widths in the rendering. + + + + + + + Tallies up the number of BufferCells vertically that will be required to show all the ProgressNodes in the given + list, and all of their children. + + + + + The maximum height (in BufferCells) that the rendering may consume. + + + + + The PSHostRawUserInterface used to gauge string widths in the rendering. + + + + + The vertical height (in BufferCells) that will be required to show all of the nodes in the given list. + + + + + + + + + + + + Helper function to CompressToFit. Considers compressing nodes from one level to another. + + + + + The PSHostRawUserInterface used to gauge string widths in the rendering. + + + + + The maximum height (in BufferCells) that the rendering may consume. + + + + + The maximum width (in BufferCells) that the rendering may consume. + + + + + Receives the number of nodes that were compressed. If the result of the method is false, then this will be the total + number of nodes being tracked (i.e. all of them will have been compressed). + + + + + The rendering style (e.g. "compression level") that the nodes are expected to currently have. + + + + + The new rendering style that a node will have when it is compressed. If the result of the method is false, then all + nodes will have this rendering style. + + + + + true to indicate that the nodes are compressed to the point that their rendering will fit within the constraint, or + false to indicate that all of the nodes are compressed to a given level, but that the rendering still can't fit + within the constraint. + + + + + + + "Compresses" the nodes representing the outstanding progress activities until their rendering will fit within a + "given height, or until they are compressed to a given level. The oldest nodes are compressed first. + + This is a 4-stage process -- from least compressed to "invisible". At each stage we find the oldest nodes in the + tree and change their rendering style to a more compact style. As soon as the rendering of the nodes will fit within + the maxHeight, we stop. The result is that the most recent nodes will be the least compressed, the idea being that + the rendering should show the most recently updated activities with the most complete rendering for them possible. + + + + + The PSHostRawUserInterface used to gauge string widths in the rendering. + + + + + The maximum height (in BufferCells) that the rendering may consume. + + + + + The maximum width (in BufferCells) that the rendering may consume. + + + + + The number of nodes that were made invisible during the compression. + + + + + + + Called for each node in the tree. + + + + + The node being visited. + + + + + The list in which the node resides. + + + + + The index into listWhereFound of the node. + + + + + true to continue visiting nodes, false if not. + + + + + + + ProgressNode is an augmentation of the ProgressRecord type that adds extra fields for the purposes of tracking + outstanding activities received by the host, and rendering them in the console. + + + + + + + Indicates the various layouts for rendering a particular node. Each style is progressively less terse. + + + + + + Allocate only one line for displaying the StatusDescription or the CurrentOperation, + truncate the rest if the StatusDescription or CurrentOperation doesn't fit in one line + + + + + The node will be displayed the same as Full, plus, the whole StatusDescription and CurrentOperation will be displayed (in multiple lines if needed). + + + + + + Constructs an instance from a ProgressRecord. + + + + + + + Renders a single progress node as strings of text according to that node's style. The text is appended to the + supplied list of strings. + + + + + List of strings to which the node's rendering will be appended. + + + + + The indentation level (in BufferCells) at which the node should be rendered. + + + + + The maximum number of BufferCells that the rendering is allowed to consume. + + + + + The PSHostRawUserInterface used to gauge string widths in the rendering. + + + + + + + Renders a node in the "Full" style. + + + + + List of strings to which the node's rendering will be appended. + + + + + The indentation level (in BufferCells) at which the node should be rendered. + + + + + The maximum number of BufferCells that the rendering is allowed to consume. + + + + + The PSHostRawUserInterface used to gauge string widths in the rendering. + + + + + Indicate if the full StatusDescription and CurrentOperation should be displayed. + + + + + + + Renders a node in the "Compact" style. + + + + + List of strings to which the node's rendering will be appended. + + + + + The indentation level (in BufferCells) at which the node should be rendered. + + + + + The maximum number of BufferCells that the rendering is allowed to consume. + + + + + The PSHostRawUserInterface used to gauge string widths in the rendering. + + + + + + + Renders a node in the "Minimal" style. + + + + + List of strings to which the node's rendering will be appended. + + + + + The indentation level (in BufferCells) at which the node should be rendered. + + + + + The maximum number of BufferCells that the rendering is allowed to consume. + + + + + The PSHostRawUserInterface used to gauge string widths in the rendering. + + + + + + + The nodes that have this node as their parent. + + + + + + + The "age" of the node. A node's age is incremented by PendingProgress.Update each time a new ProgressRecord is + received by the host. A node's age is reset when a corresponding ProgressRecord is received. Thus, the age of + a node reflects the number of ProgressRecord that have been received since the node was last updated. + + The age is used by PendingProgress.Render to determine which nodes should be rendered on the display, and how. As the + display has finite size, it may be possible to have many more outstanding progress activities than will fit in that + space. The rendering of nodes can be progressively "compressed" into a more terse format, or not rendered at all in + order to fit as many nodes as possible in the available space. The oldest nodes are compressed or skipped first. + + + + + + + The style in which this node should be rendered. + + + + + + + Identifies the source of the progress record. + + + + + + + The number of vertical BufferCells that are required to render the node in its current style. + + + + + + + + The number of vertical BufferCells that are required to render the node in the Full style. + + + + + + + + The number of vertical BufferCells that are required to render the node in the Compact style. + + + + + + + + Wraps Hitesh's xml serializer in such a way that it will select the proper serializer based on the data + format. + + + + + + + Describes the format of the data streamed between minishells, e.g. the allowed arguments to the minishell + -outputformat and -inputformat command line parameters. + + + + + + + text format -- i.e. stream text just as out-default would display it. + + + + + + + XML-serialized format + + + + + + + Indicates that the data should be discarded instead of processed. + + + + + + Defines an entry point from unmanaged code to managed Msh + + + + + Starts managed MSH + + + Console file used to create a runspace configuration to start MSH + + + Command line arguments to the managed MSH + + + + + + Implements the start-transcript cmdlet + + + + + + + The name of the file in which to write the transcript. If not provided, the file indicated by the variable + $TRANSCRIPT is used. If neither the filename is supplied or $TRANSCRIPT is not set, the filename shall be $HOME/My + Documents/PowerShell_transcript.YYYYMMDDmmss.txt + + + + + + + The literal name of the file in which to write the transcript. + + + + + The literal name of the file in which to write the transcript. + + + + + + Describes the current state of the activity. + + + + + + + Property that sets force parameter. This will reset the read-only + attribute on an existing file. + + + The read-only attribute will not be replaced when the transcript is done. + + + + + Property that prevents file overwrite. + + + + + Whether to include command invocation time headers between commands. + + + + + + Starts the transcription + + + + resolve a user provided file name or path (cluding globbing characters) + to a fully qualified file path, using the file system provider + + + + + Implements the stop-transcript cmdlet + + + + + + + Starts the transcription + + + + + + PSHostMshSnapin (or PSHostMshSnapinInstaller) is a class for facilitating registry + of necessary information for monad host mshsnapin. + + This class will be built with monad host engine dll + (Microsoft.PowerShell.ConsoleHost.dll). + + + + + + + Create an instance of this class. + + + + + Get name of this mshsnapin. + + + + + Get the default vendor string for this mshsnapin. + + + + + Get resource information for vendor. This is a string of format: resourceBaseName,resourceName. + + + + + Get the default description string for this mshsnapin. + + + + + Get resource information for description. This is a string of format: resourceBaseName,resourceName. + + + + + + EngineInstaller is a class for facilitating registry of necessary + information for monad engine. + + This class will be built with monad console host dll + (System.Management.Automation.dll). + + At install time, installation utilities (like InstallUtil.exe) will + call install this engine assembly based on the implementation in + this class. + + This class derives from base class PSInstaller. PSInstaller will + handle the details about how information got written into registry. + Here, the information about registry content is provided. + + + + + + Constructor + + + + + + + + + + + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to This Windows PowerShell snap-in contains cmdlets (such as Start-Transcript and Stop-Transcript) that are provided for use with the Windows PowerShell console host.. + + + + + Looks up a localized string similar to Host Windows PowerShell Snap-In.. + + + + + Looks up a localized string similar to Microsoft Corporation. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot process the command because arguments to -Command or -EncodedCommand have already been specified with -EncodedArguments.. + + + + + Looks up a localized string similar to The argument '{0}' to the -File parameter does not exist. Provide the path to an existing '.ps1' file as an argument to the -File parameter.. + + + + + Looks up a localized string similar to Cannot process the command because the value specified with -EncodedArguments is not properly encoded. The value must be Base64 encoded.. + + + + + Looks up a localized string similar to Cannot process the command because the value specified with -EncodedCommand is not properly encoded. The value must be Base64 encoded.. + + + + + Looks up a localized string similar to Cannot process the command because of an incorrect parameter value. "{0}" is not a valid format. Valid formats are: + {1}. + + + + + Looks up a localized string similar to Unable to read from file '{0}'.. + + + + + Looks up a localized string similar to Cannot process command because a command is already specified with -Command or -EncodedCommand.. + + + + + Looks up a localized string similar to PowerShell[.exe] [-PSConsoleFile <file> | -Version <version>] + [-NoLogo] [-NoExit] [-NoProfile] [-NonInteractive] [-STA] + [-OutputFormat {Text | XML}] [-InputFormat {Text | XML}] + [-ConfigurationName <string>] + [-File fileName [arguments...]] [-ExecutionPolicy <ExecutionPolicy>] + [-Command { - | <script-block> [-args <arg-array>] + | <string> [<CommandParameters>] } ] + + PowerShell[.exe] -Help | -? | /? + + -PSConsoleFile + Loads the specified Windows PowerShell consol [rest of string was truncated]";. + + + + + Looks up a localized string similar to Processing -File '{0}' failed: {1} Specify a valid path for the -File parameter.. + + + + + Looks up a localized string similar to Processing -File '{0}' failed because the file does not have a '.ps1' extension. Specify a valid Windows PowerShell script file name, and then try again.. + + + + + Looks up a localized string similar to Processing -WindowStyle '{0}' failed: {1}.. + + + + + Looks up a localized string similar to Cannot process the command because -EncodedArguments requires a value. Specify a value for the -EncodedArguments parameter.. + + + + + Looks up a localized string similar to Cannot process the command because of a missing parameter. A command must follow -Command.. + + + + + Looks up a localized string similar to Cannot process the command because -Configuration requires an argument that is a remote endpoint configuration name. Specify this argument and try again.. + + + + + Looks up a localized string similar to Cannot process the execution policy because of a missing policy name. A policy name must follow -ExecutionPolicy.. + + + + + Looks up a localized string similar to The command cannot be run because the File parameter requires a file path. Supply a path for the File parameter and then try the command again.. + + + + + Looks up a localized string similar to Cannot process the command because the -InputFormat parameter requires an argument. Specify a valid format argument for this parameter. Valid formats are: + {0}. + + + + + Looks up a localized string similar to The command cannot be run because no argument has been supplied for the OutputFormat parameter. Specify one of the following formats for this parameter. + {0}. + + + + + Looks up a localized string similar to Cannot process the command because -WindowStyle requires an argument that is normal, hidden, minimized or maximized. Specify one of these argument values and try again.. + + + + + Looks up a localized string similar to Cannot process the command because -STA and -MTA are both specified. Specify either -STA or -MTA.. + + + + + Looks up a localized string similar to '-' was specified as the argument to -Command but standard input has not been redirected for this process.. + + + + + Looks up a localized string similar to '-' was specified with the -Command parameter; no other arguments to -Command are permitted.. + + + + + Looks up a localized string similar to Unrecognized parameter: '{0}'.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred when adding a break handler. Contact Microsoft Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while attaching to parent console. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while detaching from the console. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while filling the console output buffer with attributes. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while filling the console output buffer with characters. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while flushing the console input buffer. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while retrieving the handle for the active console output buffer. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while getting cursor information. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while getting console font information. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while getting console output buffer information. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while getting input about the console handle. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while getting the largest console window size. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while getting the console mode. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while getting the number of events in the console input buffer. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while reading the contents of the console input buffer. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while reading characters from the console input buffer. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while reading input records from the console input buffer. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to Win32 internal error "{0}" 0x{1:X} occurred while reading the console output buffer. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while trying to remove a break handler. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while scrolling the console output buffer. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while sending keyboard input. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to Win32 internal error "{0}" 0x{1:X} occurred while setting cursor information.Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while trying to set the cursor position. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while setting console font information. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while setting the console output buffer size. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while setting character attributes for the console output buffer. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while setting the console window information. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while setting the console window title. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while setting the console mode. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while writing to the console output buffer at the current cursor position. Contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The Win32 internal error "{0}" 0x{1:X} occurred while writing to the console output buffer. Contact Microsoft Customer Support Services.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot process the operation because the supplied coordinate is not valid. Specify a coordinate within the buffer area of {0}.. + + + + + Looks up a localized string similar to Cannot set the buffer size because the size specified is too large or too small.. + + + + + Looks up a localized string similar to Cannot set the console color because the value specified is not valid. Specify a valid color as defined by the System.ConsoleColor type.. + + + + + Looks up a localized string similar to Cannot process CursorSize because the cursor size specified is not valid.. + + + + + Looks up a localized string similar to Cannot read key options. To read options, set one or both of the following: IncludeKeyDown, IncludeKeyUp.. + + + + + Looks up a localized string similar to {0} should be greater than or equal to {1}.. + + + + + Looks up a localized string similar to Cannot use the specified Window X (column) position because it extends past the width of the screen buffer. Specify another X position, starting with 0 as the left most column of the buffer.. + + + + + Looks up a localized string similar to Cannot use the specified Window Y (row) position because it extends past the height of the screen buffer. Specify another Y position, starting with 0 as the top-most row of the buffer.. + + + + + Looks up a localized string similar to Window cannot be taller than the screen buffer.. + + + + + Looks up a localized string similar to Window cannot be taller than {0}.. + + + + + Looks up a localized string similar to Window height must be at least 1.. + + + + + Looks up a localized string similar to Administrator. + + + + + Looks up a localized string similar to {0}: {1}. + + + + + Looks up a localized string similar to Window title cannot be longer than {0} characters.. + + + + + Looks up a localized string similar to Window title cannot be empty.. + + + + + Looks up a localized string similar to Window size is too narrow.. + + + + + Looks up a localized string similar to Window size is too short.. + + + + + Looks up a localized string similar to Window cannot be wider than the screen buffer.. + + + + + Looks up a localized string similar to Window cannot be wider than {0}.. + + + + + Looks up a localized string similar to Window width cannot be less than 1.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot load PSReadline module. Console is running without PSReadline.. + + + + + Looks up a localized string similar to An error occurred while running '{0}': {1}. + + + + + Looks up a localized string similar to Command '{0}' was not run as the session in which it was intended to run was either closed or broken. + + + + + Looks up a localized string similar to More than one server mode parameter was specified. Server mode parameters must be used exclusively.. + + + + + Looks up a localized string similar to An instance of the ConsoleHost class has already been created for this process.. + + + + + Looks up a localized string similar to {0}:{1,-3} {2}. + + + + + Looks up a localized string similar to PS>. + + + + + Looks up a localized string similar to Entering debug mode. Use h or ? for help. . + + + + + Looks up a localized string similar to Hit {0}. + + + + + Looks up a localized string similar to Command '{0}' could not be run because some Windows PowerShell Snap-Ins did not load.. + + + + + Looks up a localized string similar to Execution of initialization script has failed. The shell cannot be started.. + + + + + Looks up a localized string similar to Cannot process input loop. ExitCurrentLoop was called when no InputLoops were running.. + + + + + Looks up a localized string similar to A nested prompt cannot be entered until the host is running at least one prompt loop.. + + + + + Looks up a localized string similar to + The current session does not support debugging; execution will continue. + + . + + + + + Looks up a localized string similar to The shell cannot be started. A failure occurred during initialization:. + + + + + Looks up a localized string similar to Loading personal and system profiles took {0}ms.. + + + + + Looks up a localized string similar to Cannot display prompt because too many nested prompts are already running.. + + + + + Looks up a localized string similar to ********************** + Windows PowerShell transcript end + End time: {0:yyyyMMddHHmmss} + **********************. + + + + + Looks up a localized string similar to ********************** + Windows PowerShell transcript start + Start time: {0:yyyyMMddHHmmss} + Username : {1}\{2} + Machine : {3} ({4}) + **********************. + + + + + Looks up a localized string similar to An error has occurred that was not properly handled. Additional information is shown below. The Windows PowerShell process will exit.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Password for user {0}: . + + + + + Looks up a localized string similar to User: . + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Choice[{0}]: . + + + + + Looks up a localized string similar to DEBUG: {0}. + + + + + Looks up a localized string similar to (default is "{0}"). + + + + + Looks up a localized string similar to (default is "{0}"): . + + + + + Looks up a localized string similar to (default choices are {0}). + + + + + Looks up a localized string similar to "{0}" should have at least one element.. + + + + + Looks up a localized string similar to Cannot process the hot key because a question mark ("?") cannot be used as a hot key.. + + + + + Looks up a localized string similar to "{0}" must be a valid index into "{1}" or -1 for no default choice.. + + + + + Looks up a localized string similar to "{0}" must be a valid index into "{1}". "{2}" is not a valid index.. + + + + + Looks up a localized string similar to "{0}" cannot be null.. + + + + + Looks up a localized string similar to "{0}" cannot be null or empty.. + + + + + Looks up a localized string similar to The prompt was canceled.. + + + + + Looks up a localized string similar to The "{0}" collection must have at least one element.. + + + + + Looks up a localized string similar to {0}: . + + + + + Looks up a localized string similar to [?] Help . + + + + + Looks up a localized string similar to (Type !? for Help.). + + + + + Looks up a localized string similar to No help is available for {0}.. + + + + + Looks up a localized string similar to Cannot recognize "{1}" as a {0} due to a format error.. + + + + + Looks up a localized string similar to Cannot recognize "{1}" as a {0} due to an overflow error.. + + + + + Looks up a localized string similar to Cannot display the prompt for "{0}" because type "{1}" cannot be loaded.. + + + + + Looks up a localized string similar to "{0}" cannot be recognized as a valid Prompt command.. + + + + + Looks up a localized string similar to The field "{0}" is a zero rank array.. + + + + + Looks up a localized string similar to Windows PowerShell is in NonInteractive mode. Read and Prompt functionality is not available.. + + + + + Looks up a localized string similar to VERBOSE: {0}. + + + + + Looks up a localized string similar to WARNING: {0}. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Windows PowerShell + Copyright (C) Microsoft Corporation. All rights reserved.. + + + + + Looks up a localized string similar to PowerShell[.exe] [-PSConsoleFile <file> | -Version <version>] + [-NoLogo] [-NoExit] [-Sta] [-Mta] [-NoProfile] [-NonInteractive] + [-InputFormat {Text | XML}] [-OutputFormat {Text | XML}] + [-WindowStyle <style>] [-EncodedCommand <Base64EncodedCommand>] + [-ConfigurationName <string>] + [-File <filePath> <args>] [-ExecutionPolicy <ExecutionPolicy>] + [-Command { - | <script-block> [-args <arg-array>] + | <string> [<CommandParameters>] } ] + + PowerShell[.exe] -Help | -? | / [rest of string was truncated]";. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to {0} activities not shown.... + + + + + Looks up a localized string similar to {0} activity not shown.... + + + + + Looks up a localized string similar to {0}{1} remaining. . + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Transcription cannot be started.. + + + + + Looks up a localized string similar to An error occurred stopping transcription: {0}. + + + + + Looks up a localized string similar to This host does not support transcription.. + + + + + Looks up a localized string similar to Cannot perform operation because the path resolved to more than one file. This command cannot operate on multiple files.. + + + + + Looks up a localized string similar to The current provider ({0}) cannot open a file.. + + + + + Looks up a localized string similar to File {0} already exists and {1} was specified.. + + + + + Looks up a localized string similar to File {0} is read-only. Cannot write to this file. "Start-Transcript -Force" will clear the read-only attribute.. + + + + + Looks up a localized string similar to Transcript started, output file is {0}. + + + + + Looks up a localized string similar to Transcript stopped, output file is {0}. + + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Core.Activities.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Core.Activities.dll new file mode 100644 index 0000000..ef6efb9 Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Core.Activities.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Core.Activities.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Core.Activities.xml new file mode 100644 index 0000000..dfa9a2a --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Core.Activities.xml @@ -0,0 +1,2210 @@ + + + + Microsoft.PowerShell.Core.Activities + + + + + Activity to invoke the Microsoft.PowerShell.Core\Disable-PSSessionConfiguration command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the NoServiceRestart parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Enable-PSRemoting command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Force parameter. + + + + + Provides access to the SkipNetworkProfileCheck parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Disable-PSRemoting command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Force parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Enable-PSSessionConfiguration command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the SecurityDescriptorSddl parameter. + + + + + Provides access to the SkipNetworkProfileCheck parameter. + + + + + Provides access to the NoServiceRestart parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\ForEach-Object command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Begin parameter. + + + + + Provides access to the Process parameter. + + + + + Provides access to the End parameter. + + + + + Provides access to the RemainingScripts parameter. + + + + + Provides access to the MemberName parameter. + + + + + Provides access to the ArgumentList parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Get-Command command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Verb parameter. + + + + + Provides access to the Noun parameter. + + + + + Provides access to the Module parameter. + + + + + Provides access to the FullyQualifiedModule parameter. + + + + + Provides access to the CommandType parameter. + + + + + Provides access to the TotalCount parameter. + + + + + Provides access to the Syntax parameter. + + + + + Provides access to the ShowCommandInfo parameter. + + + + + Provides access to the ArgumentList parameter. + + + + + Provides access to the All parameter. + + + + + Provides access to the ListImported parameter. + + + + + Provides access to the ParameterName parameter. + + + + + Provides access to the ParameterType parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Get-Help command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the Category parameter. + + + + + Provides access to the Component parameter. + + + + + Provides access to the Functionality parameter. + + + + + Provides access to the Role parameter. + + + + + Provides access to the Detailed parameter. + + + + + Provides access to the Full parameter. + + + + + Provides access to the Examples parameter. + + + + + Provides access to the Parameter parameter. + + + + + Provides access to the Online parameter. + + + + + Provides access to the ShowWindow parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Get-Job command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the IncludeChildJob parameter. + + + + + Provides access to the ChildJobState parameter. + + + + + Provides access to the HasMoreData parameter. + + + + + Provides access to the Before parameter. + + + + + Provides access to the After parameter. + + + + + Provides access to the Newest parameter. + + + + + Provides access to the JobId parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InstanceId parameter. + + + + + Provides access to the State parameter. + + + + + Provides access to the Command parameter. + + + + + Provides access to the Filter parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Get-Module command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the FullyQualifiedName parameter. + + + + + Provides access to the All parameter. + + + + + Provides access to the ListAvailable parameter. + + + + + Provides access to the Refresh parameter. + + + + + Provides access to the PSSession parameter. + + + + + Provides access to the CimSession parameter. + + + + + Provides access to the CimResourceUri parameter. + + + + + Provides access to the CimNamespace parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Get-PSSession command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the ComputerName parameter. + + + + + Provides access to the ApplicationName parameter. + + + + + Provides access to the ConnectionUri parameter. + + + + + Provides access to the ConfigurationName parameter. + + + + + Provides access to the AllowRedirection parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InstanceId parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the Authentication parameter. + + + + + Provides access to the CertificateThumbprint parameter. + + + + + Provides access to the Port parameter. + + + + + Provides access to the UseSSL parameter. + + + + + Provides access to the ThrottleLimit parameter. + + + + + Provides access to the State parameter. + + + + + Provides access to the SessionOption parameter. + + + + + Provides access to the PSSessionId parameter. + + + + + Provides access to the ContainerId parameter. + + + + + Provides access to the VMId parameter. + + + + + Provides access to the VMName parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Get-PSSessionConfiguration command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Force parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\New-ModuleManifest command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the NestedModules parameter. + + + + + Provides access to the Guid parameter. + + + + + Provides access to the Author parameter. + + + + + Provides access to the CompanyName parameter. + + + + + Provides access to the Copyright parameter. + + + + + Provides access to the RootModule parameter. + + + + + Provides access to the ModuleVersion parameter. + + + + + Provides access to the Description parameter. + + + + + Provides access to the ProcessorArchitecture parameter. + + + + + Provides access to the PowerShellVersion parameter. + + + + + Provides access to the ClrVersion parameter. + + + + + Provides access to the DotNetFrameworkVersion parameter. + + + + + Provides access to the PowerShellHostName parameter. + + + + + Provides access to the PowerShellHostVersion parameter. + + + + + Provides access to the RequiredModules parameter. + + + + + Provides access to the TypesToProcess parameter. + + + + + Provides access to the FormatsToProcess parameter. + + + + + Provides access to the ScriptsToProcess parameter. + + + + + Provides access to the RequiredAssemblies parameter. + + + + + Provides access to the FileList parameter. + + + + + Provides access to the ModuleList parameter. + + + + + Provides access to the FunctionsToExport parameter. + + + + + Provides access to the AliasesToExport parameter. + + + + + Provides access to the VariablesToExport parameter. + + + + + Provides access to the CmdletsToExport parameter. + + + + + Provides access to the DscResourcesToExport parameter. + + + + + Provides access to the PrivateData parameter. + + + + + Provides access to the Tags parameter. + + + + + Provides access to the ProjectUri parameter. + + + + + Provides access to the LicenseUri parameter. + + + + + Provides access to the IconUri parameter. + + + + + Provides access to the ReleaseNotes parameter. + + + + + Provides access to the HelpInfoUri parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the DefaultCommandPrefix parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Test-PSSessionConfigurationFile command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Receive-Job command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Job parameter. + + + + + Provides access to the Location parameter. + + + + + Provides access to the Session parameter. + + + + + Provides access to the Keep parameter. + + + + + Provides access to the NoRecurse parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Wait parameter. + + + + + Provides access to the AutoRemoveJob parameter. + + + + + Provides access to the WriteEvents parameter. + + + + + Provides access to the WriteJobInResults parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InstanceId parameter. + + + + + Provides access to the JobId parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Register-PSSessionConfiguration command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the ProcessorArchitecture parameter. + + + + + Provides access to the SessionType parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the AssemblyName parameter. + + + + + Provides access to the ApplicationBase parameter. + + + + + Provides access to the ConfigurationTypeName parameter. + + + + + Provides access to the RunAsCredential parameter. + + + + + Provides access to the ThreadApartmentState parameter. + + + + + Provides access to the ThreadOptions parameter. + + + + + Provides access to the AccessMode parameter. + + + + + Provides access to the UseSharedProcess parameter. + + + + + Provides access to the StartupScript parameter. + + + + + Provides access to the MaximumReceivedDataSizePerCommandMB parameter. + + + + + Provides access to the MaximumReceivedObjectSizeMB parameter. + + + + + Provides access to the SecurityDescriptorSddl parameter. + + + + + Provides access to the ShowSecurityDescriptorUI parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the NoServiceRestart parameter. + + + + + Provides access to the PSVersion parameter. + + + + + Provides access to the SessionTypeOption parameter. + + + + + Provides access to the TransportOption parameter. + + + + + Provides access to the ModulesToImport parameter. + + + + + Provides access to the Path parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\New-PSTransportOption command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the MaxIdleTimeoutSec parameter. + + + + + Provides access to the ProcessIdleTimeoutSec parameter. + + + + + Provides access to the MaxSessions parameter. + + + + + Provides access to the MaxConcurrentCommandsPerSession parameter. + + + + + Provides access to the MaxSessionsPerUser parameter. + + + + + Provides access to the MaxMemoryPerSessionMB parameter. + + + + + Provides access to the MaxProcessesPerSession parameter. + + + + + Provides access to the MaxConcurrentUsers parameter. + + + + + Provides access to the IdleTimeoutSec parameter. + + + + + Provides access to the OutputBufferingMode parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Remove-Job command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Job parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InstanceId parameter. + + + + + Provides access to the JobId parameter. + + + + + Provides access to the State parameter. + + + + + Provides access to the Command parameter. + + + + + Provides access to the Filter parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Remove-PSSession command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Session parameter. + + + + + Provides access to the ContainerId parameter. + + + + + Provides access to the VMId parameter. + + + + + Provides access to the VMName parameter. + + + + + Provides access to the InstanceId parameter. + + + + + Provides access to the PSSessionId parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the ComputerName parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Set-PSSessionConfiguration command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the AssemblyName parameter. + + + + + Provides access to the ApplicationBase parameter. + + + + + Provides access to the ConfigurationTypeName parameter. + + + + + Provides access to the RunAsCredential parameter. + + + + + Provides access to the ThreadApartmentState parameter. + + + + + Provides access to the ThreadOptions parameter. + + + + + Provides access to the AccessMode parameter. + + + + + Provides access to the UseSharedProcess parameter. + + + + + Provides access to the StartupScript parameter. + + + + + Provides access to the MaximumReceivedDataSizePerCommandMB parameter. + + + + + Provides access to the MaximumReceivedObjectSizeMB parameter. + + + + + Provides access to the SecurityDescriptorSddl parameter. + + + + + Provides access to the ShowSecurityDescriptorUI parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the NoServiceRestart parameter. + + + + + Provides access to the PSVersion parameter. + + + + + Provides access to the SessionTypeOption parameter. + + + + + Provides access to the TransportOption parameter. + + + + + Provides access to the ModulesToImport parameter. + + + + + Provides access to the Path parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Start-Job command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the DefinitionName parameter. + + + + + Provides access to the DefinitionPath parameter. + + + + + Provides access to the Type parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the ScriptBlock parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the FilePath parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Authentication parameter. + + + + + Provides access to the InitializationScript parameter. + + + + + Provides access to the RunAs32 parameter. + + + + + Provides access to the PSVersion parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the ArgumentList parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Stop-Job command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Job parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InstanceId parameter. + + + + + Provides access to the JobId parameter. + + + + + Provides access to the State parameter. + + + + + Provides access to the Filter parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Test-ModuleManifest command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Unregister-PSSessionConfiguration command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the NoServiceRestart parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Update-Help command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Module parameter. + + + + + Provides access to the FullyQualifiedModule parameter. + + + + + Provides access to the SourcePath parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Recurse parameter. + + + + + Provides access to the UICulture parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the UseDefaultCredentials parameter. + + + + + Provides access to the Force parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Wait-Job command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Job parameter. + + + + + Provides access to the Any parameter. + + + + + Provides access to the Timeout parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InstanceId parameter. + + + + + Provides access to the JobId parameter. + + + + + Provides access to the State parameter. + + + + + Provides access to the Filter parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Where-Object command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the FilterScript parameter. + + + + + Provides access to the Property parameter. + + + + + Provides access to the Value parameter. + + + + + Provides access to the EQ parameter. + + + + + Provides access to the CEQ parameter. + + + + + Provides access to the NE parameter. + + + + + Provides access to the CNE parameter. + + + + + Provides access to the GT parameter. + + + + + Provides access to the CGT parameter. + + + + + Provides access to the LT parameter. + + + + + Provides access to the CLT parameter. + + + + + Provides access to the GE parameter. + + + + + Provides access to the CGE parameter. + + + + + Provides access to the LE parameter. + + + + + Provides access to the CLE parameter. + + + + + Provides access to the Like parameter. + + + + + Provides access to the CLike parameter. + + + + + Provides access to the NotLike parameter. + + + + + Provides access to the CNotLike parameter. + + + + + Provides access to the Match parameter. + + + + + Provides access to the CMatch parameter. + + + + + Provides access to the NotMatch parameter. + + + + + Provides access to the CNotMatch parameter. + + + + + Provides access to the Contains parameter. + + + + + Provides access to the CContains parameter. + + + + + Provides access to the NotContains parameter. + + + + + Provides access to the CNotContains parameter. + + + + + Provides access to the In parameter. + + + + + Provides access to the CIn parameter. + + + + + Provides access to the NotIn parameter. + + + + + Provides access to the CNotIn parameter. + + + + + Provides access to the Is parameter. + + + + + Provides access to the IsNot parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Save-Help command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the DestinationPath parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Module parameter. + + + + + Provides access to the FullyQualifiedModule parameter. + + + + + Provides access to the UICulture parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the UseDefaultCredentials parameter. + + + + + Provides access to the Force parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Suspend-Job command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Job parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Wait parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InstanceId parameter. + + + + + Provides access to the JobId parameter. + + + + + Provides access to the State parameter. + + + + + Provides access to the Filter parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Core\Resume-Job command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Job parameter. + + + + + Provides access to the Wait parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InstanceId parameter. + + + + + Provides access to the JobId parameter. + + + + + Provides access to the State parameter. + + + + + Provides access to the Filter parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Diagnostics.Activities.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Diagnostics.Activities.dll new file mode 100644 index 0000000..889b160 Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Diagnostics.Activities.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Diagnostics.Activities.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Diagnostics.Activities.xml new file mode 100644 index 0000000..c707e37 --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Diagnostics.Activities.xml @@ -0,0 +1,303 @@ + + + + Microsoft.PowerShell.Diagnostics.Activities + + + + + Activity to invoke the Microsoft.PowerShell.Diagnostics\Export-Counter command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the FileFormat parameter. + + + + + Provides access to the MaxSize parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Circular parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Diagnostics\Get-Counter command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the ListSet parameter. + + + + + Provides access to the Counter parameter. + + + + + Provides access to the SampleInterval parameter. + + + + + Provides access to the MaxSamples parameter. + + + + + Provides access to the Continuous parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Diagnostics\Get-WinEvent command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the ListLog parameter. + + + + + Provides access to the LogName parameter. + + + + + Provides access to the ListProvider parameter. + + + + + Provides access to the ProviderName parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the MaxEvents parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the FilterXPath parameter. + + + + + Provides access to the FilterXml parameter. + + + + + Provides access to the FilterHashtable parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Oldest parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Diagnostics\New-WinEvent command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the ProviderName parameter. + + + + + Provides access to the WinEventId parameter. + + + + + Provides access to the Version parameter. + + + + + Provides access to the Payload parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Diagnostics\Import-Counter command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the ListSet parameter. + + + + + Provides access to the StartTime parameter. + + + + + Provides access to the EndTime parameter. + + + + + Provides access to the Counter parameter. + + + + + Provides access to the Summary parameter. + + + + + Provides access to the MaxSamples parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Editor.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Editor.dll new file mode 100644 index 0000000..7a71980 Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Editor.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GPowerShell.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GPowerShell.dll new file mode 100644 index 0000000..526f2dd Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GPowerShell.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GPowerShell.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GPowerShell.xml new file mode 100644 index 0000000..549c4c6 --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GPowerShell.xml @@ -0,0 +1,26272 @@ + + + + Microsoft.PowerShell.GPowerShell + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to _Open Add-on Tools Website. + + + + + Looks up a localized string similar to Add. + + + + + Looks up a localized string similar to _Add-ons. + + + + + Looks up a localized string similar to An Add-on tool with the same control has already been added to the vertical or horizontal Add-on tools.. + + + + + Looks up a localized string similar to An Add-on tool with the following name has already been added to the vertical or horizontal Add-on tools: {0}. + + + + + Looks up a localized string similar to Alice Blue. + + + + + Looks up a localized string similar to All Files. + + + + + Looks up a localized string similar to Already running a command. Please wait.. + + + + + Looks up a localized string similar to Alt. + + + + + Looks up a localized string similar to Antique White. + + + + + Looks up a localized string similar to Application status. + + + + + Looks up a localized string similar to Aqua. + + + + + Looks up a localized string similar to Aquamarine. + + + + + Looks up a localized string similar to "{0}" should have at least one element.. + + + + + Looks up a localized string similar to Value must be null.. + + + + + Looks up a localized string similar to Argument '{0}' must be in the range: [{1},{2}].. + + + + + Looks up a localized string similar to The argument: '{0}' with value '{1}' must be a full path.. + + + + + Looks up a localized string similar to "{0}" should be greater than or equal to "{1}".. + + + + + Looks up a localized string similar to Azure. + + + + + Looks up a localized string similar to Backspace. + + + + + Looks up a localized string similar to Beige. + + + + + Looks up a localized string similar to Bisque. + + + + + Looks up a localized string similar to Black. + + + + + Looks up a localized string similar to Blanched Almond. + + + + + Looks up a localized string similar to Blue. + + + + + Looks up a localized string similar to Blue Violet. + + + + + Looks up a localized string similar to Break _All. + + + + + Looks up a localized string similar to Ctrl+B. + + + + + Looks up a localized string similar to Break. + + + + + Looks up a localized string similar to Brown. + + + + + Looks up a localized string similar to Burly Wood. + + + + + Looks up a localized string similar to Cadet Blue. + + + + + Looks up a localized string similar to _Cancel. + + + + + Looks up a localized string similar to Cancel. + + + + + Looks up a localized string similar to Cannot add more than {0} Add-on tools.. + + + + + Looks up a localized string similar to Cannot add or change items in the collection.. + + + + + Looks up a localized string similar to Cannot add past the maximum number of items.. + + + + + Looks up a localized string similar to Cannot add submenus if the {0} property is not null.. + + + + + Looks up a localized string similar to Cannot close unsaved file: '{0}'.. + + + + + Looks up a localized string similar to Cannot create element because an exception occurred with the message: {0}.. + + + + + Looks up a localized string similar to Windows PowerShell ISE cannot run the script, because a script or command is already running in this tab.. + + + + + Looks up a localized string similar to Cannot run unsaved script.. + + + + + Looks up a localized string similar to Cannot Find "{0}".. + + + + + Looks up a localized string similar to Cannot get help for '{0}' while running a command.. + + + + + Looks up a localized string similar to '{0}' is not available for Add-on tools, it is meant for script use only. You can use '{1}' to get or set the selected file.. + + + + + Looks up a localized string similar to Cannot add this object to the collection. You can call the {0} method with no parameters or the {1} method.. + + + + + Looks up a localized string similar to Cannot start "{0}". Interactive console applications are not supported. + To run the application, use the Start-Process cmdlet or use "Start PowerShell.exe" from the File menu. + To view/modify the list of blocked console applications, use {1}, or consult online help.. + + + + + Looks up a localized string similar to Cannot modify collection. + + + + + Looks up a localized string similar to Cannot open pane that has no visible tools. + + + + + Looks up a localized string similar to Cannot recognize "{0}" as a {1} due to a format error.. + + + + + Looks up a localized string similar to Cannot recognize "{0}" as a {1} due to an overflow error.. + + + + + Looks up a localized string similar to Cannot remove saved file.. + + + + + Looks up a localized string similar to Cannot save the file with the name of an already opened file.. + + + + + Looks up a localized string similar to The file cannot be saved in the current encoding.. + + + + + Looks up a localized string similar to {0} cannot be used for Untitled files, please use {1}.. + + + + + Looks up a localized string similar to Cannot set object in the collection.. + + + + + Looks up a localized string similar to Cannot show command '{0}' while running a command.. + + + + + Looks up a localized string similar to {0} - {1}. + + + + + Looks up a localized string similar to CDATA not closed. + + + + + Looks up a localized string similar to Chartreuse. + + + + + Looks up a localized string similar to Chocolate. + + + + + Looks up a localized string similar to Clear Console Pane. + + + + + Looks up a localized string similar to _Stop. + + + + + Looks up a localized string similar to C_lose PowerShell Tab. + + + + + Looks up a localized string similar to Ctrl+W. + + + + + Looks up a localized string similar to _Close. + + + + + Looks up a localized string similar to Ctrl+F4. + + + + + Looks up a localized string similar to Close Tool. + + + + + Looks up a localized string similar to Col. + + + + + Looks up a localized string similar to Collapse Script Pane. + + + + + Looks up a localized string similar to This collection should contain at least one item.. + + + + + Looks up a localized string similar to Commands. + + + + + Looks up a localized string similar to {0} ({1}). + + + + + Looks up a localized string similar to Completed. + + + + + Looks up a localized string similar to _Computer:. + + + + + Looks up a localized string similar to Co_nnect. + + + + + Looks up a localized string similar to Console. + + + + + Looks up a localized string similar to _Copy. + + + + + Looks up a localized string similar to Ctrl+Ins. + + + + + Looks up a localized string similar to {0} copied selected text. Unselect or use {1} to stop operation.. + + + + + Looks up a localized string similar to Copy. + + + + + Looks up a localized string similar to Coral. + + + + + Looks up a localized string similar to Cornflower Blue. + + + + + Looks up a localized string similar to Cornsilk. + + + + + Looks up a localized string similar to You will be asked for credentials when you connect.. + + + + + Looks up a localized string similar to Windows PowerShell ISE Credential Request. + + + + + Looks up a localized string similar to Crimson. + + + + + Looks up a localized string similar to Ctrl. + + + + + Looks up a localized string similar to Cu_t. + + + + + Looks up a localized string similar to Ctrl+X. + + + + + Looks up a localized string similar to Shift+Del. + + + + + Looks up a localized string similar to Cut. + + + + + Looks up a localized string similar to Cyan. + + + + + Looks up a localized string similar to Dark Blue. + + + + + Looks up a localized string similar to Dark Cyan. + + + + + Looks up a localized string similar to Dark Goldenrod. + + + + + Looks up a localized string similar to Dark Gray. + + + + + Looks up a localized string similar to Dark Green. + + + + + Looks up a localized string similar to Dark Khaki. + + + + + Looks up a localized string similar to Dark Magenta. + + + + + Looks up a localized string similar to Dark Olive Green. + + + + + Looks up a localized string similar to Dark Orange. + + + + + Looks up a localized string similar to Dark Orchid. + + + + + Looks up a localized string similar to Dark Red. + + + + + Looks up a localized string similar to Dark Salmon. + + + + + Looks up a localized string similar to Dark Sea Green. + + + + + Looks up a localized string similar to Dark Slate Blue. + + + + + Looks up a localized string similar to Dark Slate Gray. + + + + + Looks up a localized string similar to Dark Turquoise. + + + + + Looks up a localized string similar to Dark Violet. + + + + + Looks up a localized string similar to DEBUG: {0}. + + + + + Looks up a localized string similar to Stopped at: {0}. + + + + + Looks up a localized string similar to _Debug. + + + + + Looks up a localized string similar to Debug Prompt. + + + + + Looks up a localized string similar to Deep Pink. + + + + + Looks up a localized string similar to Deep Sky Blue. + + + + + Looks up a localized string similar to Lucida Console. + + + + + Looks up a localized string similar to 9. + + + + + Looks up a localized string similar to Default options cannot be set.. + + + + + Looks up a localized string similar to Microsoft Corporation. + + + + + Looks up a localized string similar to {0} (advanced function). + + + + + Looks up a localized string similar to {0} (advanced function) - complete. + + + + + Looks up a localized string similar to Comment block. + + + + + Looks up a localized string similar to Simple class.. + + + + + Looks up a localized string similar to DSC Configuration that uses built-in resource providers: {0} and {1}. + + + + + Looks up a localized string similar to DSC ConfigurationData.. + + + + + Looks up a localized string similar to DSC Configuration that uses built-in resource providers: {0} and {1} using ConfigurationData.. + + + + + Looks up a localized string similar to PowerShell Desired State Configuration simple resource provider with functions for {0}, {1}, and {2}. + + + + + Looks up a localized string similar to A DSC Resource implemented as a PowerShell class.. + + + + + Looks up a localized string similar to {0} loop. + + + + + Looks up a localized string similar to Simple {0} with 2 parameters. + + + + + Looks up a localized string similar to Advanced {0} ({1}) with some {2} and some inline help fields. + + + + + Looks up a localized string similar to Advanced {0} ({1}) with all {2} and all inline help fields. + + + + + Looks up a localized string similar to {0} statement. + + + + + Looks up a localized string similar to {0} exception handling. + + + + + Looks up a localized string similar to Del. + + + + + Looks up a localized string similar to End tag for element '{0}' expected. + + + + + Looks up a localized string similar to Dim Gray. + + + + + Looks up a localized string similar to *. + + + + + Looks up a localized string similar to _Disable All Breakpoints. + + + + + Looks up a localized string similar to _Disable Breakpoint. + + + + + Looks up a localized string similar to Dodger Blue. + + + + + Looks up a localized string similar to Down. + + + + + Looks up a localized string similar to _Edit. + + + + + Looks up a localized string similar to Editor. + + + + + Looks up a localized string similar to Alt+Shift+Down. + + + + + Looks up a localized string similar to Alt+Shift+Up. + + + + + Looks up a localized string similar to Alt+Shift+Right. + + + + + Looks up a localized string similar to Alt+Shift+Left. + + + + + Looks up a localized string similar to Shift+Backspace. + + + + + Looks up a localized string similar to Ctrl+Backspace. + + + + + Looks up a localized string similar to Ctrl+Del. + + + + + Looks up a localized string similar to Shift+Enter. + + + + + Looks up a localized string similar to Ctrl+U. + + + + + Looks up a localized string similar to Ctrl+Shift+U. + + + + + Looks up a localized string similar to Ctrl+Alt+End. + + + + + Looks up a localized string similar to Ctrl+Alt+Home. + + + + + Looks up a localized string similar to Ctrl+End. + + + + + Looks up a localized string similar to Ctrl+Right. + + + + + Looks up a localized string similar to Ctrl+Left. + + + + + Looks up a localized string similar to Ctrl+Home. + + + + + Looks up a localized string similar to Ctrl+Y. + + + + + Looks up a localized string similar to Alt+Shift+Backspace. + + + + + Looks up a localized string similar to Ctrl+Down. + + + + + Looks up a localized string similar to Ctrl+Up. + + + + + Looks up a localized string similar to Ctrl+A. + + + + + Looks up a localized string similar to Alt+Left. + + + + + Looks up a localized string similar to Alt+Right. + + + + + Looks up a localized string similar to Shift+Down. + + + + + Looks up a localized string similar to Shift+Up. + + + + + Looks up a localized string similar to Alt+Down. + + + + + Looks up a localized string similar to Shift+PgDn. + + + + + Looks up a localized string similar to Shift+PgUp. + + + + + Looks up a localized string similar to Alt+Up. + + + + + Looks up a localized string similar to Ctrl+Shift+End. + + + + + Looks up a localized string similar to Shift+End. + + + + + Looks up a localized string similar to Shift+Right. + + + + + Looks up a localized string similar to Ctrl+Shift+Right. + + + + + Looks up a localized string similar to Shift+Left. + + + + + Looks up a localized string similar to Ctrl+Shift+Left. + + + + + Looks up a localized string similar to Ctrl+Shift+Home. + + + + + Looks up a localized string similar to Shift+Home. + + + + + Looks up a localized string similar to Alt+Shift+T. + + + + + Looks up a localized string similar to Ctrl+Z. + + + + + Looks up a localized string similar to Alt+Backspace. + + + + + Looks up a localized string similar to Element name not found. + + + + + Looks up a localized string similar to _Enable All Breakpoints. + + + + + Looks up a localized string similar to _Enable Breakpoint. + + + + + Looks up a localized string similar to End. + + + + + Looks up a localized string similar to End tag not closed. + + + + + Looks up a localized string similar to Enter. + + + + + Looks up a localized string similar to Windows PowerShell ISE - Error. + + + + + Looks up a localized string similar to Application cannot run because of an error in a user settings file. Click OK to restore default settings and continue, or click Cancel to exit.{0}{1}.. + + + + + Looks up a localized string similar to Intellisense.... + + + + + Looks up a localized string similar to Tab Completion.... + + + + + Looks up a localized string similar to An unexpected error has occurred and {0} must close. The problem might have been caused by an Add-on tool. Some Add-on tools can be added by your profile. To run Windows PowerShell ISE without running your profile, run "{1}".. + + + + + Looks up a localized string similar to An unexpected error has occurred, and {0} must close.. + + + + + Looks up a localized string similar to Error running profile: {0}. + + + + + Looks up a localized string similar to E_xit. + + + + + Looks up a localized string similar to Alt+F4. + + + + + Looks up a localized string similar to F10. + + + + + Looks up a localized string similar to F11. + + + + + Looks up a localized string similar to F12. + + + + + Looks up a localized string similar to F1. + + + + + Looks up a localized string similar to F2. + + + + + Looks up a localized string similar to F3. + + + + + Looks up a localized string similar to F4. + + + + + Looks up a localized string similar to F5. + + + + + Looks up a localized string similar to F6. + + + + + Looks up a localized string similar to F7. + + + + + Looks up a localized string similar to F8. + + + + + Looks up a localized string similar to F9. + + + + + Looks up a localized string similar to Failed. + + + + + Looks up a localized string similar to Failed to refresh. Message: '{0}'.. + + + + + Looks up a localized string similar to _File. + + + + + Looks up a localized string similar to A copy of this file is open in another PowerShell Tab. Changes made to this file will affect all open copies.. + + + + + Looks up a localized string similar to {0} {1}{2}{3} {4}. + + + + + Looks up a localized string similar to You cannot edit any script files in Windows PowerShell ISE while the debugger is running. To edit a script, stop the debugger.. + + + + + Looks up a localized string similar to {0}{1}. + + + + + Looks up a localized string similar to The most recent {0} session did not close normally. All files {1} that were open during the previous session will be reopened.. + + + + + Looks up a localized string similar to _Find in Script.... + + + + + Looks up a localized string similar to Find in _selection. + + + + + Looks up a localized string similar to _Find Next. + + + + + Looks up a localized string similar to Find _Next in Script. + + + + + Looks up a localized string similar to F3. + + + + + Looks up a localized string similar to Find Pre_vious in Script. + + + + + Looks up a localized string similar to Shift+F3. + + + + + Looks up a localized string similar to Ctrl+F. + + + + + Looks up a localized string similar to Find. + + + + + Looks up a localized string similar to Fi_nd what:. + + + + + Looks up a localized string similar to Find what text. + + + + + Looks up a localized string similar to Firebrick. + + + + + Looks up a localized string similar to Fixed Width. + + + + + Looks up a localized string similar to Floral White. + + + + + Looks up a localized string similar to Forest Green. + + + + + Looks up a localized string similar to Fuchsia. + + + + + Looks up a localized string similar to Gainsboro. + + + + + Looks up a localized string similar to Display Call Stac_k. + + + + + Looks up a localized string similar to Ctrl+Shift+D. + + + + + Looks up a localized string similar to Ghost White. + + + + + Looks up a localized string similar to Gold. + + + + + Looks up a localized string similar to Goldenrod. + + + + + Looks up a localized string similar to Go To _Console. + + + + + Looks up a localized string similar to Ctrl+D. + + + + + Looks up a localized string similar to Ctrl+I. + + + + + Looks up a localized string similar to Go _to horizontal Add-on Tool. + + + + + Looks up a localized string similar to _Go To Line.... + + + + + Looks up a localized string similar to Go To Line. + + + + + Looks up a localized string similar to Ctrl+G. + + + + + Looks up a localized string similar to Go to _Match. + + + + + Looks up a localized string similar to Ctrl+Oem6. + + + + + Looks up a localized string similar to Go to _Script Pane. + + + + + Looks up a localized string similar to _Go to vertical Add-on Tool. + + + + + Looks up a localized string similar to Windows PowerShell ISE. + + + + + Looks up a localized string similar to Gray. + + + + + Looks up a localized string similar to Green. + + + + + Looks up a localized string similar to Green Yellow. + + + + + Looks up a localized string similar to _Help. + + + + + Looks up a localized string similar to F1. + + + + + Looks up a localized string similar to Hidden. + + + + + Looks up a localized string similar to Hide Add-on Tools Pane. + + + + + Looks up a localized string similar to Ctrl+Shift+H. + + + + + Looks up a localized string similar to Hide Script Pane. + + + + + Looks up a localized string similar to Hi_de Selected Horizontal Add-on Tool. + + + + + Looks up a localized string similar to H_ide Selected Vertical Add-on Tool. + + + + + Looks up a localized string similar to Ctrl+Shift+V. + + + + + Looks up a localized string similar to Hit {0}. + + + + + Looks up a localized string similar to Home. + + + + + Looks up a localized string similar to Honeydew. + + + + + Looks up a localized string similar to Horizontal add-ons. + + + + + Looks up a localized string similar to Horizontal Add-on Tools Splitter. + + + + + Looks up a localized string similar to Hot Pink. + + + + + Looks up a localized string similar to (including recovered files) . + + + + + Looks up a localized string similar to Indian Red. + + + + + Looks up a localized string similar to Indigo. + + + + + Looks up a localized string similar to Windows PowerShell ISE - Input. + + + + + Looks up a localized string similar to input description. + + + + + Looks up a localized string similar to input help message. + + + + + Looks up a localized string similar to Ins. + + + + + Looks up a localized string similar to Number not valid. Value must be an integer in the range [1,{0}].. + + + + + Looks up a localized string similar to Segoe UI. + + + + + Looks up a localized string similar to Ctrl+Space. + + + + + Looks up a localized string similar to Intellisense timed out. + + + + + Looks up a localized string similar to In the future, do not show this message. + + + + + Looks up a localized string similar to The font name: '{0}' is not valid.. + + + + + Looks up a localized string similar to Ivory. + + + + + Looks up a localized string similar to Khaki. + + + + + Looks up a localized string similar to Lavender Blush. + + + + + Looks up a localized string similar to Lavender. + + + + + Looks up a localized string similar to Lawn Green. + + + + + Looks up a localized string similar to Left. + + + + + Looks up a localized string similar to Lemon Chiffon. + + + + + Looks up a localized string similar to Light Blue. + + + + + Looks up a localized string similar to Light Coral. + + + + + Looks up a localized string similar to Light Cyan. + + + + + Looks up a localized string similar to Light Goldenrod Yellow. + + + + + Looks up a localized string similar to Light Gray. + + + + + Looks up a localized string similar to Light Green. + + + + + Looks up a localized string similar to Light Pink. + + + + + Looks up a localized string similar to Light Salmon. + + + + + Looks up a localized string similar to Light Sea Green. + + + + + Looks up a localized string similar to Light Sky Blue. + + + + + Looks up a localized string similar to Light Slate Gray. + + + + + Looks up a localized string similar to Light Steel Blue. + + + + + Looks up a localized string similar to Light Yellow. + + + + + Looks up a localized string similar to Lime. + + + + + Looks up a localized string similar to Lime Green. + + + + + Looks up a localized string similar to Linen. + + + + + Looks up a localized string similar to Line Number:. + + + + + Looks up a localized string similar to _List Breakpoints. + + + + + Looks up a localized string similar to Ctrl+Shift+L. + + + + + Looks up a localized string similar to Ln. + + + + + Looks up a localized string similar to The application cannot start because it could not access the user settings file: '{0}'.. + + + + + Looks up a localized string similar to Error loading source file '{0}' ({1}). + + + + + Looks up a localized string similar to Magenta. + + + + + Looks up a localized string similar to Main Menu. + + + + + Looks up a localized string similar to Windows PowerShell ISE Main Window. + + + + + Looks up a localized string similar to Manage Themes Button. + + + + + Looks up a localized string similar to Maroon. + + + + + Looks up a localized string similar to Match _case. + + + + + Looks up a localized string similar to Medium Aquamarine. + + + + + Looks up a localized string similar to Medium Blue. + + + + + Looks up a localized string similar to Medium Orchid. + + + + + Looks up a localized string similar to Medium Purple. + + + + + Looks up a localized string similar to Medium Sea Green. + + + + + Looks up a localized string similar to Medium Slate Blue. + + + + + Looks up a localized string similar to Medium Spring Green. + + + + + Looks up a localized string similar to Medium Turquoise. + + + + + Looks up a localized string similar to Medium Violet Red. + + + + + Looks up a localized string similar to The menu '{0}' has already been added to a parent menu.. + + + + + Looks up a localized string similar to Midnight Blue. + + + + + Looks up a localized string similar to Mint Cream. + + + + + Looks up a localized string similar to Minus. + + + + + Looks up a localized string similar to Misty Rose. + + + + + Looks up a localized string similar to Moccasin. + + + + + Looks up a localized string similar to Get Module Browser Add-on Tool. + + + + + Looks up a localized string similar to Mov_e Selected Horizontal Add-on Tool to Vertical. + + + + + Looks up a localized string similar to Move Script Pane Right.. + + + + + Looks up a localized string similar to Move Script Pane Up.. + + + + + Looks up a localized string similar to _Move Selected Vertical Add-on Tool to Horizontal. + + + + + Looks up a localized string similar to This name is already in use.. + + + + + Looks up a localized string similar to Navajo White. + + + + + Looks up a localized string similar to Navy. + + + + + Looks up a localized string similar to Nested Prompt. + + + + + Looks up a localized string similar to New Remote _PowerShell Tab.... + + + + + Looks up a localized string similar to New Remote PowerShell Tab. + + + + + Looks up a localized string similar to Ctrl+Shift+R. + + + + + Looks up a localized string similar to N_ew PowerShell Tab. + + + + + Looks up a localized string similar to Ctrl+T. + + + + + Looks up a localized string similar to _New. + + + + + Looks up a localized string similar to Ctrl+N. + + + + + Looks up a localized string similar to New Script. + + + + + Looks up a localized string similar to No corresponding start element. + + + + + Looks up a localized string similar to End tag not found. + + + + + Looks up a localized string similar to No help is available for {0}.. + + + + + Looks up a localized string similar to Not started. + + + + + Looks up a localized string similar to ]. + + + + + Looks up a localized string similar to _OK. + + + + + Looks up a localized string similar to OK. + + + + + Looks up a localized string similar to Old Lace. + + + + + Looks up a localized string similar to Olive. + + + + + Looks up a localized string similar to Olive Drab. + + + + + Looks up a localized string similar to _Options.... + + + + + Looks up a localized string similar to _Open.... + + + + + Looks up a localized string similar to Ctrl+O. + + + + + Looks up a localized string similar to Open Script. + + + + + Looks up a localized string similar to Blue. + + + + + Looks up a localized string similar to Green. + + + + + Looks up a localized string similar to Hexadecimal. + + + + + Looks up a localized string similar to Red. + + + + + Looks up a localized string similar to (Custom Color). + + + + + Looks up a localized string similar to (Customized Theme). + + + + + Looks up a localized string similar to Are you sure you want to permanently delete '{0}'?. + + + + + Looks up a localized string similar to The following errors occurred while validating the settings. Please correct them and try again: + + {0}. + + + + + Looks up a localized string similar to The following errors occurred while importing the theme: + + {0}. + + + + + Looks up a localized string similar to Export Theme. + + + + + Looks up a localized string similar to The file you specified does not exist.. + + + + + Looks up a localized string similar to Import Theme. + + + + + Looks up a localized string similar to The font "{0}" specified in the theme file is not installed on your computer. The current font will be preserved.. + + + + + Looks up a localized string similar to The font size "{0}" specified in the theme file is not in the valid range of {1} to {2}. The current font size will be preserved.. + + + + + Looks up a localized string similar to ISE Color Themes ({0}). + + + + + Looks up a localized string similar to The theme file exists but could not be imported. + + {0}. + + + + + Looks up a localized string similar to Cancel. + + + + + Looks up a localized string similar to Delete.... + + + + + Looks up a localized string similar to Export.... + + + + + Looks up a localized string similar to Import.... + + + + + Looks up a localized string similar to Rename.... + + + + + Looks up a localized string similar to The theme name cannot be empty or consist only of white space characters.. + + + + + Looks up a localized string similar to Manage Themes. + + + + + Looks up a localized string similar to "Number of recent files to show" must be between {0} and {1}.. + + + + + Looks up a localized string similar to {0} (1). + + + + + Looks up a localized string similar to Reset all settings to their default values?. + + + + + Looks up a localized string similar to Restore Defaults Confirmation. + + + + + Looks up a localized string similar to The theme cannot be renamed because another theme already exists with that name.. + + + + + Looks up a localized string similar to Enter the new name for the theme:. + + + + + Looks up a localized string similar to Rename Theme. + + + + + Looks up a localized string similar to This is Character Data.. + + + + + Looks up a localized string similar to 'Length:'. + + + + + Looks up a localized string similar to This is some normal output text.. + + + + + Looks up a localized string similar to This is a PowerShell comment.. + + + + + Looks up a localized string similar to This is a quoted string, surrounded by quotation marks.. + + + + + Looks up a localized string similar to Write-Error "This is an Error." : This is an Error.. + + + + + Looks up a localized string similar to WARNING: This is a Warning.. + + + + + Looks up a localized string similar to DEBUG: This is Debug output.. + + + + + Looks up a localized string similar to VERBOSE: This is Verbose output.. + + + + + Looks up a localized string similar to This is a Comment, surrounded by Comment Delimiters.. + + + + + Looks up a localized string similar to This is Text.. + + + + + Looks up a localized string similar to The theme file couldn't be saved.\r\n{0}. + + + + + Looks up a localized string similar to This is an example of a text file in the script pane.. + + + + + Looks up a localized string similar to The numbers of keys and specified values in the theme file do not match.. + + + + + Looks up a localized string similar to Dark Console, Dark Editor. + + + + + Looks up a localized string similar to Dark Console, Light Editor (default). + + + + + Looks up a localized string similar to Light Console, Dark Editor. + + + + + Looks up a localized string similar to Light Console, Light Editor. + + + + + Looks up a localized string similar to Monochrome Green. + + + + + Looks up a localized string similar to Presentation. + + + + + Looks up a localized string similar to Apply. + + + + + Looks up a localized string similar to _Apply. + + + + + Looks up a localized string similar to Attribute. + + + + + Looks up a localized string similar to Attribute. + + + + + Looks up a localized string similar to AutoSave inter_val for scripts in minutes:. + + + + + Looks up a localized string similar to AutoSave. + + + + + Looks up a localized string similar to Background. + + + + + Looks up a localized string similar to Background. + + + + + Looks up a localized string similar to Error Background. + + + + + Looks up a localized string similar to Warning Background. + + + + + Looks up a localized string similar to Verbose Background. + + + + + Looks up a localized string similar to Debug Background. + + + + + Looks up a localized string similar to Cancel. + + + + + Looks up a localized string similar to _Cancel. + + + + + Looks up a localized string similar to CharacterData. + + + + + Looks up a localized string similar to Colors and Fonts. + + + + + Looks up a localized string similar to Command Argument. + + + + + Looks up a localized string similar to Command Parameter. + + + + + Looks up a localized string similar to Command. + + + + + Looks up a localized string similar to Comment Delimiter. + + + + + Looks up a localized string similar to Comment. + + + + + Looks up a localized string similar to Comment. + + + + + Looks up a localized string similar to Console Pane. + + + + + Looks up a localized string similar to Console Tokens. + + + + + Looks up a localized string similar to Current Theme:. + + + + + Looks up a localized string similar to Element Name. + + + + + Looks up a localized string similar to Enter Selects Intellisense. + + + + + Looks up a localized string similar to Enter Selects Intellisense. + + + + + Looks up a localized string similar to _Enter selects Intellisense items in the Console Pane. + + + + + Looks up a localized string similar to Enter selects Intellisense ite_ms in the Script Pane. + + + + + Looks up a localized string similar to Fixed-_width fonts only. + + + + + Looks up a localized string similar to Font Family. + + + + + Looks up a localized string similar to _Font Family:. + + + + + Looks up a localized string similar to Font Size. + + + + + Looks up a localized string similar to Font _Size:. + + + + + Looks up a localized string similar to Foreground. + + + + + Looks up a localized string similar to Error Foreground. + + + + + Looks up a localized string similar to Warning Foreground. + + + + + Looks up a localized string similar to Verbose Foreground. + + + + + Looks up a localized string similar to Debug Foreground. + + + + + Looks up a localized string similar to General Settings. + + + + + Looks up a localized string similar to Group End. + + + + + Looks up a localized string similar to Group Start. + + + + + Looks up a localized string similar to Options. + + + + + Looks up a localized string similar to Intellisense. + + + + + Looks up a localized string similar to Keyword. + + + + + Looks up a localized string similar to Line Continuation (Back-tick). + + + + + Looks up a localized string similar to Loop Label. + + + + + Looks up a localized string similar to _Manage Themes.... + + + + + Looks up a localized string similar to Markup Extension. + + + + + Looks up a localized string similar to Maximized. + + + + + Looks up a localized string similar to Member. + + + + + Looks up a localized string similar to Number. + + + + + Looks up a localized string similar to OK. + + + + + Looks up a localized string similar to _OK. + + + + + Looks up a localized string similar to Operator. + + + + + Looks up a localized string similar to Other Settings. + + + + + Looks up a localized string similar to Output Streams. + + + + + Looks up a localized string similar to Position. + + + + + Looks up a localized string similar to Script Pane posi_tion:. + + + + + Looks up a localized string similar to Prompt to Save Before Run. + + + + + Looks up a localized string similar to _Prompt to save scripts before running them. + + + + + Looks up a localized string similar to Quoted String. + + + + + Looks up a localized string similar to Quote. + + + + + Looks up a localized string similar to Recent Files. + + + + + Looks up a localized string similar to Number of recent _files to show:. + + + + + Looks up a localized string similar to Restore. + + + + + Looks up a localized string similar to _Restore Defaults. + + + + + Looks up a localized string similar to Right. + + + + + Looks up a localized string similar to Sample:. + + + + + Looks up a localized string similar to Sample. + + + + + Looks up a localized string similar to Script Pane Behavior. + + + + + Looks up a localized string similar to Script Pane Tokens. + + + + + Looks up a localized string similar to Script Pane. + + + + + Looks up a localized string similar to Show in the Console Pane. + + + + + Looks up a localized string similar to Show _Intellisense in the Console Pane. + + + + + Looks up a localized string similar to Show in the script pane. + + + + + Looks up a localized string similar to Show Intellisense i_n the Script Pane. + + + + + Looks up a localized string similar to Show Line Numbers. + + + + + Looks up a localized string similar to S_how line numbers in the Script Pane. + + + + + Looks up a localized string similar to Show Outlining. + + + + + Looks up a localized string similar to _Show outlining in the Script Pane. + + + + + Looks up a localized string similar to Show ToolBar. + + + + + Looks up a localized string similar to Show the Tool_Bar. + + + + + Looks up a localized string similar to Statement Separator (Semicolon). + + + + + Looks up a localized string similar to String. + + + + + Looks up a localized string similar to Tag. + + + + + Looks up a localized string similar to Text Background. + + + + + Looks up a localized string similar to Text. + + + + + Looks up a localized string similar to Time-out Period In Seconds. + + + + + Looks up a localized string similar to Intellisense timeout in secon_ds:. + + + + + Looks up a localized string similar to Top. + + + + + Looks up a localized string similar to Type. + + + + + Looks up a localized string similar to Use Default Snippets. + + + + + Looks up a localized string similar to _Use default snippets. + + + + + Looks up a localized string similar to Use Local Help. + + + + + Looks up a localized string similar to Use _local help content instead of online content. + + + + + Looks up a localized string similar to Variable. + + + + + Looks up a localized string similar to Warn About Duplicate Files. + + + + + Looks up a localized string similar to _Warn me when I edit duplicate files. + + + + + Looks up a localized string similar to XML Tokens. + + + + + Looks up a localized string similar to Orange. + + + + + Looks up a localized string similar to Orange Red. + + + + + Looks up a localized string similar to Orchid. + + + + + Looks up a localized string similar to Pale Goldenrod. + + + + + Looks up a localized string similar to Pale Green. + + + + + Looks up a localized string similar to Pale Turquoise. + + + + + Looks up a localized string similar to Pale Violet Red. + + + + + Looks up a localized string similar to Papaya Whip. + + + + + Looks up a localized string similar to {0}: . + + + + + Looks up a localized string similar to Parse errors detected. + + + + + Looks up a localized string similar to password input. + + + + + Looks up a localized string similar to _Paste. + + + + + Looks up a localized string similar to Ctrl+V. + + + + + Looks up a localized string similar to Shift+Ins. + + + + + Looks up a localized string similar to Paste. + + + + + Looks up a localized string similar to Peach Puff. + + + + + Looks up a localized string similar to Peru. + + + + + Looks up a localized string similar to PgDn. + + + + + Looks up a localized string similar to PgUp. + + + + + Looks up a localized string similar to Pink. + + + + + Looks up a localized string similar to Plum. + + + + + Looks up a localized string similar to Plus. + + + + + Looks up a localized string similar to Powder Blue. + + + + + Looks up a localized string similar to PowerShell Data Files. + + + + + Looks up a localized string similar to PowerShell Files. + + + + + Looks up a localized string similar to PowerShell Script Modules. + + + + + Looks up a localized string similar to PowerShell Role Capability Files. + + + + + Looks up a localized string similar to PowerShell Scripts. + + + + + Looks up a localized string similar to PowerShell Session Configuration Files. + + + + + Looks up a localized string similar to PowerShell XML files. + + + + + Looks up a localized string similar to Press {0} to leave the editable area.. + + + + + Looks up a localized string similar to Progress Indicator. + + + + + Looks up a localized string similar to {0}. + {1}, {2} remaining, {3}.. + + + + + Looks up a localized string similar to {0}. + {1}, {2} remaining.. + + + + + Looks up a localized string similar to {0}. + {1}, {2}.. + + + + + Looks up a localized string similar to {0}. + {1}.. + + + + + Looks up a localized string similar to Prompt. + + + + + Looks up a localized string similar to (Type {0} for Help.). + + + + + Looks up a localized string similar to Prompt. + + + + + Looks up a localized string similar to You can choose an empty string with {0}, {1} with {2} and exclamation point with {3}.. + + + + + Looks up a localized string similar to Cannot display the prompt for "{0}" because type "{1}" cannot be loaded.. + + + + + Looks up a localized string similar to Provide Text. + + + + + Looks up a localized string similar to Purple. + + + + + Looks up a localized string similar to [Read Only]. + + + + + Looks up a localized string similar to (Recovered). + + + + + Looks up a localized string similar to Red. + + + + + Looks up a localized string similar to _Redo. + + + + + Looks up a localized string similar to Redo. + + + + + Looks up a localized string similar to Regular e_xpressions. + + + + + Looks up a localized string similar to [Remote File]. + + + + + Looks up a localized string similar to Enter nested prompt is not supported for remote sessions.. + + + + + Looks up a localized string similar to Saving file: {0} in the remote session has failed with error: {1}.. + + + + + Looks up a localized string similar to _Remove All Breakpoints. + + + + + Looks up a localized string similar to Ctrl+Shift+F9. + + + + + Looks up a localized string similar to R_eplace in Script.... + + + + + Looks up a localized string similar to Replace _All. + + + + + Looks up a localized string similar to Replace All. + + + + + Looks up a localized string similar to _Replace. + + + + + Looks up a localized string similar to Replace. + + + + + Looks up a localized string similar to Ctrl+H. + + + + + Looks up a localized string similar to Re_place with:. + + + + + Looks up a localized string similar to Replace with text. + + + + + Looks up a localized string similar to Run/_Continue. + + + + + Looks up a localized string similar to Right. + + + + + Looks up a localized string similar to Rosy Brown. + + + + + Looks up a localized string similar to Royal Blue. + + + + + Looks up a localized string similar to Run Command. + + + + + Looks up a localized string similar to Running script / selection. Press {0} to stop. Press {1} to break into debugger.. + + + + + Looks up a localized string similar to _Run. + + + + + Looks up a localized string similar to F5. + + + + + Looks up a localized string similar to Run Script ({0}). + + + + + Looks up a localized string similar to R_un Selection. + + + + + Looks up a localized string similar to F8. + + + + + Looks up a localized string similar to Run Selection ({0}). + + + + + Looks up a localized string similar to PowerShell Tab. + + + + + Looks up a localized string similar to PowerShell {0}. + + + + + Looks up a localized string similar to PowerShell Tabs. + + + + + Looks up a localized string similar to Saddle Brown. + + + + + Looks up a localized string similar to Salmon. + + + + + Looks up a localized string similar to Sandy Brown. + + + + + Looks up a localized string similar to The script you are about to run will be saved.. + + + + + Looks up a localized string similar to _Save. + + + + + Looks up a localized string similar to Save _As.... + + + + + Looks up a localized string similar to Save {0}?. + + + + + Looks up a localized string similar to Ctrl+S. + + + + + Looks up a localized string similar to Save Script. + + + + + Looks up a localized string similar to The application cannot save the user settings file: '{0}'.. + + + + + Looks up a localized string similar to Script. + + + + + Looks up a localized string similar to Get Script Analyzer Add-on Tool. + + + + + Looks up a localized string similar to Get Script Browser Add-on Tool. + + + + + Looks up a localized string similar to Script expander. + + + + + Looks up a localized string similar to {0}. + + + + + Looks up a localized string similar to Script pane. + + + + + Looks up a localized string similar to Script Splitter. + + + + + Looks up a localized string similar to Script Tools. + + + + + Looks up a localized string similar to Sea Green. + + + + + Looks up a localized string similar to Search _up. + + + + + Looks up a localized string similar to Sea Shell. + + + + + Looks up a localized string similar to Select _All. + + + + + Looks up a localized string similar to Selection can only be set to a member of the collection.. + + + + + Looks up a localized string similar to Shift. + + + + + Looks up a localized string similar to The menu '{0}' uses shortcut '{1}', which is already in use by the menu or editor functionality.. + + + + + Looks up a localized string similar to The shortcut '{0}' does not have the required keyboard modifier for non function keys.. + + + + + Looks up a localized string similar to Show _Command Window. + + + + + Looks up a localized string similar to Copy. + + + + + Looks up a localized string similar to Insert. + + + + + Looks up a localized string similar to Run. + + + + + Looks up a localized string similar to Show Command A_dd-on. + + + + + Looks up a localized string similar to Ctrl+F1. + + + + + Looks up a localized string similar to Show on Startup. + + + + + Looks up a localized string similar to Show _Horizontal Add-on Tools Pane. + + + + + Looks up a localized string similar to Show _Line Numbers. + + + + + Looks up a localized string similar to Show Outli_ning (Regions). + + + + + Looks up a localized string similar to Show PowerShell Tab. + + + + + Looks up a localized string similar to Show Script. + + + + + Looks up a localized string similar to Show Script Pane _Maximized. + + + + + Looks up a localized string similar to Ctrl+3. + + + + + Looks up a localized string similar to Show Script Pane _Right. + + + + + Looks up a localized string similar to Ctrl+2. + + + + + Looks up a localized string similar to Show Script Pane _Top. + + + + + Looks up a localized string similar to Ctrl+1. + + + + + Looks up a localized string similar to Ctrl+J. + + + + + Looks up a localized string similar to Show _Vertical Add-on Tools Pane. + + + + + Looks up a localized string similar to Sienna. + + + + + Looks up a localized string similar to Silver. + + + + + Looks up a localized string similar to {0} expected. + + + + + Looks up a localized string similar to Sky Blue. + + + + + Looks up a localized string similar to Slate Blue. + + + + + Looks up a localized string similar to Slate Gray. + + + + + Looks up a localized string similar to Preference variables that control runtime behavior. + + + + + Looks up a localized string similar to Another example of how to use this cmdlet. + + + + + Looks up a localized string similar to Another example of how to use this workflow. + + + + + Looks up a localized string similar to Snippet file "{0}" XML is not valid. + + + + + Looks up a localized string similar to Saves (persists) the current workflow state and output. + + + + + Looks up a localized string similar to cleaning up .... + + + + + Looks up a localized string similar to The component this cmdlet belongs to. + + + + + Looks up a localized string similar to Constructor. + + + + + Looks up a localized string similar to Define a class. + + + + + Looks up a localized string similar to Divide by zero exception. + + + + + Looks up a localized string similar to One can evaluate expressions to get the node list. + + + + + Looks up a localized string similar to E.g: $AllNodes.Where("Role -eq Web").NodeName. + + + + + Looks up a localized string similar to Call Resource Provider. + + + + + Looks up a localized string similar to E.g: WindowsFeature, File. + + + + + Looks up a localized string similar to ConfigurationName -configurationData <path to ConfigurationData (.psd1) file>. + + + + + Looks up a localized string similar to Save ConfigurationData in a file with .psd1 file extension. + + + + + Looks up a localized string similar to TODO: Add parameters here. + + + + + Looks up a localized string similar to Make sure to use the same parameters for. + + + + + Looks up a localized string similar to Get-TargetResource, Set-TargetResource, and Test-TargetResource. + + + + + Looks up a localized string similar to The resource must be absent.. + + + + + Looks up a localized string similar to [DscResource()] indicates the class is a DSC resource.. + + + + + Looks up a localized string similar to Return this instance or construct a new instance.. + + + + + Looks up a localized string similar to Defines the values for the resource's Ensure property.. + + + + + Looks up a localized string similar to Gets the resource's current state.. + + + + + Looks up a localized string similar to A DSC resource must define at least one key property.. + + + + + Looks up a localized string similar to Mandatory indicates the property is required and DSC will guarantee it is set.. + + + + + Looks up a localized string similar to NotConfigurable properties return additional information about the state of the resource.. + + + + + Looks up a localized string similar to For example, a Get() method might return the date a resource was last modified.. + + + + + Looks up a localized string similar to NOTE: These properties are only used by the Get() method and cannot be set in configuration.. + + + + + Looks up a localized string similar to The resource must be present.. + + + + + Looks up a localized string similar to Sets the desired state of the resource.. + + + + + Looks up a localized string similar to NotConfigurable properties are set in the Get method.. + + + + + Looks up a localized string similar to Tests if the resource is in the desired state.. + + + + + Looks up a localized string similar to Example of how to use this cmdlet. + + + + + Looks up a localized string similar to Example of how to use this workflow. + + + + + Looks up a localized string similar to The functionality that best describes this cmdlet. + + + + + Looks up a localized string similar to Hidden property does not show as result of Get-Member. + + + + + Looks up a localized string similar to Inputs to this cmdlet (if any). + + + + + Looks up a localized string similar to Inputs to this workflow (if any). + + + + + Looks up a localized string similar to Instance method. + + + + + Looks up a localized string similar to Unable to find or access the file {0}. + + + + + Looks up a localized string similar to Unable to find or access the folder {0}. + + + + + Looks up a localized string similar to Long description. + + + + + Looks up a localized string similar to General notes. + + + + + Looks up a localized string similar to Optional workflow common parameters such as -PSComputerName and -PSCredential. + + + + + Looks up a localized string similar to Other exception. + + + + + Looks up a localized string similar to Output from this cmdlet (if any). + + + + + Looks up a localized string similar to Output from this workflow (if any). + + + + + Looks up a localized string similar to Param1 help description. + + + + + Looks up a localized string similar to Param2 help description. + + + + + Looks up a localized string similar to Param3 help description. + + + + + Looks up a localized string similar to Property with validate set. + + + + + Looks up a localized string similar to The role this cmdlet belongs to. + + + + + Looks up a localized string similar to Workflow common parameters are available as variables such as:. + + + + + Looks up a localized string similar to The functionality that best describes this workflow. + + + + + Looks up a localized string similar to Short description. + + + + + Looks up a localized string similar to Missing {0} under {1}. + + + + + Looks up a localized string similar to {0} under {1} is missing or not valid. + + + + + Looks up a localized string similar to Module not found.. + + + + + Looks up a localized string similar to {0} cannot contain the following sequence of characters: "{1}".. + + + + + Looks up a localized string similar to Module {0} doesn't contain a {1} folder. + + + + + Looks up a localized string similar to Set the progress message ParentActivityId. + + + + + Looks up a localized string similar to Workflow runtime information can be accessed by using the following variables:. + + + + + Looks up a localized string similar to Static method. + + + + + Looks up a localized string similar to Static property. + + + + + Looks up a localized string similar to Suspends the workflow. + + + + + Looks up a localized string similar to Built-in. + + + + + Looks up a localized string similar to Description: {0}. + + + + + Looks up a localized string similar to Path: {0}. + + + + + Looks up a localized string similar to Snippets must have the {0} extension. + + + + + Looks up a localized string similar to Snow. + + + + + Looks up a localized string similar to Space. + + + + + Looks up a localized string similar to Spring Green. + + + + + Looks up a localized string similar to Start _Intellisense. + + + + + Looks up a localized string similar to Start PowerS_hell.exe. + + + + + Looks up a localized string similar to Start PowerShell.exe in a separate window.. + + + + + Looks up a localized string similar to Ctrl+Shift+P. + + + + + Looks up a localized string similar to Start _Snippets. + + + + + Looks up a localized string similar to Start tag not closed. + + + + + Looks up a localized string similar to Steel Blue. + + + + + Looks up a localized string similar to _Step Into. + + + + + Looks up a localized string similar to F11. + + + + + Looks up a localized string similar to Step O_ut. + + + + + Looks up a localized string similar to Shift+F11. + + + + + Looks up a localized string similar to Step O_ver. + + + + + Looks up a localized string similar to F10. + + + + + Looks up a localized string similar to S_top Operation. + + + + + Looks up a localized string similar to Ctrl+C. + + + + + Looks up a localized string similar to S_top Debugger. + + + + + Looks up a localized string similar to Shift+F5. + + + + + Looks up a localized string similar to Ctrl+Break. + + + + + Looks up a localized string similar to Stop Operation ({0}). + + + + + Looks up a localized string similar to Stopped. + + + + + Looks up a localized string similar to Stopping. + + + + + Looks up a localized string similar to Stopping Intellisense. + + + + + Looks up a localized string similar to {0}.... + + + + + Looks up a localized string similar to The menu '{0}' is a parent menu of '{1}'.. + + + + + Looks up a localized string similar to Subtract. + + + + + Looks up a localized string similar to Tab. + + + + + Looks up a localized string similar to Tan. + + + + + Looks up a localized string similar to Teal. + + + + + Looks up a localized string similar to Text Files. + + + + + Looks up a localized string similar to text input. + + + + + Looks up a localized string similar to Thistle. + + + + + Looks up a localized string similar to The operation has timed out.. + + + + + Looks up a localized string similar to To_ggle Breakpoint. + + + + + Looks up a localized string similar to F9. + + + + + Looks up a localized string similar to Alt+Shift+H. + + + + + Looks up a localized string similar to Toggle _Outlining (Regions) Expansion. + + + + + Looks up a localized string similar to Ctrl+M. + + + + + Looks up a localized string similar to Show Scr_ipt Pane. + + + + + Looks up a localized string similar to Ctrl+R. + + + + + Looks up a localized string similar to Show Tool_Bar. + + + + + Looks up a localized string similar to Alt+Shift+V. + + + + + Looks up a localized string similar to Tomato. + + + + + Looks up a localized string similar to ToolBar. + + + + + Looks up a localized string similar to _Tools. + + + + + Looks up a localized string similar to Cannot enter nested prompt because too many nested prompts are already running.. + + + + + Looks up a localized string similar to Transparent. + + + + + Looks up a localized string similar to Turquoise. + + + + + Looks up a localized string similar to The type should be a Control. + + + + + Looks up a localized string similar to The type '{0}' should have a default constructor.. + + + + + Looks up a localized string similar to The control type should implement IAddOnToolHostObject. + + + + + Looks up a localized string similar to Unable to load {0}: {1}. + + + + + Looks up a localized string similar to Unable to perform host dependent operation.. + + + + + Looks up a localized string similar to Unable to save {0}: {1}. + + + + + Looks up a localized string similar to Unable to start {0}.. + + + + + Looks up a localized string similar to _Undo. + + + + + Looks up a localized string similar to Undo. + + + + + Looks up a localized string similar to Save changes to the following files? + {0}. + + + + + Looks up a localized string similar to Untitled. + + + + + Looks up a localized string similar to _Update Windows PowerShell Help. + + + + + Looks up a localized string similar to {0} + You have added Unicode characters that are not supported by the original file encoding. To preserve the new characters, the application will save the file in the Unicode format. + ? Click OK to save the file as Unicode and preserve all the new characters + ? Click Cancel to cancel the operation. + . + + + + + Looks up a localized string similar to Up. + + + + + Looks up a localized string similar to _User name:. + + + + + Looks up a localized string similar to {0} = {1}. + + + + + Looks up a localized string similar to VERBOSE: {0}. + + + + + Looks up a localized string similar to Vertical Add-ons. + + + + + Looks up a localized string similar to Vertical Add-on Tools splitter. + + + + + Looks up a localized string similar to _View. + + + + + Looks up a localized string similar to Violet. + + + + + Looks up a localized string similar to Windows PowerShell ISE - Warning. + + + + + Looks up a localized string similar to WARNING: {0}. + + + + + Looks up a localized string similar to Wheat. + + + + + Looks up a localized string similar to White. + + + + + Looks up a localized string similar to White Smoke. + + + + + Looks up a localized string similar to _Whole word. + + + + + Looks up a localized string similar to _Windows PowerShell ISE Help. + + + + + Looks up a localized string similar to Administrator: . + + + + + Looks up a localized string similar to {0}{1}{2}. + + + + + Looks up a localized string similar to Advanced workflow that accesses common workflow parameters and other pre-defined variables.. + + + + + Looks up a localized string similar to Runs isolated blocks of PowerShell script. Place optional workflow common parameters at the end of the script block.. + + + + + Looks up a localized string similar to Run commands in parallel. Operation order is not determined.. + + + + + Looks up a localized string similar to Runs the contents of the {0} block in parallel. Run order is not determined.. + + + + + Looks up a localized string similar to Runs command in sequential order.. + + + + + Looks up a localized string similar to Basic workflow.. + + + + + Looks up a localized string similar to (x86). + + + + + Looks up a localized string similar to XML Files. + + + + + Looks up a localized string similar to Yellow. + + + + + Looks up a localized string similar to Yellow Green. + + + + + Looks up a localized string similar to Zoom. + + + + + Looks up a localized string similar to _Zoom In. + + + + + Looks up a localized string similar to Ctrl+Add. + + + + + Looks up a localized string similar to Ctrl+Shift+Add. + + + + + Looks up a localized string similar to Ctrl+Plus. + + + + + Looks up a localized string similar to Ctrl+Shift+Plus. + + + + + Looks up a localized string similar to {0}%. + + + + + Looks up a localized string similar to Zoom O_ut. + + + + + Looks up a localized string similar to Ctrl+Subtract. + + + + + Looks up a localized string similar to Ctrl+Shift+Subtract. + + + + + Looks up a localized string similar to Ctrl+Minus. + + + + + Looks up a localized string similar to Ctrl+Shift+Minus. + + + + + Looks up a localized string similar to Zoom Selection. + + + + + Application class + + + App + + + + + value indicating whether we should prompt for exceptions. + This is set to true from tests and after prompting to prevent multiple prompts + + + + + Initializes a new instance of the App class. + + + + + Gets or sets a value indicating whether we should prompt for exceptions. + This is set to true from tests and after prompting to prevent multiple prompts + + + + + Auto saves files in the case of an unexpected shut down + + event sender + event arguments + + + + InitializeComponent + + + + + Provides an "accessible" menu item which enables a screen reader + to read any global hotkey that is defined for the command that + this menu item invokes. + + + + + Initializes a new instance of the AccessibleMenuItem class. + + + + + Returns the AutomationPeer for this menu item. + + An AutomationPeer instance. + + + + Provides a custom MenuItemAutomationPeer which can report accelerator + keys for the command it targets. + + + + + Returns the accelerator key for this menu item. + + The accelerator key in string form. + + + + Tab control for horizontal and vertical tools + + + AddOnToolTabControl + + + + + The current ItemsSource used to disconnect from listenning to changest in the SelectedFile. + + + + + Initializes a new instance of the AddOnToolTabControl class. + + + + + Called when the Items property has changed to: + 1) Set the SelectedItem to the Selected AddOn tool + 2) Start tracking changes to the SelectedAddOnTool in order to change the selecting when it changes + 3) Select a recently added tab + + event arguments + + + + - Sets the Close AddOn Pane automation id to this automation id plus the automation if of the close button + so they have distinct automation ids + - Sets the Command property for the close pane button + + event sender + event arguments + + + + - Sets the Command property for the close tool button + + event sender + event arguments + + + + Called when the ReadOnlyISEAddOnCollection in the ItemsSouce changes in order to set the SelectedItem in the control. + + event sender + event arguments + + + + InitializeComponent + + + + + Interaction logic for FindAndReplaceDialog.xaml + + + FindAndReplaceDialog + + + + + gui find text + + + + + gui replace text current state + + + + + gui match case current state + + + + + gui whole word current state + + + + + gui search reverse current state + + + + + gui regular expressions current state + + + + + The data used for find operations + + + + + True when we are changing the selection in the editor as the result of a match + + + + + Current Regex in use, if FindAndReplaceDialog.findData.FindOptions has UseRegularExpression. + + + + + When we are searching within the selection this member indicates the range for the search, otherwise it is null. + + + + + The string to search typed by the user in the dialog. This string might be replaced by a pattern in findData + if it ends with $, so we preserve it here if we have to show it to the user when there are no more matches. + + + + + Initializes a new instance of the FindAndReplaceDialog class. + + + + + Gets the find data currently in use. + + + + + Gets the file currently selected. + + + + + Sets up the dialog for finding + + true for find, false for replace + + + + Searches the next or previous match in the editor + + true to search up + parent window in case we should show there are no matches + editor to search in + + + + Called after the findData has been set to perform the search and select the match. + + true for the first find in selection + true to search up + parent window + editor to search in + selection span being searched, null when not searching in selection + true when calling this from test code. + + + + sets the findData fileds for a new search + + editor to search + text to search + true to match case + true to search up + true to search with regular expressions + true to search whole word + true if successfully set findData + + + + Expands all regions containing the span, selects the given span in the editor and scrolls the pan into view + + the editor we are searching + span to select and view + + + + Shows the no matches dialog + + Parent window. + + + + Gets the position we should start our search on + + the editor we are searching + true if this is the first call during "Find In Selection" + true to search up + the position we should start our search on + + + + Copies the selection text to the find what text box + + + + + Sets the state of IsChecked and IsEnabled for the FindInSelection checkbox depending on the current selection. + + + + + Resets height properties to their initial state and starts listening + to LayoutUpdated to prevent vericat resizing + + + + + Called to prevent vertical resizing + + event sender + event arguments + + + + Closes the dialog on Esc since modeless dialogs don't seem to respect IsCancel=true + + evemt sender + event arguments + + + + stores the current dialog values for the next time this dialog is opened + + evemt sender + event arguments + + + + sets the findData fileds for a new search + + the editor we are searching + true if successfully set findData + + + + Finds the next word on the selected editor + + event target + event arguments + + + + Replace/find the next word on the selected editor + + event target + event arguments + + + + Replaces all matching occurrences of the given string. + + All writable spans will be replaced by this method. Read only spans will be left in place. + The number of matches found, or -1 if the call to CanSetFindData failed + + + + Replaces all matches of the search string + + event target + event arguments + + + + sets e.CanExecute to true if there is a current editor with some text + + event sender + event arguments + + + + Called to close the dialog + + event sender + event arguments + + + + InitializeComponent + + + + + Interaction logic for NewRemotePowerShellTabDialog.xaml + + + NewRemotePowerShellTabDialog + + + + + last value of the connectBox + + + + + last value of the userBox + + + + + Initializes a new instance of the NewRemotePowerShellTabDialog class. + + + + + Called to selct all text on focus + + event sender + event arguments + + + + Called to selct all text on focus + + event sender + event arguments + + + + Called to set the enabled state of the connect button + + event sender + event arguments + + + + Called to set the dialog result + + event sender + event arguments + + + + Called to set the dialog result and save dialog text. + + event sender + event arguments + + + + InitializeComponent + + + + + MessageBox with a "skip this message" checkbox + + + SkippableMessageBox + + + + + Initializes a new instance of the SkippableMessageBox class. + + window owner + message to be displayed + + + + Shows a message dialog if showAgain is true, setting showAgain with the dialog checkbox + + boolean determining if a dialog should be displayed + window owner + message to be displayed + false if the dialog has been displayed and cancelled, true otherwise + + + + Called to set the dialog result and close the window + + event sender + event arguments + + + + Called to set the dialog result and close the window + + event sender + event arguments + + + + InitializeComponent + + + + + This control has all the script editor tabs + + + EditorTabControl + + + + + The current ItemsSource used to disconnect from listenning to changest in the SelectedFile. + + + + + Initializes a new instance of the EditorTabControl class. + + + + + Called when the Items property has changed to: + 1) Set the SelectedItem to the SelectedFile + 2) Start tracking changes to the SelectedFile in order to change the selecting when it changes + 3) Select a recently added tab + + event arguments + + + + Called when the ISEFileCollection in the ItemsSouce changes in order to set the SelectedItem in the control. + + event sender + event arguments + + + + Called when the selection changes to set the focus on the Tab's Editor + and update currentPowerShellTab.Files.SelectedFile + + event sender + event arguments + + + + Sets the scripting pane visibility to true/false + + event sender + event arguments + + + + Sets e.CanExecute to true if there is at least one script in the current runspace tab + + event sender + event arguments + + + + Closes a Script file tab + + event target + event arguments + + + + Updates the selected tab when the file selected in the runspace changes + + PowerShellTab sending the event + event arguments + + + + Set the CloseTabButton automation id to filename.btnCloseTab + + event sender + event arguments + + + + This fixes a problem when clicking on the header of a selected editor tab stealing the focus from the editor + + event sender + event arguments + + + + InitializeComponent + + + + + Used to Convert an object to an object's property value even if the property is internal. + XAML does not support Binding to internal properties and this converter is meant to address that problem. + + + + + Converts to the resulting object obtained from retrieving the property value in (or property values if contains dots) out of . + In the spirit of WPF's Binding, this method traces instead of throwing exceptions so that it supports an eventual value of null and other + problems without throwing. + + The object we are trying to Convert. + is unused. + The property path out of . This can include dots, but not indexed properties. + is unused. + The resulting object obtained from retrieving the property value in (or property values if contains dots) out of . + + + + This method is not supported and throws an exception when called. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + Nothing since an exception will be thrown. + + + + Wraps an object exposing its private properties as if they where public. + This serves as a workarround for the fact that WPF DataBinding cannot see internal properties. + This class is meant to be the DataContext of objects and therefore can be internal. + There is no need to use this class if all properties in a property path are public. + The property values returned here are also InternalObjects if the PropertyType is in this assembly + (actually, in Application.Current.MainWindow.GetType().Assembly). This means that: + 1) This class can be used even if more than one property in a property binding path is internal. + 2) If a property binding path only contains objects declared in this assembly then the final + binding value is going to be an InternalObject and it is only going to be useful for its + string value. + + + + + Object being wrapped. + + + + + Type of the object being wrapped. + + + + + Initializes a new instance of the InternalObject class. + + object being wrapped. + If the baseObject is null + + + + Notifies callers of changes in the BaseObject's properties. + + + + + Gets the object being wrapped. + + + + + Returns this.BaseObject's ToString. + + this.BaseObject's ToString + + + + Repassed the static method with the same name in TypeDescriptor. + + The returnValue from the static method with the same name in TypeDescriptor. + + + + Repassed the static method with the same name in TypeDescriptor. + + The returnValue from the static method with the same name in TypeDescriptor. + + + + Repassed the static method with the same name in TypeDescriptor. + + The returnValue from the static method with the same name in TypeDescriptor. + + + + Repassed the static method with the same name in TypeDescriptor. + + The returnValue from the static method with the same name in TypeDescriptor. + + + + Repassed the static method with the same name in TypeDescriptor. + + The returnValue from the static method with the same name in TypeDescriptor. + + + + Repassed the static method with the same name in TypeDescriptor. + + The returnValue from the static method with the same name in TypeDescriptor. + + + + Repassed the static method with the same name in TypeDescriptor. + + The paramter is repassed the static method with the same name in TypeDescriptor. + The returnValue from the static method with the same name in TypeDescriptor. + + + + Repassed the static method with the same name in TypeDescriptor. + + The parameter is repassed the static method with the same name in TypeDescriptor. + The returnValue from the static method with the same name in TypeDescriptor. + + + + Repassed the static method with the same name in TypeDescriptor. + + The returnValue from the static method with the same name in TypeDescriptor. + + + + Returns PropertyDescriptors for all public and private properties. + + This parameter is ignored. + PropertyDescriptors for all public and private properties. + + + + Returns PropertyDescriptors for all public and private properties. + + PropertyDescriptors for all public and private properties. + + + + Returns this.BaseObject. + + This parameter is ignored. + returns this.BaseObject + + + + Repasses change notifications in the base object to potential listeners to the InternalObject's notifications. + + event sender + event handler + + + + PropertyDescriptor returned by InternalObject's GetProperties method + + + + + The PropertyInfo used to get and set values. + + + + + Set to true if the property type is in this assembly. + + + + + Initializes a new instance of the InternalObjectPropertyDescriptor class. + + the PropertyInfo used to get and set values. + + + + Gets the value typeof(InternalObject). + + + + + Gets a value indicating tf the property cannot be written to. + + + + + Gets the property type. + + + + + Returns false. + + This parameter is ignored + always returns false. + + + + Gets the calue of the property descriptor in the component. + + InternalObject that owns the property. + the calue of the property descriptor in the component. + + + + This method has no effect. + + This parameter is ignored. + + + + Sets the value of the property in the component. + + InternalObject that owns the property. + Property value to set the property to. + + + + Gets the value true. + + this parameter is ignored. + the value true. + + + + A provider for a margin that will be the corner element + + + + + Returns the corner element to serve as a margin + + the host, which is not used + the container, which is not used + the corner element to serve as a margin + + + + A simple margin with one border with Control background + + + + + The element returned in the VisualElement property + + + + + Initializes a new instance of the ISECornerMargin class + + + + + Gets the GUI for this marin + + + + + Gets the MArginSize for this, which is not used + + + + + Gets a value indicating whether the margin is enabled + + + + + Gets the margin by name + + name of the margin to get + the margin by name + + + + Disposes of resources + + + + + Main Window class + + + MainWindow + + + + Minimum Height below which the ScriptPane is considered collapsed + + + + Array of brush names. their classic theme and high contrast colors. + + + + + The classic theme brushes build of brushColorArray + + + + + The high contrast keys built of brushColorArray + + + + + Dictionary where default brushes are saved + + + + + Current color mode the main window is on. Used not to set colors more than once + if we receive multiple high contrast/theme messages. + + + + + Gesture used for stopping a command and copying text(Ctrl+C in English). + + + + + The application exit code + + + + + manager for MRU files + + + + + Initializes a new instance of the MainWindow class. + + + + + Color modes the main window might be on, + + + + + High Contrast mode. + + + + + Classic, non high contrast mode. + + + + + Non classic and non High Contrast mode + + + + + Initial value of currentColorScheme + + + + + Gets the high contrast foreground brush used for text in the editors and the editor caret + + + + + Gets the high contrast foreground color used for text in the editors and the editor caret + + + + + Gets the high contrast background color used for some control colors + and, in non high contrast mode, for the text color of non script editors, and the caret of all editors + + + + + Gets the high contrast color used for tab items on mouse over. + + + + + Gets the current color mode the main window is on. Used not to set colors more than once + if we receive multiple high contrast/theme messages. + + + + + Gets the manager for MRU files + + + + + Gets or sets the application exit code + + + + + Called when high contrast changes or when window is loaded to change control colors + + + + + Zooms in our out responding to Ctrl+ Mouse wheel. + + event arguments. + + + + Marks the event as handled so that the editor does not start a drag operation for files + + event arguments + + + + Deals with files being dropped in the application. + + event arguments + + + + Sets the visual effects of drag to indicate only files can be dropped. + + event arguments + + + + Previews keys before the editor gets a chance to see them. + This is necessary in order to overide some shortcuts that are also used in the editor's + DefaultKeyProcessor (Control+W) and (Control+T). + It is also used to ensure Enter and Escape will only work in AddOn tools if the focus is on the AddOn tools + + event arguments + + + + Called from OnPreviewKeyDown to handle the Enter key + + event arguments + + + + Called from OnPreviewKeyDown to handle the Escape key + + event arguments + + + + Returns true if one of the editors is focused + + currently selected PowerShellTab + rue if one of the editors is focused + + + + Returns true if any child control of the addon tools is focused + + currently selected PowerShellTab + true if any child control of the addon tools is focused + + + + Returns true if the double is a valid positive number + + value to test + true if the double is a valid positive number + + + + Retrieves from a string collection with files being dropped or null + if there are no files being dropped + + event arguments + + a string collection with files being dropped or null if there are no files being dropped + + + + + Called after the aplication initializes to create bursh dictionaries + + main window + + + + Gets the High Contrast Brush for the given brush name + + brush name to retrieve the brush from + The High Contrast Brush for the given brush name + + + + Called when high contrast changes to set the proper brushes + + main window + + + + Returns true if we are currently debugging + + event sender + event arguments + + + + Opens a file from the MRU list + + event sender + event arguments + + + + Toggles showing outlining + + event sender + event arguments + + + + Toggles showing embedded commands + + event sender + event arguments + + + + Sets e.CanExecute to true if it will be possible to toggle the embedded commands + + event sender + event arguments + + + + Toggles the display of line numbers + + event sender + event arguments + + + + Toggles expanding outlining + + event sender + event arguments + + + + Sets e.CanExecute to true if it will be possible to toggle outlining expansion + + event sender + event arguments + + + + Sets e.CanExecute if it will be possible to start intellisense + + event sender + event arguments + + + + Starts intellisense + + event sender + event arguments + + + + Sets e.CanExecute to true if it will be possible to insert a snippet + + event sender + event arguments + + + + Inserts a snippet + + event sender + event arguments + + + + sets the focus in the Script Editor + + event target + event arguments + + + + sets the focus in the console + + event target + event arguments + + + + Sets e.CanExecute to true if there is at least one script in the current runspace tab + + event sender + event arguments + + + + Goes to a line in the script editor. + + event sender + event arguments + + + + Returns true if the "GoToLine" command can be executed + + event sender + event arguments + + + + Sets e.CanExecute to true if there is at least one script in the current runspace tab + + event sender + event arguments + + + + Sets e.CanExecute to true if the "Save" command can be executed + + event target + event arguments + + + + Saves the current script + + event target + event arguments + + + + Sets e.CanExecute to true if the "Save As" command can be executed + + event target + event arguments + + + + Saves the current script with the Save dialog + + event target + event arguments + + + + Closes a Script file tab + + event target + event arguments + + + + Sets the ToolBar visibility to true/false + + event sender + event arguments + + + + Sets the scripting pane visibility to true/false + + event sender + event arguments + + + + Shows the script pane on the top + + event sender + event arguments + + + + Sets e.CanExecute to false if the scripts are already on right + + event sender + event arguments + + + + Sets e.CanExecute to false if the scripts are already on top + + event sender + event arguments + + + + Sets e.CanExecute to false if the scripts are already maximized + + event sender + event arguments + + + + Shows the script pane on the right + + event sender + event arguments + + + + Shows the script pane maximized + + event sender + event arguments + + + + Sets e.CanExecute to false if the focus is not in any editor + + event sender + event arguments + + + + Selects all text in the editor + + event sender + event arguments + + + + Sets e.CanExecute to false if the focus is not in the script editor + or input controller or if there is nothing to undo + + event sender + event arguments + + + + Undos the last action on input or script editor + + event sender + event arguments + + + + Sets e.CanExecute to false if the focus is not in the script editor + or input controller or if there is nothing to redo + + event sender + event arguments + + + + Redo the last action on input or script editor + + event sender + event arguments + + + + Sets e.CanExecute to false if the focus is not in the script editor + or input controller, or if no text is selected + + event sender + event arguments + + + + Cut text from focused window + + event sender + event arguments + + + + Sets e.CanExecute to false if the focus is not in the script editor + or input controller or output window, or if no text is selected + + event sender + event arguments + + + + Copy text from focused window + + event sender + event arguments + + + + Sets e.CanExecute to false if the focus is not in the script editor + or input controller, or if there is nothing in the clipboard + + event sender + event arguments + + + + Paste text into focused window + + event sender + event arguments + + + + Opens a new script + + event target + event arguments + + + + Finds text in script + + event sender + event arguments + + + + Sets e.CanExecute to true if there is a script with text to be found + + event sender + event arguments + + + + Finds text in script + + event sender + event arguments + + + + Finds the next match in the script editor + + event sender + event arguments + + + + Sets e.CanExecute to true if there is a script with text to be found + + event sender + event arguments + + + + Finds the previous match in the script editor + + event sender + event arguments + + + + Sets e.CanExecute to true if there is a script with text to be found + + event sender + event arguments + + + + Creates a new script tab + + event sender + event arguments + + + + Clears the output + + event sender + event arguments + + + + Runs the current script + + event target + event arguments + + + + Sets e.CanExecute to true if there is a script to run + + event sender + event arguments + + + + Runs the current selection + + event target + event arguments + + + + Sets e.CanExecute to true if there is a selection to run + + event sender + event arguments + + + + stops command execution + + event target + event arguments + + + + Sets e.CanExecute to true if can stop execution + + event sender + event arguments + + + + Sets e.CanExecute to false when we already have the maximum number of runspaces + + event sender + event arguments + + + + Creates a new runspace tab + + event sender + event arguments + + + + Creates a new remote runspace tab + + event sender + event arguments + + + + Sets e.CanExecute to true if this is not the last runspace + + event sender + event arguments + + + + Closes the current runspace + + event sender + event arguments + + + + Shows the requested runspace + + event sender + event arguments + + + + Shows the requested script + + event sender + event arguments + + + + Shows the requested script + + event sender + event arguments + + + + Sets e.CanExecute to true if there the pipeline is free + + event sender + event arguments + + + + Opens the options dialog + + event sender + event arguments + + + + Starts PowerShell + + event sender + event arguments + + + + Invokes the help file + + event sender + event arguments + + + + Invokes the update-help command + + event sender + event arguments + + + + Follows the link to online AddOn information + + event sender + event arguments + + + + Invokes the show-command + + event sender + event arguments + + + + Handles ApplicationExit command + + event sender + event arguments + + + + Executes the "step into" debugger command + + event sender + event arguments + + + + Executes the "step over" debugger command + + event sender + event arguments + + + + Executes the "step out" debugger command + + event sender + event arguments + + + + Sets e.CanExecute to true if Run/Continue can be executed + + event sender + event arguments + + + + Resumes execution of the debugger + + event sender + event arguments + + + + Sets e.CanExecute to true if Break All can be executed + + event sender + event arguments + + + + Breaks running script into debugger + + event sender + event arguments + + + + Stops the debugger + + event sender + event arguments + + + + Returns true if we are currently debugging + + event sender + event arguments + + + + Toggles the breakpoint on the current line + + event sender + event arguments + + + + Returns true if the "toggle breakpoint" command can be executed + + event sender + event arguments + + + + Enables the breakpoint on the current line + + event sender + event arguments + + + + Returns true if the "enable breakpoint" command can be executed + + event sender + event arguments + + + + Disables the breakpoint on the current line + + event sender + event arguments + + + + Returns true if the "disable breakpoint" command can be executed + + event sender + event arguments + + + + Deletes all the breakpoints on the current runspace + + event sender + event arguments + + + + Returns true if the "remove all breakpoints" command can be executed + + event sender + event arguments + + + + Enables all the breakpoints on the current runspace + + event sender + event arguments + + + + Returns true if the "enable all breakpoints" command can be executed + + event sender + event arguments + + + + Disables all the breakpoints on the current runspace + + event sender + event arguments + + + + Returns true if it is possible to go to a matching character + + event sender + event arguments + + + + Goes to a matching character + + event sender + event arguments + + + + Returns true if the "disbale all breakpoints" command can be executed + + event sender + event arguments + + + + Executes the "get callstack" command + + event sender + event arguments + + + + Executes the "list breakpoints" command + + event sender + event arguments + + + + Sets e.CanExecute to true if can execute the command + + event sender + event arguments + + + + decreases the font. + + event sender + event arguments + + + + Sets e.CanExecute to true if we can decrease the font. + + event sender + event arguments + + + + Increases the font. + + event sender + event arguments + + + + Sets e.CanExecute to true if we can increase the font. + + event sender + event arguments + + + + Handles the command to move a vertical tool to horizontal + + ignored event sender + ignored event arguments + + + + Handles the command to move a horizontal tool to vertical + + ignored event sender + ignored event arguments + + + + Handles the command to tab into the vertical addon tool + + ignored event sender + ignored event arguments + + + + Handles the command to tab into the horizontal addon tool + + ignored event sender + ignored event arguments + + + + Handles the command to show and select an AddOn tool + + ignored event sender + ignored event arguments + + + + Handles the command to hide a vertical AddOn tool + + ignored event sender + ignored event arguments + + + + Handles the command to hide a horizontal AddOn tool + + ignored event sender + ignored event arguments + + + + Sets e.CanExecute to true if there is a horizontal tool to hide + + ignored event sender + ignored event arguments + + + + Sets e.CanExecute to true if there is a vertical tool to hide + + ignored event sender + ignored event arguments + + + + Handles the command to toggle the horizontal AddOn tool pane visibility + + ignored event sender + ignored event arguments + + + + Handles the command to toggle the vertical AddOn tool pane visibility + + ignored event sender + ignored event arguments + + + + Sets e.CanExecute to true when it is possible to toggle the horizontal AddOn tool pane visibility + + ignored event sender + ignored event arguments + + + + Sets e.CanExecute to true when it is possible to toggle the vertical AddOn tool pane visibility + + ignored event sender + ignored event arguments + + + + Handles the command to open webpage for Script Browser Add-On + + ignored event sender + ignored event arguments + + + + Sets e.CanExecute to true when the command can be executed + + ignored event sender + ignored event arguments + + + + Handles the command to open webpage for Module Browser Add-On + + ignored event sender + ignored event arguments + + + + Sets e.CanExecute to true when the command can be executed + + ignored event sender + ignored event arguments + + + + Handles the command to open webpage for Script Analyzer Add-On + + ignored event sender + ignored event arguments + + + + Sets e.CanExecute to true when the command can be executed + + ignored event sender + ignored event arguments + + + + Called to set UserSettings.Default.MainWindowMaximized + + event sender + event arguments + + + + Called to set UserSettings.Default.MainWindowTop and UserSettings.Default.MainWindowLeft + + event sender + event arguments + + + + Called to set UserSettings.Default.MainWindowWidthSetting and UserSettings.Default.MainWindowHeightSetting + + event sender + event arguments + + + + Called when closing the window to prompt for saving files + + event sender + event arguments + + + + Handles Theme and High Contrast switches and end session caused by restart manager or logoff + + window handle + message received + part of message parameters + other part of message parameters + to be set to true if we want to be the only handlers of messages + returns IntPtr.Zero + + + + At the moment, this is used to catch Alt related messages. + There 2 current uses for this: + 1) Routing Alt+Shift messages so that they reach the keyboard processor of the editors to allow for box selection. + 2) Handling Alt+Enter to stop it from executing the default buttons for AddOn tools + + Message to process + set to true if the message was handled + + + + Called to update the Runspace visibility + + event sender + event arguments + + + + Restore the values from the settings to the actual window position, size and state. + + + + + Called to update visual states + + event sender + event arguments + + + + InitializeComponent + + + + + Process Editor Keys before the editor DefaultKeyProcessor. + This class has 2 purposes: + 1) Allowing us to call BeforeDefaultKeyProcessor.InternalKeyDown for custom key handling/interception in + the rest of the application + 2) "Unhardcode" most shortcuts hardcoded in Nautilus DefaultKeyProcessor. Unhardcode means that those + shortcuts should be localizable. + In order for the default key processor shortcuts be localizable we have to repeat here what the + default key processor does, but use the shortcuts from the resources. this is done with + BeforeDefaultKeyProcessor.shortcutMethods. + We also have to prevent the default key processor to handle the shortcuts we localize. This is done with + BeforeDefaultKeyProcessor.defaultKeyProcessorHardcodedShortcuts + + + + + Table of shortcuts to the methods that implement them + + + + + The IWpfTextView this processor is for + + + + + editor operations + + + + + editor undo registry + + + + + Initializes a new instance of the BeforeDefaultKeyProcessor class + + The IWpfTextView this processor is for + Editor operations + Editor undo registry + + + + KeyDown Event. Renamed not to colide with the KeyDown class member. + + + + + Gets the table of shortcuts to the methods that implement them + + + + + This is the main entry point of the key processor. + + event arguments + + + + Adds the shortcut to BeforeDefaultKeyProcessor.shortcutMethods if shortcut is not null. + + shortcut to be added + method to be added + + + + Tries to get a shortcut method for the given shortcut + + shortcut to get a method from + method to be retrieved + true if it was possible to get a method + + + + Tries to get a shortcut method for the given gesture + + gesture to get a method from + method to be retrieved + true if it was possible to get a method + + + + Adds an entry for shortcut that is the same as the entry fr shortcutToCopy, if shortcut + and shortcutToCopy are not null + + shortcut to be added + shortcut with method to be copied, previouslly added to the table + + + + Populates BeforeDefaultKeyProcessor.shortcutMethods. The implementation of each shortcut seen here has been taken from + Nautilus DefaultKeyProcessor. + + + + + Factory for BeforeDefaultKeyProcessor + + + + + Creates a new key processor provider for the given WPF text view host + + Wpf-based text view host to create key processor for + A valid key processor + + + + Exposes all the editor factories and other services + + + + + Singleton value for this class + + + + + Text Editor Factory + + + + + The aggregator used to enumerate classifications for tests + + + + + The aggregator used to get tags + + + + + The service used for searching text + + + + + The TextBuffer Factory + + + + + The provider responsible for the breakpoint marker + + + + + Retrieves an IContentType necessary for creating a text buffer + + + + + Used in the classifier to retrieve Exported ClassificationTypeDefinition's + + + + + Used to retrieve the Exported EditorFormatDefinition assossiated with a ClassificationTypeDefinition and its + corresponding TextFormattingRunProperties used to set classification text properties like colors + + + + + Retrieves the ITextBufferUndoManager for a buffer + + + + + Retrieves the IEditorOperations for a TextView + + + + + Retrieves the ITextStructureNavigatorProvider for a TextView + + + + + The factory to create ITextDocument + + + + + factory used to retrieve IEditorFormatMap + + + + + factory used to create editor options + + + + + Allows the creation and dismissal of intellisense + + + + + factory used to get an undo history + + + + + Allows outlining expand/collapse + + + + + Gets the factory used to get an undo history + + + + + Gets the service used for searching text + + + + + Gets the provider responsible for the breakpoint marker + + + + + Gets the aggregator used to enumerate classifications for tests + + + + + Gets the aggregator used to enumerate error tags + + + + + Gets the Undo provider + + + + + Gets the ITextStructureNavigatorProvider for a TextView + + + + + Gets the IEditorOperations for a TextView + + + + + Gets the service used in the classifier to retrieve Exported ClassificationTypeDefinition's + + + + + Gets the service used to retrieve the Exported EditorFormatDefinition assossiated with a ClassificationTypeDefinition and its + corresponding TextFormattingRunProperties used to set classification text properties like colors + + + + + Gets the IContentType necessary for creating a text buffer + + + + + Gets the TextBuffer Factory + + + + + Gets the Text Editor Factory + + + + + Gets the factory to create ITextDocument + + + + + Gets the factory used to retrieve IEditorFormatMap + + + + + Gets the factory used to create editor options + + + + + Gets an object that allows the creation and dismissal of intellisense + + + + + Gets an object that allows outlining expand/collapse + + + + + Gets the object with all editor imports, performing MEF composition + on the first time + + + + + calls into MEF in order to initialize editor imports and exports + + + + + Wraps a basic completion from the basic System.Management.Automation implementation with extra information required by the ISE + + + + + image source for types + + + + + image source for namespaces + + + + + image source for commands + + + + + image source for provider containers + + + + + image source for provider items + + + + + image source for history items + + + + + image source for methods + + + + + image source for parameter names + + + + + image source for parameter values + + + + + image source for properties + + + + + Image source for variables + + + + + Image source for text information + + + + + image source for dynamic keyword + + + + + Prevents a default instance of the ISECompletion class from being created + + + + + Creates a new instance of the ISECompletion class. + + the basic System.Management.Automation completion + the newly created instance + + + + Retrieves the ImageSource corresponding to the from the cached + or constructs a new one and stores it in + for the next retrieval. + + the cached ImageSource, or null if it has not been retrieved yet. + the ImageSource path + + the ImageSource corresponding to the from the cached + or constructs a new one and stores it in + + + + + Gets the ImageSource corresponding to . + + The basic CompletionResult from System.Management.Automation + the ImageSource corresponding to . + + + + Class used to override filtering and selection behavior for ISE Intellisense + + + + + Completions of this set + + + + + The span used for filtering + + + + + span from the beginning of the line up to the beginning of applicableTo + used for transition to tab completion + + + + + initial text of lineStartToApplicableTo + + + + + True to select an item even if the filter text is empty + + + + + Initializes a new instance of the ISECompletionSet class. + + The unique, non-localized identifier for the completion set. + The localized name of the completion set. + The tracking span to which the completions apply. + The list of completions. + The list of completion builders. + The span to be used for filtering + span from the beginning of the line up to the beginning of applicableTo + True to select an item even if the filter text is empty + + + + Gets the completions of this set + + + + + Gets the span used for filtering + + + + + Gets the span from the beginning of the line up to the beginning of applicableTo + + + + + Gets the initial text of LineStartToApplicableTo + + + + + Filters the results in the list to the ones whose DisplayText match this.filterSpan + + + + + Selects the best match that will be the one whose displayText contains the filter closest + to the beginning of DisplayText + + + + + Starter for an intellisense session. + The AugmentCompletionSession is the only useful method of this class. + + + + + Used un Dispose() + + + + + textBuffer where intellisense is starting + + + + + Initializes a new instance of the ISECompletionSource class. + + the buffer needing the ICompletionSource + + + + Adds an ISECompletionSet to . + + The ICompletionSession which is ignored + The collection to add the ISECompletionSet + + + + Disposes of this class + + + + + Provider for the ICompletionSource used to start intellisense + + + + + returns a new ICompletionSource for the given . + + the buffer in need of an ICompletionSource + a new ICompletionSource for the given + + + + Establishes the FontSize for intellisense as a proportion of FontSize and Zoom + + + + + This is the default background color for completion text, used + when high contrast mode is not active to ensure the proper contrast + ratio. + + + + + This is the number we multiply the font size by so that it is possible to read the text at the default font size and default zoom + + + + + The current intellisense typeface + + + + + Gets the font for the non selected completions + + + + + Gets the selection background brush that should contrast with SelectionTextRunProperties + + + + + Gets the font for the selected completions + + + + + Gets the font for intellisense tooltips + + + + + Gets the font size returned for all fonts + + + + + Gets the TypeFace for all fonts + + + + + Basic class for all classifier that will always add the classifier as a property to the buffer + and that will expose a mechanism to force reclassification + + + + + The two categories for script editors used to set classification type font colors in those categories + + + + classification type definition + + + classification type definition + + + + Contains the IClassificationType added above to be used for unknown tokens and for gaps between tokens. + + + + + Contains the IClassificationType added above used for high contrast. + + + + + The editor buffer + + + + + Initializes a new instance of the ISEClassifier class + + editor buffer + + + + Event used to force reclassification + + + + + Gets the IClassificationType used for unknown tokens and for parts of the span + with no corresponding token. + + + + + Gets the IClassificationType used for high contrast + + + + + Gets the editor buffer + + + + + Called to update the buffer classifier property and then to call the virtual GetClassificationSpans + + span to get classifications from + The return from VirtualGetClassificationSpans + + + + Sets the font color for gaps in the editor + + Color to set the gap classification foreground color to + + + + Called when toggling to high contrast or loading the editor to set the color for + the high contrast classification and the gap classification + + + + + Called to set the colors for the tokens according to the tokencolors passed. + + Collection of token colors. + Collection of all default colors used to clear the brushes not specified in + classification prefix + classification sufix + Enumeration to be used as the dictionary key + + + + Called to set the Text font color. + + text color to set + classification type to set the font color to + category in which to set the font color + + + + Returns the text properties for the given classification + + classification type + The category to get tje text properties from + the text properties for the given classification + + + + Callled to trigger ClassificationChanged + + span to reclasify + + + + Gets the classifications for the span + + span to get classifications from + the classifications for the span + + + + Updates the buffer classifier property used by ISEEditor's reclassification + + + + + Mouse processor for Zoom + + + + + Gets a new processor for the text view + + the view we need a mouse processor for + the new processor for the text view + + + + Mouse processor for Zoom and for console clicking going to input region + + + + + Text view this processor is for + + + + + Initializes a new instance of the ISEZoomMouseProcessor class + + view for this mouse processor + + + + Responds to a click to set the caret to input region of console if click came from outside the console + + event arguments + + + + Processes the mouse wheel to zoom in/out + + event arguments + + + + Works arround an issue with the editor displaying the first line of picels for characters like f in some font sizes + in the Lucida Console font name by adding one extra pixel to the first line + + + + + This is the equivalent of a non-transform, no line on top or bottom and 1:1 scale + + + + + Transform with one line on top + + + + + Initializes a new instance of the LineTransformSource class + + + + + Works arround an issue with the editor displaying the first line of picels for characters like f in some font sizes + in the Lucida Console font name by adding one extra pixel to the first line + + The line to apply the transform to + Current canvas position + The relative position of the transform + A 1 line on top transform for the first line and no transform for other lines + + + + Provider for the LineTransformSource used in all editors, hence the base text contentType + + + + + Gets the LineTransformSource used in all editors + + the editor's TextView + returns the LineTransformSource used in all editors + + + + Classifies non script text in the ScriptPane. + + + + + Declares a new content type called TextOutput, derived from text and used for the classifications + + + + classification type + + + + contains the IClassificationType added above. + + + + + Initializes a new instance of the NonScriptClassifier class. + + text buffer corresponding to the classifier + + + + Gets the IClassificationType returned in all classifications of this classifier + + + + + Given a SnapshotSpan, this method returns a list of ClassificationSpans that we want + to classify in the given SnapshotSpan + + span to classify + classification (ClassificationSpans) + + + + Provides the IClassifier for non script text in the ScriptPane + + + + + Provides the IClassifier for the output editor + + text buffer we're classifying + the IClassifier for PowerShell syntax highlighting + + + + Span and its background/foreground colors + + + + + span containing the color + + + + + The classification type to be used for the span. + + + + + Initializes a new instance of the OutputColorSpan class. + + span the colors correspond to + The classification type to be used. + + + + Gets the span. + + + + + Gets the classification type to be used for the span. + + + + + Classifies output text + + + + + Declares a new content type called TextOutput, derived from text and used for the classifications + + + + classification type definition + + + + the classification type used in the output to fill gaps between classifications + + + + + Map of all cached classification types used in the output + + + + + Initializes a new instance of the OutputClassifier class. + + text buffer corresponding to the classifier + + + + Gets the classification type used in the output to fill gaps between classifications + + + + + Gets a cached classification type for given colors or adds one to the cache and returns it if not cached yet + + foreground color + background color + output background color + a cached classification type for given colors or adds one to the cache and returns it if not cached yet + + + + Sets the font color for gaps in the output + + Color to set the gap classification foreground color to + + + + Given a SnapshotSpan, this method returns a list of ClassificationSpans that we want + to classify in the given SnapshotSpan + + span to classify + classification (ClassificationSpans) + + + + Provides the IClassifier for the output editor + + + + + Provides the IClassifier for the output editor + + text buffer we're classifying + the IClassifier for PowerShell syntax highlighting + + + + Tags matching braces/quotes and other paired characters + + + + + Initializes a new instance of the PowerShellBraceMatchingTagger class + + the editor view + the editor buffer + + + + Event that will force retagging a span + + + + + Gets or sets the editor view + + + + + Gets or sets the editor buffer + + + + + Gets or sets the current caret character + + + + + Returns the brace matching tags for the giving span + + span to retrieve tags for + the brace matching tags for the giving span + + + + Triggers the event that will force retagging a span + + span to tag + + + + Gets a span starting at position with length 1 + + span start position + a span starting at position with length 1 + + + + Called when the caret moves from a PageDn/PgUp, for instance to update the caret position + + event sender + event arguments + + + + Called when the caret position changes to update the caret position + + event sender + event arguments + + + + Called when the caret position changes to set this.CurrentChar and + to force the retagging for brace matches + + new caret position + + + + Removes the instance of this object added in the constructor in case the content changes + + event sender + event arguments + + + + Class used to define the color for brace matching so that it is visible in both dark and light backgrounds + + + + + Initializes a new instance of the BraceHighlightMarkerDefinition class + + + + + Provides the PowerShellBraceMatchingTagger for the "powershell" content + + + + + Creates the PowerShellBraceMatchingTagger for the "powershell" content + + type of tagger + editor TextView + editor Buffer + the PowerShellBraceMatchingTagger for the "powershell" content + + + + PowerShellClassifier provides the bridge between PowerShell's Tokenize() API + and the text editor's text coloring system. + It is given the buffer it will classify as a constructor parameter; thereafter, + each time the buffer is changed, this classifier will tokenize the contents, and + map the appropriate classifier (see Productions and Consumptions region) to the + spans being updated by the editor. + + + + + the rendering size is in device independent pixels, we need to convert it from points + pt = 1 / 72 inch + dip = 1 / 96 inch + + + + + Character Width in the current font + + + + + Declares a new content type called powershell, derived from text and used for the classification + + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + + map of tokens into classification types for the script + + + + + map of tokens into classification types for the console + + + + + classification for tokens within a breakpoint + + + + + Initializes static members of the PowerShellClassifier class + + + + + Initializes a new instance of the PowerShellClassifier class. + + buffer to classify + + + + Delegate that classifies the given token if it is within a breakpoint span + + snapshot being classified + classification for breakpoints + Classifications for the token are added to this list + Spans for current breakpoints + The token classification + True if the token was classified, or false if the token is not within a breakpoint span + + + + Gets the Character Width in the current font + + + + + Fills the gaps between classifications + + The list of all classifications where we will be adding the filler + The span of the last ClassificationSpan added to classifications + The new classification span about to be added + The buffer snapshot + The classification type used to fill the gap + + + + Fills the gaps before the first classification and after the last + + The complete span being classified + The list of all classifications + The buffer snapshot + The classification type used to fill the gap ant beginning and end + + + + Called to set the colors for the tokens according to the tokencolors passed. + + Collection of token colors. + Collection of all default colors used to clear the brushes not specified in + siffix for the classification type + + + + Updates editor colors based on whether the user has activated a high contrast theme, + + If true, indicates that high contrast colors should be used. + + + + Sets the background and border styles for a given marker in the editor. + + The IEditorFormatMap where marker definitions can be found. + The name of the marker to change. + The marker's new background color. + The marker's new border color. + The marker's new border thickness. + The marker broder's new dash style. + + + + Update the character width based on M of the current font. + + Object containing font information. + + + + Gets the classification type corresponding to + + token we want the classification from + true if we should use console classifications + he classification type corresponding to + + + + Adds the classifications corresponding to the PSTokenSpans + + text buffer + span being classified + list to add classifications to + + Last classification added. Thishelps filling the space gaps between tokens with a classification + so that the script editors are not affected by a change in the "Text" classification + type font name + + + Classification type for gaps + + + Delegate used to deal with adding classifications in breakpoints. + The OutptClassifier will pass null for this parameter + + + classification used in for breakpoints + The OutptClassifier will pass null for this parameter + + + List of breakpoints used in + The OutptClassifier will pass null for this parameter + + + + + Given a SnapshotSpan, this method returns a list of ClassificationSpans that we want + to classify in the given SnapshotSpan + + span to classify + classification (ClassificationSpans) + + + + Classifies the given token if it is within a breakpoint span + + snapshot being classified + classification for breakpoints + Classifications for the token are added to this list + Spans for current breakpoints + The token classification + True if the token was classified, or false if the token is not within a breakpoint span + + + + Returns the breakpoints within the given span + + the span to check + spans for the breakpoints + + + + Used to define the color for a breakpoint line + + + + + Initializes a new instance of the BreakpointMarkerDefinition class + + + + + Provides the IClassifier for PowerShell syntax highlighting + + + + + Provides the IClassifier for PowerShell syntax highlighting + + text buffer we're classifying + the IClassifier for PowerShell syntax highlighting + + + + Provides the error tags for the "powershell" content + + + + + Initializes a new instance of the PowerShellErrorTagger class + + the editor view + the editor buffer + + + + Event that will force retagging a span + + + + + Gets or sets the editor view + + + + + Gets or sets the editor buffer + + + + + Returns the error tags for the giving span + + span to retrieve tags for + the error tags for the giving span + + + + Triggers the event that will force retagging a span + + span to tag + + + + Removes the instance of this object added in the constructor in case the content changes + + event sender + event arguments + + + + Provides the PowerShellErrorTagger for the "powershell" content + + + + + Creates the PowerShellErrorTagger for the "powershell" content + + type of tagger + editor TextView + editor Buffer + the PowerShellErrorTagger for the "powershell" content + + + + Provides the outline tags for the "powershell" content + + + + + Initializes a new instance of the PowerShellOutliningTagger class + + the editor buffer + + + + Event that will force retagging a span + + + + + Gets or sets the editor buffer + + + + + Returns the outline tags for the giving span + + span to retrieve tags for + the outline tags for the giving span + + + + Helper to GetTags that allows the tagger to return the previous set of tags untill they change. + All of the other taggers work something like this with the help of the tokenization service: + 1 - When the tokenization is starting, all tags are removed (for instance, there will be no colors) + 2 - When the tokenization is done, the OnTagsChanged method is called causing the GetTags to be called again + 3 - GetTags will then retrieve the tokenization information and return the latest tags + For regions, the steps below don't work. The outlining manager keeps track of collapsed regions and step #1 + , which removes all regions, causes the following trouble in the tokenizer: An assertion is triggered informing + the "tagger has bisbehaved" and pottentially, collapsed regions are expanded and loose their plus/minus sign control + that allows them to be collapsed. + Becausae of this tracking for collapsed regions we need a different approach: + 1 - When the tokenization starts, GetTags will still return the previous outlining regions. + 2 - Once the tokenization is done, OnTagsChanged is called to return the new set of regions. + The way this is achieved is for the method below to cache the returned tags in a buffer property + named . When the tokenization is done, the new tag information is placed in + and is deleted so that when this + method is called again (when OnTagsChanged is called), the cache is refreshed. + + the editor buffer + name of the property with tag information + name of the property with the last tags returned from this method + + The tags corresponding to the tokenized tag information + + + + + Triggers the event that will force retagging a span + + span to tag + + + + Removes the instance of this object added in the constructor in case the content changes + + event sender + event arguments + + + + Provides the PowerShellOutliningTagger for the "powershell" content + + + + + Creates the PowerShellOutliningTagger for the "powershell" content + + type of tagger + editor Buffer + the PowerShellOutliningTagger for the "powershell" content + + + + Provides an indentation provider with the same number of spaces as the previous line + + + + + view associated with this object + + + + + Initializes a new instance of the SmartIndent class. + + view associated with this object + + + + Returns the same number of spaces from the previous line, if there is a previous line + + current line + the same number of spaces from the previous line, if there is a previous line + + + + Part of the public interface, but there is nothing to dispose specifically in this implementation + + + + + Provides an ISmartIndent implementation for all files in powershell ISE (ContentType("text")) + + + + + Provides an ISmartIndent implementation for all files in powershell ISE (ContentType("text")) + + The view associated with the ISmartIndent + An ISmartIndent implementation for all files in powershell ISE (ContentType("text")) + + + + One instance of this serves the entire app, as the display of snippets is not dependent + on context. This is created (once) and served to the editor through the ISESnippetCompletionSourceProvider. + The editor calls AugmentCompletionSession in this class for each session to get the completions populated. + + + + + Comparer for completions to get them sorted by display name + + + + + This will be called from within the editor for each completion session, and gives + us the opportunity to populate the list of completion sets with ours. We should + populate only if the session is a Snippets session and not an intellisense session, + and we determine that by looking for the "SessionOrigin" property + + The completion session to be augmented + The target list to add completion sets into + + + + This will be called just before GC. Nothing we need to do, as we do not maintain any system handles. + There is nothing at class level that needs careful disposal + The lists of Snippet Completions are just a reference to memory we do not need anymore + + + + + This comparer is used to sort the completion itemsas per their display names + + + + + Comparer to sort snippets by display name + + the first completion + the completion to compare against + 0/-/+ value depending on which completion is greater + + + + This is a MEF exported class that is imported by the editor to provide completion functionality. + The editor will call the TryCreateCompletionSource method and register the completion source object + provided by it. For each completion session, the editor will give all registered sources a chance to + add to the CompletionSet List by calling their AugmentCompletionSession(..) + + + + + This is the only snippet completion source in the system. We show the same snippet source object + through the app though the actual completions shown are stored in the tab's SnippetCollection. + Snippets are not context dependent, so there is no reason to tie the CompletionSource to the + textBuffer.. it is the same one across all text buffers + + + + + Will be called from editor + + the text buffer from the editor + The completion source + + + + Contains default harcoded snippets that are always available unless the .options.ShowDefaultSnippets is set to $false. + + + + + Code for harcoded snippet for if Condition + + + + + A harcoded snippet for if Condition + + + + + Code for harcoded snippet for if..else Condition + + + + + A harcoded snippet for if else + + + + + Code for harcoded snippet for a for loop + + + + + A harcoded snippet for a for loop + + + + + Code for harcoded snippet for a foreach loop + + + + + A harcoded snippet for a foreach loop + + + + + Code for harcoded snippet for a function with 2 parameters + + + + + A harcoded snippet for a function with 2 params + + + + + Code for harcoded snippet for an advanced function + + + + + A harcoded snippet for a advanced function (ScriptCmdlet) with some attributes and, inline help fields and Begin,Process,End blocks + + + + + Code for harcoded snippet for an advanced and big function with all bells and whistles + + + + + A harcoded snippet for a advanced function (ScriptCmdlet) with all attributes and all inline help fields + + + + + Code for harcoded snippet for a switch statement + + + + + A harcoded snippet for a switch statement + + + + + Code for harcoded snippet for a while statement + + + + + A harcoded snippet for a while loop + + + + + Code for harcoded snippet for a do-while loop + + + + + A harcoded snippet for a do-while loop + + + + + Code for harcoded snippet for a do-until loop + + + + + A harcoded snippet for a do-until loop + + + + + Code for harcoded snippet for a try-catch-finally block + + + + + A harcoded snippet for a try-catch-finally block + + + + + Code for harcoded snippet for a try-finally block + + + + + A harcoded snippet for try-finally exception handling + + + + + Code for harcoded snippet for a comment block + + + + + A harcoded snippet for a comment block + + + + + The code segment for workflow inline script + + + + + A harcoded snippet for a workflow inline script + + + + + The code for parallel workflow + + + + + A hardcoded snippet for parallel workflow + + + + + The code for sequence workflow + + + + + A hardcoded snippet for sequence workflow + + + + + The code for sequence workflow + + + + + A hardcoded snippet for sequence workflow + + + + + code for simple workflow snippet + + + + + snippet for simple workflow snippet + + + + + code for advanced workflow snippet + + + + + snippet for advanced workflow + + + + + A harcoded snippet for a DSC Resource Provider (Simple) + + + + + Code for harcoded snippet for DSC Resource Provider (Simple) + + + + + A harcoded snippet for a DSC Configuration (Simple) + + + + + Code for harcoded snippet for DSC Configuration (Simple) + + + + + A harcoded snippet for a DSC Configuration (w/ConfigurationData) + + + + + Code for harcoded snippet for DSC Configuration (Simple) + + + + + A harcoded snippet for a DSC Configuration Data + + + + + Code for harcoded snippet for DSC Configuration (Simple) + + + + + A hardcoded snippet for a DSC resource with class + + + + + A hardcoded snippet for a class + + + + + Default snippets hardcoded below + + + + + Gets default snippets + This is the only method called by the completion source to get the available default snippets + + + + + Provided largely to facilitate unit tests + + Display name + the snippet with this name + + + + This is called on application load to assemble the strings into a list. + Not expected to be time consuming because they are harcoded strings in the code, + not on external disk files. + + The default snippets as strings containing full XML + + + + Replaces resource markers in with the corresponding resource string + + the string to replace resource markers + the string with resource markers replaced + + + + Manages Snippet operations. + It is currently a thin static wrapper over the functionality provided by the Completion broker, + in addition to keeping track of the active session and selected completion. + It can be static today because we never have more than one snippet session at a point in time + in the whole app. If that were to change, we would make this non-static and have one instance + of this for every snippet session + + + + + The current active session, if any + + + + + True if the current active session is not being committed + + + + + Selected snippet + + + + + Tracking span for the insertion from the currently selected snippet + + + + + Session Committed Event Handler hooked to all sessions + The handler objects are created once and used throughout + + + + + Session Dismissed Event Handler hooked to all sessions + The handler objects are created once and used throughout + + + + + Selection Changed Event Handler hooked to all Completion sets in all sessions + The handler objects are created once and used throughout + + + + + Gets the Active session + Exposing it as an internal to be able to unit test easily + + + + + This initiates a completion session and shows a completion drop-down visually. + It is called from the menu as well as from the keyboard shortcut. + In both cases, it is invoked from ISEEditor. + + The text view in which completion is triggered + + true if the Snippet drop-down has been shown and the key event, if any, may be deemed handled. + false if the snippets were not shown for any reason and the key event, if any should be relayed to other handlers. + + + + + Commits the current completion + + true if the key (Tab/ Enter) may be deemed handled + + + + This gets called when user types chars after bringing up the snippets pane + to filter the result. The activeSession.Filter() in turn causes the editor to + call the .Filter() of each completion set on display at that time + + + + + Calculates and returns the blank string of required length + to produce indentation based on the current caret position + + Current caret position where the completion session is started + A blank string to be prepended to each line + + + + Handler hooked when the session is initiated. + This is called when the session is committed by TAB or ENTER + + The event sender, normally the Session + Event argument that can be used to find how the session was committed + + + + Handler hooked when the session is initiated. + This is called when the session is dismissed by ESC or other typing, or change of focus.. or any other way + + The event sender, normally the Session + Event argument that can be used to find how the session was committed + + + + Handler hooked just after the session is initiated. + This is called when the selected completion changes, and we use it to keep track of the selected snippet to + position the caret accordingly if it the session ended with this selection + + The event sender, normally the CompletionSet + Event argument + + + + Interaction logic for OutputControl.xaml + + + OutputControl + + + + + Content associated with this control + + + + + Initializes a new instance of the OutputControl class. + + + + + Gets or sets the control content + + + + + InitializeComponent + + + + + Contents of a Runsapce Tab containing the InputAndOutputControl and an EditorTabControl + + + RunspaceControl + + + + + Initializes a new instance of the RunspaceControl class. + + + + + Called when the selection changes in the GUI to set the corresponding property in the object model + + collection containing the new selected tool + new selected tool + + + + Called when the editor or console change sizes to store + the widths and heights of rows and columns. The sizes are stored as a proportion + to the height for their use in UpdateRowAndColumnSizes. + + event sender + event arguments + + + + For High Contrast mode, new RunspaceControl's are being created for some reason. + We want the new control to display the PowerShellTab object correctly, if it is expanded, + side by side, etc. + Just after creation, the RunspaceControl will appear as if the ScriptEditor is expanded + which is fine for when the application starts but not fine when the application is up + and the ScriptEditor is expanded and we switch to high contrast. + + event sender + event arguments + + + + Called when the selection changes in the horizontal AddOnTools tab control to set the corresponding object model property + + the tab control where the selection changed + ignored event arguments + + + + Called when the selection changes in the vertical AddOnTools tab control to set the corresponding object model property + + the tab control where the selection changed + ignored event arguments + + + + InitializeComponent + + + + + TabControl with Runspaces (RotatedRunspaceControl). + + + RunspaceTabControl + + + + + Initializes a new instance of the RunspaceTabControl class. + + + + + Gets the selected RunspaceControl + + + + + Set the CloseTabButton automation id to filename.btnCloseTab + + event sender + event arguments + + + + Called when the runspace is loaded + + event sender + event arguments + + + + Called when the PowerShellTab collection is changed to select the new runspace + + event sender + event arguments + + + + Called to start listening to the Layout update. + + event senders + event arguments + + + + Called to ensure the presenter is going to be able to find the runspaceControl + before changing PSGHostInternal.Current.PSGData.PowerShellTabs.SelectedPowerShellTab + + event sender + event arguments + + + + InitializeComponent + + + + + Interaction logic for ScriptExpander.xaml + + + ScriptExpander + + + + + Initializes a new instance of the ScriptExpander class. + + + + + InitializeComponent + + + + + Interaction logic for ShowCommandAddOnControl.xaml + + + ShowCommandAddOnControl + + + + + ViewModel used for the controls + + + + + root of the ISE object model + + + + + Initializes a new instance of the ShowCommandAddOnControl class. + + + + + Gets or sets the root of the ISE object model + + + + + Initializes this controls with its data + + the data used in the control + + + + Event to handle the ZoomLevelChange Event + + sender which is mostly in this case is PowerShellTab + Zoom level + + + + Sets up the listening of events in the ViewModel and the DataContexts + + + + + Focuses the relevant control based on the state of the ViewModel. + + + + + Monitors this tool being added or removed to update this.hostObject.CurrentPowerShellTab.ShowCommands + + event sender + event arguments + + + + Monitors this tool changing visibility to update this.hostObject.CurrentPowerShellTab.ShowCommands + + event sender + event arguments + + + + Monitors this tool pane being opened/closed to update this.hostObject.CurrentPowerShellTab.ShowCommands + + event sender + event arguments + + + + Called when the Refresh button is pressed + + event sender + event arguments + + + + Called when the import-module button is pressed + + event sender + event arguments + + + + Refreshes the ViewModel and reposition the selected module/command if those parameters are not null + + command selected when the refresh was requested + name of the selected command parent module when the refresh was requested + module selected when the refresh was requested + tab where this tool is + + + + Creates an appropriate error message string if refresh fails for ShowCommand control + + The name of command if it was selected + Parent module name of the selected command + Custom message to add to the Failure string resource + The formatted error message + + + + Called when help is needed for the selected command + + event sender + event arguments + + + + Copies the script into the clipboard + + event sender + event arguments + + + + Runs the selected command + + event sender + event arguments + + + + Called when the selected command needs to be run + + event sender + event arguments + + + + Runs the current script + + + + + Inserts the command text in the console pane + + event sender + event arguments + + + + InitializeComponent + + + + + Interaction logic for StatusAndSizingBar.xaml + + + StatusAndSizingBar + + + + + Initializes a new instance of the StatusAndSizingBar class. + + + + + InitializeComponent + + + + + Defines a custom Slider class to return the ZoomSliderAutomationPeer. + + + + + Creates an AutomationPeer for this control. + + An AutomationPeer instance. + + + + Helper classes for WPF functionality + + + + + Maximum number of lines in GetMaxLines + + + + + Maximum number of characters in GetFirstNonEmptyLine + + + + + Auxiliar in finding topmost-leftmost controls + + + + + String Array Constant used in Sting.split + + + + + Char Array Constant used in Sting.split + + + + + Value indicating whether the SendToUIThread can dispatch to the UI thread. + This flag is set in SendToUIThreadAndBlock to avoid locking on the UI thread. + In the watch window example, that makes use of InvokeSynchronous, this will + prevent watching "write-debug 'abc' -debug" or "write-debug" to cause an + application hang. + + + + + Lock ensuring only one thread at a time verifies canSendToUIThread + + + + + Auxiliar delegate for FindFirst + + child to be checked + true if the child satisfies some criteria + + + + Delegate used in BinarySearch that is supposed to return 0 if key matches item's key + a negative value if the key is smaller than item's key and a positive value if the key + is larger then item's key + + Type for a List in Binary search + Type for a key compared against all items + item being searched + key compared to all items + + 0 if key matches item, a negative value if the key is smaller than item and + a positive value if the key is larget than item's key + + see BinarySearch + + + + Returns true if the current mode is high contrast + + true if the current mode is high contrast + + + + Gets the Color specified in the native color constant + + constant used to retrieve a color + The Color specified in the native color constant + + + + Retrieves a KeyGesture with no display name + + key gesture string + A KeyGesture for the given gestureString or null if one could not be produced + + + + Searches for K in T, considering T is sorted + + Type for a List in Binary search + Type for a key compared against all items + items being searched + key compared to all items + delegate that actually performs the comparison of items against the keys + the item matching the key or -1 if it has not been found + + (30, delegate(PSToken token, int position) + { + // a position of 48 looking for a token ending at position 30 + // would return 18 below which would cause the binary search to search in the second half + return position - (token.Start + token.Length); + }); + ]]> + + + + + Returns a KeyGesture for the given gestureString or null if one could not be produced + + key gesture string + A KeyGesture for the given gestureString or null if one could not be produced + + + + Given the gestureString looks for the propper display string by looking up resources + ending up with KeyboardDisplayName + + The gesture string we are trying to get the display string for + the propper display string evaluated by looking up resources ending up with KeyboardDisplayName + + + + Returns a KeyGesture for the given modifier and key or null if one could not be produced + + key to be passed to the KeyGesture constructor + modifier to be passed to the keygesture constructor + A KeyGesture for the given modifier and key or null if one could not be produced + + + + Removes \r and \n from source + + string to normalize + source with no \r or \n + + + + Starts the process and puts up a message box if any exceptions have been found. + + process to start + + + + Shows an "Ok" MessageBox for the Exception + + Exception to show the message box for + + + + Shows an "Ok" MessageBox for the Exception + + Message to show the message box for + + + + Invokes SaveFileDialog + + SaveFileDialog's file extension + SaveFileDialog's filter + SaveFileDialog's file name + the saved file name or null if the dialog was cancelled + + + + Invokes OpenFileDialog + + OpenFileDialog's file extension + OpenFileDialog's filter + OpenFileDialog's initial directory + the file name or null if the dialog was cancelled + + + + Returns the first child of that satisfies the criteria in + or null if no child satisfies the criteria. + + The parent of children we are searching for + delegate that provides search criteria + + the first child of that satisfies the criteria in + or null if no child satisfies the criteria. + + + + + Searchs the logical tree for a ContentPresenter with "SelectedContent" as its source. + Typically used to find the content of a TabControl. The header is easily found with... + + parent control to search for + the ContentPresenter for the Selected Content or null if there is none + + + + Returns true if a child of is focused + + the parent control we want to if it is focused + true if a child of is focused + + + + Sets the ficus in a subcontrol of with the lowest tab index or, + if tab indexes have not been set, to the topmost leftmost control + + parent control we want to set the focus to + + + + Calls dispatcherMethod in the UI thread, blocking future calls to + SendToUIThread requiring SynchronizationContext.Send + + dispatcher method to call + dispatcherMethod 's return value + if the method throws an exception + If there is a pending call to this method. + + + + Tries deleting the file corresponding to fullPath + + full path to delete + true if it was able to delete the file + + + + Calls sendMethod in the UI thread + + method to call + if the method throws an exception + If there is a pending call to SendToUIThreadAndBlock and it is necessary to use SynchronizationContext.Send + + + + Calls dispatcherMethod in the UI thread + + dispatcher method to call + dispatcherMethod 's return value + if the method throws an exception + If there is a pending call to SendToUIThreadAndBlock and it is necessary to use SynchronizationContext.Send + + + + Gets the first non empty line and limits it to WPFHelper.GetFirstNonEmptyLineMaxCharacters + + the string to the first line from + the first non empty line limitted to WPFHelper.GetFirstNonEmptyLineMaxCharacters + + + + Gets the first non empty line and limits it to WPFHelper.GetFirstNonEmptyLineMaxCharacters + + the string to the first line from + maximum number of characters in line, -1 for no restriction + the first non empty line limitted to WPFHelper.GetFirstNonEmptyLineMaxCharacters + + + + Limits a string to limit charachters + + the string to be limited + the limit of characters in the return (not considering ellipsis or localized continuation) + the limited string + + + + Gets the first lines of . + + string we want to limit the number of lines + The first lines of . + + + + Verifies if a file can be executed in the authorization manager, and returns its contents + if it can be executed + + path to the file being verified and read + Authorization Manager + contents as a string if the file can be executed, otherwise null + + + + Verifies if a file can be executed in the authorization manager, and returns its contents + if it can be executed + + path to the file being verified and read + Authorization Manager + true if this method should throw exceptions + contents as a string if the file can be executed, otherwise null + + + + Tries to get a registry value in HKLM + + key in HKLM containing the value + name of the value to get + + A value in HKLM or null if it could not be retrieved + + + + + Retrieves the Color from a native colorConstant + + Color constant retrieved from GetColor + The Color from a native colorConstant + + + + Calls dispatcherMethod or sendMethod in the UI thread, blocking future calls to + SendToUIThread requiring SynchronizationContext.Send + + sendMethod method to call + dispatcher method to call + true if WPFHelper.canSendToUIThread should be checked + The return of dispatcherMethod or nothing if sendMethod was used + if the method throws an exception + If there is a pending call to this method. + + + + Custom Commands used by GPowerShell that do not show up in the main menu + + + + Custom command to enable the breakpoint on the current line + + + Custom command to disable the breakpoint on the current line + + + + Gets a command used to enable the breakpoint on the current line + + + + + Gets a command used to disable the breakpoint on the current line + + + + + Common functionality meant to be shared between powershell_ise.exe and Microsoft.PowerShell.GPowerShell.dll + + + + + If a mutex is abandoned, in our case, it is ok to proceed + + The mutex to wait on. If it is null, a new one will be created + The mutex name. + A working mutex. If the mutex was abandoned, a new one is created to replace it + + + + Custom Commands used by GPowerShell + + + + + Custom command used to add a new remote powershell tab + + + + + Custom command used to open the options dialog + + + + + Custom command used to find the next text in the script pane + + + + + Custom command used to find the previous text in the script pane + + + + Custom command to start powershell + + + Custom command to go to a script line + + + Custom command to toggle the scripting pane visibility + + + Custom command used to toggle the horizontal tool pane visibility + + + Custom command used to toggle the vertical tool pane visibility + + + Custom command used to hide the selected horizontal tool + + + Custom command used to hide the selected vertical tool + + + Custom command used to move the selected horizontal tool to vertical + + + Custom command used to move the selected vertical tool to horizontal + + + Custom command used to go to the selected vertical tool + + + Custom command used to go to the selected horizontal tool + + + Custom command used to show and select an AddOn tool + + + Custom command used to toggle the ToolBar visibility + + + Custom command used to display scripts on the right + + + Custom command used to display scripts on the top + + + Custom command used to display scripts maximized + + + Custom command to exit the application + + + Custom command to replace all text + + + Custom command to run a script + + + Custom command to run the selection + + + Custom command to stop a script + + + Custom command to close a runspace tab + + + Custom command to get a new runspace tab + + + Custom command to show a runspace tab + + + Custom command to show a Script tab + + + Custom command to run a custom script + + + Custom command to move script to the top or right. + + + Custom command to clear the output + + + + Custom command used to go to the console pane + + + + Custom command to go to the script editor + + + Custom command to execute "step into" in the debugger + + + Custom command to execute "step over" in the debugger + + + Custom command to execute "step out" in the debugger + + + Custom command to resume execution of the debugger + + + Custom command to break into running script into the debugger + + + Custom command to stop the debugger + + + Custom command to toggle (add/remove) the breakpoint on the current line + + + Custom command to remove all breakpoints + + + Custom command to enable all breakpoints + + + Custom command to disable all breakpoints + + + Custom command to get the callstack + + + Custom command to list all breakpoints + + + Custom command to zoom in. + + + Custom command to zoom out. + + + Command used to find text in any editor + + + Command used to replace text in any editor + + + Command used to create a new script + + + Command used to open a new script + + + Command used to save a script + + + Command used to save a script as another file name + + + Command used to close a script + + + Command used to undo the last action + + + Command used to redo the last action + + + Command used to cut text from input or from scripts + + + Command used to copy text from any editor + + + Command used to paste text in the input or in scripts + + + Command used to get help + + + Command used to select all text in any editor + + + Custom command to go to the the matching character + + + Custom command to start intellisense + + + Custom command to insert a snippet + + + Custom command used to open a file from the MRU list + + + Custom command used to toggle outlining + + + Custom command used to show the embedded show-command window + + + Custom command used to toggle line numbers + + + Custom command used to toggle Outlining + + + Custom command used to run update-help + + + Custom command used to display AddOn information + + + Custom command used to display the show-command popup window + + + Custom command used to open the webpage for Script Browser add-on + + + Custom command used to open the webpage for Module Browser add-on + + + Custom command used to open the webpage for Script Analyzer add-on + + + + Gets a command used to open a file from the MRU list + + + + + Gets a command used to go to the the matching character + + + + + Gets a command used to find text in any editor + + + + + Gets a command used to replace text in any editor + + + + + Gets a command used to create a new script + + + + + Gets a command used to open a new script + + + + + Gets a command used to save a script + + + + + Gets a command used to save a script as another file name + + + + + Gets a command used to close a script + + + + + Gets a command used to undo the last action + + + + + Gets a command used to redo the last action + + + + + Gets a command used to cut text from input or from scripts + + + + + Gets a command used to copy text from any editor + + + + + Gets a command used to paste text in the input or in scripts + + + + + Gets a command used to get help + + + + + Gets a command used to select all text in any editor + + + + + Gets a command used to increase the font. + + + + + Gets a command used to decrease the font. + + + + + Gets a command used to start powershell + + + + + Gets a command used to start powershell + + + + + Gets a command used to toggle the ToolBar visibility + + + + + Gets a command used to toggle the scripting pane visibility + + + + + Gets a command used to toggle the horizontal tool pane visibility + + + + + Gets a command used to toggle the vertical tool pane visibility + + + + + Gets a command used to move the selected horizontal tool to vertical + + + + + Gets a command used to move the selected vertical tool to horizontal + + + + + Gets a command used to go to the selected vertical tool + + + + + Gets a command used to go to the selected horizontal tool + + + + + Gets a command used to show and select an AddOn tool + + + + + Gets a command used to hide the selected horizontal tool + + + + + Gets a command used to hide the selected vertical tool + + + + + Gets a command used to show scripts maximized + + + + + Gets a command used to show scripts on the top + + + + + Gets a command used to show scripts on the right + + + + + Gets a command used to go to the console pane + + + + + Gets a command used to exit the application + + + + + Gets a command used to go to the script editor + + + + + Gets a custom command used to add a new remote powershell tab + + + + + Gets a custom command used to open the options dialog + + + + + Gets a command used to find the next text in the script pane + + + + + Gets a command used to find the previous text in the script pane + + + + + Gets a command used to replace all text + + + + + Gets a command used to clear the output + + + + + Gets a command used to move script to the top or right + + + + + Gets a command used to run a script + + + + + Gets a command used to run the selection + + + + + Gets a command used to stop a script + + + + + Gets a command used to add a new runspace + + + + + Gets a command used to close a runspace + + + + + Gets a command used to show a runspace + + + + + Gets a command to run a custom script. + + + + + Gets a command used to show a script + + + + + Gets a command used to execute "step into" in the debugger + + + + + Gets a command used to execute "step over" in the debugger + + + + + Gets a command used to execute "step out" in the debugger + + + + + Gets a command used to resume the debugger + + + + + Gets a command used to break running script into the debugger + + + + + Gets a command used to stop the debugger + + + + + Gets a command used to toggle (add/remove) the breakpoint on the current line + + + + + Gets a command used to remove all the breakpoints + + + + + Gets a command used to enable all the breakpoints + + + + + Gets a command used to disable all the breakpoints + + + + + Gets a command used to get the callstack + + + + + Gets a command used to get the callstack + + + + + Gets a command used to start intellisense + + + + + Gets a command used to toggle outlining + + + + + Gets a command used to toggle the embedded show-command + + + + + Gets a command used to toggle line numbers + + + + + Gets a command used to toggle outlining expansion + + + + + Gets a command used to run update-help + + + + + Gets a command used to insert a snippet + + + + + Gets a command used to display AddOn information + + + + + Gets a command used to call show-command + + + + + Gets a command used to open the Script Browser Add-on webpage + + + + + Gets a command used to open the Module Browser Add-on webpage + + + + + Gets a command used to open the Script Analyzer Add-on webpage + + + + + Adds the KeyGesture corresponding to to the 's + InputBindings if can be converted to a KeyGesture. + + command whose InputBindings we'll add the gesture. + string rpresentation of a gesture to be added + + + + GPowerShell PSHostRawUserInterface imlpementation + + + + + Maps ConsoleColors to colors + + + + + Default width return by BufferSize when no width has been set. + + + + + Minimum width return by BufferSize. + + + + + Cursor position. This is not actually internally used, + but instead of throwing in the CursoPosition property setter + and getter we just return the last position set so that + a default cls function works. The default cls function is used in remoting. + + + + + The PowerShellTab associated with this host + + + + + initial host Size + + + + + Initializes a new instance of the GPSHostRawUserInterface class. + + the PowerShellTab associated with this host + + + + Gets and sets the background color used to render characters on the screen buffer. + + + + + Gets and sets the foreground color used to render characters on the screen buffer. + + + + + Gets or sets the current size of the screen buffer. + + + + + Cursor position. This is not actually internally used, + but instead of throwing in the CursoPosition property setter + and getter we just return the last position set so that + a default cls function works. The default cls function is used in remoting. + + + + + Gets and sets the cursor size as a percentage of a buffer cell. + + + + + Gets a value indicating whether a key press is available in the input stream. + + + + + Gets the largest window possible for the current font and display hardware, ignoring the current buffer dimensions + + + + + Gets the size of the largest window possible for the current buffer, current font, and current display hardware. + + + + + Gets and sets the position, in characters, of the view window relative to the screen buffer. + + + + + Gets and sets the current size of the view window. + + + + + Gets and sets the title bar text of the current view window. + + + + + Returns true if color is a valid ConsoleColor + + color to check + true if color is a valid ConsoleColor + + + + Reads a pressed, released, or pressed and released keystroke from the keyboard device, blocking processing until a keystroke is typed that matches the specified keystroke options. + + A bit mask of the options to be used when reading from the keyboard. Either IncludeKeyDown, IncludeKeyUp or both must be specified. + A KeyInfo object that describes the key. The object is returned when a keystroke is made that matches the specified keystroke options. + + + + Flushes the input buffer of all input records. + + + + + Gets a rectangular region of the screen buffer. + + A Rectangle object that identifies the sides of the rectangle. + An array of BufferCell objects extracted from the rectangle region. The returned array is organized in row-major order for performance even though the screen buffer is organized in column-major order. For example, a character originally appearing at position [X=10,Y=2] (column 10, row 2) will appear in the resulting array at position [2,10] (row 2, column 10). + + + + Crops a region of the screen buffer. + + A Rectangle structure that identifies the region of the screen to be scrolled. + A Coordinates structure that identifies the upper-left coordinates of the region of the screen to receive the source region contents. + A Rectangle structure that identifies the region of the screen to include in the operation. If a cell does not fall within the clip region, it will be unchanged. + A BufferCell structure that identifies the character and attributes to be used to fill all cells within the intersection of the source rectangle and clip rectangle that are left "empty" by the move. + + + + Copies a given character, foreground color, and background color to a region of the screen buffer. + This is not implemented here, but we do clear the screen when called so that + the default cls implementation (used in remoting) works. + + A Rectangle structure that defines the area to be filled. If the structure specifies a top, bottom, left , or right side of -1, the entire screen buffer is filled. + A BufferCell structure that defines the fill character. + + + + Copies an array of buffer cells into the screen buffer at a specified location. + + A Coordinates structure that identifies the top-left corner region to be filled. + A BufferCell array that describes a region of cells. + + + + Returns the length of in buffer cells. + + String we want to know the length of. + The length of in buffer cells. + + same as the implementation in the base class; included here to make it easier + to keep the other overload in sync: LengthInBufferCells(string, int) + + + + + Returns the length of in buffer cells starting at . + + String we want to know the length of. + Offset within . + The length of in buffer cells starting at . + + This is an alternative to the default implementation provided by PSHostRawUserInterface that is more performant. + + + + + GPowerShell PSHostUserInterface imlpementation + + + + + implementation of ReadLineDialog and PromptForCredential + + + + + value of the RawUI property + + + + + The PowerShellTab associated with this host + + + + + Initializes a new instance of the GPSHostUserInterface class. + + the PowerShellTab associated with this host + + + + Delegate to be called for each segment out of WrapString + + segment out of WrapString + true if a new line should be added after adding the element + The foreground color. + The background color. + + + + Gets the hosting application implementation of the PSHostRawUserInterface interface. + + + + + Gets or sets the implementation of ReadLineDialog and PromptForCredential + + + + + Prompts the user for input. + + The caption or title of the prompt. + The description of the prompt. + A collection of FieldDescription objects that describe each field to prompt for. + A dictionary object with results of the user prompts. The keys of the dictionary are the field names from the FieldDescription objects. The dictionary values are objects that represent the values of the corresponding fields as collected from the user. + + + + Presents a dialog that enables the user to choose an option, a choice, from a set of options. + + The caption or title of the prompt. + The message that describes the choice. + A collection of ChoiceDescription objects that describe each choice. + The index of the label in the ChoiceDescription collection that represents the choice presented to the user as the default choice. Always choose the most secure default choice. To indicate no default, set to -1. + The index of the ChoiceDescription object that corresponds to the option selected by the user. + + + + Prompts the user for credentials using a specified prompt window caption, prompt message, user and target name, credential types allowed to be returned, and UI behavior options. + + The caption for the message window. + The text of the message. + The name of the user whose credential is to be prompted for. If this parameter set to null or an empty string, the function will prompt for the user name first. + The name of the target for which the credential is collected. + An PSCredentialTypes enumeration constant that identifies the type of credentials that can be returned. + An PSCredentialUIOptions enumeration constant that identifies the UI behavior when it gathers the credentials. + A PSCredential object that contains the credentials for the target. + + + + Prompts the user for credentials with a specified prompt window caption, prompt message, user name, and target name. + + The caption for the message window. + The text of the message. + The name of the user whose credential is to be prompted for. If this parameter set to null or an empty string, the function will prompt for the user name first. + The name of the target for which the credential is collected. + A PSCredential object that contains the credentials for the target. + + + + Reads characters entered by user until a newline (carriage return) is encountered. + + The characters entered by the user. + + + + Reads characters entered by the user until a newline (carriage return) is encountered and returns the characters as a secure string. + + A SecureString object that contains the characters entered by the user. + + + + Writes characters to the output display of the host with possible foreground and background colors. + + The foreground color of the display. + The background color of the display. + The characters to be written. + + + + Writes characters to the output display of the host. + + The characters to be written. + + + + Displays a debug message to the user. + + Debug message supplied by the cmdlet. + + + + Writes a line to the error display of the host. + + The characters to be written. + + + + Writes a line of characters to the output display of the host and appends a carriage return. + + The characters to be written. + + + + Writes a progress report for display to the user. + + Unique identifier of the source of the record. An int64 is used because the 'this' pointer of the command where the record originated from is used, and that may be from a remote runspace on a 64-bit computer. + A ProgressRecord object that contains the progress record to be displayed. + + + + Writes a verbose line for display to the user. + + The verbose message to be displayed. + + + + Writes a warning line to be displayed the user. + + The warning message to be displayed. + + + + Converts to considering and + and placing the result in + + string to convert + type to convert the string to + true if targetType is SecureString + true if this conversion is being attempted in a remote host + result from conversion + conversion exception, if any + + + + Wraps a string performing an action with each segment + + string to wrap + wrap segment size + + last line length currently being displayed to be subtracted from wrapLength for the first line + + + true if we should add a new line after the last segment + + action to perform on each segment + foreground color + background color + + + + If is transparent returns PSGInternalHost.Current.Options.ConsolePaneBackgroundColor + otherwise returns . + + Background color to return the resulting color from + The propper background color considering transparency + + + + Writes source to the output wrapping, if needed + + string to be written to the output + true if we should add a new line after adding source + The foreground color. + The background color. + + + + Retrieves the corresponding value to considering prompt commands + + The value we want to get the corresponding value from + the value's targetType + true if is SecureString + the corresponding value to considering prompt commands + + + + Called from WrapString to perform the action on each segment and do some bookkeeping + + firstLineLength to be set to 0 + action delegate to be performed + segment to perform action on and clean + repassed as is to the action delegate + The foreground color. + The background color. + + + + Adds a line to the output + + line to br added + true if a new line should be added after adding the element + The foreground color. + The background color. + + + + Prompts in the console + + overall prompt message + set to true if the prompt has been canceled + input read from the console + + + + Prompts with a dialog or in the console + + The caption or title of the prompt. + The description of the prompt. + true if retrieving a SecureString + overall prompt message + One of the values passed to prompt + The description type + the result converted from string + the result as a string + faklse if the prompt has been canceled, true otherwise + + + + GPowerShell PSHost implementation + + + + + The host private data. This is static since it points to the static options. + + + + + Value saved for the CurrentCulture property + + + + + Value saved for the CurrentUICulture property + + + + + culture evaluation lock + + + + + InstanceId of this host + + + + + Host Version + + + + + The PowerShellTab associated with this host + + + + + Host UI that actually performs the GUI functionality + + + + + An event signaling that the state of the runspace stack has changed + The argument is true if the stack has grown, false if it has shrunk + + + + + Initializes a new instance of the GPSHost class. + + the PowerShellTab associated with this host + + + + Gets the host private data that corresponds to the options. + + + + + Gets the culture that the runspace will use to set the current culture on new threads. + + + + + Gets the UI culture that the runspace and cmdlets will use to do resource loading. + + + + + Gets the identifier that uniquely identifies this instance of the host. + + + + + Gets the user-friendly name of the hosting application. + + + + + Gets the hosting application's implementation of the PSHostUserInterface base class. + + + + + Gets the version number of the hosting application. + + + + + Gets a value indicating whether a runspace is pushed + + + + + Gets the current runspace associated with this host. + + + + + Instructs the host to interrupt the currently running pipeline and start a new nested input loop. An input loop is the cycle of prompt, input, and execute. + + + + + Instructs the host to the currently running input loop. + + + + + Notifies the host that the Windows PowerShell runtime is about to execute a legacy command-line application. A legacy application is defined as a console-mode executable that may perform any of the following operations: read from stdin, write to stdout, write to stderr, or use any of the win32 console APIs. + + + + + Notifies the host that the Windows PowerShell engine has completed the execution of a legacy command. A legacy application is defined as a console-mode executable that may perform any of the following operations: read from stdin, write to stdout, write to stderr, or use any of the Windows console APIs. + + + + + Request to end the current runspace. The Windows PowerShell runtime calls this method to request that the host application shut down and terminate the host root runspace. + + returns the exit code for the host + + + + See base class. + + new runspace to push + + + + See base class. + + + + + Handles state changed event of the remote runspace. If the remote runspace + gets into a broken or closed state, writes a message and pops out the + runspace + + event sender + arguments describing this event + + + + Localizable AutomationNames + + + + "text input" + + + "password input" + + + "Resource String: OK" + + + "input description" + + + "input help message" + + + "Resource String: Cancel" + + + "Resource String: Manage Themes Button" + + + "Resource String: Options Window Font Size ComboBox" + + + "Resource String: Options Window Cancel Button" + + + "Resource String: Options Window Enter Selects Intellisense CheckBox" + + + "Resource String: Options Window AutoSave Text Box" + + + "Resource String: Options Window Use Default Snippets CheckBox" + + + "Resource String: Options Window Show in the Console Pane CheckBox" + + + "Resource String: Options Window Show Line Numbers Check Box" + + + "Resource String: Options Window Font Family Combo Box" + + + "Resource String: Options Window Apply Button" + + + "Resource String: Options Window Prompt to Save Before Run CheckBox" + + + "Resource String: Options Window Sample Rich Text Box" + + + "Resource String: Options Window Timeout In Seconds Combo Box" + + + "Resource String: Options Window Recent Files Text Box" + + + "Resource String: Options Window Restore Button" + + + "Resource String: Options Window Use Local Help CheckBox" + + + "Resource String: Options Window Position Combo Box" + + + "Resource String: Options Window Warn About Duplicate Files CheckBox" + + + "Resource String: Options Window Show Outlining CheckBox" + + + "Resource String: Options Window Show ToolBar CheckBox" + + + "Resource String: Options Window Show in the Script Pane CheckBox" + + + "Resource String: Options Window Enter Selects Intellisense CheckBox" + + + "Resource String: Options Window OK Button" + + + "Resource String: Fixed Width Checkbox" + + + + Strings used in host GUI + + + + Windows PowerShell ISE Host + + + prompt command = "!!" + + + prompt command = "!?" + + + prompt command = "!$null" + + + prompt command = "!\"\"" + + + prompt command = "$null" + + + + Host GUI implementation strings + + + + "Resource String: _Stop" + + + "Resource String: {0}.\r\n {1}, {2} remaining, {3}." + + + "Resource String: {0}.\r\n {1}, {2}." + + + "Resource String: {0}.\r\n {1}, {2} remaining." + + + "Resource String: {0}.\r\n {1}." + + + "Resource String: _OK" + + + "Resource String: _Cancel" + + + "Windows PowerShell ISE - Input" + + + "Resource String: {0} - {1}" + + + "Invalid Number. A number between 1 and {0} is expected." + + + "DEBUG: {0}" + + + "WARNING: {0}" + + + "VERBOSE: {0}" + + + "Windows PowerShell ISE Credential Request" + + + "You can choose an empty string with !"", $null with !$null and exclamation point with !!." + + + "You can choose an empty string with {0}, {1} with {2} and exclamation point with {3}." + + + + Initializes static members of the HostGuiStrings class. + This ensures the proper sequence when initializing these fields + + + + + HostTextWriter bridges System.Console to the Host + + + + + The host used in the Erite calls. + + + + + Previous out used, for instance, in tests where hostOnThread might be null. + + + + + Initializes static members of the HostTextWriter class. + + + + + Prevents a default instance of the HostTextWriter class from being created. + + + + + Use the Consoles encoding + + + + + Called inside a runspace to register it + + The runspace host exposed in $host.UI + + + + Write to host output + + message to be written + + + + Write line to host output + + message to be written + + + + Test helper interface that allows the replacement of a host modal dialog with a non interactive alternative + + + + + Prompts a dialog to read a line + + true if retrieving a SecureString + true if prompt request came from a remote host + type of the result object + dialog title + overall prompt message + element label + element help message + resulting object + resulting string + false if the dialog has been canceled + + + + Prompts the user for credentials using a specified prompt window caption, prompt message, user and target name, credential types allowed to be returned, and UI behavior options. + + The caption for the message window. + The overall prompt message. + The name of the user whose credential is to be prompted for. If this parameter set to null or an empty string, the function will prompt for the user name first. + The name of the target for which the credential is collected. + An PSCredentialTypes enumeration constant that identifies the type of credentials that can be returned. + An PSCredentialUIOptions enumeration constant that identifies the UI behavior when it gathers the credentials. + A PSCredential object that contains the credentials for the target. + + + + Implementation of IHostGUI that actually promts modal dialogs + + + + + Prompts a dialog to read a line + + true if retrieving a SecureString + true if prompt request came from a remote host + type of the result object + dialog title + overall prompt message + element label + element help message + resulting object + resulting string + false if the dialog has been canceled + + + + Prompts the user for credentials using a specified prompt window caption, prompt message, user and target name, credential types allowed to be returned, and UI behavior options. + + The caption for the message window. + The text of the message. + The name of the user whose credential is to be prompted for. If this parameter set to null or an empty string, the function will prompt for the user name first. + The name of the target for which the credential is collected. + An PSCredentialTypes enumeration constant that identifies the type of credentials that can be returned. + An PSCredentialUIOptions enumeration constant that identifies the UI behavior when it gathers the credentials. + A PSCredential object that contains the credentials for the target. + + + + Implements the dialog used in PromptForChoice + + + PromptForChoiceDialog + + + + + Dialog result. -1 the dialog has been cancelled + + + + + Initializes a new instance of the PromptForChoiceDialog class. + + dialog title + dialog message/question + choices to be presented + indicates the default choice + + + + Gets the dialog result. -1 the dialog has been cancelled + + + + + Used to handle Esc to set the result and close the dialog + + event sender + event parameters + + + + Called to make the width of all buttons uniform. + + event sender + event arguments + + + + Called when any button has been clicked to set the result and close the dialog. + + event sender + event arguments + + + + InitializeComponent + + + + + Interaction logic for ReadLineDialog.xaml + + + ReadLineDialog + + + + + type of object we are reading + + + + + the resulting object that should have the type targetType + + + + + True to use PasswordBox instead of TextBox + + + + + True to not do type conversions + (bug Windows 7: #381643) + its bad to have potential side effects from casting on the client (think casting to a FileStream) + + + + + True if only digits should be allowed + + + + + Message to display if digitOnly is true and could not convert to type + + + + + Initializes a new instance of the ReadLineDialog class. + + true if retrieving a SecureString + true if prompt request came from a remote host + type of the result object + dialog title + overall prompt message + Original text to populate the text box control + element label + element help message + true if only digits should be allowed + Message to display if digitOnly is true and could not convert to type + + + + Initializes a new instance of the ReadLineDialog class. + + true if retrieving a SecureString + true if prompt request came from a remote host + type of the result object + dialog title + overall prompt message + Original text to populate the text box control + element label + element help message + true if only digits should be allowed + Message to display if digitOnly is true and could not convert to type + An alternative owner window + + + + Gets a value indicating whether we use PasswordBox instead of TextBox + + + + + Gets the resulting object that should have the type targetType + + + + + Gets the type of object we are reading + + + + + Returns true if is text + that can be turned into a positive integer. + + This can come from drag and drop or paste operations. + true if is text that can be turbned into a positive integer. + + + + Receives each character as it is typed to filter out non digits. + + event sender. + event arguments. + + + + Called when dropping to cancel an invalid data drop. + + event sender. + event arguments. + + + + Called when dragging over to set the effect for valid data. + + event sender. + event arguments. + + + + Previews paste to validate text changes. + + event sender. + event arguments. + + + + Called when the dialog is loaded to set the minumum width of the dialog + + event sender + event arguments + + + + Returns a value indicating the resulting object has been correctly set + + a value indicating the resulting object has been correctly set + + + + sets the result and closes the dialog + + event sender + event arguments + + + + InitializeComponent + + + + + Information we keep regarding a ProgressRecord, ready to be displayed if bound to GUI. + This can be considered a Tree Node class. The tree itself is ProgressSource + + + + + The Margin arround each progress bar that is not affected by its level + + + + + Number multiplied by the level to determine the total margin of a progress bar + + + + + The underlying ProgressRecord encapsulated by this ProgressBarInformation + + + + + The parent ProgressBarInformation idntified by the ProgressRecord's ParentActivityId. + This is null if the ProgressRecord's ParentActivityId is -1. + + + + + Subprogresses of this progress + + + + + Nesting depth of this progress on its parent progresses. + This is 0 if the ProgressRecord's ParentActivityId is -1. + + + + + The progress' Source Id + + + + + Initializes a new instance of the ProgressBarInformation class. + + the progress' Source Id + the underlying ProgressRecord encapsulated by this class + + + + Notifies callers of property changes. + + + + + Gets the font size for progress text + + + + + Gets the underlying ProgressRecord's PercentComplete + + + + + Gets the text representation of this progress + + + + + Gets The underlying ProgressRecord encapsulated by this ProgressBarInformation + + + + + Gets the margin that could be used for a ProgressBar considering the nesting depth. + + + + + Gets the margin that could be used for a text inside a ProgressBar considering the nesting depth. + + + + + Gets or sets the Nesting depth of this progress on its parent progresses. + This is 0 if the ProgressRecord's ParentActivityId is -1. + + + + + Gets or sets the parent ProgressBarInformation idntified by the ProgressRecord's ParentActivityId. + This is null if the ProgressRecord's ParentActivityId is -1. + + + + + Gets the subprogresses of this progress + + + + + Gets the progress' Source Id + + + + + Copies the source progress to the ProgressRecord properly notifying of changes. + This is called when a new ProgressRecord with the same ActivityId as + this.ProgressRecord.ActivityId is written. + + new progress record + + + + Tree of current ProgressBarInformations + + + + + Dictionary of activity id into corresponding progress information + + + + + Progresses with no parent progresses + + + + + Flatenned view of the tree of progresses + + + + + The tab that owns this progress source + + + + + Timer used to send messages to the UI thread + + + + + flag indicating AddOrUpdate has been called and the updates have not yet been sent to the UI thread + + + + + Initializes a new instance of the ProgressSource class + + tab that owns this object + + + + Delegate used in VisitAllNodes and VisitNode to perform node actions + + node to perform the action on + + + + Gets the flatenned view of the tree of progresses + + + + + Clear the whole tree of ProcessBarInformations + + + + + Called for each new progress entry to evaluate the need to Add a new ProgressBarInformation + or updating an existing one. + + source id for newProgress + new progress + + + + Rebuilds this.flattenedProgresses reflecting the tree in this.rootProgresses + + + + + Used in UpdateFlattenedProgresses to add each node to this.flattenedProgresses + + node to be added to this.flattenedProgresses + + + + Sets the level of the node and all subnodes + + node to set the level for + + + + Used in SetNodeAndSubnodesLevel to set the level of each node + + node to set the level for + + + + Visit all nodes performing the given action on each node + + action to be taken for each node + + + + Called from VisitAllNodes() for each of the root progresses to perform actionforNode + + action to be taken for each node + one of the root progresses + + + + 1) Sets progressToBeAdded Parent + 2) Sets progressToBeAdded and subProgresses Level's + 3) Adds progressToBeAdded to (A) this.rootProgresses or (B) its parent suprogresses. + 4) Adds progressToBeAdded to this.allProgresses + 5) Calls this.UpdateFlattenedProgresses() + + progress to be added + + If progressToBeAdded.ProgressRecord.ParentActivityId is not -1 and is not in this.allProcesses. + If progressToBeAdded.ProgressRecord.ParentActivityId would cause progressToBeAdded to be added under itself + + + + + Called when a new progress matches an existing and its parent has not changed to copy the properties + from the new progress to the existing one + + existing progress + new progress + + + + Removes the node when it is marked as completed + + node to remove + + + + Removes from this.allProgresses + + progress to be removed + + + + Called when a new progress matches an existing one and its parent has changed to move the + progress to the new parent and copy the properties of the new progress to the existing one + + existing progress + new progress + + + + Removes the node from either this.rootProgresses or its parent progress + + node to be removed from its parent + + + + Control used to indicate progress + + + ProgressControl + + + + + Initializes a new instance of the ProgressControl class + + + + + InitializeComponent + + + + + Adds some functionality to the underlying AllModulesViewModel that is specific to the ISE + + + + + value indicating whether the Insert button should be enabled + + + + + value indicating whether the Copy button should be enabled + + + + + value indicating whether can run and not in remote session + + + + + The viewModel we are wrapping + + + + + The PowerShellTab containing this tool + + + + + Whether the runspace stack has changed size (and thus we require a refresh) + + + + + Initializes a new instance of the AllModulesViewModelWrapper class. + + The viewModel to be wrapped + The powershelltab containing the ShowCommand AddOn tool + + + + Unhooks all events from their sources in preparation for garbage collection + + + + + Notifies of property changes + + + + + Gets a value indicating whether the Insert button should be enabled + + + + + Gets a value indicating whether the Copy button should be enabled + + + + + Gets a value indicating whether the Run button should be enabled + + + + + Gets a value indicating whether can run and not in remote session + + + + + Called from the constructor, when CanRun changes or when CanInvoke changes + + + + + Called from the constructor or when CanInvoke changes + + + + + Called from the constructor, when CanCopy changes or when CanInvoke changes + + + + + Monitors changes in CanInvoke for the PowerShellTab, since it will affect CanRun and CanInsert + + event sender + event arguments + + + + Responds to changes in the runspace stack + + The sending interactive host (should always be a GPSHost) + Whether the stack increased or decreased in size + + + + Monitors changes to CanRun and CanCopy in the wrapped ViewModel since they affect this.CanRun, this.CanInsert and this.CanCopy + + event sender + event arguments + + + + Used internaly to notify of a property change + + name of the property that changed + + + + Manages setting the backgrounds and carets for editors. + The background has to be set in each editor. The carets have to + be set by editor category (Output, Command, Script). + The 3 categories have been created because there are 3 background colors in + the object model. + + + + + Value used in AreColorsDifferentEnough as a threshold for when two collors are different + + + + + Brush for the output background + + + + + Brush for the script background + + + + + Brush for the output, command and script background when in high contrast + + + + + Brush for the output normal caret + + + + + Brush for the script normal caret + + + + + Brush for the output, command and script normal caret when in high contrast + + + + + Brush for the output overwrite caret + + + + + Brush for the script overwrite caret + + + + + Brush for the output, command and script overwrite caret when in high contrast + + + + + Gets the brush for the output background + + + + + Gets the brush for the output normal caret + + + + + Gets the brush for the output overwrite caret + + + + + Gets the brush for the script background + + + + + Gets the brush for the script normal caret + + + + + Gets the brush for the script overwrite caret + + + + + Gets the brush for output, command and script background when in high cnontrast + + + + + Gets the brush for output, command and script normal caret when in high cnontrast + + + + + Gets the brush for output, command and script overwrite caret when in high cnontrast + + + + + Called when the script background changes to change the background and caret of all scripts + + + + + Called when the output background changes to change the background and caret of all outputs + + + + + Called when a new editor is created to set the background of the editor + + editor to change the background + + + + Verifies if two colors are different enough + + first color to compare + second color to compare + true if the two colors are different enough + + + + Returns first if it is different enough from second or the complement of first if they are not + + background color that comes from an editor background + selection color that comes from a SystemColor + first if it is different enough from second or the complement of first if they are not + + + + If currentBrush is null or of the wrong color, refresh it + + desired color + current brush field reference + returns currentBrush + + + + If currentBrush is null or of the wrong color, refresh it + + desired color + current brush field reference + desired opacity + returns currentBrush + + + + If currentBrush is null or of the wrong color, refresh it with a semi transparent brush by that color + + desired color + current brush field reference + returns currentBrush + + + + If currentBrush is null or of the wrong color, refresh it with a brush with the complementary color + + complement of desired color + current brush field reference + returns currentBrush + + + + If currentBrush is null or of the wrong color, refresh it with a brush with the complementary color + and semi transparent + + complement of desired color + current brush field reference + returns currentBrush + + + + Returns the complement of the given color + + color to get the complement of + The complement of the given color + + + + Sets the background of the editor with nonHighContrastBrush if outside of high contrast or with + ISEEditorBackgroundManager.HighContrastBackgroundBursh if in high contrast + + editor to set the background of + brush to be used outside of high contrast + + + + Sets the caret brushes for the given categories to either caretNormalBrush and caretOverwriteBrush if outside of + hish contrast or, in high contrast, to ISEEditorBackgroundManager.HighContrastNormalCaretBursh and + ISEEditorBackgroundManager.HighContrastOverwriteCaretBursh + + category to set the caret brushes to + brush for the normal caret when outside of high contrast + brush for the overwrite caret when outside of high contrast + + + + Manages the layout of controls in the GUI + + + + + Used in FindNameSplit + + + + + Used in SetBindings to indicate the runspaceControl + + + + + Used in SetBindings to indicate the mainWindow + + + + + stores the information set in SetBindings and used in SetControlProperties regarding + setting property values + + + + + stores the information set in SetBindings and used in SetControlProperties regarding + adding and removing columns to a grid + + + + + stores the information set in SetBindings and used in SetControlProperties regarding + adding and removing rows to a grid + + + + + value indicating whether embedded commands are being displayed + + + + + Visibility of the progress control + + + + + ScriptExpander Visibility + + + + + EditorTabControl Visibility + + + + + Output Visibility + + + + + Visibility of splitter betwwen Script Pane (when it is on top) and the input/output to the bottom + + + + + Visibility of splitter betwwen Script Pane (when it is on the right) and the input/output to the left + + + + + ToolBar Visibility + + + + + true if the toobar is displayed + + + + + true if the outlining is shown + + + + + true if the line numbers are shown + + + + + EditorTabControl's Column + + + + + editorTabControl's RowSpan + + + + + EditorTabControl's ColumnSpan + + + + + horizontalTool and splitter's ColumnSpan + + + + + verticalToolSplitter's Column + + + + + verticalTool's Column + + + + + row for the horizontal tool + + + + + row for the horizontal tool splitter + + + + + True when ScriptPane is expanded + + + + + True when ScriptPane is Maximized + + + + + True when ScriptPane is to the right + + + + + True when ScriptPane is on top + + + + + editor's Row Height + + + + + outputRow's Height + + + + + horizontalToolRow's Height + + + + + potentialScriptColumn's Width + + + + + inputAndOutputColumn's Width + + + + + verticalToolColumnWidth's Width + + + + + vertical tools pane and splitter visibility + + + + + horizontal tools pane and splitter visibility + + + + + Gets a value indicating ScriptExpander Visibility + + + + + Gets the visibility for the progress control + + + + + Gets a value indicating EditorTabControl Visibility + + + + + Gets a value indicating Output Visibility + + + + + Gets a value indicating Visibility of splitter betwwen Script Pane (when it is on top) and the input/output to the bottom + + + + + Gets a value indicating Visibility of splitter betwwen Script Pane (when it is on the right) and the input/output to the left + + + + + Gets a value indicating ToolBar Visibility + + + + + Gets a value indicating whether the toolbar is displayed + + + + + Gets a value indicating whether outlinings are displayed + + + + + Gets a value indicating whether line numbers are displayed + + + + + Gets a value indicating EditorTabControl's Column + + + + + Gets a value indicating editorTabControl's RowSpan + + + + + Gets a value indicating EditorTabControl's ColumnSpan + + + + + Gets a value indicating horizontalTool and its splitter's ColumnSpan + + + + + Gets a value indicating verticalToolSplitter's Column + + + + + Gets a value indicating verticalTool's Column + + + + + Gets the row for the horizontal tool + + + + + Gets the row for the horizontal tool splitter + + + + + Gets a value indicating whether the ScriptPane is expanded + + + + + Gets a value indicating whether the embedded commands are displayed + + + + + Gets a value indicating whether the ScriptPane is Maximized + + + + + Gets a value indicating whether the ScriptPane is to the right + + + + + Gets a value indicating whether the ScriptPane is on top + + + + + Gets a value indicating editor's Row Height + + + + + Gets a value indicating outputRow's Height + + + + + Gets a value indicating horizontalTool's Height + + + + + Gets a value indicating potentialScriptColumn's Width + + + + + Gets a value indicating inputAndOutputColumn's Width + + + + + Gets a value indicating verticalToolColumnWidth's Width + + + + + Gets a value indicating the vertical tools pane and splitter visibility + + + + + Gets a value indicating whether the horizontal tools pane and splitter visibility + + + + + Gets a value with the information set in SetBindings and used in SetControlProperties + + + + + Gets a value with the information set in SetBindings and used in SetControlProperties regarding + adding and removing columns to a grid + + + + + Gets a value with the information set in SetBindings and used in SetControlProperties regarding + adding and removing rows to a grid + + + + + Layout is an internal property in PowerShellTab, so regular DataBinding doesn't work. There are two workarrounds + in the current code for the issue of Binding to internal properties: + - InternalPropertyBindingConverter, which was not used for 2 reasons: + 1) It doesn't update controls when properties change. We could use explicit update, + but we would need code similar to the code below to fetch individual BindingExpressions and manually + update the targety. + 2) DataBinding for Grid's rows and columns doesn't work well without TwoWay, but TwoWay doesn't + work without setting a Path in the Binding, which breaks the InternalPropertyBindingConverter. + - Wrapping objects in InternalObject, which is not used because wrapping the PowerShellTab causes too many side effects. + + mainWindow control for some of the bindings + runspaceControl for some other bindings + + + + Considers the Side By Side and script editor Expanded states to layout the controls correctly. + Setting the visibility to collapsed as opposed to row heights and column widths to 0 + is an accesibility requirement since narrator reads zero sized controls. + + + + + Called when the editor or console pane change sizes to store + the widths and heights of rows and columns. The sizes are stored as a proportion + to the height for their use in UpdateRowAndColumnSizes. + + editorRow's ActualHeight + output's ActualHeight + potentialScriptColumn's ActualWidth + inputAndOutputColumn's ActualWidth + horizontalTool's ActualHeight + verticalTool's ActualWidth + + + + Populate Layout.gridColumnMaintenanceInformation with the columns that have to be removed/added according to visibility properties + + main window dfor the application + control for the current PowerShellTab + + + + Populate Layout.gridRowMaintenanceInformation with the rows that have to be removed/added according to visibility properties + + main window dfor the application + control for the current PowerShellTab + + + + Gets the control corresponding to the control name in either mainWindow or runspacecontrol + + the main window + the runspaceCon trol + control name + the control corresponding to the control name in either mainWindow or runspacecontrol + + + + Gets the PropertyInfo from this class for the given property name + + property name to get the PropertyInfo from + The PropertyInfo from this class for the given property name + + + + Returns the element starting at and following the control names in . + + Root element to search + control path to seach + The element starting at and following the control names in . + + + + Gets a valid column or width corresponding to size. + + the original size + the valid version of size + + + + Called from UpdateLayoutGridLengths to update the settings for rows when the horizontal tools is present + + editorRow's ActualHeight + output's ActualHeight + horizontal tools pane's ActualWidth + + + + Called from UpdateLayoutGridLengths to update the settings for rows when the horizontal tools is not present + + editorRow's ActualHeight + output's ActualHeight + + + + Called from UpdateLayoutGridLengths to update the settings for columns when the horizontal tools pane is *not* opened + + potentialScriptColumn's ActualWidth + inputAndOutputColumn's ActualWidth + + + + Called from UpdateLayoutGridLengths to update the settings for columns when the horizontal tools pane is *not* opened + + potentialScriptColumn's ActualWidth + inputAndOutputColumn's ActualWidth + vertical tool's pane ActualWidth + + + + Updates Visibilities, Rows, Columns and ColumnSpans + + + + + Sets the values of all properties in this.controlPropertyInformation + + + + + Reads user setting widths and heights into property values. + Uses the stored values of columns and widths to properly size the internal grids. + The proportional sizes and the use of GridUnitType.Star here are essential since + SridsSplitters will push items away from the screen (including the splitter themselves!) + if GridUnitType.Star is not used for both columns/rows surrounding the splitter. + + + + + Reads user settings into row heights when the horizontal tool pane is visible + + + + + Reads user settings into row heights when the horizontal tool pane is *not* visible + + + + + Reads user settings into column widths when the vertical tool pane is *not* visible + + + + + Reads user settings into column widths when the vertical tool pane is visible + + + + + Tokenizes ITextBuffer for powershell scripts in a separate thread. + + + + + Name for the start region comment + + + + + Name for the end region comment + + + + + Used to map {([ to })] + + + + + Empty collection of PSTokens used as an initial result + + + + + Empty dictionary to be used as an initial value for the brace matching results + + + + + Empty region list used as an initial result + + + + + Empty classifications + + + + + Empty error tags + + + + + Flag to let us know what we can skip trying to load the workflow module + + + + + Tokenization tokens + + + + + Tokenization ast + + + + + Dictionary of start braces to end braces + + + + + Dictionary of end braces to start braces + + + + + Regions found when parsing + + + + + The error tags retrieved + + + + + true to return classifications for the console + + + + + classifications retrieved + + + + + Initializes a new instance of the PowerShellTokenizationService class + + editor buffer + true to use the console classifications + + + + Gets the array used to map {([ to })] + + + + + Called after the tokenization is done to figure out which brace matchings should be present + + The text we want spans from + the position where the text starts in the buffer + tokenization result + dicitionary of end brace positions into start brace positions + dicitionary of start brace positions into end brace positions + list of regions + + + + Called to set initial empty tokenization results + + + + + Called from a separate thread to do the tokenization + + span to tokenize + text to tokenize + + + + Called when the buffer tokenization is accurate for the last buffer version + To set the results of tokenization as buffer properties + + + + + Removes properties used as a tag cache + + + + + Called from GetRegionsAndBraceMatchingInformation to deal with comment tokens + + The position where the text starts in the buffer + outline regions + text being tokenized + stach of #region commentsd already found + token with comment + + + + Called from GetRegionsAndBraceMatchingInformation to deal with string tokens + + the position where the text starts in the buffer + dictionary of start braces + dictionary of end braces + outline regions + text being tokenized + string token + + + + Finds c in braces from end to the begining. If c is not in braces, null is returned otherwise + returns the corresponding match and removes it from braces list + + character to look for + list of current braces found + + If c is not in braces, null is returned otherwise returns the corresponding match + + + + + Add an outline region to + + the position where the text starts in the buffer + region text + list we are adding the region to + region start + region end + + + + Add an outline region to + + the position where the text starts in the buffer + region text + list we are adding the region to + region start + region end + text for the region when collapsed + + + + Add an outline region to + + the position where the text starts in the buffer + region text + list we are adding the region to + region start + region end + text for the region when collapsed + tooltip for the region when collapsed + + + + Adds matching information in startBraces and endBraces + + the position where the text starts in the buffer + staer brace dictionary + end brace dictionary + start position + end position + + + + Load the PSWorkflow module if it hasn't already been loaded. + We do this so we get Intellisense/tab completion on workflow parameters + as well as syntax errors specific to workflows. + The module is loaded into a throwaway runspace because we really only + need the right assemblies loaded. + + + + + Add the spans for the tokens nested in an expandable string token. + + The expandable string token with nested tokens. + The start of the full span we tokenized + + + + Add a span for the given parameters. + + The token we want to add a span for + The start of the full span we tokenized + + + + Add a span (if appropriate) for the given parameters. + + The classification type + The start of the span + The length of the span + + + + Adds ErrorTags in addinf ofset + + the start of the span we are tokenizing + errors to add tags for + + + + Information about a brace found in the editor + + + + + The brace character + + + + + The position of the brace + + + + + Initializes a new instance of the BraceInformation struct + + the brace character + the position of the brace + + + + Information used to create the TagSpan of T in the UI thread + + type of tag + + + + error start + + + + + error length + + + + + tag from start to start + length + + + + + Initializes a new instance of the TagInformation struct + + the error start + the error length + the tag from start to start + length + + + + Called from the UI thread to get the error tag if it is valid or null otherwise + + buffer snapshot + the error tag if it is valid or null otherwise + + + + Information used to create a classification in the UI thread + + + + + classification start + + + + + classification length + + + + + classification type from start to start + length + + + + + Initializes a new instance of the ClassificationInformation struct + + the classification start + the classification length + classification type from start to start + length + + + + Gets the classification length + + + + + Gets the classification start + + + + + Gets the classification type from start to start + length + + + + + Host functionality + + + + + Register the HostTextWriter to the runspace + + + + + Set output encoding to the Console Output encoding so that findstr etc work on Non-Default locales + + + + + more function + + + + + psEdit function + + + + + Command to import the ise module + + + + + value indicating we should use a test profile name + + + + + The controller used to run profiles + + + + + Initializes a new instance of the ProfileInvoker class. + + The runspace used to run profiles + + + + Gets or sets a value indicating whether we should use a test profile name + + + + + Adds the variable. + + runspace where to set the variable. + variable name. + variable value. + variable options. + + + + Used in tests to get the profile file names. + + shell id, null for all hosts. + true for current user, false for al users. + The profile file name corresponding to the shellId and forCurrentUser. + + + + Prepares the ISE's runspace with some configuration settings and + helper functionality. + + + + + Loads the ISE's PowerShell module. + + + + + Runs all profiles + + + + + Sets $profile. This is also done in HostUtilities.GetProfileCommands but if NoProfile us used + It has toi be set here + + + + + Base class for all tokenization services. Starts tokenization in a separate thread. + When the tokenization is done, places token information in the + buffer properties and then triggers the event TokenizationComplete.The information is + placed in buffer properties because + + + + + We need FilePath to pass it inside Parser for better experience: + Particularly filePath is needed for 'using module .\...' to resolve against file location. + + + + + Editor buffer + + + + + Controls access to StartTokenizeBuffer so that there is only one thread tokenizing at a time + + + + + The span to tokenize + + + + + Event used by the output to pause tokenization while output is being produced + + + + + Initializes a new instance of the PSBufferTokenizationService class + + editor buffer + + + + Finalizes an instance of the PSBufferTokenizationService class + + + + + Event triggered when the tokenization is done + + + + + Gets or sets the span being tokenized in StartTokenizeBuffer + + + + + Gets the event used by the output to pause tokenization while output is being produced + + + + + Gets the editor buffer + + + + + Dispose method in IDisposeable + + + + + Performs the post construction virtual calls to initialize the service. + Virtual methods cannot be called from constructors. + + + + + Called to tokenize the buffer in a separate thread and to call the callback when tokenization is done + + + + + Called to set initial empty tokenization results + + + + + Called when the buffer tokenization is accurate for the last buffer version + To set the results of tokenization as buffer properties + + + + + Removes properties used as a tag cache + + + + + Called from a separate thread to do the tokenization + + span we are tokenizing + text to be tokenized + + + + Sets the property value in the buffer, removing it if the property is already present + + key of the property to set + value of the property to set + + + + Called to trigger the TokenizationComplete event + + + + + Implements IDisposable logic + + true if being called from Dispose + + + + The root of the application's logic layer + + + + + PowerShellTabs currently opened + + + + + Initializes a new instance of the PSGData class. + + + + + Gets the PowerShellTabs in the application + + + + + Script Editor + + + + + Tooltip used to display variables + + + + + Content of the tooltip used to display variables + + + + + tooltip request that is currently being processed + + + + + Timer used to simulate the mouse hover event + + + + + Initializes a new instance of the ScriptEditor class. + + content type + + + + Callback for the TooltipRequest event + + The original request + The value of the tooltip + + + + Event raised to request the value of the tooltip + + + + + Gets a value indicating whether to display the tooltip or not + + + + + Raises the TooltipRequest event + + event arguments + + + + Returns the span for the ast if the ast can be safely evaluated by the debugger + for the purposes of displaying a tooltip with the expressions value. + + The ast to find the span for + A span, or null + + + + Ensures that the tooltip is displayed only when DisplayTooltip is true + + event sender + event arguments + + + + Starts the timer that displays the tooltip + + event sender + event arguments + + + + Disables the tooltip when the mouse leaves the editor control + + event sender + event arguments + + + + Starts an asynchronous request for the tooltip + + The parameter is not used + + + + Returns the ast at the current mouse position + + The full ast + Ast, or null if there is no ast at the current mouse position + + + + Completes an asyncrhonous request for a tooltip + + tooltip request + value of the tooltip + + + + Arguments to the TooltipRequest event + + + + Expression to evaluate + + + Callback for tooltip request + + + + Initializes a new instance of the TooltipRequestEventArgs class. + Initializes the arguments with an expression + + expression to evaluate + request callback + + + Gets the expression to evaluate + + + Gets the the subscriber must call this function with the result of the evaluating the expression + + + + Manages the saving and restoring of auto save information. + + + + + Timer used to save the files + + + + + Path where files should be saved + + + + + Path where information about auto save files should be saved + + + + + The full path to the file where the information in autoSaveInformation is saved + + + + + Set to true when all paths required for auto saving are available + + + + + Value indicating whether recovery is being performed + + + + + Used to prevent concurrent access to the auto save file information files + + + + + Used for the id of the current processto name the auto save information file + and for the name of the current process to detect if previous auto save + informations should be retrieved in PErformRecovery + + + + + Dictionary with the auto save information. The first key is the PowerShellTab. The second key is ISEFile FullPath. + + + + + Gets a value indicating whether all paths required for auto saving are available + + + + + Gets a value indicating whether recovery is being performed. + + + + + Called when the application starts to perform auto save initialization + + path where files are auto saved + + + + Gets the two booleans representing recovery state + + + True if it has recovered files, but they are all titled and saved. + Titled and saved files will not have an auto save file. + + + True if it has recovered any files at all, with or without auto save files. + + + + + Sets the path where files are auto saved + + config file path + + + + Starts listening for changes in Options' AutoSaveMinuteIntervalStarts to reset the timer when it changes + + + + + Called to discard auto save information + + + + + Starts the Auto Save timer + + + + + Reads the information from one of the auto save files restoring the files + + True if it was able to recover all files + + + + Ensures we have the correct auto save information for all files, deleting information no longer used + and generating the necessary information to reflect the current files. Performing these steps: + 1) Delete auto save information for files that have been closed, and auto save files for files that have been saved. + 2) Create Auto Save information for new files (titled, untitled, saved or unsaved) + 3) Save the auto save information in a file + + + + + Called from DiscardAutoSave to delete all AutoSave information + + + + + Returns true if it is possible to find the process with processId and + it has the same name as the current process + + Process id of the process we want to find + + true if it is possible to find the process with processId and + it has the same name as the current process + + + + + Tries to get a list of the files under path + + directory we want to get files from + list of the files under path or null if it could not be retrieved + + + + Tries to create the directory iof it does not exist + + directory to create + false if it could not be created + + + + Called when the Options properties change to reinstall the timer if AutoSaveMinuteInterval changes + + event sender + event arguments + + + + Installs the auto save timer initially or when AutoSaveMinuteInterval changes + + + + + Stops the auto save timer, if present + + + + + Calls the auto save step method + + ignored event sender + ignored event parameter + + + + Step #1 of 3 of the AutoSave_Tick, delete auto save information for files that have been seved or closed + + + + + Step #2 of 3 of the AutoSave_Tick, create Auto Save information for new files (titled, untitled, saved or unsaved) + + + + + Step #3 of the AutoSave_Tick, saves the AutoSaveInformation file to disk + + + + + Called from PerformRecovery to Fill in the tabs collection with newly created tabs + + the newly created tabs + list of all the auto save informations + True if it was bossible to create all tabs + + + + Called from PerformRecovery to add the info to AutoSaveManager.autoSaveInformation + + the AutoSaveFileInformation to be added + + + + Called from PerformRecovery to add a new ISEFile based on info to its proper + PowerShellTab.files collection. The PowerShellTab is retrieved from powerShellTabs. + + Information used to add a new ISEFile + List of all current PowerShellTabs + true if it was able to add the new ISEFile + + + + Called from TryAddISEFile to actually try to add a new ISEFile based on the auto save information from its parameters + + collection to add the new ISEFile to + The AutoSavedInformation we are basing the new ISEFile on + The newly added ISEFile or null if it could not be added + + + + Called from TryAddAutoSaved to extract the Untitle number auto of the file name and try + to get another Untitled file name with the same number, if possible + + Untitled file name + + A new Untitled file name, possibly using on the same number as the one found in fileName + or a larger number if that one is already taken. + + + + + Auto save information about one ISEFile + + + + + True for when the file has been auto saved, false for when the file has been saved, and does not need an auto save file. + Saved files also require auto save information so they can be restored. They do not required an auto save file. + + + + + Buffer version from the last time the file has been auto saved + + + + + PowerShellTab the file is in + + + + + The path to the auto saved file. This is only valid if isautoSaved is true. + + + + + The full path that comes from ISEFile's FullPath property + + + + + The FileName that comes from ISEFile's FileName property + + + + + The IsUntitled flag that comes from ISEFile's IsUntitled property + + + + + Used because we cannot compare buffer versions if the ISEFile is the same. + The HashCode would probably work fine for this purpose as well + There is only one condition where an ISEFile with the same full path would be + different, if an ISEFile has been opened, an AutoStep happened, + and the ISEFile has been closed and opened again. In this case we can't compare + buffer versions. They can both be 1. + + + + + Initializes a new instance of the AutoSaveFileInformation class + + File this auto save information is going to track + Tab the file belongs to + + + + Prevents a default instance of the AutoSaveFileInformation class from being created from outside this class. + This constructor is called in this classes' ReadFromSerializedXmlString static method. + + + + + Gets or sets a value indicating whether the file has been auto saved. + + + + + Gets or sets the full path that comes from ISEFile's FullPath property + + + + + Gets or sets the file name that comes from ISEFile's FileName property + + + + + Gets or sets a value indicating whether the ISEFile corresponding to this information is untitled. + This value comes from ISEFile's IsUntitled property + + + + + Gets or sets the buffer version from the last time the file has been auto saved + + + + + Gets or sets the PowerShellTab name the file came from + + + + + Gets or sets the AutoSavedFilePath from the file. + This is onli valid is this.IsAutoSaved is true. + + + + + Deserializes fullPath into a List of AutoSaveFileInformation + + deserialized xml path + A List of AutoSaveFileInformation from the deserialized fullPAth + + + + Attempts to write the auto save information file in fullPath with the serialized version of autoSaveFiles + + AutoSaveFileInformation to be saved to fullPath + path of the file to serialize autoSaveFiles to + true if succesfully serialized + + + + Tries to save the auto save file to disk if the ISEFile has not been saved + + ISEFile with the WriteFileToDisk method we will need + true if it was able to save + + + + Tries to delete the AutoSaved file if it is indeed aut saved and its path is found + + + + + Returns true if it can use the auto save information + + autosaveveinformation to validate + true if it can use the auto save information + + + + Gets a well formed file name with no spaces or more than 20 characters + This is meant to make the auto saved file names a bit more related to their + original file names. + + fullPath we want to get the well formed name from + a well formed file name with no spaces or more than 20 characters + + + + Tries to get the FileStream from File.OpenRead out of the path. + + path to get the FileStream from + the FileStream from File.OpenRead or null if it could not be retrieved + + + + Attempts to get the last write time of the file + + full path to the file we want to know the last write time + the last write time of the file or null if iot could not be retrieved + + + + Gets an auto save file path when one is needed in the AutoSavedFilePath property + + an auto save file path when one is needed in the AutoSavedFilePath property + + + + Basic command implementation to be accessed from all toolbars and menus + + + + + Keeps the current dialog while it is opened, and null if it has never been opened + or has been closed. + + + + + Auxilliar in SenderControl_LayoutUpdated + + + + + Flag that indicates if the application has exited from session ending + so that it does not try to exit the application again when the application + receives a Window Closing event + + + + + set from test to indicate there should be no GUI + + + + + Gets or sets a value indicating whether there should be GUI + Set from test to indicate there should be no GUI + + + + + sets the focus in the Script Editor + + + + + sets the focus in the console pane Editor + + + + + Goes to a line of the script editor. + + + + + Returns true if it is possible to go to a line in the script editor. + + true if it is possible to go to a line in the script editor. + + + + Clears the output + + + + + Creates a new (Untitled) script + + + + + Opens a new script + + + + + Gets the filter to use on the Open and Save dialogs + + filter string + + + + Tries to open all files prompting with a MessageBox if failed + + file names + false if any file could not be opened + + + + Opens a new MRU file + + file to be opened + + + + Closes a Script file tab + + + + + returns true if a script can be closed + + true if a script can be closed + + + + returns false if the focus is not in the script editor + or command, or if there is nothing in the clipboard + + false if the focus is not in the script editor + or command, or if there is nothing in the clipboard + + + + Paste text into command or script editors + + + + + returns false if the focus is not in the script editor + or command, or if no text is selected + + false if the focus is not in the script editor + or command, or if no text is selected + + + + Cut text from command or script + + + + + returns false if the focus is not in the script editor + or command or output window, or if there is no text + + false if the focus is not in the script editor + or command or output window, or if no text is selected + + + + Selects all text text from command output or script + + + + + returns false if the focus is not in the script editor + or command or output window, or if no text is selected + + false if the focus is not in the script editor + or command or output window, or if no text is selected + + + + Copy text from command output or script + + + + + Undos the last action on command or script editor + + + + + returns false if the focus is not in the script editor + or command or if there is nothing to undo + + false if the focus is not in the script editor + or command or if there is nothing to undo + + + + returns false if the focus is not in the script editor + or command or if there is nothing to redo + + false if the focus is not in the script editor + or command or if there is nothing to redo + + + + Undos the last action on command or script editor + + + + + Opens the Find dialog + + + + + Finds the next or previous match in the script editor + + true to search up. + + + + Opens the Find dialog + + + + + Returns true if it has an editor with text to be found + + true if it has an editor with text to be found + + + + Returns true if can execute the current script + + true if can execute the current script + + + + Executes the current script + + + + + Returns true if can execute the text currently selected in the script editor + + true if can execute the text currently selected in the script editor + + + + Executes the text currently selected in the script editor + + + + + Returns true if there is no editor with a selection + + true if there is no editor with a selection + + + + Returns true if can execute the current script + + true if can execute the current script + + + + Executes the current script + + + + + Inserts in the console ig it is at the input region or at the end of the input region if it is not + + texct to be insterted in the console + + + + Runs layout + + + + + Runs layout and sets the focus on last editor + Considers the Side By Side and script editor Expanded states to layout the controls correctly. + Setting the visibility to collapsed as opposed to row heights and column widths to 0 + is an accesibility requirement since narrator reads zero sized controls. + + + + + Expands/collapses script editor + + + + + Determines whether "Save" can be executed + + + + + + Saves the current script + + + + + Determines whether "Save As" can be executed + + true if the command can be executed + + + + Saves the current script with the Save dialog + + + + + Returns true if we can increase the font. + + True if we can increase the font. + + + + Returns true if we can decrease the font. + + True if we can decrease the font. + + + + Zooms out for all editors + + + + + Zooms in for all editors + + + + + Toggles the display of outlining + + + + + Returns true if there is a selected file to toggle outline expansion + + true if there is a selected file to toggle outline expansion + + + + Toggles the display of embedded commands + + + + + Returns true if can tooggle embedded comands + + + true if can tooggle embedded comands + + + + + Toggles the expansion of outlining + + + + + Toggles the display of line numbers + + + + + Invokes help, context sensitive or not + + + + + Gets the help command to be used + + help text + coommand to be used + + + + Calls show-command on the command arround the caret + + + + + Calls the update-help command in the current runspace + + + + + Follows the link to online AddOn information + + + + + Follows the link to Script Browser Add-On online information + + + + + Follows the link to Module Browser Add-On online information + + + + + Follows the link to Script Analyzer Add-On online information + + + + + Exits the application normally (Alt+F4, close the application, etc.). + + true if closing the application should be canceled + + + + Exits the application due to a restart/logoff or update install from the restart manager. + + + true when we the user is loggingOff + false for a shut down from instalation applications + + true if closing the ending the session should be canceled + + + + Prompts for saving files and disposes of all PowerShellTabs if we are really exiting + + true if we should not exit the application + + + + Returns true if a new runspace can be created + + true if a new runspace can be created + + + + Creates a new Runspace + + + + + Creates a new remote Runspace + + + + + Returns true if a runspace can be closed + + true if a runspace can be closed + + + + Closes the current runspace + + + + + Executes the "step into" debugger command + + + + + Executes the "step over" debugger command + + + + + Executes the "step out" debugger command + + + + + Returns true if the Run/Continue command can be executed + + true if the Run/Continue command can be executed + + + + Returns true if Break All command can be executed + + true if Break All command can be executed + + + + Resumes execution of the debugger + + + + + Breaks running script into debugger + + + + + Stops the debugger + + + + + Returns true if debugger commands can be executed + + true if debugger commands can be executed + + + + Toggles (add/remove) the breakpoint on the current line + + + + + Enables the breakpoint on the current line + + + + + Disables the breakpoint on the current line + + + + + Deletes all the breakpoints on the current runspace + + + + + Enables all the breakpoints on the current runspace + + + + + Disable all the breakpoints on the current runspace + + + + + Lists the breakpoint on the current runspace + + + + + Returns true if the "list breakpoints" command can be executed + + true if the command can be executed + + + + Lists the call stack on the current runspace + + + + + Returns true if the "toggle breakpoint" command can be executed + + true if the command can be executed + + + + Returns true if the "enable breakpoint" command can be executed + + true if the command can be executed + + + + Returns true if the "disable breakpoint" command can be executed + + true if the command can be executed + + + + Returns true if the "remove all breakpoints" command can be executed + + true if the command can be executed + + + + Returns true if the "enable all breakpoints" command can be executed + + true if the command can be executed + + + + Returns true if the "disable all breakpoints" command can be executed + + true if the command can be executed + + + + Returns true if the runspace is free + + true if the runspace is free + + + + Sets the proper visibility for unique runspace and new runspace tabs + + + + + Update list of runspaces in runspaces menu + + + + + Opens a new instance of the options dialog + + + + + Shows and selects the given addOn tool + + tool to show and select + + + + Moves the selected vertical tool to horizontal + + + + + Sets the focus on the first focusable control in the selected vertical AddOn tool + + + + + Sets the focus on the first focusable control in the selected horizontal AddOn tool + + + + + Moves the selected horizontal tool to vertical + + + + + Returns true if there is a selected horizontal tool + + true if there is a selected horizontal tool + + + + Returns true if there is a selected vertical tool + + true if there is a selected vertical tool + + + + Hides the selected horizontal tool + + + + + Hides the selected vertical tool + + + + + Toggles the vertical AddOn tool pane visibility + + + + + Toggles the horizontal AddOn tool pane visibility + + + + + Returns true if it is possible to toggle the horizontal AddOn Pane's visibility + + true if it is possible to toggle the horizontal AddOn Pane's visibility + + + + Returns true if it is possible to toggle the vertical AddOn Pane's visibility + + true if it is possible to toggle the vertical AddOn Pane's visibility + + + + Starts intellisense explicitly + + + + + This is the starting point for menu commands that are common + between command and script editors like undo, paste, etc. + Gets the editor which has focus (if any), + either the selected script editor or the console pane editor + + The script, console or input editor with focus + + + + Returns a value indicating intellisense can be started + + true if intellisense can be started + + + + Starts Insert Snippets explicitly + + + + + Returns a value indicating Insert Snippet can be started + + true if Insert Snippet can be started + + + + Starts the powershell.exe link or executable + + + + + Goes to a matching character + + + + + Returns true if the caret is in a position that has a matching character + + true if the caret is in a position that has a matching character + + + + Sets the focus on the child of CommandImplementation.controlToReceiveFocus that is first in tab order + + event sender + event arguments + + + + Moves the selected horizontal tool from the visible collection from one collection to the other + + the visible collection with the selected tool to move + the collection to move the tool from + the collection to move the tool to + + + + Hides the selected AddOn tool in the collection + + collection with the tool to hide + + + + Calls the Find or Replace dialogs, activating it if it is already opened + and creating a new one if it is closed + + true for find + true to search up + + + + Resets CommandImplementation.findAndReplaceDialog to null + + event sender + event arguments + + + + Adds to unsavedFiles and unsavedTable unsaved files from runspaceControl + + list of unsaved files + dictionary of unsaved files + potentially unsaved files + + + + Get All Unsaved files from all open runspaces in one list + + unsaved files + + + + Performs all cleanup necessary before exiting the application + + + + + Returns true if there are no Unsaved Files or if the user wants to discard them + + list of unsaved files + true if there are no Unsaved Files or if the user wants to discard them + + + + Gets the encoding to save the filw with. + This is usually the file encoding unless its encoding needs to be upgraded + + file to get the encoding for + the encoding we should save the file with + + + + Calls the Saveas dialog + + file to save as + final file name + + + + Calls SaveAs (if Untitled) or current.Save() + + the editor + null if BasicSaveAs was cancelled or if cirrent.Save threw an exception + or current.FullPath if saving was succesfull + + + + Calls SaveAs and updates fields in the current editor + + current editor + true if SaveAs returned non null + + + + returns false if editor is null or there is no undo operation and updates the Undo menu name + + editor to check for an undo operation + false if editor is null or there is no undo operation + + + + returns false if editor is null or there is no undo operation and updates the Undo menu name + + editor to check for an undo operation + false if editor is null or there is no undo operation + + + + Returns the script, editor or output editors if any of those is selected or null otherwise + + the script, editor or output editors if any of those is selected or null otherwise + + + + Returns the output control for Copy operation, if it is focused + + output control if it is focused + + + + Collapses the script pane if it is maximized, so we can perform operations like going to input and output + + + + + Default value for properties in the Options class + + + + + Color converter used to read colors in user settings + + + + + Readonly dictionary with script and input token colors + + + + + Readonly dictionary with console token colors + + + + + Readonly dictionary with xml token colors + + + + + Gets the default state for the script pane when it is expanded. + + + + + Gets a value indicating whether the default value dor ToolBar visibility is true or false. + + + + + Gets a value indicating whether we should see line numbers. + + + + + Gets a value indicating whether we should see outlining. + + + + + Gets the default colors for the input and script editor tokens + + + + + Gets the default colors for the console tokens + + + + + Gets the default colors when editing an xml file + + + + + Gets the default font size used in the application. + + + + + Gets the default font zoom used in the application. + + + + + Gets the minimum font size + + + + + Gets the maximum font size + + + + + Gets the minimum zoom + + + + + Gets the Maximum value for MruCount + + + + + Gets the maximum zoom + + + + + Gets the zoom increment + + + + + Gets the default font size used in the scripts and console pane. + + + + + Gets the default foreground color for errors. + + + + + Gets the default background color for errors. + + + + + Gets the default foreground color for warnings. + + + + + Gets the default background color for warnings. + + + + + Gets the default foreground color for verbose messages. + + + + + Gets the default background color for verbose messages. + + + + + Gets the default foreground color for debug messages. + + + + + Gets the default background color for debug messages. + + + + + Gets the default background color for console text blocks. + + + + + Gets the default background color for the whole console area. + + + + + Gets the default foreground color for the console text. + + + + + Gets the default background color for scripts. + + + + + Gets the default foreground color for non script files in the script pane. + The default foreground color for script files is specified in . + + + + + Gets a value indicating whether the default vaue for displaying a warning message when opening the same file in different + runspaces regarding the fact that the same editor will be used is true or false. + + + + + Gets a value indicating whether the default vaue for displaying a warning message when saving a script before running is true or false. + + + + + Gets a value indicating whether the default value indicating help should be consulted locally is true or false. + + + + + Gets a value indicating the default interval in minutes for auto saving files. + + + + + Gets a value indicating whether we should display default snippets. + + + + + Gets a value indicating the maximum number of MRU entries + + + + + Gets a value indicating whether we should display Intellisense in the console pane + + + + + Gets a value indicating whether we should Intellisense in the script pane + + + + + Gets a value indicating whether enter selects from the intellisense list in the console pane + + + + + Gets a value indicating whether Enter selects from the intellisense list in the Script pane + + + + + Gets the default timeout for intellisense in seconds + + + + + Converts a StringCollection to a dictionary of token type into color + + token type enumeration + string collection + dictionary of token type into color + default token colors to be used if there is a token color missing from + + + + Converts a dictionary of token color into color to a string collection + + token type enumeration + dictionary of token type into color + string collection + + + + Returns the color corresponding to or if no such color exists. + + color string from the user setting + default color to return if is not valid + the color corresponding to or if no such color exists. + + + + Reads the default token colors from the User Settings default value + + token type enumeration + USer Setting property name + the default token colors from the User Settings default value + + + + Implemented by the caller for writing data in represented by . + + Object of the opened . + + + + Handy utils for document related operations ( like File IO etc. ) + + + + + File extension for temp file. + + + + + Overwrites data in the document as a transacted operation and saves the changes. + + + Data is first copied to the temp file. Afterwards, this temp file replaces the original document as an atomic operation. + This methodology ensures that the original document is not lost in case of any IO failure. + Logic is based on the 'saving document like data' suggestion from : + http://msdn.microsoft.com/en-us/library/windows/desktop/hh802690(v=vs.85).aspx + + The name of the document. It a fully qualified file name. + Call back function implemented by the caller to serialize data in the file stream. + or is a null reference. + Error when any File IO operation has failed. + Error when the format of argument is not valid. + Error when IO operation was attempted on closed object. + + + + Writes data to temp file and saves the changes. + + The name of temp file. + Call back function implemented by the caller to serialize data in the file stream. + or is a null reference. + Error when the caller does not have the required permission. + Error when is not valid. + Error in case of IO operation failure. + Error when the specified path is invalid (for example, it is on an unmapped drive). + Error when access to is denied. + Number of characters in exceed the system-defined maximum length. + contains a colon (:) in the middle of the string. + Error when IO operation was attempted on closed object. + + + + Copies data from temp file to the document mentioned by and deletes the temp file. + If the document does not exists, then the temp file is renamed to + + The name of the document. It a fully qualified file name. + The name of temporary file. + or is either a null reference or an empty string. + Error when or is not valid. + Error when access to or is denied. + Number of characters in or exceed the system-defined maximum length. + Error when an invalid drive was specified. + File or could not be found. + Error in case of IO operation failure. + The operating system is Windows 98 Second Edition or earlier and the files system is not NTFS. + + + + Computes the temporary file name from the given . + The temporary file name is in the same directory path as that of . + + The name of the file whose directory path will be used as directory path of temp file. + The temporary file name. + is either a null reference or an empty string. + Error when is not valid. + + + + Ensures that the syntax of the path of is correct. + + The name of file. It may or may not be a fully qualified file name. + is either a null reference or an empty string. + Error when the caller does not have the required permission. + Error when is not valid. + Error when access to is denied. + Number of characters in exceed the system-defined maximum length. + contains a colon (:) in the middle of the string. + + + + Deletes the file given be name . The function does not throw any exception on failure. + + The name of file to be deleted. + True in case the file is successfully deleted, otherwise false. + + + + Host object representing the whole application. + This class to be unique in the application. + It is internal since an object of type ObjectModelRoot will be used to expose its public properties + along with its own CurrentPowerShellTab and CurrentFile. + + + + + The synchronization context used internally to send/post UI execution. + + + + + The instance of this class that is in current use. + + + + + The main window. + + + + + Dictionary of all the existing shortcut keys, used to prevent adding custom menus with repeated shortcuts. + We use a dictionary for easy lookup. + + + + + The starting point for the data displayed in the application user interface. + + + + + The application options. + + + + + Populated with the initial key bindings from main since this collection is recreated when custom menus + are inserted. + + + + + Last runspace that was selected. + + + + + value indicating whether we run the profile for PowerShellTabs + + + + + value indicating whether we use the MTA option in PowerShellTabs + + + + + Initializes static members of the PSGInternalHost class. + + + + + Initializes a new instance of the PSGInternalHost class. + + + + + Initializes a new instance of the PSGInternalHost class. + + value indicating whether we use the MTA option in PowerShellTabs + value indicating whether we run the profile for PowerShellTabs + + + + Gets the current Application. + + + + + Gets the application options. + + + + + Gets the PowerShellTabs in the application. + + + + + Gets the main window. + + + + + Gets or sets synchronization context used internally to send/post UI execution. + + + + + Gets the starting point for the data displayed in the application user interface. + + + + + Gets a value indicating whether we use the MTA option in PowerShellTabs + + + + + Gets a value indicating whether we run the profile for PowerShellTabs + + + + + Creates Options, PSGData and MainWindow + + + + + Checks if the given keyGesture is already present in our dictionary of KeyGestures + + keyGesture to check + true if it is already present + + + + Causes the reclassification of all output editors when toggling high contrast + + + + + Causes the reclassification on all editors when high contrast is toggled. + + + + + Called when this.lastPowerShellTab changes or an item is added to lastSelectedPowerShellTab.AddOnsMenu + to update the current Tools window menu item (if any) with the menu items derived from + lastSelectedPowerShellTab.AddOnsMenu + + + + + Adds the given gesture to the dictionary of KeyGestures + + keyGesture to add + resource id with the gesture + + + + Gets the resource id corresponding to the gesture + + keyGesture to look up + The resource ide corresponding to gesture + + + + Validate that all shortcut resources are valid InputGestures, that there + are no duplicate shortcuts + + + + + Gets the index of _ not followed by another _ + + string to get the _ index from + the index of _ not followed by another _ + + + + Called from VerifyMainWindowAccelerators to check for an accelerator duplication + + table with current accelerators + header containing accelerator + + + + Called to monitor the state of the ExpandedScript property to actually expand or collapse the editor + + event sender + event arguments + + + + Expands script editor + + the runspace in which to collapse the script editor + + + + Collapses script editor + + the runspace in which to collapse the script editor + + + + Adds menu items to show tools in toolCollection + + parent menu item to add submenus to + collection with the tools to be turned into menu items to show them + currently selected tool in the collection + position to insert the items in + + + + Checks for duplicate accelerators + + + + + Monitors changes in the SelectedAddOnTool property to update the menus when it changes + + event sender + event arguments + + + + Monitors changes to the tools submenu of the all AddOnTools collections to potentially populate + The Window menu if the collection changed in the current PowerShellTab + + event sender + event arguments + + + + Called to load the options and respond to their initial values. + + event sender. + event arguments. + + + + Callled when the collection of PowerShellTabs changes. + + event sender + event arguments + + + + Adds the menu items corresponding to add on tools + + parent menu item to add submenus to + + + + Monitors changes to the tools submenu of the all PowerShellTabs to potentially populate + The Window menu if the collection changed in the current PowerShellTab + + event sender + event arguments + + + + Called to update the state of the run/stop buttons when the pipeline stops + + event sender + event arguments + + + + Called when the Option's TokenColors change to reset the classifications + + event sender + event arguments + + + + Called when the Option's ConsoleTokenColors change to reset the classifications + + event sender + event arguments + + + + Called when the Option's XmlTokenColors change to reset the classifications + + event sender + event arguments + + + + Montitors changes in the options starting the appriopriate GUI response. + + event sender. + event arguments. + + + + Updates the Zoom and Scroll Visibility in all editors, as well as the font name and size + + + + + Called when the SelectedPowerShellTab changes. + + event sender + event arguments + + + + Monitors the changes in this.lastSelectedPowerShellTab.Files. + + event sender. + event arguments. + + + + Interaction logic for ColorPicker.xaml + + + ColorPicker + + + + + The number of rows in the rectangle grid + + + + + The number of columns in the rectangle grid + + + + + A standard factor for dimming colors when the control is disabled + + + + + A standard floor for dimming colors when the control is disabled + + + + + A flag indicating whether the control has already been initialized + + + + + An array of predefined colors + + + + + An array of names for the predefined colors + + + + + A lookup collection of standard .net colors + + + + + A flag to toggle whether to respond to events + + + + + The current selected color + + + + + A combo box item that indicates the current color isn't a standard .net color + + + + + A collection of colors in their Enabled state + + + + + A collection of colors in their Disabled state + + + + + A collection of color names to use for AutomationProperties.Name in the rectangles grid. + + + + + The state of the hexadecimal checkbox + + + + + Initializes a new instance of the ColorPicker class and then sets up the bright and dim colors + + + + + This event is raised to indicate that the current color has changed + + + + + This enum lets the caller specify what UI elements to update when the color is changed + + + + + Flag to select text boxes + + + + + Flag to select sliders + + + + + Flag to select the combo box + + + + + Gets or sets the current selected color + + + + + This method generates a color on a scale from a starting color to black + + The maximum range of the scale + How far along the axis we've progressed + The color we started out with + A scaled color + + + + This method defines the colors for the color rectangles and creates a corresponding set of dim colors + + + + + Handle the event when the control is initially loaded + + A reference to the sender + Arguments which tell us more about the event + + + + Handles the click event for rectangles + + A reference to the sender + Arguments which tell us more about the event + + + + This method retrieves the current color from the contents of the text boxes + + A color represented by the contents of the text boxes + + + + Handles the event when the red text box is changed + + A reference to the sender + Arguments which tell us more about the event + + + + Handles the event when the green text box is changed + + A reference to the sender + Arguments which tell us more about the event + + + + Handles the event when the blue text box is changed + + A reference to the sender + Arguments which tell us more about the event + + + + Handles the event when the hexadecimal check box is checked + + A reference to the sender + Arguments which tell us more about the event + + + + Handles the event when the hexadecimal check box is unchecked + + A reference to the sender + Arguments which tell us more about the event + + + + Handles the event when the red slider is moved + + A reference to the sender + Arguments which tell us more about the event + + + + Handles the event when the green slider is moved + + A reference to the sender + Arguments which tell us more about the event + + + + Handles the event when the blue slider is moved + + A reference to the sender + Arguments which tell us more about the event + + + + Handles the event when the combo box is changed + + A reference to the sender + Arguments which tell us more about the event + + + + This method sets the current color and optionally updates some controls on the UI to match it + + The new color + The controls to update + + + + This method does the real work of updating the controls in the UI + + The new color + The controls to update + + + + Do the work to disable or enable subordinate controls when the main control is disabled or enabled + + + + + Handle the event that happens when the control is disabled or enabled + + A reference to the sender + Arguments which tell us more about the event + + + + InitializeComponent + + + + + This is a serializable class that represents a named set of ISE UI colors and a font and font size selection. It also abstracts storage for a set of predefined and + user customizable color themes. + + + + + The registry key under HKEY_CURRENT_USER where themes are stored. + + + + + The maximum size for a sanitized theme name -- slightly less than MAX_PATH + + + + + The name of the theme + + + + + The name of the font + + + + + The size of the font + + + + + Keys for the color collection + + + + + Values for the color collection + + + + + Gets the keys collection so it's available for serialization. + + + + + Gets the values collection so it's available for serialization. + + + + + Gets or sets the name of the theme + + + + + Gets or sets the name of the font + + + + + Gets or sets the size of the font + + + + + Gets a list of available themes, including all of the themes in the store as well as all of the preset themes. + + + + + This indexer implements dictionary-like behavior using two arrays. It doesn't actually index the keys, so it's less performant than a real dictionary, + but the number of entries in the collection will always be low, and (most importantly) it's easily serializable to XML. + + The key to look up + The value, or 'Black' if the item isn't in the collection + + + + This indexer allows the caller to pass in a default value to be returned if the key isn't in the list. + + The key to look up + The default color to return + A color + + + + This operator overload allows the caller to compare two themes by value, excluding the Name property + + One of the themes to compare + The other theme + True or False, depending on whether the contents are the same + + + + This is the not-equals counterpart to == + + The first object to compare + The second object to compare + True or false + + + + This is equivalent to == + + The object to compare + true or false + + + + This override creates a hashcode based on XORs of the hashcodes of the font name, font size, colors, and color keys + + An integer hashcode that corresponds to the settings in the theme + + + + This method clones an existing color theme object + + The theme to clone + A new theme with the same contents + + + + This method creates a color theme from an ISE options object + + The object + The name to give the new theme + A new theme + + + + This method deserializes an XML string and returns a new theme object + + The XML to deserialize + A new theme object + + + + This method reads XML out of a file and deserializes it into a theme object + + The full path and name of the file. + A new theme object + + + + This method enumerates the names of the stored themes. Note that these aren't the actual names in the themes, but whatever names the store uses to identify + them. (e.g. Registry value names or file names) + + A list of unique strings + + + + This method retrieves one theme from the store + + The store-specific unique name of the theme + A new theme object + + + + This method saves one theme to the store + + The theme object to store + + + + This method deletes one theme from the store + + The theme to delete + + + + This method returns true or false depending on whether a color key is defined in the theme. + + The key to look up + True or false + + + + Gets a name that's sanitized so it can be used in a file path, etc. + + True or false depending on whether you want to remove or escape non-alphanumeric characters + A name that can be used in a file path, etc. + + + + This method applies the settings in a theme to an ISE options object. + + The object to apply settings to. + + + + This method attempts to apply a color theme to an ISEOptions object and returns a collection of error messages + + A theme with known good values to fall back to + A collection of error messages + + + + This method serializes a theme to XML. + + True to make it human-readable, false to make it a single line of text + Serialized XML + + + + This method serializes a theme and writes it to a file. + + The full path and name of the file. + + + + This generic method safely gets a color from a dictionary or returns a default if it's not defined. + + The type of the key + The dictionary to get the color from + The key to look up + The color to return if the key doesn't exist + A color or the default + + + + Interaction logic for ManageThemesWindow.xaml + + + ManageThemesWindow + + + + + Wildcard filter for enumerating theme files + + + + + The extension for a theme file + + + + + The full extension for a theme file + + + + + The name of the selected theme + + + + + The actual selected theme + + + + + The current active theme + + + + + A collection of available themes, cached so we don't have to look them up every time + + + + + A flag to indicate whether the current theme matches one of the available themes + + + + + Initializes a new instance of the ManageThemesWindow class and opens a new instance of the window with an initial, potentially unsaved, theme selected. + + The initial theme + + + + Gets the theme the user selected. + + + + + Check whether a theme is one of the presets, so we can disable the delete and rename buttons. + + The name of the theme to check. + True or false + + + + Initialize the UI. + + A reference to the sender + Arguments which tell us more about the event + + + + If the selection in the list box is changed, look the selected theme up in the list of available themes. + + A reference to the sender + Arguments which tell us more about the event + + + + Import a new theme from a file. + + A reference to the sender + Arguments which tell us more about the event + + + + Export the selected theme to a file. + + A reference to the sender + Arguments which tell us more about the event + + + + Delete the selected theme. + + A reference to the sender + Arguments which tell us more about the event + + + + Rename the selected theme. If the user renames the 'custom' theme, this really saves it to the store. + + A reference to the sender + Arguments which tell us more about the event + + + + Close the dialog box and return 'true' to indicate the selected theme has changed. + + A reference to the sender + Arguments which tell us more about the event + + + + Close the dialog box and return 'false' to indicate that we shouldn't change the current theme. + + A reference to the sender + Arguments which tell us more about the event + + + + Get a list of available themes from the store and cache them in a local list. + + + + + Enumerate the available themes and populate the list box according to them. + + + + + InitializeComponent + + + + + Options dialog GUI implementation strings + + + + Resource string: "Options" + + + Resource string: "Restore _Defaults" + + + Resource string: "_Cancel" + + + Resource string: "_Apply" + + + Resource string: "_OK" + + + Resource string: "General" + + + Resource string: "Script Pane Behavior" + + + Resource string: "_Show Outlining" + + + Resource string: "S_how Line Numbers" + + + Resource string: "_Warn About Duplicate Files" + + + Resource string: "_Prompt to Save Before Run" + + + Resource string: "Position:" + + + Resource string: "_Top" + + + Resource string: "_Right" + + + Resource string: "_Maximized" + + + Resource string: "Intellisense" + + + Resource string: "Sh_ow in the Console Pane" + + + Resource string: "Show i_n the Script Pane" + + + Resource string: "_Enter Selects Intellisense" + + + Resource string: "Ente_r Selects Intellisense" + + + Resource string: "Timeout in Seconds:" + + + Resource string: "Other Settings" + + + Resource string: "Use _Local Help" + + + Resource string: "Show the tool bar" + + + Resource string: "_Use Default Snippets" + + + Resource string: "_Autosave Interval in Minutes:" + + + Resource string: "Recent _Files to Show:" + + + Resource string: "Colors and Fonts" + + + Resource string: "Manage Themes..." + + + Resource string: "_Fixed-Width Fonts Only" + + + Resource string: "Sample:" + + + Resource string: "Font Family:" + + + Resource string: "Font Size:" + + + Resource string: "Current Theme:" + + + Resource string: "Background" + + + Resource string: "Text Background" + + + Resource string: "Foreground" + + + Resource string: "Console Pane" + + + Resource string: "Background" + + + Resource string: "Script Pane" + + + Resource string: "PowerShell Tokens" + + + Resource string: "Attribute" + + + Resource string: "Command" + + + Resource string: "Command Argument" + + + Resource string: "Command Parameter" + + + Resource string: "Comment" + + + Resource string: "Group End" + + + Resource string: "Group Start" + + + Resource string: "Keyword" + + + Resource string: "Line Continuation" + + + Resource string: "Loop Label" + + + Resource string: "Member" + + + Resource string: "Number" + + + Resource string: "Operator" + + + Resource string: "Statement Separator" + + + Resource string: "String" + + + Resource string: "Type" + + + Resource string: "Variable" + + + Resource string: "PowerShell Tokens" + + + Resource string: "Attribute" + + + Resource string: "Command" + + + Resource string: "Command Argument" + + + Resource string: "Command Parameter" + + + Resource string: "Comment" + + + Resource string: "Group End" + + + Resource string: "Group Start" + + + Resource string: "Keyword" + + + Resource string: "Line Continuation" + + + Resource string: "Loop Label" + + + Resource string: "Member" + + + Resource string: "Number" + + + Resource string: "Operator" + + + Resource string: "Statement Separator" + + + Resource string: "String" + + + Resource string: "Type" + + + Resource string: "Variable" + + + Resource string: "XML Tokens" + + + Resource string: "Comment" + + + Resource string: "Comment Delimiter" + + + Resource string: "Element Name" + + + Resource string: "Markup Extension" + + + Resource string: "Attribute" + + + Resource string: "Quote" + + + Resource string: "Quoted String" + + + Resource string: "Tag" + + + Resource string: "Text" + + + Resource string: "CharacterData" + + + Resource string: "Output Streams" + + + Resource string: "Background" + + + Resource string: "Foreground" + + + Resource string: "Background" + + + Resource string: "Foreground" + + + Resource string: "Background" + + + Resource string: "Foreground" + + + Resource string: "Background" + + + Resource string: "Foreground" + + + Resource string: "Red" + + + Resource string: "Green" + + + Resource string: "Blue" + + + Resource string: "Hexadecimal" + + + Resource string: "Import..." + + + Resource string: "Export..." + + + Resource string: "Delete" + + + Resource string: "Rename" + + + Resource string: "Cancel" + + + Resource string: "The theme cannot be renamed because another theme already exists with that name." + + + Resource string: "{0} (1)" + + + Resource string: "The font "{0}" specified in the theme file isn't installed on your computer. The current font will be preserved." + + + Resource string: "The font size "{0}" specified in the theme file isn't in the valid range of 6 to 32. The current font size will be preserved." + + + Resource string: "The following errors occurred while importing the theme:\r\n\r\n{0}" + + + Resource string: "# This is a PowerShell comment." + + + Resource string: "'Length:'" + + + Resource string: "This is a Quoted String, surrounded by Quotes." + + + Resource string: " This is a Comment, surrounded by Comment Delimiters." + + + Resource string: "This is Text." + + + Resource string: "This is Character Data." + + + Resource string: "This is some normal output text." + + + Resource string: "Write-Error \"This is an Error.\" : This is an Error." + + + Resource string: "WARNING: This is a Warning." + + + Resource string: "VERBOSE: This is Verbose output." + + + Resource string: "DEBUG: This is Debug output." + + + Resource string: "Dark Console, Light Editor (default)" + + + Resource string: "Light Console, Dark Editor" + + + Resource string: "Dark Console, Dark Editor" + + + Resource string: "Light Console, Light Editor" + + + Resource string: "Monochrome Green" + + + Resource string: "Presentation" + + + Resource string: "The value entered for the number of recent files to show must be between {0} and {1}." + + + Resource string: "The following errors occurred while validating the settings. Please correct them and try again:" + + + Resource string: "Restore defaults?" + + + Resource string: "Restore Defaults Confirmation" + + + Resource string: "The theme name can't be empty or consist only of whitespace characters." + + + Resource string: "This is an example of some text in the script pane." + + + Resource string: "Manage Themes" + + + + Interaction logic for MainWindow.xaml + + + OptionsWindow + + + + + The current ISEOptions object passed in by the caller + + + + + The color theme the dialog is currently working on + + + + + The color theme we started out with, so we can tell if it has changed since the UI opened + + + + + The current state of the general settings controls + + + + + The original state of the general settings controls + + + + + The current selected item from the tree view + + + + + Initializes a new instance of the OptionsWindow class and initializes it + + + + + Initializes a new instance of the OptionsWindow class based on a set of ISE options. + + The current options. + + + + This method updates the UI based on the current settings in the options object. + + + + + This method resets all of the options based on the defaults specified in $psise.options.defaultoptions + + + + + Populate the font name and size combo boxes. + + + + + Populate the name of the currently selected theme, or indicate that it's a user-customized theme. + + + + + This method validates whether the current settings are valid and displays a message box if they aren't + + True or false, depending on whether the settings were valid + + + + Handle the event from clicking the restore defaults button + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the color picker's current color is changed + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the fixed-width-only checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when someone selects a different tree view item + + An object representing the sender of the event + An object containing information about the event + + + + Update the rich-text sample box based on the currently selected colorable item, or the default if none is selected. + + + + + Update the state of the buttons based on whether the user has changed any settings + + + + + Handle the event when the show outlining checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the show outlining checkbox is unchecked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the show line numbers checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the show line numbers checkbox is unchecked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the duplicate files checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the duplicate files checkbox is unchecked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the prompt to save checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the prompt to save checkbox is unchecked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when someone selects a different script pane position + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the console pane intellisense checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the console pane intellisense checkbox is unchecked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the enter selects in console pane checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the enter selects in console pane checkbox is unchecked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the intellisense in script pane checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the intellisense in script pane checkbox is unchecked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the enter selects in script pane checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the enter selects in script pane checkbox is unchecked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when someone selects a different intellisense timeout + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the use local help checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the use local help checkbox is unchecked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the show console pane on top checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the show console pane on top checkbox is unchecked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the use default snippets checkbox is checked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when the use default snippets checkbox is unchecked + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when someone changes the autosave interval + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event when someone changes the MRU count + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event from clicking the cancel button + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event from clicking the apply button + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event from clicking the OK button + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event from changing the font selection + + An object representing the sender of the event + An object containing information about the event + + + + Handle the event from changing the font size selection + + An object representing the sender of the event + An object containing information about the event + + + + If the user clicks "Manage Themes...", open the UI that lets them add, edit, delete, etc. + + A reference to the sender + An object containing information about the event + + + + If the tree view gets focus and there's no selected node, select the first node. This makes the node visible for keyboard navigation. + + A reference to the sender + An object containing information about the event + + + + InitializeComponent + + + + + This class exposes a collection of preset color and font themes. + + + + + A dictionary collection for storing preset themes + + + + + This theme contains the default ISE colors. + + + + + This theme contains light console and dark editor settings + + + + + This theme contains light settings for both the console and editor + + + + + This theme contains dark settings for both the console and editor. + + + + + This theme contains monochrome green settings + + + + + This theme has high contrast and a large font for doing demos + + + + + Gets the dictionary + + + + + This class abstracts a 'sample', which is a list of colored tokens for displaying text coloring settings before they're applied to the actual UI. A sample consists + of a series of 'part' objects, that each have a foreground color, an optional background color, a piece of text, and an optional CRLF. + + + + + This constant is added to the font size in documents to make it roughly match what the ISE displays at zoom level 100. + + + + + This is a buffer value in device-independant pixels to be added to line measurements so the anti-word-wrap magic works. + + + + + A static collection of samples to display when different tree view items are selected + + + + + A list of colored text parts for the sample + + + + + The color theme for the sample + + + + + The key representing the background color of the sample + + + + + The typeface for the font + + + + + Gets the predefined samples + + + + + Gets the list of text parts for this sample + + + + + Sets the color theme + + + + + Sets the color theme key that indicates the background color to use + + + + + Gets the background color, as translated from the background color key + + + + + This method renders the current sample as a FlowDocument that can be passed to a RichTextBox control + + The FlowDocument + + + + This method builds a sample for the script pane, when the script pane displays a text file + + A new rich text sample object + + + + This method builds a sample for the script pane + + A new rich text sample object + + + + This method builds a sample for the script pane + + A new rich text sample object + + + + This method builds a sample for the script pane + + A new rich text sample object + + + + This method builds a sample for the script pane + + A new rich text sample object + + + + This method looks up the typeface for the current font and stores it so we don't have to look it up for every subsequent measurement of a text part + + The name of the current font + + + + This method measures a single text part in the current font + + The string to measure + The font size + The width of the rendered string in pixels + + + + This class contains helper methods for working with colors and fonts + + + + + This is the offset of the one-byte PANOSE number in the Unicode version of the OUTLINETEXTMETRIC structure. + + + + + Graphics context for loading and testing fonts + + + + + The handle of the graphics context + + + + + Collection for storing a list of font family objects so they don't have to be generated every time we reference them + + + + + Collection for keeping track of which fonts are symbol fonts like WingDings, so their names can be displayed + in a human-readable font in the UI + + + + + Collection for keeping track of which fonts are not symbol fonts like WingDings, so their names can be displayed + in a human-readable font in the UI + + + + + Gets a dictionary of cached font families + + + + + Returns a sorted list of available font names + + Flag to specify monospace only + An additional font name to include in the list + The list of font names + + + + This method tests whether a font is truly monospace, based on comparing the width of the 'A' and 'l' characters. If they're equal, the font + is considered monospace. + + The name of the font + True or false + + + + This method dims a color by multiplying the R, G, and B values by a decimal number + + The color to scale + How much to scale (0 to 1 inclusive) + A value to add to make the resulting color not be dark + A dimmed color + + + + This method returns either black or white, depending on which color has the higher contrast ratio with + the background color provided. + + The background color + Colors.Black or Colors.White + + + + This method tests whether a font has been identified as a symbol font, so its name can be displayed + in the UI with a human-readable font + + The name of the font + True or false depending on whether it's a symbol font + + + + This method calculates a luminance factor for one color channel to support finding the overall contrast + ratio between two colors. + + The color to whump on + The luminance factor + + + + This method calculates the combined luminance for three color channels of a color + + The color to evaluate + The luminance + + + + This method calculates the contrast ratio between two display colors, based on the formula in the + W3C Web Content Accessibility Guidelines at http://www.w3.org/TR/WCAG20-TECHS/. + + The foreground color + The background color + The contrast ratio + + + + This class stores the state of options dialog settings before they are applied to the live options object + + + + + How frequently to save edited scripts + + + + + Intellisense timeout + + + + + How many files to show in the MRU list + + + + + Whether the script pane should be on top, right, or maximized + + + + + Whether to show default snippets + + + + + Enables intellisense in the console pane + + + + + Enables intellisense in the script pane + + + + + Shows line numbers in the editor + + + + + Shows outlining in the editor + + + + + Toggles the tool bar + + + + + Enables warnings before automatically saving scripts + + + + + Enables warnings when you edit duplicate scripts + + + + + Enables using enter to select intellisense in the console pane + + + + + Enables using enter to select intellisense in the script pane + + + + + Enables using local help + + + + + Gets or sets how frequently to save edited scripts + + + + + Gets or sets the intellisense timeout + + + + + Gets or sets how many files to show in the MRU list + + + + + Gets or sets whether the script pane should be on top, right, or maximized + + + + + Gets or sets a value indicating whether to show default snippets + + + + + Gets or sets a value indicating whether to enable intellisense in the console pane + + + + + Gets or sets a value indicating whether to enable intellisense in the script pane + + + + + Gets or sets a value indicating whether to show line numbers in the editor + + + + + Gets or sets a value indicating whether to show outlining in the editor + + + + + Gets or sets a value indicating whether to show the tool bar + + + + + Gets or sets a value indicating whether to show before automatically saving scripts + + + + + Gets or sets a value indicating whether to show warnings when you edit duplicate scripts + + + + + Gets or sets a value indicating whether to enable using enter to select intellisense in the console pane + + + + + Gets or sets a value indicating whether to enable using enter to select intellisense in the script pane + + + + + Gets or sets a value indicating whether to enable using local help + + + + + This override does the same as Equals() + + The first object to compare + The second object to compare + True or false + + + + This does the opposite of == + + The first object to compare + The second object to compare + True or false + + + + This isn't currently used anywhere, so just return the default + + The default hash code from .Net + + + + This override compares two instances of this type by comparing all of the fields + + The other instance + True or false + + + + This method creates an instance of the type from an existing ISEOptions object + + The ISE options + A new instance of this type + + + + This method applies the settings in this instance to an ISEOptions object + + The ISE options + + + + This method applies the settings in this instance to an ISEOptions object and + returns a collection of error strings if some of the settings can't be applied + + The ISE options + The collection to populate + + + + This method validates the settings object by applying it to a dummy ISEOptions object + + A collection of error messages to populate + True or false depending on whether the settings are correct + + + + This class abstracts a single section of colored text in a sample. + + + + + The text content of the part + + + + + The key to the color dictionary that represents the foreground color of the part + + + + + The key to the color dictionary that represents the background color of the part + + + + + A flag to indicate whether this part is followed by a new line + + + + + Initializes a new instance of the RichTextPart class with all the settings. + + Foreground color key + Background color key + The text to use as the content + A flag indicating an optional linefeed + + + + Initializes a new instance of the RichTextPart class with no background color defined. + + Foreground color key + The text to use as the content + A flag indicating an optional linefeed + + + + Initializes a new instance of the RichTextPart class with no background color or linefeed defined + + Foreground color key + The text to use as the content + + + + Gets the text in the text part + + + + + Gets the foreground color key + + + + + Gets the background color key + + + + + Gets a value indicating whether the text part is followed by a new line + + + + + Interop methods, constants and structures needed for named pipes. + + + + + Constant used in the call to SystemParametersInfo + + + + + WindowText color constant + + + + + Window color constant + + + + + ActiveCaption color constant + + + + + Button Shadow (SystemColors.ControlDarkDarkColor) color constant + + + + + Item(s) selected in a control. + Default color used by the editor for selection + + + + + Text for item selected in a control. + + + + + Gets the color for hyperlink text. + + + + + Grayed (disabled) text. This color is set to 0 if the current display driver does not support a solid gray color. + Default color used by the editor for sinactive election + + + + + Flag to check in the true return of SystemParametersInfo + + + + + Message received to indicate a system color change that will be triggered for High Contrast. + + + + + Message received when the theme changes. + + + + + The WM_QUERYENDSESSION message is sent when the user chooses to end the session or when an application calls one of the system shutdown functions. + + + + + The WM_ENDSESSION message is sent to an application after the system processes the results of the WM_QUERYENDSESSION message. + The WM_ENDSESSION message informs the application whether the session is ending. + + + + + Posted to the window with the keyboard focus when a nonsystem key is pressed. + A nonsystem key is a key that is pressed when the ALT key is not pressed. + + + + + Posted to the window with the keyboard focus when the user presses the F10 key (which activates the menu bar) + or holds down the ALT key and then presses another key. It also occurs when no window + currently has the keyboard focus; in this case, the WM_SYSKEYDOWN message is sent to the + active window. The window that receives the message can distinguish between these two contexts + by checking the context code in the lParam parameter. + + + + + The user is logging off in WM_QUERYENDSESSION or WM_ENDSESSION. + + + + + Constant used in HtmlHelpDisplayTopic to display a help topic. + + + + + Constant used in HtmlHelpDisplayTopic to close all help windows. + + + + + Flags for the RegisterApplicationRestart function + + + + None of the options below. + + + Do not restart the process if it terminates due to an unhandled exception. + + + Do not restart the process if it terminates due to the application not responding. + + + Do not restart the process if it terminates due to the installation of an update. + + + Do not restart the process if the computer is restarted as the result of an update. + + + + Gets a System Color. + + Color index + the System Color corresponding to . + + + + Retrieves or sets the value of one of the system-wide parameters. This function can also update the user profile while setting a parameter. + + The system-wide parameter to be retrieved or set. We only used it with NativeMethods.SPI_GETHIGHCONTRAST. + size of pvParam. + HIGHCONTRAST structure + Boolean that, if a system parameter is being set, specifies whether the user profile is to be updated, and if so, whether the WM_SETTINGCHANGE message is to be broadcast to all top-level windows to notify them of the change. + True if it was able to retrieve the parameter. + + + + API used to figure out if we are in classic mode + + False if we are in classic mode. + + + + Closes all help windows. + + + + + Called to display a particular help topic + + caller from the unmanaged API + file and help topic link + the return value of the underlying native API + + + + This function maps a wide-character string to a new character string. The new character string is not necessarily from a multibyte character set. + + The code page used to perform the conversion. + The handling of unmapped characters. + wide-character string to be converted. + The number of Unicode (16-bit) characters in the string pointed to by the lpWideCharStr parameter + buffer to receive the translated string + The size in bytes of the buffer pointed to by the lpMultiByteStr parameter. + Pointer to the character used if a wide character cannot be represented in the specified code page. If this parameter is NULL, a system default value is used. + flag that indicates whether a default character was used + + If cbMultiByte is nonzero, the number of bytes written to the buffer pointed to by lpMultiByteStr + indicates success. If cbMultiByte is zero, the required size, in bytes, for a buffer that can receive + the translated string indicates success. + Zero indicates failure. + + + + + Registers the active instance of an application for restart. + + + A pointer to a Unicode string that specifies the command-line arguments for the application when it is restarted. + The maximum size of the command line that you can specify is RESTART_MAX_CMD_LINE characters. Do not include the name of the executable + in the command line; this function adds it for you. + If this parameter is NULL or an empty string, the previously registered command line is removed. If the argument contains spaces, + use quotes around the argument. + + One of the options specified in RestartFlags + + This function returns S_OK on success or one of the following error codes: + E_FAIL for internal error. + E_INVALIDARG if rhe specified command line is too long. + + + + + Native API for getting extended properties of fonts. This is used by the options dialog to + tell whether a font is a symbol font like WingDings + + Handle of the device context to use + Number of bytes to return + Buffer in which to return bytes + The number of bytes written to the buffer + + + + Native API for loading a font into a device context + + Handle to the device context + Handle to the object (font) to load + Handle of the previous loaded object + + + + Basic native API for help file invocation + + the help caller + the help file + the help command + the command data + the return of the underlying native API + + + + Structure used in WPFHelper's IsHighContrast + + + + + Size of the structure + + + + + Return value from SystemParametersInfo + + + + + IntPtr.Zero in our call to SystemParametersInfo + + + + + Declare the COM coclass for IHxHelpPane. + + + + + Declare the interface for launching AP Client help topics. + + + + + Display a task given a url. + + Url of a task to display. + + + + Display the contents given a url. + + Url of contents to display. + + + + Search for help topics with the given query. + + Search query to display + + + + Contains all the strings that should not be localized. + The comments in each field are the justification for the strings not to be localized + + + + category suffix = "Console" + + + + String used in outlining to represent more information = "..." + + + + buffer property = "PSXMLTokens" + + + buffer property = "PSXMLErrors" + + + buffer property = "PSXMLRegions" + + + buffer property = "PSXMLRegionTags" + + + buffer property = "PSTokens" + + + buffer property = "PSAst" + + + buffer property = "PSSpanTokenized" + + + buffer property = "PSTokenSpans" + + + buffer property = "PSStartBrace" + + + buffer property = "PSEndBrace" + + + buffer property = "PSTokenErrors" + + + buffer property = "PSTokenErrorTags" + + + buffer property = "PSRegions" + + + buffer property = "PSRegionTags" + + + The prefix for launching a topic with AP client. The guid of the topic is appended to this prefix. + + + HelpLink maps to fwlink?linkID=275852 + + + method name = "Save" + + + method name = "SaveAse" + + + progress tracing message = "Progress with id {0} cannot be added under itself." + + + progress tracing message = "Progress with id {0} was not found." + + + command name= "{0} {1} {2}" + + + function name= "AddConsoleInputBlockingFunction" + + + function name= "Launch" + + + executable name= "powershell.exe" + + + Undo stack marker id = "TopMarker" + + + Resource identifier for the application = "GuiStrings" + + + Open/Save dialog filter = "{0}(*.ps1, *.psm1, *.psd1, *.ps1xml, *.pssc, *.psrc, *.cdxml)|*.ps1;*.psm1;*.psd1;*.ps1xml;*.pssc..." + + + command = "out-default" + + + command = "Out-String" + + + command parameter = "-Stream" + + + command = ". {0}" + + + command = "profile" + + + command = "psUnsupportedConsoleApplications" + + + command = "$psUnsupportedConsoleApplications" + + + command = "psLocalHelp" + + + command = "psOnlineHelp" + + + command = "$psLocalHelp" + + + command = "$psOnlineHelp" + + + command = "psISE" + + + command = "https://go.microsoft.com/fwlink/?LinkID={0}" + + + command = "{0}::/html/{1}.htm" + + + command = "$pshome" + + + default prompt = "PS> " + + + error stripper helper = "+ " + + + Extension for scripts = ".ps1" + + + Extension for modules = ".psm1" + + + Extension for data files = ".psd1" + + + Extension for session configuration files = ".pssc" + + + Extension for role capability files = ".psrc" + + + Content type for xml = "PS1Xml" + + + Extension for powershell xml = ".ps1xml" + + + Extension for xml = ".xml" + + + Extension for xaml = ".xaml" + + + Extension for cdxml = ".cdxml" + + + Extension for cdxml = ".xsl" + + + Extension for cdxml = ".xsd" + + + Used to check if the first line of a file starts with the XML preamble, identifying it as an XML file. + + + line break = "\n" + + + complete line break = "\r\n" + + + editor content type = "text" + + + text buffer property name = "GPSColorSpansForOutputClassifier" + + + text buffer property name = "TextMarkerProvider" + + + text buffer property name = "GPSTokenColorsForPowerShellClassifier" + + + control identifyer = "TextOutput" + + + classification type = "PS1ConsoleGaps" + + + classification typ = "PS1ScriptGaps" + + + classification typ = "PS1HighContrast" + + + control identifyer = "NonScript" + + + editor content type = "powershell" + + + command string = "prompt" + + + resource name = "pack://application:,,,/Microsoft.PowerShell.GPowerShell;component/StyleDictionary.xaml" + + + assembly name = "Microsoft.PowerShell.Editor,Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" + + + ShellId = "Microsoft.GPowerShell" + + + Control name = "runspaceControl" + + + Control presenter ContentSource = "SelectedContent" + + + command name = "bookmark" + + + command name = "breakpoint" + + + command name = "currentstatement" + + + command name = "returnstatement" + + + command name = "stepbackcurrentstatement" + + + Error location not localized in powershell.exe = "At {0}:{1} char:{2}" + + + Error line not localized in powershell.exe = "line" + + + Error format not localized in powershell.exe = "{0}\r\n{1}\r\n + CategoryInfo : {2}\r\n + FullyQualifiedErrorId : {3}" + + + shortcut functionality name used in assertion = "Unindent" + + + Hardcoded because Tab is Hardcoded = "Shift+Tab" + + + command = "\r\nif ($?) {{$psISE.CurrentPowerShellTab.DisplayName = '{0}'}}" + + + command = "enter-pssession {1}\r\nif ($?) {{$psISE.CurrentPowerShellTab.DisplayName = '{0}'}}" + + + command = "enter-pssession {1} -credential:{2}\r\nif ($?) {{$psISE.CurrentPowerShellTab.DisplayName = '{0}'}}" + + + Lucida Console + + + command name = "KeyboardDisplayName" + + + command name = "powershell_ise.exe -noprofile" + + + command name = "Literaly: GPowerShellAutoSaveMutex" + + + command name = "Literaly: AutoSaveFiles" + + + command name = "Literaly: AutoSaveInformation" + + + Format string = "PS1OutputForeground{0:X2}{1:X2}{2:X2}{3:X2}Background{4:X2}{5:X2}{6:X2}{7:X2}" + + + buffer property = "LastWordReplacementSpan" + + + buffer property = "LineUpToReplacementSpan" + + + buffer property = "SelectOnEmptyFilter" + + + Note name that identifies an error = "writeErrorStream" + + + Error category for errors that do not contain an ErrorRecord = "ISE.ReportException" + + + + Subset of non localizable strings that are property names + + + + property name = "CaretColumn" + + + property name = "CaretLine" + + + property name = "ExecuteScript" + + + property name = "Prompt" + + + property name = "GraphicalPrompt" + + + property name = "PromptBracket" + + + property name = "GraphicalPromptAutomationName" + + + property name = "StatusText" + + + property name = "ExecuteEnabled" + + + property name = "IsSaved" + + + property name = "IsRecovered" + + + property name = "DisplayName" + + + property name = "Extension" + + + property name = "ExpandedScript" + + + property name = "ShowCommands" + + + property name = "IsUntitled" + + + property name = "FullPath" + + + property name = "FullPath" + + + property name = "MainWindowTop" + + + property name = "MainWindowLeft" + + + property name = "MainWindowWidthSetting" + + + property name = "MainWindowHeightSetting" + + + property name = "FontSize" + + + property name = "Zoom" + + + property name = "ZoomLabel" + + + property name = "FontName" + + + property name = "ErrorForegroundColor" + + + property name = "ErrorBackgroundColor" + + + property name = "WarningForegroundColor" + + + property name = "WarningBackgroundColor" + + + property name = "DebugForegroundColor" + + + property name = "DebugBackgroundColor" + + + property name = "VerboseForegroundColor" + + + property name = "VerboseBackgroundColor" + + + property name = "ConsolePaneBackgroundColor" + + + property name = "ConsolePaneTextBackgroundColor" + + + property name = "ConsolePaneForegroundColor" + + + property name = "ScriptPaneBackgroundColor" + + + property name = "ScriptPaneForegroundColor" + + + property name = "SelectedPowerShellTab" + + + property name = "SelectedFile" + + + property name = "SelectedAddOnTool" + + + property name = "PowerShellTabs" + + + property name = "ShowWarningForDuplicateFiles" + + + property name = "ShowWarningBeforeSavingOnRun" + + + property name = "SelectedScriptPaneState" + + + property name = "ShowDefaultSnippets" + + + property name = "ShowToolBar" + + + property name = "ShowOutlining" + + + property name = "ShowLineNumbers" + + + property name = "UseLocalHelp" + + + property name = "IsVisible" + + + property name = "HorizontalAddOnToolsPaneOpened" + + + property name = "VerticalAddOnToolsPaneOpened" + + + property name = "CanInvoke" + + + property name = "AutoSaveMinuteInterval" + + + property name = "MruCount" + + + property name = "TokenColors" + + + property name = "ConsoleTokenColors" + + + property name = "XmlTokenColors" + + + property name = "ShowIntellisenseInConsolePane" + + + property name = "ShowIntellisenseInScriptPane" + + + property name = "UseEnterToSelectInConsolePaneIntellisense" + + + property name = "UseEnterToSelectInScriptPaneIntellisense" + + + property name = "IntellisenseTimeoutInSeconds" + + + + Subset of non localizable strings that are member names + + + + member name = "Add" + + + member name = "Move" + + + + Subset of non localizable strings that are command names + + + + command name = "OpenMruFile" + + + command name = "GoToMatch" + + + command name = "Find" + + + command name = "Replace" + + + command name = "NewScript" + + + command name = "OpenScript" + + + command name = "SaveScript" + + + command name = "SaveScriptAs" + + + command name = "CloseScript" + + + command name = "Undo" + + + command name = "Redo" + + + command name = "Cut" + + + command name = "Copy" + + + command name = "Paste" + + + command name = "Help" + + + command name = "SelectAll" + + + command name = "ShowScriptPaneRight" + + + command name = "ShowScriptPaneTop" + + + command name = "ShowScriptPaneMaximized" + + + command name = "StartPowerShell" + + + command name = "GoToLine" + + + command name = "ToggleScriptingPane" + + + command name = "ToggleToolBar" + + + command name = "GoToConsolePane" + + + command name = "GoToEditor" + + + command name = "Exit" + + + command name = "FindNext" + + + command name = "NewRemotePowerShellTab" + + + command name = "OpenOptionsDialog" + + + command name = "FindPrevious" + + + command name = "RunScript" + + + command name = "RunSelection" + + + command name = "Stop" + + + command name = "NewRunspace" + + + command name = "CloseRunspace" + + + command name = "ShowRunspace" + + + command name = "ShowScript" + + + command name = "CustomScript" + + + command name = "StepInto" + + + command name = "StepOver" + + + command name = "StepOut" + + + command name = "ResumeDebugger" + + + command name = "BreakAllDebugger" + + + command name = "StopDebugger" + + + command name = "ToggleBreakpoint" + + + command name = "ToggleBreakpoint" + + + command name = "ToggleBreakpoint" + + + command name = "RemoveAllBreakpoints" + + + command name = "ClearOutput" + + + command name = "FindDialogReplaceAll" + + + command name = "MoveScriptToTopOrRightCmd" + + + command name = "EnableAllBreakpoints" + + + command name = "DisableAllBreakpoints" + + + command name = "GetCallStack" + + + command name = "ListBreakpoints" + + + command name = "ZoomIn" + + + command name = "ZoomOut" + + + command name = "ToggleHorizontalAddOnPane" + + + command name = "ToggleVerticalAddOnPane" + + + command name = "HideHorizontalAddOnTool" + + + command name = "HideVerticalAddOnTool" + + + command name = "MoveHorizontalAddOnToolToVertical" + + + command name = "MoveVerticalAddOnToolToHorizontal" + + + command name = "GoToVerticalAddOnTool" + + + command name = "GoToHorizontalAddOnTool" + + + command name = "ShowAndSelectAddOnTool" + + + command name = "StartIntellisense" + + + command name = "ShowOutlining" + + + command name = "ToggleEmbeddedCommands" + + + command name = "ShowLineNumbers" + + + command name = "ToggleOutliningExpansion" + + + command name = "UpdateHelp" + + + command name = "ShowSnippet" + + + command name = "AboutAddOnTools" + + + command name = "ShowPopupCommand" + + + command name = "ScriptBrowserAddOnCommand" + + + command name = "ModuleBrowserAddOnCommand" + + + command name = "ScriptAnalyzerAddOnCommand" + + + + Subset of non localizable strings that are keyboard shortcuts + + + + shortcut = "Ctrl+T" + + + shortcut = "Ctrl+W" + + + + Subset of non localizable strings that are automation id's + + + + Automation Id = "CustomMenu" + + + Automation Id = "GraphicalPowerShellMainWindow" + + + Automation Id = "Output" + + + Automation Id = "DirectInput" + + + Automation Id = "Editor" + + + Automation Id = "ContextMenu" + + + Automation Id = "ContextMenuCut" + + + Automation Id = "ContextMenuCopy" + + + Automation Id = "ContextMenuPaste" + + + Automation Id = "StartIntellisense" + + + Automation Id = "ShowSnippet" + + + Automation Id = "ContextMenuToggleBreakpoint" + + + Automation Id = "ContextMenuDisableBreakpoint" + + + Automation Id = "ContextMenuEnableBreakpoint" + + + Automation Id = "ContextMenuRunSelection" + + + + Entry point class + + + + + Timeout used in a cleanup loop + + + + + True while the program is starting + + + + + Valid system font names to validate font changes. + + + + + Gets a value indicating whether the program is starting + + + + + Gets and constructs a dictionary of installed fonts + + + + + Initializes the non visual aspects of the application + + Returned -1 if initialization failed or 0 if it succeded + + + + Called from NamedPipeServer when we receive a file name from another instance of powershell_ise.exe + + list of files to open + + + + Creates an application object and displays the main window + + files to be opened on startup + true to start ISE on the MTA mode + true not to run the profile + callback to be called when the window is loaded + + + + Checks if the font in fontName is valid + + font name to check for + true if the font in fontName is valid + + + + Looks up a font name and returns the same with standard capitalization. For example, 'aRiAl' returns 'Arial'. + + The font name to re-case + The same font name in standard case + + + + Verifies thtat the default font is valid and falls back to "Lucida Console" if it is not + + + + + Tries to save the configuration file + + path to be used in error message + true if it was possible to save the config file + + + + Tries to get and load the configuration. + + The object. + + + + Deletes the existing configuration file for the current application and loads the new configuration. + + The that occurred during the first attempt of loading the user configuration file. + The existing configuration file to delete. + The object of the user configuration file. Null reference in case the user configuration cannot be loaded or the user does not want to delete the exiting user config file. + + + + Attempts to load the configuration file for the current application. + + The object of the user configuration file. Null reference in case the user configuration cannot be loaded. + Error in case of the configuration file loading. + + + + Displays a message if there is auto save information + + true if the auto save information is only for titled and saved files + true if there is any auto save information + + + + Provides an error message for problems before we have a parent main window + + message caption + message string + + + + Displays an error message with buttons. + + Header of the message. + Message to display. + Returns the user selection. + + + + Fill in strings that mention shortcuts with the localized shortcut names. + + + + + Gets the display string for the given shortcut + + shortcut to get the display string from + The display string for the given shortcut + + + + Creates and the application object and initializes resources + + the application object + + + + Called for a one time focus set to the console or output on the first Runspace + + event sender + event arguments + + + + Localizable Text inside of Controls + + + + "Resource String: Progress Indicator" + + + "Resource String: Vertical AddOn Splitter" + + + "Resource String: Vertical AddOn" + + + "Resource String: Horizontal AddOn Splitter" + + + "Resource String: Horizontal AddOn" + + + "Resource String: ToolBar" + + + "Main Window" + + + "Replace Text" + + + "Find what text" + + + "Resource String: Output" + + + "Resource String: Editor" + + + "Main Menu" + + + "PowerShell Tab" + + + "PowerShell Tabs" + + + "Script Pane" + + + "Script Tools" + + + "Collapse Script Pane" + + + "Application Status" + + + "Font Size Selection" + + + "Script Splitter" + + + "Script Expander" + + + "Debug Prompt" + + + "Nested Prompt" + + + "Resource String: Prompt" + + + + Strips underscores out of a UI string for use as an automation name. + + The UI string from which underscores will be stripped. + + + + Color Names used in options + + + + + Color Name = AliceBlue + + + + + Color Name = AntiqueWhite + + + + + Color Name = Aqua + + + + + Color Name = Aquamarine + + + + + Color Name = Azure + + + + + Color Name = Beige + + + + + Color Name = Bisque + + + + + Color Name = Black + + + + + Color Name = BlanchedAlmond + + + + + Color Name = Blue + + + + + Color Name = BlueViolet + + + + + Color Name = Brown + + + + + Color Name = BurlyWood + + + + + Color Name = CadetBlue + + + + + Color Name = Chartreuse + + + + + Color Name = Chocolate + + + + + Color Name = Coral + + + + + Color Name = CornflowerBlue + + + + + Color Name = Cornsilk + + + + + Color Name = Crimson + + + + + Color Name = Cyan + + + + + Color Name = DarkBlue + + + + + Color Name = DarkCyan + + + + + Color Name = DarkGoldenrod + + + + + Color Name = DarkGray + + + + + Color Name = DarkGreen + + + + + Color Name = DarkKhaki + + + + + Color Name = DarkMagenta + + + + + Color Name = DarkOliveGreen + + + + + Color Name = DarkOrange + + + + + Color Name = DarkOrchid + + + + + Color Name = DarkRed + + + + + Color Name = DarkSalmon + + + + + Color Name = DarkSeaGreen + + + + + Color Name = DarkSlateBlue + + + + + Color Name = DarkSlateGray + + + + + Color Name = DarkTurquoise + + + + + Color Name = DarkViolet + + + + + Color Name = DeepPink + + + + + Color Name = DeepSkyBlue + + + + + Color Name = DimGray + + + + + Color Name = DodgerBlue + + + + + Color Name = Firebrick + + + + + Color Name = FloralWhite + + + + + Color Name = ForestGreen + + + + + Color Name = Fuchsia + + + + + Color Name = Gainsboro + + + + + Color Name = GhostWhite + + + + + Color Name = Gold + + + + + Color Name = Goldenrod + + + + + Color Name = Gray + + + + + Color Name = Green + + + + + Color Name = GreenYellow + + + + + Color Name = Honeydew + + + + + Color Name = HotPink + + + + + Color Name = IndianRed + + + + + Color Name = Indigo + + + + + Color Name = Ivory + + + + + Color Name = Khaki + + + + + Color Name = Lavender + + + + + Color Name = LavenderBlush + + + + + Color Name = LawnGreen + + + + + Color Name = LemonChiffon + + + + + Color Name = LightBlue + + + + + Color Name = LightCoral + + + + + Color Name = LightCyan + + + + + Color Name = LightGoldenrodYellow + + + + + Color Name = LightGray + + + + + Color Name = LightGreen + + + + + Color Name = LightPink + + + + + Color Name = LightSalmon + + + + + Color Name = LightSeaGreen + + + + + Color Name = LightSkyBlue + + + + + Color Name = LightSlateGray + + + + + Color Name = LightSteelBlue + + + + + Color Name = LightYellow + + + + + Color Name = Lime + + + + + Color Name = LimeGreen + + + + + Color Name = Linen + + + + + Color Name = Magenta + + + + + Color Name = Maroon + + + + + Color Name = MediumAquamar + + + + + Color Name = MediumBlue + + + + + Color Name = MediumOrchid + + + + + Color Name = MediumPurple + + + + + Color Name = MediumSeaGreen + + + + + Color Name = MediumSlateBlue + + + + + Color Name = MediumSpringGreen + + + + + Color Name = MediumTurquoise + + + + + Color Name = MediumVioletRed + + + + + Color Name = MidnightBlue + + + + + Color Name = MintCream + + + + + Color Name = MistyRose + + + + + Color Name = Moccasin + + + + + Color Name = NavajoWhite + + + + + Color Name = Navy + + + + + Color Name = OldLace + + + + + Color Name = Olive + + + + + Color Name = OliveDrab + + + + + Color Name = Orange + + + + + Color Name = OrangeRed + + + + + Color Name = Orchid + + + + + Color Name = PaleGoldenrod + + + + + Color Name = PaleGreen + + + + + Color Name = PaleTurquoise + + + + + Color Name = PaleVioletRed + + + + + Color Name = PapayaWhip + + + + + Color Name = PeachPuff + + + + + Color Name = Peru + + + + + Color Name = Pink + + + + + Color Name = Plum + + + + + Color Name = PowderBlue + + + + + Color Name = Purple + + + + + Color Name = Red + + + + + Color Name = RosyBrown + + + + + Color Name = RoyalBlue + + + + + Color Name = SaddleBrown + + + + + Color Name = Salmon + + + + + Color Name = SandyBrown + + + + + Color Name = SeaGreen + + + + + Color Name = SeaShell + + + + + Color Name = Sienna + + + + + Color Name = Silver + + + + + Color Name = SkyBlue + + + + + Color Name = SlateBlue + + + + + Color Name = SlateGray + + + + + Color Name = Snow + + + + + Color Name = SpringGreen + + + + + Color Name = SteelBlue + + + + + Color Name = Tan + + + + + Color Name = Teal + + + + + Color Name = Thistle + + + + + Color Name = Tomato + + + + + Color Name = Transparent + + + + + Color Name = Turquoise + + + + + Color Name = Violet + + + + + Color Name = Wheat + + + + + Color Name = White + + + + + Color Name = WhiteSmoke + + + + + Color Name = Yellow + + + + + Color Name = YellowGreen + + + + + Localizable AutomationNames + + + + "Resource String: Ln" + + + "Resource String: Col" + + + "Resource String: _File" + + + "_New Script" + + + "_Open Script..." + + + "_Save Script" + + + "Save Script _As..." + + + "_Run Script" + + + "R_un Selection" + + + "_Close Script" + + + "C_lose Runspace" + + + "Resource String: E_xit" + + + "Resource String: _Edit" + + + "Resource String: _Paste" + + + "Resource String: Cu_t" + + + "Resource String: _Copy" + + + "Resource String: _Undo" + + + "Resource String: _Redo" + + + "Select _All" + + + "_Find in Script..." + + + "Go to _Match" + + + "Find _Next in Script" + + + "Find Pre_vious in Script" + + + "R_eplace in Script..." + + + "Resource String: _View" + + + "_Zoom In" + + + "_Zoom Out" + + + "Start PowerShell" + + + "New Remote PowerShell Tab" + + + "Resource String: _Tools" + + + "New Remote PowerShell Tab" + + + "_Go To Line..." + + + "Line Number:" + + + "Go To Line" + + + "Show Sc_ript Pane" + + + "Show ToolBar" + + + "Show Script Pane Right" + + + "Show Script Pane Top" + + + "Show Script Pane Maximized" + + + "Resource String: Administrator:" + + + "Resource String: Find" + + + "Resource String: _Replace" + + + "Resource String: _Help" + + + "Windows PowerShell ISE" + + + "The file you are about to open is already opened in another PowerShell Tab. The same editor will be shared in both runspaces." + + + "You cannot edit any script files in Windows PowerShell ISE while the debugger is running. To edit a script, stop the debugger." + + + "The script you are about to run will be saved." + + + "Windows PowerShell Help" + + + "Replace _All" + + + "Regular e_xpressions" + + + "Search _up" + + + "Re_place with:" + + + "_Find Next" + + + "Fi_nd what:" + + + "Match _case" + + + "_Whole word" + + + "Resource String: Cancel" + + + In the future, do not show this message + + + Resource String: "Replace" + + + "Find in _selection" + + + "Resource String: Debug" + + + "Resource String: _AddOns" + + + "Resource String: Script" + + + "Resource String: Completed" + + + "Resource String: Stopping" + + + "Resource String: Running" + + + "Not Started" + + + "Resource String: Failed" + + + "Resource String: Stopped" + + + "New Remote PowerShell Tab" + + + "_User name:" + + + "Resource String: _Computer:" + + + "_User name:" + + + "Resource String: _Computer:" + + + "You will be asked for credentials when you connect." + + + "Resource String: Co_nnect" + + + "Show-Command button text: Run" + + + "Show-Command button text: Copy" + + + "Show-Command button text: Insert" + + + "Show-Command text: Show On Startup" + + + "Script Browser Add-On" + + + "Module Browser Add-On" + + + "Script Analyzer Add-On" + + + + Localizable ToolTips + + + + "Close Tool" + + + "Move Script Pane Right." + + + "Move Script Pane Up." + + + "Resource String: Cut" + + + "Resource String: Copy" + + + "Resource String: Paste" + + + "Run Command" + + + "Stop Execution (Ctrl+Brk)" + + + "Resource String: Prompt" + + + "Run Script (F5)" + + + "Run Selection (F8)" + + + "Clear Console" + + + "Open Script" + + + "Close Script" + + + "Save Script" + + + "Resource String: Undo" + + + "Resource String: Redo" + + + "New Script" + + + "Hide Script Pane" + + + "Hide AddOn Tools Pane" + + + "Font Size" + + + "Start PowerShell.exe in a separate window" + + + "New Remote PowerShell Tab" + + + "Show Script Pane Top" + + + "Show Script Pane Right" + + + "Show Script Pane Maximized" + + + "Show Command Window" + + + "Show Command Add-on" + + + + Contains all the strings that should be localized. + The comments in each field are supposed to be the string itself and should be kept in sync with + the resources files. + + + + + "Resource string: {0} = {1}" + + + + + "Resource string: {0}..." + + + + + Cannot start {0}. Interactive console applications are not supported. To run the application, use the Start-Process cmdlet or use "Start PowerShell.exe" from the File menu. + To view/modify the list of blocked console applications, use {1}, or consult online help." + + + + "Resource string: {0}" + + + "Unable to start {0}." + + + "Replace All" + + + "Resource string: Untitled" + + + "_New PowerShell Tab" + + + "Resource string: {0}{1}" + + + "Go to _Script Pane" + + + "Resource string: Stop" + + + "The files below have not been saved. Do you really want to {0}?\n\n{1}" + + + "Windows PowerShell ISE - Warning" + + + "Windows PowerShell ISE - Error" + + + "Application cannot run because of an error in a user settings file. Click OK to restore default settings and continue, or click Cancel to exit.{0}{1}." + + + "PowerShell Scripts" + + + "PowerShell Files" + + + "Text Files" + + + "XML Files" + + + "PowerShell Script Modules" + + + "PowerShell XML files" + + + "PowerShell Data files" + + + "All Files" + + + "_Close PowerShell Tab" + + + "Show Runspace" + + + "Show Script" + + + "PowerShell {0}" + + + "Save {0}?" + + + "Resource string: *" + + + "[Read Only]" + + + "Resource string: {0}{1} {2}" + + + "Parse errors detected" + + + "Already running a command. Please wait" + + + "Cannot Find "{0}"." + + + "{0}\nSome of the character(s) in the script are not supported in the orignal file encoding. Saving the file in the original encoding may cause data loss. Do you want to save the file in the Unicode encoding?" + + + "_Step Into" + + + "Step O_ver" + + + "Step O_ut" + + + "S_top Debugging" + + + Resource string: "_Continue" + + + Resource string: "Break _All" + + + "_Toggle Breakpoint" + + + "Enable Breakpoint" + + + "Disable Breakpoint" + + + "Remove All Breakpoints" + + + "Enable All Breakpoints" + + + "Disable All Breakpoints" + + + "Display Call Stack" + + + "List Breakpoints" + + + "Hit breakpoint {0}" + + + "Error loading source file '{0}' ({1})" + + + "Stopped at: {0}" + + + "Error executing profile: {0}" + + + "Resource string: _Add-ons" + + + "Warning: Control+C will copy the selected text to the clipboard. If you wish to stop the running command, either unselect the text or use Control+Break." + + + "'Lucida Console' for English, and 'MS Gothic' for Japanese" + + + "Description: {0}" + + + "Path: {0}" + + + "Default (used in Snippet tooltip for default snippets)" + + + + Calls String.Format with CultureInfo.CurrentUICulture + + is repassed to String.Format + is repassed to String.Format + the return of String.Format + + + + Localizable error messages + + + + + Cannot add or change items in the collection. + + + + + Default options cannot be set. + + + + + The argument: '{0}' must be a full path. + + + + + The font name: '{0}' is not valid. + + + + + Cannot add submenus if the {0} property is not null. + + + + + "{0}" should have at least one element. + + + + + Value must be null. + + + + + Cannot add this object the collection. You can call the {0} method with no parameters and the {1} method. + + + + + Cannot set object in the collection. + + + + "{0} should be greater than or equal to {1}." + + + "Selection can only be set to a member of the collection." + + + "The menu '{0}' uses shortcut '{1}', which is already in use by the menu or editor functionality." + + + "The shortcut '{0}' does not have the required keyboard modifier for non function keys." + + + "The menu '{0}' has already been added to a parent menu." + + + "The menu '{0}' is a parent menu of '{1}'." + + + "Cannot execute script." + + + "Cannot execute unsaved script." + + + "The file cannot be saved in the current encoding." + + + "{0} cannot be used for Untitled files, please use {1}." + + + "Cannot close unsaved file: '{0}'." + + + "Cannot add a runspace past the maximum number." + + + "This collection should contain at least one Runspace." + + + "Unable to save {0}: {1}" + + + "Unable to load {0}: {1}" + + + "Cannot save the file with the name of an already opened file." + + + "Cannot enter nested prompt because too many nested prompts are already running." + + + "The application cannot start because it could not access the user settings file: '{0}'." + + + "The application cannot save the user settings file: '{0}'." + + + + Localizable host error messages + + + + Cannot display the prompt for "{0}" because type "{1}" cannot be loaded." + + + + Localizable shortcuts + + + + "Resource string: Ctrl+Alt+Home" + + + "Resource string: Ctrl+Alt+End" + + + "Resource string: Ctrl+Shift+M" + + + "Resource string: Shift+Backspace" + + + "Resource string: Shift+Right" + + + "Resource string: Shift+Left" + + + "Resource string: Shift+Up" + + + "Resource string: Shift+Down" + + + "Resource string: Shift+Home" + + + "Resource string: Shift+End" + + + "Resource string: Shift+PageUp" + + + "Resource string: Shift+Next" + + + "Resource string: Shift+Return" + + + "Resource string: Ctrl+Shift+Right" + + + "Resource string: Ctrl+Shift+Left" + + + "Resource string: Ctrl+Shift+Home" + + + "Resource string: Ctrl+Shift+End" + + + "Resource string: Ctrl+Shift+U" + + + "Resource string: Alt+Shift+T" + + + "Resource string: Alt+Left" + + + "Resource string: Alt+Right" + + + "Resource string: Alt+Down" + + + "Resource string: Alt+Up" + + + "Resource string: Ctrl+Backspace" + + + "Resource string: Ctrl+Delete" + + + "Resource string: Ctrl+A" + + + "Resource string: Ctrl+Right" + + + "Resource string: Ctrl+Left" + + + "Resource string: Ctrl+Home" + + + "Resource string: Ctrl+End" + + + "Resource string: Ctrl+Up" + + + "Resource string: Ctrl+Down" + + + "Resource string: Ctrl+U" + + + "Resource string: Ctrl+Z" + + + "Resource string: Alt+Back" + + + "Resource string: Ctrl+Y" + + + "Resource string: Alt+Shift+Back" + + + "Resource string: F1" + + + "Resource string: Control+Add" + + + "Resource string: Control+F" + + + "Resource string: Control+[" + + + "Resource string: Ctrl+H" + + + "Resource string: Ctrl+N" + + + "Resource string: Ctrl+O" + + + "Resource string: Ctrl+S" + + + "Resource string: Ctrl+F4" + + + "Resource string: Control+Shift+Add" + + + "Resource string: Control+Plus" + + + "Resource string: Control+Shift+Plus" + + + "Resource string: Control+Subtract" + + + "Resource string: Control+Shift+Subtract" + + + "Resource string: Control+Minus" + + + "Resource string: Control+Shift+Minus" + + + "Resource string: Control+G" + + + "Resource string: Control+Shift+P" + + + "Resource string: Control+R" + + + "Resource string: Control+1" + + + "Resource string: Control+2" + + + "Resource string: Control+3" + + + "Resource string: Control+I" + + + "Resource string: Alt+F4" + + + "Resource string: Control+Q" + + + "Resource string: F3" + + + "Resource string: Shift+F3" + + + "Resource string: Control+V" + + + "Resource string: Shift+Ins" + + + "Resource string: Control+X" + + + "Resource string: Shift+Del" + + + "Resource string: Control+C" + + + "Resource string: Control+Ins" + + + "Resource string: F5" + + + "Resource string: Ctrl+B" + + + "Resource string: F8" + + + "Resource string: Control+Break" + + + "Resource string: Control+T" + + + "Resource string: Control+W" + + + "Resource string: F11" + + + "Resource string: F10" + + + "Resource string: Shift+F11" + + + "Resource string: Shift+F5" + + + "Resource string: F9" + + + "Resource string: Control+Shift+F9" + + + "Resource string: Control+Shift+D" + + + "Resource string: Control+Shift+L" + + + + Helper class to call PSParser.Tokenize + + + + + Calls PsParser.Tokenize with script and errors + + The parameter is repassed to Parser.ParseInput + The parameter is repassed to Parser.ParseInput + The parameter is repassed to Parser.ParseInput + The parameter is repassed to Parser.ParseInput + The return value of PsParser.Tokenize + + + + Class used to classify xml editor buffers + + + + + Declares a new content type called powershell, derived from text and used for the classification + + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + classification type definition + + + + Initializes a new instance of the PSXmlClassifier class. + + buffer to classify + + + + Called to set the colors for the tokens according to the tokencolors passed. + + Collection of token colors. + Collection of all default colors used to clear the brushes not specified in + + + + Given a SnapshotSpan, this method returns a list of ClassificationSpans that we want + to classify in the given SnapshotSpan + + span to classify + list of ClassificationSpans that we want to classify in the given SnapshotSpan + + + + Provides the IClassifier for PowerShell syntax highlighting + + + + + Provides the IClassifier for PowerShell syntax highlighting + + text buffer we're classifying + the IClassifier for PowerShell syntax highlighting + + + + Provides the error tags for the "xml" content + + + + + Initializes a new instance of the PSXmlErrorTagger class + + the editor view + the editor buffer + + + + Event that will force retagging a span + + + + + Gets or sets the editor view + + + + + Gets or sets the editor buffer + + + + + Returns the error tags for the giving span + + span to retrieve tags for + the error tags for the giving span + + + + Triggers the event that will force retagging a span + + span to tag + + + + Removes the instance of this object added in the constructor in case the content changes + + event sender + event arguments + + + + Provides the PSXmlErrorTagger for the "ps1xml" content + + + + + Creates the PSXmlErrorTagger for the "powershell" content + + type of tagger + editor TextView + editor Buffer + the PSXmlErrorTagger for the "powershell" content + + + + Provides the outline tags for the "ps1xml" content + + + + + Initializes a new instance of the PSXmlOutliningTagger class + + the editor buffer + + + + Event that will force retagging a span + + + + + Gets or sets the editor buffer + + + + + Returns the outline tags for the giving span + + span to retrieve tags for + the outline tags for the giving span + + + + Triggers the event that will force retagging a span + + span to tag + + + + Removes the instance of this object added in the constructor in case the content changes + + event sender + event arguments + + + + Provides the PSXmlOutliningTagger for the "PS1XML" content + + + + + Creates the PSXmlOutliningTagger for the "PS1XML" content + + type of tagger + editor Buffer + the PSXmlOutliningTagger for the "PS1XML" content + + + + Color information about an XML token + + + + + xml token type + + + + + token start + + + + + token length + + + + + Initializes a new instance of the XmlTokenInformation class. + + token start + token length + token type + + + + Gets the xml token type + + + + + Gets the token start + + + + + Gets or sets the token length + + + + + Tokenizes ITextBuffer for xml files in a separate thread. + + + + + Used as an initial value for errors + + + + + Used as an initial value for outlines + + + + + Used as an initial value for tokens + + + + + Tokenizer used in Tokenize() + + + + + Initializes a new instance of the XmlTokenizationService class. + + editor text buffer + + + + Called to set initial empty tokenization results + + + + + Called when the buffer tokenization is accurate for the last buffer version + To set the results of tokenization as buffer properties + + + + + Removes properties used as a tag cache + + + + + Called from a separate thread to do the tokenization + + span to tokenize + span to tokenize text + + + + Tokenizes xml string content + + + + + characters opening a CDATA section + + + + + characters closing a CDATA section + + + + + Resulting tokens + + + + + Main tokenization state + + + + + Detailed tokenization state + + + + + Position within the xml string + + + + + string being tokenized + + + + + Index of the last color added in AddClassification + + + + + List of errors in the xml + + + + + List of outlined regions in the xml + + + + + Set to true in the initial parsing when the last classification was a tag + to avoid merging angle brackets closing an element with angle brackets + opening the next element + + + + + Initializes a new instance of the XmlTokenizer class + + + + + Main tokenization state + + + + Initial state + + + After the start angle brackets + + + After a single quote + + + After a comment + + + After an element name + + + After a xaml extension attribute value + + + After a double quote + + + + Detailed tokenization state + + + + Initial state + + + After the start angle brackets + + + After the ! start comment character + + + After the !- start comment characters + + + After the first - in the end comment characters --close angle bracket + + + After the seconf - in the end comment characters --close angle bracket + + + + Possible states when reading the Xml tags in ReadElements + + + + + Out of any XML tag + + + + + After an open angle bracket of the xml tag + + + + + After an open angle bracket and slash of the xml tag + + + + + Gets the tokens parsed + + + + + Gets the parsing errors + + + + + Gets the parsing outlines + + + + + Parses the XMl adding information about tokens, regions and errors + + the xml text + + + + Returns true if is a white space + + character we want to check if it is a white space + true if is a white space + + + + Called to set the ElementName when it is found + + element to set the ElementName from + text for the element name + + + + Returns true if the character at pos+1 is ? or ! + + character position + true true if the character at pos+1 is ? or ! + + + + Reads the tokens creating errors and regions + + + + + Reads a CDATA Element + + CDATA token + CDATA token text + + + + Adds an error when an element name has not been found + + element missing the ElementName + + + + Adds an outlining to this.outlines + + information about the opening tag + + + + Adds an outlining to this.outlines + + position of outlining start + position of outlining end + + + + Adds an error to this.errors + + token with error + error message + + + + Parses the xml string + + + + + Parses after the start angle bracket has been found + + + + + Called when close angle bracket has been found as a tag preceeded or not by a forward slash + + + + + Parses xml comments + + + + + Parses xml attribute values + + + + + Uses either PSXmlTokenType.MarkupExtension or PSXmlTokenType.QuotedString + depending on the attribute value + + classification offset repassed to AddClassification + + + + Adds the token classification with the given offset + + start position of the classification + classification to be added + + + + Information kept about open and close tags in ReadElements + + + + + token information for open angle bracket opening a tag + + + + + Token information for the close angle bracket corresponding to + + + + + Token information for the open angle bracket closing the tag + + + + + Element name + + + + + Gets or sets the token information for open angle bracket opening a tag + + + + + Gets or sets the token information for the close angle bracket corresponding to + + + + + Gets or sets the token information for the open angle bracket closing the tag + + + + + Gets or sets the element name + + + + + Class containing all data about a Snippet + + + + + Icon for Snippets + + + + + Display title which shows in the drop down + + + + + Schema Version of this snippet + + + + + A few lines describing the intent and usage of the snippet + + + + + The author, which may be a person or organization + + + + + The code fragment that is inserted into the editor if the snippet is chosen + + + + + Whether the snippet was loaded via a command into the tab + false, if it was loaded from the user folder onstartup, or was a default snippet + + + + + True if and only if this is a default hardcoded snippet + + + + + Location on disk from where this was loaded + + + + + The number of chars the caret must be moved after this snippet is inserted. + -1 indicates no movement, which leaves it at the end of the snippet + + + + + true (default) - indent the snippet based on the position of insertion + false - do not indent this snippet; insert as specified in the XML file, unchanged + + + + + Hash value to facilitate comparisons to avoid duplication + + + + + The completion corrosponding to this snippet which will be passed to the editor + + + + + Initializes a new instance of the ISESnippet class + This ctor is used to create global default snippets, hence it does not need a path name + + Title displayed in the snippet dropdown + Schema version of the snippet + The Description + Author person or organization + Text that would be inserted into the editor by the snippet + Caret offset from start after the snippet is inserted + + + + Initializes a new instance of the ISESnippet class + This ctor is used to create all disk snippets - global ones from the user folder and tab specific ones + when Load.. commands are used + + Title displayed in the snippet dropdown + Schema version of the snippet + The Description + Author person or organization + Text that would be inserted into the editor by the snippet + Disk location of the snippet + true iff it is tab specific + Caret offset from start after the snippet is inserted + True iff the snippet should be indented based on the point of insertion + + + + Gets the Display Title + + + + + Gets the Schema Version + + + + + Gets the Snippet Description + + + + + Gets the Author + + + + + Gets the Code Fragment + + + + + Gets a value indicating whether the snippet is Tab Specific + + + + + Gets a value indicating whether the snippet is a default one + + + + + Gets the FullPath + + + + + Gets the Completion for this snippet + + + + + Gets the number of chars from start by which the caret must be moved + after the snippet is inserted + + + + + Gets a value indicating whether the snippet should be indented + based on the point of insertion + + + + + Gets the unique hashcode used to prevent double loading + + + + + (This is now only used by unit tests) + Equality of snippets used to prevent double-loading + into an ISESnippetCollection. + + The other snippet in comparison + true iff they may be deemed equal + + + + Creates a Snippet + + Title displayed in the snippet dropdown + Schema version of the snippet + The Description + Author person or organization + Text that would be inserted into the editor by the snippet + Disk location of the snippet + true iff it is a default hardcoded snippet + true iff it is tab specific + Caret offset from start after the snippet is inserted + True iff the snippet should be indented based on the point of insertion + + + + Computes the unique hashcode for the snippet making use of the + fact we never have a null char in the four distinguishing fields + of the snippet. + + the computed hash + + + + Collection of ISESnippet + + + + + Namespace for the snippets XML schema + + + + + Standard extension for the snippet xml files on the disk + + + + + Schema version + + + + + These user snippets are loaded once at start of app and never again + + + + + -1: not simulated, 0: simulated initial tab, 1: simulated successive tab + + + + + Object used for locking + + + + + true if the Snippets functionality is enabled + false when the snippets are in the process of loading + + + + + Lookup table used to check for a snippet by it's hashcode to avoid duplication + + + + + All snippets accessed via $psISE.CurrentPowerShellTab.Snippets[..] + + + + + All snippet completions given to the editor if showdefaultsnippets = true + + + + + Non-default snippet completions given to the editor if showdefaultsnippets = false + + + + + Authorization Manager used to read files, so that they are not read in if the policy is restricted + + + + + Initializes a new instance of the ISESnippetCollection class and initializes it with + default and disk snippets common to all tabs. + + Authorization manager to be used to read the disk files + + + + Gets the number of snippets in this collection + + + + + Gets a value indicating whether the snippets functionality is enabled + + + + + Gets the list of completions - default + user + tab + + + + + Gets the list of completions - user + tab but not default + + + + + Gets the ISESnippet at position [index] + + 0 based position of element to retrieve + the snippet requested + + + + Loads a single snippet XML file (which could contain multiple snippets). + Unlike all other Load..() methods, this Load method - + * works synchronously.. so a large file will make the prompt unavailable for a while + * throws meaningful exceptions for malformed snippets and file read errors instead of silently ignoring them + + Full path and name of the file to be loaded + + + + Required to support looping by foreach + + The Enumerator over the snippets + + + + Required to support looping by foreach + This never really gets called, but i need it to support the IEnumerable T-in-angle-bracket GetEnumerator() + and this is the only way i can do a good foreach + Called artificially from unit test only + + The Enumerator over the snippets + + + + For unit test only + + true if it is the first tab + + + + Used by unit tests only + + File name or "Default" + XPath navigator at root + target list + the number of snippets added to the target list + + + + Updates the object specific (tab specific) snippet lists of all tabs + based on the userSnippetBank and enables the functionality + + + + + This is used by unit tests to find if a snippet is in this collection + + The snippet to look for + true iff the snippet exists in the collection + + + + Uses XPath to parse out required fields from a XML string, creates a completion, and adds it to the list + + Name of the disk file with full path, or 'Default', if it is a default snippet + The XPath document + Target list to load into + the number of snippets added to the target list + + + + Uses XPath to parse out required fields from a XML string, creates a completion, and adds it to the list + + Name of the disk file with full path, or 'Default', if it is a default snippet + The XPath document + Target list to load into + true if and only if InvalidOperationException must be thrown on + the first encountered error in the XML structure. If this is false (default) the function + ignores malformed snippets silently. + the number of snippets added to the target list + + + + Adds a snippets to the list if it is not there already + + The snippets to add + whether it is a default snippet + true if it was added + + + + Loads snippets from a folder location and returns them in a list + + The disk location to load from + true if subfolders should be included + list containing loaded snippets + + + + Loads all the snippets from a single snippets.ps1xml file and returns them in a list. + Unlike the other Load methods, it does not ignore malformed snippets - it throws + InvalidOperationException with relevant messages, and stops on the first encountered error + + Full path with name of file to load + List of all snippets from the file + + + + Console Editor + + + + + Localized shortcut name for Ctrl+Left + + + + + Localized shortcut name for Ctrl+PageUp + + + + + Localized shortcut name for Ctrl+Up + + + + + Gesture equivalent to GuiStrings.StopAndCopyShortcut + + + + + Gesture equivalent to GuiStrings.EditorSelectAllShortcut + + + + + /// The content type for the output editor + + + + + InputText saved before executing something that will need to restore it + + + + + value indicating whether the runspace is executing a command that should block editor input + + + + + First of the two regions that when combined produce a single region only editable at the end + + + + + Second of the two regions that when combined produce a single region only editable at the end + + + + + current text for the writeable part of the console + + + + + Set to true when the host wants to read input like in read-host. + This flag will be set to true from the pipeline thread (in a read-host, for instance). It will be set + to false in the UI thread (in the stop command or on Enter keyboard processor). I don't see the setting to + true/false ever to be concurrent, because the pipeline setting will happen before the Enter/Stop + so I am not adding a lock for inputMode access + + + + + position of the buffer end in the last call to FlushOutput used to determine the non read only region of the Console + + + + + Event used in the Input method that is fired when Enter is typed + + + + + Event used in the Input method that is fired when the pipeline is stopped forcefully (Ctrl+C) + + + + + Console automation peer + + + + + The position of output start + + + + + Output accumulated but not yet written to the control + + + + + the Length of the editor's last line + + + + + The color spans currently present in the editor + + + + + Length of the output yet to be flushed + + + + + Value for the Exiting property + + + + + Initializes a new instance of the ConsoleEditor class. + + + + + Finalizes an instance of the ConsoleEditor class + + + + + Event fired when the InputText changes + + + + + Gets or sets the console input text + + + + + Gets and sets the editor's text + + + + + Gets the position where input starts + + + + + Gets the line up to the caret within the InputText + + + + + Gets the Length of the editor's last line + + + + + Gets or sets a value indicating whether the application is exiting; when true, output is discarded + + + + + Gets or sets a value indicating whether the runspace is executing a command that should block editor input + + + + + Gets a value indicating whether the output is in input mode + + + + + Gets or sets a value indicating whether the output is gathering input (like in a read-host case, for instance) + + + + + Clears the text in the output editor. + + + + + Dispose method in IDisposeable + + + + + Called before output is produced to mark the beginning of output + + + + + Called after output is produced to change the AutomationName of the editor to the output so Narrator reads it + + + + + Returns true if intellisense can be started + + true if intellisense can be started + + + + Moves the caret to the end of the input text + + + + + Moves the caret to the end of the input text + + + + + Returns true if the caret is at the same line as the input text + + + true if the caret is at the same line as the input text + + + + + Returns true if caret is at input region + + true if caret is at input region + + + + Returns true if there is a selection totaly the input region + + true if there is a selection totaly the input region + + + + Returns true if caret is at beginning of input region + + true if caret is at beginning of input region + + + + Returns true if the caret is at the last line + + + true if the caret is at the last line + + + + + Called after we are done with output to prevent the customer from editing output + + + + + Removes the read only regions so output can be produced + + + + + Raise the event for async content begining to load + + + + + Raise the event for async content load completed + + + + + Start input taking. Input can end with: + 1) Enter + 2) The pipeline ending + + true if input was canceled + returned input + + + + Ends the inputMode the Input method is waiting on when the pipeline is stopped + + + + + Called to handle key presses in the console pane + + event arguments + keyboard modifiers + the PowerShellTab this output belongs to + + + + Clears the undo and redo stack + + + + + Used by test to verify the buffers are empty + + true if the indo and redo buffers are empty + + + + Flushes the pending output + + + + + Clears the InputText saved before executing something + + the saved input to set + + + + Saves the current InputText before executing script or selection fopr a later restoration with RecoverInputTextInOutputAfterExecutingScript + + + + + Restores the InputText that was previously saved in SaveInputTextBeforeExecutingScript + + + + + Adds line to the pending output + + line to be added + true if line should have a \r\n appended to it + + + + Adds line to the pending output + + line to be added + true if line should have a \r\n appended to it + foreground color + background color + + + + Adds lines to the pending output. + Intermediate lines will have \r\n appened to it. + The last line might have \r\n appeneded to it, depending on finishWithCrLf. + + lines to be added + true if the last line should have a \r\n appended to it + + + + Adds lines to the pending output. + Intermediate lines will have \r\n appened to it. + The last line might have \r\n appeneded to it, depending on finishWithCrLf. + + lines to be added + true if the last line should have a \r\n appended to it + foreground color + background color + + + + Gets the position for the start of the line containing + + position we want to get the line start position from + The position for the start of the line containing + + + + Returns true if matches . + + a key gesture based on a localized shortcut + keyboard event args + true if matches . + + + + Returns true if will add text to the editor + + event arguments + true if will add text to the editor + + + + Returns true if is numeric or aplphabetical + + event arguments + true if is numeric or aplphabetical + + + + Returns true if is one of the punctuation keys + + event arguments + true if is one of the punctuation keys + + + + Not at the beginning of inputArea or Control pressed, return = do nothing + Output Control+Left message + + event arguments + keyboard modifiers + tab containing the editor + true if the caret is in the beginning of the input region + + + + Called when the editor loses focus + + event sender + event arguments + + + + Returns true if there is a selection that includes the start of the input area. + Another way to say this: Returns true if there is a selection starting at the readonly region and ending at the editable region + + true if there is a selection that includes the start of the input area. + + + + Called to mark the output as read only when the editor is loaded. + + event sender + event arguments + + + + Triggers the InputTextChanged event + + + + + Called to update the InputText + + event sender + event arguments + + + + Ends the inputMode the Input method is waiting on when Enter is typed + + true if there was an input mode to be ended + + + + Ends the input mode by setting an event + + event to be set + true if there was an input mode to be ended + + + + Udpates the InputText when the buffer changes + + + + + Gets a span with the read only region of the output + + a span with the read only region of the output + + + + Implements IDisposable logic + + true if being called from Dispose + + + + Called after a caret movement from to potentially extend a current + selection from to the current caret location + + true if the selection should be extended, false to clear an existing selection + position before a recent caret movement + + + + if control is pressed allways move one line up (for consistency) and return + if caret not at input return + if at first line of input and shift is on + go to previous history and if at first history output Control+Up message + else (if not at fitst line of input area) + move up limited by beginning of input + end if + + event arguments + keyboard modifiers + tab containing the editor + true if the caret is in the input region + + + + if control is pressed allways move one line down (for consistency with control up) and return + if caret not at input return + if caret is at last line and shift is on go to next history + + event arguments + keyboard modifiers + tab containing the editor + true if the caret is in the input region + + + + If Control is pressed do a regular unlimited PgDn or PgUp + If caret not in input return + if at first input line and shift is not on + Move to top of history and print message and return + else + Do a PageUp limited by input and considering shift + + event arguments + keyboard modifiers + tab containing the editor + true if the caret is in the input region + + + + if control is pressed allways move one line down (for consistency with control PgUp) and return + if caret not at input return + if caret is at last line and shift is on go to bottom of history + + event arguments + keyboard modifiers + tab containing the editor + true if the caret is in the input region + + + + Outside of inputArea, return = do nothing + Go to beginning of input extending selection if Shift is pressed in the following cases: + Home or Shift+Home in first line + Ctrl+Home or Ctrl+Shift+Home + + event arguments + keyboard modifiers + tab containing the editor + true if the caret is in the input region + + + + Selects the input. Leave it unhandled otherwise + + tab containing the editor + + + + Called after moving the caret to ensure it does not go beyond the beginning of input + + event arguments + tab containing the editor + true if shift is on + position before caret movement + shortcut to be added to message + + + + Modifiers is not none, return otherwise EndInpout, dismiss or commit completion and/or run command + + event arguments + keyboard modifiers + tab containing the editor + + + + Handles keys that only need to be customized for the case where there are no modifiers + + event arguments + + + + Base class for all Editors: Input, Output and Script + + + + + Characters recognized as word separators in GetHelpCartetText + + + + + Filter for intellisense parameter values results + + + + + Filter for intellisense member results + + + + + Filter for intellisense member or type results + + + + + Filter for intellisense provider results + + + + + Filter for intellisense command or parameter name results + + + + + Filter for intellisense variable results + + + + + Helper used in EnsureSpanVisible to store the span to ensure visible + + + + + the current Intellisense completion session + + + + + Position of the new character in the buffer + + + + + Set to true when a character has been deleted from the buffer + so intellisnese can filter tghe current set + + + + + last character that has been added to the buffer so we + can decide when to trigger intellisense + + + + + current intellisense session trigger position + + + + + position of a space character typed before it has been tokenized + + + + + position of a space character typed after it has beeen tokenized and determined to succede a parameter + + + + + position of a . character typed before it has been tokenized + + + + + position of a . character typed after it has beeen tokenized and determined to not be in the same token as a wildcar character + + + + + A non trivial (1 character add/delete) buffer change took place + + + + + outlining manager used to collapse/expand regions + + + + + The undo history manager + + + + + The editor buffer + + + + + The textView for this editor + + + + + nautilus editor + + + + + An object used to perform editor operations + + + + + Allows for text marking as in the Mark method + + + + + Text Navigation helper + + + + + current read only region associated with the editor + + + + + Whether the editor is in debug mode + + + + + Last tracked caret line. This helps minimizing notifications regarding changes in the CaretLine property. + + + + + Last tracked caret column. This helps minimizing notifications regarding changes in the CaretColumn property. + + + + + The key processor for this text view + + + + + The service responsible for tokenization + + + + + Initializes a new instance of the ISEEditor class. + + The editor content type + + + + Used to notify property changes. + + + + + The editor raises this event to request for any additional context menu items when the mouse is right-clicked or the Applications key + is pressed. The event subscriber must provide the menu items using the RequestContextMenuItemsEventArgs.MenuItems property. + + + + + Gets the total line count. + + + + + Gets the line number containing the caret. + + + + + Gets the line column containing the caret + + + + + Gets or sets and sets the editor's text + + + + + Gets the editor's selected text + + + + + Gets the text of the line containing the caret + + + + + Gets a value indicating whether the caret is at a charcter with a matching character to go to + + + + + Gets the position where input starts + + + + + We need FilePath to pass it inside Parser for better experience: + Particularly filePath is needed for 'using module .\...' to resolve against file location. + + + + + Gets the current line up to the caret position + + + + + Gets a value indicating whether the content type is "powershell" + + + + + Gets the outline manager used to collapse/expand regions + + + + + Gets or sets the view Zoom. + This is used from tests and XAML binding + + + + + Gets the zoom level directly from the control transform + + + + + Gets the editor buffer + + + + + Gets the textView for this editor + + + + + Gets a value indicating whether the vertical scrollbar is visible + + + + + Gets the undo history manager + + + + + Gets the text navigation object corresponding to this editor + + + + + Gets the editor control + + + + + Gets an object used to perform editor operations + + + + + Gets the editor's caret + + + + + Gets the caret position + + + + + Gets the editor + + + + + Gets a value indicating whether the editor is in the read-only state + + + + + Gets or sets a value indicating whether the debug mode is true. + + + + + Gets a value indicating whether the editor is Focused + + + + + Gets the current Intellisense completion session + + + + + Gets the service responsible for tokenization + + + + + Gets a value indicating whether intellisense is enabled + + + + + Gets and sets the context menu. + + + + + Selects the line containing the caret + + + + + Replaces the selection with or inserts at the current caret position. + + Text to insert. + can be used as a way to specify the position to insert text at. + + + + Gets the line length for the line at . + + Nunber of the line to get the length of. + The line length for the line at . + + + + Scrolls the editor so that the line corresponding to is visible. + + Number of the line we want to ensure is visible. + + + + Sets the caret position at and . + + Caret line number. + Caret column number + + + + Selects the region from , to , . + + Line where the selection starts. + Column within where the selection starts. + Line where the selection ends. + Column within where the selection ends. + To select a line can be set to + 1. + + + + Clears the text in the editor. + + + + + Sets the focus to the editor. + + + + + Goes to the character matching the character in the current caret position, if there is a matching character + + + + + Toggles all Outlining (region) Expansion + + + + + Sets the caret brushes for the given categories + + category with the caret brushes + normal caret brush + overwrite caret brush + + + + Returns true if the parameters for a SnapshotSpan or TrackingSpan construcor are valid + + snapshot we would create a SnapshotSpan in + start we would pass to the constructor + length we would pass to the constructor + true if the parameters for a SnapshotSpan or TrackingSpan construcor are valid + + + + Returns true if the parameters for a SnapshotSpan or TrackingSpan construcor are valid + + start we would pass to the constructor + length we would pass to the constructor + true if the parameters for a SnapshotSpan or TrackingSpan construcor are valid + + + + Sets the colors for selection and inactive selection + + selection color + inactive selection color + + + + Used by test to gets the selection colors + + active selection color + inactive active selection color + + + + Handles the special key processing for alt and shift keys that has to be trapped + at the WndProc level since it does not reach the keyboard processor + + key that was pressed. + true if the editor is focused and the keuboard processor can handle the shortcut + + + + Gets the positions of all visible adornments on screen + + the positions of all visible adornments on screen + + + + Called to setup tokenization on construction or content type change + + Content type to set tokenization for + + + + Called to ter down tokenization on content type change + + Content type to tear down tokenization for + + + + Selects the span, ensures it is visible and moves the caret to the beggining of the selection. + + Span to select. + + + + Sets the line number margin visibility. + + true if we want the margin to be visible + + + + Sets the outlining margin visibility. + + true if we want the margin to be visible + + + + Sets the zoom control visibility. + + true if we want the zoom control to be visible + + + + Returns true if the zoom control is visible + + true if the zoom control is visible + + + + Returns true if the outlining margin is visible + + true if the outlining margin is visible + + + + Returns true if the line number is visible + + true if the line number is visible + + + + Sets the glyph number margin visibility. + + true if we want the margin to be visible + + + + Queries for the current line + + The current line + + + + Gets the line number corresponding to a view position + + view position + line number + + + + Gets all classifications in the current textbuffer + + all classifications in the current textbuffer + + + + Gets all error tags in the current textbuffer + + all error tags in the current textbuffer + + + + Gets all text marker tags in the current textbuffer + + all text marker tags in the current textbuffer + + + + Gets all outline tags in the current textbuffer + + all text marker tags in the current textbuffer + + + + Forces a reclassification of the editor + + span to reclassify + + + + Gets the breakpoint and active statement marks added by MarkLine and MarkPosition + + the breakpoint and active statement marks added by MarkLine and MarkPosition + + + + Clears the given mark + + The mark to remove + + + + Sets the font name and size of this editor according to the options + + + + + Marks with the + + line to mark + The possible markings are "bookmark", "breakpoint", "currentstatement", "returnstatement" and "stepbackcurrentstatement" + The adorment mark + + + + Marks with the starting at and ending at . + + line to mark + start of the position in the line to mark + end of the position in the line to mark + The possible markings are "bookmark", "breakpoint", "currentstatement", "returnstatement" and "stepbackcurrentstatement" + he adorment mark + + + + Replaces the line up to the caret position with text + + text to be inserted + the index where replacement should start + the length of the replacement + + + + If there is a selection with no new line, returns it, otherwise returns the text next to caret or null if the caret is not next to a word + + + Rturns the selection or text next to caret + + + + + returns the word next to the caret or null if caret is not next to a word + + + the word next to the caret or null if caret is not next to a word + + + + + remove read only region so we can add the output lines and + + + + + Mark all the content of the editor as read only + + + + + Raises the RequestContextMenuItems event + + event arguments + + + + Resets this.undoHistoryManager to clear the undo stack + + + + + PLaces the caret at the new position and ensures it is visible + + position to place the caret in + + + + Called when intellisense results are available to start the intellisense popup + + intellisense results + position of the line start + position of the last word for future replacement when intellisense is commited + length of the last word for future replacement when intellisense is commited + position used for filtering of the list + True to select an item even if the filter text is empty + + + + Starts insertion of snippets for the editor explicitly + + + + + Starts intellisense for the editor explicitly + + + + + Returns true if intellisense can be started + + true if intellisense can be started + + + + Used by tests to prevent the automatic dismissal of Intellosense when the editor's TextView is not visible, + allowing unit tests to test scenarios where intellisense should be dismissed by certain keystrokes. + Without this, intellisense is always dismissed a while after it is started so we will not be able to tell + if the dismissal was caused by ISEEditor code or by the automatic dismissal. + Details: + Intellisense adds a spacereservation agent. + The manager of the agents called space reservation manager will set the agent to null if the TextView is not visible. + Intellisense monitors changes in the agent and when it is set to null, it dismisses intellisense. + What we do in the code below is to remove the reservation agent as soon as it is added by Intellisense + This prevents intellisense from monitoring a change in the agent to null and dismissing intellisense. + + + + + Gets a SnapshotSpan of the whole editor + + a SnapshotSpan of the whole buffer + + + + Returns a tracking span spanning the whole editor + + A tracking span spanning the whole editor + + + + Sets the caret position at . + + position to set the caret to + + + + Forces the tagging of braces + + + + + Gets the position that the line containing starts + + position we want to get the line start from + the position that the line containing starts + + + + Adds a command to the context menu + + command to add + ID used for testing + + + + Calls this.EditorViewHost.TextView.ViewScroller.EnsureSpanVisible but only after ViewportWidth is not 0 + To avoid an issue trying to set the position just after the editor is loaded miscalculating + because the ViewPort is 0 + + span to ensure visible + + + + Returns true if c is a space character + + character to be checked + true if c is a space character + + + + Starting at start goes forward untill finds a space and returns its index. + Returns str.Length-1 if there is no space or the space is at the last position. + This always returns a valid index in the str. + + string to look for space + where to start looking + index of a space starting at start and going forward or str.Lenth-1 if no space found + + + + Starting at start goes back untill finds a space and returns its index. + Returns 0 if there is no space or if the space is at 0. + This always returns a valid index in the str. + + string to look for space + where to start looking + index of a space starting at start and going backwards or 0 if no space found + + + + returns the word next to the caret or null if caret is not next to a word + + line containing the caret + caret position + word next to the caret or null if caret is not next to a word + + + + Gets a SnapshotSpan of the whole buffer + + buffer to get a SnapshotSpan from + a SnapshotSpan of the whole buffer + + + + Creates the host and views for the buffer + + buffer to create host and views for + appearance category to use + the new host + + + + Called from EnsureSpanVisible to call this.EditorViewHost.TextView.ViewScroller.EnsureSpanVisible as soon as the + ViewportWidth is not 0 + + event sender + event arguments + + + + Called to setup tokenization when the new script content type is powershell or when the editor is the console + + + + + Expands all regions in thes + + span to collapse regions + + + + Collapses all regions in thes + + span to collapse regions + + + + Called when the content type changes to setup tokenization for powershell files + + event sender + event arguments + + + + Forces refreshing of errors + + + + + Forces the refresh of outlined regions + + + + + Forces the reclassification and retagging of the editor when the powershell tokenization is complete + + event sender + event arguments + + + + Forces the reclassification of the editor when the xml tokenization is complete + + event sender + event arguments + + + + Sets up the ContextMenu + + + + + Called from the constructor to setup event listening + + + + + Sets this.undoHistoryManager with a new undo history manager + + + + + Gets the point corresponding to the mouse events in coordinates that can be used + for comparison with rendered text lines + + mouse event arguments + The point corresponding to the mouse events in coordinates that can be used + for comparison with rendered text lines + + + + Raises the RequestContextMenuItems when the mouse is right-clicked + + the editor control + event arguments + + + + Raises the RequestContextMenuItems when the mouse is right-clicked + + the editor control + event arguments + + + + Returns the zero based editor line number + + the zero based editor line number + + + + Returns the zero based editor column number + + the zero based editor column number + + + + Called to update the caret position and scrollbar visibility when the layout changes as a result of text being typed. + + event sender. + event arguments. + + + + Called to update the caret position when the caret moves arround by using the arrow keys. + This is not triggered by entering text so we also need to update the caret position in TextView_LayoutChanged. + + event sender. + event arguments. + + + + Called when the buffer changes to track the characters that + can trigger intellisense in UpdateCaretPosition + + event sender + event arguments + + + + As soon as the buffer changes this is called to reset braces, errors and outlining to none + and start tokenization. + + + + + Called from RemoveCompletionManager to actually remove the agent + + event sender + event parameters + + + + Called when the intellisense session is dismissed to reset fields used to control the session + + event sender + event arguments + + + + Helper to get text and position information for intellisense + + buffer position for the caret + position where the line wityh the caret starts + text for the line up to the caret position + + + + Updates the line and column of the caret, and monitors characters for intellisense + since the intellisense infrastructure is only prepared to be triggered after buffer + and layout changes happen + + + + + Called from UpdateCaretPosition to handle a space after a parameter name + + caret position in the buffer + + + + Called from UpdateCaretPosition to handle a dot after non wild card + + caret position in the buffer + + + + Called from UpdateCaretPosition to handle a new character + + caret position in the buffer + + + + Trigers the PropertyChangedEvent if there are listeners. + + Property that changed. + + + + Arguments for the RequestContextMenuItems event + + + + Value of the Position property + + + Value of the MenuItems property + + + + Initializes a new instance of the RequestContextMenuItemsEventArgs class. + + Position of the request given as an index within the text view + + + + Gets the position of the request given as an index within the text view; -1 indicates that the click occurred outside the text view. + + + If the context menu is requested with a mouse click the position corresponds to the coordinates of the click; if it is + requested with the "Application" key the position corresponds to the position of the caret. + + + + Gets the items for the context menu provided by the event subscriber + The subscriber to the RequestContextMenuItems event add to this collection any menu items it desires to display. + + + + A file opened in the application + + + + + The content type for the scripts + + + + + The content type for non scripts + + + + + The content type for xml + + + + last number used for untitled files + + + + The doc instance used to save the file, load and save file contents + + + + true if the file has never been saved + + + false if the file has been changed since last saved + + + editor used to display/edit the file + + + + The mark for the current line + + + + + The mark for the current line + + + + + Breakpoints on the current file indexed by line number + + + + + Whether the file is in debug mode + + + + + Indicates this file has been recovered from auto-saved + + + + + The last path in this.doc.FilePath before a SaveAs + + + + + File is added to MRU when true + + + + + Indicates that the ISE is a temporary file copied over from + a remote session. + + + + + Prevents a default instance of the ISEFile class from being created. + This is explicitly private to force the use of Add methods in ISEFileCollection. + + + + + For INotifyPropertyChanged + + + + + This event is raised when the breakpoints need to be updated as the result of changes in the editor text + + + + + This event is raised when a temporary remote file is about to be saved. Handler should return + SaveSucceeded == true if remote file was successfuly saved on remote machine. + + + + + Status of the breakpoints on a given line + + + + the line has no breakpoints + + + at least one breakpoint on the line is enabled + + + all the breakpoints on the the line are disabled + + + + Gets a value indicating whether the file has not been saved since last modified + + + + + Gets a value indicating whether the file has never been previously saved + + + + + Gets the full path of the file + + + + + Gets the editor used for this file + + + + + Gets the display name of this file + + + + + Gets the original file encoding + + + + + Gets a value indicating whether this file has been recovered from auto-saved + + + + + Gets the content type for the scripts + + + + + Gets the content type for the xml + + + + + Gets a value indicating whether the extension is Ps1 + + + + + Gets a value indicating whether if the extension is PS1 (script) or PSM1 (module) + + + + + Gets a value indicating whether the extension is Ps1 and there is text in the script + + + + + Gets a value indicating whether the file is not untitled and the file is unsaved + + + + + Gets a value indicating whether the file has at least one breakpoint + + + + + Gets the extension of this file + + + + + Gets the file name + + + + + Gets the line the debugger is stopped at, or 0 if none + + + + + Gets or sets a value indicating whether debug mode is true + + + + + When true this file is added to the MRU (most recently used) collection. + + + + + Indicates that the ISE is a temporary file copied over from + a remote session. + + + + + Saves the file to disk. + + If the file is not titled. + If could not save the file. + + + + Saves the file to disk. + + Encoding to save the file with. + If the file is untitled. + If could not save the file. + + + + Writes the editor contents to disk. + + file name to save. + If is null. + If is empty. + If could not save the file. + + + + Writes the editor contents to disk. + + file name to save. + Encoding to save the file with. + If is null or empty. + If could not save the file. + + + + Constructs a new file and reads its contents into the editor. + The file is not going to be untitled. + + Full path to the file. + If could not load the file. + A new file and reads its contents into the editor. + + + + Constructs a new file and reads its contents into the editor. + The file is not going to be untitled. + + Full path to the file. + File added to MRU after being opened when true. + When true indicates a temporary remote file and creates a read-only ISE file. + If could not load the file. + A new file and reads its contents into the editor. + + + + Creates a new Untitled file. + + Extension of the file being created. + The newly created Untitled file. + + + + Gets an untitled file name for the given extension + + The file name's extension + an untitled file name for the given extension + + + + Searches folder for the last file name to be used (like Untitled 9.ps1) + + Something like '.ps1' + + The number we would like to get the untltled name numberd with. + If the name has been taken in UserSettings.Default.LastFilePath + we will try higher numbers. + + The last file name that was found on folder + + + + Returns true if encoding is not uncode and if there are characters in the editor + that have to be saved as unicode. + + Encoding the file is going to be saved on + Editor whoith text to check + + true if encoding is not uncode and if there are characters in the editor + that have to be saved as unicode. + + + + + Sets the full path of a recovered file after the file has been loaded from its auto saved + location. + We do not use the public properties because they could trigger a file reloading from the fullPath + and this is called when the editor already has the correct text from the auto saved path. + + full path to be set + + + + Tries to save a copy of the file to disk in the given path + + full path of the file to save + true if it was a succesfull write + + + + Writes the file to disk in the given path + + full path of the file to save + encoding to be used + If could not save the file. + + + + Returns the contents of the file as a byte array. + + File contents + + + + Highlights the current line at the given position and scrolls the editor + + target line + start position + end position + + + + Removes the highlight from the current line + + + + + Queries for the current line + + The current line + + + + Queries for breakpoints on the given line + + The line to look for + A list of the breakpoints on the given line, or null if there are no breakpoints + + + + Sets the given breakpoint + + Breakpoint to set + + + + Removes the given breakpoint + + Breakpoint to remove + + + + Updates the status (enable/disabled) of the given breakpoint + + Breakpoint to update + + + + Returns the status of the breakpoints at the given line + + Line to check + breakpoint status at the given line + + + + Clears the breakpoints on the current file + + + + + Returns true if the extension is ps1 + + Extension to check + true if the extension is ps1 + + + + Returns true if the extension is ps1, psm1, psd1 or pssc + + File path to check + true if the file is a known PowerShell file type + + + + Returns true if the file can be interpreted as an XML document. + + File path to check + True if the file has a known XML extension or starts with the XML preamble. + + + + Looks at the beginning of the contentLine to determine if it starts + with the XML preamble. This helps to determine if a file is in fact + an XML file even if its extension is unknown. + + The line of content to check. + True if the line appears to be an XML preamble. + + + + Gets the content type for the given extension + + File path to check + The content type for the given file + + + + Looks for the BreakpointInfo of a given breakpoint + + The breakpoint to look for + The BreakpointInfo associated to the given breakpoint, or null if the breakpoint is not found + The index of the breakpoint within BreakpointInfo, or -1 if the breakpoint is not in the list + true if the breakpoint was found + + + + Updates the given BreakpointInfo Adornment and Status + + The item to update + + + + Creates an adorment for the given breakpoint + + breakpoint information + the marking for the breakpoint + + + + Read the file from the full path and create the corresponding Editor object + + full path to the file to read + If could not load the file. The exception message can be displayed to the end user. + + + + Creates this.editor and this.doc setting the FullPath + + file full path + + + + Creates the Editor object when the extension changes + + + + + Called when the IsDirty state of the document changes to update this.IsSaved + + event sender + event arguments + + + + Called when the text is changing in the editor to pottentially prevent changes during debugging + + event sender + event arguments + + + + Updates the breakpoints when the editor text changes + + the text buffer + event arguments + + + + Sets the editor's context menu + + the editor control + event arguments + + + + Reads the contents of the file into the editor + + the file contrns as a string + If could not load the file. The exception message can be displayed to the end user. + + + + Called to invoke this.PropertyChanged, if needed, when the property has changed + + property name + + + + Raises the RequestBreakpointUpdate event + + event arguments + + + + Arguments for the RequestBreakpointUpdate event + + + + value of the MoveUpdates property + + + value of the RemoveUpdates property + + + value of the OverwriteUpdates property + + + + Initializes a new instance of the RequestBreakpointUpdateEventArgs class. + + + + Gets the breakpoints that need to be removed + + + Gets the scripts whose breakpoints need to be overwritten + + + Gets the breakpoints that need to be moved + + + + Data for move breakpoint updates + + + + value of the Breakpoints property + + + value of the TargetLine property + + + + Initializes a new instance of the BreakpointMoveUpdate class. + Creates a request to move breakpoints within the same file + + breakpoints to move + line to move to + + + Gets the breakpoints that need to be moved + + + Gets the line to move the breakpoints to + + + + Data for move breakpoint overwrites + + + + value of the Breakpoints property + + + value of the TargetScript property + + + + Initializes a new instance of the BreakpointOverwriteUpdate class. + Creates a request to overwrite the breakpoints on a given file + + breakpoints to move + script to overwrite + + + Gets the breakpoints that need to be moved + + + Gets the script whose breakpoints will be overwritten + + + + Information about the breakpoints on a given line + + + + Value of the Breakpoints property + + + Value of the Adornment property + + + Value of the Adornment property + + + Gets the breakpoints on a given line + + + Gets or sets the adornment, or null if the breakpoints are outside the editor range + + + Gets or sets status of the breakpoints on the line + + + + Event arguments for the SaveRemoteFile event. + + + + + Set to true by event handler if remote file save succeeded. + + + + + Collection of ISEFile + + + + + dictionary of all files in the collection + + + + + The file currently selected + + + + + Initializes a new instance of the ISEFileCollection class. + + + + + Gets or sets the currently selected file. + + + + + Gets the dictionary of all files in the collection + + + + + Selects the . + + File to be selected. + + + + Removes the file. + + file to remove + true to remove the file even if it has not been saved. + + + + Adds a new file to the collection. + + file name. + the added file + + + + Adds a new file to the collection. + + file name + True if file added to MRU on open + True if file is a temporary remote file and is to be read-only + The added file + + + + Adds a new untitled .ps1 file. + + the added file + + + + Gets the list of files as a string + + files to join in a string + returns the list of files as a string + + + + Updates the tables with files when savedAsFile is saved as + + name before the save as + file after the saveAs + + + + Returns true if currentName is not newPath and if the newPath is already opened in any runspace + + current file path + previous file path + true if currentName is not newName and if the newName is already opened in any runspace + + + + Returns true and the file when an file by the name fileName is opened in any runspace with the name fileName + + fileName for the file + ISEFile returned if found + true when an file by the name fileName is opened in any runspace with the name fileName + + + + Selects the . This allows setting the selected opende file to null. + + File to be selected. + + + + Returns true and the file when an ISEFile by the name fileName is opened in this collection + + fileName for the ISEFile + ISEFile returned if found + true when a file by the name fileName is opened in this collection + + + + Adds the file if not present, otherwise returns existing file. + + where to add the file + file to be added + the file added or present + + + + Overridden to throw an exception to block a direct Insert or an Add given that there is no constructor for . + + index of the item to be inserted + item to be inserted + When calling this method + + + + Overridden to throw an exception blocking a set. + + index of the item to be set. + new PowerShellTab at the . + When calling this method + + + + Makes sure ClearItems calls RemoveItem on each item. + + + + + Moves the file at position to . + + position to move file from. + position to move fole to. + + + + Overrides default behavior to throw if IsDirty is set to false + + index of the item to remove + + + + Called from ApplicationUpdateSavedAsFile to update a single table after a SaveAs operation in savedAsFile + + table to be updated + name before the save as + file after the saveAs + + + + A runspace object to be opened by the application + + + + + Maximum total number of AddOn tools. Internal for test use. + + + + + Default timeout for calling InvokeSynchronous + + + + + Number of miliseconds between output flushes. This might make it into an Options dialog. + + + + + synchronization object used for intellisense timeout + + + + + The show-command displayed in this tab + + + + + value indicating whether the state of the ShowCommand window should be updated on UpdatePrompt + + + + + value indicating whether we are displaying the embedded show-command in this tab + + + + + The nested prompt level + + + + + The current progress objects in this PowerShellTab + + + + + set to true while intellisense is being evaluated and queried when running the Console pane. + It is only set and queried in the UI thread + + + + + Timer used while intellisense is being evaluated to eventually stop intellisense + + + + + flag used to regulate if stopping intellisense should leave a timeput message + + + + + value indicating whether the console was the last editor that got focus + This is used in ISEZoomMouseProcessor to allow for a click from outside the + Console to go to input + + + + + Font Size for the Tab + + + + + Timer used for output window + + + + + the output editor + + + + + Index that the Up/Down Arrow are currently seeing from the CommandHistory + + + + + Set to true when the command run is a previous history command + so that up will go tp that command and up will go to the next. + This is equivalent of placing the history index between the history run + and the next command + + + + + set with the text in the console so that an arrow up followed by + an arrow down doesn't loost the current typed text + + + + + Used to know if the scratchInputBuffer should be updated on buffer changed + + + + + Command completion object + + + + + The replacement length, used after the first tab completion to keep track of how much was replaced + + + + + last position where command completion was executed + + + + + last editor where command completion was executed. + + + + + Partial local application path for temporary remote files. + + + + + Full path for temporary remote files. + + + + + Current remote session instance path. + + + + + Collection of currently open remote files. + + + + + Script to retrieve source script from remote machine. + + + + + Initial command to be run after running the profiles + + + + + a pending command to be run once the PowerShellTab is not running a command + Used by show-command to run a pending command + + + + + Value indicating the initial command has already run + + + + + The root of the tools menu. + + + + + invocation settings instructing the command should be added to the history + + + + + True if the scripts are visible + + + + + True if the horizontal AddOn tools pane is opened + + + + + True if the vertical AddOn tools pane is opened + + + + + the display name + + + + + Files opened in the PowerShell tab. + + + + prompt displayed + + + Prompt displayed + + + Prompt bracket displayed + + + Prompt automation name + + + execution status + + + comand history + + + Reference to runspace used for command execution + + + Reference to a command running on a pushed runspace (runspaceRef) + + + The current PowerShell instance used for command execution + + + Helper object to invoke commands on the debugger when in debug mode. + + + PowerShell instances saved when entering a nested prompt + + + Data added to this buffer will be displayed in the output control + + + Arguments of the DebuggerStop event; null if we are not in the debugger + + + The pre-processor for debugger commands + + + The PowerShell instance that entered the debugger + + + The file where the debugged code is + + + When in a nested prompt, this event signals the thread executing the parent pipeline that it needs to execute an action + + + This event is signaled by the the pipeline thread when it completes an action + + + The action that the pipeline thread must execute + + + Breakpoints in the current runspace + + + Saved local session breakpoints during remote session (pushed runspace) + + + List of files that have been marked as read-only while the debugger is active + + + Count of enabled breakpoints + + + Count of disabled breakpoints + + + + Flag set to false at the beginning of an asynchronous operation and reset to true + when the operation is completelly done. This is used from test code + + + + + The host associated with this runspace + + + + + Table with the unsupported console applications + + + + + PSGHost used as a value to $psIse. + + + + + Root of the object model for AddOnTools + + + + + Auxiliar used to stop monitoring GotFocus on a previouslly selected ISEFile editor. + + + + + Last editor between input, output and script editors that got the keyboard focus. + This is used when going back and forth between runspaces so we place the focus + on the same place where it was left. + + + + + True when the current instance is being disposed + + + + + used to layout controls + + + + + Horizontal AddOn tools + + + + + Vertical AddOn tools + + + + + Subset of with visible tools. + + + + + Subset of with visible tools. + + + + + Indicates whether there is no pending asynchronous operation and no pipeline running + + + + + The state for the current powerShellInvoker that changes when we enter a nested prompt + like in the debugger scenario. + + + + + indicates whether the nested pipeline is running in the runspace + + + + + Indicates we should not notify that the CanINvoke property changed + + + + + Set with information that allows a transition from tab completion to intellisense + + + + + PowerShell Trace Source to log ETW events + + + + + Set with information a list of all snippets loaded into this tab + This includes references to global snippets (incl default ones) + + + + + Initializes static members of the PowerShellTab class. + Installs the keyboard filter for all editors + + + + + Initializes a new instance of the PowerShellTab class. + + + + + Used in ExecuteAndCallback to call back when the script is done executing + + the results of script execution + errors running the script + + + + Used as a helper to create delegates + + + + + For INotifyPropertyChanged + + + + + Triggered when an AddOn tool pane is closed + + + + + Triggered when an AddOn tool is closed + + + + + Triggered when an AddOn tool is removed + + + + + For ZoomLevel PropertyChanged notification + + + + + Triggered when the state of the current command execution changes + + + + + Raised when the runspace changes the selected file + + + + + Raised when the display name is changing to let the ISEPowerShellTabCollection throw an exception for duplicate names + + + + + Types of graphical prompts + + + + + The normal prompt + + + + + Debugger prompt + + + + + Prompt for nested powershells + + + + + Gets the root of the tools menu. + + + + + Gets the Ruunspace status text + + + + + Gets or sets a value indicating whether scripts are expanded + + + + + Gets or sets a value indicating whether we are displaying the embedded show-command in this tab + + + + + Gets or sets a value indicating whether the horizontal AddOn tools pane is opened + + + + + Get or Sets the Zoom level to be broadcast to all the plugins + + + + + Gets or sets a value indicating whether the vertical AddOn tools pane is opened + + + + + Gets the current prompt text. + + + + + Gets the output editor. + + + + + Gets or sets the display name. + + + + + Gets the script files currently opened. + + + + + Gets the tab specific snippets for this tab currently loaded. + + + + + Gets a value indicating whether a script can be executed with the method. + + + + + Gets the Horizontal AddOn tools + + + + + Gets the Vertical AddOn tools + + + + + Gets the subset of with visible tools. + + + + + Gets the subset of with visible tools. + + + + + Gets or sets a pending command to be run once the PowerShellTab is not running a command + + + + + Gets the show-command displayed in this tab + + + + + Gets or sets a value indicating whether the state of the ShowCommand window should be updated on UpdatePrompt + + + + + Gets the index that the Up/Down Arrow are currently seeing from the CommandHistory + + + + + Gets the nested prompt level + + + + + Gets the current progress objects in this PowerShellTab + + + + + Gets or sets the initial command to be run after running the profiles + + + + + Gets or sets a value indicating whether the console was the last editor that got focus + This is used in ISEZoomMouseProcessor to allow for a click from outside the + Console to go to input + + + + + Gets or sets the last editor between input, output and script editors that got the keyboard focus. + This is used when going back and forth between runspaces so we place the focus + on the same place where it was left. + + + + + Gets the PSGHost used as a value to $psIse. + + + + + Gets a value indicating whether there is a current running command + + true if there is a current running command + + + + Gets a value indicating whether we can execute the Console pane. + + + + + Gets a value indicating whether we can execute the currently selected script. + + + + + Gets a value indicating whether we can execute the text currently selected in the script editor. + + + + + Gets the output editor. + + + + + Gets a value indicating whether we can execute any of the debugger commands + + + + + Gets a value indicating whether we can execute the "Run/Continue" command + + + + + Returns true if this tab can execute the "Break All" command + + + + + Gets a value indicating whether we can execute the "toggle breakpoint" command + + + + + Gets a value indicating whether we can execute the "enable breakpoint" command + + + + + Gets a value indicating whether we can execute the "disable breakpoint" command + + + + + Gets a value indicating whether we can execute the "remove all breakpoints" command + + + + + Gets a value indicating whether we can execute the "enable all breakpoints" command + + + + + Gets a value indicating whether we can execute the "disable all breakpoints" command + + + + + Gets a value indicating whether we can execute the "list breakpoints" command + + + + + Gets a value indicating whether the runspace is in a nested prompt + + + + + Gets a value indicating whether the runspace is in the debugger + + + + + Gets the graphical prompt to be displayed. + + + + + Gets the prompt bracket to be displayed. + + + + + Gets the prompt automation name. + + + + + Gets the command history + + + + + Gets a reference to the runspace pool used by this class. + + + + + Gets or sets a value indicating whether we are running a command. + This is set to false at the beginning of an asynchronous operation and reset to true + when the operation is completelly done. This is used from test code + + + + + Gets or sets the GPSHost associated with this runspace + + + + + Gets or sets a value indicating whether there is no pending asynchronous operation and no pipeline running + + + + + Gets a value used to layout controls + + + + + Gets a value indicating whether any snippets would be displayed upon 'Show Snippets' + + + + + Gets a value indicating whether the current runspace is remote + + + + + Gets a value indicating whether we can execute any of the breakpoint commands (toggle, enable, disable, remove) + + + + + Gets or sets a value indicating whether there is a pipeline running in the runspace + + + + + Gets or sets the current powerShellInvoker that changes when we enter a nested prompt + like in the debugger scenario. + + + + + Executes the given script in the runspace. + + script to be executed. + if script is null + if cannot execute + + + + Executes the given script in the runspace. + + script to be executed. + if script is null + if cannot execute + + + + Invokes the script synchronouslly returning the results instead of placing them in the output + By default, scripts are executed in a local scope and will time out if they take longer than half a second to run. + This method is intended for the quick evaluation of a script, with minimal side effects for applications like a watch window. + + The script to run. + The results of running the script. + if script is null. + if an script is already running. + For any errors executing the script. If multiple errors are found running the script, only the first will be thrown as an exception. + If half a second has passed and the command has not completed. + + + + Invokes the script synchronouslly returning the results instead of placing them in the output + By default scripts will time out if they take longer than half a second to run. + This method is intended for the quick evaluation of a script, with minimal side effects for applications like a watch window. + + The script to run. + True to use a new scope + The results of running the script. + if script is null. + if an script is already running. + For any errors executing the script. If multiple errors are found running the script, only the first will be thrown as an exception. + If half a second has passed and the command has not completed. + + + + Invokes the script synchronouslly returning the results instead of placing them in the output + By default, scripts are executed in a local scope and will time out if they take longer than half a second to run. + This method is intended for the quick evaluation of a script, with minimal side effects for applications like a watch window. + + The script to run. + The results of running the script. + if script is null. + if an script is already running. + For any errors executing the script. If multiple errors are found running the script, only the first will be thrown as an exception. + If half a second has passed and the command has not completed. + + + + Invokes the script synchronouslly returning the results instead of placing them in the output + By default scripts will time out if they take longer than half a second to run. + This method is intended for the quick evaluation of a script, with minimal side effects for applications like a watch window. + + The script to run. + True to use a new scope + The results of running the script. + if script is null. + if an script is already running. + For any errors executing the script. If multiple errors are found running the script, only the first will be thrown as an exception. + If half a second has passed and the command has not completed. + + + + Invokes the script synchronously returning the results instead of placing them in the output + This method is intended for the quick evaluation of a script, with minimal side effects for applications like a watch window. + + The script to run. + True to use a new scope + The number of milliseconds to wait, or a negative value like TimeOut.Infinite to wait indefinitely. + The results of running the script. + if script is null. + if an script is already running. + For any errors executing the script. If multiple errors are found running the script, only the first will be thrown as an exception. + If millisecondsTimeout have passed and the command has not completed. + + + + Invokes the command synchronously returning the results instead of placing them in the output + This method is intended for the quick evaluation of a script, with minimal side effects for applications like a watch window. + + The command to run. + True to use a new scope + The number of milliseconds to wait, or a negative value like TimeOut.Infinite to wait indefinitely. + The results of running the script. + if command is null. + if a command is already running. + For any errors executing the command. If multiple errors are found running the script, only the first will be thrown as an exception. + If millisecondsTimeout have passed and the command has not completed. + + + + Invokes the PS command synchronously returning the results instead of placing them in the output buffer. + This method is intended for the quick evaluation of a script, with minimal side effects for applications + like a watch window or transferring file text over a remote session. + + PowerShell command to run + The number of milliseconds to wait, or a negative value like TimeOut.Infinite to wait indefinitely. + + + + Executes the command currently in the console pane. + + If CanExecuteConsolePane is false + + + + Executes the currently selected script + + + + + Executes the text currently selected in the script editor + + + + + Stops the current command asynchronouslly. + + + + + Adds an error to the output. + + error message + + + + Executes the script and calls back with the output when it is done + + script to execute + method to call when the execution is done + + + + Executes the command and calls back with the output when it is done + + command to execute + method to call when the execution is done + + + + Exists the nested prompt + + + + + Enters the nested prompt + + + + + Executes the "step into" debugger command + + + + + Executes the "step over" debugger command + + + + + Executes the "step out" debugger command + + + + + Resumes execution of the debugger + + + + + Breaks runnings script into the debugger + + + + + Stops the debugger + + + + + Toggles (add/remove) the breakpoint on the current line + + + + + Clears the output and refreshes the prompt + + + + + Invokes the get-psbreakpoint cmdlet + + + + + Invokes the get-pscallstack cmdlet + + + + + Invokes the update-help cmdlet + + + + + Executes the given script echoing the script in the output. + + script to be executed + true if the script was succesfully executed + + + + Executes the given script echoing the script in the output. + + script to be executed + true if the command are the contents of a script, and false if the command is a script name + true if the script was succesfully executed + + + + Executes the given script echoing the script in the output. + + script to be executed + true if the command are the contents of a script, and false if the command is a script name + true to add the script to input history + true if the script was succesfully executed + + + + Enables the breakpoints on the current line + + + + + Disables the breakpoints on the current line + + + + + Deletes all the breakpoints on the current runspace + + + + + Enable all the breakpoints on the current runspace + + + + + Disable all the breakpoints on the current runspace + + + + + Code executed when the host enters a remote session + + Running command associated with pushed runspace or null + + + + Code executed when the host exits a remote session + + + + + Refreshes the debugger adornments on all the files in the current runspace + + is not used. + + + + Refreshes the debugger adornments (highlights for breakpoints and current line) on the given file + + The file to refresh + + + + Handle remote session events. + + + + + Helper method to return the file path name of a local temporary script + file, if this is a remote session and the filePathName has been mapped + to a tempoary local file. Otherwise the passed in file path name will + be returned as is. + File path name + Local file path name of temporary remote file + + + + + Helper method to return the correct session file path name, given a + provided local path name. If the current session is a remote session + and if the local file path points to a temporary remote file copy then + the actual remote session file path is returned. Otherwise the passed + in file path name is returned as is. + + File path name + Session file path name + + + + Helper method to return an array of breakpoint Ids. + + List of line breakpoints + Integer arrary of Ids + + + + Starts running the prompt function. + + + + + Performs tab completion in the editor + + editor to perform tab completion in + true to look forward, false for backward + true if the tab completion has been handled + + + + Goes to the next history when the user presses down + + + + + Goes to the previous history when the user presses up + + + + + Goes to the first history when the user presses PageUp + + + + + Goes to the last history when the user presses PageDown + + + + + Adds a line to the output editor meant as a separator between commands + + + + + Runs the profile PSCommand synchronouslly + + command to run + + + + Runs the profile command synchronouslly + + command to run + + + + Executes input + + command to execute + true if the command are the contents of a script, and false if the command is a script name + true if the command should be added to history + true if the input should run in a new scope. Use false to dot-source the input. + true if it was able to execute the command + + + + Gets an Out-Default or Out-String command that can be used to format + command output for a given statement. 'Out-String -Stream' will be + used when this command is called while the user is at the debugger + prompt. + + + True if this output command will be used for the end of a statement. + + + A Command instance for the output command needed in this context. + + + + + Recover from error when executing a command on a runspace. This generally occurs + for remote runspaces which can break due to connection issues. + + Error occurring during Execute + + + + Called by the editor to start intellisense completion retrieval in a separate thread + + editor requestiong intellisense results + position for the start of the line + position of the caret where intellisense is starting + line text up to caret + True for when a timeout should be used + True to select an item even if the filter text is empty + + + + Called by the editor to start intellisense completion retrieval in a separate thread + + editor requestiong intellisense results + position for the start of the line + position of the caret where intellisense is starting + line text up to caret + filter for result types + True fir when a timeout should be used + True to select an item even if the filter text is empty + + + + Gets the completion results for tests + + the completion results for tests + + + + Disposes of the resources used by this runspace asynchronouslly. + Synchronouslly stopping the runspace in the UI thread is not possible + since some runspaces can be stuck in a call like [console]::readkey(). + this.runspaceRef.Runspace.Dispose will synchronouslly stop the runspace + therefore it has to be done in a separate thread. + + The thread being used to dispose of the runspace. + + + + Updates the visibility of the embedded Show-Command for this tab + + + + + Finds the show-command tool in the vertical or horizontal panes, or returns null if not found + + + true if we want to open the pane the tool is found on, false to close the tool and null to take no action on tool or pane + + + the show-command tool in the vertical or horizontal panes, or null if not found + + + + + Sets ShowCommands and does not throw an exception if in remote session + + new value for ShowCommands + + + + Raises the SelectedFileNeedsFocus event + + event arguments + + + + Handles KeyDown for operations common to multiple editors + + event sender + event arguments + + + + Processes the tab key for all 3 editors + + event sender + keyboard arguments + seleceted PowerShellTab + + + + Called from the constructor to creates and open the runspace + + the host to be used + the newly created runspace + + + + Called from the constructor to create the add to history settings + + the add to history invocation settings + + + + Helper used in AddOnTools_CollectionChanging to check if adding would duplicate names + or windows in . + + Tool about to be added + Collection the tool will be aqdded to + + + + Creates a PSCommand to set a breakpoint on a given script and line. The rest of the command arguments are taken from the 'breakpoint' parameter. + + Script to set the breakpoint + Line to set the breakpoint on + Provides the rest of the paramenters for the set breakpoint command + A command to set the breakpoint + + + + Get the parameters needed to call the engine's api for tab completion. + + the editor + the position of the cursor, from the editor's point of view + returns the ast from the buffer + returns the tokens from the buffer + returns the position (from the Ast point of view) of the cursor + + + + Completion routine for invocations of the Prompt() function; it simply forwards the call to DoUpdatePrompt on the UI thread + + Output buffer for the Prompt() function + + + + Sets the prompt property with the local or remote string + + The prompt string value to set the property with + + + + Refreshes the prompt synchronously. Called from InvokeSynchronous + + + + + Updates the prompt with the result of a PowerShell invocation + + Output buffer for the Prompt() function + + + + Closes the addon tool where it is (vertical or horizontal pane) + + + + + Tries to find the tool containing this.showCommandControl in the collection + + collection of tools to look for this control on + the tool containing this.showCommandControl in the collection + + + + Listens to PropertyChanged after ExecuteCommand is called while intellisense was running in order + to catch a change in CanInvoke to true resulting from intellisense stopping + + event sender + event arguments + + + + Starts untellisense and calls the editor back when the results are ready + + editor where Intellisense is to start + position for the start of the line + position of the caret where intellisense is starting + line text up to caret + filter for completion results + True fir when a timeout should be used + True to select an item even if the filter text is empty + + + + Stops intellisense by calling BeginStopCurrentCommand. This method is called when intellisense times out + or when we want to execute something in the console pane + + true if this is called from the intellisense time out so we leave a message in the Status bar + + + + Calls GetNextCompletionMatch on either this.intellisenseToTabTransition or this.commandCompletion + + editor line + the ast from the last tokenization + the tokens from the last tokenization + the position of the cursor + true if we are moving forward + + the return of GetNextCompletionMatch on either this.intellisenseToTabTransition or this.commandCompletion + + + + + Helper method to perform PowerShell command completion based + on current debug mode. + + Input AST + Tokens + Cursor position + Options + CommandCompletion + + + + This is the function that actually performs the tab completion; note that this code must be executed outside the UI thread + + editor to perform tab completion in + editor line up to the caret + the position of the caret + true to look forward, false for backward + + + + Called when the console buffer changes to update the scratch buffer + + event sender + event arguments + + + + Common method between ReportException and ReportTokenizationErrors to add an error to the output. + + error message + error file + error line + error column + + + + Reports an Exception to the output as the ones we get from runing the profile + or from a command's InvocationstateInfo.Reason when the pipeline fails + + exception to report + + + + Reports an Exception by outputing the exception to the pipeline + + exception to report + + + + Reports a tokenization error like the ones we can get by running the console pane, untitled or script selection + + tokenization errors + + + + Used to monitor changes in the SelectedFile so that we can monitor the focus + on the currently SelectedFile and propperly set this.lastEditorWithFocus + + event sender. + event arguments. + + + + Called when the selected file got focus to set this.lastEditorWithFocus + + event sender. + event arguments. + + + + Called when the output got focus to set this.lastEditorWithFocus + + event sender. + event arguments. + + + + Called by the timer to flush the output cache + + event sender + event args + + + + Called to run the profiles + + event sender + event arguments + + + + Moves the progress control to the editor grid + + + + + Triggers the AddOnToolPaneClosed event + + collection where the event happened + true if the pane has been opened + + + + Triggers the AddOnToolClosed event + + tool where the event happened + + + + Triggers the AddOnToolRemoved event + + tool where the event happened + true if the tool has been added + + + + Monitors the CollectionChangingEvent to block additions past MaxAddOnToolCount and duplicated names or windows. + + + Vertical or Horizontal tool collection, though this parameter is ignored since we will check the new tool against + both vertical and horizontal collections + + event arguments + + + + Listens to CollectionChanged in Vertical or Horizontal tools to: + 1) Update the listening of PropertyChanged events in each tool responsible for + traching changes to IsVisible properties in each tool that cause changes in the VisibleCollections + 2) Update the visible collections when tools are added/removed to/from Vertical or Horizontal tools. + + Vertical or Horizontal tool collections + event arguments + + + + Called when IsVisible changes in Vertical or Horizontal to update the visible collections + + The ISEAddOnTool that changed + event arguments + + + + Called from when the AddOnTool IsVisble property changes or when members are added/removed + to Vertical/Horizontal AddOnTools. + + Vertical or Horizontal ISEAddOnToolCollection + Visible collection corresponding to + + + + Sets the new Input text to newHistoryIndex + + new history index + + + + If is not the same as the top history and if is true: + - Adds the command to history + - Sets the history index to the top + + input to add to history + true if we should add to history + + + + Sets the file in debug mode if it is PowerShell source file + + The file to mark + True if the file was marked + + + + Sets all files to debug mode if not already set. + + + + + Sets the value of this.unsupportedConsoleApplications and initializes $psUnsupportedConsoleApplications. + + + + + Called from the constructor to create the timer and set its event handler + + + + + Called to invoke this.PropertyChanged, if needed, when the property has changed + + property name + + + + Called to invoke this.ZoomLevelChanged + + Zoom Level + + + + Returns true if the command is in the list of blocked commands + + command to check + true if the command is in the list of blocked commands + + + + Posts the event to the UI thread + + PowerShell instance + event arguments + + + + Called when the execution state changes + + PowerShell instance + event arguments + State of runpace + + + + Called when data has to be added to the buffer of the output control + + event sender + event arguments + + + + Signals to the debugger thread that it should resume execution of the suspended pipeline + + debugger action to be taken + + + + Starts an asynchronous invoke on the current PowerShell instance + + the commands to execute + + + + Starts an asynchronous invoke on the current PowerShell debugger instance. + + Command to invoke + + + + Starts an asynchronous invoke on either the current PowerShell + or debugger depending on whether the debugger is currently active. + + Command to invoke + + + + Invokes a synchronous command when in normal or debugger state. + + + + + + + Method to first sync selected file breakpoints with current runspace and + then to return all breakpoints on the currently selected file/line. + + + + + + Method to sync ISE breakpoint information with current remote runspace breakpoints. + + + + + Gets all line breakpoints of current runspace. + + List of line breakpoints + + + + Event handler for debugger breakpointsById/steps + + event sender + event arguments + + + + Updates the UI when entering the debugger + + + + + Updates the UI when exiting the debugger + + + + + Ensures that the given file is opened + + Full path of the file to load + Optional existing content to load file from. + True if the file was already in the files collection + The ISEFile instance associted to the file + + + + Saves the contents of the temporary file to the remote machine. + location. + + ISEFile corresponding to local temporary file + True if save succeeded. + + + + Creates a temporary file on the client machine from content retrieved over + a remote connection. + + + Optional existing content to use + + Thrown if file cannot be created. + + Local temporary file path name + + + + Cleans up temporary files created from CreateTempFileFromRemoteSession. + + True if ISE file should be removed from collection. + + + + Adds a line (formatted as a debugger message) to the pending output + + line to be added + true if line should have a \r\n appended to it + + + + Saves the current state and updates the UI when entering a nested prompt + + thread object unused here + + + + Sets the prompt bracket text + + + + + Restores the saved state and updates the UI when exiting a nested prompt + + thread object not used in this method + + + + Posts the given action to the pipeline thread + + The action to execute + Indicates whether to wait for the action to complete + + + + Updates the breakpointsById when the runspace notifies that a change has occurred + + Debugger instance raising the event + event arguments + + + + Sets the initial breakpoints when a new file is added + + the ISEFile collection + event arguments + + + + Evaluates an expression and returns its value + + event sender + event arguments + + + + Updates the breakpoints as requested by the editor + + the ISEFile hosting the editor + event arguments + + + + Called each time the current (nested) powerShellInvoker changes state to set this.CurrentState + + event sender + event arguments + + + + Called when any of the 2 properties IsReadyForNextCommand depends on changes + (IsAsynchronousOperationDone or IsPipelineRunning) to set this.IsReadyForNextCommand + + + + + Called when CurrentState changes to set IsPipelineRunning + + + + + Class that contains all information for a remote temporary file + created on the local machine along with its corresponding local + ISEFile object and the remote file location. + + + + + Local file path + + + + + Remote file path + + + + + ISE file + + + + + Constructor + + Local file path + Remote file path + ISE File + + + + PowerShellInvoker is a helper class that wraps a PowerShell instance and executes Invoke on the correct + thread depending on the state of the PowerShellTab. It is also used to save state when entering a + nested prompt. + + + + + PowerShell object to be used in invocations in this prompt + + + + + Runspace in use + + + + + save the status text when entering a nested prompt + + + + + save the prompt when entering a nested prompt + + + + + Indicates that the current instance is exiting a nested prompt; once exit begins no further calls to Invoke + should be done on this PowerShellInvoker instance (because the pipeline thread is resuming execution). + + + + + Initializes a new instance of the PowerShellInvoker class associated with the given runspace + + the runspace in use + + + + Initializes a new instance of the PowerShellInvoker class + + previous powerShellInvoker this nested prompt is going to cover + + + + Initializes a new instance of the PowerShellInvoker class + This is the common constructor + + PowerShell object to be used in invocations in this prompt + Runspace in use + + + + Event raised when the state of the current invocation changes + + + + + Gets the PowerShell instance wrapped by this instance + + + + + Sets the Commands property(Pass-thru) of the internal PowerShell object. + + + + + Gets the InvocationStateInfo property of the internal PowerShell(Pass-thru) + + + + + Gets or sets the saved status text when entering a nested prompt + + + + + Gets or sets the saved prompt when entering a nested prompt + + + + + Gets or sets a value indicating whether the current instance is exiting a nested prompt; once exit + begins no further calls to Invoke should be done on this PowerShellInvoker instance ( + because the pipeline thread is resuming execution). + + + + + Invokes the current command, and does not return while the command is not + finished or millisecondsTimeout have not passed. + + Maximum time allowed for the command to complete + The results of running the current command + If running the command caused an exception to be thrown. + If millisecondsTimeout have passed and the command has not completed. + + + + Create a nested instance + + the nested instance that has been created + + + + Assynchronous invocation method + + input type + output type + command input + command output + invocation settings + callback method + context object + + + + Synchronous invoke + + the output type + the result of the synchronous invocation + + + + Asynchronous stop + + + + + Pass-thru to the internal PowerShell Dispose + + + + + sets the history string on the underlying powershell + + history string to set + + + + Pass-thru of the InvocationStateChanged for the internal PowerShell instance + + event sender + event arguments + + + + Helper class for invoking commands on the runspace debugger. + + + + + PowerShellTab associated with this runspace/debugger. + + + + + Synchronization object. + + + + + Constructor + + Associated PowerShell tab + + + + Event raised as state of debug command invocation changes. + + + + + Debugger command to invoke. + + + + + Debugger command results. + + + + + Debugger command invocation state. + + + + + Invokes Commands command on debugger. + + Output collection + Optional callback + + + + Invokes command on debugger synchronously. + + Command output + + + + Stops any running debugger command. + + + + + Runs command completion through the debugger. + + Input Ast + Tokens + Cursor position + Options + Command completion results + + + + Turns on script debugger and sets it to step mode. + + + + + Sets state and raised InvocationStateChanged event. + + Command invocation state + Optional exception reason + + + + Arguments for the event raised when the DisplayName property is about to change + + + + + The old value for displayName + + + + + The new value for displayName + + + + + Initializes a new instance of the DisplayNameEventArgs class. + + old DislpayName value + new DisplayName value + + + + Gets the Displayname's old value + + + + + Gets the DisplayName's new value + + + + + ReturnValue for GetNextCompletionMatch + + + + + The match text + + + + + The replacement index + + + + + The replacement length + + + + + Initializes a new instance of the CompletionMatch class + + The match text + The replacement index + The replacement length + + + + Gets the match text + + + + + Gets the replacement index + + + + + Gets the replacement length + + + + + Manages the transition from intellisense to tab completion considering both share the same + completion results. + If intellisense is up and tab is pressed the desired behavior is that of tab completion. + When "get-" is pressed and intellisense is up, pressing tab will cause intellisense to be dismissed + and the existing completion results obtained for intellisense will be cycled through + for tab completion. There is no problem there. + The problem comes in the following scenario: "get-" starts intellisense and then p is typed to filter the + intellisense results. The completion results have been obtained for "get-" and p was only used to filter + the intellisense results. At this moment, TAB should cycle through the results that would have been + obtained for a tab after "get-p". + We have two approaches to obtain that result. + 1) obtain another set of completion results for "get-p" + 2) filter the resuts we already have for "get-" to the ones that start with "get-p" and cycle trough them + There is one additional complication for both scenarios: + If the currently selected intellisense result does not start with "get-p" + since intellisense filter uses "Contains" instead of "StartsWith", then the intellisense session + has to be commited, since this is the intellisense desired behavior for tab, and there will be no cycling through + tab completion. + This class implements approach 2) above to avoid calling another tab completion and because approach 1) + would require a careful synchronization of the new completion results with the intellisense selection + once the tab completion results are retrieved on a separate thread + + + + + Set in GetIntellisenseToTabCompletionTransition to a subset of intellisense resuts + that start with the intellisense filter + + + + + Similar to the lastInput field of CommandCompletion this field is used to monitor the fact + we are still cycling this set of results + + + + + Added to each one of the completion result texts in GetNextMatch + + + + + The current completion index in completions + + + + + The start index for the replacement + + + + + The length of the text to replace + + + + + Prevents a default instance of the IntellisenseToTabCompletionTransition class from being created + + + + + Creates a new IntellisenseToTabCompletionTransition object + + The set of completions + The ISE editor + the selected intellisense completion + true if we are going forward. This is used to set currentCompletionIndex + + a new IntellisenseToTabCompletionTransition object or null if the + does not start with filter in . + + + + + Gets the next completion match for the given + and sets the currentCompletionIndex according to + + editor line + true if we are going forward + the next completion match for the given + + + + Safely sets the value of currentCompletionIndex so it does not go beyond + the limits of completions and so it cycles through to begining/end + + new value of currentCompletionIndex + + + + Collection of . + + + + + Maximum number of runspaces that can be opened + + + + last runspace number + + + + The currently selected PowerShellTab + + + + + tracks the first tab added + + + + + Used to prevent renaming a PowerShellTab to an already existing name. + Note: If you want to use this table and expect it to be in POwerShellTab addition order (the same order as in this collection) + you're out of luck. PowerShellTab renames will cause a tab to be removed and inserted at the end of the dictionary which will + change the order here. + + + + + This is the list of threads used to dispose of the runspace. + The thread might be blocked if the runspace is unable to close. + + + + + Initializes a new instance of the PowerShellTabCollection class. + + + + + Gets or sets the currently selected PowerShellTab. + + + + + Gets a boolean that is true if this collection's Count is greater than 1. + + + + + Gets a value indicating whether a Runspace can be added to the collection + + + + + Gets a value indicating whether Runspaces can be removed from the collection. + The last Runspace can't. + + + + + Gets the list of Runspace threads to attempt to dispose. + If they cannot be disposed, cleanup needs to be forced + + + + + Selects the . + + PowerShellTab to be selected. + + + + Adds a new to the collection. + + The PowerShellTab that has been added. + If there are too many PowerShellTabs already + + + + BeginDispose a PowerShellTab runspace in the collection. The Runspace thread is added to a watch + where we can decide if the processed needs to be closed with force. + + tab with runspace to be disposed + + + + Returns true if any of the PowerShellTabs in this collection has vertical or horizontal AddOn tools + + true if any of the PowerShellTabs in this collection has vertical or horizontal AddOn tools + + + + Overridden to throw an exception to block a direct Insert or an Add given that there is no constructor for + + index of the item to be inserted + item to be inserted + When calling this method + + + + Moves a PowerShellTab from one position to another. + + index to move from. + index to move to. + + + + Overridden to throw an exception blocking a set. + + index of the item to be set. + new PowerShellTab at the . + When calling this method + + + + Overridden to throw an exception indicating there must be at least one runspace in the collection. + + + + + Removes a PowerShellTab at the specified position. + + index of the item to be removed. + + + + Monitors changes in the collection to update this.firstTab and the event we listen on it + + event sender + event arguments + + + + Monitors PropertyChanged on the first tab to set the UserSettings.Default.ShowCommandsOnFirstPowerShellTab when ShowCommands changes + + event sender + event arguments + + + + Sent to the UI thread in Add to actually add a new PowerShellTab. + + ignored parameter to meet DispatcherOperationCallback signature. + The PowerShellTab that has been added. + + + + Calls Clear on on the files in the PowerShellTab corresponding to + so that an exception can be raised regarding removing a runspace with unsaved files. + + index of the item about to be removed. + + + + Called when the DisplayName property is changing in any item in the collection to give the collection a chance to prevent the change. + + event sender + event arguments + + + + Collection that performs all update actions in the UI thread and that therefore can be + used as the type for a variable exposed to scripts and used internally. + + The type of the elements in the collection. + + + + Used in notifications if an empty list is needed + + + + + The underlying collection used to implement the interfaces. + + + + + Indicates if the collection is read only + + + + + Initializes a new instance of the UICollection class. + + + + + Occurs when the collection changes. + + + + + Occurs when the collection is about to change. + + + + + Gets the number of elements contained in the collection. + + + + + Gets a value indicating whether the collection is read-only. + + + + + Gets or sets the element at the specified index. + + The zero-based index of the element to get or set. + The element at the specified index. + + + + Adds an item to the collection. + + The object to add to the collection. + + + + Removes all items from the collection. + + + + + Determines whether the collection contains a specific value. + + The object to locate in the collection. + true if item is found in the collection; otherwise, false. + + + + Copies the elements of the collection to an Array, starting at a particular Array index. + + The one-dimensional Array that is the destination of the elements copied from collection. The Array must have zero-based indexing. + The zero-based index in array at which copying begins. + + + + Removes the first occurrence of a specific object from the collection. + + The object to remove from the collection. + true if item was successfully removed from the collection; otherwise, false. This method also returns false if item is not found in the original collection. + + + + Returns an enumerator that iterates through the collection. + + An enumerator that iterates through the collection. + + + + Returns an enumerator that iterates through the collection. + + An enumerator that iterates through the collection. + + + + Determines the index of a specific item in the collection. + + The object to locate in the collection. + The index of item if found in the list; otherwise, -1. + + + + Inserts an item to the collection at the specified index. + + The zero-based index at which item should be inserted. + The object to insert into the collection. + + + + Removes the collection item at the specified index. + + The zero-based index of the item to remove. + + + + Notifies of a change in the collection. + + event sender. + event arguments. + + + + Repasses changes in the underlying collection to this collection. + + event sender. + event arguments. + + + + Notifies the collection is about to change and returns true if the operation should be canceled. + + event arguments. + True if the operation should be canceled; + + + + Class used as parameters for an event sent before performing an action; + + + + + Event action. + + + + + New item added to the collection. + + + + + Old item removed from the collection. + + + + + Set to true if the action should be cancelled. + + + + + Initializes a new instance of the NotifyCollectionChangingEventArgs class. + + Event action. + New Items. + Old Items. + + If the action is Add, Move or Replace and is null or + If the action is Remove, Move or Replace and is null. + If any item in is null. + If any item in is null. + + + If is invalid or + If is Add or Reset and is not null or + If is Remove or Reset and is not null + + + + + Gets the old item. + + + + + Gets the event action. + + + + + Gets the new item. + + + + + Gets or sets a value indicating whether the action should be cancelled. + + + + + Interface implemented by AddOnTools to give them access to the host object + + + + + Gets or sets the host object. This will be set on ISE before the control is displayed + with the root of the object model. + + + + + A tool to be added to ISE + + + + + The tool name + + + + + indicates if the tool is visible + + + + + The window with the tool user interface + + + + + Initializes a new instance of the ISEAddOnTool class. + Internal since we want the Add Method in AddOnCollection to be used + + AddOn's Name + Window with the AddOn GUI + If name or control are null. + + + + Notifies of changes in property values + + + + + Gets the tool name + + + + + Gets or sets a value indicating whether the tool is visible + + + + + Gets a value for the window with the tool user interface + + + + + Gets a value exposed so tests can monitor if the events are being listened to + + + + + Trigers the PropertyChangedEvent if there are listeners. + + Property that changed. + + + + Arguments for the AddOnTool events + + + + collection where the event happened + + + + Value indicating the tool has been added + + + + + Initializes a new instance of the ISEAddOnToolAddedOrRemovedEventArgs class. + + tool where the event happened + value indicating whether the tool has been added + + + + Gets a value indicating whether the tool has been added + + + + + Gets the collection where the event happened + + + + + Collection of ISEAddOnTool + + + + + Initializes a new instance of the ISEAddOnToolCollection class. + Made internal to prevent the creation of this class + + + + + Adds a new ISEAddOnTool to the collection with IsVisible set to false + + AddOn tool name + tool control type + the tool that was added + If name or controlType are null + + If: + name or controlType are null + there is no default constructor for controlType or + it could not create an instance of the controlType or + the instance of controlType is not a Control + the instance of controlType does not implement IAddOnToolHostObject + + + + + Adds a new ISEAddOnTool to the collection with IsVisible set to false + + AddOn tool name + tool control type + true if the tool is supposed to be visible + the tool that was added + If name or controlType are null + + If: + name or controlType are null + there is no default constructor for controlType or + it could not create an instance of the controlType or + the instance of controlType is not a Control + the instance of controlType does not implement IAddOnToolHostObject + + + + + Returns true if this collection contains an AddOn tool with the control + + control we want to check for membership to the collection + true if this collection contains an AddOn tool with the control + + + + Adds a new ISEAddOnTool to the collection + + AddOn tool name + tool control + true if the tool is supposed to be visible + the tool that was added + + + + Adds a new ISEAddOnTool to the collection with IsVisible set to false + + AddOn tool name + tool control + the tool that was added + + + + Arguments for the AddOnTool events + + + + collection where the event happened + + + + Initializes a new instance of the ISEAddOnToolEventArgs class. + + tool where the event happened + + + + Gets the collection where the event happened + + + + + Arguments for the ISEAddOnToolCollection events + + + + collection where the event happened + + + + Value indicating the pane has been opened + + + + + Initializes a new instance of the ISEAddOnToolPaneOpenOrClosedEventArgs class. + + collection where the event happened + value indicating the pane has been opened + + + + Gets the collection where the event happened + + + + + Gets a value indicating whether the pane has been opened + + + + + Extension menu item. + + + + + Used to retrieve the string representation of a KeyGesture + + + + + Shortcut to the menu item. + + + + + Submenus of this menu item. + + + + + Script to be executed. + + + + + Name to be displayed in the menu. + + + + + Parent menu item. There is only one parent, so the same item is prevented from being added twice as a submenu. + + + + + Initializes a new instance of the ISEMenuItem class. + + Name to be displayed in the menu. + Script to be executed. + Shortcut to the menu item. + + If the is null or + if the is not null, but the is null. + + + If the is empty. + + + + + Gets the script to be executed. + + + + + Gets the name to be displayed in the menu. + + + + + Gets the shortcut to the menu item. + + + + + Gets the submenus of this menu item. + + + + + Gets the display name for the shortcut. + + + + + Returns the string representation of the . + + key gesture we want a string representation from. + The string representation of the . + + + + Sets a newItem's parent and propagate changes to this.parent. + + event sender. + event arguments. + + + + Performs validation of new items added to SubMenus to make sure there are no loops or shortcut repetitions. + This method considers the scenario where the tree containing this, and the trees with root in the new Items + are merged, and checks for loops and shortcut conflicts in the merge. + + event sender. + event parameters. + + + + Collection of menu item. + + + + + Initializes a new instance of the ISEMenuItemCollection class. + + + + + Adds a new ISEMenuItem to the collection returning the item just added. + + Name to be displayed in the menu. + Script to be executed. + Shortcut to the menu item. + + If the is null or + if the is not null, but the is null. + + + If the is empty. + + The ISEMenuItem added in this call. + + + + Settings for the Windows Powershell Graphical host. + + + + + The default options + + + + + The font size of all editors + + + + + The zoom of all editors + + + + + State of the script pane. + + + + + true to show the toolbar + + + + + true to show line numbers + + + + + true to show outlining + + + + + true to warn before saving on run + + + + + true to warn before opening the same file in a different PowerShellTab + + + + + The colors for the input and script editor tokens. + + + + + The colors for the console tokens + + + + + The colors for xml file tokens + + + + + True when the public properties cannot be set (for default options). + + + + + Font name in use. + + + + + Foreground color for errors + + + + + Background color for errors + + + + + Foreground color for warnings + + + + + Background color for warnings + + + + + Foreground color for debug + + + + + Background color for debug + + + + + Foreground color for verbose + + + + + Background color for verbose + + + + + Background color for the console text. + + + + + Background color for the console. + + + + + The foreground color for the console text. + + + + + Background color for the files. + + + + + Foreground color for non script files in the script pane. + The foreground color for script files is specified in TokenColors. + + + + + Indicates help should be consulted locally. + + + + + Indicates the interval in minutes for auto saving files. + Use a negative number to turn off the auto save feature. + The tipe is short because short.MaxValue works fine when used + in the timspan of a dispatchTimer, int.MaxValue throws an exception. + short.MaxValue in minutes is 22.75 days. That sounds like way past + what one would want for the interval. + + + + + Indicates default snippets should be displayed + + + + + Maximum number of MRU files + + + + + value indicating whether Intellisense should be displayed in the console pane + + + + + value indicating whether Intellisense should be displayed in the script pane + + + + + value indicating whether Enter should select an item from the console pane intellisense + + + + + value indicating whether Enter should select an item from the script pane intellisense + + + + + Indicates the intellisense timeout in seconds + + + + + Initializes a new instance of the ISEOptions class. + + + + + For INotifyPropertyChanged + + + + + Gets or sets the state of the script pane when it is expanded. + + + + + Gets or sets a value indicating whether the default snippets should be displayed + + + + + Gets or sets a value indicating whether the toolbar is visible + + + + + Gets or sets a value indicating whether outlining should be displayed + + + + + Gets or sets a value indicating whether line numbers should be displayed + + + + + Gets the colors for the input and script editor tokens. + + + + + Gets the colors for the console editor tokens. + + + + + Gets the colors for xml file tokens. + + + + + Gets the default values for the options. + + + + + Gets or sets the font size used in the output, input and script editors. + + + + + Gets or sets the zoom used in the output, input and script editors. + + + + + Gets or sets the font name currently in use in the script editors and console pane. + + + + + Gets or sets the foreground color for errors. + + + + + Gets or sets the background color for errors. + + + + + Gets or sets the foreground color for warnings. + + + + + Gets or sets the background color for warnings. + + + + + Gets or sets the foreground color for verbose messages. + + + + + Gets or sets the background color for verbose mesages. + + + + + Gets or sets the foreground color for debug messages. + + + + + Gets or sets the background color for debug mesages. + + + + + Gets or sets the background color for the whole conosle area. + + + + + Gets or sets the background color for output text blocks. + + + + + Gets or sets the foreground color for the console text. + + + + + Gets or sets the background color for scripts. + + + + + Gets or sets the Foreground color for non script files in the script pane. + The foreground color for script files is specified in . + + + + + Gets or sets a value indicating whether there should be a warning message when opening the same file in different + runspaces regarding the fact that the same editor will be used. + + + + + Gets or sets a value indicating whether there should be a warning message when saving a script before running. + + + + + Gets or sets a value indicating whether help should be consulted locally. + + + + + Gets or sets a value indicating the interval in minutes for auto saving files. + Use a negative number to turn off the auto save feature. + + + + + Gets or sets a value indicating whether the toolbar is visible + + + + + Gets or sets a value indicating whether Intellisense should be displayed in the console pane + + + + + Gets or sets a value indicating whether Intellisense should be displayed in the script pane + + + + + Gets or sets a value indicating whether Enter should select an item from the console pane intellisense + + + + + Gets or sets a value indicating whether Enter should select an item from the console pane intellisense + + + + + Gets or sets a value indicating the intellisense timeout in seconds + + + + + Gets the colors for the input and script editor tokens in the internal type. + + + + + Gets the colors for the console editor tokens in the internal type. + + + + + Gets the colors for the xml file tokens in the internal type + + + + + Gets the label for a zoom control + + + + + Restores the dafault values for all options. + + + + + Restores the default values of the TokenColors property. + + + + + Restores the default values of the ConsoleTokenColors property. + + + + + Restores the default values of the TokenColors property. + + + + + Loads the option values from the user settings. + + + + + Verifies that a SelectedScriptPaneState is valid + + value to verify + true if the SelectedScriptPaneState is valid + + + + Gets an ISEOptions object with all the properties set to the default values + + An ISEOptions object with all the properties set to the default values + + + + Loads the user setting font name and size if they are valid, or uses the default font name and size otherwise + + + + + Used internaly to notify of a property change + + name of the property that changed + + + + Contains the code to deal with MRU (Most Recently Used) files + + + + + main window where the menu is built + + + + + Initializes a new instance of the MruManager class + + main window where the menu is built + + + + Adds the at the top of the list. + If is already present, it is removed from its previous position before + added to the top. + The menu is updated after the addition. + + path to be added to the MRU + + + + Removes from the MRU because it could not be opened, for instance. + /// The menu is updated after the removal. + + path to be removed from the MRU + + + + Sets the maximum count of MRU entries removing existing entries past that count. + The menu is updated after setting. + + maximum count of MRU items + + + + Updates the menu after additions/removals from the MRU or explicitly when the main window + is constructed + + + + + Gets the position for in the MRU or -1 if it is not found + + path to get the position from + the position for in the MRU or -1 if it is not found + + + + Called when the options properties change to update the maximum count + + event sender + event arguments + + + + Host object representing the whole application. + + + + + The current PowerShellTab associated with this host object. + + + + + The current ISEFile associated with this host object. + + + + + value indicating whether this object is used in AddOn tools. + True if it is used in an AddOn tool, false if it is used in ISE + + + + + The currently visible horizontal AddOn tools + + + + + The currently visible vertical AddOn tools + + + + + Initializes a new instance of the ObjectModelRoot class. + + the current PowerShellTab associated with this host object. + true if this object is going to be used in AddOnTools + + + + Gets the current PowerShellTab associated with this host object. + + + + + Gets the current associated with this host object. + + + + + Gets the current visible horizontal associated with this host object. + + + + + Gets the current visible vertical associated with this host object. + + + + + Gets the application options. + + + + + Gets the Runspaces in the application. + + + + + Dictionary that: + 1) Notifies of changes + 2) Can be set to read only + 3) Access its data in the UI Thread + + The type of keys in the dictionary. + The type of values in the dictionary. + + + + The underlying dictionary passed to the constructor. + + + + + Returns true if this collection is readonly + + + + + Initializes a new instance of the ObservableDictionary class. + + true if Adding Removing and setting should not be allowed. + the comparer to be used for the keys. + + + + Initializes a new instance of the ObservableDictionary class. + + true if Adding Removing and setting should not be allowed. + + + + Notifies changes in the collection. + + + + + Gets the number of elements in a sequence. + + + + + Gets a value indicating whether the ICollection is read-only. + + + + + Gets an ICollection containing the keys of the IDictionary. + + + + + Gets an ICollection containing the values in the IDictionary. + + + + + Gets or sets the element with the specified key. + + The key of the element to get or set. + The element with the specified key. + When setting the value and readonly has been passed to the contructor. + + + + Adds an element with the provided key and value to the IDictionary. + + The object to use as the key of the element to add. + The object to use as the value of the element to add. + When calling the method and readonly has been passed to the contructor. + + + + Determines whether the IDictionary contains an element with the specified key. + + The key to locate in the IDictionary. + true if the IDictionary contains an element with the key; otherwise, false. + + + + Removes the first occurrence of a specific object from the ICollection. + + The object to remove from the ICollection. + true if item was successfully removed from the ICollection; otherwise, false. This method also returns false if item is not found in the original ICollection. + When calling the method and readonly has been passed to the contructor. + + + + Gets the value associated with the specified key. + + The key whose value to get. + When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. This parameter is passed uninitialized. + true if the object that implements IDictionary contains an element with the specified key; otherwise, false. + + + + Adds an item to the ICollection. + + The object to add to the ICollection. + When calling the method and readonly has been passed to the contructor. + + + + Removes all items from the ICollection. + + + + + Determines whether the ICollection contains a specific value. + + The object to locate in the ICollection. + true if item is found in the ICollection; otherwise, false. + + + + Copies the elements of the ICollection to an Array, starting at a particular Array index. + + The one-dimensional Array that is the destination of the elements copied from ICollection. The Array must have zero-based indexing. + The zero-based index in array at which copying begins. + + + + Removes the first occurrence of a specific object from the ICollection. + + The object to remove from the ICollection. + true if item was successfully removed from the ICollection; otherwise, false. This method also returns false if item is not found in the original ICollection. + When calling the method and readonly has been passed to the contructor. + + + + Returns an enumerator that iterates through a collection. + + An IEnumerator object that can be used to iterate through the collection. + + + + Returns an enumerator that iterates through a collection. + + An IEnumerator object that can be used to iterate through the collection. + + + + Resets the underlying dictionary with the values in . + + new values for the underlyingDictionary + + + + Called to notify of major changes to the dictionary. + + + + + Called to notify of additions to the dictionary. + + Item added. + + + + Called to notify of removales to the dictionary. + + Item removed. + + + + Called to notify when an item is replaced in the dictionary. + + the old value + the new value + + + + Collection used in the Visible ISEAddOnTool collections allowing the internal code + to change the collection in response to changes in the ISEAddOnTool collections + + + + + flag that allows internal modifications to the collection + + + + + The ISEAddOnTool that is currently selected + + + + + Initializes a new instance of the ReadOnlyISEAddOnToolCollection class. + + + + + For INotifyPropertyChanged + + + + + Gets or sets the currently selected Add-on tool + + + + + Returns true if this collection contains an AddOn tool with the control + + control we want to check for membership to the collection + true if this collection contains an AddOn tool with the control + + + + Returns true if the collection contains an AddOn tool with the control + + collection that might contain + control we want to check for membership to the collection + true if this collection contains an AddOn tool with the control + + + + Selects the . This allows setting the selected tool to null. + + File to be selected. + + + + Called from internal code to add new members to the collection + + tool to be added + + + + Called from internal code to clear the collection + + + + + Called when modifications to the collection are attempted + + event sender + event arguments + + + + Used internaly to notify of a property change + + name of the property that changed + + + + The possible visualizations of the script pane when it is expanded. + + + + + Script pane is to the top + + + + + Script pane is to the right + + + + + Script pane is maximized + + + + + Color Names used in options + + + + + Error Message = Module not found. + + + + + Module {0} doesn't contain a {1} folder + + + + + {0} cannot contain the following sequence of characters: "{1}". + + + + + Token colors for XML + + + + Angle brackets + + + Attribute value + + + Delimiter for comments + + + Xml comments + + + Element name + + + Xml Attribute + + + All other xml elements + + + String quote + + + Xaml markup extension + + + CDATA section + + + + GeneratedInternalTypeHelper + + + + + CreateInstance + + + + + GetPropertyValue + + + + + SetPropertyValue + + + + + CreateDelegate + + + + + AddEventHandler + + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GraphicalHost.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GraphicalHost.dll new file mode 100644 index 0000000..ce384e1 Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GraphicalHost.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GraphicalHost.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GraphicalHost.xml new file mode 100644 index 0000000..88260b9 --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.GraphicalHost.xml @@ -0,0 +1,10218 @@ + + + + Microsoft.PowerShell.GraphicalHost + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to OutGridViewWindow Object. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to {0} cannot be modified directly, use {1} instead.. + + + + + Looks up a localized string similar to Columns. + + + + + Looks up a localized string similar to {0:G}. + + + + + Looks up a localized string similar to {0}. + + + + + Looks up a localized string similar to {0:N}. + + + + + Looks up a localized string similar to {0:N0}. + + + + + Looks up a localized string similar to {0} does not support adding to the Items collection, use {1} instead.. + + + + + Looks up a localized string similar to If View is set to a {0}, it should have the type {1}.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Back. + + + + + Looks up a localized string similar to Forward. + + + + + Looks up a localized string similar to Select Columns.... + + + + + Looks up a localized string similar to …. + + + + + Looks up a localized string similar to The value must be a valid date in the following format: {0}.. + + + + + Looks up a localized string similar to The value must be a valid number.. + + + + + Looks up a localized string similar to Value should be of Type {0}.. + + + + + Looks up a localized string similar to contains. + + + + + Looks up a localized string similar to does not contain. + + + + + Looks up a localized string similar to does not equal. + + + + + Looks up a localized string similar to equals. + + + + + Looks up a localized string similar to is greater than or equal to. + + + + + Looks up a localized string similar to is between. + + + + + Looks up a localized string similar to is empty. + + + + + Looks up a localized string similar to is not empty. + + + + + Looks up a localized string similar to is less than or equal to. + + + + + Looks up a localized string similar to ends with. + + + + + Looks up a localized string similar to starts with. + + + + + Looks up a localized string similar to LeftToRight. + + + + + Looks up a localized string similar to (none). + + + + + Looks up a localized string similar to Search. + + + + + Looks up a localized string similar to The current selection is empty.. + + + + + Looks up a localized string similar to Ctrl+Add. + + + + + Looks up a localized string similar to Ctrl+Shift+Add. + + + + + Looks up a localized string similar to Ctrl+Plus. + + + + + Looks up a localized string similar to Ctrl+Shift+Plus. + + + + + Looks up a localized string similar to Ctrl+Subtract. + + + + + Looks up a localized string similar to Ctrl+Shift+Subtract. + + + + + Looks up a localized string similar to Ctrl+Minus. + + + + + Looks up a localized string similar to Ctrl+Shift+Minus. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Shortcut Rules. + + + + + Looks up a localized string similar to Columns Rules. + + + + + Looks up a localized string similar to Add Filter Criteria. + + + + + Looks up a localized string similar to Add. + + + + + Looks up a localized string similar to Cancel. + + + + + Looks up a localized string similar to Back. + + + + + Looks up a localized string similar to Forward. + + + + + Looks up a localized string similar to Filter. + + + + + Looks up a localized string similar to Find in this column. + + + + + Looks up a localized string similar to Selected Columns. + + + + + Looks up a localized string similar to Available Columns. + + + + + Looks up a localized string similar to Add. + + + + + Looks up a localized string similar to Remove. + + + + + Looks up a localized string similar to Move up. + + + + + Looks up a localized string similar to Move down. + + + + + Looks up a localized string similar to OK. + + + + + Looks up a localized string similar to Cancel. + + + + + Looks up a localized string similar to Available columns. + + + + + Looks up a localized string similar to Select columns. + + + + + Looks up a localized string similar to >>. + + + + + Looks up a localized string similar to <<. + + + + + Looks up a localized string similar to Selected columns. + + + + + Looks up a localized string similar to This column may not be removed.. + + + + + Looks up a localized string similar to The list must always display at least one column.. + + + + + Looks up a localized string similar to Move selected column to list of visible columns. + + + + + Looks up a localized string similar to Move selected column to list of hidden columns. + + + + + Looks up a localized string similar to Collapse. + + + + + Looks up a localized string similar to Expand. + + + + + Looks up a localized string similar to Collapse. + + + + + Looks up a localized string similar to Expand. + + + + + Looks up a localized string similar to Value. + + + + + Looks up a localized string similar to Rules. + + + + + Looks up a localized string similar to <Empty>. + + + + + Looks up a localized string similar to Delete. + + + + + Looks up a localized string similar to Rename. + + + + + Looks up a localized string similar to Name. + + + + + Looks up a localized string similar to Delete. + + + + + Looks up a localized string similar to Clear All. + + + + + Looks up a localized string similar to Filter applied.. + + + + + Looks up a localized string similar to New Query. + + + + + Looks up a localized string similar to Cancel. + + + + + Looks up a localized string similar to Clear All. + + + + + Looks up a localized string similar to Search. + + + + + Looks up a localized string similar to Click to display saved search queries.. + + + + + Looks up a localized string similar to Click to save a search query. + + + + + Looks up a localized string similar to Queries. + + + + + Looks up a localized string similar to Ok. + + + + + Looks up a localized string similar to Query. + + + + + Looks up a localized string similar to Cancel. + + + + + Looks up a localized string similar to Queries. + + + + + Looks up a localized string similar to There are currently no saved queries.. + + + + + Looks up a localized string similar to Add criteria. + + + + + Looks up a localized string similar to Overwrite the existing query or type a different name to save a new query. Each query consists of criteria, sorting, and column customizations.. + + + + + Looks up a localized string similar to Click to clear all filter criteria.. + + + + + Looks up a localized string similar to Click to add search criteria.. + + + + + Looks up a localized string similar to Click to expand search criteria.. + + + + + Looks up a localized string similar to Search. + + + + + Looks up a localized string similar to Clear Search Text. + + + + + Looks up a localized string similar to Tasks. + + + + + Looks up a localized string similar to Tasks. + + + + + Looks up a localized string similar to Tasks. + + + + + Looks up a localized string similar to Indeterminate Progress Icon. + + + + + Looks up a localized string similar to Expand. + + + + + Looks up a localized string similar to Collapse. + + + + + Looks up a localized string similar to Collapse. + + + + + Looks up a localized string similar to Expand. + + + + + Looks up a localized string similar to Filter. + + + + + Looks up a localized string similar to Find in this column. + + + + + Looks up a localized string similar to {0} rule. + + + + + Looks up a localized string similar to and. + + + + + Looks up a localized string similar to and. + + + + + Looks up a localized string similar to or. + + + + + Looks up a localized string similar to Sorted ascending. + + + + + Looks up a localized string similar to Sorted descending. + + + + + Looks up a localized string similar to No matches found.. + + + + + Looks up a localized string similar to Filter. + + + + + Looks up a localized string similar to Sort Glyph. + + + + + Looks up a localized string similar to Sort Glyph. + + + + + Looks up a localized string similar to Search. + + + + + Looks up a localized string similar to Cancel. + + + + + Looks up a localized string similar to Expand or Collapse Filter Panel. + + + + + Looks up a localized string similar to ({0} of {1}). + + + + + Looks up a localized string similar to Searching.... + + + + + Looks up a localized string similar to ({0}). + + + + + Looks up a localized string similar to {0}: {1}. + + + + + Looks up a localized string similar to Show Children. + + + + + Looks up a localized string similar to Show Children. + + + + + Looks up a localized string similar to Cancel. + + + + + Looks up a localized string similar to OK. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cancel. + + + + + Looks up a localized string similar to Match Case. + + + + + Looks up a localized string similar to CommonParameters. + + + + + Looks up a localized string similar to Description. + + + + + Looks up a localized string similar to Examples. + + + + + Looks up a localized string similar to _Find:. + + + + + Looks up a localized string similar to Help Sections. + + + + + Looks up a localized string similar to {0} Help. + + + + + Looks up a localized string similar to Inputs. + + + + + Looks up a localized string similar to {0} {1}. + + + + + Looks up a localized string similar to Methods. + + + + + Looks up a localized string similar to _Next. + + + + + Looks up a localized string similar to No matches found. + + + + + Looks up a localized string similar to Notes. + + + + + Looks up a localized string similar to OK. + + + + + Looks up a localized string similar to 1 match. + + + + + Looks up a localized string similar to Outputs. + + + + + Looks up a localized string similar to Accept wildcard characters?. + + + + + Looks up a localized string similar to Default value. + + + + + Looks up a localized string similar to Accept pipeline input?. + + + + + Looks up a localized string similar to Position?. + + + + + Looks up a localized string similar to Required?. + + + + + Looks up a localized string similar to Parameters. + + + + + Looks up a localized string similar to _Previous. + + + + + Looks up a localized string similar to Properties. + + + + + Looks up a localized string similar to RelatedLinks. + + + + + Looks up a localized string similar to Remarks. + + + + + Looks up a localized string similar to Search Options. + + + + + Looks up a localized string similar to Settings. + + + + + Looks up a localized string similar to {0} matches. + + + + + Looks up a localized string similar to Synopsis. + + + + + Looks up a localized string similar to Syntax. + + + + + Looks up a localized string similar to Help for {0}. + + + + + Looks up a localized string similar to Whole Word. + + + + + Looks up a localized string similar to {0}%. + + + + + Looks up a localized string similar to Zoom. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cancel. + + + + + Looks up a localized string similar to Co_py. + + + + + Looks up a localized string similar to OK. + + + + + Looks up a localized string similar to _Run. + + + + + Looks up a localized string similar to All. + + + + + Looks up a localized string similar to Modules:. + + + + + Looks up a localized string similar to Can receive value from pipeline. + + + + + Looks up a localized string similar to ? . + + + + + Looks up a localized string similar to Help. + + + + + Looks up a localized string similar to Common Parameters. + + + + + Looks up a localized string similar to Errors. + + + + + Looks up a localized string similar to Name: {0} + Module: {1} ({2}). + + + + + Looks up a localized string similar to Command Name. + + + + + Looks up a localized string similar to Common to all parameter sets. + + + + + Looks up a localized string similar to Parameters for "{0}":. + + + + + Looks up a localized string similar to The following errors occurred running the command: + {0}. + + + + + Looks up a localized string similar to Imported. + + + + + Looks up a localized string similar to Show Details. + + + + + Looks up a localized string similar to Failed to import the module required by command "{0}". Module name: "{1}". Error message: "{2}".. + + + + + Looks up a localized string similar to Mandatory. + + + + + Looks up a localized string similar to *. + + + + + Looks up a localized string similar to {0}:{1}. + + + + + Looks up a localized string similar to Modules. + + + + + Looks up a localized string similar to .... + + + + + Looks up a localized string similar to {0}:. + + + + + Looks up a localized string similar to <No module name>. + + + + + Looks up a localized string similar to There are no parameters.. + + + + + Looks up a localized string similar to Not Imported. + + + + + Looks up a localized string similar to To import the "{0}" module and its cmdlets, including "{1}", click {2}.. + + + + + Looks up a localized string similar to Optional. + + + + + Looks up a localized string similar to Please Wait.... + + + + + Looks up a localized string similar to Position: {0}. + + + + + Looks up a localized string similar to Click after using "{0}" to see the new commands. + + + + + Looks up a localized string similar to Select multiple values for "{0}". + + + + + Looks up a localized string similar to Show Command - Error. + + + + + Looks up a localized string similar to Name:. + + + + + Looks up a localized string similar to Refresh. + + + + + Looks up a localized string similar to Type: {0}. + + + + + Provides a control that is always visible in the automation tree. + + + + + Initializes a new instance of the class. + + + + + Returns the implementations for this control. + + The implementations for this control. + + + + Provides an automation peer for AutomationImage. + + + + + Initializes a new instance of the class. + + The owner of the automation peer. + + + + Gets a value that indicates whether the element is understood by the user as interactive or as contributing to the logical structure of the control in the GUI. Called by IsControlElement(). + + This method always returns false. + + + + Provides a control that is always visible in the automation tree. + + + + + Initializes a new instance of the class. + + + + + Returns the implementations for this control. + + The implementations for this control. + + + + Provides an automation peer for AutomationButton. + + + + + Initializes a new instance of the class. + + The owner of the automation peer. + + + + Gets a value that indicates whether the element is understood by the user as interactive or as contributing to the logical structure of the control in the GUI. Called by IsControlElement(). + + This method always returns false. + + + + Provides a control that is always visible in the automation tree. + + + + + Initializes a new instance of the class. + + + + + Returns the implementations for this control. + + The implementations for this control. + + + + Provides an automation peer for AutomationTextBlock. + + + + + Initializes a new instance of the class. + + The owner of the automation peer. + + + + Gets a value that indicates whether the element is understood by the user as interactive or as contributing to the logical structure of the control in the GUI. Called by IsControlElement(). + + This method always returns true. + + + + Gets the class name. + + The class name. + + + + A class which returns the same boxed bool values. + + + + + The CustomTypeComparer is responsible for holding custom comparers + for different types, which are in turn used to perform comparison + operations instead of the default IComparable comparison. + with a custom comparer + + + + + The static constructor. + + + + + Compares two objects and returns a value indicating + whether one is less than, equal to, or greater than the other. + + + The first object to compare. + + + The second object to compare. + + + A type implementing IComparable. + + + If value1 is less than value2, then a value less than zero is returned. + If value1 equals value2, than zero is returned. + If value1 is greater than value2, then a value greater than zero is returned. + + + + + Routed event args which provide the ability to attach an + arbitrary peice of data. + + There are no restrictions on type T. + + + + Constructs a new instance of the DataRoutedEventArgs class. + + The data payload to be stored. + The routed event. + + + + Gets a value containing the data being stored. + + + + + The DateTimeApproximationComparer is responsible for comparing two + DateTime objects at a level of precision determined by + the first object. The comparison either compares at the + date level or the date and time (down to Seconds precision). + + + + + Compares two objects and returns a value indicating + whether one is less than, equal to, or greater than the other. + + + The first object to compare. + + + The second object to compare. + + + If value1 is less than value2, then a value less than zero is returned. + If value1 equals value2, than zero is returned. + If value1 is greater than value2, then a value greater than zero is returned. + + + + + Partial class implementation for DismissiblePopup control. + + + A popup which child controls can signal to be dimissed. + + + If a control wants to dismiss the popup then they should execute the DismissPopupCommand on a target in the popup window. + + + + + Constructs an instance of DismissablePopup. + + + + + Responds to the condition in which the value of the IsOpen property changes from false to true. + + The event arguments. + + + + Responds when the value of the IsOpen property changes from to true to false. + + The event arguments. + + + + Provides class handling for the KeyDown routed event that occurs when the user presses a key while this control has focus. + + The event data. + + + + A command which child controls can use to tell the popup to close. + + + + + Called when DismissPopup executes. + + + A command which child controls can use to tell the popup to close. + + + + + Identifies the CloseOnEscape dependency property. + + + + + Gets or sets a value indicating whether the popup closes when ESC is pressed. + + + + + Occurs when CloseOnEscape property changes. + + + + + Called when CloseOnEscape property changes. + + + + + Identifies the FocusChildOnOpen dependency property. + + + + + Gets or sets a value indicating whether focus should be set on the child when the popup opens. + + + + + Occurs when FocusChildOnOpen property changes. + + + + + Called when FocusChildOnOpen property changes. + + + + + Identifies the SetFocusOnClose dependency property. + + + + + Indicates whether the focus returns to either a defined by the FocusOnCloseTarget dependency property UIElement or PlacementTarget or not. + + + + + Occurs when SetFocusOnClose property changes. + + + + + Called when SetFocusOnClose property changes. + + + + + Identifies the SetFocusOnCloseElement dependency property. + + + + + If the SetFocusOnClose property is set True and this property is set to a valid UIElement, focus returns to this UIElement after the DismissiblePopup is closed. + + + + + Occurs when SetFocusOnCloseElement property changes. + + + + + Called when SetFocusOnCloseElement property changes. + + + + + Called when a property changes. + + + + + Called when the type is initialized. + + + + + Provides a base automation peer for FrameworkElement controls. + + + + + Gets or sets the control type of the element that is associated with this automation peer. + + + + + Gets or sets a value that indicates whether the control should show in the logical tree. + + + + + Initializes a new instance of the class. + + The owner of the automation peer. + + + + Initializes a new instance of the class. + + The owner of the automation peer. + The control type of the element that is associated with the automation peer. + + + + Initializes a new instance of the class. + + The owner of the automation peer. + The control type of the element that is associated with the automation peer. + Whether the element should show in the logical tree. + + + + Gets the class name. + + The class name. + + + + Gets the control type of the element that is associated with the automation peer. + + Returns the control type of the element that is associated with the automation peer. + + + + Gets a value that indicates whether the element is understood by the user as interactive or as contributing to the logical structure of the control in the GUI. Called by IsControlElement(). + + This method always returns true. + + + + An interface designed to provide updates about an asynchronous operation. + If the UI is data bound to the properties in this interface then INotifyPropertyChanged should + be implemented by the type implementing IAsyncProgress so the UI can get notification of the properties + being changed. + + + + + Gets a value indicating whether the async operation is currently running. + + + + + Gets a the error for the async operation. This field is only valid if + OperationInProgress is false. null indicates there was no error. + + + + + Takes a value and returns the largest value which is a integral amount of the second value. + + + + + Takes a value and returns the largest value which is a integral amount of the second value. + + + The first value is the source. The second is the factor. + + The parameter is not used. + The padding to subtract from the first value. + The parameter is not used. + + The integral value. + + + + + This method is not used. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + + + + Takes a bool value and returns the inverse. + + + + + Converts a boolean value to be it's inverse. + + The source value. + The parameter is not used. + The parameter is not used. + The parameter is not used. + The inverted boolean value. + + + + This method is not used. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + + + + Takes two objects and determines whether they are equal. + + + + + Takes two items and determines whether they are equal. + + + Two objects of any type. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + + True if-and-only-if the two objects are equal per Object.Equals(). + Null is equal only to null. + + + + + This method is not used. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + + + + The IsNotNullConverter is responsible for converting a value into + a boolean indicting whether the value is not null. + + + + + Determines if value is not null. + + The object to check. + The parameter is not used. + The parameter is not used. + The parameter is not used. + Returns true if value is not null, false otherwise. + + + + This method is not used. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + + + + Defines an interface for a factory that creates + StateDescriptors. + + The type T used by the StateDescriptor. + + + + Creates a new StateDescriptor based upon custom + logic. + + A new StateDescriptor. + + + + Gets the logical direction for a key, taking into account RTL settings. + + The element to get FlowDirection from. + The key pressed. + The logical direction. + + + + Gets the focus direction for a key, taking into account RTL settings. + + The element to get FlowDirection from. + The key pressed. + The focus direction. + + + + Determines if the control key is pressed. + + True if a control is is pressed. + + + + Determines if the key is a navigation key. + + The key pressed. + True if the key is a navigation key. + + + + Picker control that displays a list with basic editing functionality. + + + This control presents a dropdown listbox with associated organizing actions that can be performed on it. + + + + + If a custom template is provided for this control, then the template MUST provide the following template parts: + + PART_Picker - A required template part which must be of type PickerBase. This control provides basic functionality for Picker-like controls. + + + + + + Creates a new instance of the ListOrganizer class. + + + + + Prevents keyboard focus from leaving the dropdown. + + The event args. + + + + Identifies the ItemDeleted RoutedEvent. + + + + + Occurs when an item is deleted from the list. + + + + + Identifies the ItemSelected RoutedEvent. + + + + + Occurs when an item is selected in the list. + + + + + Informs the ListOrganizer that it should delete the item passed. + + + + + Called when DeleteItem executes. + + + Informs the ListOrganizer that it should delete the item passed. + + + + + Informs the ListOrganizer that it should select the item passed. + + + + + Called when SelectItem executes. + + + Informs the ListOrganizer that it should select the item passed. + + + + + Identifies the DropDownButtonTemplate dependency property. + + + + + Gets or sets a value that controls the visual tree of the DropDown button. + + + + + Occurs when DropDownButtonTemplate property changes. + + + + + Called when DropDownButtonTemplate property changes. + + + + + Identifies the DropDownStyle dependency property. + + + + + Gets or sets the style of the drop-down. + + + + + Occurs when DropDownStyle property changes. + + + + + Called when DropDownStyle property changes. + + + + + Identifies the HighlightedItem dependency property. + + + + + Gets or sets a value that controls the highlighted item in the list. + + + + + Occurs when HighlightedItem property changes. + + + + + Called when HighlightedItem property changes. + + + + + Identifies the ItemsSource dependency property. + + + + + Gets or sets a value that controls the items in the list. + + + + + Occurs when ItemsSource property changes. + + + + + Called when ItemsSource property changes. + + + + + Identifies the NoItemsText dependency property. + + + + + Gets or sets a value that appears to inform the user that there are no items in the list. + + + + + Occurs when NoItemsText property changes. + + + + + Called when NoItemsText property changes. + + + + + Identifies the TextContentPropertyName dependency property. + + + + + Gets or sets a value which dictates what binding is used to provide content for the items in the list. + + + + + Occurs when TextContentPropertyName property changes. + + + + + Called when TextContentPropertyName property changes. + + + + + Called when a property changes. + + + + + Called when ApplyTemplate is called. + + + + + Called when the type is initialized. + + + + + Partial class implementation for ListOrganizerItem control. + + + This control is the row in the ListOrganizer and offers editing functionality. + + + + + If a custom template is provided for this control, then the template MUST provide the following template parts: + + PART_DeleteButton - A required template part which must be of type Button. Button which keeps track of whether the row should be deleted. + PART_EditBox - A required template part which must be of type TextBox. Displays the text content in an editable manner. + PART_LinkButton - A required template part which must be of type Button. Displays the text content in a read-only manner and allows single click selection. + PART_RenameButton - A required template part which must be of type ToggleButton. Button which allows for editing the name of the item. + + + + + + Creates a new instance of the ListOrganizerItem class. + + + + + Gets a value indicating whether the item is in edit mode. + + + + + Selects the current item. + + + + + Allows modification of the item. + + + + + Deletes the item. + + + + + Provides class handling for the KeyDown routed event that + occurs when the user presses a key while this control has focus. + + The event data. + + + + Identifies the TextContentPropertyName dependency property. + + + + + Gets or sets a value which dictates what binding is used to provide content for the items in the list. + + + + + Occurs when TextContentPropertyName property changes. + + + + + Called when TextContentPropertyName property changes. + + + + + Called when a property changes. + + + + + Called when ApplyTemplate is called. + + + + + Called when the type is initialized. + + + + + Partial class implementation for MessageTextBox control. + + + A TextBox which shows a user provided text when its empty. + + + + + Identifies the BackgroundText dependency property. + + + + + Gets or sets a value for text presented to user when TextBox is empty. + + + + + Occurs when BackgroundText property changes. + + + + + Called when BackgroundText property changes. + + + + + Identifies the IsBackgroundTextShown dependency property key. + + + + + Identifies the IsBackgroundTextShown dependency property. + + + + + Gets a value indicating if the background text is being shown. + + + + + Occurs when IsBackgroundTextShown property changes. + + + + + Called when IsBackgroundTextShown property changes. + + + + + Called when a property changes. + + + + + Called when the type is initialized. + + + + + Implements a re-usable base component useful for showing + Picker-like controls. + + + This control provides basic functionality for Picker-like controls. + + + + + If a custom template is provided for this control, then the template MUST provide the following template parts: + + PART_DropDown - A required template part which must be of type DismissiblePopup. The dropdown which hosts the picker. + PART_DropDownButton - A required template part which must be of type ToggleButton. The ToggleButton which controls whether the dropdown is open. + + + + + + Creates a new instance of the PickerBase class. + + + + + Informs the PickerBase that it should close the dropdown. + + + + + Called when CloseDropDown executes. + + + Informs the PickerBase that it should close the dropdown. + + + + + Identifies the DropDownButtonTemplate dependency property. + + + + + Gets or sets a value that controls the visual tree of the DropDown button. + + + + + Occurs when DropDownButtonTemplate property changes. + + + + + Called when DropDownButtonTemplate property changes. + + + + + Identifies the DropDownStyle dependency property. + + + + + Gets or sets the style of the drop-down. + + + + + Occurs when DropDownStyle property changes. + + + + + Called when DropDownStyle property changes. + + + + + Identifies the IsOpen dependency property. + + + + + Gets or sets a value indicating whether the Popup is visible. + + + + + Occurs when IsOpen property changes. + + + + + Called when IsOpen property changes. + + + + + Called when a property changes. + + + + + Called when ApplyTemplate is called. + + + + + Called when the type is initialized. + + + + + Partial class implementation for PopupControlButton control. + + + A toggle button which controls is a popup is open or not. + + + + + Tooltip to show to expand. + + + + + Constructs an instance of PopupControlButton. + + + + + Called when the IsChecked property becomes true. + + The event data for the Checked event. + + + + Called when the IsChecked property becomes false. + + The event data for the Unchecked event. + + + + Invoked when an unhandled PreviewMouseLeftButtonUp routed event reaches an element in its route that is derived from this class. Implement this method to add class handling for this event. + + The MouseButtonEventArgs that contains the event data. The event data reports that the left mouse button was released. + + + + Identifies the IsPopupOpen dependency property. + + + + + Gets or sets a value indicating whether the popup is open or not. + + + The Popup.IsOpen property should be two-way bound to this property. + + + + + Occurs when IsPopupOpen property changes. + + + + + Called when IsPopupOpen property changes. + + + + + Called when a property changes. + + + + + An EventArgs which holds the old and new values for a property change. + + The property type. + + + + Creates an instance of PropertyChangedEventArgs. + + The old value. + The new, current, value. + + + + Gets the previous value for the property. + + + + + Gets the new value for the property. + + + + + Represents a read-only ObservableCollection which also implement IAsyncProgress. + + The type held by the collection. + + + + The constructor. + + The collection with which to create this instance of the ReadOnlyObservableAsyncCollection class. + The object must also implement IAsyncProgress, INotifyCollectionChanged and INotifyPropertyChanged. + + + + Occurs when the collection changes, either by adding or removing an item. + + + see + + + + + Occurs when a property changes. + + + see + + + + + Gets a value indicating whether the async operation is currently running. + + + + + Gets the error for the async operation. This field is only valid if + OperationInProgress is false. null indicates there was no error. + + + + + Partial class implementation for ScalableImage control. + + + Represents an image that can render as a vector or as a bitmap. + + + + + Initializes a new instance of the class. + + + + + Called when the control is asked to render itself in a given area. + Sets the render size to use all available area when is provided. + + The final area within the parent that this element should use to arrange itself and its children. + The actual size used to render the control. + + + + Called when the control is being rendered. + Renders the contents of the image as a vector or a bitmap, depending on which is provided. + + An instance of used to render the control. + + + + Override of . + Make this control to respect the ClipToBounds attribute value. + + An instance of used for calculating an additional clip. + Geometry to use as an additional clip in case when element is larger than available space + + + + Identifies the Source dependency property. + + + + + Gets or sets the ScalableImageSource used to render the image. This is a dependency property. + + + + + Occurs when Source property changes. + + + + + Called when Source property changes. + + + + + Called when a property changes. + + + + + Create an instance of the AutomationPeer. + + + An instance of the AutomationPeer. + + + + + Partial class implementation for SeparatedList control. + + + Represents the source of an image that can render as a vector or as a bitmap. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance of the Freezable derived class. + + The new instance of the Freezable derived class. + + + + Identifies the AccessibleName dependency property. + + + + + Gets or sets the accessible name of the image. This is used by accessibility clients to describe the image, and must be localized. + + + + + Occurs when AccessibleName property changes. + + + + + Called when AccessibleName property changes. + + + + + Identifies the Brush dependency property. + + + + + Gets or sets the source used to render the image as a vector.If this is set, the Image property will be ignored. + + + + + Occurs when Brush property changes. + + + + + Called when Brush property changes. + + + + + Identifies the Image dependency property. + + + + + Gets or sets the source used to render the image as a bitmap. If the Brush property is set, this will be ignored. + + + + + Occurs when Image property changes. + + + + + Called when Image property changes. + + + + + Identifies the Size dependency property. + + + + + Gets or sets the suggested size of the image. + + + + + Occurs when Size property changes. + + + + + Called when Size property changes. + + + + + Called when a property changes. + + + + + Base proxy class for other classes which wish to have save and restore functionality. + + There are no restrictions on T. + + + + Creates a new instances of the StateDescriptor class and creates a new GUID. + + + + + Constructor overload to provide name. + + The friendly name for the StateDescriptor. + + + + Gets the global unique identification number. + + + + + Gets or sets the friendly display name. + + + + + Saves a snapshot of the subject's current state. + + The object whose state will be saved. + + + + Restores the state of subject to the saved state. + + The object whose state will be restored. + + + + Formatting string with a given format. + + + + + Formatting string with a given format. + + The value produced by the binding source. + The type of the binding target property. This is not used. + The converter parameter to use. It should be a formatting string. + The culture to use in the converter. + The formatted string. + + + + Converts a value. + + + This method is not implemented. + + The value that is produced by the binding target. + The type to convert to. + The converter parameter to use. + The culture to use in the converter. + A converted value. + + + + Attached property provider to control. + + + Provides attached properties for TextBlock control. + + + + + Identifies the IsTextTrimmed dependency property key. + + + + + Identifies the IsTextTrimmed dependency property. + + + + + Gets the value for IsTextTrimmedProperty that is attached to the element. + + The dependency object that the property is attached to. + + The value of IsTextTrimmed that is attached to element. + + + + + Sets the value for IsTextTrimmedProperty that is attached to the element. + + The dependency object that the property will be attached to. + The new value. + + + + Identifies the IsTextTrimmedExternally dependency property. + + + + + Gets a value indicating that the Text has been trimmed external to the element. + + The dependency object that the property is attached to. + + The value of IsTextTrimmedExternally that is attached to element. + + + + + Sets a value indicating that the Text has been trimmed external to the element. + + The dependency object that the property will be attached to. + The new value. + + + + Identifies the IsTextTrimmedMonitoringEnabled dependency property. + + + + + Gets the value for IsTextTrimMonitoringEnabled that is attached to the element. + + The dependency object that the property is attached to. + + The value of IsTextTrimmedMonitoringEnabled that is attached to element. + + + + + Sets the value for IsTextTrimMonitoringEnabled that is attached to the element. + + The dependency object that the property will be attached to. + The new value. + + + + Identifies the UntrimmedText dependency property. + + + + + Gets the untrimmed text. + + The dependency object that the property is attached to. + + The value of UntrimmedText that is attached to element. + + + + + Sets the untrimmed text. + + The dependency object that the property will be attached to. + The new value. + + + + Removes whitespace at beginning and end of a string. + + + + + Creates a new TextTrimConverter. By default, both conversion directions are trimmed. + + + + + Trims excess whitespace from the given string. + + original string + The parameter is not used. + The parameter is not used. + The parameter is not used. + The trimmed string. + + + + Trims extra whitespace from the given string during backward conversion. + + original string + The parameter is not used. + The parameter is not used. + The parameter is not used. + The trimmed string. + + + + Represents the availability of an action to a user. + + + + + Indicates that the action is enabled and allowed. + + + + + Indicates that the action is disabled. + + + + + Indicates that the action is not visible. + + + + + Represents the ready-state of a control. + + + + + Indicates that the control is ready. + + + + + Indicates that the control has an error. + + + + + Indicates that the control is refreshing its data. + + + + + Provides common methods for use in the library. + + + + + Gets whether all of the items in are of type T. + + The type to verify. + The items to check. + Whether all of the items in are of type T. + The specified value is a null reference. + + + + Searches for an element that matches the specified type, and returns the first occurrence in the entire . + + The type of the item to find. + The to search. + The first element that matches the specified type, if found; otherwise, the default value for type . + The specified value is a null reference. + + + + Method to trim the non null strings. + + String to Trim. + Trimmed string. + + + + Restore the original order as far as possible. + Columns not in the original set will appear at the end. + + + Type of . + + + ObservableCollection to resort to order of + . + + + Order to which should be resorted. + All enumerated objects must be of type T. + + + Parameter is not generic to type T + since it may be a collection of a subclass of type T, + and IEnumerable'subclass is not compatible with + IEnumerable'baseclass. + + + + + Provides a way to get the of a visual ancestor. + + + + + Searches ancestors for data of the specified class type. + + The visual whose ancestors are searched. + The parameter is not used. + The type of the data to find. The type must be a class. + The parameter is not used. + The data of the specified type; or if not found, null. + The specified value is not a class type. + The specified value is a null reference. + + + + This method is not used. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + + + + A common weak event listener which can be used for different kinds of events. + + The EventArgs type for the event. + + + + Constructs an instance of WeakEventListener. + + The handler for the event. + + + + Receives events from the centralized event manager. + + The type of the WeakEventManager calling this method. + Object that originated the event. + Event data. + + true if the listener handled the event. It is considered an error by the WeakEventManager handling in WPF to register a listener for an event that the listener does not handle. Regardless, the method should return false if it receives an event that it does not recognize or handle. + + + + + Defines a method which will be called when + a condition is met. + + The type of the item. + The parameter to pass to the method. + + + + Provides common WPF methods for use in the library. + + + + + Calls a method when the Loaded event is fired on a FrameworkElement. + + The type of the parameter to pass to the callback method. + The element whose Loaded state we are interested in. + The method we will call if element.IsLoaded is false. + The parameter to pass to the callback method. + + Returns true if the element is not loaded and the callback will be called + when the element is loaded, false otherwise. + + + + + Adds a callback with its associated parameter to the collection. + + The callback to invoke. + The parameter to pass to the callback. + + + + Removes a callback with its associated parameter from the head of + the collection. + + The callback to invoke. + The parameter to pass to the callback. + + + + Gets whether there is any callback data available. + + + + + Removes the specified element from its parent. + + The element to remove. + The specified value is a null reference. + The specified value does not have a parent that supports removal. + + + + Removes the specified element from its parent. + + The parent element. + The element to add. + The specified value does not have a parent that supports removal. + + + + Returns the first visual child that matches the type T. + Performs a breadth-first search. + + The type of the child to find. + The object with a visual tree. + Returns an object of type T if found, otherwise null. + + + + Finds all children of type within the specified object's visual tree. + + The type of the child to find. + The object with a visual tree. + All children of the specified object matching the specified type. + The specified value is a null reference. + + + + Searches ancestors for data of the specified type. + + The type of the data to find. + The visual whose ancestors are searched. + The data of the specified type; or if not found, null. + The specified value is a null reference. + + + + Walks up the visual tree looking for an ancestor of a given type. + + The type to look for. + The object to start from. + The parent of the right type, or null. + The specified value is a null reference. + + + + Executes the on the current command target if it is allowed. + + The routed command. + A user defined data type. + The command target. + true if the command could execute; otherwise, false. + The specified value is a null reference. + + + + Gets the named child of an item from a templated control. + + The type of the child. + The parent of the control. + The name of the child. + The reference to the child, or null if the template part wasn't found. + + + + Gets the named child of an item from a templated control. + + The type of the child. + The parent of the control. + The name of the child. + The reference to the child. + + + + Throws an exception with information about the template part with the wrong type. + + The type of the expected template part. + The name of the expected template part. + + + + Throws an exception with information about the missing template part. + + The type of the expected template part. + The name of the expected template part. + + + + Sets Style for control given a component resource key. + + Type in which Component Resource Style is Defined. + Element whose style need to be set. + Component Resource Key for Style. + + + + Helper function to create a RoutedPropertyChangedEventArgs from a DependencyPropertyChangedEventArgs. + + The type for the RoutedPropertyChangedEventArgs. + The DependencyPropertyChangedEventArgs data source. + The created event args, configured from the parameter. + + + + Helper function to create a RoutedPropertyChangedEventArgs from a DependencyPropertyChangedEventArgs. + + The type for the RoutedPropertyChangedEventArgs. + The DependencyPropertyChangedEventArgs data source. + The routed event the property change is associated with. + The created event args, configured from the parameter. + + + + Moves the item in the specified collection to the specified index. + + The collection to move the item in. + The item to move. + The new index of the item. + The specified item is not in the specified collection. + The specified value is a null reference. + The specified index is not valid for the specified collection. + + + + Represents a decorator that is always visible in the automation tree, indicating that its descendents belong to a logical group. + + + + + Returns the implementations for this control. + + The implementations for this control. + + + + Represents a toggle button used to expand or collapse elements. + + + Represents a toggle button used to expand or collapse elements. + + + + + Tooltip to show to expand. + + + + + Tooltip to show to collapse. + + + + + Initializes a new instance of the class. + + + + + Invoked whenever the effective value of any dependency property on this has been updated. The specific dependency property that changed is reported in the arguments parameter. Overrides . + + The event data that describes the property that changed, as well as old and new values. + + + + Called when the property changes. + + The event data that describes the property that changed, as well as old and new values. + + + + Called when it has keyboard focus. + + The event data that describes getting keyboard focus. + + + + Called when it lost keyboard focus. + + The event data that describes losing keyboard focus. + + + + Create an instance of the AutomationPeer. + + + An instance of the AutomationPeer. + + + + + Provides an automation peer for . + + + + + Initializes a new instance of the class. + + The owner of the automation peer. + + + + Gets the class name. + + The class name. + + + + Gets the control pattern for the that is associated with this . + + Specifies the control pattern that is returned. + The control pattern for the that is associated with this . + + + + Gets the expand/collapse state of this instance. + + + + + Expands this instance of . + + + + + Collapses this instance of . + + + + + The resize grip possibilities. + + + + + One grip is shown, on the right side. + + + + + One grip is shown, on the left side. + + + + + Partial class implementation for Resizer control. + + + Resizer adds a resizing grip and behavior to any control. + + + + + If a custom template is provided for this control, then the template MUST provide the following template parts: + + PART_LeftGrip - A required template part which must be of type Thumb. The grip on the left. + PART_RightGrip - A required template part which must be of type Thumb. The grip on the right. + + + + + + Creates an instance of Resizer. + + + + + Identifies the DraggingTemplate dependency property. + + + + + Gets or sets the template used for the dragging indicator when ResizeWhileDragging is false. + + + + + Occurs when DraggingTemplate property changes. + + + + + Called when DraggingTemplate property changes. + + + + + Identifies the GripBrush dependency property. + + + + + Gets or sets the color of the resize grips. + + + + + Occurs when GripBrush property changes. + + + + + Called when GripBrush property changes. + + + + + Identifies the GripLocation dependency property. + + + + + Gets or sets a value of what grips. + + + + + Occurs when GripLocation property changes. + + + + + Called when GripLocation property changes. + + + + + Identifies the GripWidth dependency property. + + + + + Gets or sets the width of the grips. + + + + + Occurs when GripWidth property changes. + + + + + Called when GripWidth property changes. + + + + + Identifies the ResizeWhileDragging dependency property. + + + + + Gets or sets a value indicating if resizing occurs while dragging. + + + + + Occurs when ResizeWhileDragging property changes. + + + + + Called when ResizeWhileDragging property changes. + + + + + Identifies the ThumbGripLocation dependency property. + + + + + Gets the location for a grip. + + The dependency object that the property is attached to. + + The value of ThumbGripLocation that is attached to element. + + + + + Sets the location for a grip. + + The dependency object that the property will be attached to. + The new value. + + + + Identifies the VisibleGripWidth dependency property. + + + + + Gets or sets the visible width of the grips. + + + + + Occurs when VisibleGripWidth property changes. + + + + + Called when VisibleGripWidth property changes. + + + + + Called when a property changes. + + + + + Called when ApplyTemplate is called. + + + + + Called when the type is initialized. + + + + + A converter which creates the proper thickness for the content of the Resizer, depending on the grip visual size + and grip position. + + + The first value needs to be a double which is the visible grip size. + The second value needs to the be ResizeGripLocation value used. + + + + + Creates an instance of ResizerGripThicknessConverter. + + + + + Converts a value. + + The value produced by the binding source. + The type of the binding target property. + The converter parameter to use. + The culture to use in the converter. + A converted value. If the method returns nullNothingnullptra null reference (Nothing in Visual Basic), the valid null value is used. + + + + Converts a value. + + The value that is produced by the binding target. + The type to convert to. + The converter parameter to use. + The culture to use in the converter. + A converted values. If the method returns nullNothingnullptra null reference (Nothing in Visual Basic), the valid null value is used. + + + + Partial class implementation for UIElementAdorner. + + + An Adorner which displays a given UIElement. + + + + + Constructs an instance of UIElementAdorner. + + The adorned element. + + + + Overrides Visual.GetVisualChild, and returns a child at the specified index from a collection of child elements. + + The zero-based index of the requested child element in the collection. + The requested child element. This should not return null; if the provided index is out of range, an exception is thrown. + + + + Gets the number of visual child elements within this element. + + + + + Implements any custom measuring behavior for the popupAdorner. + + A size to constrain the popupAdorner to. + A Size object representing the amount of layout space needed by the popupAdorner. + + + + When overridden in a derived class, positions child elements and determines a size for a FrameworkElement derived class. + + The final area within the parent that this element should use to arrange itself and its children. + The actual size used. + + + + Identifies the Child dependency property. + + + + + Gets or sets the child element. + + + + + Occurs when Child property changes. + + + + + Called when Child property changes. + + + + + Called when Child property changes. + + + + + The FilterExpressionAndOperatorNode class is responsible for containing children + FilterExpressionNodes which will be AND'ed together during evaluation. + + + + + Gets a collection FilterExpressionNode children used during evaluation. + + + + + Initializes a new instance of the FilterExpressionAndOperatorNode + class. + + + + + Initializes a new instance of the FilterExpressionAndOperatorNode + class. + + + A collection of children which will be added to the + FilterExpressionAndOperatorNode's Children collection. + + + + + Evaluates the children FilterExpressionNodes and returns + the AND'ed result of their results. + + + The item to evaluate against. + + + True if all FilterExpressionNode children evaluate to true, + false otherwise. + + + + + The FilterExpressionNode class is the base class for derived + FilterExpressionNodes. FilterExpressionNodes are used to + construct a logical evaluation tree which holds FilterRules as + its operands. + + + + + In derived classes, this evaluation will return a true or + false result based upon some criteria. + + + The item to evaluate against. + + + True if the criteria is met, false otherwise. + + + + + Retrieves all elements of the specified type within the entire expression tree. + + The type of the items to find. + All elements of the specified type within the entire expression tree. + + + + The FilterExpressionOperandNode class is responsible for holding a + FilterRule within the FilterExpression tree. + + + + + The FilterRule to evaluate. + + + + + Initializes a new instance of the FilterExpressionOperandNode + class. + + + The FilterRule to hold for evaluation. + + + + + Evaluates the item against the contained FilterRule. + + + The item to pass to the contained FilterRule. + + + Returns true if the contained FilterRule evaluates to + true, false otherwise. + + + + + The FilterExpressionOrOperatorNode class is responsible for containing children + FilterExpressionNodes which will be OR'ed together during evaluation. + + + + + Gets a collection FilterExpressionNode children used during evaluation. + + + + + Initializes a new instance of the FilterExpressionOrOperatorNode + class. + + + + + Initializes a new instance of the FilterExpressionOrOperatorNode + class. + + + A collection of children which will be added to the + FilterExpressionOrOperatorNode's Children collection. + + + + + Evaluates the children FilterExpressionNodes and returns + the OR'ed result of their results. + + + The item to evaluate against. + + + True if any FilterExpressionNode child evaluates to true, + false otherwise. + + + + + The ComparableValueFilterRule provides support for derived classes + that evaluate against IComparable values. + + + The generic parameter. + + + + + Gets or sets a value indicating whether null objects passed to Evaluate will + evaluate to true or false. + + + + + Determines if item matches a derived classes criteria. + + + The item to match evaluate. + + + Returns true if the item matches, false otherwise. + + + + + Determines if item matches a derived classes criteria. + + + The item to match evaluate. + + + Returns true if the item matches, false otherwise. + + + + + The DoesNotEqualFilterRule class evaluates an IComparable item to + check if it is not equal to the rule's value. + + + The generic parameter. + + + + + Initializes a new instance of the DoesNotEqualFilterRule class. + + + + + Determines if item is not equal to Value. + + + The data to compare against. + + + Returns true if data is not equal to Value, false otherwise. + + + + + The EqualsFilterRule class evaluates an IComparable item to + check if it is equal to the rule's value. + + + The generic parameter. + + + + + Initializes a new instance of the EqualsFilterRule class. + + + + + Determines if item is equal to Value. + + + The data to compare against. + + + Returns true if data is equal to Value. + + + + + The base class for all filtering rules. + + + + + Gets a value indicating whether the FilterRule can be + evaluated in its current state. + + + + + Gets a display friendly name for the FilterRule. + + + + + Initializes a new instance of the FilterRule class. + + + + + Gets a value indicating whether the supplied item meets the + criteria specified by this rule. + + The item to evaluate. + Returns true if the item meets the criteria. False otherwise. + + + + Occurs when the values of this rule changes. + + + + + Fires . + + + + + The FilterRuleExtensions class provides extension methods + for FilterRule classes. + + + + + Creates a deep copy of a FilterRule. + + + The FilterRule to clone. + + + Returns a deep copy of the passed in rule. + + + + + The IsBetweenFilterRule class evaluates an item to see if it is between + the StartValue and EndValue of the rule. + + + The generic parameter. + + + + + Gets a value indicating whether the FilterRule can be + evaluated in its current state. + + + + + Gets the start value for the range. + + + + + Gets the end value for the range. + + + + + Initializes a new instance of the IsBetweenFilterRule class. + + + + + Evaluates data and determines if it is between + StartValue and EndValue. + + + The data to evaluate. + + + Returns true if data is between StartValue and EndValue, + false otherwise. + + + + + The IsEmptyFilterRule evaluates an item to determine whether it + is empty or not. + + + + + Initializes a new instance of the IsEmptyFilterRule class. + + + + + Gets a values indicating whether the supplied item is empty. + + The item to evaluate. + + Returns true if the item is null or if the item is a string + composed of whitespace. False otherwise. + + + + + The IsGreaterThanFilterRule class evaluates an IComparable item to + check if it is greater than its value. + + + The generic parameter. + + + + + Initializes a new instance of the IsGreaterThanFilterRule class. + + + + + Determines if item is greater than Value. + + + The data to compare against. + + + Returns true if data is greater than Value. + + + + + The IsLessThanFilterRule class evaluates an IComparable item to + check if it is less than the rule's value. + + + The generic parameter. + + + + + Initializes a new instance of the IsLessThanFilterRule class. + + + + + Determines if item is less than Value. + + + The data to compare against. + + + Returns true if data is less than Value. + + + + + The IsNotEmptyFilterRule evaluates an item to determine whether it + is empty or not. + + + + + Initializes a new instance of the IsNotEmptyFilterRule class. + + + + + Gets a values indicating whether the supplied item is not empty. + + The item to evaluate. + + Returns false if the item is null or if the item is a string + composed of whitespace. True otherwise. + + + + + The IsNotEmptyValidationRule checks a value to see if a value is not empty. + + + + + Determines if value is not empty. + + + The value to validate. + + + The culture info to use while validating. + + + Returns true if the value is not empty, false otherwise. + + + + + Represents a filter rule that searches for text within properties on an object. + + + + + Initializes a new instance of the class. + + + + + Gets a collection of the names of properties to search in. + + + + + Evaluates whether the specified properties on contain the current value. + + The item to evaluate. + true if is not null, the current value is valid, and the specified properties on contain the current value; otherwise, false. + + + + Evaluates whether the specified data contains the current value. + + The data to evaluate. + true if contains the current value; otherwise, false. + + + + Called when the evaluation result is invalidated. + Updates the cached Regex pattern. + + + + + Updates the cached Regex with the current value. + If the current value is invalid, the Regex will not be updated because it will not be evaluated. + + + + + The PropertyValueSelectorFilterRule class supports filtering against a + property of an object. Based on the type of the property a collection of + filter rules are available to be used. + + + The generic parameter. + + + + + Gets the name of the property on the item to evaluate which holds + the real value which should be evaluated. + + + + + Creates a new PropertyValueSelectorFilterRule instance. + + + Gets the name of the property on the item to evaluate which holds + the real value which should be evaluated. + + + The display friendly representation of the property name. + + + + + Creates a new PropertyValueSelectorFilterRule instance. + + + The propertyName on the item to evaluate which holds the real + value which should be evaluated. + + + The display friendly representation of the propertyName. + + + The collection of available rules. + + + + + Evaluates whether the item is inclusive. + + + The item to evaluate. + + + Returns true if the item matches the filtering criteria, false otherwise. + + + + + The SelectorFilterRule represents a rule composed of other rules. + + + + + Gets a value indicating whether the rule can be evaluated. + + + + + Gets the collection of available rules. + + + + + Creates a new SelectorFilterRule instance. + + + + + Evaluates whether the item is inclusive. + + + The item to evaluate. + + + Returns true if the item matches the filtering criteria, false otherwise. + + + + + Called when the SelectedValue within AvailableRules changes. + + + The old FilterRule. + + + The new FilterRule. + + + + + The SingleValueComparableValueFilterRule provides support for derived classes + that take a single input and evaluate against IComparable values. + + The generic parameter. + + + + Gets a value that holds user input. + + + + + Gets a value indicating whether the FilterRule can be + evaluated in its current state. + + + + + Initializes a new instance of the SingleValueComparableValueFilterRule class. + + + + + The TextContainsFilterRule class evaluates a string item to + check if it is contains the rule's value within it. + + + + + Initializes a new instance of the TextContainsFilterRule class. + + + + + Determines if Value is contained within data. + + + The data to compare with. + + + Returns true if data contains Value, false otherwise. + + + + + The TextDoesNotContainFilterRule class evaluates a string item to + check if it is does not contain the rule's value within it. + + + + + Initializes a new instance of the TextDoesNotContainFilterRule class. + + + + + Determines if Value is not contained within data. + + + The data to compare with. + + + Returns true if data does not contain Value, false otherwise. + + + + + The TextDoesNotEqualFilterRule class evaluates a string item to + check if it is not equal to the rule's value. + + + + + Initializes a new instance of the TextDoesNotEqualFilterRule class. + + + + + Determines if data is not equal to Value. + + + The value to compare against. + + + Returns true is data does not equal Value, false otherwise. + + + + + The TextEndsWithFilterRule class evaluates a string item to + check if it ends with the rule's value. + + + + + Initializes a new instance of the TextEndsWithFilterRule class. + + + + + Determines if data ends with Value. + + + The value to compare with. + + + Returns true is data ends with Value, false otherwise. + + + + + The TextEqualsFilterRule class evaluates a string item to + check if it is equal to the rule's value. + + + + + Initializes a new instance of the TextEqualsFilterRule class. + + + + + Determines if data is equal to Value. + + + The value to compare against. + + + Returns true is data equals Value, false otherwise. + + + + + The TextFilterRule class supports derived rules by offering services for + evaluating string operations. + + + + + Gets a regex pattern that describes a word boundary that can include symbols. + + + + + Gets or sets whether to ignore case when evaluating. + + + + + Gets or sets whether culture differences in language are ignored when evaluating. + + + + + Initializes a new instance of the TextFilterRule class. + + + + + Gets the current value and determines whether it should be evaluated as an exact match. + + Whether the current value should be evaluated as an exact match. + The current value. + + + + Gets a regular expression pattern based on the current value and the specified patterns. + If the current value is an exact-match string, will be used; otherwise, will be used. + + The pattern to use if the current value is not an exact-match string. The pattern must contain a {0} token. + The pattern to use if the current value is an exact-match string. The pattern must contain a {0} token. + A regular expression pattern based on the current value and the specified patterns. + The specified value is a null reference. + + + + Gets a object that matches the values of and . + + A object that matches the values of and . + + + + Gets a value indicating whether the specified data matches one of the specified patterns. + If the current value is an exact-match string, will be used; otherwise, will be used. + + The data to evaluate. + The pattern to use if the current value is not an exact-match string. The pattern must contain a {0} token. + The pattern to use if the current value is an exact-match string. The pattern must contain a {0} token. + true if the specified data matches one of the specified patterns; otherwise, false. + + + + The TextStartsWithFilterRule class evaluates a string item to + check if it starts with the rule's value. + + + + + Initializes a new instance of the TextStartsWithFilterRule class. + + + + + Determines if data starts with Value. + + + The value to compare with. + + + Returns true is data starts with Value, false otherwise. + + + + + The DataErrorInfoValidationResult supports reporting validation result + data needed for the IDataErrorInfo interface. + + + + + Gets a value indicating whether the error should + be presented to the user. + + + + + Gets a value used to communicate what the error is. + + + + + Geta an instance of DataErrorInfoValidationResult that corresponds + to a valid result. + + + + + Initializes a new instance of the DataErrorInfoValidationResult class. + + + Indicates whether the value checked against the + DataErrorInfoValidationResult is valid + + + Information about the invalidity. + + + The error message to display to the user. If the result is invalid + and the error message is empty (""), the result will be treated as + invalid but no error will be presented to the user. + + + + + Provides a way to create a custom rule in order to check the validity of user input. + + + + + When overridden in a derived class, performs validation checks on a value. + + + The value to check. + + + The culture to use in this rule. + + + A DataErrorInfoValidationResult object. + + + + + The BuiltinDataErrorInfoValidationRuleFactory creates default settings for the + builtin FilterRules. + + + + + Gets or sets a that can retrieve the values of properties on a given object. + + + + + Returns a collection containing the default rules used by a PropertyValueSelectorFilterRule + for type t. + + + The type used to determine what rules to include. + + + Returns a collection of FilterRules. + + + + + Transfers the values from the old rule into the new rule. + + + The old filter rule. + + + The new filter rule. + + + + + Clears the values from the filter rule. + + + The rule to clear. + + + + + Get an error message to display to a user when they + provide a string value that cannot be parsed to type + typeToParseTo. + + + The value entered by the user. + + + The desired type to parse value to. + + + An error message to a user to explain how they can + enter a valid value. + + + + + The FilterEvaluator class is responsible for allowing the registeration of + the FilterExpressionProviders and producing a FilterExpression composed of + the FilterExpression returned from the providers. + + + + + Gets a readonly collection of the registered FilterExpressionProviders. + + + + + Gets a value indicating the status of the filter evaluation. + + + + + Gets a value indicating the status of the filter evaluation. + + + + + Gets a value indicating whether this provider currently has a non-empty filter expression. + + + + + Notifies listeners that a property has changed. + + + + + Applies the filter. + + + + + Stops the filter. + + + + + Returns a FilterExpression composed of FilterExpressions returned from the + registered providers. + + + The FilterExpression composed of FilterExpressions returned from the + registered providers. + + + + + Adds a FilterExpressionProvider to the FilterEvaluator. + + + The provider to add. + + + + + Removes a FilterExpressionProvider from the FilterEvaluator. + + + The provider to remove. + + + + + Notifies listeners that a property has changed. + + + The propertyName which has changed. + + + + + Occurs when the filter expression has changed. + + + + + Notifies any listeners that the filter expression has changed. + + + + + The EventArgs detailing the exception raised while + evaluating the filter. + + + + + Gets the Exception that was raised when filtering was + evaluated. + + + + + Initializes a new instance of the FilterExceptionEventArgs + class. + + + The Exception that was raised when filtering was evaluated. + + + + + The FilterRuleCustomizationFactory class provides a central location + a return an abstract factory which creates the standard settings and rules + used by the builtin FilterRules. + + + + + Gets or sets a factory instance which is used by builtin + filter rules. + + + + + Initializes the static state of the DataErrorInfoValidationRuleFactory class. + + + + + Gets or sets a that can retrieve the values of properties on a given object. + + + + + Returns a collection containing the default rules used by a PropertyValueSelectorFilterRule + for type T. + + + The type used to determine what rules to include. + + + Returns a collection of FilterRules. + + + + + Transfers the values from the old rule into the new rule. + + + The old filter rule. + + + The new filter rule. + + + + + Clears the values from the filter rule. + + + The rule to clear. + + + + + Get an error message to display to a user when they + provide a string value that cannot be parsed to type + typeToParseTo. + + + The value entered by the user. + + + The desired type to parse value to. + + + An error message to a user to explain how they can + enter a valid value. + + + + + The FilterStatus enum is used to classify the current status a is in. + + + + + A FilterStatus of NotApplied indicates that the filter is currently + not applied. + + + + + A FilterStatus of InProgress indicates that the filter is being + applied but is not done. + + + + + A FilterStatus of Applied indicates that the filter has been + applied. + + + + + Provides common utilities for filtering. + + + + + The IEvaluate interface provides the most basic + support for the evaluation of an item against + criteria defined in a derived class. + + + + + Gets a values indicating whether the supplied item has meet the + criteria rule specificed by the rule. + + + The item to evaluate. + + + Returns true if the item meets the criteria. False otherwise. + + + + + The IFilterExpressionProvider interface defines the contract between + providers of FilterExpressions and consumers thereof. + + + + + Gets a FilterExpression representing the current + relational organization of FilterRules for this provider. + + + + + Gets a value indicating whether this provider currently has a non-empty filter expression. + + + + + Raised when the FilterExpression of this provider + has changed. + + + + + The ItemsControlFilterEvaluator class provides functionality to + apply a filter against an ItemsControl. + + + + + Gets or sets an ItemsControl which is + the target for filtering. + + + + + Used to notify listeners that an unhandled exception has occurred while + evaluating the filter. + + + + + Applies the filter. + + + + + Stops the filter. + + + + + The ValidatingSelectorValue class provides support for selecting + a value from a collection of available values. + + + The generic parameter. + + + + + Gets the collection of values available for selection. + + + + + Gets or sets the index of the currently selected item or + returns negative one (-1) if the selection is empty. + + + If you set SelectedIndex to a value less that -1, an + ArgumentException is thrown. If you set SelectedIndex to a + value equal or greater than the number of child elements, + the value is ignored. + + + + + Gets the item within AvailableValues at the offset indicated + by SelectedIndex or returns default(T) if the selection is empty. + + + + + Gets or sets the converter used to display a friendly + value to the user. + + + + + Notifies listeners that the selected value has changed. + + + + + Called to validate the entire object. + + + Returns a DataErrorInfoValidationResult which indicates the validation state + of the object. + + + + + Called to validate the property with the given name. + + + The name of the property whose error message will be checked. + + + Returns a DataErrorInfoValidationResult which indicates + the validation state of the property. + + + may only be + . + + + + + Notifies listeners that the selected value with the available + values has changed. + + + The previous selected value. + + + The current selected value. + + + + + The ValidatingValue class supports setting a value and validating the + value. + + + The generic parameter. + + + + + Gets or sets a value. + + + + + Gets the raw value cast/transformed into + type T. + + + The cast value. + + + + + Forces a validation update to occur. + + + The validation update occurs via signaling that + the Value property has changed. + + + + + Called to validate the entire object. + + + Returns a DataErrorInfoValidationResult which indicates the validation state + of the object. + + + + + Called to validate the property with the given name. + + + The name of the property whose error message will be checked. + + + Returns a DataErrorInfoValidationResult which indicates + the validation state of the property. + + + may only be + . + + + + + The ValidatingValueBase class provides basic services for base + classes to support validation via the IDataErrorInfo interface. + + + + + Gets the collection of validation rules used to validate the value. + + + + + Gets a value indicating whether the value is valid. + + + + + Gets the error message for the property with the given name. + + + The name of the property whose error message will be checked. + + + The error message for the property, or an empty string ("") if + the property is valid. + + + is invalid. + + + + + Gets an error message indicating what is wrong with this object. + + + + + Occurs when a property value changes. + + + The listeners attached to this event are not serialized. + + + + + Adds a validation rule to the ValidationRules collection. + + The validation rule to add. + + + + Removes a validation rule from the ValidationRules collection. + + The rule to remove. + + + + Clears the ValidationRules collection. + + + + + Called to validate the entire object. + + + Returns a DataErrorInfoValidationResult which indicates the validation state + of the object. + + + + + Called to validate the property with the given name. + + + The name of the property whose error message will be checked. + + + Returns a DataErrorInfoValidationResult which indicates the validation state + of the property. + + + + + Calling InvalidateValidationResult causes the + Validation to be reevaluated. + + + + + Notifies listeners that a property has changed. + + + The propertyName which has changed. + + + + + The AddFilterRulePicker class is responsible for allowing users to + add rules to an FilterRulePanel. + + + + + Gets the collection of shortcut rules available for addition to the FilterRulePanel. + + + + + Gets the collection of column rules available for addition to the FilterRulePanel. + + + + + Closes the picker and unchecks all items in the panel. + + + + + Called when CancelAddFilterRules executes. + + + Closes the picker and unchecks all items in the panel. + + + + + Closes the picker and calls AddFilterRulesCommand with the collection of checked items from the picker. + + + + + Called to determine if OkAddFilterRules can execute. + + + + + Called when OkAddFilterRules executes. + + + Closes the picker and calls AddFilterRulesCommand with the collection of checked items from the picker. + + + + + Identifies the AddFilterRulesCommand dependency property. + + + + + Gets or sets the command used to communicate that the action has occurred. + + + + + Occurs when AddFilterRulesCommand property changes. + + + + + Called when AddFilterRulesCommand property changes. + + + + + Identifies the AddFilterRulesCommandTarget dependency property. + + + + + Gets or sets a target of the Command. + + + + + Occurs when AddFilterRulesCommandTarget property changes. + + + + + Called when AddFilterRulesCommandTarget property changes. + + + + + Identifies the IsOpen dependency property. + + + + + Gets or sets a value indicating whether the Popup is visible. + + + + + Occurs when IsOpen property changes. + + + + + Called when IsOpen property changes. + + + + + Called when a property changes. + + + + + Called when the type is initialized. + + + + + The AddFilterRulePicker class is responsible for holding state + information needed by the AddFilterRulePicker class. + + + + + Gets or sets a value indicating whether this item should + be added to the FilterRulePanel. + + + + + Gets the FilterRulePanelItem that will be added to the FilterRulePanel. + + + + + Initializes a new instance of the FilterRulePanelItem class. + + + The FilterRulePanelItem that will be added to the FilterRulePanel. + + + + + Notifies listeners that a property has changed. + + + + + Notifies listeners that a property has changed. + + + The propertyName which has changed. + + + + + The InputFieldBackgroundTextConverter is responsible for determing the + correct background text to display for a particular type of data. + + + + + Converts a value of type ValidatingValue of T into a background string + which provides a hint to the end user (e.g. Empty, M/d/yy). + + + A value of type ValidatingValue. + + + The parameter is not used. + + + The parameter is not used. + + + The parameter is not used. + + + Returns a background string for value. + + + + + This method is not used. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + + + + The IsValidatingValueValidConverter is responsible for determining if + a ValidatingValueBase object is valid. + + + + + Determines if ValidatingValueBase.Error indicates + if the object is valid. + + + The Error string to check. + + + The parameter is not used. + + + The parameter is not used. + + + The parameter is not used. + + + Returns true if value is null or empty, false otherwise. + + + + + This method is not used. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + + + + The FilterRulePanel allows users to construct and display a complex query built using s. + + + + The FilterRulePanel manages two primary entities: s and DataTemplates. + /// + + s are the data classes that store the state for each item in the panel. + They are added and removed to/from the panel using the AddRulesCommand and the RemoveRuleCommand commands. + + + For a FilterRule to display in the panel it must have a DataTemplate registered. To add and remove + DataTemplates, use the AddFilterRulePanelItemContentTemplate and RemoveFilterRulePanelItemContentTemplate methods. + + + + + + Gets the collection of FilterRulePanelItems that are currently + displayed in the panel. + + + + + Gets a FilterExpression representing the current + relational organization of FilterRules for this provider. + + + + + Gets the FilterRulePanelController associated with this FilterRulePanel. + + + + + Gets a FilterRuleTemplateSelector that stores + the templates used for items in the panel. + + + + + Gets a value indicating whether this provider currently has a non-empty filter expression. + + + + + Raised when a FilterRulePanelItem has been added or removed. + + + + + Initializes a new instance of the FilterRulePanel class. + + + + + Associates a DataTemplate with a Type so that objects of that Type + that are displayed in FilterRulePanel use the specified DataTemplate. + + + The type to associate the DataTemplate with. + + + The DataTemplate to associate the type with. + + + + + Removes the Type and associated DataTemplate from usage when displaying objects + of that type in the FilterRulePanel. + + + The type to remove. + + + + + Gets a DataTemplate associated with a type. + + A Type whose DataTemplate will be returned. + A DataTemplate registered for type. + Returns true if there is a DataTemplate registered for type, false otherwise. + + + + Removes all the registered content templates. + + + + + Notifies any listeners that the filter expression has changed. + + + + + Adds a collection of FilterRules to the panel. + + + + + Called when AddRules executes. + + + Adds a collection of FilterRules to the panel. + + + + + Removes a FilterRulePanelItem from the panel. + + + + + Called when RemoveRule executes. + + + Removes a FilterRulePanelItem from the panel. + + + + + Called when the type is initialized. + + + + + Create an instance of the AutomationPeer. + + + An instance of the AutomationPeer. + + + + + The FilterRulePanelContentPresenter selects a template based upon the ContentConverter + provided. + + + + + Initializes a new instance of the FilterRulePanelContentPresenter class. + + + + + Gets or sets an IValueConverter used to convert the Content + value. + + + + + Chooses a template based upon the provided ContentConverter. + + + Returns a DataTemplate. + + + + + The FilterRulePanelController is responsible managing the addition and removal of + s to a . + + + + + Gets the collection of FilterRulePanelItems that are currently + displayed in the panel. + + + + + Gets a FilterExpression representing the current + relational organization of FilterRules for this provider. + + + + + Gets a value indicating whether this provider currently has a non-empty filter expression. + + + + + Raised when a FilterRulePanelItem has been added or removed. + + + + + Initializes a new instance of the FilterRulePanelController class. + + + + + Adds an item to the panel. + + + The item to add. + + + + + Removes an item from the panel. + + + The item to remove. + + + + + Removes all items from the panel. + + + + + Notifies any listeners that the filter expression has changed. + + + + + The FilterRulePanelItem class maintains the state for a row item within a . + + + + + Gets a FilterRule that is stored in this FilterRulePanelItem. + + + + + Gets a string that indentifies which group this + item belongs to. + + + + + Gets the type of FilterRulePanelItemType. + + + + + Notifies listeners that a property has changed. + + + + + Initializes a new instance of the FilterRulePanelItem class. + + + The FilterRule to store in this FilterRulePanelItem. + + + A string which identifies which group this + item belongs to. + + + + + Notifies listeners that a property has changed. + + + The name of a property that has changed. + + + + + The FilterRulePanelItemType enum is used to classify a 's + hierarchical relationship within a . + + + + + A FilterRulePanelItemType of FirstHeader indicates that a FilterRulePanelItem + is the first item in the FilterRulePanel. + + + + + A FilterRulePanelItemType of Header indicates that a FilterRulePanelItem with + some GroupId is the first item in the FilterRulePanel with that GroupId. + + + + + A FilterRulePanelItemType of Item indicates that a FilterRulePanelItem with + some GroupId is not the first item in the FilterRulePanel with that GroupId. + + + + + The FilterRuleTemplateSelector class selects a template based upon the type of + the item and the corresponding template that is registered in the TemplateDictionary. + + + + + Gets the dictionary containing the type-template values. + + + + + Selects a template based upon the type of the item and and the + corresponding template that is registered in the TemplateDictionary. + + + The item to return a template for. + + + The parameter is not used. + + + Returns a DataTemplate for item. + + + + + The FilterRuleToDisplayNameConverter is responsible for converting + a FilterRule value to its DisplayName. + + + + + Converts a FilterRule value to its DisplayName. + + + A FilterRule. + + + Type of String. + + + The parameter is not used. + + + The parameter is not used. + + + The display name of the FilterRule. + + + + + The method is not used. + + + The parameter is not used. + + + The parameter is not used. + + + The parameter is not used. + + + The parameter is not used. + + + The method does not return a value. + + + + + Partial class implementation for SearchBox control. + + + Represents a control that parses search text to return a filter expression. + + + + + Initializes a new instance of the class. + + + + + Gets the filter expression representing the current search text. + + + + + Gets a value indicating whether this provider currently has a non-empty filter expression. + + + + + Occurs when the filter expression has changed. + + + + + Notifies any listeners that the filter expression has changed. + + + + + Gets or sets the parser used to parse the search text. + + + + + Converts the specified collection of searchbox items to a filter expression. + + A collection of searchbox items to convert. + A filter expression. + The specified value is a null reference. + + + + Clears the search text. + + + + + Called to determine if ClearText can execute. + + + + + Called when ClearText executes. + + + Clears the search text. + + + + + Identifies the BackgroundText dependency property. + + + + + Gets or sets the background text of the search box. + + + + + Occurs when BackgroundText property changes. + + + + + Called when BackgroundText property changes. + + + + + Identifies the Text dependency property. + + + + + Gets or sets the text contents of the search box. + + + + + Occurs when Text property changes. + + + + + Called when Text property changes. + + + + + Called when a property changes. + + + + + Called when the type is initialized. + + + + + Provides functionality for parsing search text. + + + + + Initializes a new instance of . + + + + + Gets or sets the full-text rule for searching. + + + + + Allows the specified rule to be included in the search expression. + The rule must have an available rule of type that will be set with the search value. + + The type of the text rule within the specified selector rule. + The rule to include in the search expression. + true if a rule of type was added; otherwise, false. + The specified value is a null reference. + + + + Removes the searchable rules, including the full-text rule. + + + + + Parses the specified text and returns a read-only collection of results. + + The text to parse. + A read-only collection of results. + + + + Gets the group name of the full-text search pattern. + + + + + Gets the group name of the value search pattern. + + + + + Gets the search pattern used for values. + + + + + Gets a regular expression pattern used to parse the search text. + + A regular expression pattern used to parse the search text. + + + + Gets a list of the searchable rules. + + + + + Provides functionality for getting a FilterRule from search text. + + + + + Initializes a new instance of with the specified unique ID, selector rule, and child rule. + + A unique ID for this instance. + A selector rule that contains . + A text rule within . + The specified value is a null reference. + + + + Gest the unique ID for this instance. + + + + + Gets the regular expression pattern for this instance. + + + + + Gets a rule with the specified search value set. + + The search value. + A rule with the specified search value set. + The specified value is a null reference. + + + + Represents the result of search text parsing. + + + + + Initializes a new instance of with the specified . + + The rule that resulted from parsing the search text. + The specified value is a null reference. + + + + Gets the rule that resulted from parsing the search text. + + + + + The ValidatingSelectorValueToDisplayNameConverterTakes class is responsible for returning a display + friendly name for the ValidatingSelectorValue class. + + + + + Takes in a value and a converter and runs the converter on the value returning + a display friendly name. + + + The first parameter is the value to get the display name for. + The second parameter is the converter. + + + Type of string. + + + The parameter is not used. + + + The parameter is not used. + + + Returns a display friendly name for the first value. + + + + + The method is not used. + + + The parameter is not used. + + + The parameter is not used. + + + The parameter is not used. + + + The parameter is not used. + + + The method does not return a value. + + + + + The ValidatingValueToGenericParameterTypeConverter class is responsible for + converting a to its generic parameter T. + + + + + Gets an instance of the ValidatingValueToGenericParameterTypeConverter class. + + + + + Converts a to its generic parameter T. + + + The to convert. + + + The parameter is not used. + + + The parameter is not used. + + + The parameter is not used. + + + The type of value. + + + + + This method is not used. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + + + + Interaction logic for ColumnPicker.xaml. + + + The logic for manipulating the column lists is in + . + + + ColumnPicker + + + + + Default Constructor. + + + + + Constructor which initializes lists. + + Initially selected columns. + + All initial columns, if these include any which are selected + these are excluded. + + + It is not sufficient to just get + , since this does not + communicate the current ordering of visible columns. + + + + + Gets the columns in "Selected columns" list. + + + + + Gets the columns in "Available columns" list. + + + + + OK button was clicked. + + OK button. + The RoutedEventArgs. + + + + Move Up button was clicked. + + Move Up button. + The RoutedEventArgs. + + Moving the selected item in the bound collection does not + trigger the SelectionChanged event in the listbox. + + + + + Move Down button was clicked. + + Move Down button. + The RoutedEventArgs. + + + + Add button was clicked. + + Add button. + The RoutedEventArgs. + + + + Remove button was clicked. + + Remove button. + The RoutedEventArgs. + + Note that we do not attempt to maintain the ordering of items + in the NotSelected list when they are removed and then added back. + In the current implementation, the View of the NotSelected list is + sorted by name through the CollectionViewSource. + + + + + Creates AutomationPeer (). + + New AutomationPeer. + + + + The selection changed in either the Selected or NotSelected list. + + The sender. + The eventargs. + + + + Update which buttons are enabled based on current selection, + also whether RequiredColumnText or LastColumnText + should be visible. + + + + + Handles mouse double-click of items in + . + + The sender. + The eventargs. + + + + Handles mouse double-click of items in + . + + The sender. + The eventargs. + + + + InitializeComponent + + + + + Converts the value of the single in a + to a string, + and returns that string if not null/empty, + otherwise returns DefaultValue. + The must have exactly one + . + + + The problem solved by this + is that for an ordinary which is bound to + "Path=PropertyA.PropertyB", the Converter is not called if the value + of PropertyA was null (and therefore PropertyB could not be accessed). + By contrast, the converter for an + will be called even if any or all of the bindings fail to evaluate + down to the last property. + + Note that the which uses this + must have exactly one + . + + + + + Gets or sets default string returned by the converter + if the value is null/empty. + + + + + Converts the value of the single in the + to a string, + and returns that string if not null/empty, + otherwise returns DefaultValue. + + + Must contain exactly one value, of any type. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + + A string, either the value of the first + converted to string, or DefaultValue. + + + Note that the which uses this + must have exactly one + . + + + + + Skip ConvertBack binding. + + The parameter is not used. + The parameter is not used. + The parameter is not used. + The parameter is not used. + Binding.DoNothing blocks ConvertBack binding. + + + + Partial class implementation for InnerList control. + + + List control for Inner Applications. This Control supports grouping, sorting, filtering and GUI Virtualization through DataBinding. + + + + + The current ICollectionView being displayed + + + + + The current GridView. + + + + + ContextMenu for InnerList columns. + + + + + Private setter for . + + + + + Gets or sets whether the current items source is non-null and has items. + + + + + Initializes a new instance of this control. + + + + + Register PropertyChangedEventHandler ItemSourcesPropertyChanged . + + + + + Gets ItemsSource instead. + Does not support adding to Items. + + + + + Gets the column that is sorted, or null if no column is sorted. + + + + + Gets InnerListGridView. + + + + + Gets the collection of columns that this list should display. + + + + + Causes the object to scroll into view. + + Object to scroll. + This method overrides ListBox.ScrollIntoView(), which throws NullReferenceException when VirtualizationMode is set to Recycling. + This implementation uses a workaround recommended by the WPF team. + + + + Causes the object to scroll into view from the top, so that it tends to appear at the bottom of the scroll area. + + Object to scroll. + + + + Updates the InnerGrid based upon the columns collection. + + + + + Sorts the list by the specified column. This has no effect if the list does not have a data source. + + + The column to sort + + + Indicates whether the SelectedItem should be scrolled into view. + + The specified value is a null reference. + + + + Gets a list of data descriptions for the columns that are not the primary sort column. + + A list of data descriptions for the columns that are not the primary sort column. + + + + Clears the sort order from the list. + + + + + Called when the ItemsSource changes to set internal fields, subscribe to the view change + and possibly autopopulate columns. + + Previous ItemsSource. + Current ItemsSource. + + + + Called when ItemsChange to throw an exception indicating we don't support + changing Items directly. + + Event parameters. + + + + Called when a key is pressed while within the InnerList scope. + + The event args. + + + + Called when the View property is changed. + + InnerList whose property is being changed. + Event arguments. + + + + Gets the exception to be thrown when using Items. + + The exception to be thrown when using Items. + + + + Called from OnItemsSourceChanged to set the collectionView field and + subscribe to the collectionView changed event. + + ITemsSource passed to OnItemsSourceChanged. + + + + Update View And CollectionView. + + InnerList object. + + + + Releases all references to the current inner grid, if one exists. + + + + + Called when the ItemsSource changes, after SetGridview to add event handlers + to the column header. + + + + + Gets a tab-delimited string representing the data of the selected rows. + + A tab-delimited string representing the data of the selected rows. + + + + Called to implement sorting functionality on column header pressed by space or enter key. + + Typically a GridViewColumnHeader. + The event information. + + + + Called to implement sorting functionality on column header click. + + Typically a GridViewColumnHeader. + The event information. + + + + Called to implement sorting functionality. + + Typically a GridViewColumnHeader. + + + + Create default Context Menu. + + ContextMenu of List Columns. + + + + Set up context menu item for Column Picker feature. + + True if it is successfully set up. + + + + Called to determine if Copy can execute. + + + + + Called when Copy executes. + + + When executed, the currently selected items are copied to the clipboard. + + + + + Identifies the AutoGenerateColumns dependency property. + + + + + Gets or sets a value indicating whether this list's columns should be automatically generated based on its data. + + + + + Occurs when AutoGenerateColumns property changes. + + + + + Called when AutoGenerateColumns property changes. + + + + + Identifies the IsGroupsExpanded dependency property. + + + + + Gets or sets a value indicating whether is groups expanded or not. + + + + + Occurs when IsGroupsExpanded property changes. + + + + + Called when IsGroupsExpanded property changes. + + + + + Identifies the IsPrimarySortColumn dependency property key. + + + + + Identifies the IsPrimarySortColumn dependency property. + + + + + Gets whether a column is the primary sort in a list. + + The dependency object that the property is attached to. + + The value of IsPrimarySortColumn that is attached to element. + + + + + Sets whether a column is the primary sort in a list. + + The dependency object that the property will be attached to. + The new value. + + + + Called when a property changes. + + + + + Called when the type is initialized. + + + + + InnerList Columns class. + Derives and extends GridViewColumn to add concepts such as column visibility. + + + Derives and extends GridViewColumn to add concepts such as column visibility.. + + + + + Static Constructor. + + + + + Constructor for . + + + + + Initializes a new instance of class with the specified data description, and creates a simple binding to its property. + The column will be initially visible by default. + + The property description for this column's data. + + + + Initializes a new instance of class with the specified data description and visibility, and creates a simple binding to its property. + + The property description for this column's data. + Whether the column is initially visible. + + + + Initializes a new instance of class with the specified data description and visibility. + + The description of the data this column is bound to. + Whether the column is initially visible. + Whether the column should create a default binding using the specified data's property. + + + + Gets a default string format for the specified type. + + The type to get a string format for. + A default string format for the specified type. + + + + Displayable string identifying this class instance. + + A string to represent the instance of this class. + + + + Identifies the DataDescription dependency property. + + + + + Gets or sets the data description. + + + + + Called when DataDescription property changes. + + + + + Identifies the MinWidth dependency property. + + + + + Gets or sets a value that dictates the minimum allowable width of the column. + + + + + Called when MinWidth property changes. + + + + + Identifies the Required dependency property. + + + + + Gets or sets a value indicating whether the column may not be removed. + + + + + Called when Required property changes. + + + + + Identifies the Visible dependency property. + + + + + Gets or sets a value indicating whether the columns we want to have available in the list. + + + Modifying the Visible property does not in itself make the column visible or not visible. This should always be kept in sync with the Columns property. + + + + + Called when Visible property changes. + + + + + Extends the basic GrdView class to introduce the Visible concept to the + Columns collection. + + + + + + Set to true when we want to change the Columns collection. + + + + + Instanctiates a new object of this class. + + + + + Initializes a new instance of the class with the specified columns. + + The columns this grid should display. + The specified value is a null reference. + + + + Gets a collection of all columns which can be + added to the ManagementList, for example through ColumnPicker. + Columns is the collection of the columns which are currently + displayed (in the order in which they are displayed). + + + + + Releases this instance's references to its controls. + This API supports the framework infrastructure and is not intended to be used directly from your code. + + + + + Called when the ItemsSource changes to auto populate the GridView columns + with reflection information on the first element of the ItemsSource. + + + The new ItemsSource. + This is used just to fetch .the first collection element. + + + + + Callback for displaying the Column Picker. + + The send object. + The Event RoutedEventArgs. + + + + Called when Columns changes so we can check we are the ones changing it. + + The collection changing. + The event parameters. + + + + Called when the AvailableColumns changes to pass through the VisibleColumns to Columns. + + The collection changing. + The event parameters. + + + + Called from availableColumns_CollectionChanged to add or remove the notifications + used to track the Visible property. + + The parameter passed to availableColumns_CollectionChanged. + + + + Syncronizes AvailableColumns and Columns preserving the order from Columns that + comes from the user moving Columns around. + + + + + Called when the Visible property of a column changes. + + The column whose property changed. + The event parameters. + + + + Provides methods for retrieving the property values of objects. + + + + Gets the value of the specified property on the specified object. + The name of the property to get the value for. + The object to get value from. + The value of the property. + true if the property value could be retrieved; otherwise, false. + + + Gets the value of the specified property on the specified object. + The type of the property value. + The name of the property to get the value for. + The object to get value from. + The value of the property if it exists; otherwise, default(T). + true if the property value of the specified type could be retrieved; otherwise, false. + + + + Interaction logic for ManagementList. + + + + + Gets the collection of saved views. + + + + + Gets or sets a factory used to create new views. + + + + + Initializes a new instance of the ManagementList class. + + + + + Moves focus to the SearchBox when Ctrl+E is pressed. + + The event data. + + + + Gets an enumerator for logical child elements of this element. + + + + + Adds the specified column. + Default filter rules for the column will be added if the filter is shown. + A default search rule will be added if the search box is shown and the column's data type is searchable. + + The column to add. + The specified value is a null reference. + + + + Adds the specified columns, and optionally default filter and search rules. + + The column to add. + Whether to add default filter rules for the specified column. + The specified value is a null reference. + + + + Adds the specified rule, using the rule's display name as its group name. + + The rule to add. + The specified value is a null reference. + + + + Clears all of the current columns, searchable rules and filter rules. + + + + + Identifies the ViewsChanged RoutedEvent. + + + + + Occurs when any of this instance's views change. + + + + + Informs the ManagementList that it should clear the filter that is applied. + + + + + Called to determine if ClearFilter can execute. + + + + + Called when ClearFilter executes. + + + Informs the ManagementList that it should clear the filter that is applied. + + + + + Informs the PickerBase that it should close the dropdown. + + + + + Called to determine if SaveView can execute. + + + + + Called when SaveView executes. + + + Informs the PickerBase that it should close the dropdown. + + + + + Informs the ManagementList that it should apply the filter. + + + + + Called to determine if StartFilter can execute. + + + + + Called when StartFilter executes. + + + Informs the ManagementList that it should apply the filter. + + + + + Informs the ManagementList that it should stop filtering that is in progress. + + + + + Called to determine if StopFilter can execute. + + + + + Called when StopFilter executes. + + + Informs the ManagementList that it should stop filtering that is in progress. + + + + + Identifies the AddFilterRulePicker dependency property key. + + + + + Identifies the AddFilterRulePicker dependency property. + + + + + Gets the filter rule picker. + + + + + Occurs when AddFilterRulePicker property changes. + + + + + Called when AddFilterRulePicker property changes. + + + + + Identifies the CurrentView dependency property key. + + + + + Identifies the CurrentView dependency property. + + + + + Gets or sets current view. + + + + + Occurs when CurrentView property changes. + + + + + Called when CurrentView property changes. + + + + + Identifies the Evaluator dependency property. + + + + + Gets or sets the FilterEvaluator. + + + + + Occurs when Evaluator property changes. + + + + + Called when Evaluator property changes. + + + + + Identifies the FilterRulePanel dependency property key. + + + + + Identifies the FilterRulePanel dependency property. + + + + + Gets the filter rule panel. + + + + + Occurs when FilterRulePanel property changes. + + + + + Called when FilterRulePanel property changes. + + + + + Identifies the IsFilterShown dependency property. + + + + + Gets or sets a value indicating whether the filter is shown. + + + + + Occurs when IsFilterShown property changes. + + + + + Called when IsFilterShown property changes. + + + + + Identifies the IsLoadingItems dependency property. + + + + + Gets or sets a value indicating whether items are loading. + + + + + Occurs when IsLoadingItems property changes. + + + + + Called when IsLoadingItems property changes. + + + + + Identifies the IsSearchShown dependency property. + + + + + Gets or sets a value indicating whether the search box is shown. + + + + + Occurs when IsSearchShown property changes. + + + + + Called when IsSearchShown property changes. + + + + + Identifies the List dependency property key. + + + + + Identifies the List dependency property. + + + + + Gets the list. + + + + + Occurs when List property changes. + + + + + Called when List property changes. + + + + + Identifies the SearchBox dependency property key. + + + + + Identifies the SearchBox dependency property. + + + + + Gets the search box. + + + + + Occurs when SearchBox property changes. + + + + + Called when SearchBox property changes. + + + + + Identifies the ViewManagerUserActionState dependency property. + + + + + Gets or sets the user interaction state of the view manager. + + + + + Occurs when ViewManagerUserActionState property changes. + + + + + Called when ViewManagerUserActionState property changes. + + + + + Identifies the ViewSaverUserActionState dependency property. + + + + + Gets or sets the user interaction state of the view saver. + + + + + Occurs when ViewSaverUserActionState property changes. + + + + + Called when ViewSaverUserActionState property changes. + + + + + Called when a property changes. + + + + + Called when ApplyTemplate is called. + + + + + Called when the type is initialized. + + + + + Create an instance of the AutomationPeer. + + + An instance of the AutomationPeer. + + + + + Allows the state of the ManagementList to be saved and restored. + + + + + Constructs a new instance of the ManagementListStateDescriptor class. + + + + + Constructs a new instance of the ManagementListStateDescriptor class. + + The name that will be displayed to users. + + + + Saves a snapshot of the ManagementList state. + + + The ManagementList instance whose state should be preserved. + + + Columns will not be saved if not supported per + . + + + ManagementList.AutoGenerateColumns not supported. + + + + + Restores the state of the passed in ManagementList and applies the restored filter. + + The ManagementList instance whose state should be restored. + + + + Restores the state of the passed in ManagementList. + + + The ManagementList instance whose state should be restored. + + + Whether the restored filter should be automatically applied. + + + Columns will not be restored if not supported per + . + + + ManagementList.AutoGenerateColumns not supported. + + + + + Checks whether columns can be restored. + + Target ManagementList. + RetryActionAfterLoaded callback method. + true iff columns restorable + + ManagementList.AutoGenerateColumns not supported. + + + + + Set column state for target to + previously persisted state. + + + Target whose column state + is to be restored. + + + Required columns are always visible regardless of persisted state. + + + + + Gets or sets the location of the column. + + + + + Gets or sets a value indicating whether the column should be shown. + + + + + Gets or sets the sort direction of the column. + + + + + Gets or sets a value indicating the width of a column. + + + + + Gets or sets the UniqueName associated with the rule. + + + + + Gets the FilterRule associated with the rule. + + + + + Constructor that takes a lookup dictionary of column information. + + The lookup dictionary. + + + + Compares two InnerListColumn objects and determines their relative + ordering. + + The first object. + The second object. + + Returns 1 if x should ordered after y in the list, returns -1 if + x should be order before y, and returns 0 if the ordering should not + be changed. + + + + + Displayable string identifying this class instance. + + A string to represent the instance of this class. + + + + Defines a factory which returns ManagementListStateDescriptors. + + + + + Factory method that creates a ManagementListStateDescriptor. + + A new ManagementListStateDescriptor. + + + + Partial class implementation for ManagementListTitle control. + + + Provides a common control for displaying header information about a list. + + + + + Initializes a new instance of the class. + + + + + Identifies the List dependency property. + + + + + Gets or sets the list this title is for. This is a dependency property. + + + + + Occurs when List property changes. + + + + + Called when List property changes. + + + + + Identifies the ListStatus dependency property. + + + + + Gets the status of the list. This is a dependency property. + + + + + Occurs when ListStatus property changes. + + + + + Called when ListStatus property changes. + + + + + Identifies the Title dependency property. + + + + + Gets or sets the title. This is a dependency property. + + + + + Occurs when Title property changes. + + + + + Called when Title property changes. + + + + + Identifies the TotalItemCount dependency property. + + + + + Gets or sets the number of items in the list before filtering is applied. This is a dependency property. + + + + + Occurs when TotalItemCount property changes. + + + + + Called when TotalItemCount property changes. + + + + + Called when a property changes. + + + + + Called when the type is initialized. + + + + + Create an instance of the AutomationPeer. + + + An instance of the AutomationPeer. + + + + + Provides a mechanism for comparing objects based on specific properties. + + + + + Initializes a new instance of . + + The data descriptions containing sort information for all columns. + Whether sorting should compare additional columns when equal values are found. + The used to retrieve property values. + + + + Compares properties of the specified objects and returns a value indicating whether one is less than, equal to or greater than the other. + + The first object to compare. + The second object to compare. + + Less than zero if is less than ; + greater than zero if is greater than ; + otherwise, zero. + + + + + Provides methods for retrieving the property values of objects. + + + + + Initializes a new instance of the class. + + + + Gets the value of the specified property on the specified object. + The name of the property to get the value for. + The object to get value from. + The value of the property. + true if the property value could be retrieved; otherwise, false. + + + Gets the value of the specified property on the specified object. + The type of the property value. + The name of the property to get the value for. + The object to get value from. + The value of the property if it exists; otherwise, default(T). + true if the property value of the specified type could be retrieved; otherwise, false. + + + + Describes a property that has visual representation and can be sorted and grouped. + + + + + Initializes a new instance of the class with the specified property name and display name. + This constructor assumes that the type of data is . + + The name of the property that this instance describes. + The name displayed to users for this data. + + + + Initializes a new instance of the class with the specified property name, display name and data type. + + The name of the property that this instance describes. + The name displayed to users for this data. + The type of the data that this instance describes. + + + + Gets or sets the localizable display name representing the associated property. + + + + + Gets or sets the display content representing the associated property. + + + + + Gets or sets which direction the associated property should be sorted. + + + + + Gets or sets the type of the associated property. + + + + + Reverses the current sort direction. + + The new sort direction. + + + + Displayable string identifying this class instance. + + A string to represent the instance of this class. + + + + Converter from ViewGroup to group title string. + + + + + Convert each ViewGroup into its name and its count. + + Value to be converted. + Type to convert the value to. + The conversion parameter. + Conversion culture. + The converted string. + + + + ConvertBack is not supported. + + Value to be converted. + Type to convert the value to. + The conversion parameter. + Conversion culture. + This method is not supported. + when calling the method. + + + + Waiting Ring class. + + + + + Static constructor for WaitRing. + + + + + Builds a help paragraph for a cmdlet + + + + + Indentation size + + + + + new line separators + + + + + Object with the cmdelt + + + + + Initializes a new instance of the HelpParagraphBuilder class + + paragraph being built + object with help information + + + + Enum for category of Help. + + + + + Gets the string value of a property or null if it could not be retrieved + + object with the property + property name + the string value of a property or null if it could not be retrieved + + + + Adds the help text to the paragraph + + + + + Gets the object property or null if it could not be retrieved + + object with the property + property name + the object property or null if it could not be retrieved + + + + Gets a PSObject and then a value from it or null if the value could not be retrieved + + PSObject that contains another PSObject as a property + property name that contains the PSObject + property name in thye inner PSObject + the string from the inner psObject property or null if it could not be retrieved + + + + Gets the value of a property or null if the value could not be retrieved + + object with the property + property name + the value of a property or null if the value could not be retrieved + + + + Gets the text from a property of type PSObject[] where the first object has a text property + + objhect to get text from + property with PSObject[] containing text + the text from a property of type PSObject[] where the first object has a text property + + + + Returns the largest size of a group of strings + + strings to evaluate the largest size from + the largest size of a group of strings + + + + Splits the string adding indentation before each line + + string to add indentation to + the string indented + + + + Splits the string adding indentation before each line + + string to add indentation to + number of indentations + the string indented + + + + Splits the string adding indentation before each line + + string to add indentation to + indentation string + the string indented + + + + Get the object array value of a property + + object containing the property + property with the array value + the object array value of a property + + + + Adds a section that contains only a string + + true if it should add the segment + name of the section to add + title of the section + + + + Adds the help syntax segment + + true if it should add the segment + title of the section + + + + Adds the help description segment + + true if it should add the segment + title of the section + propertyName that has description + + + + Adds the help examples segment + + true if it should add the segment + title of the section + + + + Adds the help parameters segment + + true if it should add the segment + title of the section + name of the property which has properties + category of help + + + + Adds the help navigation links segment + + true if it should add the segment + title of the section + + + + Adds the help input or output segment + + true if it should add the segment + title of the section + property with the outter object + property with the inner object + + + + Adds the help notes segment + + true if it should add the segment + title of the section + + + + ViewModel for the Help Dialog used to: + build the help document + search the help document + offer text for labels + + + + + The builder for the help FlowDocument Paragraph used in a RichEditText control + + + + + Searcher for selecting current matches in paragraph text + + + + + Title of the help window + + + + + the zoom bound to the zoom slider value + + + + + Text to be found. This is bound to the find TextBox + + + + + text for the number of matches found + + + + + Initializes a new instance of the HelpViewModel class + + object containing help + paragraph in which help text is built/searched + + + + Used to notify of property changes + + + + + Gets or sets the Zoom bound to the zoom slider value + + + + + Gets the value bound to the RichTextEdit zoom, which is calculated based on the zoom + + + + + Gets the label to be displayed for the zoom + + + + + Gets or sets the text to be found + + + + + Gets the title of the window + + + + + Gets or sets the label for current matches + + + + + Gets a value indicating whether there are matches to go to + + + + + Gets the searcher for selecting current matches in paragraph text + + + + + Gets the paragraph builder used to write help content + + + + + Highlights all matches to this.findText + Called when findText changes or whenever the search has to be refreshed + + + + + Increases Zoom if not above maximum + + + + + Decreases Zoom if not below minimum + + + + + Called to update the matches label + + event sender + event arguments + + + + Sets the current matches label + + + + + Called internally to notify when a proiperty changed + + property name + + + + Builds a paragraph based on Text + Bold + Highlight information. + Bold are the segments of thexct that should be bold, and Highlight are + the segments of thext that should be highlighted (like search results). + + + + + The text spans that should be bold + + + + + The text spans that should be highlighted + + + + + The text displayed + + + + + Paragraph built in BuildParagraph + + + + + Initializes a new instance of the ParagraphBuilder class + + paragraph we will be adding lines to in BuildParagraph + + + + Used to notify of property changes + + + + + Gets the number of highlights. + + + + + Gets the paragraph built in BuildParagraph + + + + + Called after all the AddText calls have been made to build the paragraph + based on the current text. + This method goes over 3 collections simultaneouslly: + 1) characters in this.textBuilder + 2) spans in this.boldSpans + 3) spans in this.highlightedSpans + And adds the minimal number of Inlines to the paragraph so that all + characters that should be bold and/or highlighed are. + + + + + Highlights all ocurrences of . + This is called after all calls to AddText have been made + + search string + true if search should be case sensitive + true if we should search whole word only + + + + Adds text to the paragraph later build with BuildParagraph + + text to be added + true if the text should be bold + + + + Called before a derived class starts adding text + to reset the current content + + + + + Adds an inline to based on the remaining parameters. + + paragraph to add Inline to + true if text should be added in bold + true if the text should be added with highlight + the text to add and clear + + + + This is an auxiliar method in BuildParagraph to move the current bold or highlighed spans + according to the + The current bold and higlighed span should be ending ahead of the current position. + Moves and to the + propper span in according to the + This is an auxiliar method in BuildParagraph. + + current index within + current span within + caracter position. This comes from a position within this.textBuilder + the collection of spans. This is either this.boldSpans or this.highlightedSpans + + + + Adds one individual text highlight + This is called after all calls to AddText have been made + + highlight start + highlight length + + + + Called internally to notify when a proiperty changed + + property name + + + + A text span used to mark bold and highlighed segments + + + + + Index of the first character in the span + + + + + Index of the last character in the span + + + + + Initializes a new instance of the TextSpan struct + + Index of the first character in the span + Index of the last character in the span + + + + Gets the index of the first character in the span + + + + + Gets the index of the first character in the span + + + + + Returns true if the is between start and end (inclusive) + + position to verify if is in the span + true if the is between start and end (inclusive) + + + + Moves through search highlights built in a ParagraphBuilder + changing the color of the current highlight + + + + + Highlight for all matches except the current + + + + + Highlight for the current match + + + + + Current match being highlighted in search + + + + + Initializes a new instance of the ParagraphSearcher class + + + + + Move to the next highlight starting at the + + true for next false for previous + caret position + the next highlight starting at the + + + + Resets the search for fresh calls to MoveAndHighlightNextNextMatch + + + + + Returns true if is highlighted + + run to check if is highlighted + true if is highlighted + + + + Get the next or previous run according to + + the current run + true for next false for previous + the next or previous run according to + + + + Gets the run of an inline. Inlines in a ParagrahBuilder are either a Run or a Bold + which contains a Run + + inline to get the run from + the run of the inline + + + + Gets the next highlighted run starting and including + according to the direction specified in + + the current run + true for next false for previous + + the next highlighted run starting and including + according to the direction specified in + + + + + Gets the run's paragraph + + run to get the paragraph from + the run's paragraph + + + + Returns true if the run is the fiorst run of the paragraph + + run to check + true if the run is the fiorst run of the paragraph + + + + Gets the first or lasr run in the paragraph containing + + run containing the caret + true for first false for last + the first or last run in the paragraph containing + + + + OutGridViewWindow definition for PowerShell command out-gridview. + + + + + Zoom Increments + + + + + Max ZoomLevel + + + + + Min ZoomLevel + + + + + Window for gridView. + + + + + Local ManagementList. + + + + + A collection of PSObjects to be data bound to the local Management List. + + + + + Event used for the thread gridViewWindows signaling main thread after Windows loaded + + + + Is used to store any Management list calls exceptions. + + + + Is used to block thread of the pipeline. + + + + + OK Button's content. + + + + + Cancel Button's content. + + + + + Used to store selected items in the ok processing + + + + + The GUI thread of Out-GridView + + + + + private constants for ZoomLevel + + + + + Constructor for OutGridView. + + + + + ThreadDelegate definition. + + Start GridView Window delegate. + + + + Start a new thread as STA for gridView Window. + + commands of the PowerShell. + selection mode of the list + closedEvent + + + + Implements ZoomIn + + + + + + + Implements ZoomOut + + + + + + + Creates a new ManagementList. + + Output mode of the out-gridview + A new ManagementList + + + + Creates a new main grid for window. + + Output mode of the out-gridview + A new mainGrid + + + + Creates a OK button. + + A new buttonGrid + + + + Creates a OK button. + + A new OK button + + + + Creates a Cancel button. + + A new Cancel button + + + + Store the selected items for use in EndProcessing + + event sender + event arguments + + + + Closes the window + + event sender + event arguments + + + + Gets selected items from List. + + Selected items of the list + + + + Closes the window + + + + + Add column defenitions to the underlying management list. + + An array of property names to add. + An array of display names to add. + An array of types to add. + + + + Add an item to ObservableCollection. + + PSObject of comlet data. + + + + Returns the state of GridView Window. + + The status of GridView Window close or not. + + + + Returns any exception that has been thrown by previous method calls. + + The thrown and caught exception. It returns null if no exceptions were thrown by any previous method calls. + + + + GridView Window is closing callback process. + + The sender object. + Event Args. + + + + Set loaded as true when this method invoked. + + The sender object. + RoutedEvent Args. + + + + A window displaying help content and allowing search + + + HelpWindow + + + + + Minimum zoom in the slider + + + + + Maximum zoom in the slider + + + + + Zoom interval + + + + + The ViewModel for the dialog + + + + + Initializes a new instance of the HelpWindow class + + the object with help information + + + + Handles the mouse wheel to zoom in/out + + event arguments + + + + Handles key down to fix the Page/Douwn going to end of help issue + And to implement some additional shortcuts like Ctrl+F and ZoomIn/ZoomOut + + event arguments + + + + Reads the zoom part of the user settings + + + + + Handles Zoom in and Zoom out keys + + event arguments + + + + Listens to changes in the zoom in order to update the user settings + + event sender + event arguments + + + + Saves the user settings + + event sender + event arguments + + + + Updates the user setting with window state + + event sender + event arguments + + + + Sets the positions from user settings and start monitoring position changes + + event sender + event arguments + + + + Saves size changes in user settings + + event sender + event arguments + + + + Saves position changes in user settings + + event sender + event arguments + + + + Called when the settings button is clicked + + event sender + event arguments + + + + Called when the Previous button is clicked + + event sender + event arguments + + + + Called when the Next button is clicked + + event sender + event arguments + + + + Moves to the previous or next match + + true for forward false for backwards + + + + Moves to the caret and brings the view to the + + run to move to + + + + InitializeComponent + + + + + Dialog with settings for the help dialog + + + SettingsDialog + + + + + Initializes a new instance of the SettingsDialog class + + + + + Called when the OK button has been clicked + + event sender + event arguments + + + + InitializeComponent + + + + + Utilities in common in this assembly + + + + + Restore the values from the settings to the actual window position, size and state. + + the window we are setting position and size of + the value for top from the user settings + the value for left from the user settings + the value for width from the user settings + the value for height from the user settings + the with used if is not valid + the height used if is not valid + true if the window is maximized in the user setting + + + + Interaction logic for AllModulesControl.xaml + + + AllModulesControl + + + + + Initializes a new instance of the AllModulesControl class + + + + + Gets current control of the ShowModuleControl + + + + + InitializeComponent + + + + + Interaction logic for CmdletControl.xaml + + + CmdletControl + + + + + Field used for the CurrentCommandViewModel parameter. + + + + + Initializes a new instance of the CmdletControl class + + + + + Gets the owner of the ViewModel. + + + + + DataContextChanged event. + + Event sender + Event args + + + + Key down event for user press F1 button. + + Event sender + Event args + + + + Help button event. + + Event sender + Event args + + + + Import Module Button event + + Event sender + Event args + + + + InitializeComponent + + + + + Button with images to represent enabled and disabled states + + + ImageButton + + + + + Initializes a new instance of the ImageButton class. + + + + + Copies the automation id and name from the parent control to the inner button + + event sender + event arguments + + + + InitializeComponent + + + + + Implements the ImageButtonBase base class to the ImageButton and ImageToggleButton. + + + + + Command associated with this button + + + + + Image to be used for the enabled state + + + + + Image to be used for the disabled state + + + + + Gets or sets the image to be used for the enabled state + + + + + Gets or sets the image to be used for the disabled state + + + + + Gets or sets the command associated with this button + + + + + Converts a an ImageButtonBase to its corresponding ToolTip + + + + + Converts a an ImageButtonBase to its corresponding ToolTip by checking if it has a tooltip property + or a command with tooltip text + + The ImageButtonBase we are trying to Convert. + is not used. + is not used. + is not used. + The resulting object obtained from retrieving the property value in (or property values if contains dots) out of . + + + + This method is not supported. + + is not used. + is not used. + is not used. + is not used. + No value is returned. + + + + Toggle button with images to represent enabled and disabled states + + + ImageToggleButton + + + + + Value indicating the button is checked + + + + + Initializes a new instance of the ImageToggleButton class. + + + + + Gets or sets a value indicating whether the button is checked + + + + + Copies the automation id and name from the parent control to the inner button + + event sender + event arguments + + + + InitializeComponent + + + + + Interaction logic for NotImportedCmdletControl.xaml + + + NotImportedCmdletControl + + + + + Initializes a new instance of the NotImportedCmdletControl class + + + + + InitializeComponent + + + + + Interaction logic for MultipleSelectionControl.xaml + + + MultipleSelectionControl + + + + + Initializes a new instance of the MultipleSelectionControl class + + + + + Show more items in new dialog + + event sender + event arguments + + + + InitializeComponent + + + + + Interaction logic for ParameterSetControl.xaml + + + ParameterSetControl + + + + + First focusable element in the generated UI. + + + + + Field used for the CurrentParameterSetViewModel parameter. + + + + + Initializes a new instance of the ParameterSetControl class + + + + + Focuses the first focusable element in this control. + + + + + Gets current ParameterSetViewModel. + + + + + Creates a CheckBox for switch parameters + + DataContext object + Row number + a CheckBox for switch parameters + + + + Creates a ComboBox control for input type field + + DataContext object + Row number + Control data source + Return a ComboBox control + + + + Creates a MultiSelectCombo control for input type field + + DataContext object + Row number + Control data source + Return a MultiSelectCombo control + + + + Creates a TextBox control for input type field + + DataContext object + Row number + Return a TextBox control + + + + Called for a newly created multiline text box to increase its height and + + event sender + event arguments + + + + When user switch ParameterSet.It will trigger this event. + This event method will renew generate all controls for current ParameterSet. + + Event sender + Event args + + + + When user trigger click on anyone CheckBox. Get value from sender. + + Event sender + Event args + + + + Creates a RowDefinition for MainGrid + + Return a RowDefinition object + + + + Adds a control to MainGrid; + + Will adding UIControl + + + + Creates a Lable control and add it to MainGrid + + DataContext object + Row number + + + + Creates a Label control for input type field + + DataContext object + Row number + Return a Label control + + + + InitializeComponent + + + + + Implements thw WPF window part of the show-command cmdlet + + + + + Method that will return the dialog from ShowAllModulesWindow or ShowCommandWindow. + This is necessary because the PlainInvokeAndShowDialog thread starter cannot receive parameters + + + + + Event set when the window is closed + + + + + Event set when help is needed + + + + + Event set when it is necessary to import a module + + + + + Event set when the window is loaded + + + + + String with the command that needs help set when helpNeeded is set + + + + + String with the command name that needs to import a module + + + + + String with the module name that needs to be imported + + + + + String with the selected module at the time a module needs to be imported + + + + + Keeps the window for the implementation of CloseWindow + + + + + host window, if any + + + + + ViewModel when showing all modules + + + + + ViewModel when showing a single command + + + + + true when the window is closed with cancel + + + + + Prevents a default instance of the ShowCommandHelper class from being created + + + + + Finalizes an instance of the ShowCommandHelper class + + + + + Gets the Screen Width + + + + + Gets the Screen Height + + + + + Gets the event set when the show-command window is closed + + + + + Gets the event set when help is needed for a command + + + + + Gets the event set when it is necessary to import a module + + + + + Gets the event set when the window is loaded + + + + + Gets the command needing help when HelpNeeded is set + + + + + Gets the module we want to import + + + + + Gets a value indicating whether there is a host window + + + + + Dispose method in IDisposeable + + + + + Sets the text in the clipboard + + text to set the clipboard to + + + + Gets the command to be run to get commands and imported modules + + Boolean flag determining whether Show-Command is queried in the local or remote runspace scenario + Boolean flag to indicate that it is the second attempt to query Show-Command data + the command to be run to get commands and imported modules + + + + Retrieves the script for Get-SerializedCommand from local machine + + String representation of the script for Get-SerializedCommand + + + + Gets the command to be run to in order to import a module and refresh the command data + + module we want to import + Boolean flag determining whether Show-Command is queried in the local or remote runspace scenario + Boolean flag to indicate that it is the second attempt to query Show-Command data + the command to be run to in order to import a module and refresh the command data + + + + gets the command to be run in order to show help for a command + + command we want to get help from + the command to be run in order to show help for a command + + + + Constructs a dictionary of imported modules based on the module names + + the imported modules + a dictionary of imported modules based on the module names + + + + Constructs a list of commands out of + + the results of a get-command command + a list of commands out of + + + + Constructs an array of objects out of + + The result of a get-command command + An array of objects out of + + + + Called after a module in is imported to refresh the view model. + Gets a new AllModulesViewModel populated with and . + The is used to cleanup event listening in the old view model and to copy NoCommonParameters. + The new ViewModel will have the command selected according to , + and . + + the viewModel before the module was imported + the list of imported modules + the list of commands + the name of the module that was selected in + the name of the module that was imported + the name of the command that was selected in + The new ViewModel based on and . + + + + Gets an error message to be displayed when failed to import a module + + command belongiong to the module to import + module to import + error importing the module + an error message to be displayed when failed to import a module + + + + Single quotes + + string to quote + single quoted + + + + Gets the host window, if it is present or null if it is not + + cmdlet calling this method + the host window, if it is present or null if it is not + + + + Gets a property value using reflection + + type containing the property + object containing the property (null for a static property) + name of property to get + flags passed to reflection + + property value or null if it was not able to retrieve it. This method is not suitable to return a property value that might be null. + + + + + Sets a property value using reflection + + type containing the property + object containing the property (null for a static property) + name of property to set + value to set the property with + flags passed to reflection + true if it was able to set + + + + Gets the suffix that adds imported modules to a command + + the suffix that adds imported modules to a command + + + + Gets the command to be run when calling show-command for a particular command + + the particular command we are running show-command on + true if we want to include aliases and retrieve modules + the command to be run when calling show-command for a particular command + + + + Gets a CommandViewModel of a CommandInfo + + command we want to get a CommandViewModel of + true if we do not want common parameters + the loaded modules + True to qualify command with module name in GetScript + a CommandViewModel of a CommandInfo + + + + Dispatches a message to the window for it to activate + + window to be activated + + + + Sets a property in ISE that will allow the command to be run + + command to be run + true if it was possible to set the pending ISE command + + + + Shows the window listing cmdlets + + cmdlet calling this method + All loaded modules + commands to be listed + true if we should not show common parameters + window width + window height + true if the GUI should mention ok instead of run + + + + Calls ShowsDialog on methodThatReturnsDialog either in a separate thread or dispatched + to the hostWindow thread if there is a hostWindow + + cmdlet used to retrieve the host window + + + + Called from CallMethodThatShowsDialog as the thtead start when there is no host window + + + + + Shows the window for the cmdlet + + cmdlet calling this method + command to show in the window + window width + window height + true if the GUI should mention ok instead of run + + + + Called when the module importation is done + + all modules currently imported + commands to be displayed + + + + Called when the module importation has failed + + reason why the module importation failed + + + + Called when the results or get-help are ready in order to display the help window for a command + + results of a get-help call + + + + Activates this.window + + + + + returns the script to execute if dialog has not been canceled + + the script to execute if dialog has not been canceled + + + + Sets up window settings common between the two flavors of show-command + + the window being displayed + + + + Handles the SelectedCommandInSelectedModuleNeedsImportModule event + + event sender + event arguments + + + + Handles the SelectedCommandInSelectedModuleNeedsHelp event + + event sender + event arguments + + + + Called when the window is closed to set this.dialogCanceled + + event sender + event arguments + + + + Called when the window is loaded to set this.Window_Loaded + + event sender + event arguments + + + + Sets up event listening on the buttons + + button to run command + button to copy command code + button to close window + true to change the text of Run to OK + + + + Sets up event listening for a new viewModel + + + + + Copies the script into the clipboard + + event sender + event arguments + + + + Sets a succesfull dialog result and then closes the window + + event sender + event arguments + + + + Closes the window + + event sender + event arguments + + + + closes the window + + + + + Showing a MessageBox when user type a invalidate command name. + + error message + + + + returns the script to execute + + the script to execute + + + + Implements IDisposable logic + + true if being called from Dispose + + + + Control taht shows cmdlets in a module and details for a selected cmdlet + + + ShowModuleControl + + + + + Field used for the Owner parameter. + + + + + Initializes a new instance of the ShowModuleControl class + + + + + Gets or sets the owner of the container. + + + + + WPF has an interesting feature in list selection where if you hold the mouse button down, + it will select the item under it, but if you keep the mouse button down and move the mouse + (if the list supported drag and drop, the mouse action would be the same as dragging) it + will select other list items. + If the first selection change causes details for the item to be displayed and resizes the list + the selection can skip to another list item it happend to be over as the list got resized. + In summary, resizing the list on selection can cause a selection bug. If the user selects an + item in the end of the list the next item downwards can be selected. + The WPF drag-and-select feature is not a standard win32 list behavior, and we can do without it + since it causes this problem. + WPF sets up this behavior by using a mouse capture. We undo the behavior in the handler below + which removes the behavior. + + event sender + event arguments + + + + Ensures the selected item is scrolled into view and that the list is focused. + An item could be out of the view if the selection was changed in the object model + + event sender + event arguments + + + + InitializeComponent + + + + + Contains all Commands, Parameters, ParameterSet and Common Parameter. + + + + + Flag indicating a wait message is being displayed + + + + + True if this ViewModel is not supposed to show common parameters + + + + + the filterName of command + + + + + Field used for the Modules property. + + + + + true if a command can be run + + + + + true if a command can be copied + + + + + the selected module being displayed in the GUI + + + + + the visibility of the refresh button + + + + + Provides an extra viewModel object that allows callers to control certain aspects of the GUI + + + + + private property for ZoomLevel + + + + + Initializes a new instance of the AllModulesViewModel class + + the loaded modules + commands to show + + + + Initializes a new instance of the AllModulesViewModel class + + the loaded modules + All PowerShell commands + true not to show common parameters + + + + PropertyChanged Event + + + + + Indicates the selected command in the selected module needs to display the help for a command + + + + + Indicates the selected command in the selected module needs to import a module for a command + + + + + Indicates the selected command in the selected module should be run + + + + + Indicates we want to refresh the viewModel + + + + + Get or Sets Zoom level + + + + + Gets the tooltip for the refresh button + + + + + Gets or sets the visibility of the refresh button + + + + + Gets a value indicating whether common parameters are displayed + + + + + Gets or sets the filterName of command + + + + + Gets or sets the selected module being displayed in the GUI + + + + + Gets a value indicating whether we can run a command + + + + + Gets a value indicating whether we can copy a command + + + + + Gets the Modules parameter. + + + + + Gets the visibility of the wait message + + + + + Gets the visibility of the main grid + + + + + Gets a value indicating whether the main grid is displayed + + + + + Gets or sets a value indicating whether the wait message is displayed + + + + + Gets or sets an extra viewModel object that allows callers to control certain aspects of the GUI + + + + + Returns the selected script + + the selected script + + + + Triggers Refresh + + + + + If current modules name is ALL, then return true. + + The modules name + Return true is the module name is ALLModulesViewModel. + + + + Monitors property changes in the selected module to call: + SetCanRun for IsThereASelectedImportedCommandWhereAllMandatoryParametersHaveValues + SetCanCopy for SetCanCopy + + event sender + event arguments + + + + Called to set this.CanRun when: + The SelectedModule changes, since there will be no selected command in the new module, and CanRun should be false + WaitMessageDisplayedMessage changes since this being true will cause this.MainGridDisplayed to be false and CanRun should be false + IsThereASelectedImportedCommandWhereAllMandatoryParametersHaveValues changes in the selected module + + + + + Called to set this.CanCopy when: + The SelectedModule changes, since there will be no selected command in the new module, and CanCopy should be false + WaitMessageDisplayedMessage changes since this being true will cause this.MainGridDisplayed to be false and CanCopy should be false + IsThereASelectedCommand changes in the selected module + + + + + Initialize AllModulesViewModel. + + All loaded modules + List of commands in all modules + Whether showing common parameter + + + + Compare two ModuleViewModel target and source. + + The source ModuleViewModel + The target ModuleViewModel + Compare result + + + + Called when the SelectedCommandNeedsHelp event is triggered in the Selected Module + + event sender + event arguments + + + + Called when the SelectedCommandNeedsImportModule event is triggered in the Selected Module + + event sender + event arguments + + + + Triggers SelectedCommandInSelectedModuleNeedsHelp + + event arguments + + + + Triggers SelectedCommandInSelectedModuleNeedsImportModule + + event arguments + + + + Called when the RunSelectedCommand is triggered in the selected module + + event sender + event arguments + + + + Triggers RunSelectedCommandInSelectedModule + + event arguments + + + + If property changed will be notify + + The changed property + + + + Arguments for the event triggered when something happens at the cmdlet level + + + + + the command targeted by the event + + + + + Initializes a new instance of the CommandEventArgs class. + + the command targeted by the event + + + + Gets the command targeted by the event + + + + + Contains information about a cmdlet's Shard ParameterSet, + ParameterSets, Parameters, Common Parameters and error message. + + + + + The name of the AllParameterSets + + + + + Grid length constant + + + + + The module containing this cmdlet in the gui + + + + + The name of the default ParameterSet + + + + + Field used for the AreCommonParametersExpanded parameter. + + + + + Field used for the SelectedParameterSet parameter. + + + + + Field used for the ParameterSets parameter. + + + + + Field used for the ParameterSetTabControlVisibility parameter. + + + + + Field used for the CommonParameters parameter. + + + + + The ShowCommandCommandInfo this model is based on + + + + + value indicating whether the selected parameter set has all mandatory parameters valid + + + + + value indicating whether the command name should be qualified by the module in GetScript + + + + + The height for common parameters that will depend on CommonParameterVisibility + + + + + Prevents a default instance of the CommandViewModel class from being created + + + + + PropertyChanged Event + + + + + Indicates the command needs to display the help for a command + + + + + Indicates a module needs to be imported + + + + + Gets or sets a value indicating whether the command name should be qualified by the module in GetScript + + + + + Gets or sets a value indicating whether the common parameters are expanded + + + + + Gets or sets the SelectedParameterSet parameter. + + + + + Gets or sets a value indicating whether the selected parameter set has all mandatory parameters valid. + If there is no selected parameter set this value is true + + + + + Gets the ParameterSets parameter. + + + + + Gets the visibility for the tab control displaying several ParameterSetControl. This is displayed when there are more than 1 parameter sets. + + + + + Gets the visibility for the single ParameterSetControl displayed when there is only 1 parameter set + + + + + Gets the CommonParameters parameter. + + + + + Gets the CommonParameterVisibility parameter. + + + + + Gets or sets the height for common parameters that will depend on CommonParameterVisibility + + + + + Gets the visibility for the control displayed when the module is not imported + + + + + Gets the visibility for the control displayed when there are no parameters + + + + + Gets a value indicating whether the cmdlet comes from a module which is imported + + + + + Gets the Name parameter. + + + + + Gets the module path if it is not null or empty, or the name otherwise + + + + + Gets the module containing this cmdlet in the GUI. + + + + + Gets Tooltip string for the cmdlet + + + + + Gets the message to be displayed when the cmdlet belongs to a module that is not imported + + + + + Gets the title for the cmdlet details + + + + + Gets a Grid length constant + + + + + Gets the builded PowerShell script. + + Return script as string + + + + Showing help information for current actived cmdlet. + + + + + Determins whether current command name and a specifed ParameterSetName have same name. + + The name of ShareParameterSet + Return true is ShareParameterSet. Else return false. + + + + Creates a new CommandViewModel out the . + + Module to which the CommandViewModel will belong to + Will showing command + true to ommit displaying common parameter + If commandInfo is null + + If could not create the CommandViewModel. For instance the ShowCommandCommandInfo corresponding to + the following function will throw a RuntimeException when the ShowCommandCommandInfo Parameters + are retrieved: + function CrashMe ([I.Am.A.Type.That.Does.Not.Exist]$name) {} + + The CommandViewModel corresponding to commandInfo + + + + Called to trigger the event fired when help is needed for the command + + + + + Called to trigger the event fired when a module needs to be imported + + + + + Called to set the height for common parameters initially or when the AreCommonParametersExpanded changes + + + + + Compares source and target by being the default parameter set and then by name + + source paremeterset + target parameterset + 0 if they are the same, -1 if source is smaller, 1 if source is larger + + + + If property changed will be notify + + The changed property + + + + Called when the PropertyChanged event is triggered on the SelectedParameterSet + + event sender + event arguments + + + + Arguments for the event triggered when it is necessary to display help for a command + + + + + the name for the command needing help + + + + + Initializes a new instance of the HelpNeededEventArgs class. + + the name for the command needing help + + + + Gets the name for the command needing help + + + + + Arguments for the event triggered when it is necessary to display help for a command + + + + + the name for the command belonging to the module to be imported + + + + + the module path or name for the module we want to import + + + + + the name of the module that is selected, which can be different from parentModuleName + if "All" is selected + + + + + Initializes a new instance of the ImportModuleEventArgs class. + + the name for the command needing help + the name of the module containing the command + + the name of the module that is selected, which can be different from parentModuleName + if "All" is selected + + + + + Gets the name for the command belonging to the module to be imported + + + + + Gets the module path or name for the module we want to import + + + + + Gets the name of the module that is selected, which can be different from parentModuleName + if "All" is selected + + + + + ModuleViewModel Contains information about a PowerShell module. + + + + + True if the module is imported + + + + + Field used for the Name parameter. + + + + + Filter commands property of this module + + + + + The selected command property of this module + + + + + Field used for the Commands parameter. + + + + + value indicating whether there is a selected command which belongs to an imported module, + with no parameter sets or with a selected parameter set where all mandatory parameters have values + + + + + value indicating whether there is a selected command + + + + + The AllModulesViewModel containing this, if any + + + + + Initializes a new instance of the ModuleViewModel class. + + Module name + All loaded modules + + + + PropertyChanged Event + + + + + Indicates the selected command in needs to display the help for a command + + + + + Indicates the selected command needs to import a module + + + + + Indicates the selected command should be run + + + + + Gets the name property of this ModuleView + + + + + Gets the GUI friendly module name + + + + + Gets CommandControl is visibility or not + + + + + Gets CommandControl Height + + + + + Gets the commands under in this module + + + + + Gets the filter commands of this module + + + + + Gets or sets the selected commands of this module + + + + + Gets or sets a value indicating whether there is a selected command + + + + + Gets or sets a value indicating whether there is a selected command which belongs + to an imported module, with no parameter sets or with a selected parameter set + where all mandatory parameters have values + + + + + Gets the AllModulesViewModel containing this, if any + + + + + Gets a value indicating whether the module is imported + + + + + Sets the AllModulesViewModel containing this + + the AllModulesViewModel containing this + + + + Sorts commands and optionally sets ModuleQualifyCommandName + + true to mark repeated commands with a flag that will produce a module qualified name in GetScript + + + + According commandNameFilter to filter command,and added the filter commands into filteredCommands property + + current filter + + + + Callled in response to a GUI event that requires the command to be run + + + + + Triggers the SelectedCommandNeedsHelp event + + event arguments + + + + Triggers the SelectedCommandNeedsImportModule event + + + + + Uses pattern matching if pattern is not null or calls MatchesEvenIfInPlural otherwise + + pattern corresponding to filter + command name string + filter string + true if coparisonText matches str or pattern + + + + Returns true if filter matches commandName, even when filter is in the plural + + command name string + filter string + return match result + + + + Handles the HelpNeeded event in the selected command and triggers the SelectedCommandNeedsHelp event + + HelpNeeded event sender + HelpNeeded event argument + + + + Handles the ImportModule event in the selected command and triggers the SelectedCommandNeedsImportModule event + + HelpNeeded event sender + HelpNeeded event argument + + + + Called when the SelectedCommand property changes to update IsThereASelectedImportedCommandWhereAllMandatoryParametersHaveValues + + event sender + event arguments + + + + Called to set IsThereASelectedImportedCommandWhereAllMandatoryParametersHaveValues when + SelectedParameterSetAllMandatoryParametersHaveValues changes in the SelectedCommand or + when the SelectedCommand changes + + + + + Compare source commandmodule is equal like target commandmodule + + source commandmodule + target commandmodule + return compare result + + + + If property changed will be notify + + The changed property + + + + Contains information about a single ParameterSet inside a cmdlet. + + + + + Field used for the Name parameter. + + + + + value indicating all mandatory parameters have values + + + + + Field used for the Parameters parameter. + + + + + Initializes a new instance of the ParameterSetViewModel class. + + The name of the parameterSet + The array parametes of the parameterSet + + + + PropertyChanged Event + + + + + Gets the ParameterSet Name + + + + + Gets the Parameters of this parameterset + + + + + Gets or sets a value indicating whether all mandatory parameters have values + + + + + Creates script according parameters of this parameterset + + Return script of this parameterset parameters + + + + Gets the individual parameter count of this parameterset + + Return individual parameter count of this parameterset + + + + Compare source parametermodel is equal like target parametermodel + + the source of parametermodel + the target of parametermodel + Return compare result + + + + Gets the delimited poarameter if it needs delimitation and is not delimited + + value needing delimitation + open delimitation + close delimitation + the delimited poarameter if it needs delimitation and is not delimited + + + + Returns '0' if the does not need delimitation, '1' if it does, and a quote character if it needs to be delimited with a quote + + parameter value to check + true if the parameter value should be a scriptblock + '0' if the parameter does not need delimitation, '1' if it needs, '\'' if it needs to be delimited with single quote and '\"' if it needs to be delimited with double quotes + + + + Called to evaluate the value of AllMandatoryParametersHaveValues + + + + + If property changed will be notify + + The changed property + + + + Used to track changes to parameter values in order to verify the enabled state of buttons + + event arguments + event sender + + + + Contains information about a single parameter inside a parameter set. + If a parameter with the same name belongs to two (or more) parameter sets, + there will be two (or more) ParameterViewModel objects for the parameters, + each one inside its own ParameterSetViewModel. + + + + + ParameterMetadata contains information that is the same throughout parameter sets + like Name and Type. + Note: It also happens to contain a list of all ParameterSetMetadata for the parametersets + in this cmdlet, but this information is not used in this class since if a parameter is + in multiple parametersets, there will be a ParameterViewModel for each time the parameter + appears in a parameterset. + + + + + value entered in the GUI for the parameter + + + + + Name of the parameter set this parameter is in + + + + + Initializes a new instance of the ParameterViewModel class. + + The parameter information for this parameter + the name of the parameter set this parameter is in + + + + PropertyChanged Event + + + + + Gets the ParameterMetadata that contains information that is the same throughout parameter sets + like Name and Type. + + + + + Gets or sets the value for this parameter from the GUI + + + + + Gets the parameter name + + + + + Gets the name of the parameter set this parameter is in + + + + + Gets a value indicating whether this parameter is in the shared parameterset + + + + + Gets Name with an extra suffix to indicate if the parameter is mandatory to serve + + + + + Gets Label in the case this parameter is used in a combo box + + + + + Gets Tooltip string for the parameter + + + + + Gets a value indicating whether the parameter is mandatory + + + + + Gets a value indicating whether the parameter has a value + + + + + Evaluates the tooltip based on the parameters + + parameter type name + parameter position + true if the parameter is mandatory + true if the parameter is shared by parameter sets + true if the parameter takes value from the pipeline + the tooltip based on the parameters + + + + If property changed will be notify + + The changed property + + + + Interaction logic for CmdletGUI.xaml + + + ShowAllModulesWindow + + + + + private constants for ZoomLevel + + + + + Zoom Increments + + + + + Max ZoomLevel + + + + + Min ZoomLevel + + + + + Initializes a new instance of the ShowAllModulesWindow class. + + + + + Saves the user settings + + event arguments + + + + Sets the focus on the CommandName control + + event sender + event arguments + + + + Saves size changes in user settings + + event sender + event arguments + + + + Saves position changes in user settings + + event sender + event arguments + + + + Updates the user setting with window state + + event sender + event arguments + + + + Implements ZoomIn + + + + + + + Implements ZoomOut + + + + + + + InitializeComponent + + + + + Interaction logic for CmdletGUI.xaml + + + ShowCommandWindow + + + + + Initializes a new instance of the ShowCommandWindow class. + + + + + Saves the user settings + + event arguments + + + + Saves size changes in user settings + + event sender + event arguments + + + + Saves position changes in user settings + + event sender + event arguments + + + + Updates the user setting with window state + + event sender + event arguments + + + + InitializeComponent + + + + + Interaction logic for MultipleSelectionDialog.xaml + + + MultipleSelectionDialog + + + + + Initializes a new instance of the MultipleSelectionDialog class. + + + + + OK Click event function + + event sender + event arguments + + + + Cancel Click event function + + event sender + event arguments + + + + InitializeComponent + + + + + Implements thw WPF window part of the the ShowWindow option of get-help + + + + + Shows the help window + + object with help information + cmdlet calling this method + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ISECommon.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ISECommon.dll new file mode 100644 index 0000000..efae0a6 Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ISECommon.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ISECommon.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ISECommon.xml new file mode 100644 index 0000000..4defe09 --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.ISECommon.xml @@ -0,0 +1,1464 @@ + + + + Microsoft.PowerShell.ISECommon + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to To open multiple files, provide a single list of individual file names that are separated by commas.. + + + + + Looks up a localized string similar to Provide a value for the following option: {0}.. + + + + + Looks up a localized string similar to Unable to retrieve the full path corresponding to the following name: {0}.. + + + + + Looks up a localized string similar to There is no option with the following name: {0}.. + + + + + Helper that parses command line arguments + + + + Help switch string + + + Smallest unambiguous substring of the Help switch + + + Alternative for the help switch string + + + mta switch string + + + Smallest unambiguous substring of the mta switch + + + noprofile switch string + + + Smallest unambiguous substring of the noprofile switch + + + Files switch string + + + Smallest unambiguous substring of the Files switch + + + + value indicating whether we are using the MTA option in PowerShellTabs + + + + + Value indicating we should not run the profile + + + + + value indicating whether we run the profile for PowerShellTabs + + + + + Files passed to the command line + + + + + Value indicating the -file option has already been processed + + + + + Gets a value indicating whether we use the MTA option in PowerShellTabs + + + + + Gets a value indicating whether we run the profile for PowerShellTabs + + + + + Gets a value indicating whether we should diaplay a help message + + + + + Gets the files passed to the command line + + + + + Parses the arguments setting the value used in internal properties of this class + + command line arguments + For any parsing error. + + + + Returns true if matches . + + The argument (no dash) we want to check for matches + The switch candidate like "help" + + The smallest substring of switchCandidate that is large enough to disambiguate + switchCandidate from any other switch + + true if matches . + + + + Gets the full path corresponding to filePath or null if it could not be retrieved + + path we want to retrieve the full path from + the full path corresponding to filePath or null if it could not be retrieved + + + + Adds currentFile to the list if able to retrieve a full path from it + otherwise returns an error message + + file to be added to the list + null if there were no errors + + + + Splits commaSeparatedFiles into the individual files + + list of files separated by comma + + + + Calls GetFileNames and checks/sets hasProcessedFiles + + comma separated list of files + + + + Helper class defining special characters and providing char matching methods + + + + + Type of dash #1 + + + + + Type of dash #2 + + + + + Type of dash #3 + + + + + left double quotation mark + + + + + right double quotation mark + + + + + low double left quote used in german. + + + + + Returns true if c is a dash or slash character + + character to check + true if c is a dash or slash character + + + + Returns true if c is a double quote character + + character to check + true if c is a double quote character + + + + Sends a message to the namemed pipe server with a file to open. + The thought behind not throwing exceptions from the named pipe functionality is to + go ahead with a fresh instance of GPowerShell if for some reason the named pipes did not work. + This is a static class as opposed to a class that would call CreateFile in one Method/Constructor + and a WriteFile in another because a client CreateFile will block the Server in a ReadFile + so the client always has to follow a succeded CreateFile with a WriteFile. + + + + + Client timeout in milliseconds to wait for the server to be free + + + + + Pipe handle used in SendString() + + + + + Event allowing tests to pause the listening stages of the server. + + + + + Event allowing tests to pause untill the server is about to wait on testServerPauseEvent + + + + + Gets the pipe handle used in SendString + + + + + Gets or sets an event allowing tests to pause the stages of the client. + This should be set before calling SendString. + + + + + Gets or sets an event allowing tests to pause untill the client is about to wait on testClientPauseEvent. + This should be set before calling SendString. + + + + + Tries to send a string through the pipe. That is the only relyable way to know if the server is available. + A client call to CreateFile will put the server in a blocked call to ReadFile so the propper way + to test the server is by both creating the file and sending a string. + To just test the presence of a server this method should be called with NLStrings.PipeNoOp that + will be sent to the server and ignored by the server. + + string to be sent + true if we succeeded sending the string + + + + Informs tests it is about to wait on testClientPauseEvent by setting testPauseEvent and + waits on this.testClientPauseEvent, if both events are present. + + + + + Retrieves the existing pipe name or null if there is no current pipe name + + the existing pipe name or null if there is no current pipe name. + + + + Interop methods, constants and structures needed for named pipes. + + + + + The pipe is bi-directional; both server and client processes can read from and write to the pipe. + This mode gives the server the equivalent of GENERIC_READ and GENERIC_WRITE access to the pipe. + The client can specify GENERIC_READ or GENERIC_WRITE, or both, when it connects to the pipe using the CreateFile function. + + + + + The flow of data in the pipe goes from server to client only. + This mode gives the server the equivalent of GENERIC_WRITE access to the pipe. + The client must specify GENERIC_READ access when connecting to the pipe. + If the client must change pipe settings by calling the SetNamedPipeHandleState function, + the client must specify GENERIC_READ and FILE_WRITE_ATTRIBUTES access when connecting to the pipe. + + + + + The flow of data in the pipe goes from client to server only. + This mode gives the server the equivalent of GENERIC_READ access to the pipe. + The client must specify GENERIC_WRITE access when connecting to the pipe. + If the client must read pipe settings by calling the GetNamedPipeInfo or + GetNamedPipeHandleState functions, the client must specify GENERIC_WRITE and + FILE_READ_ATTRIBUTES access when connecting to the pipe. + + + + + Data is written to the pipe as a stream of bytes. This mode cannot be used with PIPE_READMODE_MESSAGE. + + + + + Data is written to the pipe as a stream of messages. This mode can be used with either PIPE_READMODE_MESSAGE or PIPE_READMODE_BYTE. + + + + + Mode used for Asynchronous IO + + + + + Blocking mode is enabled. When the pipe handle is specified in the ReadFile, WriteFile, + or ConnectNamedPipe function, the operations are not completed until there is data to read, + all data is written, or a client is connected. Use of this mode can mean waiting indefinitely + in some situations for a client process to perform an action. + + + + + Nonblocking mode is enabled. In this mode, ReadFile, WriteFile, and ConnectNamedPipe + always return immediately. Note that nonblocking mode is supported for compatibility + with Microsoft LAN Manager version 2.0 and should not be used to achieve asynchronous I/O + with named pipes. + + + + + Data is read from the pipe as a stream of bytes. + This mode can be used with either PIPE_TYPE_MESSAGE or PIPE_TYPE_BYTE. + + + + + Data is read from the pipe as a stream of messages. + This mode can be only used if PIPE_TYPE_MESSAGE is also specified. + + + + + Connections from remote clients can be accepted and checked against the security descriptor for the pipe. + + + + + Connections from remote clients are automatically rejected. + + + + + Constant that can be used in the nMaxInstances parameter of CreateNamedPipe. + + + + + Error result when the message is longer than the read buffer or when the size of the data passes the + 64K named pipe write limit + + + + + There is a process on other end of the pipe. + + + + + Overlapped I/O event is not in a signaled state. + + + + + Overlapped I/O operation is in progress. + + + + + The pipe is being closed. + + + + + The pipe has been ended. + + + + + error returned when a pipe exists but all instances are busy. + + + + + Infinite timeout + + + + + Specifies that the desired access is read + + + + + Specifies that the desired access is write + + + + + Specifies that the desired access is execute + + + + + Specifies that the desired access is all + + + + + Creates a new file. + If the specified file exists, the function fails and the last-error code is set to + ERROR_FILE_EXISTS (80). + + + + + Creates a new file, always. + If the specified file exists, the function overwrites the file, clears the existing attributes, + combines the specified file attributes and flags with FILE_ATTRIBUTE_ARCHIVE, but does not + set the security descriptor that the SECURITY_ATTRIBUTES structure specifies. The function + succeeds and last-error code is set to ERROR_ALREADY_EXISTS (183). + + + + + Opens a file. + If the specified file does not exist, the function fails and the last-error code is set to + ERROR_FILE_NOT_FOUND (2). + For more information, see the Remarks section of this topic. + + + + + Opens a file, always. + If the specified file does not exist, the function creates a file as if dwCreationDisposition + is CREATE_NEW. + If the specified file exists, the function succeeds and last-error code is set to + ERROR_ALREADY_EXISTS (183). + + + + + Opens a file and truncates it so that its size is zero (0) bytes. + If the specified file does not exist, the function fails and the last-error code is set to ERROR_FILE_NOT_FOUND (2). + The calling process must open the file with the GENERIC_WRITE access right. + + + + + Constant used to query for token information + + + + + Constant specifying the token group attribute corresponding to the logon sid + + + + + Constant used to retrieve the token groups + + + + + Creates an instance of a named pipe and returns a handle for subsequent pipe operations. A named pipe server process uses this function either to create the first instance of a specific named pipe and establish its basic attributes or to create a new instance of an existing named pipe. + + The unique pipe name. This string must have the following form: \\.\pipe\pipename + The open mode. The function fails if dwOpenMode specifies anything other than 0 or the flags in "pipe open mode" below. + The pipe mode. The function fails if dwPipeMode specifies anything other than 0 or the flags listed in "pipe mode" below. + The maximum number of instances that can be created for this pipe. The first instance of the pipe can specify this value; the same number must be specified for other instances of the pipe. Acceptable values are in the range 1 through PIPE_UNLIMITED_INSTANCES (255). + The number of bytes to reserve for the output buffer. + The number of bytes to reserve for the input buffer. + The default time-out value, in milliseconds, if the WaitNamedPipe function specifies NMPWAIT_USE_DEFAULT_WAIT. Each instance of a named pipe must specify the same value. + A pointer to a SECURITY_ATTRIBUTES structure that specifies a security descriptor for the new named pipe and determines whether child processes can inherit the returned handle. If lpSecurityAttributes is NULL, the named pipe gets a default security descriptor and the handle cannot be inherited. + + If the function succeeds, the return value is a handle to the server end of a named pipe instance. + If the function fails, the return value is INVALID_HANDLE_VALUE. To get extended error information, call GetLastError. + + + + + Retrieves the results of an overlapped operation on the specified file, named pipe, or communications device. + + + A handle to the file, named pipe, or communications device. This is the same handle that was specified + when the overlapped operation was started by a call to the ReadFile, WriteFile, ConnectNamedPipe, + TransactNamedPipe, DeviceIoControl, or WaitCommEvent function. + + + A pointer to an OVERLAPPED structure that was specified when the overlapped operation was started. + + + A pointer to a variable that receives the number of bytes that were actually transferred by a read or + write operation. For a TransactNamedPipe operation, this is the number of bytes that were read from + the pipe. For a DeviceIoControl operation, this is the number of bytes of output data returned by + the device driver. For a ConnectNamedPipe or WaitCommEvent operation, this value is undefined. + + + If this parameter is TRUE, the function does not return until the operation has been completed. + If this parameter is FALSE and the operation is still pending, the function returns FALSE and + the GetLastError function returns ERROR_IO_INCOMPLETE. + + + If the function succeeds, the return value is true. + If the function fails, the return value is false. To get extended error information, call GetLastError. + + + + + Retrieves the current process handle + + The current process handle + + + + Retrieves the current process token. + + process handle + token access + process token + The current process token. + + + + Gets token information. + + token to retrieve information from + Kind of information to retrieve + information retrieved + length of information to be retrieved + length of information actually retrieved + token information + + + + Enables a named pipe server process to wait for a client process to connect to an instance of a named pipe. + A client process connects by calling either the CreateFile or CallNamedPipe function. + + A handle to the server end of a named pipe instance. + This handle is returned by the CreateNamedPipe function. + pointer to an OVERLAPPED structure. + + If the function succeeds, the return value is nonzero. + If the function fails, the return value is zero. To get extended error information, + call GetLastError. + If a client connects before the function is called, the function returns zero and + GetLastError returns ERROR_PIPE_CONNECTED. This can happen if a client connects in + the interval between the call to CreateNamedPipe and the call to ConnectNamedPipe. + In this situation, there is a good connection between client and server, even though + the function returns zero. + + + + + Waits until either a time-out interval elapses or an instance of the specified named pipe is + available for connection (that is, the pipe's server process has a pending ConnectNamedPipe + operation on the pipe). + + + The name of the named pipe. The string must include the name of the computer on which the + server process is executing. A period may be used for the servername if the pipe is local. + The following pipe name format is used: + \\servername\pipe\pipename + + + The number of milliseconds that the function will wait for an instance + of the named pipe to be available. You can used one of the following + values instead of specifying a number of milliseconds. + + + If an instance of the pipe is available before the time-out interval elapses, the return + value is nonzero. + If an instance of the pipe is not available before the time-out interval elapses, + the return value is zero. To get extended error information, call GetLastError. + + + + + Disconnects the server end of a named pipe instance from a client process. + + + A handle to an instance of a named pipe. This handle must be created by the + CreateNamedPipe function. + + + If the function succeeds, the return value is nonzero. + If the function fails, the return value is zero. To get extended error information, + call GetLastError. + + + + + Closes an open object handle. + + + A valid handle to an open object. + + + If the function succeeds, the return value is nonzero. + If the function fails, the return value is zero. To get extended error information, + call GetLastError. + If the application is running under a debugger, the function will throw an exception + if it receives either a handle value that is not valid or a pseudo-handle value. + This can happen if you close a handle twice, or if you call CloseHandle on a handle + returned by the FindFirstFile function. + + + + + Reads data from a file, and starts at the position that the file pointer indicates. You can use this function for both synchronous and asynchronous operations. + + A handle to the file to be read. + The file handle must be created with the GENERIC_READ access right. For more information, + see File Security and Access Rights. + For asynchronous read operations, hFile can be any handle that is opened with the + FILE_FLAG_OVERLAPPED flag by the CreateFile function, or a socket handle returned + by the socket or accept function. + + A pointer to the buffer that receives the data read from a file. + The maximum number of bytes to be read. + + A pointer to the variable that receives the number of bytes read. + If lpOverlapped is NULL, lpNumberOfBytesRead cannot be NULL. + If lpOverlapped is not NULL, lpNumberOfBytesRead can be NULL. + + + A pointer to an OVERLAPPED structure. + This structure is required if hFile is created with FILE_FLAG_OVERLAPPED. + + + The ReadFile function returns when one of the following conditions occur: + A write operation completes on the write end of the pipe. + The number of bytes requested is read. + An error occurs. + If the function succeeds, the return value is nonzero. + If the function fails, the return value is zero (0). To get extended error information, + call GetLastError. + If the return value is nonzero and the number of bytes read is zero (0), + the file pointer is beyond the current end of the file at the time of the read operation. + However, if the file is opened with FILE_FLAG_OVERLAPPED and lpOverlapped is not NULL, + the return value is zero (0) and GetLastError returns ERROR_HANDLE_EOF when the file + pointer goes beyond the current end of file. + + + + + Writes data to the specified file at the position specified by the file pointer. This function is designed for both synchronous and asynchronous operation. + + + A handle to the file. The file handle must have been created with the + GENERIC_WRITE access right. For more information, see File Security and Access Rights. + + A pointer to the buffer containing the data to be written to the file. + + The number of bytes to be written to the file. + A value of zero specifies a null write operation. The behavior of a null write operation + depends on the underlying file system. + To truncate or extend a file, use the SetEndOfFile function. + Named pipe write operations across a network are limited to 65,535 bytes. + + + A pointer to the variable that receives the number of bytes written. WriteFile sets this + value to zero before doing any work or error checking. + If lpOverlapped is NULL, lpNumberOfBytesWritten cannot be NULL. If lpOverlapped is not NULL, + lpNumberOfBytesWritten can be NULL. If this is an overlapped write operation, you can get + the number of bytes written by calling GetOverlappedResult. If hFile is associated with an + I/O completion port, you can get the number of bytes written by calling + GetQueuedCompletionStatus. + If I/O completion ports are used and you are using a callback routine to free + the memory allocated to the OVERLAPPED structure pointed to by the lpOverlapped + parameter, specify NULL as the value of this parameter to avoid a memory corruption + problem during the deallocation. This memory corruption problem will cause an invalid + number of bytes to be returned in this parameter. + + + A pointer to an OVERLAPPED structure. This structure is required if hFile was opened with + FILE_FLAG_OVERLAPPED. + If hFile was opened with FILE_FLAG_OVERLAPPED, the lpOverlapped parameter must not be NULL. + It must point to a valid OVERLAPPED structure. If hFile was opened with + FILE_FLAG_OVERLAPPED and lpOverlapped is NULL, the function can incorrectly report that + the write operation is complete. + If hFile was opened with FILE_FLAG_OVERLAPPED and lpOverlapped is not NULL, + the write operation starts at the offset specified in the OVERLAPPED structure and + WriteFile may return before the write operation has been completed. In this case, + WriteFile returns FALSE and the GetLastError function returns ERROR_IO_PENDING. This + allows the calling process to continue processing while the write operation is being + completed. The event specified in the OVERLAPPED structure is set to the signaled state + upon completion of the write operation. The caller must adjust the position of the file + pointer upon completion. + + + If the function succeeds, the return value is nonzero. + If the function fails, the return value is zero. To get extended error information, call GetLastError. + + + + + Creates or opens a file, file stream, directory, physical disk, volume, console buffer, + tape drive, communications resource, mailslot, or named pipe. The function returns a + handle that can be used to access the object. + + + The name of the object to be created or opened. + In the ANSI version of this function, the name is limited to MAX_PATH characters. + To extend this limit to 32,767 wide characters, call the Unicode version of the + function and prepend "\\?\" to the path. For more information, see Naming a File. + For information on special device names, see Defining an MS-DOS Device Name. + To specify a COM port number greater than 9, use the following syntax: "\\.\COM10". + This syntax works for all port numbers and hardware that allows COM port numbers to be specified. + To create a file stream, specify the name of the file, a colon, and then the name of the + stream. For more information, see File Streams. + + + The access to the object, which can be read, write, or both. + You cannot request an access mode that conflicts with the sharing mode that is + specified in an open request that has an open handle. + If this parameter is zero (0), the application can query file and device attributes + without accessing a device. This is useful for an application to determine the size + of a floppy disk drive and the formats it supports without requiring a floppy in a drive. + It can also be used to test for the existence of a file or directory without opening + them for read or write access. + See the "CreateFile desired access" below. + + + The sharing mode of an object, which can be read, write, both, or none. + You cannot request a sharing mode that conflicts with the access mode that is specified + in an open request that has an open handle, because that would result in the following + sharing violation: ERROR_SHARING_VIOLATION. + If this parameter is zero (0) and CreateFile succeeds, the object cannot be shared + and cannot be opened again until the handle is closed. For more information, see the + Remarks section of this topic. + The sharing options remain in effect until you close the handle to an object. + To enable a process to share an object while another process has the object open, + use a combination of one or more of the following values to specify the access mode + they can request to open the object. + + + A pointer to a SECURITY_ATTRIBUTES structure that determines whether or not the returned + handle can be inherited by child processes. + If lpSecurityAttributes is NULL, the handle cannot be inherited. + The lpSecurityDescriptor member of the structure specifies a security descriptor + for an object. If lpSecurityAttributes is NULL, the object gets a default security descriptor. + The access control lists (ACL) in the default security descriptor for a file or directory + are inherited from its parent directory. + The target file system must support security on files and directories for this parameter to + have an effect on them, which is indicated when GetVolumeInformation returns FS_PERSISTENT_ACLS. + CreateFile ignores lpSecurityDescriptor when opening an existing file, but continues to + use the other structure members. + + + An action to take on files that exist and do not exist. + See "CreateFile creation disposition" below + + + The file attributes and flags. + This parameter can include any combination of the file attributes. + All other file attributes override FILE_ATTRIBUTE_NORMAL. + When CreateFile opens a file, it combines the file flags with existing + file attributes, and ignores any supplied file attributes. + + + A handle to a template file with the GENERIC_READ access right. + The template file supplies file attributes and extended attributes for the file that is + being created. This parameter can be NULL. + When opening an existing file, CreateFile ignores the template file. + When opening a new EFS-encrypted file, the file inherits the DACL from its parent directory. + + + If the function succeeds, the return value is an open handle to a specified file. + If a specified file exists before the function call and dwCreationDisposition is CREATE_ALWAYS + or OPEN_ALWAYS, a call to GetLastError returns ERROR_ALREADY_EXISTS, even when the + function succeeds. If a file does not exist before the call, GetLastError returns zero (0). + If the function fails, the return value is INVALID_HANDLE_VALUE. + To get extended error information, call GetLastError. + + + + + Sets the specified event object to the signaled state. + + + A handle to the event object. The CreateEvent or OpenEvent function returns this handle. The handle + must have the EVENT_MODIFY_STATE access right. For more information, see Synchronization Object S + ecurity and Access Rights. + + + If the function succeeds, the return value is true. + If the function fails, the return value is false. To get extended error information, call GetLastError. + + + + + Creates or opens a named or unnamed event object. + + + A pointer to a SECURITY_ATTRIBUTES structure. If this parameter is NULL, the handle cannot be inherited + by child processes. + + + If this parameter is TRUE, the function creates a manual-reset event object, which requires the use + of the ResetEvent function to set the event state to nonsignaled. If this parameter is FALSE, + the function creates an auto-reset event object, and system automatically resets the event state + to nonsignaled after a single waiting thread has been released. + + + If this parameter is TRUE, the initial state of the event object is signaled; otherwise, it is nonsignaled. + + + The name of the event object. The name is limited to MAX_PATH characters. Name comparison is case sensitive. + + + If the function succeeds, the return value is a handle to the event object. If the named event object + existed before the function call, the function returns a handle to the existing object + and GetLastError returns ERROR_ALREADY_EXISTS. If the function fails, the return value is NULL. + To get extended error information, call GetLastError. + + + + + Waits until one or all of the specified objects are in the signaled state or the time-out interval elapses. + + + The number of object handles in the array pointed to by lpHandles. + The maximum number of object handles is MAXIMUM_WAIT_OBJECTS. + + + An array of object handles.The array can contain handles to objects of different types. I + t may not contain multiple copies of the same handle. If one of these handles is closed while + the wait is still pending, the function's behavior is undefined.The handles must have the SYNCHRONIZE + access right. For more information, see Standard Access Rights. + + + If this parameter is TRUE, the function returns when the state of all objects in the lpHandles + array is signaled. If FALSE, the function returns when the state of any one of the objects + is set to signaled. In the latter case, the return value indicates the object whose state caused + the function to return. + + + The time-out interval, in milliseconds. The function returns if the interval elapses, even + if the conditions specified by the bWaitAll parameter are not met. If dwMilliseconds is zero, + the function tests the states of the specified objects and returns immediately. If dwMilliseconds + is INFINITE, the function's time-out interval never elapses. + + + If the function succeeds, the return value indicates the event that caused the function to return. + It can be one of the following values. (Note that WAIT_OBJECT_0 is defined as 0 and WAIT_ABANDONED_0 + is defined as 0x00000080L.) + + + + + Sid and attributes structure. + + + + + A pointer to a SID structure. + + + + + Specifies attributes of the SID. This value contains up to 32 one-bit flags. Its meaning depends on the definition and use of the SID. + + + + + This is not equivalent to TOKEN_GROUPS + For that we would need Groups to be defined as: + [MarshalAs(UnmanagedType.ByValArray, SizeConst = 1)] + To reflect the legacy ANYSIZE_ARRAY but that would only allow + us to read the first array element. + + + + + Count of groups + + + + + PlaceHolder for the real IntPtr retrieved by doing some calculation + + + + + This is the structure returned from a GetTokenInformation asking for TokenGroups + + + + + Count of groups + + + + + ARRAY_ANYSIZE is the actual unmanaged size, which is defined as 1 + + + + + Security attributes + + + + + The size, in bytes, of this structure. Set this value to the size of the SECURITY_ATTRIBUTES structure. + + + + + A pointer to a security descriptor for the object that controls the sharing of it. + + + + + A Boolean value that specifies whether the returned handle is inherited when a new process is created. + + + + + Initializes a new instance of the SECURITY_ATTRIBUTES class + + + + + SafeHandle class for named pipes + + + + + Prevents a default instance of the NamedPipeSafeHandle class from being created. + + + + + Calls NativeMethods.CloseHandle(handle) + + the return of NativeMethods.CloseHandle(handle) + + + + Listens to a specific named pipe for messages to open new files. + Error treatment: + The thoght behind not throwing exceptions from the named pipe functionality is to + go ahead with a fresh instance of PowerShell ISE if, for some reason, the named pipes did not work. + Client and Server Dynamic: + Each instance that receives no file name as a parameter starts a new server. + If the instance received a file name as a parameter, it will try to send the file name to an existing instance. + If it succeded, it terminates itself before creating a window. If it did not succede, it creates a new window and + a new server, so that any window of the ISE that is UP has a server running. This means that when an instance of + powershell_ise.exe is closed, any other instance still running, will be listening for future files sent to the pipe. + A client never just opens the pipe. It always opens the pipe and sends a string since an open will cause the server to + get out of its ConnectNamedPipe and go to its ReadFile which would make it unavailable to recieve further + connection/mesages. + Pipe Security: + The pipe has to be secured with the current logon sid, since the same user can use remote desktop + to connect to the same machine (at least in Windows Server 2003). This is the recommended way to secure named + pipes in the Named Pipe documentation. IntPtr.Zero would cause even other users logged on to the same box + to be able to open the pipe and send file names to be opened on the instance of powershell.exe runing under + the current user. + Pipe Name: + Because the pipe is secured with the logon sid, the same name, like "PowerShellISEPipeName" cannot be used + for the pipe in all logon sids. This would cause the second user logged on to get access denied to the pipe, + which would mean it would not be able to create a pipe server, and would not be able to receive pipe messages. + We could name the pipe with the logon sid, but it is unclear if this is priviledged information and pipe names + are very public. The recommendation to prevent pipe name squatting is to use a guid for the name, but the name + also has to be published to the pipe clients. The solution is to create a file in a well known place that + publishes the name of the pipe. The file path includes the logon sid, so clients within that logon sid have + a per logon session place to look for the current pipe name. The fact that the file is opened under the + application local storage of the current user (the file has access rights to the current user) will prevent + other users to see the logon sid of the current user. HKCU in the registry would also work. + All servers share the same pipe name except for the detail below. + Detail on the pipe name: There are 2 pipe names actually, since if we are running as admin, a different name is + used than when running as a regular user. This is not a security feature, but it lets "powershell_ise.exe filename.ps1" + send filename.ps1 to an admin powershell_ise.exe when it is started from an application running as admin, which is a nice feature. + Clearing up the file used to publish the logon name: + Each server cannot directly delete the file that publishes the pipe name, since other servers might be answering for + the same pipe name (See Client and Server Dynamic). This means that each server increments a reference count to the file + (which is actually maintained inside the file). When the count is zero (or one before the decrement) the file can be deleted. + When the file is deleted, if the file parent's directory (which is named after the logon sid) has no other files + (it can have up to 2 files, one for admin and another for non admin as mentioned in the Pipe Name session detail), + it is also deleted. + If, when a server starts it could not send a message to an existing server, it will assume it is the first server and reset + the reference count in the file that publishes the pipe name to 1. This allows for a new instance to delete previous files + created by other instances (in the same logon session) that have been terminated forcefully before decrementing their + reference count. + Stopping the server operation: + The NamedPipeServer is asynchronous and yet it is not. It is asynchronous because it uses the overlapped + structure that makes it asynchronous. It is not asynchronous because after each operation it locks on + a WaitForMultipleObjects that is going to have 2 handles: the pipeHandle and the cacelEvent handle. + The only reason why this code deals with the extra trouble of asynchronous IO is to be able to set the + stopListeningEvent and abort the server listening process. + A synchronous server has the issue of getting locked in a ConnectToNamedPipe or in a ReadFile. Once it is + locked, the thread cannot be stopped and the exe hangs arround. + Previous synchronous alternatives that caused problems where: + 1) Set a flag and use the client to connect and send data through the pipe so that the server gets out + of its synchronous calls. This fails when we have more than one instance since the pipe has the same name + and another instance might get the client message. + 2) Set a flag and then use the CancelSynchronousIO API. This worked fine, but this API is not available + in XP and CancelIO, which is available in XP did not work. + Using unmanaged API's to abort the managed thread was not even tried because it sounded risky. + The .NET 3.5 API's with the same asynchronous logic used here (waiting on 2 events) also worked fine + in tests and produced simpler code. + .NET 3.5 was not used in the exe because it is supposed to check for .NET presence. We did not move + the client and server to the DLL because it would take the same startup time (mostly depending on + DLL loading) to start up a client. Moving just the server side to the DLL would have worked, but + having half the solution in interop and half in .NET is not ideal. + Alternatives to consider in the future: + - One name per server can allow more predictability on what server receives the client messages + (there is none right now) but the cleaning up of the files not propperly deleted by their ow + n servers might requiring sending a message to each pipe instead of the current one messag + e to the current pipe we send in the beginning to reset the pipe name reference count. + .NET 3.5 SP1 has NamedPipe API's that might simplify some of this code and make the asynchronous pipe easier to write, + but most of the complexity here dealing with the files that publish pipe names, will still remain. + + + + + tracer for both server and client named pipe functionality. + + + + + The size of the Server read buffer. + .NET API's should be limited to MAX_PATH Even if file names we are passing through the pipe + are larger than 512 unicode characters, multiple reads are performed in the server and multiple + writes happen automatically on the client. + + + + + Caches the retrieved logon sid + + + + + value indicating the server/client should use a test pipe name + + + + + Thread used in StartListening + + + + + The event used to cancel the listening on the server + + + + + Method to be called to open a file + + + + + Handle to the pipe initilized after a succesfull call to CreateNamedPipe + + + + + Pointer to the file used to publish the pipe name. + We keep this so we can delete the file. + + + + + The event used in the overlapped structure to signal events on the pipe. + + + + + Event allowing tests to pause the listening stages of the server. + + + + + Event allowing tests to pause untill the server is about to wait on testServerPauseEvent + + + + + Callback called to communicate each result of the listening stage to test. + + + + + Initializes a new instance of the NamedPipeServer class + + Method to be called to open files + + + + Results to be communicated to test + + + + test value + + + test value + + + test value + + + + This is one of 2 test values that cannot yet be tested since if the server + is waiting and the client does the first thing it can withy the pipe, which is a CreateFile, + the connection will succede. + + + + test value + + + test value + + + test value + + + test value + + + test value + + + test value + + + test value + + + test value + + + test value + + + test value + + + + This is also untested. + + + + test value + + + + Gets the cached logon sid + + + + + Gets or sets a value indicating whether the server/client should use a test pipe name + + + + + Gets or sets an event allowing tests to pause the listening stages of the server. + This should be set before calling StartListening. + + + + + Gets or sets an event allowing tests to pause untill the server is about to wait on testServerPauseEvent. + This should be set before calling StartListening. + + + + + Gets or sets a callback called to communicate each result of the listening stage to test. + This should be set before calling StartListening. + + + + + Gets the array with the path up to the logon sid. + + the array with the path up to the logon sid. + + + + Gets the beginning of the pipe namethat does not include a guid + + he beginning of the pipe namethat does not include a guid + + + + Gets the DirectoryInfo corresponding to path starting at application data or null if it does not exist + + path to be retrieved + The DirectoryInfo corresponding to path starting at application data or null if it does not exist. + + + + Searches for a FileInfo starting with in . + + Directory to search for + start of file name to serach for + A FileInfo starting with in or null if not present. + + + + A stopListening flag is used and checked in the server loop when we want to abort the server thread. + Since the server might be stopped into a synchronous IO call we interrupt that call with the unmanaged API + CancelSynchronousIo. + + + + + Calls CreateNamedPipe to start the server + + + true if no previous server was detected so we can restart the reference count + + true if it succeded in the pipe creation + + + + Starts a thread that will run the server loop. + + + + + Calls file.CreateText returning false if an exception is thrown. + + file to call CreateText on + return value from CreateText + false if an exception is thrown calling CreateText + + + + Calls file.OpenText returning false if an exception is thrown. + + file to call OpenText on + return value from OpenText + false if an exception is thrown calling OpenText + + + + Tries to get the current reference count value from file + + file we want to get the reference count from. + returned refernece count + true if succeded getting the reference count + + + + Tries to set the current reference count value in file. + + file we want to set the reference count. + refernece count + true if succeded setting the reference count + + + + Retrieves the logon sid used to secure the named pipe. + + The logon sid used to secure the named pipe + + + + Calls the DirectoryInfo constructor returning null if an exception was thrown. + The directory is not garanteed to be created on the return of this function. + + Path to the directory to be created + A DirectoryInfo corresponding to or null if an exception was thrown + + + + Based on an esisting creates a child directory corresponding to + if it doesn't already exists. + + existing parent directory + child path to be created + The created child directory. + + + + Creates all elements in path starting at application data. + + path to be created + The childmost Directory info or null if it could not be created. + + + + Called by the server to Create a pipe name if necesssary. + + The file used to publish the pipe name pipe name, or null if it could not be created. + + + + Returns true if we are running as administrator + + true if we are running as administrator + + + + Returns a security descriptor allowing the sid full control + + sid to be allowd full control + a security descriptor allowing the sid full control + + + + Gets security attributes with the security descriptor. + + Security Descriptor + security attributes with the security descriptor + + + + Deletes a file returning true if it could be deleted + + file to be deleted + true if it could be deleted + + + + Deletes directory returning true if it could be deleted + + directory to be deleted + true if it could be deleted + + + + Starts the loop listening to clients. + This is aborted when this.StopListening() is called. + + + + + Calls the testResultCallBack, if it is present. + + result to be passed to the callback + + + + Informs tests it is about to wait on testServerPauseEvent by setting testPauseEvent and + waits on this.testServerPauseEvent, if both events are present. + + + + + Called when the final string reaches the server to call this.openMethod + + string accumulated so far + final string segment + + + + Decrements the count of servers listening to the named pipe and deletes the file that publishes + the named pipe name if this is the last server + + + + + tries to delete this.pipeNameFile and its parent folder if no more servers are still up advertising that file name + + + + + Contains all the strings that should not be localized. + The comments in each field are the justification for the strings not to be localized + + + + String that is ignored when received by the pipe server. + + + Literally: PowerShellISEPipeName + + + PowerShell ISE NamedPipe Server + + + Literally: \\.\pipe\ + + + Literally: Microsoft + + + Literally: PowerShell + + + Literally: ISE + + + Literally: Windows + + + + Works arround incompatibilities between NativeCultureResolver and WPF xaml resource loading. + Specifically NativeCultureResolver adds an "es-es,es" to the end of "ca-es,ca" which prevents + xaml resource loading. This happens for the Catalan LIP on es-es Windows 8 (976761). + Interestingly, both "ca-es,ca" which is the default .NET culture path and + "ca-es,ca,es-es,es-en-us,en" which is NativeCultureResolver's + "en-us,en" don't cause a problem. + The code in GetISECultureInfo will add en-us,en to the end of the return from NativeCultureResolver. + It also will remove duplicate cultures that can come in NativeCultureResolver like + "zh-HK,zh-CHT,zh-Hant,zh,zh-TW,zh-CHT,zh-Hant,zh,en-US,en" that causes the same xaml resource + loading exception. The zh-CHT, zh-Hant duplications happen when both zh-hk and zh-tw are installed + on Windows 8 (940094) and are caused by an optimization in NativeCultureResolver. + + + + + parent culture + + + + + Initializes a new instance of the ISECultureInfo class + + culture name + parent culture + + + + Gets the parent culture + + + + + Adds en-us,en to a base Culture if not already there and removes duplications + + culture we are copying + + A copy of with en-us,en added to the end if not already + there and with duplicates removed. + + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Management.Activities.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Management.Activities.dll new file mode 100644 index 0000000..0c8a487 Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Management.Activities.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Management.Activities.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Management.Activities.xml new file mode 100644 index 0000000..e80bc97 --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Management.Activities.xml @@ -0,0 +1,4149 @@ + + + + Microsoft.PowerShell.Management.Activities + + + + + Activity to invoke the Microsoft.PowerShell.Management\Add-Computer command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the LocalCredential parameter. + + + + + Provides access to the UnjoinDomainCredential parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the DomainName parameter. + + + + + Provides access to the OUPath parameter. + + + + + Provides access to the Server parameter. + + + + + Provides access to the Unsecure parameter. + + + + + Provides access to the Options parameter. + + + + + Provides access to the WorkgroupName parameter. + + + + + Provides access to the Restart parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the NewName parameter. + + + + + Provides access to the Force parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Add-Content command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Value parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the NoNewline parameter. + + + + + Provides access to the Encoding parameter. + + + + + Provides access to the Stream parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Checkpoint-Computer command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Description parameter. + + + + + Provides access to the RestorePointType parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Clear-Content command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the Stream parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Clear-EventLog command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the LogName parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Clear-Item command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Clear-ItemProperty command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Clear-RecycleBin command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the DriveLetter parameter. + + + + + Provides access to the Force parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Convert-Path command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Copy-Item command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Destination parameter. + + + + + Provides access to the Container parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Recurse parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the FromSession parameter. + + + + + Provides access to the ToSession parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Copy-ItemProperty command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Destination parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Disable-ComputerRestore command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Drive parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Enable-ComputerRestore command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Drive parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-ChildItem command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Recurse parameter. + + + + + Provides access to the Depth parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Attributes parameter. + + + + + Provides access to the Directory parameter. + + + + + Provides access to the File parameter. + + + + + Provides access to the Hidden parameter. + + + + + Provides access to the ReadOnly parameter. + + + + + Provides access to the System parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-ComputerRestorePoint command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the RestorePoint parameter. + + + + + Provides access to the LastStatus parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-Content command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the ReadCount parameter. + + + + + Provides access to the TotalCount parameter. + + + + + Provides access to the Tail parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the Delimiter parameter. + + + + + Provides access to the Wait parameter. + + + + + Provides access to the Raw parameter. + + + + + Provides access to the Encoding parameter. + + + + + Provides access to the Stream parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-EventLog command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the LogName parameter. + + + + + Provides access to the Newest parameter. + + + + + Provides access to the After parameter. + + + + + Provides access to the Before parameter. + + + + + Provides access to the UserName parameter. + + + + + Provides access to the InstanceId parameter. + + + + + Provides access to the Index parameter. + + + + + Provides access to the EntryType parameter. + + + + + Provides access to the Source parameter. + + + + + Provides access to the Message parameter. + + + + + Provides access to the AsBaseObject parameter. + + + + + Provides access to the List parameter. + + + + + Provides access to the AsString parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-HotFix command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the HotFixId parameter. + + + + + Provides access to the Description parameter. + + + + + Provides access to the Credential parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-Item command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the Stream parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-ItemProperty command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-Location command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the PSProvider parameter. + + + + + Provides access to the PSDrive parameter. + + + + + Provides access to the Stack parameter. + + + + + Provides access to the StackName parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-Process command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the ProcessId parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the IncludeUserName parameter. + + + + + Provides access to the Module parameter. + + + + + Provides access to the FileVersionInfo parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-PSDrive command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the LiteralName parameter. + + + + + Provides access to the Scope parameter. + + + + + Provides access to the PSProvider parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-PSProvider command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the PSProvider parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-Service command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the DependentServices parameter. + + + + + Provides access to the RequiredServices parameter. + + + + + Provides access to the ServiceDisplayName parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the InputObject parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Invoke-Item command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Join-Path command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the ChildPath parameter. + + + + + Provides access to the Resolve parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Limit-EventLog command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the LogName parameter. + + + + + Provides access to the RetentionDays parameter. + + + + + Provides access to the OverflowAction parameter. + + + + + Provides access to the MaximumSize parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Move-Item command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Destination parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Move-ItemProperty command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Destination parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\New-EventLog command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the CategoryResourceFile parameter. + + + + + Provides access to the LogName parameter. + + + + + Provides access to the MessageResourceFile parameter. + + + + + Provides access to the ParameterResourceFile parameter. + + + + + Provides access to the Source parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\New-Item command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the ItemType parameter. + + + + + Provides access to the Value parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\New-ItemProperty command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the PropertyType parameter. + + + + + Provides access to the Value parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\New-Service command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the BinaryPathName parameter. + + + + + Provides access to the ServiceDisplayName parameter. + + + + + Provides access to the Description parameter. + + + + + Provides access to the StartupType parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the DependsOn parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\New-WebServiceProxy command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Uri parameter. + + + + + Provides access to the Class parameter. + + + + + Provides access to the Namespace parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the UseDefaultCredential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Register-WmiEvent command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Namespace parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the ComputerName parameter. + + + + + Provides access to the Class parameter. + + + + + Provides access to the Query parameter. + + + + + Provides access to the Timeout parameter. + + + + + Provides access to the SourceIdentifier parameter. + + + + + Provides access to the Action parameter. + + + + + Provides access to the MessageData parameter. + + + + + Provides access to the SupportEvent parameter. + + + + + Provides access to the Forward parameter. + + + + + Provides access to the MaxTriggerCount parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Remove-Computer command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the UnjoinDomainCredential parameter. + + + + + Provides access to the LocalCredential parameter. + + + + + Provides access to the Restart parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the WorkgroupName parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Remove-EventLog command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the LogName parameter. + + + + + Provides access to the Source parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Remove-Item command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Recurse parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the Stream parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Remove-ItemProperty command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Remove-WmiObject command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the Class parameter. + + + + + Provides access to the AsJob parameter. + + + + + Provides access to the Impersonation parameter. + + + + + Provides access to the Authentication parameter. + + + + + Provides access to the Locale parameter. + + + + + Provides access to the EnableAllPrivileges parameter. + + + + + Provides access to the Authority parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the ThrottleLimit parameter. + + + + + Provides access to the ComputerName parameter. + + + + + Provides access to the Namespace parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Rename-Computer command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the DomainCredential parameter. + + + + + Provides access to the LocalCredential parameter. + + + + + Provides access to the NewName parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Restart parameter. + + + + + Provides access to the WsmanAuthentication parameter. + + + + + Provides access to the Protocol parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Rename-Item command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the NewName parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Rename-ItemProperty command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the NewName parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Reset-ComputerMachinePassword command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Server parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Resolve-Path command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Relative parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Restart-Service command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the ServiceDisplayName parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Restore-Computer command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the RestorePoint parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Resume-Service command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the ServiceDisplayName parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Set-Content command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Value parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the NoNewline parameter. + + + + + Provides access to the Encoding parameter. + + + + + Provides access to the Stream parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Set-Item command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Value parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Set-ItemProperty command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Value parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Set-Service command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the ServiceDisplayName parameter. + + + + + Provides access to the Description parameter. + + + + + Provides access to the StartupType parameter. + + + + + Provides access to the Status parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the PassThru parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Set-WmiInstance command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the Class parameter. + + + + + Provides access to the Arguments parameter. + + + + + Provides access to the PutType parameter. + + + + + Provides access to the AsJob parameter. + + + + + Provides access to the Impersonation parameter. + + + + + Provides access to the Authentication parameter. + + + + + Provides access to the Locale parameter. + + + + + Provides access to the EnableAllPrivileges parameter. + + + + + Provides access to the Authority parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the ThrottleLimit parameter. + + + + + Provides access to the ComputerName parameter. + + + + + Provides access to the Namespace parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Split-Path command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Qualifier parameter. + + + + + Provides access to the NoQualifier parameter. + + + + + Provides access to the Parent parameter. + + + + + Provides access to the Leaf parameter. + + + + + Provides access to the Resolve parameter. + + + + + Provides access to the IsAbsolute parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Start-Process command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the FilePath parameter. + + + + + Provides access to the ArgumentList parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the WorkingDirectory parameter. + + + + + Provides access to the LoadUserProfile parameter. + + + + + Provides access to the NoNewWindow parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the RedirectStandardError parameter. + + + + + Provides access to the RedirectStandardInput parameter. + + + + + Provides access to the RedirectStandardOutput parameter. + + + + + Provides access to the Verb parameter. + + + + + Provides access to the WindowStyle parameter. + + + + + Provides access to the Wait parameter. + + + + + Provides access to the UseNewEnvironment parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Start-Service command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the ServiceDisplayName parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Stop-Computer command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the AsJob parameter. + + + + + Provides access to the DcomAuthentication parameter. + + + + + Provides access to the WsmanAuthentication parameter. + + + + + Provides access to the Protocol parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the Impersonation parameter. + + + + + Provides access to the ThrottleLimit parameter. + + + + + Provides access to the Force parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Stop-Process command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the ProcessId parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Force parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Stop-Service command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Force parameter. + + + + + Provides access to the NoWait parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the ServiceDisplayName parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Suspend-Service command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the ServiceDisplayName parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Test-ComputerSecureChannel command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Repair parameter. + + + + + Provides access to the Server parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Test-Connection command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the AsJob parameter. + + + + + Provides access to the DcomAuthentication parameter. + + + + + Provides access to the WsmanAuthentication parameter. + + + + + Provides access to the Protocol parameter. + + + + + Provides access to the BufferSize parameter. + + + + + Provides access to the ComputerName parameter. + + + + + Provides access to the Count parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the Source parameter. + + + + + Provides access to the Impersonation parameter. + + + + + Provides access to the ThrottleLimit parameter. + + + + + Provides access to the TimeToLive parameter. + + + + + Provides access to the Delay parameter. + + + + + Provides access to the Quiet parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Test-Path command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the PathType parameter. + + + + + Provides access to the IsValid parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the OlderThan parameter. + + + + + Provides access to the NewerThan parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Wait-Process command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the ProcessId parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Timeout parameter. + + + + + Provides access to the InputObject parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Write-EventLog command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the LogName parameter. + + + + + Provides access to the Source parameter. + + + + + Provides access to the EntryType parameter. + + + + + Provides access to the Category parameter. + + + + + Provides access to the EventId parameter. + + + + + Provides access to the Message parameter. + + + + + Provides access to the RawData parameter. + + + + + Declares that this activity supports its own remoting. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Management\Get-ItemPropertyValue command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the Credential parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + RestartActivityContext + + + + + Indicates whether a self restart is needed. + + + + + RestartComputerActivity + + + + + Gets the display name of the command invoked by this activity. + + + + + If true, them the workflow will not checkpoint and resume after + the computer is restarted. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Authentication parameter. + + + + + Provides access to the Impersonation parameter. + + + + + Provides access to the WsmanAuthentication parameter. + + + + + Provides access to the Protocol parameter. + + + + + The computer name to invoke this activity on. + + + + + Defines the credential to use in the remote connection. + + + + + Provides access to the Force parameter. + + + + + Provides access to the ThrottleLimit parameter. + + + + + Provides access to the Wait parameter. + + + + + Provides access to the Timeout parameter. + + + + + Provides access to the For parameter. + + + + + Provides access to the Delay parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Execute this command for this activity. + + + + + + Test to see if we're restarting the machine we're running on. + + + true if we are restarting the local machine. + + + + Gets the PSComputerName argument from the context + + + + + + + CacheMetadata + + + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.PSReadLine.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.PSReadLine.xml new file mode 100644 index 0000000..f745e2a --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.PSReadLine.xml @@ -0,0 +1,2539 @@ + + + + Microsoft.Powershell.PSReadline + + + + + Enum for supported OSPlatform + + + + + Windows + + + + + RuntimeInformation class + + + + + Return whether the OS is requested platform. + Since this module is inbox in Windows, we always return true and only support passing Windows. + + + + + + + + Insert the key. + + + + + Reverts all of the input to the current input. + + + + + Cancel the current input, leaving the input on the screen, + but returns back to the host so the prompt is evaluated again. + + + + + Like ForwardKillLine - deletes text from the point to the end of the line, + but does not put the deleted text in the kill ring. + + + + + Like BackwardKillLine - deletes text from the point to the start of the line, + but does not put the deleted text in the kill ring. + + + + + Delete the character before the cursor. + + + + + Delete the character under the cursor. + + + + + Delete the character under the cursor, or if the line is empty, exit the process. + + + + + Attempt to execute the current input. If the current input is incomplete (for + example there is a missing closing parenthesis, bracket, or quote, then the + continuation prompt is displayed on the next line and PSReadLine waits for + keys to edit the current input. + + + + + Attempt to execute the current input. If the current input is incomplete (for + example there is a missing closing parenthesis, bracket, or quote, then the + continuation prompt is displayed on the next line and PSReadLine waits for + keys to edit the current input. + + + + + Attempt to execute the current input. If it can be executed (like AcceptLine), + then recall the next item from history the next time ReadLine is called. + + + + + The continuation prompt is displayed on the next line and PSReadLine waits for + keys to edit the current input. This is useful to enter multi-line input as + a single command even when a single line is complete input by itself. + + + + + A new empty line is created above the current line regardless of where the cursor + is on the current line. The cursor moves to the beginning of the new line. + + + + + A new empty line is created below the current line regardless of where the cursor + is on the current line. The cursor moves to the beginning of the new line. + + + + + Attempt to complete the text surrounding the cursor with the next + available completion. + + + + + Attempt to complete the text surrounding the cursor with the previous + available completion. + + + + + Attempt to perform completion on the text surrounding the cursor. + If there are multiple possible completions, the longest unambiguous + prefix is used for completion. If trying to complete the longest + unambiguous completion, a list of possible completions is displayed. + + + + + Attempt to perform completion on the text surrounding the cursor. + If there are multiple possible completions, the longest unambiguous + prefix is used for completion. If trying to complete the longest + unambiguous completion, a list of possible completions is displayed. + + + + + Display the list of possible completions. + + + + + Ends the current edit group, if needed, and invokes TabCompleteNext. + + + + + Ends the current edit group, if needed, and invokes TabCompletePrevious. + + + + + History details including the command line, source, and start and approximate execution time. + + + + + The command line, or if multiple lines, the lines joined + with a newline. + + + + + The time at which the command was added to history in UTC. + + + + + The approximate elapsed time (includes time to invoke Prompt). + The value can be 0 ticks if if accessed before PSReadLine + gets a chance to set it. + + + + + True if the command was from another running session + (as opposed to read from the history file at startup.) + + + + + True if the command was read in from the history file at startup. + + + + + Add a command to the history - typically used to restore + history from a previous session. + + + + + Clears history in PSReadLine. This does not affect PowerShell history. + + + + + Return a collection of history items. + + + + + Replace the current input with the 'previous' item from PSReadLine history. + + + + + Replace the current input with the 'next' item from PSReadLine history. + + + + + Move to the first item in the history. + + + + + Move to the last item (the current input) in the history. + + + + + Replace the current input with the 'previous' item from PSReadLine history + that matches the characters between the start and the input and the cursor. + + + + + Replace the current input with the 'next' item from PSReadLine history + that matches the characters between the start and the input and the cursor. + + + + + Perform an incremental forward search through history. + + + + + Perform an incremental backward search through history. + + + + + Helper to set bindings based on EditMode + + + + + Used to group the built in functions for help and Get-PSReadLineKeyHander output. + + + + + Show all bound keys. + + + + + Read a key and tell me what the key is bound to. + + + + + Sets up the key bindings for vi operations. + + + + + Mark the current location of the cursor for use in a subsequent editing command. + + + + + The cursor is placed at the location of the mark and the mark is moved + to the location of the cursor. + + + + + The contents of the kill ring are cleared. + + + + + Clear the input from the cursor to the end of the input. The cleared text is placed + in the kill ring. + + + + + Clear the input from the start of the input to the cursor. The cleared text is placed + in the kill ring. + + + + + Clear the input from the cursor to the end of the current word. If the cursor + is between words, the input is cleared from the cursor to the end of the next word. + The cleared text is placed in the kill ring. + + + + + Clear the input from the cursor to the end of the current word. If the cursor + is between words, the input is cleared from the cursor to the end of the next word. + The cleared text is placed in the kill ring. + + + + + Clear the input from the start of the current word to the cursor. If the cursor + is between words, the input is cleared from the start of the previous word to the + cursor. The cleared text is placed in the kill ring. + + + + + Clear the input from the start of the current word to the cursor. If the cursor + is between words, the input is cleared from the start of the previous word to the + cursor. The cleared text is placed in the kill ring. + + + + + Clear the input from the start of the current word to the cursor. If the cursor + is between words, the input is cleared from the start of the previous word to the + cursor. The cleared text is placed in the kill ring. + + + + + Kill the text between the cursor and the mark. + + + + + Add the most recently killed text to the input. + + + + + If the previous operation was Yank or YankPop, replace the previously yanked + text with the next killed text from the kill ring. + + + + + Yank the first argument (after the command) from the previous history line. + With an argument, yank the nth argument (starting from 0), if the argument + is negative, start from the last argument. + + + + + Yank the last argument from the previous history line. With an argument, + the first time it is invoked, behaves just like YankNthArg. If invoked + multiple times, instead it iterates through history and arg sets the direction + (negative reverses the direction.) + + + + + Adjust the current selection to include the previous character. + + + + + Adjust the current selection to include the next character. + + + + + Adjust the current selection to include the previous word. + + + + + Adjust the current selection to include the next word. + + + + + Adjust the current selection to include the next word using ForwardWord. + + + + + Adjust the current selection to include the next word using ShellForwardWord. + + + + + Adjust the current selection to include the next word using ShellNextWord. + + + + + Adjust the current selection to include the previous word using ShellBackwardWord. + + + + + Select the entire line. + + + + + Adjust the current selection to include from the cursor to the end of the line. + + + + + Adjust the current selection to include from the cursor to the start of the line. + + + + + Paste text from the system clipboard. + + + + + Copy selected region to the system clipboard. If no region is selected, copy the whole line. + + + + + If text is selected, copy to the clipboard, otherwise cancel the line. + + + + + Delete selected region placing deleted text in the system clipboard. + + + + + If the input has multiple lines, move to the end of the current line, + or if already at the end of the line, move to the end of the input. + If the input has a single line, move to the end of the input. + + + + + If the input has multiple lines, move to the start of the current line, + or if already at the start of the line, move to the start of the input. + If the input has a single line, move to the start of the input. + + + + + Move the cursor one character to the right. This may move the cursor to the next + line of multi-line input. + + + + + Move the cursor one character to the left. This may move the cursor to the previous + line of multi-line input. + + + + + Move the cursor to the previous line. + + + + + Move the cursor to the next line. + + + + + Move the cursor forward to the start of the next word. + Word boundaries are defined by a configurable set of characters. + + + + + Move the cursor forward to the end of the current word, or if between words, + to the end of the next word. Word boundaries are defined by PowerShell tokens. + + + + + Move the cursor forward to the end of the current word, or if between words, + to the end of the next word. Word boundaries are defined by a configurable + set of characters. + + + + + Move the cursor forward to the start of the next word. + Word boundaries are defined by PowerShell tokens. + + + + + Move the cursor back to the start of the current word, or if between words, + the start of the previous word. Word boundaries are defined by a configurable + set of characters. + + + + + Move the cursor back to the start of the current word, or if between words, + the start of the previous word. Word boundaries are defined by PowerShell tokens. + + + + + Go to the matching brace, paren, or square bracket. + + + + + Clear the screen and draw the current line at the top of the screen. + + + + + Read a character and search forward for the next occurence of that character. + If an argument is specified, search forward (or backward if negative) for the + nth occurence. + + + + + Read a character and search backward for the next occurence of that character. + If an argument is specified, search backward (or forward if negative) for the + nth occurence. + + + + + Move the cursor forward to the start of the next word. + Word boundaries are defined by a configurable set of characters. + + + + + Move the cursor back to the start of the current word, or if between words, + the start of the previous word. Word boundaries are defined by a configurable + set of characters. + + + + + Moves the cursor back to the beginning of the previous word, using only white space as delimiters. + + + + + Moves to the next word, using only white space as a word delimiter. + + + + + Moves the cursor to the end of the word, using only white space as delimiters. + + + + + Moves to the end of the previous word, using only white space as a word delimiter. + + + + + Returns 0 if the cursor is allowed to go past the last character in the line, -1 otherwise. + + + + + + Move the cursor to the end of the input. + + + + + Move the cursor forward to the end of the current word, or if between words, + to the end of the next word. Word boundaries are defined by a configurable + set of characters. + + + + + Move to the column indicated by arg. + + + + + Move the cursor to the first non-blank character in the line. + + + + + Similar to , but is character based instead of token based. + + + + + Helper function for the Set-PSReadLineOption cmdlet. + + + + + Helper function for the Get-PSReadLineOption cmdlet. + + + + + Helper function for the Set-PSReadLineKeyHandler cmdlet. + + + + + Helper function for the Set-PSReadLineKeyHandler cmdlet. + + + + + Helper function for the Remove-PSReadLineKeyHandler cmdlet. + + + + + Return all bound key handlers. + + + + + Helper function for the Get-PSReadLineKeyHandler cmdlet. + + + + + + Insert a character at the current position. Supports undo. + + Character to insert + + + + Insert a string at the current position. Supports undo. + + String to insert + + + + Delete some text at the given position. Supports undo. + + The start position to delete + The length to delete + + + + Replace some text at the given position. Supports undo. + + The start position to replace + The length to replace + The replacement text + The action that initiated the replace (used for undo) + The argument to the action that initiated the replace (used for undo) + + + + Get the state of the buffer - the current input and the position of the cursor + + + + + Get the state of the buffer - the ast, tokens, errors, and position of the cursor + + + + + Get the selection state of the buffer + + The start of the current selection or -1 if nothing is selected. + The length of the current selection or -1 if nothing is selected. + + + + Set the position of the cursor. + + + + + A helper method when your function expects an optional int argument (e.g. from DigitArgument) + If there is not argument (it's null), returns true and sets numericArg to defaultNumericArg. + Dings and returns false if the argument is not an int (no conversion is attempted) + Otherwise returns true, and numericArg has the result. + + + + + Entry point - called from the PowerShell function PSConsoleHostReadLine + after the prompt has been displayed. + + The complete command line. + + + + Abort current action, e.g. incremental history search. + + + + + Start a new digit argument to pass to other functions. + + + + + Erases the current prompt and calls the prompt function to redisplay + the prompt. Useful for custom key handlers that change state, e.g. + change the current directory. + + + + + Remembers last history search direction. + + + + + Repeat the last recorded character search. + + + + + Repeat the last recorded character search, but in the opposite direction. + + + + + Read the next character and then find it, going forward, and then back off a character. + This is for 't' functionality. + + + + + Read the next character and then find it, going backward, and then back off a character. + This is for 'T' functionality. + + + + + Read the next character and then find it, going forward, and then back off a character. + This is for 't' functionality. + + + + + Read the next character and then find it, going backward, and then back off a character. + This is for 'T' functionality. + + + + + Exits the shell. + + + + + Delete to the end of the line. + + + + + Delete the next word. + + + + + Delete the next glob (white space delimited word). + + + + + Delete to the end of the word. + + + + + Delete to the end of the word. + + + + + Deletes until given character. + + + + + Deletes until given character. + + + + + Deletes backwards until given character. + + + + + Deletes backwards until given character. + + + + + Deletes until given character. + + + + + Deletes until given character. + + + + + Deletes until given character. + + + + + Ring the bell. + + + + + Switch the current operating mode from Vi-Insert to Vi-Command. + + + + + Switch to Insert mode. + + + + + Returns true if in Vi Command mode, otherwise false. + + + + + Returns true if in Vi Insert mode, otherwise false. + + + + + Temporarily swap in Vi-Command dispatch tables. Used for setting handlers. + + + + + Temporarily swap in Vi-Insert dispatch tables. Used for setting handlers. + + + + + Switch to Insert mode and position the cursor at the beginning of the line. + + + + + Switch to Insert mode and position the cursor at the end of the line. + + + + + Append from the current line position. + + + + + Delete the current character and switch to Insert mode. + + + + + Accept the line and switch to Insert mode. + + + + + Prepend a '#' and accept the line. + + + + + Invert the case of the current character and move to the next one. + + + + + Swap the current character and the one before it. + + + + + Deletes text from the cursor to the first non-blank character of the line. + + + + + Deletes the current line, enabling undo. + + + + + Deletes the previous word. + + + + + Deletes the previous word, using only white space as the word delimiter. + + + + + Find the matching brace, paren, or square bracket and delete all contents within, including the brace. + + + + + Delete all characters included in the supplied range. + + Index of where to begin the delete. + Index of where to end the delete. + Action that generated this request, used for repeat command ('.'). + + + + Prompts for a search string and initiates search upon AcceptLine. + + + + + Prompts for a search string and initiates search upon AcceptLine. + + + + + Repeat the last search in the same direction as before. + + + + + Repeat the last search in the same direction as before. + + + + + Prompts for a string for history searching. + + True for searching backward in the history. + + + + Searches line history. + + + + + Repeat the last text modification. + + + + + Chords in vi needs special handling because a numeric argument can be input between the 1st and 2nd key. + + + + + Start a new digit argument to pass to other functions while in one of vi's chords. + + + + + Like DeleteCharOrExit in Emacs mode, but accepts the line instead of deleting a character. + + + + + A new line is inserted above the current line. + + + + + A new line is inserted below the current line. + + + + + Joins the current line and the next line. + + + + + Notify the user based on their preference for notification. + + + + + Scroll the display up one screen. + + + + + Scroll the display up one line. + + + + + Scroll the display down one screen. + + + + + Scroll the display down one line. + + + + + Scroll the display to the top. + + + + + Scroll the display to the cursor. + + + + + Erase the entire command line. + + + + + Replaces the current character with the next character typed. + + + + + Deletes until given character. + + + + + Replaces until given character. + + + + + Replaces until given character. + + + + + Replaces until given character. + + + + + Start interactive screen capture - up/down arrows select lines, enter copies + selected text to clipboard as text and html. + + + + + Undo a previous edit. + + + + + Undo an undo. + + + + + Undo all previous edits for line. + + + + + Edit the command line in a text editor specified by $env:EDITOR or $env:VISUAL. + + + + + Find the end of the current/next word as defined by wordDelimiters and whitespace. + + + + + Find the start of the next word. + + + + + Find the beginning of the previous word. + + + + + Returns the position of the beginning of the next word as delimited by white space and delimiters. + + + + + Returns the position of the beginning of the next word as delimited by white space and delimiters. + + + + + Returns true of the character at the given position is white space. + + + + + Returns the beginning of the current/next word as defined by wordDelimiters and whitespace. + + + + + Returns the beginning of the current/previous word as defined by wordDelimiters and whitespace. + + Current cursor location. + Characters used to delimit words. + Location of the beginning of the previous word. + + + + Knowing that you're starting with a word, find the previous start of the next word. + + + + + Returns true if the cursor is on a word delimiter + + + + + Returns true if is in the set of . + + + + + Returns the cursor position of the beginning of the previous word when starting on a delimiter + + + + + Returns the cursor position of the beginning of the previous word when starting on white space + + + + + Returns the cursor position of the previous word from i, ignoring all delimiters other what white space + + + + + Finds the end of the current/next word as defined by whitespace. + + + + + Find the end of the current/next word as defined by wordDelimiters and whitespace. + + + + + Find the end of the current/next word as defined by wordDelimiters and whitespace. + + + + + Return the last character in a white space defined word after skipping contiguous white space. + + + + + Paste the clipboard after the cursor, moving the cursor to the end of the pasted text. + + + + + Paste the clipboard before the cursor, moving the cursor to the end of the pasted text. + + + + + Yank the entire buffer. + + + + + Yank character(s) under and to the right of the cursor. + + + + + Yank character(s) to the left of the cursor. + + + + + Yank from the cursor to the end of the buffer. + + + + + Yank the word(s) before the cursor. + + + + + Yank the word(s) after the cursor. + + + + + Yank from the cursor to the end of the word(s). + + + + + Yank from the cursor to the end of the WORD(s). + + + + + Yank from the beginning of the buffer to the cursor. + + + + + Yank from the first non-whitespace character to the cursor. + + + + + Yank to/from matching brace. + + + + + Yank from beginning of the WORD(s) to cursor. + + + + + Yank from cursor to the start of the next WORD(s). + + + + + The maximum number of commands to store in the history. + + + + + The maximum number of items to store in the kill ring. + + + + + In Emacs, when searching history, the cursor doesn't move. + In 4NT, the cursor moves to the end. This option allows + for either behavior. + + + + + When displaying possible completions, either display + tooltips or display just the completions. + + + + + When ringing the bell, what frequency do we use? + + + + + When ringing the bell, what should be done? + + + + + How long in milliseconds should we wait before concluding + the input is not an escape sequence? + + + + + Prompts are typically 1 line, but sometimes they may span lines. This + count is used to make sure we can display the full prompt after showing + ambiguous completions + + + + + This handler is called before adding a command line to history. + The return value indicates if the command line should be added + to history or not. + + + + + This handler is called from ValidateAndAcceptLine. + If an exception is thrown, validation fails and the error is reported. + + + + + Most commands do not accept script blocks, but for those that do, + we want to validate commands in the script block arguments. + Unfortunately, we can't know how the argument is used. In the worst + case, for commands like Get-ADUser, the script block actually + specifies a different language. + + Because we can't know ahead of time all of the commands that do + odd things with script blocks, we create a white-list of commands + that do invoke the script block - this covers the most useful cases. + + + + + When true, duplicates will not be recalled from history more than once. + + + + + When ringing the bell, how long (in ms)? + + + + + The path to the saved history. + + + + + How long in milliseconds should we wait before concluding + the input is not an escape sequence? + + + + + This is the text you want turned red on parse errors, but must + occur immediately before the cursor when readline starts. + If the prompt function is pure, this value can be inferred, e.g. + the default prompt will use "> " for this value. + + + + + A helper class for converting strings to ConsoleKey chords. + + + + + Converts a string to a sequence of ConsoleKeyInfo. + Sequences are separated by ','. + Modifiers appear before the modified key and are separated by '+'. + Examples: + Ctrl+X + Ctrl+D,M + Escape,X + + + + + A group used for sorting key handlers. + + + + Basic editing functions + + + Cursor movement functions + + + History functions + + + Completion functions + + + Miscellaneous functions + + + Selection functions + + + Search functions + + + User defined functions + + + + The class is used as the output type for the cmdlet Get-PSReadLineKeyHandler + + + + + The key that is bound or unbound. + + + + + The name of the function that a key is bound to, if any. + + + + + A short description of the behavior of the function. + + + + + The group that this key handler belongs to. + + + + + Get the description of the group. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Abort the current operation, e.g. incremental history search. + + + + + Looks up a localized string similar to Accept the current line and recall the next line from history after the current line finishes executing. + + + + + Looks up a localized string similar to Accept the input or move to the next line if input is missing a closing token.. + + + + + Looks up a localized string similar to Move the cursor to the next line without attempting to execute the input. + + + + + Looks up a localized string similar to Move the cursor back one character. + + + + + Looks up a localized string similar to Delete the character before the cursor. + + + + + Looks up a localized string similar to Delete text from the cursor to the start of the line. + + + + + Looks up a localized string similar to Delete the previous word in the line.. + + + + + Looks up a localized string similar to Move the text from the cursor to the beginning of the line to the kill ring. + + + + + Looks up a localized string similar to Move the text from the start of the current or previous word to the cursor to the kill ring. + + + + + Looks up a localized string similar to Replaces the character in front of the cursor.. + + + + + Looks up a localized string similar to Move the cursor to the beginning of the current or previous word. + + + + + Looks up a localized string similar to Basic editing functions. + + + + + Looks up a localized string similar to Move to the first item in the history. + + + + + Looks up a localized string similar to Move the cursor to the beginning of the line. + + + + + Looks up a localized string similar to Abort editing the current line and re-evaluate the prompt. + + + + + Looks up a localized string similar to Unable to translate '{0}' to virtual key code: {1}.. + + + + + Looks up a localized string similar to Allows you to select multiple lines from the console using Shift+UpArrow/DownArrow and copy the selected lines to clipboard by pressing Enter.. + + + + + Looks up a localized string similar to Read a character and move the cursor to the previous occurence of that character. + + + + + Looks up a localized string similar to Read a character and move the cursor to the next occurence of that character. + + + + + Looks up a localized string similar to Chord can have at most two keys.. + + + + + Looks up a localized string similar to Remove all items from the command line history (not PowerShell history). + + + + + Looks up a localized string similar to Remove all items from the kill ring. + + + + + Looks up a localized string similar to Clear the screen and redraw the current line at the top of the screen. + + + + + Looks up a localized string similar to Command '{0}' cannot be found.. + + + + + Looks up a localized string similar to Complete the input if there is a single completion, otherwise complete the input with common prefix for all completions. Show possible completions if pressed a second time.. + + + + + Looks up a localized string similar to Completion functions. + + + + + Looks up a localized string similar to Copy selected region to the system clipboard. If no region is selected, copy the whole line. + + + + + Looks up a localized string similar to Either copy selected text to the clipboard, or if no text is selected, cancel editing the line with CancelLine.. + + + + + Looks up a localized string similar to Cursor movement functions. + + + + + Looks up a localized string similar to User defined action. + + + + + Looks up a localized string similar to User defined functions. + + + + + Looks up a localized string similar to Delete selected region placing deleted text in the system clipboard. + + + + + Looks up a localized string similar to Delete the character under the cursor. + + + + + Looks up a localized string similar to Delete the character under the cursor, or if the line is empty, exit the process.. + + + + + Looks up a localized string similar to Delete to the end of the current word, as delimited by white space and common delimiters.. + + + + + Looks up a localized string similar to Deletes the current line.. + + + + + Looks up a localized string similar to Deletes all of the line except for leading whitespace.. + + + + + Looks up a localized string similar to Deletes from the cursor to the end of the line.. + + + + + Looks up a localized string similar to Deletes from the cursor to the end of the current word.. + + + + + Looks up a localized string similar to Deletes the current word.. + + + + + Looks up a localized string similar to Start or accumulate a numeric argument to other functions. + + + + + Looks up a localized string similar to Display all {0} possibilities? (y or n) _. + + + + + Looks up a localized string similar to String is not used in the UI. + + + + + Looks up a localized string similar to String is not used in the UI. + + + + + Looks up a localized string similar to Move to the last item (the current input) in the history. + + + + + Looks up a localized string similar to Move the cursor to the end of the line. + + + + + Looks up a localized string similar to Mark the location of the cursor and move the cursor to the position of the previous mark. + + + + + Looks up a localized string similar to Move the cursor forward one character. + + + + + Looks up a localized string similar to Delete text from the cursor to the end of the line. + + + + + Looks up a localized string similar to Search history forward interactively. + + + + + Looks up a localized string similar to Move the cursor forward to the end of the current word, or if between words, to the end of the next word. . + + + + + Looks up a localized string similar to Go to matching brace. + + + + + Looks up a localized string similar to Moves the cursor to the prescribed column.. + + + + + Looks up a localized string similar to Positions the cursor at the first non-blank character.. + + + + + Looks up a localized string similar to This error will not be reported again in this session. Consider using a different path with: + Set-PSReadLineOption -HistorySavePath <Path> + Or not saving history with: + Set-PSReadLineOption -HistorySaveStyle SaveNothing. + + + + + Looks up a localized string similar to Error reading or writing history file '{0}': {1}. + + + + + Looks up a localized string similar to History functions. + + + + + Looks up a localized string similar to Search for the previous item in the history that starts with the current input - like PreviousHistory if the input is empty. + + + + + Looks up a localized string similar to Search for the next item in the history that starts with the current input - like NextHistory if the input is empty. + + + + + Looks up a localized string similar to String is not used in the UI. + + + + + Looks up a localized string similar to Delete the current character and insert the next character.. + + + + + Looks up a localized string similar to Inserts a new empty line above the current line without attempting to execute the input. + + + + + Looks up a localized string similar to Inserts a new empty line below the current line without attempting to execute the input. + + + + + Looks up a localized string similar to Parameter must be a ConsoleColor, ANSI escape sequence, or RGB value with optional leading '#'.. + + + + + Looks up a localized string similar to Duplicate or invalid modifier token '{0}' for key '{1}'.. + + + + + Looks up a localized string similar to Invalid sequence '{0}'.. + + + + + Looks up a localized string similar to Inverts the case of the current character and advances the cursor.. + + + + + Looks up a localized string similar to Erases the current prompt and calls the prompt function to redisplay the prompt. + + + + + Looks up a localized string similar to Key is unbound. + + + + + Looks up a localized string similar to Move the text from the cursor to the end of the input to the kill ring. + + + + + Looks up a localized string similar to Kill the text between the cursor and the mark. + + + + + Looks up a localized string similar to Move the text from the cursor to the end of the current or next word to the kill ring. + + + + + Looks up a localized string similar to Complete the input if there is a single completion, otherwise complete the input by selecting from a menu of possible completions.. + + + + + Looks up a localized string similar to Miscellaneous functions. + + + + + Looks up a localized string similar to Move to the end of the line.. + + + + + Looks up a localized string similar to Replace the input with the next item in the history. + + + + + Looks up a localized string similar to Move the cursor to the next line if the input has multiple lines.. + + + + + Looks up a localized string similar to Move the cursor forward to the start of the next word. + + + + + Looks up a localized string similar to Moves the cursor forward to the end of the next word.. + + + + + Looks up a localized string similar to The -ViMode parameter was used, but the current EditMode is not Vi.. + + + + + Looks up a localized string similar to + Oops, something went wrong. Please report this bug with the details below. + Report on GitHub: https://github.com/lzybkr/PSReadLine/issues/new. + + + + + Looks up a localized string similar to ----------------------------------------------------------------------- + Last {0} Keys: + {1} + + Exception: + {2} + -----------------------------------------------------------------------. + + + + + Looks up a localized string similar to An exception occurred in custom key handler, see $error for more information: {0}. + + + + + Looks up a localized string similar to Write the contents of the local clipboard after the cursor.. + + + + + Looks up a localized string similar to Write the contents of the local clipboard before the cursor.. + + + + + Looks up a localized string similar to Paste text from the system clipboard. + + + + + Looks up a localized string similar to Display the possible completions without changing the input. + + + + + Looks up a localized string similar to Inserts the entered character at the beginning and accepts the line.. + + + + + Looks up a localized string similar to Replace the input with the previous item in the history. + + + + + Looks up a localized string similar to Move the cursor to the previous line if the input has multiple lines.. + + + + + Looks up a localized string similar to Redo an undo. + + + + + Looks up a localized string similar to Repeat the last recorded character search in the opposite direction.. + + + + + Looks up a localized string similar to Repeat the last recorded character search.. + + + + + Looks up a localized string similar to Repeats the last modification command.. + + + + + Looks up a localized string similar to Repeats the last search.. + + + + + Looks up a localized string similar to Repeat the last search, but in the opposite direction.. + + + + + Looks up a localized string similar to Repeat the last search.. + + + + + Looks up a localized string similar to Replace the current character with the next set of characters typed.. + + + + + Looks up a localized string similar to Replace the current character with only one character.. + + + + + Looks up a localized string similar to length is not valid. + + + + + Looks up a localized string similar to Search history backwards interactively. + + + + + Looks up a localized string similar to Equivalent to undo all edits (clears the line except lines imported from history). + + + + + Looks up a localized string similar to Scroll the display down one screen. + + + + + Looks up a localized string similar to Scroll the display down one line. + + + + + Looks up a localized string similar to Scroll the display to the cursor. + + + + + Looks up a localized string similar to Scroll the display to the top. + + + + + Looks up a localized string similar to Scroll the display up one screen. + + + + + Looks up a localized string similar to Scroll the display up one line. + + + + + Looks up a localized string similar to Searches backward for the prescribed character.. + + + + + Looks up a localized string similar to Move to the previous occurrence of the specified character.. + + + + + Looks up a localized string similar to Move to the previous occurrence of the specified character and then forward one character.. + + + + + Looks up a localized string similar to Move to the next occurrence of the specified character.. + + + + + Looks up a localized string similar to Move to he next occurrence of the specified character and then back one character.. + + + + + Looks up a localized string similar to Searches for the prescribed character in the prescribed direction.. + + + + + Looks up a localized string similar to Prompts for a search string and initiates a search upon AcceptLine.. + + + + + Looks up a localized string similar to Search functions. + + + + + Looks up a localized string similar to Select the entire line. Moves the cursor to the end of the line. + + + + + Looks up a localized string similar to Adjust the current selection to include the previous character. + + + + + Looks up a localized string similar to Adjust the current selection to include from the cursor to the end of the line. + + + + + Looks up a localized string similar to Adjust the current selection to include the previous word. + + + + + Looks up a localized string similar to Adjust the current selection to include the next character. + + + + + Looks up a localized string similar to Adjust the current selection to include the next word using ForwardWord. + + + + + Looks up a localized string similar to Selection functions. + + + + + Looks up a localized string similar to Adjust the current selection to include from the cursor to the start of the line. + + + + + Looks up a localized string similar to Adjust the current selection to include the next word. + + + + + Looks up a localized string similar to Adjust the current selection to include the previous word using ShellBackwardWord. + + + + + Looks up a localized string similar to Adjust the current selection to include the next word using ShellForwardWord. + + + + + Looks up a localized string similar to Adjust the current selection to include the next word using ShellNextWord. + + + + + Looks up a localized string similar to Insert the key typed. + + + + + Looks up a localized string similar to Mark the location of the cursor. + + + + + Looks up a localized string similar to Move the text from the cursor to the start of the current or previous token to the kill ring. + + + + + Looks up a localized string similar to Move the cursor to the beginning of the current or previous token or start of the line. + + + + + Looks up a localized string similar to Move the cursor to the beginning of the next token or end of line. + + + + + Looks up a localized string similar to Move the text from the cursor to the end of the current or next token to the kill ring. + + + + + Looks up a localized string similar to Move the cursor to the end of the current token. + + + + + Looks up a localized string similar to Show all key bindings. + + + + + Looks up a localized string similar to 'start' cannot be less than zero or greater than the length of the buffer. + + + + + Looks up a localized string similar to Swap the current character with the character before it.. + + + + + Looks up a localized string similar to Complete the input using the next completion. + + + + + Looks up a localized string similar to Complete the input using the previous completion. + + + + + Looks up a localized string similar to Undoes all commands for this line.. + + + + + Looks up a localized string similar to Undo a previous edit. + + + + + Looks up a localized string similar to Move the text from the cursor to the start of the current or previous whitespace delimited word to the kill ring. + + + + + Looks up a localized string similar to Unrecognized key '{0}'. Please use a character literal or a well-known key name from the System.ConsoleKey enumeration.. + + + + + Looks up a localized string similar to Accept the input or move to the next line if input is missing a closing token. + If there are other parse errors, unresolved commands, or incorrect parameters, show the error and continue editing.. + + + + + Looks up a localized string similar to Accept the line and switch to Vi's insert mode.. + + + + + Looks up a localized string similar to If the line is empty, exit, otherwise accept the line as input.. + + + + + Looks up a localized string similar to Switches to insert mode after positioning the cursor past the end of the line.. + + + + + Looks up a localized string similar to Appends a new multi-line edit mode line to the current line.. + + + + + Looks up a localized string similar to Delete backward to the beginning of the previous word, as delimited by white space.. + + + + + Looks up a localized string similar to Move the cursor to the beginning of the previous word, as delimited by white space.. + + + + + Looks up a localized string similar to Delete backward to the beginning of the previous word, as delimited by white space, and enter insert mode.. + + + + + Looks up a localized string similar to Replaces the line left of the cursor and all of the way to the beginning.. + + + + + Looks up a localized string similar to Replaces the line left of the cursor and all but one character to the beginning of the line.. + + + + + Looks up a localized string similar to Replace the previous word.. + + + + + Looks up a localized string similar to Delete backward to the beginning of the previous word, as delimited by white space and common delimiters, and enter insert mode.. + + + + + Looks up a localized string similar to Switch to VI's command mode.. + + + + + Looks up a localized string similar to Deletes all characters between the cursor and the matching brace.. + + + + + Looks up a localized string similar to Delete to the end of this word, as delimited by white space.. + + + + + Looks up a localized string similar to Delete the current word, as delimited by white space.. + + + + + Looks up a localized string similar to Deletes until given character.. + + + + + Looks up a localized string similar to Deletes until given character.. + + + + + Looks up a localized string similar to Deletes backwards until given character.. + + + + + Looks up a localized string similar to Deletes until given character.. + + + + + Looks up a localized string similar to Handles the processing of a number argument after the first key of a chord.. + + + + + Looks up a localized string similar to Invokes the console compatible editor specified by $env:VISUAL or $env:$EDITOR on the current command line.. + + + + + Looks up a localized string similar to Move the cursor to the end this word, as delimited by white space.. + + + + + Looks up a localized string similar to Moves to the end of the previous word, using only white space as a word delimiter.. + + + + + Looks up a localized string similar to Exit the shell.. + + + + + Looks up a localized string similar to Move the cursor to the matching brace.. + + + + + Looks up a localized string similar to Moves the cursor to the beginning of the line and switches to insert mode.. + + + + + Looks up a localized string similar to Moves the cursor to the end of the line and switches to insert mode.. + + + + + Looks up a localized string similar to Inserts a new multi-line edit mode line in front of the current line.. + + + + + Looks up a localized string similar to Switches to insert mode.. + + + + + Looks up a localized string similar to Switch to insert mode, appending at the current line position.. + + + + + Looks up a localized string similar to Deletes the current character and switches to insert mode.. + + + + + Looks up a localized string similar to Joins the current multi-line edit mode line with the next.. + + + + + Looks up a localized string similar to Move the cursor to the beginning of the next word, as delimited by white space.. + + + + + Looks up a localized string similar to Move the cursor to the beginning of the next word, as delimited by white space and common delimiters.. + + + + + Looks up a localized string similar to Replace all characters between the current brace character and it's matching partner.. + + + + + Looks up a localized string similar to Delete to the end of the word, as delimited by white space, and enter insert mode.. + + + + + Looks up a localized string similar to Delete to the end of the word, as delimited by white space and common delimiters, and enter insert mode.. + + + + + Looks up a localized string similar to Delete to the beginning of the next word, as delimited by white space, and enter insert mode.. + + + + + Looks up a localized string similar to Repace the current line with the next set of characters typed.. + + + + + Looks up a localized string similar to Replaces until given character.. + + + + + Looks up a localized string similar to Replaces until given character.. + + + + + Looks up a localized string similar to Replaces until given character.. + + + + + Looks up a localized string similar to Deletes until given character.. + + + + + Looks up a localized string similar to Replace the characters from the cursor position to the end of the line.. + + + + + Looks up a localized string similar to Replace the current character until an escape is entered or the line is accepted.. + + + + + Looks up a localized string similar to Replace the current word.. + + + + + Looks up a localized string similar to Starts a new search backward in the history.. + + + + + Looks up a localized string similar to Invokes TabCompleteNext after doing some vi-specific clean up.. + + + + + Looks up a localized string similar to Invokes TabCompletePrevious after doing some vi-specific clean up.. + + + + + Looks up a localized string similar to Transposes the current character with the next character in the line.. + + + + + Looks up a localized string similar to Place the characters before the cursor into the local clipboard.. + + + + + Looks up a localized string similar to Place the characters from the cursor to the end of the next white space delimited word into the local clipboard.. + + + + + Looks up a localized string similar to Place the characters from the cursor to the end of the next word, as delimited by white space and common delimiters, into the local clipboard.. + + + + + Looks up a localized string similar to Place the character to the left of the cursor into the local clipboard.. + + + + + Looks up a localized string similar to Place all characters in the current line into the local clipboard.. + + + + + Looks up a localized string similar to Place all characters from the cursor to the end of the word, as delimited by white space, into the local clipboard.. + + + + + Looks up a localized string similar to Place all characters from the cursor to the end of the word, as delimited by white space and common delimiters, into the local clipboard.. + + + + + Looks up a localized string similar to Place all characters between the matching brace and the cursor into the local clipboard.. + + + + + Looks up a localized string similar to Place all characters from before the cursor to the beginning of the previous word, as delimited by white space, into the local clipboard.. + + + + + Looks up a localized string similar to Place all characters from before the cursor to the beginning of the previous word, as delimited by white space and common delimiters, into the local clipboard.. + + + + + Looks up a localized string similar to Place the character at the cursor into the local clipboard.. + + + + + Looks up a localized string similar to Place all characters at and after the cursor into the local clipboard.. + + + + + Looks up a localized string similar to Place all characters before the cursor and to the 1st non-white space character into the local clipboard.. + + + + + Looks up a localized string similar to Show the key binding for the next chord entered. + + + + + Looks up a localized string similar to Copy the text from the current kill ring position to the input. + + + + + Looks up a localized string similar to Copy the text of the last argument to the input. + + + + + Looks up a localized string similar to Copy the text of the first argument to the input. + + + + + Looks up a localized string similar to Replace the previously yanked text with the text from the next kill ring position. + + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.Activities.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.Activities.dll new file mode 100644 index 0000000..8e43c8f Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.Activities.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.Activities.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.Activities.xml new file mode 100644 index 0000000..7aec18b --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.Activities.xml @@ -0,0 +1,569 @@ + + + + Microsoft.PowerShell.Security.Activities + + + + + Activity to invoke the Microsoft.PowerShell.Security\ConvertFrom-SecureString command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the SecureString parameter. + + + + + Provides access to the SecureKey parameter. + + + + + Provides access to the Key parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Security\ConvertTo-SecureString command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the String parameter. + + + + + Provides access to the AsPlainText parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the SecureKey parameter. + + + + + Provides access to the Key parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Security\Get-Acl command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Audit parameter. + + + + + Provides access to the AllCentralAccessPolicies parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Security\Get-AuthenticodeSignature command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the FilePath parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Security\Get-ExecutionPolicy command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Scope parameter. + + + + + Provides access to the List parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Security\Get-PfxCertificate command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the FilePath parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Security\Set-Acl command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the AclObject parameter. + + + + + Provides access to the SecurityDescriptor parameter. + + + + + Provides access to the CentralAccessPolicy parameter. + + + + + Provides access to the ClearCentralAccessPolicy parameter. + + + + + Provides access to the Passthru parameter. + + + + + Provides access to the Filter parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Security\Set-AuthenticodeSignature command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Certificate parameter. + + + + + Provides access to the IncludeChain parameter. + + + + + Provides access to the TimestampServer parameter. + + + + + Provides access to the HashAlgorithm parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the FilePath parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Security\Set-ExecutionPolicy command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the ExecutionPolicy parameter. + + + + + Provides access to the Scope parameter. + + + + + Provides access to the Force parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Security\Unprotect-CmsMessage command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Content parameter. + + + + + Provides access to the EventLogRecord parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the IncludeContext parameter. + + + + + Provides access to the To parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Security\Get-CmsMessage command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Content parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Security\Protect-CmsMessage command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the To parameter. + + + + + Provides access to the Content parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the OutFile parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.dll new file mode 100644 index 0000000..cebad32 Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.xml new file mode 100644 index 0000000..ad0bdfc --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Security.xml @@ -0,0 +1,2848 @@ + + + + Microsoft.PowerShell.Security + + + + + Defines the base class from which all Security Descriptor commands + are derived. + + + + + Gets or sets the filter property. The filter + property allows for provider-specific filtering of results. + + + + + Gets or sets the include property. The include property + specifies the items on which the command will act. + + + + + Gets or sets the exclude property. The exclude property + specifies the items on which the command will not act. + + + + + The context for the command that is passed to the core command providers. + + + + + Add brokered properties for easy access to important properties + of security descriptor + + + + + Gets the Path of the provided PSObject. + + + The PSObject for which to obtain the path. + + + The path of the provided PSObject. + + + + + Gets the Owner of the provided PSObject. + + + The PSObject for which to obtain the Owner. + + + The Owner of the provided PSObject. + + + + + Gets the Group of the provided PSObject. + + + The PSObject for which to obtain the Group. + + + The Group of the provided PSObject. + + + + + Gets the access rules of the provided PSObject. + + + The PSObject for which to obtain the access rules. + + + The access rules of the provided PSObject. + + + + + Gets the audit rules of the provided PSObject. + + + The PSObject for which to obtain the audit rules. + + + The audit rules of the provided PSObject. + + + + + Gets the central access policy ID of the provided PSObject. + + + The PSObject for which to obtain the central access policy ID. + + + The central access policy ID of the provided PSObject. + + + + + Gets the central access policy name of the provided PSObject. + + + Function 'LsaQueryCAPs' is not available in OneCoreUAP and NanoServer. + + + The PSObject for which to obtain the central access policy name. + + + The central access policy name of the provided PSObject. + + + + + Gets the names and IDs of all central access policies available on the machine. + + + Function 'LsaQueryCAPs' is not available in OneCoreUAP and NanoServer. + + + The PSObject argument is ignored. + + + The names and IDs of all central access policies available on the machine. + + + + + Gets the security descriptor (in SDDL form) of the + provided PSObject. SDDL form is the Security Descriptor + Definition Language. + + + The PSObject for which to obtain the security descriptor. + + + The security descriptor of the provided PSObject, in SDDL form. + + + + + The filter to be used to when globbing to get the item. + + + + + The glob string used to determine which items are included. + + + + + The glob string used to determine which items are excluded. + + + + + Defines the implementation of the 'get-acl' cmdlet. + This cmdlet gets the security descriptor of an item at the specified path. + + + + + Initialzes a new instance of the GetAclCommand + class. Sets the default path to the current location. + + + + + Gets or sets the path of the item for which to obtain the + security descriptor. Default is the current location. + + + + + InputObject Parameter + Gets or sets the inputObject for which to obtain the security descriptor + + + + + Gets or sets the literal path of the item for which to obtain the + security descriptor. Default is the current location. + + + + + Gets or sets the audit flag of the command. This flag + determines if audit rules should also be retrieved. + + + + + Gets or sets the AllCentralAccessPolicies flag of the command. This flag + determines whether the information about all central access policies + available on the machine should be displayed. + + + + + Processes records from the input pipeline. + For each input file, the command retrieves its + corresponding security descriptor. + + + + + Defines the implementation of the 'set-acl' cmdlet. + This cmdlet sets the security descriptor of an item at the specified path. + + + + + Gets or sets the path of the item for which to set the + security descriptor. + + + + + InputObject Parameter + Gets or sets the inputObject for which to set the security descriptor + + + + + Gets or sets the literal path of the item for which to set the + security descriptor. + + + + + Gets or sets the security descriptor object to be + set on the target item(s). + + + + + Gets or sets the central access policy to be + set on the target item(s). + + + + + Clears the central access policy applied on the target item(s). + + + + + Gets or sets the Passthru flag for the operation. + If true, the security descriptor is also passed + down the output pipeline. + + + + + Returns a newly allocated SACL with no ACEs in it. + Free the returned SACL by calling Marshal.FreeHGlobal. + + + + + Returns a newly allocated SACL with the supplied CAPID in it. + Free the returned SACL by calling Marshal.FreeHGlobal. + + + Function 'LsaQueryCAPs' is not available in OneCoreUAP and NanoServer. + So the parameter "-CentralAccessPolicy" is not supported on OneCore powershell, + and thus this method won't be hit in OneCore powershell. + + + + + Returns the current thread or process token with the specified privilege enabled + and the previous state of this privilege. Free the returned token + by calling NativeMethods.CloseHandle. + + + + Processes records from the input pipeline. + For each input file, the command sets its + security descriptor to the specified + Access Control List (ACL). + + + + Defines the Certificate Provider dynamic parameters. + + We only support one dynamic parameter for Win 7 and earlier: + CodeSigningCert + If provided, we only return certificates valid for signing code or + scripts. + + + + + switch that controls whether we only return + code signing certs. + + + + + Defines the type of DNS string + The structure contains punycode name and unicode name + + + + + punycode version of DNS name + + + + + Unicode version of DNS name + + + + + ambiguous constructor of a DnsNameRepresentation + + + + + specific constructor of a DnsNameRepresentation + + + + + value comparison + + + + + get property of Punycode + + + + + get property of Unicode + + + + + get display string + + + + + Defines the Certificate Provider dynamic parameters. + + We only support one dynamic parameter for Win 7 and earlier: + CodeSigningCert + If provided, we only return certificates valid for signing code or + scripts. + + For Win 8 and later, we also support: + SSLServerAuthentication + If provided, only return certificates valid for server authentication. + + DnsName + If provided, only return certificates matching the supplied DNS Name. + + Eku + If provided, only return certificates containing all of the OIDs + supplied. + + ExpiringInDays + If provided, only return certificates expiring within the specified + number of days. + + + + + + switch that controls whether we only return + code signing certs. + + + + + switch that controls whether we only return + data encipherment certs. + + + + + switch that controls whether we only return + code signing certs. + + + + + string to filter certs by DNSName + Expected content is a single DNS Name that may start and/or end + with '*': "contoso.com" or "*toso.c*" + + + + + string to filter certs by EKU + Expected content is one or more OID strings: + "1.3.6.1.5.5.7.3.1", etc. + For a cert to match, it must be valid for all listed OIDs. + + + + + string to filter certs by the number of valid days + Expected content is a non-negative integer. + "0" matches all certs that have already expired. + "1" matches all certs that are currently valid and will expire + by midnight tonight (local time). + + + + + Defines the Certificate Provider remove-item dynamic parameters. + + Currently, we only support one dynamic parameter: DeleteKey + If provided, we will delete the private key when we remove a certificate + + + + + + switch that controls whether we should delete private key + when remove a certificate + + + + + Defines the safe handle class for native cert store handles, + HCERTSTORE. + + + + + Defines the safe handle class for native cert store handles, + HCERTSTORE. + + + + + Defines the Certificate Provider store handle class + + + + + Initializes a new instance of the X509NativeStore class. + + + + + native IntPtr store handle + + + + + X509StoreLocation store location + + + + + string store name + + + + + true if a real store is open + + + + + Defines the types of items + supported by the certificate provider. + + + + + An unknown item. + + + + + An X509 Certificate. + + + + + A certificate store location. + For example, cert:\CurrentUser + + + + + A certificate store. + For example, cert:\CurrentUser\My + + + + + Defines the implementation of a Certificate Store Provider. This provider + allows for stateless namespace navigation of the computer's certificate + store. + + + + + tracer for certificate provider + + + + + Indicate if we already have attempted to load the PKI module + + + + + lock that guards access to the following static members + -- storeLocations + -- pathCache + + + + + list of store locations. They do not change once initialized. + + Synchronized on staticLock + + + + + cache that stores paths and their associated objects. + + key is full path to store-location/store/certificate + value is X509StoreLocation/X509NativeStore/X509Certificate2 object + + Synchronized on staticLock + + + + + we allow either / or \ to be the path separator + + + + + regex pattern that defines a valid cert path + + + + + Cache the store handle to avoid repeated CertOpenStore calls. + + + + + On demand create the Regex to avoid a hit to startup perf. + + + + Note, its OK that staticLock is being used here because only + IsValidPath is calling this static property so we shouldn't + have any deadlocks due to other locked static members calling + this property. + + + + + + Initializes a new instance of the CertificateProvider class. + This initializes the default certificate store locations. + + + + + Removes an item at the specified path + + + + The path of the item to remove. + + + + Recursively remove. + + + + Nothing. + + + + path is null or empty. + destination is null or empty. + + + + + Gets the dynamic parameters for remove-item on the Certificate + Provider. We currently only support one dynamic parameter, + "DeleteKey," that delete private key when we delete a certificate. + + + + If the path was specified on the command line, this is the path + to the item for which to get the dynamic parameters. + + + + Ignored. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Moves an item at the specified path to the given destination. + + + + The path of the item to move. + + + + The path of the destination. + + + + Nothing. Moved items are written to the context's pipeline. + + + + path is null or empty. + destination is null or empty. + + + + + Creates a certificate store with the given path. + + + + New-Item doesn't go through the method "ItemExists". But for the + CertificateProvider, New-Item can create an X509Store and return + it, and the user can access the certificates within the store via its + property "Certificates". We want the extra new properties of the + X509Certificate2 objects to be shown to the user, so we also need + to import the PKI module in this method, if we haven't tried it yet. + + + + The path of the certificate store to create. + + + + Ignored. + Only support store. + + + + Ignored + + + + Nothing. The new certificate store object is + written to the context's pipeline. + + + + path is null or empty. + + + + + + + Initializes the cert: drive. + + + + A collection that contains the PSDriveInfo object + that represents the cert: drive. + + + + + Determines if the item at the given path is a store-location + or store with items in it. + + + + The full path to the item. + + + + True if the path refers to a store location, or store that contains + certificates. False otherwise. + + + + Path is null + + + + This exception can be thrown if any cryptographic error occurs. + It is not possible to know exactly what went wrong. + This is because of the way CryptographicException is designed. + Some example reasons include: + -- certificate is invalid + -- certificate has no private key + -- certificate password mismatch + + + + + Determines if the specified path is syntactically and semantically valid. + An example path looks like this: + cert:\CurrentUser\My\5F98EBBFE735CDDAE00E33E0FD69050EF9220254 + + + + The path of the item to check. + + + + True if the path is valid, false otherwise. + + + + + Determines if the store location, store, or certificate exists + at the specified path. + + + + The method ItemExists will be hit by all built-in cmdlets that interact + with the CertificateProvider except for the New-Item. They are: + Get-ChildItem + Set-Location + Push-Location + Pop-Location + Move-Item + Invoke-Item + Get-Item + Remove-Item + So we import the PKI module in this method if we haven't tried yet. + + + + The path of the item to check. + + + + True if a the store location, store, or certificate exists + at the specified path. False otherwise. + + + + Path is null + + + + This exception can be thrown if any cryptographic error occurs. + It is not possible to know exactly what went wrong. + This is because of the way CryptographicException is designed. + Possible reasons: + -- certificate is invalid + -- certificate has no private key + -- certificate password mismatch + -- etc + + + + + + Gets the store location, store, or certificate + at the specified path. + + + + The path of the item to retrieve. + + + + + Path is null + + + + This exception can be thrown if any cryptographic error occurs. + It is not possible to know exactly what went wrong. + This is because of the way CryptographicException is designed. + Possible reasons: + -- certificate is invalid + -- certificate has no private key + -- certificate password mismatch + -- etc + + + + + + Gets the parent of the given path. + + + + The path of which to get the parent. + + + + The root of the drive. + + + + The parent of the given path. + + + + + Gets the name of the leaf element of the specified path. + + + + The fully qualified path to the item. + + + + The leaf element of the specified path. + + + + + We want to import the PKI module explicitly because a type for X509Certificate + is defined in the PKI module that add new properties to the X509Certificate2 + objects. We want to show those new properties to the user without requiring + someone to force the loading of this module. + + + + + Invokes the certificate management UI (certmgr.msc) + for any path. + + + + Ignored. + + + + + Delete private key + + + key prov info + + no return + + + + Delete the cert store; if -DeleteKey is specified, we also delete + the associated private key + + + the store name + + boolean to specify whether or not to delete private key + + source path + + no return + + + + Delete the a single cert from the store; if -DeleteKey is specified, we also delete + the associated private key + + + an X509Certificate2 object + + boolean to specify whether or not to delete private key + + machine context or user + + source path + + no return + + + + Delete the cert from the store; if -DeleteKey is specified, we also delete + the associated private key + + + an X509Certificate2 object + + boolean to specify whether or not to delete private key + + machine context or user + + source path + + no return + + + + Commit store for UserDS store + + + an IntPtr for store handle + + no return + + + + + Delete the cert from the original store and add to the destination store + + + destination path + + an X509Certificate2 + + an X509NativeStore + + source path + + no return + + + + + fetches the store-location/store/certificate at the + specified path. + + + path to the item + True if this is to only for an ItemExists call. Returns True / False. + + set to true if item exists and is a container + + item at the path + + + + + Gets the child items of a given store, or location. + + + + The full path of the store or location to enumerate. + + + + If true, recursively enumerates the child items as well. + + + + Path is null or empty. + + + + This exception can be thrown if any cryptographic error occurs. + It is not possible to know exactly what went wrong. + This is because of the way CryptographicException is designed. + Possible reasons: + -- certificate is invalid + -- certificate has no private key + -- certificate password mismatch + -- etc + + + + + + Gets the child names of a given store, or location. + + + + The full path of the store or location to enumerate. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + Path is null or empty. + + + + This exception can be thrown if any cryptographic error occurs. + It is not possible to know exactly what went wrong. + This is because of the way CryptographicException is designed. + Possible reasons: + -- certificate is invalid + -- certificate has no private key + -- certificate password mismatch + -- etc + + + + + + Determines if the item at the specified path is a store + or location. + + + + True if the item at the specified path is a store or location. + False otherwise. + + + + Path is null or empty. + + + + This exception can be thrown if any cryptographic error occurs. + It is not possible to know exactly what went wrong. + This is because of the way CryptographicException is designed. + Possible reasons: + -- certificate is invalid + -- certificate has no private key + -- certificate password mismatch + -- etc + + + + + + Gets the dynamic parameters for get-item on the Certificate + Provider. We currently support the following dynamic parameters: + "CodeSigning," that returns only certificates good for signing + code or scripts. + + + + If the path was specified on the command line, this is the path + to the item for which to get the dynamic parameters. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Gets the dynamic parameters for get-childitem on the Certificate + Provider. We currently only support one dynamic parameter, + "CodeSigning," that returns only certificates good for signing + code or scripts. + + + + If the path was specified on the command line, this is the path + to the item for which to get the dynamic parameters. + + + + Ignored. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Helper function to get store-location/store/cert at + the specified path. + + + path to the item + + whether we need to recursively find all + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + whether we only need the names + + filter info + + Does not return a value + + + + + + + get the name of the specified certificate + + + + + cert name + + we use Thumbprint as the name + + + + + Get cert objects or their name at the specifed path + + + path to cert + + path elements + + whether we should return only the names (instead of objects) + + filter info + + Does not return a value + + + + + get X509StoreLocation object at path + + + + + X509StoreLocation object + + + + + get the X509NativeStore object at path + + + path to store + True if this should be a test for path existence. Returns True or False + + path elements + + X509NativeStore object + + + + + gets the X509NativeStore at the specified path. + Adds to cache if not already there. + + + path to the store + + name of store (path leaf element) + + location of store (CurrentUser or LocalMachine) + + X509NativeStore object + + + + + gets X509NativeStore objects or their name at the specified path. + + + path to the store + + recursively return all items if true + + + + filter info + + Does not return a value + + + + + + + Get provider-specific help + + + Name of help item or cmdlet for which user has requested help + + + Path to the current location or path to the location of the property that the user needs + help about. + + + Provider specific MAML help content string + + + + + Defines a class to represent a store location in the certificate + provider. The two possible store locations are CurrentUser and + LocalMachine + + + + + Gets the location, as a string. + + + + + Gets the location as a + + + + + + Gets the list of stores at this location. + + + + + Initializes a new instance of the X509StoreLocation class. + + + + + Defines the type of EKU string + The structure contains friendly name and EKU oid + + + + + Localized friendly name of EKU + + + + + OID of EKU + + + + + constructor of an EnhancedKeyUsageRepresentation + + + + + value comparison + + + + + get property of friendlyName + + + + + get property of oid + + + + + get display string + + + + + class for SendAsTrustedIssuer + + + + + get property of SendAsTrustedIssuer + + + + + set property of SendAsTrustedIssuer + + + + + class for ekulist + + + + + get property of EKUList + + + + + constructor for EnhancedKeyUsageProperty + + + + + class for DNSNameList + + + + + get property of DnsNameList + + + + + constructor for EkuList + + + + + downlevel helper function to determine if the OS is WIN8 and above + + + + + Check in UI is allowed + + + + + container for helper functions that use pinvoke into crypt32.dll + + + + + lock that guards access to the following static members + -- storeNames + + + + + get a list of store names at the specified location + + + + + call back function used by CertEnumSystemStore + + Currently, there is no managed support for enumerating store + names on a machine. We use the win32 function CertEnumSystemStore() + to get a list of stores for a given context. + + Each time this callback is called, we add the passed store name + to the list of stores + + + + + Defines the base class for exceptions thrown by the + certificate provider when the specified item cannot be located. + + + + + Initializes a new instance of the CertificateProviderItemNotFoundException + class with the default message. + + + + + Initializes a new instance of the CertificateProviderItemNotFoundException + class with the specified message. + + + The message to be included in the exception. + + + + + Initializes a new instance of the CertificateProviderItemNotFoundException + class with the specified message, and inner exception. + + + The message to be included in the exception. + + + The inner exception to be included in the exception. + + + + + Initializes a new instance of the CertificateProviderItemNotFoundException + class with the specified serialization information, and context. + + + The serialization information. + + + + The streaming context. + + + + + Initializes a new instance of the CertificateProviderItemNotFoundException + class with the specified inner exception. + + + The inner exception to be included in the exception. + + + + + Defines the exception thrown by the certificate provider + when the specified X509 certificate cannot be located. + + + + + Initializes a new instance of the CertificateNotFoundException + class with the default message. + + + + + Initializes a new instance of the CertificateNotFoundException + class with the specified message. + + + The message to be included in the exception. + + + + + Initializes a new instance of the CertificateNotFoundException + class with the specified message, and inner exception. + + + The message to be included in the exception. + + + The inner exception to be included in the exception. + + + + + Initializes a new instance of the CertificateNotFoundException + class with the specified serialization information, and context. + + + The serialization information. + + + + The streaming context. + + + + + Initializes a new instance of the CertificateNotFoundException + class with the specified inner exception. + + + The inner exception to be included in the exception. + + + + + Defines the exception thrown by the certificate provider + when the specified X509 store cannot be located. + + + + + Initializes a new instance of the CertificateStoreNotFoundException + class with the default message. + + + + + Initializes a new instance of the CertificateStoreNotFoundException + class with the specified message. + + + The message to be included in the exception. + + + + + Initializes a new instance of the CertificateStoreNotFoundException + class with the specified message, and inner exception. + + + The message to be included in the exception. + + + The inner exception to be included in the exception. + + + + + Initializes a new instance of the CertificateStoreNotFoundException + class with the specified serialization information, and context. + + + The serialization information. + + + + The streaming context. + + + + + Initializes a new instance of the CertificateStoreNotFoundException + class with the specified inner exception. + + + The inner exception to be included in the exception. + + + + + Defines the exception thrown by the certificate provider + when the specified X509 store location cannot be located. + + + + + Initializes a new instance of the CertificateStoreLocationNotFoundException + class with the default message. + + + + + Initializes a new instance of the CertificateStoreLocationNotFoundException + class with the specified message. + + + The message to be included in the exception. + + + + + Initializes a new instance of the CertificateStoreLocationNotFoundException + class with the specified message, and inner exception. + + + The message to be included in the exception. + + + The inner exception to be included in the exception. + + + + + Initializes a new instance of the CertificateStoreLocationNotFoundException + class with the specified serialization information, and context. + + + The serialization information. + + + + The streaming context. + + + + + Initializes a new instance of the CertificateStoreLocationNotFoundException + class with the specified inner exception. + + + The inner exception to be included in the exception. + + + + + Defines the implementation of the 'get-credential' cmdlet. + The get-credential Cmdlet establishes a credential object called a + Msh credential, by pairing a given username with + a prompted password. That credential object can then be used for other + operations involving security. + + + + + The Credential parameter set name. + + + + + The Message parameter set name. + + + + + Gets or sets the underlying PSCredential of + the instance. + + + + + + Gets and sets the user supplied message providing description about which script/function is + requesting the PSCredential from the user. + + + + + Gets and sets the user supplied username to be used while creating the PSCredential. + + + + + Initializes a new instance of the GetCredentialCommand + class + + + + + The command outputs the stored PSCredential. + + + + + Defines the implementation of the 'Get-ExecutionPolicy' cmdlet. + This cmdlet gets the effective execution policy of the shell. + + In priority-order (highest priority first,) these come from: + - Machine-wide Group Policy + - Current-user Group Policy + - Current session preference + - Current user machine preference + - Local machine preference + + + + + Gets or sets the scope of the execution policy. + + + + + Gets or sets the List parameter, which lists all scopes and their execution + policies. + + + + + Outputs the execution policy. + + + + + Defines the implementation of the 'Set-ExecutionPolicy' cmdlet. + This cmdlet sets the local preference for the execution policy of the + shell. + + The execution policy may be overridden by settings in Group Policy. + If the Group Policy setting overrides the desired behaviour, the Cmdlet + generates a terminating error. + + + + + Gets or sets the execution policy that the user requests. + + + + + Gets or sets the scope of the execution policy. + + + + + Specifies whether to force the execution policy change. + + + + + + Sets the execution policy (validation). + + + + + Set the desired execution policy. + + + + + Defines the base class from which all SecureString commands + are derived. + + + + + Gets or sets the secure string to be used by the get- and set- + commands. + + + + + Intitializes a new instance of the SecureStringCommandBase + class. + + + + The command name deriving from this class + + + + + Defines the base class from which all SecureString import and + export commands are derived. + + + + + Initializes a new instance of the ConvertFromToSecureStringCommandBase + class. + + + + + Gets or sets the SecureString version of the encryption + key used by the SecureString cmdlets. + + + + + Gets or sets the byte version of the encryption + key used by the SecureString cmdlets. + + + + + Defines the implementation of the 'ConvertFrom-SecureString' cmdlet. + This cmdlet exports a new SecureString -- one that represents + text that should be kept confidential. The text is encrypted + for privacy when being used, and deleted from computer memory + when no longer needed. When no key is specified, the command + uses the DPAPI to encrypt the string. When a key is specified, the + command uses the AES algorithm to encrypt the string. + + + + + Initializes a new instance of the ExportSecureStringCommand class + + + + + Gets or sets the secure string to be exported. + + + + + Processes records from the input pipeline. + For each input object, the command encrypts + and exports the object. + + + + + Defines the implementation of the 'ConvertTo-SecureString' cmdlet. + This cmdlet imports a new SecureString from encrypted data -- + one that represents text that should be kept confidential. + The text is encrypted for privacy when being used, and deleted + from computer memory when no longer needed. When no key is + specified, the command uses the DPAPI to decrypt the data. + When a key is specified, the command uses the AES algorithm + to decrypt the data. + + + + + Initializes a new instance of the ImportSecureStringCommand class. + + + + + Gets or sets the unsecured string to be imported. + + + + + + Gets or sets the flag that marks the unsecured string as a plain + text string. + + + + + + Gets or sets the flag that will force the import of a plaintext + unsecured string. + + + + + + Processes records from the input pipeline. + For each input object, the command decrypts the data, + then exports a new SecureString created from the object. + + + + + Defines the base class from which all signature commands + are derived. + + + + + Gets or sets the path to the file for which to get or set the + digital signature. + + + + + Gets or sets the literal path to the file for which to get or set the + digital signature. + + + + + Gets or sets the digital signature to be written to + the output pipeline. + + + + + Gets or sets the file type of the byte array containing the content with + digital signature. + + + + + File contents as a byte array + + + + + Initializes a new instance of the SignatureCommandsBase class, + using the given command name. + + + + The name of the command. + + + + + Processes records from the input pipeline. + For each input object, the command gets or + sets the digital signature on the object, and + and exports the object. + + + + + Performs the action (ie: get signature, or set signature) + on the specified file. + + + The name of the file on which to perform the action. + + + + + Performs the action (ie: get signature, or set signature) + on the specified contents. + + + The filename used for type if content is specified. + + + The file contents on which to perform the action. + + + + + Defines the implementation of the 'get-AuthenticodeSignature' cmdlet. + This cmdlet extracts the digital signature from the given file. + + + + + Initializes a new instance of the GetSignatureCommand class. + + + + + Gets the signature from the specified file. + + + The name of the file on which to perform the action. + + + The signature on the specified file. + + + + + Gets the signature from the specified file contents. + + The file type associated with the contents + + The contents of the file on which to perform the action. + + + The signature on the specified file contents. + + + + + Defines the implementation of the 'set-AuthenticodeSignature' cmdlet. + This cmdlet sets the digital signature on a given file. + + + + + Initializes a new instance of the SetAuthenticodeSignatureCommand class. + + + + + Gets or sets the certificate with which to sign the + file. + + + + + Gets or sets the additional certificates to + include in the digital signature. + Use 'signer' to include only the signer's certificate. + Use 'notroot' to include all certificates in the certificate + chain, except for the root authority. + Use 'all' to include all certificates in the certificate chain. + + Defaults to 'notroot'. + + + + + + Gets or sets the Url of the time stamping server. + The time stamping server certifies the exact time + that the certificate was added to the file. + + + + + Gets or sets the hash algorithm used for signing. + This string value must represent the name of a Cryptographic Algorithm + Identifier supported by Windows. + + + + + Property that sets force parameter. + + + + + Sets the digital signature on the specified file. + + + The name of the file on which to perform the action. + + + The signature on the specified file. + + + + + Not implemented + + + + + association between SigningOption.* values and the + corresponding string names. + + + + + get SigningOption value corresponding to a string name + + + name of option + + SigningOption + + + + + Defines the base class from which all catalog commands are derived. + + + + + Path of folder/file to generate or validate the catalog file + + + + + Path of folder/file to generate or validate the catalog file + + + + + Initializes a new instance of the CatalogCommandsBase class, + using the given command name. + + + The name of the command. + + + + + Processes records from the input pipeline. + For each input object, the command either generate the Catalog or + Validates the existing Catalog + + + + + Performs the action i.e. Generate or Validate the Windows Catalog File + + + The name of the Folder or file on which to perform the action. + + + Path to Catalog + + + + + Defines the implementation of the 'New-FileCatalog' cmdlet. + This cmdlet generates the catalog for File or Folder + + + + + Initializes a new instance of the New-FileCatalog class. + + + + + Catalog version + + + + + Generate the Catalog for the Path + + + File or Folder Path + + + Path to Catalog + + + True if able to Create Catalog or else False + + + + + Defines the implementation of the 'Test-FileCatalog' cmdlet. + This cmdlet validaes the Intgerity of catalog + + + + + Initializes a new instance of the New-FileCatalog class. + + + + + + + + + Patterns used to exclude files from DiskPaths and Catalog + + + + + Validate the Integrity of given Catalog + + + File or Folder Path + + + Path to Catalog + + + True if able to Validate the Catalog and its not tampered or else False + + + + + Defines the implementation of the get-pfxcertificate cmdlet + + + + + Gets or sets the path of the item for which to obtain the + certificate. + + + + + Gets or sets the literal path of the item for which to obtain the + certificate. + + + + + Initializes a new instance of the GetPfxCertificateCommand + class + + + + + Processes records from the input pipeline. + For each input file, the command retrieves its + corresponding certificate. + + + + + Defines the implementation of the 'Protect-CmsMessage' cmdlet. + + This cmdlet generates a new encrypted CMS message given the + recipient and content supplied. + + + + + Gets or sets the recipient of the CMS Message. + + + + + Gets or sets the content of the CMS Message. + + + + + Gets or sets the content of the CMS Message by path. + + + + + Gets or sets the content of the CMS Message by literal path. + + + + + Emits the protected message to a file path. + + + + + Validate / convert arguments + + + + + Processes records from the input pipeline. + For each input object, the command encrypts + and exports the object. + + + + + Encrypts and outputs the message + + + + + Defines the implementation of the 'Get-CmsMessage' cmdlet. + + This cmdlet retrieves information about an encrypted CMS + message. + + + + + Gets or sets the content of the CMS Message. + + + + + Gets or sets the CMS Message by path. + + + + + Gets or sets the CMS Message by literal path. + + + + + Validate / convert arguments + + + + + Processes records from the input pipeline. + For each input object, the command gets the information + about the protected message and exports the object. + + + + + Gets the CMS Message object + + + + + Defines the implementation of the 'Unprotect-CmsMessage' cmdlet. + + This cmdlet retrieves the clear text content of an encrypted CMS + message. + + + + + Gets or sets the content of the CMS Message. + + + + + Gets or sets the Windows Event Log Message with contents to be decrypted. + + + + + Gets or sets the CMS Message by path. + + + + + Gets or sets the CMS Message by literal path. + + + + + Determines whether to include the decrypted content in its original context, + rather than just output the decrypted content itself. + + + + + Gets or sets the recipient of the CMS Message. + + + + + Validate / convert arguments + + + + + Processes records from the input pipeline. + For each input object, the command gets the information + about the protected message and exports the object. + + + + + Processes records from the input pipeline. + For each input object, the command gets the information + about the protected message and exports the object. + + + + + gets the size of a file + + + path to file + + file size + + + + + + + present a prompt for a SecureString data + + + ref to host ui interface + + prompt text + + user input as secure string + + + + + + + + + + resource string + + error identifier + + replacement params for resource string formatting + + + + + + + + + + + + path that was not found + + error identifier + + ErrorRecord instance + + + + + + + Create an error record for 'operation not supported' condition + + + resource string + + error identifier + + replacement params for resource string formatting + + + + + + + + + Create an error record for 'operation not supported' condition + + + exception to include in ErrorRecord + + error identifier + + + + + + + + + convert the specifed provider path to a provider path + and make sure that all of the following is true: + -- it represents a FileSystem path + -- it points to a file + -- the file exists + + + cmdlet instance + + provider path + + + filesystem path if all conditions are true, + null otherwise + + + + + + + + + MshSecurityMshSnapin (or MshSecurityMshSnapinInstaller) is a class for facilitating registry + of necessary information for monad security mshsnapin. + + This class will be built with monad security dll + + + + + + + Create an instance of this class. + + + + + Get name of this mshsnapin. + + + + + Get the default vendor string for this mshsnapin. + + + + + Get resource information for vendor. This is a string of format: resourceBaseName,resourceName. + + + + + Get the default description string for this mshsnapin. + + + + + Get resource information for description. This is a string of format: resourceBaseName,resourceName. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Invoke Certificate Manager. + + + + + Looks up a localized string similar to Move certificate. + + + + + Looks up a localized string similar to Remove certificate. + + + + + Looks up a localized string similar to Remove certificate and its private key.. + + + + + Looks up a localized string similar to You cannot create an item other than certificate store. . + + + + + Looks up a localized string similar to Creating certificate stores under CurrentUser is not supported. . + + + + + Looks up a localized string similar to Deleting certificate stores under CurrentUser is not supported. . + + + + + Looks up a localized string similar to You cannot move a certificate container. . + + + + + Looks up a localized string similar to You cannot move a certificate from user store to or from machine. . + + + + + Looks up a localized string similar to You cannot move a certificate to the same store. . + + + + + Looks up a localized string similar to You cannot remove a certificate container. . + + + + + Looks up a localized string similar to Cannot find the X509 certificate at path {0}.. + + + + + Looks up a localized string similar to Cannot find the certificate store because the specified X509 store location {0} is not valid.. + + + + + Looks up a localized string similar to Cannot find the X509 certificate store at path {0}.. + + + + + Looks up a localized string similar to X509 Certificate Provider. + + + + + Looks up a localized string similar to The destination is not a valid store. . + + + + + Looks up a localized string similar to Cannot process the path because path {0} is not a valid certificate provider path.. + + + + + Looks up a localized string similar to Item: {0} Destination: {1} . + + + + + Looks up a localized string similar to {0} is not supported in the current operating system. . + + + + + Looks up a localized string similar to . The following error may be a result of user credentials required on the remote machine. See Enable-WSManCredSSP Cmdlet help on how to enable and use CredSSP for delegation with Windows PowerShell remoting. . + + + + + Looks up a localized string similar to Item: {0} . + + + + + Looks up a localized string similar to The store {0} is a built-in system store and cannot be deleted.. + + + + + Looks up a localized string similar to The operation is on user root store and UI is not allowed. . + + + + + Looks up a localized string similar to Private key skipped. The certificate has no private key association. . + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot set execution policy. Execution policies at the MachinePolicy or UserPolicy scopes must be set through Group Policy.. + + + + + Looks up a localized string similar to Windows PowerShell updated your execution policy successfully, but the setting is overridden by a policy defined at a more specific scope. Due to the override, your shell will retain its current effective execution policy of {0}. Type "Get-ExecutionPolicy -List" to view your execution policy settings. For more information please see "Get-Help Set-ExecutionPolicy".. + + + + + Looks up a localized string similar to Contact your system administrator.. + + + + + Looks up a localized string similar to Cannot get execution policy. Specify only the List or Scope parameters.. + + + + + Looks up a localized string similar to {0} To change the execution policy for the default (LocalMachine) scope, start Windows PowerShell with the "Run as administrator" option. To change the execution policy for the current user, run "Set-ExecutionPolicy -Scope CurrentUser".. + + + + + Looks up a localized string similar to Execution Policy Change. + + + + + Looks up a localized string similar to The execution policy helps protect you from scripts that you do not trust. Changing the execution policy might expose you to the security risks described in the about_Execution_Policies help topic at https:/go.microsoft.com/fwlink/?LinkID=135170. Do you want to change the execution policy?. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The system cannot protect plain text input. To suppress this warning and convert the plain text to a SecureString, reissue the command specifying the Force parameter. For more information ,type: get-help ConvertTo-SecureString.. + + + + + Looks up a localized string similar to Enter secret: . + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The Get-AuthenticodeSignature cmdlet does not support directories. Supply a path to a file and retry.. + + + + + Looks up a localized string similar to Cannot sign code. The specified certificate is not suitable for code signing.. + + + + + Looks up a localized string similar to File {0} was not found.. + + + + + Looks up a localized string similar to Cannot sign code. The TimeStamp server URL must be fully qualified in the form of http://<server url>. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot digitally sign file because file {0} is smaller than 4 bytes in size. Files must be at least 4 bytes in order to be digitally signed.. + + + + + Looks up a localized string similar to Could not create an empty SACL.. + + + + + Looks up a localized string similar to Cannot get the ACL because the necessary method, GetSecurityDescriptor, does not exist.. + + + + + Looks up a localized string similar to Could not create a SACL with the specified central access policy.. + + + + + Looks up a localized string similar to Could not enable SeSecurityPrivilege.. + + + + + Looks up a localized string similar to Central Access Policy identifier or name is not valid. If specifying an identifier, it must begin with S-1-17. If specifying a name, the policy must be applied on the target machine.. + + + + + Looks up a localized string similar to ClearCentralAccessPolicy and CentralAccessPolicy parameters cannot be used at the same time.. + + + + + Looks up a localized string similar to Could not perform operation because an exception was thrown during method invoke.. + + + + + Looks up a localized string similar to Cannot perform the operation because it is not supported on the object found in path {0}.. + + + + + Looks up a localized string similar to Windows PowerShell credential request.. + + + + + Looks up a localized string similar to Could not set central access policy.. + + + + + Looks up a localized string similar to Cannot set the ACL because the method that it needs to invoke, SetSecurityDescriptor, does not exist.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The following file could not be found: {0}.. + + + + + Looks up a localized string similar to Enter password: . + + + + + Looks up a localized string similar to Command cannot find any of the specified files.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The path '{0}' must refer to a single file system path.. + + + + + Looks up a localized string similar to Cannot unprotect message. The input contained no encrypted content.. + + + + + Looks up a localized string similar to Cannot unprotect message. The input contained no encrypted content. Specify the '{0}' parameter if you wish to output the original content when no encrypted content is detected.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to This Windows PowerShell Snap-In contains cmdlets to manage Windows PowerShell security.. + + + + + Looks up a localized string similar to Security Windows PowerShell Snap-In.. + + + + + Looks up a localized string similar to Microsoft Corporation. + + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Utility.Activities.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Utility.Activities.dll new file mode 100644 index 0000000..b1c63a0 Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Utility.Activities.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Utility.Activities.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Utility.Activities.xml new file mode 100644 index 0000000..ab4c88c --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.PowerShell.Utility.Activities.xml @@ -0,0 +1,3240 @@ + + + + Microsoft.PowerShell.Utility.Activities + + + + + Activity to invoke the Microsoft.PowerShell.Utility\Add-Member command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the MemberType parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Value parameter. + + + + + Provides access to the SecondValue parameter. + + + + + Provides access to the TypeName parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the NotePropertyName parameter. + + + + + Provides access to the NotePropertyValue parameter. + + + + + Provides access to the NotePropertyMembers parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Add-Type command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the CodeDomProvider parameter. + + + + + Provides access to the CompilerParameters parameter. + + + + + Provides access to the TypeDefinition parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the MemberDefinition parameter. + + + + + Provides access to the Namespace parameter. + + + + + Provides access to the UsingNamespace parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the AssemblyName parameter. + + + + + Provides access to the Language parameter. + + + + + Provides access to the ReferencedAssemblies parameter. + + + + + Provides access to the OutputAssembly parameter. + + + + + Provides access to the OutputType parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the IgnoreWarnings parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Compare-Object command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the ReferenceObject parameter. + + + + + Provides access to the DifferenceObject parameter. + + + + + Provides access to the SyncWindow parameter. + + + + + Provides access to the Property parameter. + + + + + Provides access to the ExcludeDifferent parameter. + + + + + Provides access to the IncludeEqual parameter. + + + + + Provides access to the PassThru parameter. + + + + + Provides access to the Culture parameter. + + + + + Provides access to the CaseSensitive parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\ConvertFrom-Csv command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Delimiter parameter. + + + + + Provides access to the UseCulture parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Header parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\ConvertFrom-StringData command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the StringData parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\ConvertFrom-String command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Delimiter parameter. + + + + + Provides access to the PropertyNames parameter. + + + + + Provides access to the TemplateFile parameter. + + + + + Provides access to the TemplateContent parameter. + + + + + Provides access to the IncludeExtent parameter. + + + + + Provides access to the UpdateTemplate parameter. + + + + + Provides access to the InputObject parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\ConvertTo-Csv command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Delimiter parameter. + + + + + Provides access to the UseCulture parameter. + + + + + Provides access to the NoTypeInformation parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\ConvertTo-Html command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Property parameter. + + + + + Provides access to the Body parameter. + + + + + Provides access to the Head parameter. + + + + + Provides access to the Title parameter. + + + + + Provides access to the As parameter. + + + + + Provides access to the CssUri parameter. + + + + + Provides access to the Fragment parameter. + + + + + Provides access to the PostContent parameter. + + + + + Provides access to the PreContent parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\ConvertTo-Xml command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Depth parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the NoTypeInformation parameter. + + + + + Provides access to the As parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Export-Clixml command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Depth parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the NoClobber parameter. + + + + + Provides access to the Encoding parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Export-Csv command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the NoClobber parameter. + + + + + Provides access to the Encoding parameter. + + + + + Provides access to the Append parameter. + + + + + Provides access to the Delimiter parameter. + + + + + Provides access to the UseCulture parameter. + + + + + Provides access to the NoTypeInformation parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Export-FormatData command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the NoClobber parameter. + + + + + Provides access to the IncludeScriptBlock parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Get-Culture command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Get-Date command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Date parameter. + + + + + Provides access to the Year parameter. + + + + + Provides access to the Month parameter. + + + + + Provides access to the Day parameter. + + + + + Provides access to the Hour parameter. + + + + + Provides access to the Minute parameter. + + + + + Provides access to the Second parameter. + + + + + Provides access to the Millisecond parameter. + + + + + Provides access to the DisplayHint parameter. + + + + + Provides access to the UFormat parameter. + + + + + Provides access to the Format parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Get-Event command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the SourceIdentifier parameter. + + + + + Provides access to the EventIdentifier parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Get-EventSubscriber command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the SourceIdentifier parameter. + + + + + Provides access to the SubscriptionId parameter. + + + + + Provides access to the Force parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Get-Host command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Get-Member command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Name parameter. + + + + + Provides access to the MemberType parameter. + + + + + Provides access to the View parameter. + + + + + Provides access to the Static parameter. + + + + + Provides access to the Force parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Get-Random command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the SetSeed parameter. + + + + + Provides access to the Maximum parameter. + + + + + Provides access to the Minimum parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Count parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Get-TraceSource command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Get-UICulture command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Get-Unique command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the AsString parameter. + + + + + Provides access to the OnType parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Group-Object command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the NoElement parameter. + + + + + Provides access to the AsHashTable parameter. + + + + + Provides access to the AsString parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Property parameter. + + + + + Provides access to the Culture parameter. + + + + + Provides access to the CaseSensitive parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Import-Clixml command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the IncludeTotalCount parameter. + + + + + Provides access to the Skip parameter. + + + + + Provides access to the First parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Import-Csv command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Delimiter parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the UseCulture parameter. + + + + + Provides access to the Header parameter. + + + + + Provides access to the Encoding parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Invoke-Expression command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Command parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Measure-Command command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Expression parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Measure-Object command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Property parameter. + + + + + Provides access to the Sum parameter. + + + + + Provides access to the Average parameter. + + + + + Provides access to the Maximum parameter. + + + + + Provides access to the Minimum parameter. + + + + + Provides access to the Line parameter. + + + + + Provides access to the Word parameter. + + + + + Provides access to the Character parameter. + + + + + Provides access to the IgnoreWhiteSpace parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\New-Event command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the SourceIdentifier parameter. + + + + + Provides access to the Sender parameter. + + + + + Provides access to the EventArguments parameter. + + + + + Provides access to the MessageData parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\New-TimeSpan command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Start parameter. + + + + + Provides access to the End parameter. + + + + + Provides access to the Days parameter. + + + + + Provides access to the Hours parameter. + + + + + Provides access to the Minutes parameter. + + + + + Provides access to the Seconds parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Out-File command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the FilePath parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Encoding parameter. + + + + + Provides access to the Append parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the NoClobber parameter. + + + + + Provides access to the Width parameter. + + + + + Provides access to the NoNewline parameter. + + + + + Provides access to the InputObject parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Out-Printer command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the InputObject parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Out-String command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Stream parameter. + + + + + Provides access to the Width parameter. + + + + + Provides access to the InputObject parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Register-EngineEvent command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the SourceIdentifier parameter. + + + + + Provides access to the Action parameter. + + + + + Provides access to the MessageData parameter. + + + + + Provides access to the SupportEvent parameter. + + + + + Provides access to the Forward parameter. + + + + + Provides access to the MaxTriggerCount parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Register-ObjectEvent command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the EventName parameter. + + + + + Provides access to the SourceIdentifier parameter. + + + + + Provides access to the Action parameter. + + + + + Provides access to the MessageData parameter. + + + + + Provides access to the SupportEvent parameter. + + + + + Provides access to the Forward parameter. + + + + + Provides access to the MaxTriggerCount parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Remove-Event command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the SourceIdentifier parameter. + + + + + Provides access to the EventIdentifier parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Select-Object command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Property parameter. + + + + + Provides access to the ExcludeProperty parameter. + + + + + Provides access to the ExpandProperty parameter. + + + + + Provides access to the Unique parameter. + + + + + Provides access to the Last parameter. + + + + + Provides access to the First parameter. + + + + + Provides access to the Skip parameter. + + + + + Provides access to the SkipLast parameter. + + + + + Provides access to the Wait parameter. + + + + + Provides access to the Index parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Select-String command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Pattern parameter. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the SimpleMatch parameter. + + + + + Provides access to the CaseSensitive parameter. + + + + + Provides access to the Quiet parameter. + + + + + Provides access to the List parameter. + + + + + Provides access to the Include parameter. + + + + + Provides access to the Exclude parameter. + + + + + Provides access to the NotMatch parameter. + + + + + Provides access to the AllMatches parameter. + + + + + Provides access to the Encoding parameter. + + + + + Provides access to the Context parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Select-Xml command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Xml parameter. + + + + + Provides access to the Content parameter. + + + + + Provides access to the XPath parameter. + + + + + Provides access to the Namespace parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Send-MailMessage command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Attachments parameter. + + + + + Provides access to the Bcc parameter. + + + + + Provides access to the Body parameter. + + + + + Provides access to the BodyAsHtml parameter. + + + + + Provides access to the Encoding parameter. + + + + + Provides access to the Cc parameter. + + + + + Provides access to the DeliveryNotificationOption parameter. + + + + + Provides access to the From parameter. + + + + + Provides access to the SmtpServer parameter. + + + + + Provides access to the Priority parameter. + + + + + Provides access to the Subject parameter. + + + + + Provides access to the To parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the UseSsl parameter. + + + + + Provides access to the Port parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Set-Date command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Date parameter. + + + + + Provides access to the Adjust parameter. + + + + + Provides access to the DisplayHint parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Set-TraceSource command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Name parameter. + + + + + Provides access to the Option parameter. + + + + + Provides access to the ListenerOption parameter. + + + + + Provides access to the FilePath parameter. + + + + + Provides access to the Force parameter. + + + + + Provides access to the Debugger parameter. + + + + + Provides access to the PSHost parameter. + + + + + Provides access to the RemoveListener parameter. + + + + + Provides access to the RemoveFileListener parameter. + + + + + Provides access to the PassThru parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Sort-Object command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Descending parameter. + + + + + Provides access to the Unique parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Property parameter. + + + + + Provides access to the Culture parameter. + + + + + Provides access to the CaseSensitive parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Start-Sleep command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Seconds parameter. + + + + + Provides access to the Milliseconds parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Tee-Object command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the FilePath parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Provides access to the Append parameter. + + + + + Provides access to the Variable parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Unregister-Event command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the SourceIdentifier parameter. + + + + + Provides access to the SubscriptionId parameter. + + + + + Provides access to the Force parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Update-List command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Add parameter. + + + + + Provides access to the Remove parameter. + + + + + Provides access to the Replace parameter. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Property parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Wait-Event command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the SourceIdentifier parameter. + + + + + Provides access to the Timeout parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Write-Debug command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Message parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Write-Error command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Exception parameter. + + + + + Provides access to the Message parameter. + + + + + Provides access to the ErrorRecord parameter. + + + + + Provides access to the Category parameter. + + + + + Provides access to the ErrorId parameter. + + + + + Provides access to the TargetObject parameter. + + + + + Provides access to the RecommendedAction parameter. + + + + + Provides access to the CategoryActivity parameter. + + + + + Provides access to the CategoryReason parameter. + + + + + Provides access to the CategoryTargetName parameter. + + + + + Provides access to the CategoryTargetType parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Write-Information command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the MessageData parameter. + + + + + Provides access to the Tags parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Write-Output command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the NoEnumerate parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Write-Progress command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Activity parameter. + + + + + Provides access to the Status parameter. + + + + + Provides access to the ProgressId parameter. + + + + + Provides access to the PercentComplete parameter. + + + + + Provides access to the SecondsRemaining parameter. + + + + + Provides access to the CurrentOperation parameter. + + + + + Provides access to the ParentId parameter. + + + + + Provides access to the Completed parameter. + + + + + Provides access to the SourceId parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Write-Verbose command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Message parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Write-Warning command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Message parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\ConvertTo-Json command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Provides access to the Depth parameter. + + + + + Provides access to the Compress parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\ConvertFrom-Json command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the InputObject parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Get-TypeData command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the TypeName parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Invoke-RestMethod command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Method parameter. + + + + + Provides access to the UseBasicParsing parameter. + + + + + Provides access to the Uri parameter. + + + + + Provides access to the WebSession parameter. + + + + + Provides access to the SessionVariable parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the UseDefaultCredentials parameter. + + + + + Provides access to the CertificateThumbprint parameter. + + + + + Provides access to the Certificate parameter. + + + + + Provides access to the UserAgent parameter. + + + + + Provides access to the DisableKeepAlive parameter. + + + + + Provides access to the TimeoutSec parameter. + + + + + Provides access to the Headers parameter. + + + + + Provides access to the MaximumRedirection parameter. + + + + + Provides access to the Proxy parameter. + + + + + Provides access to the ProxyCredential parameter. + + + + + Provides access to the ProxyUseDefaultCredentials parameter. + + + + + Provides access to the Body parameter. + + + + + Provides access to the ContentType parameter. + + + + + Provides access to the TransferEncoding parameter. + + + + + Provides access to the InFile parameter. + + + + + Provides access to the OutFile parameter. + + + + + Provides access to the PassThru parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Invoke-WebRequest command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the UseBasicParsing parameter. + + + + + Provides access to the Uri parameter. + + + + + Provides access to the WebSession parameter. + + + + + Provides access to the SessionVariable parameter. + + + + + Provides access to the Credential parameter. + + + + + Provides access to the UseDefaultCredentials parameter. + + + + + Provides access to the CertificateThumbprint parameter. + + + + + Provides access to the Certificate parameter. + + + + + Provides access to the UserAgent parameter. + + + + + Provides access to the DisableKeepAlive parameter. + + + + + Provides access to the TimeoutSec parameter. + + + + + Provides access to the Headers parameter. + + + + + Provides access to the MaximumRedirection parameter. + + + + + Provides access to the Method parameter. + + + + + Provides access to the Proxy parameter. + + + + + Provides access to the ProxyCredential parameter. + + + + + Provides access to the ProxyUseDefaultCredentials parameter. + + + + + Provides access to the Body parameter. + + + + + Provides access to the ContentType parameter. + + + + + Provides access to the TransferEncoding parameter. + + + + + Provides access to the InFile parameter. + + + + + Provides access to the OutFile parameter. + + + + + Provides access to the PassThru parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Unblock-File command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the Path parameter. + + + + + Provides access to the LiteralPath parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + Activity to invoke the Microsoft.PowerShell.Utility\Import-LocalizedData command in a Workflow. + + + + + Gets the display name of the command invoked by this activity. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Provides access to the UICulture parameter. + + + + + Provides access to the BaseDirectory parameter. + + + + + Provides access to the FileName parameter. + + + + + Provides access to the SupportedCommand parameter. + + + + + Returns a configured instance of System.Management.Automation.PowerShell, pre-populated with the command to run. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot have an empty BaseDirectory for importing localized data. Please specify a valid BaseDirectory and run the command again.. + + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.Powershell.PSReadline.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.Powershell.PSReadline.dll new file mode 100644 index 0000000..d757f54 Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.Powershell.PSReadline.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.Powershell.Workflow.ServiceCore.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.Powershell.Workflow.ServiceCore.dll new file mode 100644 index 0000000..3b0c07a Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.Powershell.Workflow.ServiceCore.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.Powershell.Workflow.ServiceCore.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.Powershell.Workflow.ServiceCore.xml new file mode 100644 index 0000000..15a9b48 --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/Microsoft.Powershell.Workflow.ServiceCore.xml @@ -0,0 +1,6368 @@ + + + + Microsoft.PowerShell.Workflow.ServiceCore + + + + + Cache of workflow details. This is unbounded + + + + + this is the cache of compiled activities which will be bounded + + this is separate since Opalis will not use our cache + + + + Cache size + + + + + Path to Windows folder + + + + + Return the singleton instance. + + + + + Compiles the activity and adds it to the cache before returning it. + + WorkflowJobDefinition defined to represent a compiled activity. + Activity Tree used for external activities + + indicates if the specified xaml is a Windows workflow + Optional, once assigned, only root Workflow will be compiled + Activity compiled from xaml given, or retrieved from cache. + Null if not found. + + + + + + + + + + + + + + + + + + + + Remove a cached definition. Needed when functions are removed to release resources. + + Xaml definition to remove. + True if succeeded. + + + + + + + + + + + + Returns the same object is the specified job definition is a + WorkflowJobDefinition. If not creates a new one and assigns + the same + + job definition to check + WorkflowJobDefinition equivalent + + + + + + + + + + + Workflow script file name or null if no associated file. + + + + + Full workflow script source. + + + + + Specifies the action that occurs when a workflow becomes idle when persistence is allowed. + + + + + No or null action is defined so fall back to default. + + + + + Specifies that no action is taken. + + + + + Specifies that the System.Activities.WorkflowApplication should persist the workflow. + + + + + Specifies that the System.Activities.WorkflowApplication should persist and unload the workflow. + The job will remain in running state because aysnc operation (out of proc or remote operation) is in progress. + The System.Activities.WorkflowApplication will be loaded when async operation gets completed. + + + + + Specifies that the System.Activities.WorkflowApplication should persist and unload the workflow and Job is marked as suspended. + + + + + This class encapsulate the guid to avoid the confusion be job instance id and workflow instance id. + + + + + Default constructor + + + + + Constructor which takes guid. + + + + + + NewWorkflowGuid + + + + + + Gets Guid + + + + + WorkflowOnHandledErrorAction + + + + + Suspend + + + + + Stop + + + + + Terminate + + + + + Possible workflow instance creation modes. + + + + + Workflow instance created normally. + + + + + Workflow instance created normally. + + + + + PSWorkflowRemoteActivityState + + + + + PSWorkflowRemoteActivityState constructor + + + + + + Creates a PSWorkflowRemoteActivityState for a workflow instance based on deserialized object + + + + + + + Retrieves RemoteActivityState object to be serialized + + + + + + InternalUnloaded property + + + + + GetRemoteActivityRunspaceEntry + + + + task entry object + + + + SetRemoteActivityRunspaceEntry + + + + task state can be "NotStarted", Guid, or "Completed" + computer name of the task + + + + RemoteActivityResumeRequired + + + + + + + + Collects all the information related to a workflow instance. + + + + + Tracer initialization. + + + + + Workflow Application executes the workflow and it is part of CLR 4.0. + + + + + The Guid, which represents the unique instance of a workflow. + + + + + Workflow definition. + + + + + Workflow output, which represent all streams from the workflow. + + + + + Workflow error exception, which represent the terminating error workflow. + + + + + the remote runspace instance ids collection + + + + + Workflow metadatas. + + + + + Workflow debugger. + + + + + Workflow timers. + + + + + The workflow creation mode. + + + + + Workflow instance constructor. + + + The workflow definition. + The metadata which includes parameters etc. + This is input coming from pipeline, which is added to the input stream. + + + + + Workflow instance constructor for shutdown or crashed workflows. + + + + + + + Gets the Guid of workflow instance. + + + + + Load instance for resuming the workflow + + + + + PerformTaskAtTerminalState + + + + + Save streams if they are not already persisted + + false, if persistence was attempted and there + was an error + true - otherwise + + + + PSWorkflowJob + + + + + Gets the Guid of workflow instance. + + + + + Gets the Creation Context of workflow job. + + + + + InstanceStore + + + + + Gets the definition of workflow. + + + + + Gets the streams of workflow. + + + + + Gets the remote runspace instance ids collection. + + + + + Gets the streams of workflow. + + + + + Gets the timers of workflow. + + + + + Gets the metadatas of workflow. + + + + + PSWorkflowDebugger + + + + + Dispose the streams to save memory + + + + + DoStopInstance + + + + + DoAbortInstance + + Reason for aborting workflow. + + + + DoTerminateInstance + + Reason message for termination + + + + DoTerminateInstance + + Reason message for termination + Suppress error for termination + + + + DoResumeInstance + + + + + DoSuspendInstance + + + + + + DoExecuteInstance + + + + + DoResumeBookmark + + + + + + + Loads the xaml to create an executable activity. + + + + + Remove + + + + + DoPersistInstance + + + + + DoGetPersistableIdleAction + + + + + + + + Dispose + + + + + Construct the workflow tracking participant. + + Returns the workflow tracking participant. + + + + CheckForTerminalAction + + + + + Validate if the label exists. + + + + + + Helper method to translate internal Workflow metadata names to + public Workflow variable names. + + Metadata key string + Public workflow variable name + + + + PSWorkflowDebuggerMode + + + + + Debugger is off. + + + + + Debugger stops at breakpoints. + + + + + Debugger stops at each Activity within a workflow function, + and will step over nested workflow functions. + + + + + Debugger steps into nested workflow functions. + + + + + Debugger steps out of nested workflow functions. + + + + + Constructor + + + + + + + + Workflow function name + + + + + Script line position + + + + + Script column position + + + + + Workflow Debugger + + + + + Constructor + + PSWorkflowInstance + + + + ProcessCommand + + PSCommand + + DebuggerCommandResults + + + + StopProcessCommand + + + + + SetDebuggerAction + + DebuggerResumeAction to set + + + + DebuggerStopEventArgs + + DebuggerStopEventArgs + + + + Sets the parent debugger and breakpoints. + + Parent debugger + List of breakpoints + Debugger mode + host + Current path + + + + Sets the parent debugger, breakpoints and function source map. + + Parent debugger + List of breakpoints + Debugger mode + host + Current path + Function to source map + + + + Returns IEnumerable of CallStackFrame objects. + + + + + + Sets debugger stepping mode. + + True if stepping is to be enabled + + + + Dispose + + + + + DebuggerCheck + + Defines activity execution position in XAML definition + + + + UpdateVariables + + + + + + Lazily create Xaml related info. + + True if Xaml info is available. + + + + Lazily create the job meta data variables. + + + + + + UpdateScriptInfo + + + + + Helper method to check if user attempted to modify a workflow variable which + isn't supported. Write error message to host. + + + + + Helper method to check for and rethrow severe exceptions. + + Exception to check + + + + Workflow Job type implementation. For use with the WorkflowJobSourceAdapter. + + + + + Delegate action on workflow idling + + + + + Delegate function on workflow persist idle action + + + + + Delegate action on workflow unloaded + + + + + Signaled when job reaches running state + + + + + Signaled when job finishes suspending or aboring + + + + + Job input parameters + + + + + Job input parameters including system provided parameters + + + + + Job metadata collection + + + + + Job invoker metadata collection + + + + + Workflow instance for the job + + + + + Workflow debugger + + + + + Workflow job definition + + + + + Input parameters to the workflow instance. + + + + + Provide validation of constructor parameter that could cause NullReferenceException. + + JobInvocationInfo for construction. + specification parameter if not null. + + + + DoSuspendJob returns a bool, but + in the case of a SuspendJob call, we do not + want to return until the job is in the correct state. + The boolean return value is used by the WorkflowManager + for Shutdown purposes. + + + + + + Do Set Job State + + + + returns false if state tranition is not possible. Return value is required to update SQM perf counters + + + + Create necessary dictionaries for WorkflowManager consumption based on StartParameters. + + + + + DoResumeBookmark + + The Bookmark which needs to be resumed. + The state, which will be passed to the activity, which gets resumed. + + + + Unloads the streams of the job. + + + To be called from this class only + + + + Helper function to check if job is finished + + + + + + + Construct a PSWorkflowJob. + + + JobInvocationInfo representing the command this job + will invoke. + + + + Construct a PSWorkflowJob. + + + JobInvocationInfo representing the command this job will invoke. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Success status of the command execution. + + + + + Indicates that more data is available in this result object for reading. + + + + + Indicates a location where this job is running. + + + + + Implementation of this method will allow the delayed loadig of streams. + + + + + Unloads job streams information. Enables jobs to + clear stream information from memory + + + + + start a job. The job will be started with the parameters + specified in StartParameters + + It is redudant to have a method named StartJob + on a job class. However, this is done so as to avoid + an FxCop violation "CA1716:IdentifiersShouldNotMatchKeywords" + Stop and Resume are reserved keyworks in C# and hence cannot + be used as method names. Therefore to be consistent it has + been decided to use *Job in the name of the methods + + + + Start a job asynchronously + + + + + Stop a job asynchronously + + + + + Suspend a job + + + + + Asynchronously suspend a job + + + + + Stop Job + + True to force stop + Reason for forced stop + + + + Stop Job + + True to force stop + Reason for forced stop + Suppress error for forced stop + + + + Stop Job Asynchronously + + True to force stop + Reason for forced stop + + + + Stop job asynchronously + + True to force stop + Reason for forced stop + Suppress error for forced stop + + + + Suspend Job + + + + + + + Suspend Job Asynchronously + + + + + + + Resume a suspended job + + + + + Resume a suspended job + + + + + + ResumeBookmark + + + + + + + ResumeBookmark + + + + + + + + ResumeBookmark + + + + + + + + + GetPersistableIdleAction + + + + + + + + Resume a suspended job asynchronously. + + + + + Resume a suspended job asynchronously. + + + + + + Unblock a blocked job + + + + + Unblock a blocked job asynchronously + + + + + + + + + + + Check and add StateChanged event handler + + + + + + + + Job Debugger + + + + + True if job is synchronous and can be debugged. + + + + + Adapter that allows workflow instances to be exposed as jobs in PowerShell. + NOTE: This class has been unsealed to allow extensibility for Opalis. Further + thought is needed around the best way to enable reuse of this class. + + + + + + + + + + + + Gets the WorkflowJobSourceAdapter instance. + + + + + GetJobManager + + + + + + GetPSWorkflowRunTime + + + + + + Create a new job with the specified JobSpecification. + + specification + job object + + + + Get the list of jobs that are currently available in the workflow instance table. + + collection of job objects + + + + Get list of jobs that matches the specified names + + names to match, can support + wildcard if the store supports + + collection of jobs that match the specified + criteria + + + + Get list of jobs that run the specified command + + command to match + + collection of jobs that match the specified + criteria + + + + Get list of jobs that has the specified id + + Guid to match + + job with the specified guid + + + + Get job by session id. + + The session id. + + The returned job2 object. + + + + Get list of jobs that are in the specified state + + state to match + + collection of jobs with the specified + state + + + + Get list of jobs based on the adapter specific + filter parameters + + dictionary containing name value + pairs for adapter specific filters + + collection of jobs that match the + specified criteria + + + + Remove a job from the store + + job object to remove + + + + Searches a list of jobs with a given set of filters for all + the V2 search parameters. This function searches in a specific + order so that a get call from an API returns without having + to do much processing in terms of wildcard pattern matching + + incoming enumeration of jobs to + search + dictionary of filters to use as search + criteria + narrowed down list of jobs that satisfy the filter + criteria + + + + Handles the wsman server shutting down event. + + sender of this event + arguments describing the event + + + + Called from tests to cleanup instance table + + + + + Provides interface to upper layers of M3P for calling the Workflow core functionality. + Throttles the number of jobs run simultaneously. Used to control the number of workflows that will execute simultaneously + + + + + The class name. + + + + + this is set to a date in the past so that the first time + GC happens correctly + + + + + if these many workflows are run without a GC + in between them, then we will force a GC + + + + + Construct a workflow manager + + + + + + + Disope implementation. + + + + + Disope implementation. + + + + + + LoadJob + + + + + + + Indicates whether the dedicated thread to start jobs is required + The thread needs to started only the first time + + This property helps in delay creation of + the thread + + + + PerformWSManPluginReportCompletion + + + + + Handles the wsman server shutting down event. + + sender of this event + arguments describing the event + + + + Contains the logic for running garbage collection + + if true, time check will not be + done and a forced garbage collection will take place + This method ensures that garbage collection + runs from only one thread at a time + + + + SubmitOperation + + + + + + + + + Create a workflow job by providing the activity-tree representing the workflow. + + + + + + + + + + + Create a workflow job by providing the xaml representing the workflow. + + + + + + + + + + + Create a workflow job by providing the activity-tree representing the workflow. + + + + + + + + + + + + Create a workflow job by providing the xaml representing the workflow. + + + + + + + + + + + + CreateJob + + + + + + + + ShutdownWorkflowManager is responsible suspending all the workflow and if suspend doesn't happen within timeout then calling the force suspend. + + The shutdown timeout in milliseconds. + + + + Returns the workflow job currently loaded in memory with provided id. + This function DOES NOT try load the job from the store if not found in memory + + + + + + + Loads and returns all workflow jobs. + + Returns the collection workflow jobs. + + + + Loads and returns all workflow jobs based on provided filters. + + Represent which type of data needs to be used to apply filter. + Filters represents the key value pair of conditions. + Returns the collection of workflow instances. + + + + Loads and returns all workflow jobs based on provided filters. + + PSWorkflowJob search list + Represent which type of data needs to be used to apply filter. + Filters represents the key value pair of conditions. + Returns the collection of workflow instances. + + + + The dictionary of workflow instances. + + + + + Add a job to the manager. + + + + + + Retrieves job from the manager. + + The job instance Id. + The workflow instance Id. + Returns the job. + + + + Remove the workflow with provided job instance id. + + The job instance id. + + + + Unload/Forget the workflow with provided job instance id. + This method is used to dispose unloaded idle workflows. + + The job instance id. + + + + UnloadAllJobs + + + + + Provides list of workflow filter types. + + + + + Empty flags - not used, would indicate to search no collections. + + + + + Filters will be applicable to job metadata collection. + + + + + Filters will be applicable to caller private metadata collection. + + + + + Filters will be applicable to workflow specific parameters defined by the workflow author. + + + + + Filters will be applicable to common parameters on all workflows. + + + + + Use all filters. + + + + + Possible states of workflow instance. + + + + + Not initialized with any workflow yet. + + + + + Workflow execution is loaded but not yet started. + + + + + Workflow is currently executing. + + + + + Workflow execution is completed. + + + + + Faulted state, once the workflow execution is completed. + + + + + Canceled state, once the workflow execution is completed. + + + + + Aborted state, once the workflow execution is completed. + + + + + Un-handled exception and termination state, once the workflow execution is completed. + + + + + Workflow is currently unloaded. + + + + + Workflow is currently unknown. + + + + + Provides an event definition for the status of a workflow. + + + + + The instance id. + + + + + The workflow instance state. + + + + + The workflow unhandled exception. + + + + + Constructor with instance id and state. + + The workflow Id. + The state of workflow + The unhandled exception, occurs when streams are closed. + + + + Gets instance id. + + + + + Gets instance state. + + + + + Gets unhandled exception. + + + + + Contains members that allow for controlling the PowerShell workflow + engine validation mechanism. + + + + + The custom validator delegate to use in this engine + + + + + Validate all the activities in the workflow to check if they are allowed or not. + + + + + PSWorkflowValidator + + + + + + Validate the workflow, if it is using the allowed activities. + + The workflow, which needs to be validated. + The additional runtime assembly, which is needed in validation process. + + + + This class is responsible for compiling dependent workflows. + + + + + The template project which is used for default project values. + + + + + The runtime generated project name. + + + + + The runtime generated Project folder path. + + + + + The runtime generated Project file path (.csprj file). + + + + + The runtime generated build log path. + + + + + The runtime gnerated assembly name. + + + + + The runtime generated assembly path. + + + + + The returned code of project.Build. + + + + + Default constructor. + + + + + Compiling the workflow xamls into the assembly. + + + + + Return true/false to indicate whether the processor architecture is ARM + + + + + + Contains members that allow the addition of custom extension to + the PowerShell workflow engine. + + + + + The custom workflow extensions delegate to use in this engine + + + + + Implementing the workflow tracking participant, this will established with communication between activities and hosting + engine to perform additional task like persistence and logging etc. + + + + + Default constructor. + + + + + Constructor. + + PSWorkflowDebugger + + + + Retreive each type of tracking record and perform the corresponding fucntionality. + + Represents the tracking record. + Time out for the tracking to be completed. + + + + Process the workflow instance record. + + Record representing workflow instance record. + + + + process the activity state record. + + Record representing activity state record. + + + + Process the custom tracking record. This record will contain the persistence detail. + + Record representing custom tracking record. + + + + Define all the metadatas. + + + + + The parameters, which need to be passed to the workflow engine. + + + + + The ubiquitous parameters, which are also passed to the engine. + + + + + The metadata, which contains all the information related to job and client like, job-id, connnection-id and application-id etc. + + + + + The metadata, which is specific to the caller and doesn't contain any information related to workflow execution. + + + + + Default Constructor. + + + + + Workflow metadatas constructor. + + The parameters, which need to be passed to the workflow engine. + The ubiquitous parameters, which are also passed to the engine. + The metadata, which contains all the information related to job and client like, job-id, connnection-id and application-id etc. + The metadata, which is specific to the caller and doesn't contain any information related to workflow execution. + + + + Gets the input to workflow. + + + + + Gets the input to workflow. + + + + + Gets the input to workflow. + + + + + Gets the input to workflow. + + + + + Define all the metadatas. + + + + + Workflow instance constructor. + + The workflow definition, represented in object-graph. + The workflow xaml definition. + The path to the runtime assembly. + Required assemblies paths + + + + Workflow instance constructor. + + The workflow definition, represented in object-graph. + The workflow xaml definition. + The path to the runtime assembly. + + + + Gets sets the workflow. + + + + + Gets sets the workflow xaml. + + + + + Gets sets the runtime assembly path. + + + + + Gets sets the required assemblies. + + + + + Workflow timer types. + + + + + + + + Define all the workflow related timers. + + + + + Default Constructor + + + + + Creates a workflow timer for a workflow instance based on a BLOB + + + + + + + Retrieves timers as a BLOB + + + + + + Disope implementation. + + + + + Protected virtual implementation of Dispose. + + + + + + PSWorkflowPerformanceCounterSetInfo class contains + the data essential to create an + instance of PSCounterSetRegistrar for monitoring + workflow performance + + + + + If some other assemblies (e.g. Microsoft.PowerShell.Workflow.Activities) need + access to the counters, then they would need to specify the CounterSetId, + alongwith the counterId. Hence, CounterSetId is public. + + + + + PSWorkflowPerformanceCounterIds enumerates the + list of valid performance counter ids related to Powershell Workflow. + NOTE: The prime reason for making this not an enum are as follows: + (1) Everytime the enum will have to be typecasted to an int before invoking any + of the Performance Counters API. + (2) In case of M3P, its possible that some of the perf counters might be updated + by ActivityBase assembly, in which such perf counter ids might need to have + public access modifier, instead of internal. + + + + + CompareConnectionUri compares two connection URIs + by doing a comparison of elements. + + Connection info 1 + Connection info 2 + True if they match else false. + + + + CompareShellUri compares two shell URIs + by doing a string of elements. + + Shell Uri 1 + Shell Uri 2 + True if they match else false. + + + + CompareAuthentication compares two authentication mechanisms. + + Authentication mechanism 1 + Authentication mechanism 2 + True if they match else false. + + + + CompareCredentials compares two PSCredential credentials + by doing a username and password comparison . + + Credential 1 + Credential 2 + True if they match else false. + + + + ComparePassword uses native functions to perform a string match on two SecureString passwords + by doing a strict byte level comparison is done on the two strings. + The use of ReadByte allows the function to execute without marking the assembly as unsafe. + + Password 1 + Password 2 + True if they match else false. + + + + CompareCertificateThumbprint compares two certificate thumbprints + by doing a string comparison. + + Certificate Thumbprint 1 + Certificate Thumbprint 2 + True if they match else false. + + + + CompareProxySettings compares the proxy settings for two wsman connections + by doing a comparison of elements. + + Connection info 1 + Connection info 2 + True if they match else false. + + + + CompareOtherWSManSettings compares the rest of the wsman settings for two wsman connections + by doing a comparison of elements. + + Connection info 1 + Connection info 2 + True if they match else false. + + + + A generic base class for IAsyncResult implementations + that wraps a ManualResetEvent. + + + + + A strongly typed AsyncResult. + + + + + + A strongly typed AsyncResult that completes as soon as it is instantiated. + + + + + + This class implements the functionality for storing the streams data on to the disk. + + + + + Returns all Workflow guids. + + + + + + PSWorkflowFileInstanceStore ctor + + + + + + + CreateInstanceStore + + + + + + CreatePersistenceIOParticipant + + + + + + To be called from test code only. + + + + + + DoSave + + + + + + Delete + + + + + To be called from test code ONLY. + + + + + + DoLoad + + + + + + Encrypt + + + + + + + Decrypt + + + + + + + Serialize an object and directly write to the file + + object to serialize + file to write to + number of bytes written + + + + This class implements the encrypt and decrypt functionality. + + + + + Tracer initialization. + + + + + The additional entroy for security 'POWERSHELLWORKFLOW' + + + + + Protect the data. + + The input data for encryption. + Returns encrypted data. + + + + Unprotect data the encrypted data. + + Encrypted data. + Returns decrypted data. + + + + This class implements the encrypt and decrypt functionality. + + + + + this method is not thread safe + + + + + Whether the operation reprensented by this method is + completed + + + + + Wait Handle for the operation + + + + + Optional user specified state + + + + + Whether this operation completed synchronously + + + + + Activity Host Manager which will spawn a set of activity + host processes until all of them are used after which + it will start queueing requests + + Whether this class needs to remain public should be + evaluated + + + + Stack of available host processes + + + + + Queue of requests + + + + + List of requests that need to be invoked again due to process crash + + + + + This is a helper method which should only be called + from test code to reset stuff + + + + + Handler method which runs a specific command in the specified process + + + + + + Checks to see if a thread is servicing requests. If not + starts one + + + + + Method which performs the actual servicing of requests + + + + + + Unregisters all wait handles and disposes a process + + + + + + Method called by servicing thread. This method will run the command in the + specified process on a separate thread + + + + + + + Begin invocation of command specified in activity + + pipeline of command to execute + input collection + output collection + policy to use for the activity + optional callback + optional caller specified state + IAsyncResult + + + + Block until operation is complete on the current thread + + IAsyncResult to block on + + + + Cancels an already started execution + + async result to cancel + + + + PSWorkflowConfigurationProvider + + + + + Default constructor + + + + + + + + + + Using optionName and optionValue updates the current object + + + + + + + + + PSWorkflowConfigurationProvider + + + + + + + Populate the global configuration object with + information from the configuration xml + + private data + associated with the endpoint + + + + + CreatePSActivityHostController + + + + + + CreatePSWorkflowInstance + + + + + + + + + + CreatePSWorkflowInstance + + + + + + + CreatePSWorkflowInstanceStore + + + + + + + CreateWorkflowExtensions + + + + + + CreateWorkflowExtensionCreationFunctions + + + + + + + CreateRemoteRunspaceProvider + + + + + + Local runspace provider + + + + + + + CurrentUserIdentity returns the current user + + + + + To be called only by test code + + + + + ConfigProviderId + + + + + PersistencePath + + + + + MaxPersistenceStoreSizeGB + + + + + PersistWithEncryption + + + + + MaxRunningWorkflows + + + + + AllowedActivity + + + + + OutOfProcActivity + + + + + EnableValidation + + + + + MaxDisconnectedSessions + + + + + MaxConnectedSessions + + + + + MaxSessionsPerWorkflow + + + + + MaxSessionsPerRemoteNode + + + + + MaxActivityProcesses + + + + + WorkflowApplicationPersistUnloadTimeoutSec + + + + + WSManPluginReportCompletionOnZeroActiveSessionsWaitIntervalMSec + + + + + ActivitiesCacheCleanupIntervalMSec + + + + + Local Machine Runspace Language Mode + + + + + ActivityProcessIdleTimeOutSec + + + + + RemoteNodeSessionIdleTimeOutSec + + + + + SessionThrottleLimit + + + + + WorkflowShutdownTimeoutMSec - the maximum time allowed to suspend the workflows before aborting them. + + + + + MaxInProcRunspaces + + + + + Get Activity Run Mode InPocess or Out of process + + + + + + + Encapsulates an out of process activity host + + This class is not thread safe. Caller has to + ensure thread safety of accessing internal properties + + + + This the period of time for which the process will + remain inactive. Afterwards it will be killed + + + + + Use this flag to flip between IPC process and + WSMan process in localhost + + + + + Creating a _PSSetVariable to set multiple variables in a single call --> PERF + Naming it _PSSetVariable to avoid name collision with Set-Variable cmdlet + + + + + Initialize a connection info object in the static constructor + It can be reused for all connections + + + + + Get the runspace corresponding to this process + + indicates if a new runspace + needs to be created + runspace object + + + + Depending on the option return an Out-of-proc + or remoting runspace on localhost + + runspace object for use + + + + Opens the specified runspace. If there are any errors in + opening the runspace, the method just eats them so that + an unhandled exception in the background thread in which this + method is invoked does not lead to a process crash + + runspace to open + + + + Import all the specified modules in the specified runspace + + runspace in which to import the modules + collection of modules to import + true if setting up of runspace from policy succeeded + + + + Set the specified variables in the runspace + + runspace in which the variables need + to be set + collection of variables that need to be set + + + + Set the busy flag since the process is being used. + Stop the idle timer + + + + + Reset the busy flag and start the idle timer + + + + + Idle timeout has occured. If the runspace is not being used + just close it + + sender of this event + unused + + + + Handles a transport error since it is most likely that + the process crash + + the transport exception + that was raised + true indicates that the crash was + encountered when setting up the process and not when the + command was run + + + + Prepare the environment based on the policy and run the powershell + + + It is assumed that the caller of this method will spawn appropriate + thread and so it is fine for us to call the callback on the same thread + + + + If the process represented by this object is busy + + + + + Indicates that the associated process crashed and this object + needs to be removed by ActivityHostManager + + + + + Dipose + + + + + dispose of managed resources + + true if being disposed + + + + PowerShell Workflow host runtime. + + + + + Default constructor + + + + + Constructs runtime based on configuration + + + + + + Disope implementation. + + + + + Disope implementation. + + + + + + The runtime configuration. + + + + + JobManager + + + + + PSActivityHostController (PSWorkflowHost) + + + + + RemoteRunspaceProvider (PSWorkflowHost) + + + + + LocalRunspaceProvider (PSWorkflowHost) + + + + + The provider which will supply an unbounded number of + runspaces - to be used in PowerShell value + + + + + Configuration for the M3P endpoint + + + + + IsWorkflowTypeEndpoint + + + + + + + + + + + + + + + + + + + + + + class the contains a remote connection (runspace) and associated + data for managing the same + + the only reason this class has an internal scope is for + test purposes. Else this can be a private class inside + connection manager + + + + retry interval cannot be 0, so initial value is 1 + + + + + AsyncResult object returned by ConnectionManager + + the only reason this class has an internal scope is for + test purposes. Else this can be a private class inside + connection manager + + + + The servicing thread will release control of processing and the timer + thread will take control and process based on this wait handle + + + + + The timer thread will release control of processing and the servicing thread + will take control and process based on this wait handle + + + + + This list is assumed to accessed by only the servicing thread and + hence is not designed to be thread safe + + + + + number of sessions in the connected state + + this is made static in the interest of time + should not be static + + + + number of sessions in the disconnected state + + this is made static in the interest of time + should not be static + + + + if we need to check whether runspaces need to be + disconnected + + + + + Map of timers for each machine + + + + + Get runspace for the specified connection info to be + used for running commands + + connection info to use + retry count + retry interval in ms + remote runspace to use + + + + Begin for obtaining a runspace for the specified ConnectionInfo + + connection info to be used for remote connections + number of times to retry + optional user defined callback + optional user specified state + time in milliseconds before the next retry has to be attempted + async result + + + + End for obtaining a runspace for the specified connection info + + async result to end on + remote runspace to invoke commands on + + + + Release the runspace once the activity is done using the same + + runspace to release + + + + Request a cleanup to the destination specified in the + connection info. This means no runspaces will be held + to the specified connection info. + + connection info to which + cleanup is desired + callback to invoke + caller specified state + + + + Checks to see if the provider intentionally disconnected a runspace + or it went into disconnected state due to network issues + + runspace that needs to be checked + true - when intentionally disconnected + false - disconnected due to network issues + + + + Handle the idle timer event + + unused + unused + + + + Checks to see if a thread is already servicing and if not starts one + + + + + Checks to see if a thread is already servicing callbacks + and if not starts one + + + + + Method that services the callbacks for all + successfully assigned runspaces + + unused + + + + Method that contains the core servicing logic + + not used + + + + Services one single request + + request to service + true, if successfully serviced, false otherwise + + + + Do everything required so that servicing thread can return + + + + + Check if the servicing thread need to stop processing requests + + true if processing needs to stop + + + + Service the request using the available connection + + request to service + connection to use for servicing + + + + Find the connection object given a runspace + + runspace whose connection + needs to be found + Connection if found, null otherwise + + + + Check and start a method which will do cleanups to + the specified computer + + + + + Worker method for servicing cleanups to requested computers + + + + + + Handles OperationComplete of close operations i.e + when connections to a specified computer is closed + + the CloseOperation object + that initiated this event + event parameters + + + + Raise all the callbacks to the specified computer + after the requested cleanup + + computer to which the + callback needs to be raised + + + + Timer elapsed handler for the specified computer. Once + the timer elapses, new connections to the specified + computer will be allowed + + timer that generated the event + event arguments + + + + Dispose the connection manager + + + + + Dipose the connection manager + + + + + + queue of operations to be used for throttling + + + + + Count of operations in progress + + + + + throttle limit - includes open/close/connect/disconnect operations + + + + + is the queue of operations being serviced + + + + + submit an operation to the queue + + operation to submit + + + + Start operations upto throttle limit from the queue + + this method is thread safe. It starts all pending + operations in the first calling thread. The assumption here + is that starting a few operations isn't expensive and so + the calling thread is not blocked for a long period of time + + + + + + + + + + + + + + + + + + + + + + + + + + Disconnect and reconnect to different runspaces as necessary + so as to help the connection manager scale and run a large + number of commands on a large number of remote nodes + + unused + + + + Callback to indicate that this runspace been initiated with + a pipeline and can be disconnected + + runspace that needs to be marked as + ready for disconnect + + + + WorkflowStoreComponent + + + + + Streams + + + + + Metadata + + + + + Definition + + + + + Timers + + + + + JobState + + + + + TerminatingError + + + + + ActivityState, like remote activity execution state, etc. + + + + + ActivityRunMode + + + + + InProcess + + + + + OutOfProcess + + + + + WorkflowInstanceStore + + + + + PSWorkflowInstanceStore + + + + + + PSWorkflowInstance + + + + + CreatePersistenceIOParticipant + + + + + + CreateInstanceStore + + + + + + Save + + + + + + DoSave + + + + + + Load + + + + + + DoLoad + + + + + + Delete + + + + + DoDelete + + + + + WorkflowInstance + + + + + _syncLock + + + + + _disposed + + + + + Synchonization object available to derived classes. + + + + + DoStopInstance + + + + + DoAbortInstance + + Reason for aborting workflow. + + + + DoTerminateInstance + + Reason message for termination + + + + DoTerminateInstance + + Reason message for termination + Suppress error for termination + + + + DoResumeInstance + + + + + DoSuspendInstance + + + + + + DoExecuteInstance + + + + + DoResumeBookmark + + + + + + + Loads the xaml to create an executable activity. + + + + + Remove + + + + + DoPersistInstance + + + + + DoGetPersistableIdleAction + + + + + + + + Dispose + + + + + Gets the Guid of workflow instance. + + + + + JobStateRetrieved + + + + + CheckForTerminalAction + + + + + Load instance for resuming the workflow + + + + + PerformTaskAtTerminalState + + + + + On completed handler. + + + + + On faulted handler. + + + + + On stopped handler. + + + + + On aborted handler. + + + + + On suspended handler. + + + + + On idle handler. + + + + + On persistable idle action handler. + + + + + On unloaded handler. + + + + + Validate label + + + + + + On completed handler. + + + + + On faulted handler. + + + + + On stopped handler. + + + + + On aborted handler. + + + + + On suspended handler. + + + + + On idle handler. + + + + + On persistable idle action handler. + + + + + On unloaded handler. + + + + + PSWorkflowJob + + + + + Gets the Guid of workflow instance. + + + + + Gets the workflow job creation context. + + + + + State + + + + + InstanceStore + + + + + Gets the definition of workflow. + + + + + Gets the streams of workflow. + + + + + Gets/Sets the RemoteActivityState of workflow. + + + + + Gets the streams of workflow. + + + + + Gets the timers of workflow. + + + + + Gets the metadatas of workflow. + + + + + Gets the workflow debugger. + + + + + Dispose + + + + + Dispose the streams to save memory + + + + + Bounded cache which will clear items when not used for a while + + type of item to use + + + + + + + + + The consumer of this class should hold a lock + on this object when servicing requests and adding + to this cache + + + + + + + + + + + + + + + + + + + + + Advances the enumerator to the next element of the collection. + + + true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection. + + The collection was modified after the enumerator was created. 2 + + + + Sets the enumerator to its initial position, which is before the first element in the collection. + + The collection was modified after the enumerator was created. 2 + + + + Gets the current element in the collection. + + + The current element in the collection. + + The enumerator is positioned before the first element of the collection or after the last element.2 + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + 2 + + + + one item that will be used in the cache + + type of item to use + + + + -1 indicates unlimited + + + + + + + + + + + + + + Checks to see if a thread is already servicing and if not starts one + + + + + Begin for obtaining a runspace for the specified ConnectionInfo + + connection info to be used for remote connections + number of times to retry + optional user defined callback + optional user specified state + time in milliseconds before the next retry has to be attempted + async result + + + + End for obtaining a runspace for the specified connection info + + async result to end on + remote runspace to invoke commands on + + + + + + + + + + Creates a local runspace with the autoloading turned on. + + + + + + Dispose resources + + + + + + + + + + + Helper method only to use from test + + + + + A cmdlet to load WF Workflows, expressed as XAML and wrap them + in functions. + + + + + Paths to the XAML files to load. Wild cards are supported. + + + + + Paths to the dependent XAML files to load. Wild cards are supported. + + + + + Paths to the dependent XAML files to load. Wild cards are supported. + + + + + Flags -force operations + + + + + Process all of the specified XAML files to generate corresponding functions + + + + + Load a workflow XAML file from the specified path and generate a PowerShell + function from the file. The name of the generated function will be the basename + of the XAML file. + + The name of workflow. + The xaml of workflow. + + Any workflows required by this workflow. + Path to the dependent assembly. + Resolved Path of the xaml + Language mode of source in which workflow should run + + + + Generate a function in the current session using the specified + function details + + details of the function + + + + Executes an instance of the workflow object graph identified by the passed + GUID, binding parameters from the Parameters hastable. + + The powershell command. + The GUID used to identify the workflow to run. + The parameters to pass to the workflow instance. + The friendly name for the job + True if there was a PSParameters collection + + + + + Executes an instance of the workflow object graph identified by the passed + GUID, binding parameters from the Parameters hastable. + + The powershell command. + The GUID used to identify the workflow to run. + The parameters to pass to the workflow instance. + The friendly name for the job + True if there was a PSParameters collection + + True if debugger is in active state. + + + + Executes an instance of the workflow object graph identified by the passed + GUID, binding parameters from the Parameters hastable. + + The powershell command. + The GUID used to identify the workflow to run. + The parameters to pass to the workflow instance. + The friendly name for the job + True if there was a PSParameters collection + + True if debugger is in active state. + Language mode of source creating workflow. + + + + Retrieve a localized error message saying that only a single default parameter collection can be specified + + + + + Retrieve a localized error message saying that AsJob, JobName and PSParameterCollection cannot be specified as entries to PSParameterCollection + + + + + Retrieve a localized error message saying that the only AsJob, JobName and InputObject can be used outside of PSParameterCollection. + + + + + Retrieve a localized error message saying that starting the workflow failed... + + + + + Convert the Xaml based workflow into object-graph activity. + + Xaml representing workflow. + Activity representing the workflow. + + + + Convert the Xaml based workflow into object-graph activity with additional xamls assembly provided. + + Xaml representing workflow. + Any workflows required by this workflow. + + The path to the compiled assembly for any dependent workflows. + The compiled assembly. + The compiled assembly name. + Activity representing the workflow. + + + + Creates a workflow activity based on the provided Xaml and returns PowerShell script that will + run the workflow. + + Workflow name + Workflow Xaml definition + Required assemblies + Dependent workflows + Path for dependent assemblies + Workflow parameters + Module path + True if this is script workflow + the attribute string to use for the workflow, should be '[CmdletBinding()]' + + + + + Creates a workflow activity based on the provided Xaml and returns PowerShell script that will + run the workflow. + + Workflow name + Workflow Xaml definition + Required assemblies + Dependent workflows + Path for dependent assemblies + Workflow parameters + Module path + True if this is script workflow + the attribute string to use for the workflow, should be '[CmdletBinding()]' + File path containing script content. + + + + + Creates a workflow activity based on the provided Xaml and returns PowerShell script that will + run the workflow. + + Workflow name + Workflow Xaml definition + Required assemblies + Dependent workflows + Path for dependent assemblies + Workflow parameters + Module path + True if this is script workflow + the attribute string to use for the workflow, should be '[CmdletBinding()]' + File path containing script content. + Full source script. + + + + + Creates a workflow activity based on the provided Xaml and returns PowerShell script that will + run the workflow. + + Workflow name + Workflow Xaml definition + Required assemblies + Dependent workflows + Path for dependent assemblies + Workflow parameters + Module path + True if this is script workflow + the attribute string to use for the workflow, should be '[CmdletBinding()]' + File path containing script content. + Full source script. + Only root Workflow will be compiled + + + + + Creates a workflow activity based on the provided Xaml and returns PowerShell script that will + run the workflow. + + Workflow name + Workflow Xaml definition + Required assemblies + Dependent workflows + Path for dependent assemblies + Workflow parameters + Module path + True if this is script workflow + the attribute string to use for the workflow, should be '[CmdletBinding()]' + File path containing script content. + Full source script. + Only root Workflow will be compiled + Language mode of source that is creating the workflow + Optional collection of parameter attribute Asts + + + + + + + + + + + + + Adds common workflow parameters + + + + + + + + This class is used to specify Workflow related options in the Register-PSSessionConfiguration + + + + + Constructor that loads from default values + + + + + SessionThrottleLimit + + + + + PersistencePath + + + + + MaxPersistenceStoreSizeGB + + + + + PersistWithEncryption + + + + + MaxRunningWorkflows + + + + + AllowedActivity + + + + + OutOfProcActivity + + + + + EnableValidation + + + + + MaxDisconnectedSessions + + + + + MaxConnectedSessions + + + + + MaxSessionsPerWorkflow + + + + + MaxSessionsPerRemoteNode + + + + + MaxActivityProcesses + + + + + WorkflowApplicationPersistUnloadTimeoutSec + + + + + WSManPluginReportCompletionOnZeroActiveSessionsWaitIntervalMSec + + + + + ActivitiesCacheCleanupIntervalMSec + + + + + ActivityProcessIdleTimeOutSec + + + + + RemoteNodeSessionIdleTimeOut + + + + + WorkflowShutdownTimeoutMSec - the maximum time allowed to suspend the workflows before aborting them. + + + + + Copies values from updated. Only non default values are copies. + + + + + + Returns a new instance constructed from privateData string. + + + + + + Implementation of the abstract method + + + + + + Command to create an object for PSWorkflowExecutionOption + + + + + PersistencePath + + + + + MaxPersistenceStoreSizeGB + + + + + UseEnctyption + + + + + MaxRunningWorkflows + + + + + AllowedActivity + + + + + OutOfProcActivity + + + + + EnableValidation + + + + + MaxDisconnectedSessions + + + + + MaxConnectedSessions + + + + + MaxSessionsPerWorkflow + + + + + MaxSessionsPerRemoteNode + + + + + MaxActivityProcess + + + + + ActivityProcessIdleTimeOutSec + + + + + RemoteNodeSessionIdleTimeOutSec + + + + + SessionThrottleLimit + + + + + WorkflowShutdownTimeoutMSec - the maximum time allowed to suspend the workflows before aborting them. + + + + + ProcessRecord + + + + + Category attribute for "Activity-Specific Parameters" + + + + + Creates the attribute. + + + + + Gets a localized version of the attribute description. + + Not used. + A localized version of the attribute description + + + + Category attribute for "Input and Output" + + + + + Creates the attribute. + + + + + Gets a localized version of the attribute description. + + Not used. + A localized version of the attribute description + + + + Category attribute for "Behavior" + + + + + Creates the attribute. + + + + + Gets a localized version of the attribute description. + + Not used. + A localized version of the attribute description + + + + Category attribute for "Connectivity" + + + + + Creates the attribute. + + + + + Gets a localized version of the attribute description. + + Not used. + A localized version of the attribute description + + + + Implementing this interface indicates that the activity supports connection retry. + + + + + Defines the number of retries that the activity will make to connect to a remote + machine when it encounters an error. The default is to not retry. + + + + + Defines the delay, in seconds, between connection retry attempts. + The default is one second. + + + + + Special variables that can be defined in a workflow to + control the behaviour of PowerShell activities. + + + + + The parent activity ID to be used for all progress records + that are written in the enclosing scope + + + + + Workflow variable that controls when activities are run + in process. If true, all activities in the enclosing scope + will be run in process + + + + + Workflow variable that is used to determine if a PowerShell activity should + persist when it's done. if true, then all PSActivities in that scope + will not persist at the end of their execution. + + + + + Parameter default, contains all the information which needs to be passed to Workflow context. + + + + + Default constructor. + + + + + All the activity level default parameter values are passed here. + + + + + Metadata / symbolic information about the currently-running workflow. + + + + + Job instance id. + + + + + The workflow runtime. + + + + + The host persistence delegate. + + + + + The Workflow activation delegate. + + + + + The asynchronous execution collection. + + + + + Currently executing remote activities state with runspace id or completion state. + + + + + Dispose method + + + + + Dipose of managed resources + + true if disposing + + + + Runtime metadata that represents the currently-running command. + + + + + The command name that generated this workflow. + + + + + The start line of the command name that generated this section of + the workflow. + + + + + The start column of the command name that generated this section of + the workflow. + + + + + The end line of the command name that generated this section of + the workflow. + + + + + The end column of the command name that generated this section of + the workflow. + + + + + The activity context. + + + + + IsCanceled. + + + + + The .NET type implementing the cmdlet to call, used for + direct-call cmdlets. + + + + + Cancelling the Async execution. + + + + + + + + This function is designed to be lightweight and to + run on the Workflow thread when Execute() is called. When + any changes are made to this function the contract needs to + be honored + + + + Dispose + + + + + Dispose + + + + + + Defines the activity on-resume action. + + + + + Indicates the resumption is normal. + + + + + Indicates that the activity needs to be restarted. + + + + + Activities derived from this class can be used in the Pipeline activity + + + + + The Input stream for the activity. + + + + + Determines whether to connect the input stream for this activity. + + + + + The output stream from the activity + + + + + Determines whether to append output to Result. + + + + + Base class for PowerShell-based workflow activities + + + + + The bookmark prefix for Powershell activities. + + + + + The bookmark prefix for Powershell suspend activities. + + + + + The bookmark prefix for Powershell persist activities. + + + + + Constructor for the PSActivity class. + + + + + Gets the fully qualified name of the command invoked by this activity. + + + + + Returns the module defining the command called by this activity. + It may be null. + + + + + Tracer initialization. + + + + + In addition to the display name PSProgress Message will provide + the way to append the additional information into the activity progress message + like branch name or iteration number in case of parallel foreach. + + + + + The Error stream / collection for the activity. + + + + + The Progress stream / collection for the activity. + + + + + The Verbose stream / collection for the activity. + + + + + The Debug stream / collection for the activity. + + + + + The Warning stream / collection for the activity. + + + + + The Information stream / collection for the activity. + + + + + Forces the activity to return non-serialized objects. Resulting objects + have functional methods and properties (as opposed to serialized versions + of them), but will not survive persistence when the Workflow crashes or is + persisted. + + + + + Forces the activity to not call the persist functionality, which will be responsible for + persisting the workflow state onto the disk. + + + + + Determines whether to merge error data to the output stream + + + + + Defines the maximum amount of time, in seconds, that this activity may run. + The default is unlimited. + + + + + This the list of module names (or paths) that are required to run this Activity successfully. + The default is null. + + + + + Defines the number of retries that the activity will make when it encounters + an error during execution of its action. The default is to not retry. + + + + + Defines the delay, in seconds, between action retry attempts. + The default is one second. + + + + + Determines whether to emit verbose output of the activity. + + + + + Determines whether to emit debug output of the activity. + + + + + Determines how errors should be handled by the activity. + + + + + Determines how warnings should be handled by the activity. + + + + + Determines how information records should be handled by the activity. + + + + + Provides access to the parameter defaults dictionary + + + + + Records a non-terminating error. If the runtime has associated an error stream, this + error will be written to that stream. Otherwise, this will be thrown as an exception. + + The exception associated with the error. + The error ID associated with the error. This should be a non-localized string. + The error category associated with the error. + The object that was being processed while encountering this error. + The powershell activity context. + + + + In order for an activity to go idle, 'CanInduceIdle' should be true. + + + + + Begins the execution of the activity. + + The NativeActivityContext provided by the workflow. + + + + + Write a progress record fo the current activity + + Workflow engine context + The progress stream to write to + The status string to display + the Progress record type + + + + The method is override-able by the drived classes in case they would like to implement different logic at the end of persistence. + The default behavior would be to schedule the 'Persist' activity if the PSPersist flag is true or Host is asking for it. + + The native activity context of execution engine. + + + + Populates the runspace with user variables from the current context + + + + + + + + Populates the required variables to set in runspace + + + + + + + Populates a parameter from the defaults supplied by the workflow host + + The argument to modify (i.e.: Input, Result, ComputerName, etc) + The activity context to use + The name of the argument + The parameter defaults + + + + Overload this method to implement any command-type specific preparations. + If this command needs any workflow-specific information during its PrepareSession call, + it should be stored in ActivityImplementationContext.WorkflowContext. + + The activity context to use + + + + Updates the ImplementationContext returned from GetPowerShell() to support local execution + against the host's runspace pool. + + The implementation context returned by GetPowerShell() + The activity context to use + + + + The method for derived activities to return a configured instance of System.Management.Automation.PowerShell. + The implementor should have added all of the commands and parameters required to launch their command through + the standard AddCommand() and AddParameter() methods. Derived activites should not manage the Runspace property + directly, as the PSActivity class configures the runspace afterward to enable remote connections. + + The NativeActivityContext for the currently running activity. + A populated instance of Sytem.Management.Automation.PowerShell + The infrastructure takes responsibility for closing and disposing the PowerShell instance returned. + + + + The method for derived activities to customize the runspace of a System.Management.Automation.PowerShell instance + that the runtime has prepared for them. + If the command needs any workflow-specific information during this PrepareSession call, + it should be stored in ActivityImplementationContext.WorkflowContext during the GetCommand preparation phase. + + The ActivityImplementationContext returned by the call to GetCommand. + + + + If an activity needs to load a module before it can execute, override this member + to return the name of that module. + + + + + Retrievs all of the default arguments from the type and its parents. + + All of the default arguments from the type and its parents + + + + Indicates if preference variables need to be updated + + + + + Add the other streams and enqueue the command to be run + + The activity context to use + The powershell activity context. + The activity type. + The prepare session delgate. + This object representing activity. + + + + + + + THREADING CONTRACT: This function is designed to be + lightweight and to run on the Workflow thread when Execute() + is called. When any changes are made to this function the contract + needs to be honored + + + + Initialize a single command for execution. + + + THREADING CONTRACT: This function is designed to be + lightweight and to run on the Workflow thread when Execute() + is called. When any changes are made to this function the + contract needs to be honored + + + + + + + + THREADING CONTRACT: + This function runs on the workflow thread when Execute() + is called for all cases except the remote runspace case + where it runs on a WinRM thread or the connection manager + servicing thread + Therefore this function is designed to be lightweight in + all cases + When any changes are made to this function the contract needs to + be honored + + + + Calls the DoCleanup method of the cleanup activity + + RunCommandsArguments + + THREADING CONTRACT: + This function runs on the workflow thread when Execute() + is called + Therefore this function is designed to be lightweight in + all cases + When any changes are made to this function the contract needs to + be honored + + + + Callback when all connections to the specified computer + are closed + + RunCommandsArguments that the activity + passed int + + THREADING CONTRACT: + The callback will happen on a WinRM thread. Hence the + function needs to be lightweight to release the thread + back to WinRM + + + + + Callback from connection manager + + + + THREADING CONTRACT: + The callback happens either in a WinRM thread or in the + connection manager servicing thread. Therefore any + operations that this thread initiates is supposed to + be very small. Make sure that this contract is maintained + when any changes are made to the function + + + + Sets the $pwd variable in the current runspace + + + + + + + Callback from local runspace provider + + This callback happens in the workflow + thread or a threadpool callback servicing thread. + However there is only one thread for servicing all callbacks and + so all operations have to be small + + + + + + + + THREADING CONTRACT: + This function runs in either a WinRM thread or in the + connection manager servicing thread. Therefore any + operations that this thread initiates is supposed to + be very small. Make sure that this contract is maintained + when any changes are made to the function + + + + + + + + + THREADING CONTRACT: + This function either runs on a thread pool thread, or in the + remote case runs on a WinRM/CM servicing thread. Therefore operations + need to be light so that the thread can be released back quickly + When changes are made this assumption need to be validated + + + + + + + THREADING CONTRACT: + This callback runs in a WinRM thread - in the normal + course of operation i.e unless PowerShell.EndInvoke() throws + an exception, the operations performed on this thread + should be minimal + + + + + + + + THREADING CONTRACT: + This function is designed to be lightweight. It always runs + on a callback thread - which is a threadpool thread + + + + + + + + + false if default values were substituted + + + + + + + + THREADING CONTRACT: + This methods executes on a WinRM thread + + + + + + + + + + THREADING CONTRACT: + This methods executes on a WinRM thread + + + + + Cancel the running activity + + The NativeActivityContext provided by the workflow. + + + + Retrieves the stream and ubiquitous parameter information from the hosting application. + These must be passed in as "Streams" and "UbiquitousParameters", respectively. + + The metadata provided by the hosting application. + + + + The event fired when the PSActivity-derived activity has initialized its its instance + of System.Management.Automation.PowerShell, but has not yet invoked its action. This event + is for diagnostic, tracing, and testing purposes. + + + + + Determine if this activity should be run in or out of process + when run locally/ + + The native activity context for this workflow instance + True if it should be run in process with the workflow engine. + + + + The delegate invoked when an activity is created. + + The PSActivity instance being invoked. + The ActivityCreatedEventArgs associated with this invocation. + + + + Holds the event arguments when a new PSActivity instance is created. + + + + + Creates a new ActivityCreatedEventArgs instance. + + The instance of System.Management.Automation.PowerShell the activity has prepared. + + + + The instance of System.Management.Automation.PowerShell the activity has prepared. + + + + + Holds an instance of System.Management.Automation.PowerShell, and the context it needs to run. + + + + + The instance of System.Management.Automation.PowerShell the activity has prepared. + + + + + Any context required by the command. + + + + + context id. + + + + + DisconnectedRunspaceInstanceId + + + + + DisconnectedRunspaceInstanceId + + + + + The Input stream / collection for the activity. + + + + + The collection to hold the results of the activity. + + + + + The Error stream / collection for the activity. + + + + + The Progress stream / collection for the activity. + + + + + The Verbose stream / collection for the activity. + + + + + The Debug stream / collection for the activity. + + + + + The Warning stream / collection for the activity. + + + + + The Information stream / collection for the activity. + + + + + The computer name to invoke this activity on. + + + + + Defines the credential to use in the remote connection. + + + + + Defines the remoting behavior to use when invoking this activity. + + + + + Defines the number of retries that the activity will make to connect to a remote + machine when it encounters an error. The default is to not retry. + + + + + The port to use in a remote connection attempt. The default is: + HTTP: 5985, HTTPS: 5986. + + + + + Determines whether to use SSL in the connection attempt. The default is false. + + + + + Determines whether to allow redirection by the remote computer. The default is false. + + + + + Defines the remote application name to connect to. The default is "wsman". + + + + + Defines the remote configuration name to connect to. The default is "Microsoft.PowerShell". + + + + + Defines the fully-qualified remote URI to connect to. When specified, the PSComputerName, + PSApplicationName, PSConfigurationName, and PSPort are not used. + + + + + Defines the authentication type to be used in the remote connection. + + + + + Defines the certificate thumbprint to be used in the remote connection. + + + + + Defines any session options to be used in the remote connection. + + + + + Forces the activity to return non-serialized objects. Resulting objects + have functional methods and properties (as opposed to serialized versions + of them), but will not survive persistence when the Workflow crashes or is + persisted. + + + + + Forces the activity to not call the persist functionality, which will be responsible for + persisting the workflow state onto the disk. + + + + + Determines whether to append output to Result. + + + + + Determines whether to merge the error data to the output stream + + + + + Defines the maximum amount of time, in seconds, that this activity may run. + The default is unlimited. + + + + + Defines the delay, in seconds, between connection retry attempts. + The default is one second. + + + + + Defines the number of retries that the activity will make when it encounters + an error during execution of its action. The default is to not retry. + + + + + Defines the delay, in seconds, between action retry attempts. + The default is one second. + + + + + Defines the PSProgressMessage. + + + + + The connection info to use for this command (may be null) + + + + + This the list of module names (or paths) that are required to run this Activity successfully. + The default is null. + + + + + The paththat the workflow was imported from. + + + + + Determines whether to emit verbose output of the activity. + + + + + Determines whether to emit debug output of the activity. + + + + + Determines whether to emit whatif output of the activity. + + + + + Determines how errors should be handled by the activity. + + + + + Determines how warnings should be handled by the activity. + + + + + Determines how information messages should be handled by the activity. + + + + + Policy for activity host that will execute this activity + + + + + Specifies the authentication level to be used with the WMI connection. Valid values are: + -1: Unchanged + 0: Default + 1: None (No authentication in performed.) + 2: Connect (Authentication is performed only when the client establishes a relationship with the application.) + 3: Call (Authentication is performed only at the beginning of each call when the application receives the request.) + 4: Packet (Authentication is performed on all the data that is received from the client.) + 5: PacketIntegrity (All the data that is transferred between the client and the application is authenticated and verified.) + 6: PacketPrivacy (The properties of the other authentication levels are used, and all the data is encrypted.) + + + + + Specifies the impersonation level to use. Valid values are: + 0: Default (reads the local registry for the default impersonation level , which is usually set to "3: Impersonate".) + 1: Anonymous (Hides the credentials of the caller.) + 2: Identify (Allows objects to query the credentials of the caller.) + 3: Impersonate (Allows objects to use the credentials of the caller.) + 4: Delegate (Allows objects to permit other objects to use the credentials of the caller.) + + + + + Enables all the privileges of the current user before the command makes the WMI call. + + + + + Specifies the authority to use to authenticate the WMI connection. You can specify + standard NTLM or Kerberos authentication. To use NTLM, set the authority setting + to ntlmdomain:"DomainName", where "DomainName" identifies a valid NTLM domain name. + To use Kerberos, specify kerberos:"DomainName>\ServerName". You cannot include + the authority setting when you connect to the local computer. + + + + + When used with the Class parameter, this parameter specifies the WMI repository namespace + where the referenced WMI class is located. When used with the List parameter, it specifies + the namespace from which to gather WMI class information. + summary> + + + + Specifies the preferred locale for WMI objects. Specify the value of the Locale + parameter as an array in the MS_"LCID" format in the preferred order . + + + + + CIM Sessions to use for this activity. + + + + + Perform any cleanup activities needed by this activity implementation + + + + + Defining resuming extension. + + + + + Get all additional extensions. + + Retruns no extensions. + + + + Set the instance of the worfkow. + + The workflow instance proxy. + + + + Begin resuming book mark. + + The bookmark where it will be resumed. + The value which need to be passed to the bookmark. + The call back function when resuming the bookmark. + The state of the aysn call. + Returns the result of async call. + + + + End resuming bookmark. + + The result of asyc all. + Returns the bookmark resumption result. + + + + Stores information about an activity argument + + + + + The name of the argument. + + + + + The actual argument. + + + + + Abstract base contining the common members and invocation code for the WMI cmdlets. + + + + + The computer name to invoke this activity on. + + + + + Defines the credential to use in the remote connection. + + + + + Specifies the authentication level to be used with the WMI connection. Valid values are: + -1: Unchanged + 0: Default + 1: None (No authentication in performed.) + 2: Connect (Authentication is performed only when the client establishes a relationship with the application.) + 3: Call (Authentication is performed only at the beginning of each call when the application receives the request.) + 4: Packet (Authentication is performed on all the data that is received from the client.) + 5: PacketIntegrity (All the data that is transferred between the client and the application is authenticated and verified.) + 6: PacketPrivacy (The properties of the other authentication levels are used, and all the data is encrypted.) + + + + + Specifies the impersonation level to use. Valid values are: + 0: Default (reads the local registry for the default impersonation level , which is usually set to "3: Impersonate".) + 1: Anonymous (Hides the credentials of the caller.) + 2: Identify (Allows objects to query the credentials of the caller.) + 3: Impersonate (Allows objects to use the credentials of the caller.) + 4: Delegate (Allows objects to permit other objects to use the credentials of the caller.) + + + + + Enables all the privileges of the current user before the command makes the WMI call. + + + + + Specifies the authority to use to authenticate the WMI connection. You can specify + standard NTLM or Kerberos authentication. To use NTLM, set the authority setting + to ntlmdomain:"DomainName", where "DomainName" identifies a valid NTLM domain name. + To use Kerberos, specify kerberos:"DomainName>\ServerName". You cannot include + the authority setting when you connect to the local computer. + + + + + When used with the Class parameter, this parameter specifies the WMI repository namespace + where the referenced WMI class is located. When used with the List parameter, it specifies + the namespace from which to gather WMI class information. + summary> + + + + Specifies the preferred locale for WMI objects. Specify the value of the Locale + parameter as an array in the MS_"LCID" format in the preferred order . + + + + + Generic version of the function to handle value types + + THe type of the intende argument + + + + + + + Sets to execute the command that was passed in. + + + + + + + Perform necessary steps to prepare the WMI commands + + The activity context to use + + + + Implementation of ICommandRuntime for running the WMI cmdlets in + workflow without PowerShell. + + + + + Constructs an instance of the default ICommandRuntime object + that will write objects into the arraylist that was passed. + + + + + THe error record stream + + + + + The progress record stream + + + + + The verbose record stream + + + + + The warning record stream + + + + + The debug output stream + + + + + The information record stream + + + + + Return the instance of PSHost - null by default. + + + + + Implementation of WriteDebug - just discards the input. + + Text to write + + + + Default implementation of WriteError - if the error record contains + an exceptin then that exception will be thrown. If not, then an + InvalidOperationException will be constructed and thrown. + + Error record instance to process + + + + Default implementation of WriteObject - adds the object to the arraylist + passed to the objects constructor. + + Object to write + + + + Write objects to the output collection + + Object to write + If true, the collection is enumerated, otherwise + it's written as a scalar. + + + + + Write a progress record + + progress record to write. + + + + Write a progress record, ignore the id field + + Source ID to write for + record to write. + + + + Write a verbose record + + Text to write. + + + + Write a warning record + + Text to write. + + + + Write a information record + + Record to write. + + + + Write command detail info to the eventlog. + + Text to write. + + + + Default implementation - always returns true. + + ignored + true + + + + Default implementation - always returns true. + + ignored + ignored + true + + + + Default implementation - always returns true. + + ignored + ignored + ignored + true + + + + Default implementation - always returns true. + + ignored + ignored + ignored + ignored + true + + + + Default implementation - always returns true. + + ignored + ignored + true + + + + Default implementation - always returns true. + + ignored + ignored + ignored + ignored + true + + + + Returns true if a transaction is available and active. + + + + + Gets an object that surfaces the current PowerShell transaction. + When this object is disposed, PowerShell resets the active transaction + + + + + Implementation of the dummy default ThrowTerminatingError API - it just + does what the base implementation does anyway - rethrow the exception + if it exists, otherwise throw an invalid operation exception. + + The error record to throw + + + + Suspends the current workflow. + + + + + Returns true if the activity can induce an idle. + + + + + Invokes the activity + + The activity context. + True if the given argument is set. + + + + Base class for PowerShell-based workflow activities + + + + + The computer name to invoke this activity on. + + + + + Defines the credential to use in the remote connection. + + + + + Defines the remoting behavior to use when invoking this activity. + + + + + Defines the number of retries that the activity will make to connect to a remote + machine when it encounters an error. The default is to not retry. + + + + + Defines the delay, in seconds, between connection retry attempts. + The default is one second. + + + + + The port to use in a remote connection attempt. The default is: + HTTP: 5985, HTTPS: 5986. + + + + + Determines whether to use SSL in the connection attempt. The default is false. + + + + + Determines whether to allow redirection by the remote computer. The default is false. + + + + + Defines the remote application name to connect to. The default is "wsman". + + + + + Defines the remote configuration name to connect to. The default is "Microsoft.PowerShell". + + + + + Defines the fully-qualified remote URI to connect to. When specified, the PSComputerName, + PSApplicationName, PSConfigurationName, and PSPort are not used. + + + + + Defines the authentication type to be used in the remote connection. + + + + + Defines the certificate thumbprint to be used in the remote connection. + + + + + Defines any session options to be used in the remote connection. + + + + + Declares whether this command supports its own custom remoting. + Commands that support their own custom remoting should return TRUE + from this property, and use the PSComputerName parameter as required + when the 'PSRemotingBehavior' argument is set to 'Custom'. + + + + + Returns TRUE if the PSComputerName argument has been specified, and + contains at least one target. + + The workflow NativeActivityContext + + + + + Prepare commands that use PSRP for remoting... + + The activity context to use + + + + Creates Powershell instance and adds the command to it + + The activity context to use + The wsman connection to use + The list of commands + + + + Base class for activities that can use WsMan directly to contact ta managed node. + + + + + The computer name to invoke this activity on. + + + + + Defines the credential to use in the remote connection. + + + + + Defines the authentication type to be used in the remote connection. + + + + + Defines the certificate thumbprint to be used in the remote connection. + + + + + Defines the number of retries that the activity will make to connect to a remote + machine when it encounters an error. The default is to not retry. + + + + + Defines the delay, in seconds, between connection retry attempts. + The default is one second. + + + + + Defines the resource URI used by the CIM cmdlet. + + + + + The port to use in a remote connection attempt. The default is: + HTTP: 5985, HTTPS: 5986. + + + + + Determines whether to use SSL in the connection attempt. The default is false. + + + + + Defines any session options to be used in the remote connection. + + + + + CIM Sessions to use for this activity. + + + + + Contains the powershell text defining the mode for this command. + + + + + Returns TRUE if the PSComputerName argument has been specified, and + contains at least one target. + + The workflow NativeActivityContext + + + + + Prepare commands that use CIM for remoting... + + The activity context to use + + + + Base class for the built-in generic CIM cmdlets. + + + + + For these cmdlets, there is no defining text. + + + + + The .NET type that implements the associated cmdlet + + + + + Provides additional functionalty for CIM activity implementations. + + + + + Create an instance of the CIM activity implementation class + + + + + + + + + + + + + + + + + Gets the scriptblock that implements this activity's command + + + + + Defines the resource URI used by the CIM cmdlet. + + + + + The session specified for this activity + + + + + The session options used to create the session for this activity... + + + + + The name of the computer this activity targets + + + + + Base64 encoded string defining this module... + + + + + Return the session to the session manager + + + + + Class to manage reuse of CIM connections. + + + + + Get a CIM session for the target computer + + + + + + + + + + + + + + Return a session to the session table. + + + + + + + Gets the global instance of the CIM session manager + + + + + + Class the describes an activity host arguments + + + + + PSActivityHostArguments + + + + + + Gets and sets Streams + + + + + Gets Errors + + + + + Get failed + + + + + Class the describes an activity host policy + + + + + Collection of modules that an activity is + dependent upon + + + + + Collection of variables that an activity is + dependent upon + + + + + Activity host manager interface. This interface can be + used to implement various activity hosts + + + + + Runtime should be provided for excessing the runtime activity mode + + + + + Identifies whether the specified activity should run in the activity + host or in-proc + + activity that needs to be verified + true, if the activity should run in the activity + host + false otherwise + + + + This class will be used for disconnected execution where the + Job Id and bookmark will be used resume the execution of workflow + after the completion of activity controller work. + + + + + Default Constructor + + + + + + StartResumablePSCommand + + + + + + + + + + + StopResumablePSCommand + + + + + + This property indentifies if the Activity controller is running in disconnected mode + or not. If it is running in disconnected mode then all the output and data streams will be + provied as new objects. + + + + + Interface that defines the PowerShell workflow host + Workflow host defines the set of services that are + made available to an activity + + + + + The activity host manager to use for processing + activities + + + + + The provider to be used for obtaining runspaces + + + + + The provider used to obtain local in-proc + runspaces + + + + + The provider which will supply an unbounded number of + runspaces - to be used in PowerShell value + + + + + Class that provides a runspace with the specified options + and constraints + + + + + Begin for obtaining a runspace for the specified ConnectionInfo + + connection info to be used for remote connections + number of times to retry + optional user defined callback + optional user specified state + time in milliseconds before the next retry has to be attempted + + async result + + + + End for obtaining a runspace for the specified connection info + + async result to end on + + remote runspace to invoke commands on + + + + Get runspace for the specified connection info to be + used for running commands + + connection info to use + retry count + retry interval in ms + remote runspace to use + + + + Release the runspace once the activity is finished using the same + + runspace to release + + + + Callback to indicate that this runspace been initiated with + a pipeline and can be disconnected + + runspace that needs to be marked as + ready for disconnect + + + + Request a cleanup to the destination specified in the + connection info. This means no runspaces will be held + to the specified connection info. + + connection info to which + cleanup is desired + callback to invoke + caller specified state + + + + Checks to see if the provider intentionally disconnected a runspace + or it went into disconnected state due to network issues + + runspace that needs to be checked + true - when intentionally disconnected + false - disconnected due to network issues + + + + Default workflow host implementation + + + + + The activity host manager to use for processing + activities + + + + + The provider to be used for obtaining runspaces + + + + + + + + + + return the singleton instance + + + + + Base activity for cleanup activities + + + + + Creates and returns an empty powershell + + activity context + A new activity implementation context + + + + Method that needs to be overrided to perform the actual + cleanup action + + RunCommandsArguments + callback to call when cleanup + is done + The signature forces this method to be internal + + + + Activity to cleanup all Runspaces (PSRP connections) to + a remote machine + + + + + Provides access to the Authentication parameter. + + + + + Set the display name of the activity + + + + + Creates and returns an empty powershell + + activity context + A new activity implementation context + + + + Method that needs to be overrided to perform the actual + cleanup action + + RunCommandsArguments + callback to call when cleanup + is done + The signature forces this method to be internal + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The activity failed because the connection to the remote computer '{0}' was disconnected.. + + + + + Looks up a localized string similar to The workflow cannot be started because the compiled activity for the workflow was not found. Cache the workflow definition by calling DefinitionCache.Instance.Add.. + + + + + Looks up a localized string similar to Could not find an activity for the command name '{0}'.. + + + + + Looks up a localized string similar to Activity-Specific Parameters. + + + + + Looks up a localized string similar to The argument to -PSParameterCollection can not contain AsJob, JobName, InputObject or PSParameterCollection as entries. Remove the extra entries and try again.. + + + + + Looks up a localized string similar to The async result is already finished. A finished operation cannot be called twice.. + + + + + Looks up a localized string similar to An End operation has already been called for this async result.. + + + + + Looks up a localized string similar to The IAsyncResult specified is not valid.. + + + + + Looks up a localized string similar to Cannot remove the PSWorkflowJob without removing its parent. Please remove the ContainerParentJob that contains this PSWorkflowJob.. + + + + + Looks up a localized string similar to Cannot supply both connection URI and computer name.. + + + + + Looks up a localized string similar to The '{0}' cmdlet does not implement the InputObject property.. + + + + + Looks up a localized string similar to Compilation error while building dependent workflows. For details see {0}.. + + + + + Looks up a localized string similar to Completed. + + + + + Looks up a localized string similar to Connectivity. + + + + + Looks up a localized string similar to The PSCredential parameter is supported only when the PSComputerName or PSConnectionUri parameters are used. The PSCredential parameter has been ignored.. + + + + + Looks up a localized string similar to A credential cannot be specified when NegotiateWithImplicitCredential is specified as the value of Authentication.. + + + + + Looks up a localized string similar to A CertificateThumbprint cannot be specified when Credential is specified.. + + + + + Looks up a localized string similar to This activity does not support custom remote management.. + + + + + Looks up a localized string similar to Workflow variables cannot be modified inside the debugger. The command or script did not run because it attempted to modify variable '${0}'. + . + + + + + Looks up a localized string similar to The debugger Quit command has stopped the workflow job.. + + + + + Looks up a localized string similar to The activity cannot continue running because an error occurred while importing dependent module(s) '{0}' specified for activity '{1}'. To fix this problem, verify that the module exists on the computer. If the module is not required, remove references to the module from the activity.. + + + + + Looks up a localized string similar to A duplicate instance ID was found. The instance ID already exists.. + + + + + Looks up a localized string similar to An elapsed time-out occurred, and the workflow was stopped.. + + + + + Looks up a localized string similar to The workflow job cannot be suspended because it does not include checkpoints (also called persistence points). To make the workflow suspendable, use the PSPersist parameter of the workflow. To suspend the workflow forcibly, use the Force parameter of the Suspend-Job cmdlet.. + + + + + Looks up a localized string similar to An error occurred while trying to run the activity.. + + + + + Looks up a localized string similar to An exception has occurred while validating the workflow.. + + + + + Looks up a localized string similar to Workflow complete.. + + + + + Looks up a localized string similar to Failed. + + + + + Looks up a localized string similar to The force-suspend time-out period cannot be zero or null. Specify a time-out period that is greater than zero.. + + + + + Looks up a localized string similar to Importing workflow from file '{0}'.. + + + + + Looks up a localized string similar to Input and Output. + + + + + Looks up a localized string similar to The OwnerId of the instance is mismatched.. + + + + + Looks up a localized string similar to The Version of the instance is mismatched.. + + + + + Looks up a localized string similar to The activity is not valid: {0}. + + + + + Looks up a localized string similar to The async result from the file provider is not valid.. + + + + + Looks up a localized string similar to The specified IAsyncResultObject is not valid.. + + + + + Looks up a localized string similar to The bookmark '{0}' is not valid; it does not exist in the workflow engine.. + + + + + Looks up a localized string similar to The specified ActivityImplementationContext is not of type CimActivityImplementationContext.. + + + + + Looks up a localized string similar to The label is not valid: The label '{0}' doesn't exist.. + + + + + Looks up a localized string similar to The specified runspace is not valid.. + + + + + Looks up a localized string similar to The workflow definition has been recycled, because the workflow definition cache limit of {0} has been reached. Import the workflow or module again, and then retry the operation.. + + + + + Looks up a localized string similar to Workflow files must have a file name extension of .xaml or .dll, not {0}. If you are using a workflow with a file name extension of .dll, then you must pass only one assembly.. + + + + + Looks up a localized string similar to The job cannot be started. The job state must be NotStarted and the job can only be started once.. + + + + + Looks up a localized string similar to The job could not be removed because a job matching the specified criteria could not be found.. + + + + + Looks up a localized string similar to The job has been added to the queue to be resumed.. + + + + + Looks up a localized string similar to Stop operation is in progress.. + + + + + Looks up a localized string similar to The debugger Quit command has stopped the workflow job.. + + + + + Looks up a localized string similar to Suspend operation is in progress.. + + + + + Looks up a localized string similar to A parameter element specified in the configuration does not have a Name attribute. . + + + + + Looks up a localized string similar to The workflow job could not be created because the JobInvocationInfo does not contain a JobDefinition. Initialize the JobInvocationInfo with a JobDefinition to create a workflow job.. + + + + + Looks up a localized string similar to The workflow job could not be created because the JobInvocationInfo specifies a type other than WorkflowJobSourceAdapter. Correct the JobSourceAdapter type or verify that the correct type is being used.. + + + + + Looks up a localized string similar to No workflows were found in the specified path '{0}'.. + + + + + Looks up a localized string similar to The '{0}' language mode is not supported. Supported language modes are FullLanguage and ConstrainedLanguage.. + + + + + Looks up a localized string similar to A workflow instance does not exist for the specified Instance ID.. + + + + + Looks up a localized string similar to Null or empty workflow is provided.. + + + + + Looks up a localized string similar to "Internal Error: The object is marked for restricted construction, but another type is constructing it elsewhere. + Target Type:{0} + Allowed Creator Type: {1} + Actual Creator Type: {2} + Method: {3}. + + + + + Looks up a localized string similar to Only one computer name is allowed.. + + + + + Looks up a localized string similar to The argument to -PSParameterCollection can only contain one entry where PSComputerName is set to '*'. Remove the extra entries and try again.. + + + + + Looks up a localized string similar to The syntax of a parallel script block is 'Parallel { <commands> }'. + + + + + Looks up a localized string similar to The PSParameterCollection parameter can only be used with AsJob, JobName and InputObject. Move the additional parameters to within the PSParameterCollection argument and try again.. + + + + + Looks up a localized string similar to Parameter {0} has been specified more than once. Remove multiple references to this parameter from the session configuration, and then try again.. + + + + + Looks up a localized string similar to The value of the PersistencePath parameter {0} exceeds the maximum allowed length. The persistence path should not be greater than {1} characters.. + + + + + Looks up a localized string similar to The Persistence store has reached its maximum size. Free up storage space by removing completed jobs.. + + + + + Looks up a localized string similar to "Cannot process the debugger command until the debugger is stopped.". + + + + + Looks up a localized string similar to {0} line:{1} char:{2}. + + + + + Looks up a localized string similar to Value {0} is out of the allowed range. Allowed range is from {1} to {2}.. + + + + + Looks up a localized string similar to Removing workflow instance from the table.. + + + + + Looks up a localized string similar to The workflow could not be resumed.. + + + + + Looks up a localized string similar to Retrying activity action: attempt {0}.. + + + + + Looks up a localized string similar to Retrying activity connection: attempt {0} of {1}.. + + + + + Looks up a localized string similar to Running. + + + + + Looks up a localized string similar to The activity has exceeded the specified maximum running time of {0} seconds.. + + + + + Looks up a localized string similar to Because a running time-out has occurred, the workflow has been stopped.. + + + + + Looks up a localized string similar to The input objects cannot be serialized. Serialized data is required to suspend and resume workflows. To resolve the error, verify that the values of all variables and parameters are of types that can be serialized.. + + + + + Looks up a localized string similar to The input objects cannot be serialized. This might prevent the workflow from being resumed correctly. The serialization error might indicate a problem with the data contract that is defined at the type or attribute level. To resolve the problem, verify that the values of all variables and parameters can be serialized. Serialization error is: {0}.. + + + + + Looks up a localized string similar to Shutdown request is in progress, workflow is suspending.. + + + + + Looks up a localized string similar to This PSWorkflowJob was recovered from another session in a suspended state. This can indicate that the workflow was interrupted by a process failure, or a system restart. Run Resume-Job to try resuming the workflow.. + + + + + Looks up a localized string similar to Suspend could not be completed.. + + + + + Looks up a localized string similar to The workflow '{0}' could not be started: {1}. + + + + + Looks up a localized string similar to Unblock is not a supported operation on a PSWorkflowJob.. + + + + + Looks up a localized string similar to The workflow job could not be created because the JobInvocationInfo was not properly initialized. Initialize the JobInvocationInfo with workflow information.. + + + + + Looks up a localized string similar to Parameters defined for workflow functions do not support ValueFromPipeline. Remove this attribute and import or define the workflow again.. + + + + + Looks up a localized string similar to A parameter element specified in the configuration does not have a Value attribute. . + + + + + Looks up a localized string similar to This workflow job cannot be suspended because there are no checkpoints (also called persistence points) in the workflow. To make the workflow job suspendable, add checkpoints to the workflow. + + For more information about how to add checkpoints, see the help topics for Windows PowerShell Workflow.. + + + + + Looks up a localized string similar to Workflows cannot call workflows on this platform.. + + + + + Looks up a localized string similar to This workflow is already loaded.. + + + + + Looks up a localized string similar to One or more workflows that are part of the specified job could not be removed.. + + + + + Looks up a localized string similar to The workflow job cannot be resumed, either because persistence data could not be saved completely, or saved persistence data has been corrupted. You must restart the workflow.. + + + + + Looks up a localized string similar to The workflow instance state file does not exist.. + + + + + Looks up a localized string similar to The workflow name "{0}" is not a valid workflow. Specify a valid workflow name and then try the command again.. + + + + + Looks up a localized string similar to The workflow is not running. The current state of the workflow instance is {0}.. + + + + + Looks up a localized string similar to The workflow instance is not yet loaded.. + + + + + Looks up a localized string similar to The provided XAML cannot be null.. + + + + + Looks up a localized string similar to Cannot load the workflow. Only signed in-box XAML-based workflows or script-based workflows are supported in the current language mode.. + + + + diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/System.Management.Automation.dll b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/System.Management.Automation.dll new file mode 100644 index 0000000..7cc8aa9 Binary files /dev/null and b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/System.Management.Automation.dll differ diff --git a/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/System.Management.Automation.xml b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/System.Management.Automation.xml new file mode 100644 index 0000000..e0207d0 --- /dev/null +++ b/packages/Microsoft.PowerShell.5.1.ReferenceAssemblies.1.0.0/lib/net461/System.Management.Automation.xml @@ -0,0 +1,157910 @@ + + + + System.Management.Automation + + + + + Exposes the Children noun of the Cmdlet Providers to the Cmdlet base class. The methods of this class + use the providers to perform operations. + + + + + Hide the default constructor since we always require an instance of SessionState + + + + + Constructs a facade over the "real" session state API + + + + An instance of the cmdlet that this class is acting as a facade for. + + + + + + Constructs a facade over the "real" session state API + + + + An instance of the "real" session state. + + + + If is null. + + + + + + Gets the child items of the container at the given path. + + + + The path to the item to retrieve. It may be a drive or provider-qualified path and may include + glob characters. + + + + If true, gets all the children in all the sub-containers of the specified + container. If false, only gets the immediate children of the specified + container. + + + + The children of the container at the specified path. The type of the objects returned are + determined by the provider that supports the given path. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the child items of the container at the given path(s). + + + + The path(s) to the item(s) to retrieve. They may be drive or provider-qualified paths and may include + glob characters. + + + + If true, gets all the children in all the sub-containers of the specified + container. If false, only gets the immediate children of the specified + container. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The children of the container at the specified path. The type of the objects returned are + determined by the provider that supports the given path. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the child items of the container at the given path(s). + + + + The path(s) to the item(s) to retrieve. They may be drive or provider-qualified paths and may include + glob characters. + + + + If true, gets all the children in all the sub-containers of the specified + container. If false, only gets the immediate children of the specified + container. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The children of the container at the specified path. The type of the objects returned are + determined by the provider that supports the given path. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the child items of the container at the given path. + + + + The path to the item to retrieve. It may be a drive or provider-qualified path and may include + glob characters. + + + + If true, gets all the children in all the sub-containers of the specified + container. If false, only gets the immediate children of the specified + container. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + The context under which the command is running. + + + + Nothing. The children of the container at the specified path are written to the context. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the get-childitem cmdlet. + + + + The path to the item if it was specified on the command line. + + + + If true, gets all the children in all the sub-containers of the specified + container. If false, only gets the immediate children of the specified + container. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the child names of the container at the given path. + + + + The path to the item to retrieve. It may be a drive or provider-qualified path and may include + glob characters. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + If true, gets all the relative paths of all the children + in all the sub-containers of the specified + container. If false, only gets the immediate child names of the specified + container. + + + + The children of the container at the specified path. The type of the objects returned are + determined by the provider that supports the given path. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the child names of the container at the given path. + + + + The path(s) to the item(s) to retrieve. They may be drive or provider-qualified paths and may include + glob characters. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + If true, gets all the relative paths of all the children + in all the sub-containers of the specified + container. If false, only gets the immediate child names of the specified + container. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The children of the container at the specified path. The type of the objects returned are + determined by the provider that supports the given path. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the child names of the container at the given path. + + + + The path(s) to the item(s) to retrieve. They may be drive or provider-qualified paths and may include + glob characters. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + If true, gets all the relative paths of all the children + in all the sub-containers of the specified + container. If false, only gets the immediate child names of the specified + container. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The children of the container at the specified path. The type of the objects returned are + determined by the provider that supports the given path. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the child names of the container at the given path. + + + + The path to the item to retrieve. It may be a drive or provider-qualified path and may include + glob characters. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + If true, gets all the relative paths of all the children + in all the sub-containers of the specified + container. If false, only gets the immediate child names of the specified + container. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + The context under which the command is running. + + + + Nothing. The names of the children of the specified container are written to the context. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the get-childitem -name cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Determines if an item at the given path has children. + + + + The path to the item to determine if it has children. It may be a drive or provider-qualified path and may include + glob characters. + + + + True if the item at the specified path has children. False otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Determines if an item at the given path has children. + + + + The path to the item to determine if it has children. It may be a drive or provider-qualified path and may include + glob characters. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + True if the item at the specified path has children. False otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Determines if an item at the given path has children. + + + + The path to the item to determine if it has children. It may be a drive or provider-qualified path and may include + glob characters. + + + + The context under which the command is running. + + + + True if the item at the specified path has children. False otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + This enum determines which types of containers are returned from some of + the provider methods. + + + + + + Only containers that match the filter(s) are returned. + + + + + All containers are returned even if they don't match the filter(s). + + + + + Exposes the Cmdlet Family Providers to the Cmdlet base class. The methods of this class + use the providers to perform operations. + + + + + Hide the default constructor since we always require an instance of SessionState + + + + + Constructs a facade over the "real" session state API + + + + An instance of the cmdlet. + + + + If is null. + + + + + + Constructs a facade over the "real" session state API + + + + An instance of the cmdlet. + + + + + + Gets the object that exposes the verbs for the item noun for Cmdlet Providers + + + + + Gets the object that exposes the verbs for the childItem noun for Cmdlet Providers + + + + + Gets the object that exposes the verbs for the content noun for Cmdlet Providers + + + + + Gets the object that exposes the verbs for the property noun for Cmdlet Providers + + + + + Gets the object that exposes the verbs for the SecurityDescriptor noun for Cmdlet Providers + + + + + An interface that a + or + must implement to indicate that it has dynamic parameters. + + + Dynamic parameters allow a + or + to define additional parameters based on the value of + the formal arguments. For example, the parameters of + "set-itemproperty" for the file system provider vary + depending on whether the target object is a file or directory. + + + + + + + + + Returns an instance of an object that defines the + dynamic parameters for this + or . + + + This method should return an object that has properties and fields + decorated with parameter attributes similar to a + or . + These attributes include , + , argument transformation and + validation attributes, etc. + + Alternately, it can return a + + instead. + + The or + should hold on to a reference to the object which it returns from + this method, since the argument values for the dynamic parameters + specified by that object will be set in that object. + + This method will be called after all formal (command-line) + parameters are set, but before + is called and before any incoming pipeline objects are read. + Therefore, parameters which allow input from the pipeline + may not be set at the time this method is called, + even if the parameters are mandatory. + + + + + Type used to define a parameter on a cmdlet script of function that + can only be used as a switch. + + + + + Returns true if the parameter was specified on the command line, false otherwise. + + True if the parameter was specified, false otherwise + + + + Implicit cast operator for casting SwitchParameter to bool. + + The SwitchParameter object to convert to bool + The corresponding boolean value. + + + + Implicit cast operator for casting bool to SwitchParameter. + + The bool to convert to SwitchParameter + The corresponding boolean value. + + + + Explicit method to convert a SwitchParameter to a boolean value. + + The boolean equivalent of the SwitchParameter + + + + Construct a SwitchParameter instance with a particular value. + + + If true, it indicates that the switch is present, flase otherwise. + + + + + Static method that returns a instance of SwitchParameter that indicates that it is present. + + An instance of a switch parameter that will convert to true in a boolean context + + + + Compare this switch parameter to another object. + + An object to compare against + True if the objects are the same value. + + + + Returns the hash code for this switch parameter. + + The hash code for this cobject. + + + + Implement the == operator for switch parameters objects. + + first object to compare + second object to compare + True if they are the same + + + + Implement the != operator for switch parameters + + first object to compare + second object to compare + True if they are different + + + + Implement the == operator for switch parameters and booleans. + + first object to compare + second object to compare + True if they are the same + + + + Implement the != operator for switch parameters and booleans. + + first object to compare + second object to compare + True if they are different + + + + Implement the == operator for bool and switch parameters + + first object to compare + second object to compare + True if they are the same + + + + Implement the != operator for bool and switch parameters + + first object to compare + second object to compare + True if they are different + + + + Returns the string representation for this object + + The string for this object. + + + + Interfaces that cmdlets can use to build script blocks and execute scripts. + + + + + If an error occurred while executing the cmdlet, this will be set to true. + + + + + Returns a string with all of the variable and expression substitutions done. + + The string to expand. + + The expanded string. + + Thrown if a parse exception occurred during subexpression substitution. + + + + + + + + + + + + + Returns a command info for a given command name and type, using the specified arguments + to resolve dynamic parameters. + + The command name to search for + The command type to search for + The command arguments used to resolve dynamic parameters + A CommandInfo result that represents the resolved command + + + + This event handler is called when a command is not found. + If should have a single string parameter that is the name + of the command and should return a CommandInfo object or null. By default + it will search the module path looking for a module that exports the + desired command. + + + + + This event handler is called before the command lookup is done. + If should have a single string parameter that is the name + of the command and should return a CommandInfo object or null. + + + + + This event handler is after the command lookup is done but before the event object is + returned to the caller. This allows things like interning scripts to work. + If should have a single string parameter that is the name + of the command and should return a CommandInfo object or null. + + + + + Returns the CmdletInfo object that corresponds to the name argument + + The name of the cmdlet to look for + The cmdletInfo object if found, null otherwise + + + + Returns the CmdletInfo object that corresponds to the name argument + + The name of the cmdlet to look for + The execution context instance to use for lookup + The cmdletInfo object if found, null otherwise + + + + Get the cmdlet info using the name of the cmdlet's implementing type. This bypasses + session state and retrieves the command directly. Note that the help file and snapin/module + info will both be null on returned object. + + the type name of the class implementing this cmdlet + CmdletInfo for the cmdlet if found, null otherwise + + + + Returns a list of all cmdlets... + + + + + + Returns all cmdlets whose names match the pattern... + + A list of CmdletInfo objects... + + + + Searches for PowerShell commands, optionally using wildcard patterns + and optionally return the full path to applications and scripts rather than + the simple command name. + + The name of the command to use + If true treat the name as a pattern to search for + If true, return the full path to scripts and applications + A list of command names... + + + + Searches for PowerShell commands, optionally using wildcard patterns + + The name of the command to use + Type of commands to support + If true treat the name as a pattern to search for + Collection of command names... + + + + Executes a piece of text as a script synchronously. + + The script text to evaluate + A collection of MshCobjects generated by the script. + Thrown if there was a parsing error in the script. + Represents a script-level exception + + + + + Executes a piece of text as a script synchronously. + + The script text to evaluate + The arguments to the script + A collection of MshCobjects generated by the script. + Thrown if there was a parsing error in the script. + Represents a script-level exception + + + + + + + + + + + + + + Invoke a scriptblock in the current runspace, controlling if it gets a new scope. + + If true, a new scope will be created + The scriptblock to execute + Optionall input to the command + Arguments to pass to the scriptblock + The result of the evaluation + + + + Executes a piece of text as a script synchronously using the options provided. + + The script to evaluate. + If true, evaluate the script in its own scope. + If false, the script will be evaluated in the current scope i.e. it will be "dotted" + If set to Output, all output will be streamed + to the output pipe of the calling cmdlet. If set to None, the result will be returned + to the caller as a collection of PSObjects. No other flags are supported at this time and + will result in an exception if used. + The list of objects to use as input to the script. + The array of arguments to the command. + A collection of MshCobjects generated by the script. This will be + empty if output was redirected. + Thrown if there was a parsing error in the script. + Represents a script-level exception + Thrown if any redirect other than output is attempted + + + + + Compile a string into a script block. + + The source text to compile + The compiled script block + + + + + Defines members used by Cmdlets. + All Cmdlets must derive from + . + + + Do not attempt to create instances of + + or its subclasses. + Instead, derive your own subclasses and mark them with + , + and when your assembly is included in a shell, the Engine will + take care of instantiating your subclass. + + + Defines members and overrides used by Cmdlets. + All Cmdlets must derive from . + + + There are two ways to create a Cmdlet: by deriving from the Cmdlet base class, and by + deriving from the PSCmdlet base class. The Cmdlet base class is the primary means by + which users create their own Cmdlets. Extending this class provides support for the most + common functionality, including object output and record processing. + If your Cmdlet requires access to the MSH Runtime (for example, variables in the session state, + access to the host, or information about the current Cmdlet Providers,) then you should instead + derive from the PSCmdlet base class. + The public members defined by the PSCmdlet class are not designed to be overridden; instead, they + provided access to different aspects of the MSH runtime. + In both cases, users should first develop and implement an object model to accomplish their + task, extending the Cmdlet or PSCmdlet classes only as a thin management layer. + + + + + + The name of the parameter set in effect. + + the parameter set name + + + + Contains information about the identity of this cmdlet + and how it was invoked. + + + + + + If the cmdlet declares paging support (via ), + then property contains arguments of the paging parameters. + Otherwise property is null. + + + + + Provides access to utility routines for executing scripts + and creating script blocks. + + Returns an object exposing the utility routines. + + + + Gets the host interaction APIs. + + + + + Gets the instance of session state for the current runspace. + + + + + Gets the event manager for the current runspace. + + + + + Repostiory for jobs + + + + + Manager for JobSourceAdapters registered. + + + + + Repository for runspaces + + + + + Gets the instance of the provider interface APIs for the current runspace. + + + + + + + + + + + + + + Initializes the new instance of PSCmdlet class. + + + Only subclasses of + can be created. + + + + + + + + + + + Defines members and overrides used by Cmdlets. + All Cmdlets must derive from . + + + There are two ways to create a Cmdlet: by deriving from the Cmdlet base class, and by + deriving from the PSCmdlet base class. The Cmdlet base class is the primary means by + which users create their own Cmdlets. Extending this class provides support for the most + common functionality, including object output and record processing. + If your Cmdlet requires access to the MSH Runtime (for example, variables in the session state, + access to the host, or information about the current Cmdlet Providers,) then you should instead + derive from the PSCmdlet base class. + In both cases, users should first develop and implement an object model to accomplish their + task, extending the Cmdlet or PSCmdlet classes only as a thin management layer. + + + + + + Lists the common parameters that are added by the PowerShell engine to any cmdlet that derives + from PSCmdlet. + + + + + Lists the common parameters that are added by the PowerShell engine when a cmdlet defines + additional capabilities (SupportsShouldProcess, SupportsTransactions) + + + + + Is this command stopping? + + + If Stopping is true, many Cmdlet methods will throw + . + + In general, if a Cmdlet's override implementation of ProcessRecord etc. + throws , the best thing to do is to + shut down the operation and return to the caller. + It is acceptable to not catch + and allow the exception to reach ProcessRecord. + + + + + The name of the parameter set in effect. + + the parameter set name + + + + Sets the parameter set + + + + The name of the valid parameter set. + + + + + + When overridden in the derived class, performs initialization + of command execution. + Default implementation in the base class just returns. + + + This method is overridden in the implementation of + individual cmdlets, and can throw literally any exception. + + + + + When overridden in the derived class, performs execution + of the command. + + + This method is overridden in the implementation of + individual cmdlets, and can throw literally any exception. + + + + + When overridden in the derived class, performs clean-up + after the command execution. + Default implementation in the base class just returns. + + + This method is overridden in the implementation of + individual cmdlets, and can throw literally any exception. + + + + + When overridden in the derived class, interrupts currently + running code within the command. It should interrupt BeginProcessing, + ProcessRecord, and EndProcessing. + Default implementation in the base class just returns. + + + This method is overridden in the implementation of + individual cmdlets, and can throw literally any exception. + + + + + Initializes the new instance of Cmdlet class. + + + Only subclasses of + can be created. + + + + + Gets the resource string corresponding to + baseName and resourceId from the current assembly. + You should override this if you require a different behavior. + + the base resource name + the resource id + the resource string corresponding to baseName and resourceId + + Invalid or , or + string not found in resources + + + This behavior may be used when the Cmdlet specifies + HelpMessageBaseName and HelpMessageResourceId when defining + , + or when it uses the + + constructor variants which take baseName and resourceId. + + + + + + + Holds the command runtime object for this command. This object controls + what actually happens when a write is called. + + + + + Internal variant: Writes the specified error to the error pipe. + + + Do not call WriteError(e.ErrorRecord). + The ErrorRecord contained in the ErrorRecord property of + an exception which implements IContainsErrorRecord + should not be passed directly to WriteError, since it contains + a + rather than the real exception. + + error + + Not permitted at this time or from this thread + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + + terminates the command, where + + allows the command to continue. + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + Writes the object to the output pipe. + + + The object that needs to be written. This will be written as + a single object, even if it is an enumeration. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteObject may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + + + + + Writes one or more objects to the output pipe. + If the object is a collection and the enumerateCollection flag + is true, the objects in the collection + will be written individually. + + + The object that needs to be written to the pipeline. + + + true if the collection should be enumerated + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteObject may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + + + + + Display verbose information + + verbose output + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteVerbose may only be called during a call to this Cmdlets's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + Use WriteVerbose to display more detailed information about + the activity of your Cmdlet. By default, verbose output will + not be displayed, although this can be configured with the + VerbosePreference shell variable + or the -Verbose and -Debug command-line options. + + + + + + + + Display warning information + + warning output + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteWarning may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + Use WriteWarning to display warnings about + the activity of your Cmdlet. By default, warning output will + be displayed, although this can be configured with the + WarningPreference shell variable + or the -Verbose and -Debug command-line options. + + + + + + + + Write text into pipeline execution log. + + text to be written to log + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteWarning may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + Use WriteCommandDetail to write important information about cmdlet execution to + pipeline execution log. + + If LogPipelineExecutionDetail is turned on, this information will be written + to monad log under log category "Pipeline execution detail" + + + + + + + + Display progress information + + progress information + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteProgress may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + Use WriteProgress to display progress information about + the activity of your Cmdlet, when the operation of your Cmdlet + could potentially take a long time. + + By default, progress output will + be displayed, although this can be configured with the + ProgressPreference shell variable. + + + + + + + + Displays progress output if enabled + + + Identifies which command is reporting progress + + + Progress status to be displayed + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + Display debug information + + debug output + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteDebug may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + Use WriteDebug to display debug information on the inner workings + of your Cmdlet. By default, debug output will + not be displayed, although this can be configured with the + DebugPreference shell variable or the -Debug command-line option. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + + + + Route information to the user or host. + + The object / message data to transmit to the hosting application. + + Any tags to be associated with the message data. These can later be used to filter + or separate objects being sent to the host. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteInformation may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + Use WriteInformation to transmit information to the user about the activity + of your Cmdlet. By default, informational output will + be displayed, although this can be configured with the + InformationPreference shell variable or the -InformationPreference command-line option. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + Route information to the user or host. + + The information record to write. + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteInformation may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + Use WriteInformation to transmit information to the user about the activity + of your Cmdlet. By default, informational output will + be displayed, although this can be configured with the + InformationPreference shell variable or the -InformationPreference command-line option. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + Confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + + Name of the target resource being acted upon. This will + potentially be displayed to the user. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, + + will throw + , + but the command failure will ultimately be + , + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype1")] + public class RemoveMyObjectType1 : Cmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + public override void ProcessRecord() + { + if (ShouldProcess(filename)) + { + // delete the object + } + } + } + } + + + + + + + + + + + Confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + This variant allows the caller to specify text for both the + target resource and the action. + + + Name of the target resource being acted upon. This will + potentially be displayed to the user. + + + Name of the action which is being performed. This will + potentially be displayed to the user. (default is Cmdlet name) + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype2")] + public class RemoveMyObjectType2 : Cmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + public override void ProcessRecord() + { + if (ShouldProcess(filename, "delete")) + { + // delete the object + } + } + } + } + + + + + + + + + + + Confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + This variant allows the caller to specify the complete text + describing the operation, rather than just the name and action. + + + Textual description of the action to be performed. + This is what will be displayed to the user for + ActionPreference.Continue. + + + Textual query of whether the action should be performed, + usually in the form of a question. + This is what will be displayed to the user for + ActionPreference.Inquire. + + + Caption of the window which may be displayed + if the user is prompted whether or not to perform the action. + may be displayed by some hosts, but not all. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype3")] + public class RemoveMyObjectType3 : Cmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + public override void ProcessRecord() + { + if (ShouldProcess( + String.Format("Deleting file {0}",filename), + String.Format("Are you sure you want to delete file {0}?", filename), + "Delete file")) + { + // delete the object + } + } + } + } + + + + + + + + + + + Confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + This variant allows the caller to specify the complete text + describing the operation, rather than just the name and action. + + + Textual description of the action to be performed. + This is what will be displayed to the user for + ActionPreference.Continue. + + + Textual query of whether the action should be performed, + usually in the form of a question. + This is what will be displayed to the user for + ActionPreference.Inquire. + + + Caption of the window which may be displayed + if the user is prompted whether or not to perform the action. + may be displayed by some hosts, but not all. + + + Indicates the reason(s) why ShouldProcess returned what it returned. + Only the reasons enumerated in + + are returned. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype3")] + public class RemoveMyObjectType3 : Cmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + public override void ProcessRecord() + { + ShouldProcessReason shouldProcessReason; + if (ShouldProcess( + String.Format("Deleting file {0}",filename), + String.Format("Are you sure you want to delete file {0}?", filename), + "Delete file", + out shouldProcessReason)) + { + // delete the object + } + } + } + } + + + + + + + + + + + Confirm an operation or grouping of operations with the user. + This differs from ShouldProcess in that it is not affected by + preference settings or command-line parameters, + it always does the query. + This variant only offers Yes/No, not YesToAll/NoToAll. + + + Textual query of whether the action should be performed, + usually in the form of a question. + + + Caption of the window which may be displayed + when the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldContinue returns true, the operation should be performed. + If ShouldContinue returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + Cmdlets using ShouldContinue should also offer a "bool Force" + parameter which bypasses the calls to ShouldContinue + and ShouldProcess. + If this is not done, it will be difficult to use the Cmdlet + from scripts and non-interactive hosts. + + Cmdlets using ShouldContinue must still verify operations + which will make changes using ShouldProcess. + This will assure that settings such as -WhatIf work properly. + You may call ShouldContinue either before or after ShouldProcess. + + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + Cmdlets may have different "classes" of confirmations. For example, + "del" confirms whether files in a particular directory should be + deleted, whether read-only files should be deleted, etc. + Cmdlets can use ShouldContinue to store YesToAll/NoToAll members + for each such "class" to keep track of whether the user has + confirmed "delete all read-only files" etc. + ShouldProcess offers YesToAll/NoToAll automatically, + but answering YesToAll or NoToAll applies to all subsequent calls + to ShouldProcess for the Cmdlet instance. + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype4")] + public class RemoveMyObjectType4 : Cmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + [Parameter] + public SwitchParameter Force + { + get { return force; } + set { force = value; } + } + private bool force; + + public override void ProcessRecord() + { + if (ShouldProcess( + String.Format("Deleting file {0}",filename), + String.Format("Are you sure you want to delete file {0}", filename), + "Delete file")) + { + if (IsReadOnly(filename)) + { + if (!Force && !ShouldContinue( + String.Format("File {0} is read-only. Are you sure you want to delete read-only file {0}?", filename), + "Delete file")) + ) + { + return; + } + } + // delete the object + } + } + } + } + + + + + + + + + + Confirm an operation or grouping of operations with the user. + This differs from ShouldProcess in that it is not affected by + preference settings or command-line parameters, + it always does the query. + This variant offers Yes, No, YesToAll and NoToAll. + + + Textual query of whether the action should be performed, + usually in the form of a question. + + + Caption of the window which may be displayed + when the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + + true iff user selects YesToAll. If this is already true, + ShouldContinue will bypass the prompt and return true. + + + true iff user selects NoToAll. If this is already true, + ShouldContinue will bypass the prompt and return false. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldContinue returns true, the operation should be performed. + If ShouldContinue returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + Cmdlets using ShouldContinue should also offer a "bool Force" + parameter which bypasses the calls to ShouldContinue + and ShouldProcess. + If this is not done, it will be difficult to use the Cmdlet + from scripts and non-interactive hosts. + + Cmdlets using ShouldContinue must still verify operations + which will make changes using ShouldProcess. + This will assure that settings such as -WhatIf work properly. + You may call ShouldContinue either before or after ShouldProcess. + + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + Cmdlets may have different "classes" of confirmations. For example, + "del" confirms whether files in a particular directory should be + deleted, whether read-only files should be deleted, etc. + Cmdlets can use ShouldContinue to store YesToAll/NoToAll members + for each such "class" to keep track of whether the user has + confirmed "delete all read-only files" etc. + ShouldProcess offers YesToAll/NoToAll automatically, + but answering YesToAll or NoToAll applies to all subsequent calls + to ShouldProcess for the Cmdlet instance. + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype4")] + public class RemoveMyObjectType5 : Cmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + [Parameter] + public SwitchParameter Force + { + get { return force; } + set { force = value; } + } + private bool force; + + private bool yesToAll; + private bool noToAll; + + public override void ProcessRecord() + { + if (ShouldProcess( + String.Format("Deleting file {0}",filename), + String.Format("Are you sure you want to delete file {0}", filename), + "Delete file")) + { + if (IsReadOnly(filename)) + { + if (!Force && !ShouldContinue( + String.Format("File {0} is read-only. Are you sure you want to delete read-only file {0}?", filename), + "Delete file"), + ref yesToAll, + ref noToAll + ) + { + return; + } + } + // delete the object + } + } + } + } + + + + + + + + + + Confirm an operation or grouping of operations with the user. + This differs from ShouldProcess in that it is not affected by + preference settings or command-line parameters, + it always does the query. + This variant offers Yes, No, YesToAll and NoToAll. + + + Textual query of whether the action should be performed, + usually in the form of a question. + + + Caption of the window which may be displayed + when the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + + true if the operation being confirmed has a security impact. If specified, + the default option selected in the selection menu is 'No'. + + + true iff user selects YesToAll. If this is already true, + ShouldContinue will bypass the prompt and return true. + + + true iff user selects NoToAll. If this is already true, + ShouldContinue will bypass the prompt and return false. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldContinue returns true, the operation should be performed. + If ShouldContinue returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + Cmdlets using ShouldContinue should also offer a "bool Force" + parameter which bypasses the calls to ShouldContinue + and ShouldProcess. + If this is not done, it will be difficult to use the Cmdlet + from scripts and non-interactive hosts. + + Cmdlets using ShouldContinue must still verify operations + which will make changes using ShouldProcess. + This will assure that settings such as -WhatIf work properly. + You may call ShouldContinue either before or after ShouldProcess. + + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + Cmdlets may have different "classes" of confirmations. For example, + "del" confirms whether files in a particular directory should be + deleted, whether read-only files should be deleted, etc. + Cmdlets can use ShouldContinue to store YesToAll/NoToAll members + for each such "class" to keep track of whether the user has + confirmed "delete all read-only files" etc. + ShouldProcess offers YesToAll/NoToAll automatically, + but answering YesToAll or NoToAll applies to all subsequent calls + to ShouldProcess for the Cmdlet instance. + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype4")] + public class RemoveMyObjectType5 : Cmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + [Parameter] + public SwitchParameter Force + { + get { return force; } + set { force = value; } + } + private bool force; + + private bool yesToAll; + private bool noToAll; + + public override void ProcessRecord() + { + if (ShouldProcess( + String.Format("Deleting file {0}",filename), + String.Format("Are you sure you want to delete file {0}", filename), + "Delete file")) + { + if (IsReadOnly(filename)) + { + if (!Force && !ShouldContinue( + String.Format("File {0} is read-only. Are you sure you want to delete read-only file {0}?", filename), + "Delete file"), + ref yesToAll, + ref noToAll + ) + { + return; + } + } + // delete the object + } + } + } + } + + + + + + + + + + Run the cmdlet and get the results as a collection. This is an internal + routine that is used by Invoke to build the underlying collection of + results. + + Returns an list of results. + + + + Invoke this cmdlet object returning a collection of results. + + The results that were produced by this class + + + + Returns a strongly-typed enumerator for the results of this cmdlet. + + The type returned by the enumerator + An instance of the appropriate enumerator + Thrown when the object returned by the cmdlet cannot be converted to the target type + + + + Returns true if a transaction is available and active. + + + + + Gets an object that surfaces the current PowerShell transaction. + When this object is disposed, PowerShell resets the active transaction + + + + + Terminate the command and report an error + + + The error which caused the command to be terminated + + + always + + + + terminates the command, where + + allows the command to continue. + + The cmdlet can also terminate the command by simply throwing + any exception. When the cmdlet's implementation of + , + or + + throws an exception, the Engine will always catch the exception + and report it as a terminating error. + However, it is preferred for the cmdlet to call + , + so that the additional information in + + is available. + + + always throws + , + regardless of what error was specified in . + The Cmdlet should generally just allow + . + to percolate up to the caller of + . + etc. + + + + + When overridden in the derived class, performs initialization + of command execution. + Default implementation in the base class just returns. + + + This method is overridden in the implementation of + individual Cmdlets, and can throw literally any exception. + + + + + When overridden in the derived class, performs execution + of the command. + + + This method is overridden in the implementation of + individual Cmdlets, and can throw literally any exception. + + + + + When overridden in the derived class, performs clean-up + after the command execution. + Default implementation in the base class just returns. + + + This method is overridden in the implementation of + individual Cmdlets, and can throw literally any exception. + + + + + When overridden in the derived class, interrupts currently + running code within the command. It should interrupt BeginProcessing, + ProcessRecord, and EndProcessing. + Default implementation in the base class just returns. + + + This method is overridden in the implementation of + individual Cmdlets, and can throw literally any exception. + + + + + This describes the reason why ShouldProcess returned what it returned. + Not all possible reasons are covered. + + + + + none of the reasons below + + + + WhatIf behavior was requested. + + + In the MSH host, WhatIf behavior can be requested explicitly + for one cmdlet instance using the -WhatIf commandline parameter, + or implicitly for all SupportsShouldProcess cmdlets with $WhatIfPreference. + Other hosts may have other ways to request WhatIf behavior. + + + + + Defines members used by Cmdlets. + All Cmdlets must derive from + . + + + Only use + as a subclass of + . + Do not attempt to create instances of + + independently, or to derive other classes than + from + . + + + + + + + Initializes the new instance of Cmdlet class. + + + The only constructor is internal, so outside users cannot create + an instance of this class. + + + + + Allows you to access the calling token for this command invocation... + + + + + + Return the invocation data object for this command. + + The invocation object for this command. + + + + Represents the current pipeline object under consideration. + + + + + Gets or sets the current pipeline object under consideration + + + + + Internal helper. Interface that should be used for interaction with host. + + + + + Internal helper to get to SessionState + + + + + + Internal helper. Indicates whether stop has been requested on this command. + + + + + The information about the command. + + + + + Gets or sets the command information for the command. + + + + + Gets or sets the execution context. + + + may not be set to null + + + + + This property tells you if you were being invoked inside the runspace or + if it was an external request. + + + + + When overridden in the derived class, performs initialization + of command execution. + Default implementation in the base class just returns. + + + + + When overridden in the derived class, performs execution + of the command. + + + + + When overridden in the derived class, performs clean-up + after the command execution. + Default implementation in the base class just returns. + + + + + When overridden in the derived class, interrupts currently + running code within the command. It should interrupt BeginProcessing, + ProcessRecord, and EndProcessing. + Default implementation in the base class just returns. + + + + + throws if the pipeline is stopping + + + + + + IDisposable implementation + When the command is complete, release the associated memmbers + + + Using InternalDispose instead of Dispose pattern because this + interface was shipped in PowerShell V1 and 3rd cmdlets indirectly + derive from this inerface. If we depend on Dispose() and 3rd + party cmdlets do not call base.Dispose (which is the case), we + will still end up having this leak. + + + + + Defines the parameters that are present on all Cmdlets. + + + + + Constructs an instance with the specified command instance + + + + The instance of the command that the parameters should set the + user feedback properties on when the parameters get bound. + + + + If is null. + + + + + + Gets or sets the value of the Verbose parameter for the cmdlet. + + + + This parameter + tells the command to articulate the actions it performs while executing. + + + + + Gets or sets the value of the Debug parameter for the cmdlet. + + + + This parameter tells the command to provide Programmer/Support type + messages to understand what is really occuring and give the user the + opportunity to stop or debug the situation. + + + + + Gets or sets the value of the ErrorAction parameter for the cmdlet. + + + + This parameter tells the command what to do when an error occurs. + + + + + Gets or sets the value of the WarningAction parameter for the cmdlet. + + + + This parameter tells the command what to do when a warning + occurs. + + + + + Gets or sets the value of the InformationAction parameter for the cmdlet. + + + + This parameter tells the command what to do when an informational record occurs. + + + + + Gets or sets the value of the ErrorVariable parameter for the cmdlet. + + + + This parameter tells the command which variable to populate with the errors. + Use +varname to append to the variable rather than clearing it. + + + + + + + Gets or sets the value of the WarningVariable parameter for the cmdlet. + + + + This parameter tells the command which variable to populate with the warnings. + Use +varname to append to the variable rather than clearing it. + + + + + Gets or sets the value of the InformationVariable parameter for the cmdlet. + + + + This parameter tells the command which variable to populate with the informational output. + Use +varname to append to the variable rather than clearing it. + + + + + Gets or sets the OutVariable parameter for the cmdlet. + + + + This parameter tells the command to set all success output in the specified variable. + Similar to the way -errorvariable sets all errors to a variable name. + Semantically this is equivalent to : command |set-var varname -passthru + but it should be MUCH faster as there is no binding that takes place + + + + + Gets or sets the OutBuffer parameter for the cmdlet. + + + + This parameter configures the number of objects to buffer before calling the downstream Cmdlet + + + + + Gets or sets the PipelineVariable parameter for the cmdlet. + + + + This parameter defines a variable to hold the current pipeline output the command + as it passes down the pipeline: + Write-Output (1..10) -PipelineVariable WriteOutput | Foreach-Object { "Hello" } | + Foreach-Object { $WriteOutput } + + + + + The declaration of parameters for the ShouldProcess mechanisms. -Whatif, and -Confirm. + + + + + Constructs an instance with the specified command instance + + + + The instance of the command that the parameters should set the + user feedback properties on when the parameters get bound. + + + + + + Gets or sets the value of the -Whatif parameter for all cmdlets. + + + + + Gets or sets the value of the -Confirm parameter for all cmdlets. + + + + + The declaration of parameters for the Transactions mechanisms. -UseTransaction, and -BypassTransaction. + + + + + Constructs an instance with the specified command instance + + + + The instance of the command that the parameters should set the + user feedback properties on when the parameters get bound. + + + + + + Gets or sets the value of the -UseTransaction parameter for all cmdlets. + + + + + + Get a list of all module files + which can be imported just by specifying a non rooted file name of the module + (Import-Module foo\bar.psm1; but not Import-Module .\foo\bar.psm1) + + When obtaining all module files we return all possible + combinations for a given file. For example, for foo we return both + foo.psd1 and foo.psm1 if found. Get-Module will create the module + info only for the first one + + + + Get a list of the available module files + which can be imported just by specifying a non rooted directory name of the module + (Import-Module foo\bar; but not Import-Module .\foo\bar or Import-Module .\foo\bar.psm1) + + + + + Gets the list of versions under the specified module base path in descending sorted order + + module base path + sorted list of versions + + + + Gets a list of matching commands + + command pattern + + + + + + + + + Debugger Utilities class + + + + + Set-DebuggerVariable function. + + + + + Remove-DebuggerVariable function. + + + + + Get-PSCallStack override function. + + + + + Helper method to determine if command should be added to debugger + history. + + Command string + True if command can be added to history + + + + Helper method to return an enumeration of workflow debugger + functions. + + + + + + Start monitoring a runspace on the target debugger. + + Target debugger + PSMonitorRunspaceInfo + + + + End monitoring a runspace on the target degbugger. + + Target debugger + PSMonitorRunspaceInfo + + + + PSMonitorRunspaceEvent + + + + + Standalone runspace. + + + + + Runspace from remote Invoke-Command script. + + + + + Runspace from Workflow activity inline script. + + + + + Runspace information for monitoring runspaces for debugging. + + + + + Created Runspace + + + + + Type of runspace for monitoring. + + + + + Nested debugger wrapper for runspace debugger. + + + + + Constructor + + Runspace + Runspace type + + + + Returns a copy of this object. + + + + + + Creates an instance of a NestedRunspaceDebugger. + + Root debugger or null. + NestedRunspaceDebugger + + + + Standalone runspace information for monitoring runspaces for debugging. + + + + + Creates instance of PSStandaloneMonitorRunspaceInfo + + Runspace to monitor + + + + Returns a copy of this object. + + + + + + Creates an instance of a NestedRunspaceDebugger. + + Root debugger or null + NestedRunspaceDebugger wrapper + + + + Embedded runspaces running in context of a parent script, used for monitoring + runspace debugging. + + + + + PowerShell command to run. Can be null. + + + + + Unique parent debugger identifier + + + + + Creates instance of PSEmbeddedMonitorRunspaceInfo + + Runspace to monitor + Type of runspace + Running command + Unique parent debugger id or null + + + + Returns a copy of this object. + + + + + + Creates an instance of a NestedRunspaceDebugger. + + Root debugger or null + NestedRunspaceDebugger wrapper + + + + CabinetExtractor interface, implemented by CabinetExtractor + in native code to handle the extraction of cabinet files. + + + + + Extracts a cabinet file + + cabinet file name + cabinet directory name, must be back slash terminated + destination directory name, must be back slash terminated + + + + Flag: Has Dispose already been called? + + + + + Disposes the instance, callable by consumers. + + + + + Abstract class which defines a CabinetExtractor loader. An implementation + of this class will be instantiated onetime from the C++/CLI + assembly using reflection + + The C++/CLI implementation of this class needs to be + static + + + + Used to create a CabinetExtractor class + + + + + Static constructor + + + + + Provider a CabinetExtractor instance + + Tracer instance + + + + Dummy cabinet extractor implementation + + + + + Extracts a cabinet file + + cabinet file name + cabinet directory name, must be back slash terminated + destination directory name, must be back slash terminated + + + + Disposes the instance + + + + + + GC handle which prevents garbage collector from collecting this delegate. + + + + + Flag: Has Dispose already been called? + + + + + Protected implementation of Dispose pattern. + + + + + + Finalizer to ensure destruction of unmanaged resources + + + + + Creates delegates for the FDI* operation functions. + + + + + Frees all the delegate handles + + + + + Converts an unmanaged define into a known managed value + + Defined in stdio.h. + The appropriate System.IO.SeekOrigin value. + + + + Converts an unmanaged define into a known managed type. + + Operation mode defined in fcntl.h + The appropriate System.IO.FileMode type. + + + + Converts an unmanaged define into a known managed type. + + Permission mode defined in stat.h + The appropriate System.IO.FileAccess type. + + + + Converts an unmanaged define into a known managed type. + + Permission mode defined in stat.h + The appropriate System.IO.FileShare type. + + + + Creates an FDI context + + _In_ PFNALLOC - Memory allocation delegate + _In_ PFNFREE - Memory free delegate + _In_ PFNOPEN - File open delegate + _In_ PFNREAD - File read delegate + _In_ PFNWRITE - File write delegate + _In_ PFNCLOSE - File close delegate + _In_ PFNSEEK - File seek delegate + _In_ int - CPU type + _Inout_ PERF - Error structure containing error information + + + + + Extracts files from cabinets + + _In_ HFDI - A valid FDI context handle returned by FDICreate + _In_ LPSTR - The name of the cabinet file + _In_ LPSTR - The path to the cabinet file excluding the file name + _In_ int - Not defined + _In_ PFNFDINOTIFY - Pointer to the notification callback delegate + _In_ PFNFDIDECRYPT - Not used + _In_opt_ void FAR * - Path string passed to the notification function + + + + + Deletes an open FDI context + + _In_ HFDI - The FDI context handle to destroy + + + + + + Wraps PSHost instances to provide a shim layer + between InternalCommand and the host-supplied PSHost instance. + + This class exists for the purpose of ensuring that an externally-supplied PSHost meets the minimum proper required + implementation, and also to provide a leverage point at which the monad engine can hook the interaction between the engine, + cmdlets, and that external host. + + That leverage may be necessary to manage concurrent access between multiple pipelines sharing the same instance of + PSHost. + + + + + + + There should only be one instance of InternalHost per runspace (i.e. per engine), and all engine use of the host + should be through that single instance. If we ever accidentally create more than one instance of InternalHost per + runspace, then some of the internal state checks that InternalHost makes, like checking the nestedPromptCounter, can + be messed up. + + To ensure that this constraint is met, I wanted to make this class a singleton. However, Hitesh rightly pointed out + that a singleton would be appdomain-global, which would prevent having multiple runspaces per appdomain. So we will + just have to be careful not to create extra instances of InternalHost per runspace. + + + + + + + See base class + + + + + + when the external host's Name is null or empty. + + + + + + + See base class + + + + + + when the external host's Version is null. + + + + + + + See base class + + + + + + when the external host's InstaceId is a zero Guid. + + + + + + + See base class + + + + + + + + Interface to be used for interaction with internal + host UI. InternalHostUserInterface wraps the host UI + supplied during construction. Use this wrapper to access + functionality specific to InternalHost. + + + + + + See base class + + + + + + + when the external host's CurrentCulture is null. + + + + + + + See base class + + + + + + + If the external host's CurrentUICulture is null. + + + + + + + See base class + + + + + + + + See base class + + + + + + + Internal proxy for EnterNestedPrompt + + + + + + + + See base class + + + + + + + + See base class + + + + + + + See base class + + + + + + + + Called by the engine to notify the host that the execution of a legacy command has completed. + + + + + + + This property enables and disables the host debugger if debugging is supported. + + + + + Gets the external host as an IHostSupportsInteractiveSession if it implements this interface; + throws an exception otherwise. + + + + + Called by the engine to notify the host that a runspace push has been requested. + + + + + + Called by the engine to notify the host that a runspace pop has been requested. + + + + + + True if a runspace is pushed; false otherwise. + + + + + Returns the current runspace associated with this host. + + + + + Checks if the host is in a nested prompt + + true, if host in nested prompt + false, otherwise + + + + Sets the reference to the external host and the internal UI to a temporary + new host and its UI. This exists so that if the PowerShell/Pipeline + object has a different host from the runspace it can set it's host during its + invocation, and then revert it after the invocation is completed. + + and + + + + Reverts the temporary host set by SetHost. If no host was temporarily set, this has no effect. + + and + + + + Returns true if the external host reference is temporarily set to another host, masking the original host. + + + + + + See base class + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + + + + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + + + + + if the RawUI property of the external host is null, possibly because the PSHostRawUserInterface is not + implemented by the external host + + + + + + See base class + + + + + + + + + See base class + + + + + if the UI property of the external host is null, possibly because the PSHostUserInterface is not + implemented by the external host + + + + + + + See base class + + + + + if the UI property of the external host is null, possibly because the PSHostUserInterface is not + implemented by the external host + + + + + + + See base class + + + + + + + if is not null and the UI property of the external host is null, + possibly because the PSHostUserInterface is not implemented by the external host + + + + + + + See base class + + + + + + + + + + + if is not null and the UI property of the external host is null, + possibly because the PSHostUserInterface is not implemented by the external host + + + + + + + See base class + + + + + + + if the UI property of the external host is null, possibly because the PSHostUserInterface is not + implemented by the external host + + + + + + + See base class + + + + + + + if is not null and the UI property of the external host is null, + possibly because the PSHostUserInterface is not implemented by the external host + + + + + + + See base class + + + + + + + + + + + if is not null and the UI property of the external host is null, + possibly because the PSHostUserInterface is not implemented by the external host + + + + + + + See base class + + + + + if is not null and the UI property of the external host is null, + possibly because the PSHostUserInterface is not implemented by the external host + + + + + + + + + + + Writes the DebugRecord to informational buffers. + + DebugRecord + + + + Helper function for WriteDebugLine + + + + + + If the debug preference is set to ActionPreference.Stop + + + + + If the debug preference is set to ActionPreference.Inquire and user requests to stop execution. + + + + + If the debug preference is not a valid ActionPrefernce value. + + + + + + If informationBuffers is not null, the respective messages will also + be written to the buffers along with external host. + + + Buffers to which Debug, Verbose, Warning, Progress, Information messages + will be writtern to. + + + This method is not thread safe. Caller should make sure of the + assosciated risks. + + + + + Gets the informational message buffers of the host + + informational message buffers + + + + + Ask the user whether to continue/stop or break to a nested prompt. + + + + + Message to display to the user. This routine will append the text "Continue" to ensure that people know what question + they are answering. + + + + + Preference setting which determines the behaviour. This is by-ref and will be modified based upon what the user + types. (e.g. YesToAll will change Inquire => NotifyContinue) + + + + + + + See base class + + + + + if is not null and the UI property of the external host is null, + possibly because the PSHostUserInterface is not implemented by the external host + + + + + + + See base class + + + + + if is not null and the UI property of the external host is null, + possibly because the PSHostUserInterface is not implemented by the external host + + + + + + + + + + + Writes the VerboseRecord to informational buffers. + + VerboseRecord + + + + + See base class + + + + + if is not null and the UI property of the external host is null, + possibly because the PSHostUserInterface is not implemented by the external host + + + + + + + + + + + Writes the WarningRecord to informational buffers. + + WarningRecord + + + + + + + + + Writes the InformationRecord to informational buffers. + + WarningRecord + + + + + See base class + + + + + + + + + + + If is null. + + + + + If .Count is less than 1. + + + + + if the UI property of the external host is null, + possibly because the PSHostUserInterface is not implemented by the external host + + + + + + + See base class + + + + + + + + + + if the UI property of the external host is null, + possibly because the PSHostUserInterface is not implemented by the external host + + + + + + Presents a dialog allowing the user to choose options from a set of options. + + + Caption to preceed or title the prompt. E.g. "Parameters for get-foo (instance 1 of 2)" + + + A message that describes what the choice is for. + + + An Collection of ChoiceDescription objects that describe each choice. + + + The index of the labels in the choices collection element to be presented to the user as + the default choice(s). + + + The indices of the choice elements that corresponds to the options selected. + + + + + + This method is added to be backward compatible with V1 hosts w.r.t + new PromptForChoice method added in PowerShell V2. + + + + + + + + 1. Choices is null. + 2. Choices.Count = 0 + 3. DefaultChoice is either less than 0 or greater than Choices.Count + + + + + + See base class + + + + + + + See base class + + + + + + Defines enumerations for the keywords + + + + + Define enumerations for levels + + + + + Defines enumerations for op codes + + + + + Defines enumerations for event ids + + add an entry for a new event that you + add to the manifest. Set it to the same value + that was set in the manifest + + + + Defines enumerations for channels + + + + + Defines enumerations for tasks + + + + + Defines enumerations for version + + all messages in V2 timeframe + should be of version 1 + + + + Describes a binary blob to be used as a data item for ETW. + + + + + Handles all PowerShell data structure handler communication with the + server side RunspacePool + + + + + Constructor which takes a client runspace pool and creates + an associated ClientRunspacePoolDataStructureHandler + + client runspace pool object. + typetable to use for serialization/deserialization. + + + + Create a runspace pool asynchronously (and opens) it + on the server + + + + + Closes the server runspace pool asynchronously + + + + + Suspends connection to a runspace pool asynchronously + + + + + Restore connection to a runspace pool asynchronously + + + + + Creates a connection to an existing remote runspace pool + + + + + Process the data received from the runspace pool + on the server + + data received + + + + Creates a PowerShell data structure handler instance associated + with this runspace pool data structure handler + + associated powershell + PowerShell data structure handler object + + + + Creates a PowerShell instances on the server, associates it + with this runspace pool and invokes + + the client remote powershell + + + + Add a ClientPowerShellDataStructureHandler to association list. + + PowerShell Instance Id. + ClientPowerShellDataStructureHandler for PowerShell. + + + + dispatch the message to the associated powershell data structure handler + + message received. + + + + send the host response to the server + + host response object to send + + + + Send a message to the server instructing it to reset its runspace state. + + Caller Id + + + + sent a message to modify the max runspaces of the runspace pool + + new maxrunspaces to set + call id on which the calling method will + be blocked on + + + + Send a message to modify the min runspaces of the runspace pool + + new minrunspaces to set + call id on which the calling method will + be blocked on + + + + Send a message to get the available runspaces from the server + + call id on which the calling method will + be blocked on + + + + Event raised when a host call is received + + + + + Event raised when state information is received + + + + + Event raised when RunspacePoolInitInfo is received. This is the first runspace pool message expected + after connecting to an existing remote runspace pool. RemoteRunspacePoolInternal should use this + notification to set the state of a reconstructed runspace to "Opened State" and use the + minRusnpace and MaxRunspaces information to set its state + + + + + Event raised when application private data is received + + + + + Event raised when a PSEventArgs is received + + + + + Event raised when the session is closed. + + + + + + + + + + + + + + + Event raised when the session is closing. + + + + + Event raised when a response to a SetMaxRunspaces or SetMinRunspaces call + is received + + + + + EventHandler used to report connecion URI redirections to the application + + + + + Indicates that a disconnect has been initiated by the WinRM robust connections layer. + + + + + Notification that session creation has completed. + + + + + Send the data specified as a RemoteDataObject asynchronously + to the runspace pool on the remote session + + data to send + This overload takes a RemoteDataObject and should be + the one used within the code + + + + Send the data asynchronously to runspace pool driver on remote + session with the specified priority + + + data to be sent to server + priority with which to send data + + + + Send the data asynchronously to runspace pool driver on remote + session with the specified priority + + data object to send + priority with which to send data + + + + Create a client remote session based on the connection info + + + The RunspacePool object this session should map to. + + + + + Handler for handling all session events + + sender of this event + object describing this event + + + + Session is reporting that URI is getting redirected. + Report this information to the user by writing a warning message. + + + + + + Notifies associated powershell's of the runspace pool state change + + state information that need to + be notified + + + + Gets the ClientPowerShellDataStructureHandler instance for the specified id + + id of the client remote powershell + ClientPowerShellDataStructureHandler object + + + + Remove the association of the powershell from the runspace pool + + sender of this event + unused + + + + Calls each running command Transport manager PrepareForDisconnect method. + Each transport manager object will raise an event when the command/transport + is ready to be disconnected. Disconnect will begin when all is ready. + + + + + Allows each running command to resume processing command input for when + the runspacepool and running commands are connected. + + + + + Handler of the transport ReadyForDisconnect event. When all command + transports are ready for disconnect we can start the disconnect process. + + + + + + + WaitCallback method to start an asynchronous disconnect. + + + + + + Forwards robust connection notifications to associated PowerShell clients. + + + + + + + Forwards the session create completion event. + + transport sender + CreateCompleteEventArgs + + + + The remote session associated with this runspace pool + data structure handler + + + + + Transport manager used by this data structure handler + + + + + Returns robust connection maximum retry time in milliseconds, if supported + by underlying transport manager. + + + + + Indicates whether the currently connected runspace endpoint supports + disconnect/connect semantics. + + + + + public interface for dispose + + + + + Release all resources + + if true, release all managed resources + + + + Base class for ClientPowerShellDataStructureHandler to handle all + references + + + + + this event is raised when the state of associated + powershell is terminal and the runspace pool has + to detach the association + + + + + This event is raised when a state information object + is received from the server + + + + + This event is raised when an output object is received + from the server + + + + + This event is raised when an error record is received + from the server + + + + + This event is raised when an informational message - + debug, verbose, warning, progress is received from + the server + + + + + This event is raised when a host call is targeted to the + powershell + + + + + This event is raised when a runspace pool data structure handler notifies an + associated powershell data structure handler that its closed + + + + + Event that is raised when a remote connection is successfully closed. The event is raised + from a WSMan transport thread. Since this thread can hold on to a HTTP + connection, the event handler should compelete processing as fast as possible. + Importantly the event handler should not generate any call that results in a + user request like host.ReadLine(). + + Errors (occurred during connection attempt) are reported through WSManTransportErrorOccured + event. + + + The eventhandler should make sure not to throw any exceptions. + + + + + This event is raised when a runspace pool data structure handler notifies an + associated powershell data structure handler that its broken + + + + + This event is raised when reconnect async operation on the associated powershell/pipeline instance is completed + + + + + This event is raised when connect async operation on the associated powershell/pipeline instance is completed + + + + + This event is raised when a Robust Connection layer notification is available. + + + + + Start the command operation. + + + + + Handler which handles transport errors. + + + + + + + Send a stop powershell message to the server + + + + + Event that gets raised when stop signal is completed. + + + + + + + Send the host response to the server + + host response to send + + + + Attach the specified data collection as input + to the remote powershell + + + + + + Process the data received from the runspace pool + on the server + + data received + + + + Set the state of the associated powershell to stopped + + reason why this state change + should occur + This method is called by the associated + runspace pool data structure handler when the server runspace pool + goes into a closed or broken state + + + + Sets the state of the powershell to stopped + + reason why the powershell has to be + set to a stopped state. + + + + Closes tranport manager. + + + + + Raise a remove association event. This is raised + when the powershell has gone into a terminal state + and the runspace pool need not maintain any further + associations + + + + + Called from runspace DS handler while disconnecting + This will set the state of the pipeline DS handler to disconnected + + + + + This does not ensure that the corresponding session/runspacepool is in connected stated + Its the caller responsiblity to ensure that this is the case + At the protocols layers, this logic is delegated to the transport layer. + WSMan tranport ensures that WinRS commands cannot be reconnected when the parent shell is not in connected state + + + + + Called from session DSHandler. Notify client of robust connection + message. + + + + + + Default internal constructor + + id of the client + remote runspace pool associated with this data structure handler + + id of the client + powershell associated with this data structure handler + transport manager associated + with this connection + + + + Client PowerShell Id of the powershell this + data structure handler is associated with + + + + + transport manager used by this data structure handler + + + + + Send the data specified as a RemoteDataObject asynchronously + to the powershell on server + + data to send + This overload takes a RemoteDataObject and should be + the one used within the code + + + + Handle data added to input + + sender of this event + information describing this event + + + + + + This method doesn't lock and its the responsibility + of the caller to actually do the locking + + + + + Helper method to add transport manager callbacks and set transport + manager disconnected state. + + Boolean + + + + Encapsulates the Robust Connection retry progress bar. + + + + + Constructor. + + + + + Starts progress bar. + + + + + + + + + Stops progress bar. + + + + + Serves as the base class for Metadata attributes. + + + PSSnapins may not create custom attributes derived directly from + , + since it has no public constructor. Only the public subclasses + and + + are available. + + + + + + + Default constructor + + + + + Serves as the base class for Metadata attributes that serve as guidance to the parser and parameter binder. + + + PSSnapins may not create custom attributes derived + , + since it has no public constructor. Only the sealed public subclasses + and + + are available. + + + + + + + Constructor with no parameters + + + + This class is used for internal test purposes. + + + This member is used for internal test purposes. + + + Internal interface used for workflow compilation. + + + + + + + + + + + + + + + + + + + + + + + + + Every Runspace in one process contains SessionStateInternal per module (module SessionState). + Every RuntimeType is associated to only one SessionState in the Runspace, which creates it: + it's ever global state or a module state. + In the former case, module can be imported from the different runspaces in the same process. + And so runspaces will share RuntimeType. But in every runspace, Type is associated with just one SessionState. + We want type methods to be able access $script: variables and module-specific methods. + To achive it, we preserve reference to SessionState that creates type in the private field 'SessionStateFieldName'. + Later, we use it to call scriptBlocks captured in ScriptBlockMemberMethodWrapper with the right sessionState. + + + + + This method should be called only from generated ctors for PowerShell classes. + It's not intended to be a public API, but because we generate type in a different assembly it has to be public. + Return type should be SessionStateInternal, but it violates accessibility consistency, so we use object. + + SessionStateInternal + + + + + + Used in codegen + + + + We use ThreadLocal boundScriptBlock to allow multi-thread execution of instance methods. + + + + + + target object or null for static call + sessionStateInternal from private field of instance or null for static call + + + + + + + target object or null for static call + sessionStateInternal from private field of instance or null for static call + + + + + + Support methods for PowerShell classes. + + + + + This method calls all Validate attributes for the property to validate value. + Called from class property setters with ValidateArgumentsAttribute attributes. + + + + + + + + Performs base ctor call as a method call. + + object for invocation + ctor info for invocation + arguments for invocation + + + + Performs non-virtual method call with return value. Main usage: base class method call inside subclass method. + + object for invocation + method info for invocation + arguments for invocation + + + + Performs non-virtual void method call. Main usage: base class method call inside subclass method. + + object for invocation + method info for invocation + arguments for invocation + + + + A cache for the DynamicMethod objects that call to base method non-virtually. + The cache can clean up the outdated WeakReference entries by itself. + + + + + Implementation of non-virtual method call. + + object for invocation + method info for invocation + arguments for invocation + + + + Help method to create the DynamicMethod for calling base method non-virtually. + + + + + This is a singleton object that is used to indicate a void return result. + + + It's a singleton class. Sealed to prevent subclassing. Any operation that + returns no actual value should return this object AutomationNull.Value. + Anything that evaluates an MSH expression should be prepared to deal + with receiving this result and discarding it. When received in an + evaluation where a value is required, it should be replaced with null. + + + + + Returns the singleton instance of this object. + + + + + Corresponds to -OutputVariable, -ErrorVariable, -WarningVariable, and -InformationVariable. + + + + + Pipe provides a way to stitch two commands. + + + The Pipe class is not thread-safe, so methods such as + AddItems and Retrieve should not be called simultaneously. + ExternalReader and ExternalWriter can provide thread-safe buffering. + + + + + This is the downstream cmdlet in the "streamlet model" + which is invoked during each call to Add/AddItems. + + + + + This is the upstream external object source. If this is set, + Retrieve() will attempt to read objects from the upstream source + before indicating that the pipe is empty. + + It is improper to change this once the pipeline has started + executing, although the checks for this are in the + PipelineProcessor class and not here. + + + + + + This is the downstream object recipient. If this is set, + Add() and AddItems() write to this recipient instead of + to the internal queue. This also disables the + DownstreamCmdlet. + + It is improper to change this once the pipeline has started + executing, although the checks for this are in the + PipelineProcessor class and not here. + + + + + + for diagnostic purposes + + + + + + OutBufferCount configures the number of objects to buffer before calling the downstream Cmdlet + + + + + If true, then all input added to this pipe will simply be discarded... + + + + + A queue that is shared between commands on either side of the pipe to transfer objects. + + + + + True if there are items in this pipe that need processing... + + This does not take into account the presence of ExternalInput; + it only indicates whether there is currently any data queued up + or if there is data in the enumerator... + + + + + + Is true if there is someone consuming this pipe already, either through + a Pipe object that processes it's output or there is downstream cmdlet... + + + + + If non-null, output written to the pipe are also added to this list. + + + + + If non-null, errors written to the pipe are also added to this list. + + + + + If non-null, warnings written to the pipe are also added to this list. + + + + + If non-null, information objects written to the pipe are also added to this list. + + + + + If non-null, the current object being written to the pipe is stored in + this variable. + + + + + When a temporary pipe is used in the middle of execution, then we need to pass along + the error and warning variable list to hold the errors and warnings get written out + while the temporary pipe is being used. + + We don't need to pass along the out variable list because we don't care about the output + generated in the middle of execution. + + + + + Default constructor - Creates the object queue + + + The initial Queue capacity is 1, but it will grow automatically. + + + + + This overload causes output to be written into a List + + + + + + This overload causes output to be + written onto an Collection[PSObject] which is more useful + in many circumstances than arraylist + + The collection to write into + + + + This pipe writes into another pipeline processor allowing + pipelines to be chained together... + + The execution context object for this engine instance + The pipeline to write into... + + + + Read from an enumerator instead of a pipeline reader... + + The enumerator to process... + + + + Writes an object to the pipe. This could recursively call to the + downstream cmdlet, or write the object to the external output. + + The object to add to the pipe + + AutomationNull.Value is ignored + + + a terminating error occurred, or the pipeline was otherwise stopped + + + The ExternalWriter stream is closed + + + + + Writes a set of objects to the pipe. This could recursively + call to the downstream cmdlet, or write the objects to the + external output. + + + Each of the objects are added to the pipe + + + The pipeline has already been stopped, + or a terminating error occurred in a downstream cmdlet. + + + The ExternalWriter stream is closed + + + + + Returns an object from the pipe. If pipe is empty returns null. + This will try the ExternalReader if there are no queued objects. + + + object that is retrieved, or AutomationNull.Value if none + + + + + Removes all the objects from the Pipe. + + + + + Returns the currently queued items in the pipe. Note that this will + not block on ExternalInput, and it does not modify the contents of + the pipe. + + possibly empty array of objects, but not null + + + + Loads InternalCommand objects and executes them. + + + The PipelineProcessor class is not thread-safe, so methods such as + AddCommand and SynchronousExecute should not be called + simultaneously. While SynchronousExecute is running, it may access + ExternalInput, ExternalSuccessOutput and ExternalErrorOutput, and + those objects are thread-safe. + + + + + When the command is complete, PipelineProcessor will be + disposed. + + + This is only public because it implements an interface method. + The class itself is internal. + + We use the standard IDispose pattern. + + + + + Finalizer for class PipelineProcessor + + + + + Add a single InternalCommand to the end of the pipeline + + Results from last pipeline stage + + see AddCommand + + + + + + Add a command to the pipeline + + + reference number of command from which to read, 0 for none + read from error queue of command readFromCommand + reference number of this command for use in readFromCommand + + + FirstCommandCannotHaveInput: must be zero + for the first command in the pipe + InvalidCommandNumber: there is no command numbered + A command can only read from earlier commands; this prevents circular queues + + + ExecutionAlreadyStarted: pipeline has already started or completed + PipeAlreadyTaken: the downstream pipe of command + is already taken + + + + + Execute the accumulated commands and clear the pipeline. + SynchronousExecute does not return until all commands have + completed. There is no asynchronous variant; instead, once the + pipeline is set up, the caller can spawn a thread and call + SynchronousExecute from that thread. This does not mean that + PipelineProcessor is thread-safe; once SynchronousExecute is + running, PipelineProcessor should not be accessed through any + other means. This variant of the routine looks at it's input + object to see if it's enumerable or not. + + + Input objects for first stage. If this is AutomationNull.Value, the + first cmdlet is the beginning of the pipeline. + + + Results from last pipeline stage. This will be empty if + ExternalSuccessOutput is set. + + + ExecutionAlreadyStarted: pipeline has already started or completed + + + PipelineExecuteRequiresAtLeastOneCommand + + + A cmdlet encountered a terminating error + + + The pipeline was stopped asynchronously + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + If any parameters fail to bind, + or + If any mandatory parameters are missing. + + + If there is an error generating the metadata for dynamic parameters. + + + An error occurred clearing the error variable. + + + HaltCommandException will cause the command + to stop, but should not be reported as an error. + + + + + Implements DoComplete as a stand-alone function for completing + the execution of a steppable pipeline. + + The results of the execution + + + + This routine starts the stepping process. It is optional to + call this but can be useful if you want the begin clauses + of the pipeline to be run even when there may not be any input + to process as is the case for I/O redirection into a file. We + still want the file opened, even if there was nothing to write to it. + + True if you want to write to this pipeline + + + + Request that the pipeline execution should stop. Unlike other + methods of PipelineProcessor, this method can be called + asynchronously. + + + + + Partially execute the pipeline, and retrieve the output + after the input objects have been entered into the pipe. + + + Array of input objects for first stage + + + Results from last pipeline stage. This will be empty if + ExternalSuccessOutput is set. + + + PipelineExecuteRequiresAtLeastOneCommand + + + The pipeline has already been stopped, or a cmdlet encountered + a terminating error + + + If any parameters fail to bind, + or + If any mandatory parameters are missing. + + + If there is an error generating the metadata for dynamic parameters. + + + The pipeline has already been stopped, + or a terminating error occurred. + + + An error occurred clearing the error variable. + + + + + Prepares the pipeline for execution. + + + Input objects are expected, so do not close the first command. + This will prevent the one default call to ProcessRecord + on the first command. + + + Start must always be called in a context where terminating errors will + be caught and result in DisposeCommands. + + + PipelineExecuteRequiresAtLeastOneCommand + + + If any parameters fail to bind, + or + If any mandatory parameters are missing. + + + If there is an error generating the metadata for dynamic parameters. + + + The pipeline has already been stopped, + or a terminating error occurred in a downstream cmdlet. + + + An error occurred clearing the error variable. + + + + + Add ExternalErrorOutput to all commands whose error + output is not yet claimed + + + + + Clear ErrorVariable as appropriate + + + + + Partially execute the pipeline. The output remains in + the pipes. + + + Array of input objects for first stage + + If true, unravel the input otherwise pass as one object + + Exception if any cmdlet throws a [terminating] exception + + + Inject must always be called in a context where terminating errors will + be caught and result in DisposeCommands. + + + PipelineExecuteRequiresAtLeastOneCommand + + + The pipeline has already been stopped, or a cmdlet encountered + a terminating error + + + The ExternalWriter stream is closed + + + + + Retrieve results from the pipeline. + + + Results from last pipeline stage. This will be empty if + ExternalSuccessOutput is set or if this pipeline has been linked. + + + + + Links this pipeline to a pre-existing Pipe object. This allows nested pipes + to write into the parent pipeline. It does this by resetting the terminal + pipeline object. + + The pipeline to write success objects to + + + + When the command is complete, Command should be disposed. + This enables cmdlets to reliably release file handles etc. + without waiting for garbage collection. + Exceptions occurring while disposing commands are recorded + but not passed through. + + + + + Makes an internal note of the exception, but only if this is + the first error. + + error which terminated the pipeline + command against which to log SecondFailure + true iff the pipeline was not already stopped + + + + Sometimes we shouldn't be rethrow the exception we previously caught, + such as when the exception is handled by a trap. + + + + + ExternalInput allows the caller to specify an asynchronous source for + the input to the first command in the pipeline. Note that if + ExternalInput is specified, SynchronousExecute will not return + until the ExternalInput is closed. + + + It is the responsibility of the caller to ensure that the object + reader is closed, usually by another thread. + + + ExecutionAlreadyStarted: pipeline has already started or completed + + + + + ExternalSuccessOutput provides asynchronous access to the + success output of the last command in the pipeline. Note that + if ExternalSuccessOutput is specified, the result array return value + to SynchronousExecute will always be empty. PipelineProcessor will + close ExternalSuccessOutput when the pipeline is finished. + + + ExecutionAlreadyStarted: pipeline has already started or completed + + + + + ExternalErrorOutput provides asynchronous access to the combined + error output of all commands in the pipeline except what is routed + to other commands in the pipeline. Note that if + ExternalErrorOutput is specified, the errorResults return parameter to + SynchronousExecute will always be empty. PipelineProcessor will + close ExternalErrorOutput when the pipeline is finished. + + + ExecutionAlreadyStarted: pipeline has already started or completed + + + + + Indicates whether this PipelineProcessor has already started. + If so, some properties can no longer be changed. + + + + + Indicates whether stop has been requested on this PipelineProcessor. + + + + + The scope the pipeline should execute in. + + + + + + Represents alternate stream data retrieved from a file. + + + + + The name of the file that holds this stream. + + + + + The name of this stream. + + + + + The length of this stream. + + + + + Provides access to alternate data streams on a file + + + + + List all of the streams on a file + + The fully-qualified path to the file. + The list of streams (and their size) in the file. + + + + Creates a file stream on a file + + The fully-qualified path to the file. + The name of the alternate data stream to open. + The FileMode of the file. + The FileAccess of the file. + The FileShare of the file. + A FileStream that can be used to interact with the file. + + + + Removes an alternate data stream. + + The path to the file. + The name of the alternate data stream to delete. + + + + Represents alternate stream data retrieved from a file. + + + + + The length of this stream. + + + + + The name of this stream. + + + + + The SAFER policy associated with this file + + + + + Explicitly allowed through an Allow rule + + + Allowed because it has not been explicitly disallowed + + + Disallowed by a rule or policy. + + + + Security Support APIs + + + + + Returns true if file has product binary signature + + Name of file to check + True when file has product binary signature + + + + Get the pass / fail result of calling the SAFER API + + + The path to the file in question + A file handle to the file in question, if available. + + + + Returns the value of the Execution Policy as retrieved + from group policy. + + NULL if it is not defined at this level + + + + Returns the value of the Execution Policy as retrieved + from the local preference. + + NULL if it is not defined at this level + + + + throw if file does not exist + + + path to file + + Does not return a value + + + + + + + check to see if the specified cert is suitable to be + used as a code signing cert + + + certificate object + + true on success, false otherwise + + + + + + + check to see if the specified cert is suitable to be + used as an encryption cert for PKI encyryption. Note + that this cert doesn't require the private key. + + + certificate object + + true on success, false otherwise + + + + + + + check if the specified cert has a private key in it + + + certificate object + + true on success, false otherwise + + + + + + + Get the EKUs of a cert + + + certificate object + + a collection of cert eku strings + + + + + + + convert an int to a DWORD + + + signed int number + + DWORD + + + + + + + convert a DWORD to int + + + number + + int + + + + + + + information used for filtering a set of certs + + + + + purpose of a certificate + + + + + SSL Server Authentication + + + + + DNS name of a certificate + + + + + EKU OID list of a certificate + + + + + remaining validity period in days for a certificate + + + + + combine properties into a filter string + + + + + This attribute is used for Design For Testability. + It should be placed on any method containing code + which is likely to be sensitive to X86/X64/IA64 issues, + primarily code which calls DllImports or otherwise uses + NativeMethods. This allows us to generate code coverage + data specific to architecture sensitive code. + + + + + Constructor for the ArchitectureSensitiveAttribute class. + + + + + A PipelineReader for an ObjectStream + + + This class is not safe for multi-threaded operations. + + + + + Construct with an existing ObjectStream + + the stream to read + Thrown if the specified stream is null + + + + Event fired when objects are added to the underlying stream + + + + + Waitable handle for caller's to block until data is ready to read from the underlying stream + + + + + Check if the stream is closed and contains no data. + + True if the stream is closed and contains no data, otherwise; false. + + Attempting to read from the underlying stream if EndOfPipeline is true returns + zero objects. + + + + + Check if the stream is open for further writes. + + true if the underlying stream is open, otherwise; false. + + The underlying stream may be readable after it is closed if data remains in the + internal buffer. Check to determine if + the underlying stream is closed and contains no data. + + + + + Returns the number of objects in the underlying stream + + + + + Get the capacity of the stream + + + The capacity of the stream. + + + The capacity is the number of objects that stream may contain at one time. Once this + limit is reached, attempts to write into the stream block until buffer space + becomes available. + + + + + Close the stream + + + Causes subsequent calls to IsOpen to return false and calls to + a write operation to throw an ObjectDisposedException. + All calls to Close() after the first call are silently ignored. + + + The stream is already disposed + + + + + Handle DataReady events from the underlying stream + + The stream raising the event + standard event args. + + + + The underlying stream + + Can never be null + + + + This object is used to acquire an exclusive lock + on event handler registration. + + + Note that we lock _monitorObject rather than "this" so that + we are protected from outside code interfering in our + critical section. Thanks to Wintellect for the hint. + + + + + public method for dispose + + + + + release all resources + + if true, release all managed resources + + + + A PipelineReader reading objects from an ObjectStream + + + This class is not safe for multi-threaded operations. + + + + + Construct with an existing ObjectStream + + the stream to read + Thrown if the specified stream is null + + + + Read at most objects + + The maximum number of objects to read + The objects read + + This method blocks if the number of objects in the stream is less than + and the stream is not closed. + + + + + Read a single object from the stream + + the next object in the stream + This method blocks if the stream is empty + + + + Blocks until the pipeline closes and reads all objects. + + A collection of zero or more objects. + + If the stream is empty, an empty collection is returned. + + + + + Reads all objects currently in the stream, but does not block. + + A collection of zero or more objects. + + This method performs a read of all objects currently in the + stream. The method will block until exclusive access to the + stream is acquired. If there are no objects in the stream, + an empty collection is returned. + + + + + Reads objects currently in the stream, but does not block. + + A collection of zero or more objects. + + This method performs a read of objects currently in the + stream. The method will block until exclusive access to the + stream is acquired. If there are no objects in the stream, + an empty collection is returned. + + + Return no more than maxRequested objects. + + + + + Peek the next object + + The next object in the stream or ObjectStream.EmptyObject if the stream is empty + + + + release all resources + + if true, release all managed resources + + + + A PipelineReader reading PSObjects from an ObjectStream + + + This class is not safe for multi-threaded operations. + + + + + Construct with an existing ObjectStream + + the stream to read + Thrown if the specified stream is null + + + + Read at most objects + + The maximum number of objects to read + The objects read + + This method blocks if the number of objects in the stream is less than + and the stream is not closed. + + + + + Read a single PSObject from the stream + + the next PSObject in the stream + This method blocks if the stream is empty + + + + Blocks until the pipeline closes and reads all objects. + + A collection of zero or more objects. + + If the stream is empty, an empty collection is returned. + + + + + Reads all objects currently in the stream, but does not block. + + A collection of zero or more objects. + + This method performs a read of all objects currently in the + stream. The method will block until exclusive access to the + stream is acquired. If there are no objects in the stream, + an empty collection is returned. + + + + + Reads objects currently in the stream, but does not block. + + A collection of zero or more objects. + + This method performs a read of objects currently in the + stream. The method will block until exclusive access to the + stream is acquired. If there are no objects in the stream, + an empty collection is returned. + + + Return no more than maxRequested objects. + + + + + Peek the next PSObject + + The next PSObject in the stream or ObjectStream.EmptyObject if the stream is empty + + + + release all resources + + if true, release all managed resources + + + + A ObjectReader for a PSDataCollection ObjectStream + + + PSDataCollection is introduced after 1.0. PSDataCollection is + used to store data which can be used with different + commands concurrently. + Only Read() operation is supported currently. + + + + + Construct with an existing ObjectStream + + the stream to read + Thrown if the specified stream is null + + + + This method is not supported. + + The maximum number of objects to read + The objects read + + + + Read a single object from the stream. + + + The next object in the buffer or AutomationNull if buffer is closed + and data is not available. + + + This method blocks if the buffer is empty. + + + + + This method is not supported. + + + + + + + This method is not supported. + + + + + + + This method is not supported. + + + + + Return no more than maxRequested objects. + + + + + This method is not supported. + + + + + + release all resources + + if true, release all managed resources + + + + A ObjectReader for a PSDataCollection ObjectStream + + + PSDataCollection is introduced after 1.0. PSDataCollection is + used to store data which can be used with different + commands concurrently. + Only Read() operation is supported currently. + + + + + Construct with an existing ObjectStream + + the stream to read + + + + + + Computer name passed in by the pipeline which + created this reader + + + + + Runspace Id passed in by the pipeline which + created this reader + + + + + This method is not supported. + + The maximum number of objects to read + The objects read + + + + Read a single object from the stream. + + + The next object in the buffer or AutomationNull if buffer is closed + and data is not available. + + + This method blocks if the buffer is empty. + + + + + This method is not supported. + + + + + + + This method is not supported. + + + + + + + This method is not supported. + + + + + Return no more than maxRequested objects. + + + + + This method is not supported. + + + + + + Converts to the return type based on language primitives + + input object to convert + input object converted to the specified return type + + + + release all resources + + if true, release all managed resources + + + + Base class representing a FIFO memory based object stream. + The purpose of this abstraction is to provide the + semantics of a unidirectional stream of objects + between two threads using a dynamic memory buffer. + + + + + Event fired when data is added to the buffer + + + + + Raises DataReadyEvent. + + + Source of the event + + + Event args + + + + + Get the capacity of the stream + + + The capacity of the stream. + + + The capacity is the number of objects the stream may contain at one time. Once this + limit is reached, attempts to write into the stream block until buffer space + becomes available. + MaxCapacity cannot change, so we can skip the lock. + + + + + Waitable handle for callers to wait on until data ready to read. + + + The handle is set when data becomes available to read or + when a partial read has completed. If multiple readers + are used, setting the handle does not guarantee that + a read operation will return data. If using multiple + reader threads, for + performing non-blocking reads. + + + + + Waitable handle for callers to block until buffer space becomes available. + + + The handle is set when space becomes available for writing. For multiple + writer threads writing to a bounded stream, the writer may still block + if another thread fills the stream to capacity. + + + + + Determine if we are at the end of the stream + + + EndOfPipeline is defined as the stream being closed and containing + zero objects. Readers check this to determine if any objects + are in the stream. Writers should check to determine + if the stream can be written to. + + + + + Check if the stream is open for further writes. + + true if the stream is open, false if not. + + IsOpen returns true until the first call to Close(). Writers should + check IsOpen to determine if a write operation can be made. Note that + writers need to catch . + + + + + + Returns the number of objects in the stream + + + + + Return a PipelineReader(object) for this stream + + + + + Return a PipelineReader(PSObject) for this stream + + + + + Return an PipelineWriter for this stream + + + + + Read a single object from the stream + + The next object in the stream or AutomationNull if EndOfPipeline is reached + This method blocks if the stream is empty + + + + Read at most objects + + The maximum number of objects to read + The objects read + + is less than 0 + + + This method blocks if the number of objects in the stream is less than + and the stream is not closed. + + If there are multiple reader threads, the objects returned + to blocking reads Read(int count) and ReadToEnd() + are not necessarily single blocks of objects added to the + stream in that order. For example, if ABCDEF are added to the + stream, one reader may get ABDE and the other may get CF. + Each reader reads items from the stream as they become available. + Otherwise, if a maximum _capacity has been imposed, the writer + and reader could become mutually deadlocked. + + When there are multiple blocked readers, any of the readers + may get the next object(s) added. + + + + + Blocks until the pipeline closes and reads all objects. + + A collection of zero or more objects. + + If the stream is empty, a collection of size zero is returned. + + If there are multiple reader threads, the objects returned + to blocking reads Read(int count) and ReadToEnd() + are not necessarily single blocks of objects added to the + stream in that order. For example, if ABCDEF are added to the + stream, one reader may get ABDE and the other may get CF. + Each reader reads items from the stream as they become available. + Otherwise, if a maximum _capacity has been imposed, the writer + and reader could become mutually deadlocked. + + When there are multiple blocked readers, any of the readers + may get the next object(s) added. + + + + + Reads objects currently in the stream, but does not block. + + An array of zero or more objects. + + This method performs a read of objects currently in the + stream. The method will block until exclusive access to the + stream is acquired. If there are no objects in the stream, + an empty array is returned. + + + Return no more than maxRequested objects. + + + is less than 0 + + + + + Peek the next object + + + The next object in the stream or AutomationNull.Value if the stream is empty + + The ObjectStream is closed + + + + Writes a object to the current position in the stream and + advances the position within the stream by one object. + + The object to write to the stream. + + One, if the write was successful, otherwise; + zero if the stream was closed before the object could be written, + or if the object was AutomationNull.Value. + + + The stream is closed + + + AutomationNull.Value is ignored + + + + + Write objects to the underlying stream + + object or enumeration to read from + + If enumerateCollection is true, and + is an enumeration according to LanguagePrimitives.GetEnumerable, + the objects in the enumeration will be unrolled and + written seperately. Otherwise, + will be written as a single object. + + The number of objects written + + The underlying stream is closed + + + If the enumeration contains elements equal to + AutomationNull.Value, they are are ignored. + This can cause the return value to be less than the size of + the collection. + + + + + Close the stream + + + Causes subsequent calls to IsOpen to return false and calls to + a write operation to throw PipelineClosedException. + All calls to Close() after the first call are silently ignored. + + + + + Flush the data from the stream. Closed streams may be flushed. + + + + + public method for dispose + + + + + release all resources + + if true, release all managed resources + + + + A FIFO memory based object stream. + The purpose of this stream class is to provide the + semantics of a unidirectional stream of objects + between two threads using a dynamic memory buffer. + + + The stream may be bound or unbounded. Bounded streams + are created via passing a capacity to the constructor. + Unbounded streams are created using the default constructor. + + The capacity of the stream can not be changed after + construction. + + For bounded streams, attempts to write to the stream when + the capacity has been reached causes the writer to block + until objects are read. + + For unbounded streams, writers only block for the amount + of time needed to acquire exclusive access to the + stream. Note that unbounded streams have a capacity of + of Int32.MaxValue objects. In theory, if this limit were + reached, the stream would function as a bounded stream. + + This class is safe for multi-threaded use with the following + side-effects: + + > For bounded streams, write operations are not guaranteed to + be atomic. If a write operation causes the capacity to be + reached without writing all data, a partial write occurs and + the writer blocks until data is read from the stream. + + > When multiple writer or reader threads are used, the order + the reader or writer acquires a lock on the stream is + undefined. This means that the first call to write does not + guarantee the writer will acquire a write lock first. The first + call to read does not guarantee the reader will acquire the + read lock first. + + > Reads and writes may occur in any order. With a bounded + stream, write operations between threads may also result in + interleaved write operations. + + The result is that the order of data is only guaranteed if there is a + single writer. + + + + + Objects in the stream + + + + + Is the stream open or closed for writing? + + + + + Read handle - signaled when data is ready to read + + + This event may, on occasion, be signalled even when there is + no data available. If this happens, just wait again. + Never wait on this event alone. Since this is an AutoResetEvent, + there is no way to definitely release all blocked threads when + the stream is closed for reading. Instead, use WaitAny on + this handle and also _readClosedHandle. + + + + + Handle returned to callers for blocking on data ready + + + + + When this handle is set, the stream is closed for reading, + so all blocked readers should be released. + + + + + Write handle - signaled with the number of objects in the + stream becomes less than the maximum number of objects + allowed in the stream. + + + This event may, on occasion, be signalled even when there is + no write buffer available. If this happens, just wait again. + Never wait on this event alone. Since this is an AutoResetEvent, + there is no way to definitely release all blocked threads when + the stream is closed for writing. Instead, use WaitAny on + this handle and also _writeClosedHandle. + + + + + Handle returned to callers for blocking until buffer space + is available for write. + + + + + When this handle is set, the stream is closed for writing, + so all blocked readers should be released. + + + + + The object reader for this stream. + + + This field is allocated on first demand and + returned on subsequent calls. + + + + + The PSObject reader for this stream. + + + This field is allocated on first demand and + returned on subsequent calls. + + + + + The object writer for this stream. + + + This field is allocated on first demand and + returned on subsequent calls. + + + + + Maximum number of objects allowed in the stream + Note that this is not permitted to be more than Int32.MaxValue, + since the underlying list has this limitation + + + + + This object is used to acquire an exclusive lock on the stream + + + Note that we lock _monitorObject rather than "this" so that + we are protected from outside code interfering in our + critical section. Thanks to Wintellect for the hint. + + + + + Indicates if this stream has already been disposed + + + + + Default constructor + + + Constructs a stream with a miximum size of Int32.Max + + + + + Allocate the stream with an initial size + + + The maximum number of objects to allow in the buffer at a time. + Note that this is not permitted to be more than Int32.MaxValue, + since the underlying list has this limitation + + + is less than or equal to zero + is greater than Int32.MaxValue + + + + + Get the capacity of the stream + + + The capacity of the stream. + + + The capacity is the number of objects the stream may contain at one time. Once this + limit is reached, attempts to write into the stream block until buffer space + becomes available. + MaxCapacity cannot change, so we can skip the lock. + + + + + Waitable handle for callers to wait on until data ready to read. + + + The handle is set when data becomes available to read or + when a partial read has completed. If multiple readers + are used, setting the handle does not guarantee that + a read operation will return data. If using multiple + reader threads, for + performing non-blocking reads. + + + + + Waitable handle for callers to block until buffer space becomes available. + + + The handle is set when space becomes available for writing. For multiple + writer threads writing to a bounded stream, the writer may still block + if another thread fills the stream to capacity. + + + + + Return a PipelineReader(object) for this stream + + + + + Return a PipelineReader(PSObject) for this stream + + + + + Return an PipelineWriter for this stream + + + + + Determine if we are at the end of the stream + + + EndOfPipeline is defined as the stream being closed and containing + zero objects. Readers check this to determine if any objects + are in the stream. Writers should check to determine + if the stream can be written to. + + + + + Check if the stream is open for further writes. + + true if the stream is open, false if not. + + IsOpen returns true until the first call to Close(). Writers should + check IsOpen to determine if a write operation can be made. Note that + writers need to catch . + + + + + + Returns the number of objects in the stream + + + + + Wait for data to be readable + + true if EndOfPipeline is not reached. + + WaitRead does not guarantee that data is present in the stream, + only that data was added when the event was signaled. Since there may be + multiple readers, data may be removed from the stream + before the caller has a chance to read the data. + This method should never be called within a lock(_monitorObject). + + + + + Wait for data to be writeable + + True if the stream is writeable, otherwise; false. + + WaitWrite does not guarantee that buffer space will be available in the stream + when the caller attempts to write, only that buffer space was available + when the event was signaled. + This method should never be called within a lock(_monitorObject). + + + + + Utility method to signal handles and raise events + in the consistent order. + NOTE: Release the lock before raising events; otherwise, + there is a possible deadlock during the readable event. + + + RaiseEvents is fairly idempotent, although it will signal + DataReady every time. + + + + + Flush the data from the stream. Closed streams may be flushed. + + + + + Close the stream + + + Causes subsequent calls to IsOpen to return false and calls to + a write operation to throw PipelineClosedException. + All calls to Close() after the first call are silently ignored. + + + + + Read a single object from the stream + + The next object in the stream or AutomationNull if EndOfPipeline is reached + This method blocks if the stream is empty + + + + Read at most objects + + The maximum number of objects to read + The objects read + + is less than 0 + + + This method blocks if the number of objects in the stream is less than + and the stream is not closed. + + If there are multiple reader threads, the objects returned + to blocking reads Read(int count) and ReadToEnd() + are not necessarily single blocks of objects added to the + stream in that order. For example, if ABCDEF are added to the + stream, one reader may get ABDE and the other may get CF. + Each reader reads items from the stream as they become available. + Otherwise, if a maximum _capacity has been imposed, the writer + and reader could become mutually deadlocked. + + When there are multiple blocked readers, any of the readers + may get the next object(s) added. + + + + + Blocks until the pipeline closes and reads all objects. + + A collection of zero or more objects. + + If the stream is empty, a collection of size zero is returned. + + If there are multiple reader threads, the objects returned + to blocking reads Read(int count) and ReadToEnd() + are not necessarily single blocks of objects added to the + stream in that order. For example, if ABCDEF are added to the + stream, one reader may get ABDE and the other may get CF. + Each reader reads items from the stream as they become available. + Otherwise, if a maximum _capacity has been imposed, the writer + and reader could become mutually deadlocked. + + When there are multiple blocked readers, any of the readers + may get the next object(s) added. + + + + + Reads objects currently in the stream, but does not block. + + An array of zero or more objects. + + This method performs a read of objects currently in the + stream. The method will block until exclusive access to the + stream is acquired. If there are no objects in the stream, + an empty array is returned. + + + Return no more than maxRequested objects. + + + is less than 0 + + + + + Peek the next object + + + The next object in the stream or AutomationNull.Value if the stream is empty + + The ObjectStream is closed + + + + Write objects to the underlying stream + + object or enumeration to read from + + If enumerateCollection is true, and + is an enumeration according to LanguagePrimitives.GetEnumerable, + the objects in the enumeration will be unrolled and + written seperately. Otherwise, + will be written as a single object. + + The number of objects written + + The underlying stream is closed + + + If the enumeration contains elements equal to + AutomationNull.Value, they are are ignored. + This can cause the return value to be less than the size of + the collection. + + + + + These methods are necessary to provide the ObjectStreamTest BVT + access to the internal handler DataReady. The EventInfo + reflection class does not give access to internal events. + + + + + + release all resources + + if true, release all managed resources + + + + An object stream using a PSDataCollection as the object store. + This stream lets user to supply a custom PSDataCollection instance + to use as the stream's object store. + + This stream is designed to be used with the user supplied + PSDataBuffers. For internal only purposes use ObjectStream. + + + + + Creates the stream and uses the supplied + as the object store + + + Guid of Powershell instance creating this stream. + + + A PSDataCollection instance. + + + 1. storeToUse is null + + + + + Gets the PSDataCollection used to store data for this stream. + + + + + Returns the number of objects in the stream + + + + + This is not supported + + + + + Check if the stream is open for further writes. + + true if the stream is open, false if not. + + IsOpen returns true until the first call to Close(). Writers should + check IsOpen to determine if a write operation can be made. + + + + + This is not supported. + + + + + Return a PipelineReader(object) for this stream + + + + + Creates an Object Reader for the pipeline + + computer name that the pipeline specifies + runspace id that the pipeline specifies + the computer name and runspace id are associated with the + reader so as to enable cmdlets to identify which computer name runspace does + the object that this stream writes belongs to + + + + Return a PipelineReader(PSObject) for this stream + + + + + Creates a PSObject Reader for this pipeline + + computer name that the pipeline specifies + runspace id that the pipeline specifies + the computer name and runspace id are associated with the + reader so as to enable cmdlets to identify which computer name runspace does + the object that this stream writes belongs to + + + + The object writer for this stream. + + + This field is allocated on first demand and + returned on subsequent calls. + + + + + Read handle associated with this stream + + + + + Write object(s) to the databuffer. + + + + + + + + This stream do not perform close operations on the buffer. + It is upto the user to close the buffers as and when needed. + However this method notifies the buffer by decrementing the + ref count. + + + + + + + + + + + + + + + + + + + release all resources + + if true, release all resources + + + + A ObjectWriter for an ObjectStream + + + This class is not safe for multi-threaded operations. + + + + + Construct with an existing ObjectStream + + the stream to write + Thrown if the specified stream is null + + + + Waitable handle for caller's to block until buffer space is available in the underlying stream + + + + + Check if the stream is open for further writes. + + true if the underlying stream is open, otherwise; false. + + Attempting to write to the underlying stream if IsOpen is false throws + a . + + + + + Returns the number of objects in the underlying stream + + + + + Get the capacity of the stream + + + The capacity of the stream. + + + The capacity is the number of objects that stream may contain at one time. Once this + limit is reached, attempts to write into the stream block until buffer space + becomes available. + + + + + Close the stream + + + Causes subsequent calls to IsOpen to return false and calls to + a write operation to throw an ObjectDisposedException. + All calls to Close() after the first call are silently ignored. + + + The stream is already disposed + + + + + Flush the data from the stream. Closed streams may be flushed, + but disposed streams may not. + + + The underlying stream is disposed + + + + + Write a single object into the underlying stream + + The object to add to the stream + + One, if the write was successful, otherwise; + zero if the stream was closed before the object could be written, + or if the object was AutomationNull.Value. + + + The underlying stream is closed + + + AutomationNull.Value is ignored + + + + + Write objects to the underlying stream + + object or enumeration to read from + + If enumerateCollection is true, and + is an enumeration according to LanguagePrimitives.GetEnumerable, + the objects in the enumeration will be unrolled and + written seperately. Otherwise, + will be written as a single object. + + The number of objects written + + The underlying stream is closed + + + If the enumeration contains elements equal to + AutomationNull.Value, they are are ignored. + This can cause the return value to be less than the size of + the collection. + + + + + The underlying stream + + Can never be null + + + + A ObjectWriter for a PSDataCollection ObjectStream + + + PSDataCollection is introduced after 1.0. PSDataCollection + is used to store data from the last command in + the pipeline and hence the writer will not + support certain features like Flush(). + + + + + Construct with an existing PSDataCollectionStream + + the stream to write + + Thrown if the specified stream is null + + + + + Class that encapsulates native crypto provider handles and provides a + mechanism for resources released by them + + + + + This safehandle instance "owns" the handle, hence base(true) + is being called. When safehandle is no longer in use it will + call this class's ReleaseHandle method which will release + the resources + + + + + Release the crypto handle held by this instance + + true on success, false otherwise + + + + Class the encapsulates native crypto key handles and provides a + mechanism to release resources used by it + + + + + This safehandle instance "owns" the handle, hence base(true) + is being called. When safehandle is no longer in use it will + call this class's ReleaseHandle method which will release the + resources + + + + + Release the crypto handle held by this instance + + true on success, false otherwise + + + + Equivalent of IntPtr.Zero for the safe crypt key + + + + + This class provides the wrapper for all Native CAPI functions + + + + Return Type: BOOL->int + hProv: HCRYPTPROV->ULONG_PTR->unsigned int + Algid: ALG_ID->unsigned int + dwFlags: DWORD->unsigned int + phKey: HCRYPTKEY* + + + Return Type: BOOL->int + hKey: HCRYPTKEY->ULONG_PTR->unsigned int + + + Return Type: BOOL->int + phProv: HCRYPTPROV* + szContainer: LPCWSTR->WCHAR* + szProvider: LPCWSTR->WCHAR* + dwProvType: DWORD->unsigned int + dwFlags: DWORD->unsigned int + + + Return Type: BOOL->int + hProv: HCRYPTPROV->ULONG_PTR->unsigned int + dwFlags: DWORD->unsigned int + + + Return Type: BOOL->int + hKey: HCRYPTKEY->ULONG_PTR->unsigned int + hHash: HCRYPTHASH->ULONG_PTR->unsigned int + Final: BOOL->int + dwFlags: DWORD->unsigned int + pbData: BYTE* + pdwDataLen: DWORD* + dwBufLen: DWORD->unsigned int + + + Return Type: BOOL->int + hKey: HCRYPTKEY->ULONG_PTR->unsigned int + hHash: HCRYPTHASH->ULONG_PTR->unsigned int + Final: BOOL->int + dwFlags: DWORD->unsigned int + pbData: BYTE* + pdwDataLen: DWORD* + + + Return Type: BOOL->int + hKey: HCRYPTKEY->ULONG_PTR->unsigned int + hExpKey: HCRYPTKEY->ULONG_PTR->unsigned int + dwBlobType: DWORD->unsigned int + dwFlags: DWORD->unsigned int + pbData: BYTE* + pdwDataLen: DWORD* + + + Return Type: BOOL->int + hProv: HCRYPTPROV->ULONG_PTR->unsigned int + pbData: BYTE* + dwDataLen: DWORD->unsigned int + hPubKey: HCRYPTKEY->ULONG_PTR->unsigned int + dwFlags: DWORD->unsigned int + phKey: HCRYPTKEY* + + + Return Type: BOOL->int + hKey: HCRYPTKEY->ULONG_PTR->unsigned int + pdwReserved: DWORD* + dwFlags: DWORD->unsigned int + phKey: HCRYPTKEY* + + + Return Type: DWORD->unsigned int + + + + Do not use persisted private key + + + + + Mark the key for export + + + + + Automatically assign a salt value when creating a + session key + + + + + RSA Provider + + + + + RSA Provider that supports AES + encryption + + + + + Public key to be used for encryption + + + + + RSA Key + + + + + Create a key for encryption + + + + + Create a RSA key pair + + + + + + + + + + Option for exporting public key blob + + + + + Option for exporting a session key + + + + + AES 256 symmetric key + + + + + ALG_CLASS_DATA_ENCRYPT + + + + + ALG_TYPE_BLOCK + + + + + ALG_SID_AES_256 -> 16 + + + + CALG_AES_128 -> (ALG_CLASS_DATA_ENCRYPT|ALG_TYPE_BLOCK|ALG_SID_AES_128) + + + ALG_SID_AES_128 -> 14 + + + + Defines a custom exception which is thrown when + a native CAPI call results in an error + + This exception is currently internal as it's not + surfaced to the user. However, if we decide to surface errors + to the user when something fails on the remote end, then this + can be turned public + + + + Error code returned by the native CAPI call + + + + + Default constructor + + + + + Constructor that will be used from within CryptoUtils + + error code returned by native + crypto application + error message associated with this failure + + + + Constructor with just message but no inner exception + + error message associated with this failure + + + + Constructor with inner exception + + error message + innter exception + This constructor is currently not called + explicitly from crypto utils + + + + Constructor which has type specific serialization logic + + serialization info + context in which this constructor is called + Currently no custom type-specific serialization logic is + implemented + + + + Returns base implementation + + serialization info + context + + + + One of the issues with RSACryptoServiceProvider is that it never uses CRYPT_VERIFYCONTEXT + to create ephemeral keys. This class is a facade written on top of native CAPI APIs + to create ephemeral keys. + + + + + Private constructor + + indicates if this service + provider is operating in server mode + + + + Get the public key as a base64 encoded string + + public key as base64 encoded string + + + + Generates an AEX-256 sessin key if one is not already generated + + + + + 1. Generate a AES-256 session key + 2. Encrypt the session key with the Imported + RSA public key + 3. Encode result above as base 64 string and export + + session key encrypted with receivers public key + and encoded as a base 64 string + + + + Import a public key into the provider whose context + has been obtained + + base64 encoded public key to import + + + + Import a session key from the remote side into + the current CSP + + encrypted session key as a + base64 encoded string + + + + Encrypt the specified byte array + + data to encrypt + encrypted byte array + + + + Decrypt the specified buffer + + data to decrypt + decrypted buffer + + + + Generates key pair in a thread safe manner + the first time when required + + + + + Indicates if a key exchange is complete + and this provider can encrypt + + + + + Returns a crypto service provider for use in the + client. This will reuse the key that has been + generated + + crypto service provider for + the client side + + + + Returns a crypto service provider for use in the + server. This will not generate a key pair + + crypto service provider for + the server side + + + + Checks the status of a call, if it had resulted in an error + then obtains the last error, wraps it in an exception and + throws the same + + value to examine + + + + Dipose resources + + + + + Destructor + + + + + Helper for exchanging keys and encrypting/decrypting + secure strings for serialization in remoting + + + + + Crypto provider which will be used for importing remote + public key as well as generating a session key, exporting + it and performing symmetric key operations using the + session key + + + + + Key exchange has been completed and both keys + available + + + + + Object for synchronizing key exchange + + + + + + + + + + Core logic to encrypt a string. Assumes session key is already generated + + + secure string to be encrypted + + + + + + Core logic to decrypt a secure string. Assumes session key is already available + + + encrypted string to be decrypted + + + + + + Encrypt a secure string + + secure string to encrypt + encrypted string + This method zeroes out all interim buffers used + + + + Decrypt a string and construct a secure string from its + contents + + encrypted string + secure string object + This method zeroes out any interim buffers used + + + + Represents the session to be used for requesting public key + + + + + + + + + + + + + + + + Resets the wait for key exchange + + + + + Helper for exchanging keys and encrypting/decrypting + secure strings for serialization in remoting + + + + + This is the instance of runspace pool data structure handler + to use for negotiations + + + + + Creates the encryption provider, but generates no key. + The key will be imported later + + + + + Imports a public key from its base64 encoded string representation + + public key in its string representation + true on success + + + + Represents the session to be used for requesting public key + + + + + + + + + + + + Gets a helper with a test session + + helper for testing + To be used only for testing + + + + Helper for exchanging keys and encrypting/decrypting + secure strings for serialization in remoting + + + + + This is the instance of runspace pool data structure handler + to use for negotiations + + + + + Creates the encryption provider, but generates no key. + The key will be imported later + + + + + Export the public key as a base64 encoded string + + on execution will contain + the public key as string + true on success + + + + + + + + + + + Represents the session to be used for requesting public key + + + + + Gets a helper with a test session + + helper for testing + To be used only for testing + + + + This wrapper is for encapsulating all the internal details of Asimov-compatible telemetry in Windows Threshold + + + + + Performing EventSource initialization in the Static Constructor since this is thread safe. + Static constructors are guaranteed to be run only once per application domain, before any instances of a class are created or any static members are accessed. + https://msdn.microsoft.com/en-us/library/aa645612(VS.71).aspx + + + + + TRACEMESSAGE is the Generic method to use to log messages using UTC [Universal Telemetry Client] in Windows Threshold + TRACEMESSAGE calls into EventSource.Write dynamically - https://msdn.microsoft.com/en-us/library/dn823293(v=vs.110).aspx + + + + + Helper to access Microsoft.PowerShell.GraphicalHost.dll (which references on WPF) using reflection, since + we do not want System.Management.Automation.dll or Microsoft.PowerShell.Commands.Utility.dll to reference WPF. + Microsoft.PowerShell.GraphicalHost.dll contains: + 1) out-gridview window implementation (the actual cmdlet is in Microsoft.PowerShell.Commands.Utility.dll) + 2) show-command window implementation (the actual cmdlet is in Microsoft.PowerShell.Commands.Utility.dll) + 3) the help window used in the System.Management.Automation.dll's get-help cmdslet when -ShowWindow is specified + + + + + Initialized in GetGraphicalHostReflectionWrapper with the Microsoft.PowerShell.GraphicalHost.dll assembly. + + + + + A type in Microsoft.PowerShell.GraphicalHost.dll we want to invoke members on + + + + + An object in Microsoft.PowerShell.GraphicalHost.dll of type graphicalHostHelperType + + + + + Prevents a default instance of the GraphicalHostReflectionWrapper class from being created + + + + + Retrieves a wrapper used to invoke members of the type with name + in Microsoft.PowerShell.GraphicalHost.dll + + the cmdlet requesting the wrapper (used to throw terminating errors) + the type name we want to invoke members from + + wrapper used to invoke members of the type with name + in Microsoft.PowerShell.GraphicalHost.dll + + When it was not possible to load Microsoft.PowerShell.GraphicalHost.dlly + + + + Retrieves a wrapper used to invoke members of the type with name + in Microsoft.PowerShell.GraphicalHost.dll + + the cmdlet requesting the wrapper (used to throw terminating errors) + the type name we want to invoke members from + used for error messages + + wrapper used to invoke members of the type with name + in Microsoft.PowerShell.GraphicalHost.dll + + When it was not possible to load Microsoft.PowerShell.GraphicalHost.dlly + + + + Used to escape characters that are not friendly to WPF binding + + property name to be used in binding + string with escaped characters + + + + Calls an instance method with name passing the + + name of the method to call + arguments to call the method with + The method return value + + + + Calls a static method with name passing the + + name of the method to call + arguments to call the method with + The method return value + + + + Gets the value of an instance property with name + + name of the instance property to get the value from + the value of an instance property with name + + + + Gets the value of a static property with name + + name of the static property to get the value from + the value of a static property with name + + + + Returns true if the is being run remotely + + cmdlet we want to see if is running remotely + true if the is being run remotely + + + + Supports the transaction management infrastructure for the PowerShell engine + + + + + + Initializes a new instance of the PSTransactionManager class + + + + + + Called by engine APIs to ensure they are protected from + ambient transactions. + + + + + + Called by the transaction manager to enable engine + protection the first time a transaction is activated. + Engine protection APIs remain protected from this point on. + + + + + + Gets the rollback preference for the active transaction + + + + + + Creates a new Transaction if none are active. Otherwise, increments + the subscriber count for the active transaction. + + + + + + Creates a new Transaction if none are active. Otherwise, increments + the subscriber count for the active transaction. + + + + + + Creates a new Transaction that should be managed idependently of + any parent transactions. + + + + + + Creates a new Transaction that should be managed idependently of + any parent transactions. + + + + + + Completes the current transaction. If only one subscriber is active, this + commits the transaction. Otherwise, it reduces the subscriber count by one. + + + + + + Aborts the current transaction, no matter how many subscribers are part of it. + + + + + + Aborts the current transaction, no matter how many subscribers are part of it. + + + + + + Sets the base transaction; any transactions created thereafter will be nested to this instance + + + + + + Removes the transaction added by SetBaseTransaction + + + + + + Returns the current engine transaction + + + + + + Activates the current transaction, both in the engine, and in the Ambient. + + + + + + Deactivates the current transaction in the engine, and restores the + ambient transaction. + + + + + + Determines if you have a transaction that you can set active and work on. + + + + + + Determines if the last transaction has been committed. + + + + + Determines if the last transaction has been rolled back. + + + + + Destructor for the PSTransactionManager class + + + + + + Disposes the PSTransactionManager object. + + + + + + Disposes the PSTransactionContext object, which resets the + active PSTransaction. + + + Whether to actually dispose the object. + + + + + + + Defines the Action Preference options. These options determine + what will happen when a particular type of event occurs. + For example, setting shell variable ErrorActionPreference to "Stop" + will cause the command to stop when an otherwise non-terminating + error occurs. + + + + Ignore this event and continue + + + Stop the command + + + Handle this event as normal and continue + + + Ask whether to stop or continue + + + Ignore the event completely (not even logging it to the target stream) + + + Suspend the command for further diagnosis. Supported only for workflows. + + + + Defines the ConfirmImpact levels. These levels describe + the "destructiveness" of an action, and thus the degree of + important that the user confirm the action. + For example, setting the read-only flag on a file might be Low, + and reformatting a disk might be High. + These levels are also used in $ConfirmPreference to describe + which operations should be confirmed. Operations with ConfirmImpact + equal to or greater than $ConfirmPreference are confirmed. + Operations with ConfirmImpact.None are never confirmed, and + no operations are confirmed when $ConfirmPreference is ConfirmImpact.None + (except when explicitly requested with -Confirm). + + + + There is never any need to confirm this action. + + + + This action only needs to be confirmed when the + user has requested that low-impact changes must be confirmed. + + + + + This action should be confirmed in most scenarios where + confirmation is requested. + + + + + This action is potentially highly "destructive" and should be + confirmed by default unless otherwise specified. + + + + + Command factory provides a generic interface to create different types of commands. + + + + + Execution context under which the command should be created. + + + + + Initializes the new instance of CommandFactory class. + + + + + Initializes the new instance of CommandFactory class. + + Execution context. + + + + Creates a command object corresponing to specified name. The command processor will use global scope. + + Creates a command object corresponing to specified name. + Location where the command was dispatched from. + Created command processor object. + + Thrown if session state does not contain the CommandDiscovery instance. + + + + + Creates a command object corresponing to specified name. + + Creates a command object corresponing to specified name. + Location where the command was dispatched from. + + True if command processor should use local scope to execute the command, + False otherwise. + + Created command processor object. + + Thrown if session state does not contain the CommandDiscovery instance. + + + + + Creates a command object corresponing to specified name. + + Creates a command object corresponing to specified name. + Execution Context. + Location where the command was dispatched from. + Created command processor object. + + Thrown if session state does not contain the CommandDiscovery instance. + + + + + Represents a parameter to the Command. + + + + + Gets and sets the string that represents parameter name, which does not include the '-' (dash). + + + + + The text of the parameter, which typically includes the leading '-' (dash) and, if specified, the trailing ':'. + + + + + The extent of the parameter, if one was specified. + + + + + The extent of the optional argument, if one was specified. + + + + + The value of the optional argument, if one was specified, otherwise UnboundParameter.Value. + + + + + If an argument was specified and is to be splatted, returns true, otherwise false. + + + + + If an argument was specified and it was an array literal with no spaces around the + commas, the value should be passed a single argument with it's commas if the command is + a native command. + + + + + Set the argument value and extent. + + + + + The extent to use when reporting generic errors. The argument extent is used, if it is not empty, otherwise + the parameter extent is used. Some errors may prefer the parameter extent and should not use this method. + + + + + Create a parameter when no argument has been specified. + + The extent in script of the parameter. + The parameter name (with no leading dash). + The text of the parameter, as it did, or would, appear in script. + + + + Create a positional argument to a command. + + The extent of the argument value in the script. + The argument value. + True if the argument value is to be splatted, false otherwise. + If the command is native, pass the string with commas instead of multiple arguments + + + + Create an named argument, where the parameter name is known. This can happen when: + * The user uses the ':' syntax, as in + foo -bar:val + * Splatting, as in + $x = @{ bar = val } ; foo @x + * Via an API - when converting a CommandParameter to CommandParameterInternal. + * In the parameter binder when it resolves a positional argument + * Other random places that manually construct command processors and know their arguments. + + The extent in script of the parameter. + The parameter name (with no leading dash). + The text of the parameter, as it did, or would, appear in script. + The extent of the argument value in the script. + The argument value. + Used in native commands to correctly handle -foo:bar vs. -foo: bar + If the command is native, pass the string with commas instead of multiple arguments + + + + Class definition of CommandProcessor - This class provides interface to create + and execute commands written in CLS compliant languages. + + + + + Initializes the new instance of CommandProcessor class. + + + + The information about the cmdlet. + + + + PowerShell engine execution context for this command. + + + + If there was a failure creating an instance of the cmdlet type. + + + + + + This is the constructor for script as cmdlet. + + + The information about the cmdlet. + + + PowerShell engine execution context for this command. + + + + True when the script to be executed came from a file (as opposed to a function, or interactive input) + + + + Returns a CmdletParameterBinderController for the specified command + + + + The cmdlet to bind parameters to. + + + + A new instance of a CmdletParameterBinderController. + + + + if is not a Cmdlet. + + + + + + Get the ObsoleteAttribute of the current command + + + + + Binds the specified command-line parameters to the target + + + + true if encode succeeds otherwise false. + + + + If any parameters fail to bind, + or + If any mandatory parameters are missing. + + + + If there is an error generating the metadata for dynamic parameters. + + + + + Prepares the command. Encodes the command-line parameters + JonN 2003-04-02 Split from Execute() + + + If any parameters fail to bind, + or + If any mandatory parameters are missing. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Execute BeginProcessing part of command + + + + + This calls the command. It assumes that Prepare() has already been called. + JonN 2003-04-02 Split from Execute() + + + a terminating error occurred, or the pipeline was otherwise stopped + + + + + Tells whether it is the first call to Read + + + + + Tells whether to bail out in the next call to Read + + + + + Populates the parameters specified from the pipeline. + + + + A bool indicating whether read succeeded. + + + + If a parameter fails to bind. + or + If a mandatory parameter is missing. + + + The pipeline was already stopped. + + + + + + Writes an ErrorRecord to the commands error pipe because the specified + input object was not bound to the command. + + + + The pipeline input object that was not bound. + + + + The error message. + + + + The resource ID of the error message is also used as error ID + of the ErrorRecord. + + + + Additional arguments to be formatted into the error message that represented in . + + + + + + Reads an object from an input pipeline and attempts to bind the parameters + + + + The pipeline input object to be processed. + + + + False the pipeline input object was not bound in any way to the command. + + + + If a ShouldProcess parameter is specified but the cmdlet does not support + ShouldProcess. + or + If an error occurred trying to bind a parameter from the pipeline object. + + + + + + Initializes the command's request object + + + + The information about the cmdlet. + + + + If the constructor for the cmdlet threw an exception. + + + + The type referenced by refered to an + abstract type or them member was invoked via a late-binding mechanism. + + + + If refers to a type that is invalid. + + + + + + Checks if user has requested help (for example passing "-?" parameter for a cmdlet) + and if yes, then returns the help target to display. + + help target to request + help category to request + true if user requested help; false otherwise + + + + The base class for all command processor classes. It provides + abstract methods to execute a command. + + + + + Default constructor + + + + + + Initializes the base command processor class with the command metadata + + + + The metadata about the command to run. + + + + + + Gets the CommandInfo for the command this command processor represents + + + + + + This indicates whether this command processor is created from + a script file. + + + Script command processor created from a script file is special + in following two perspect, + + 1. New scope created needs to be a 'script' scope in the + sense that it needs to handle $script: variables. + For normal functions or scriptblocks, script scope + variables are not supported. + + 2. ExitException will be handled by setting lastExitCode. + For normal functions or scriptblocks, exit command will + kill current powershell session. + + + + + If this flag is true, the commands in this Pipeline will redirect + the global error output pipe to the command's error output pipe. + + (see the comment in Pipeline.RedirectShellErrorOutputPipe for an + explanation of why this flag is needed) + + + + + Gets or sets the command object. + + + + + Get the ObsoleteAttribute of the current command + + + + + The command runtime used for this instance of a command processor. + + + + + For commands that use the scope stack, if this flag is + true, don't create a new scope when running this command. + + + + + + Ensures that the provided script block is compatible with the current language mode - to + be used when a script block is being dotted. + + The script block being dotted + The current language mode + The invocation info about the command + + + + The execution context used by the system. + + + + + Etw activity for this pipeline + + + + + Checks if user has requested help (for example passing "-?" parameter for a cmdlet) + and if yes, then returns the help target to display. + + help target to request + help category to request + true if user requested help; false otherwise + + + + Creates a command procesor for "get-help [helpTarget]" + + context for the command processor + help target + help category + command processor for "get-help [helpTarget]" + + + + Tells whether pipeline input is expected or not. + + A bool indicating whether pipeline input is expected. + + + + If you want this command to execute in other than the default session + state, use this API to get and set that session state instance... + + + + + Gets sets the session state scope for this command processor object + + + + + This method sets the current session state scope to the execution scope for the pipeline + that was stored in the pipeline manager when it was first invoked. + + + + + Restores the current session state scope to the scope which was active when SetCurrentScopeToExecutionScope + was called. + + + + + + A collection of arguments that have been added by the parser or + host interfaces. These will be sent to the parameter binder controller + for processing. + + + + + + Adds an unbound parameter. + + + The parameter to add to the unbound arguments list + + + + + Prepares the command for execution. + This should be called once before ProcessRecord(). + + + + + Write warning message for an obsolete command + + + + + + Sets the execution scope for the pipeline and then calls the Prepare + abstract method which gets overridden by derived classes. + + + + + Called once before ProcessRecord(). Internally it calls + BeginProcessing() of the InternalCommand. + + + a terminating error occurred, or the pipeline was otherwise stopped + + + + + This calls the command. It assumes that DoPrepare() has already been called. + + + + + This method sets the execution scope to the + appropriate scope for the pipeline and then calls + the ProcessRecord abstract method that derived command processors + override. + + + + + + Called once after ProcessRecord(). + Internally it calls EndProcessing() of the InternalCommand. + + + a terminating error occurred, or the pipeline was otherwise stopped + + + + + Calls the virtual Complete method after setting the appropriate session state scope + + + + + + for diagnostic purposes + + + + + + True if Read() has not be called, false otherwise. + + + + + Entry point used by the engine to reads the input pipeline object + and binds the parameters. + + This default implementation reads the next pipeline object and sets + it as the CurrentPipelineObject in the InternalCommand. + + + + True if read succeeds. + + + does not throw + + + + Checks whether the exception is a severe exception which should + cause immediate process failure. + + + + CB says 02/23/2005: I personally would err on the side + of treating OOM like an application exception, rather than + a critical system failure.I think this will be easier to justify + in Orcas, if we tease apart the two cases of OOM better. + But even in Whidbey, how likely is it that we couldnt JIT + some backout code? At that point, the process or possibly + the machine is likely to stop executing soon no matter + what you do in this routine. So I would just consider + AccessViolationException. (I understand why you have SO here, + at least temporarily). + + + + + Wraps the exception which occurred during cmdlet invocation, + stores that as the exception to be returned from + PipelineProcessor.SynchronousExecute, and writes it to + the error variable. + + + + The exception to wrap in a CmdletInvocationException or + CmdletProviderInvocationException. + + + + Always returns PipelineStoppedException. The caller should + throw this exception. + + + + Almost all exceptions which occur during pipeline invocation + are wrapped in CmdletInvocationException before they are stored + in the pipeline. However, there are several exceptions: + + AccessViolationException, StackOverflowException: + These are considered to be such severe errors that we + FailFast the process immediately. + + ProviderInvocationException: In this case, we assume that the + cmdlet is get-item or the like, a thin wrapper around the + provider API. We discard the original ProviderInvocationException + and re-wrap its InnerException (the real error) in + CmdletProviderInvocationException. This makes it easier to reach + the real error. + + CmdletInvocationException, ActionPreferenceStopException: + This indicates that the cmdlet itself ran a command which failed. + We could go ahead and wrap the original exception in multiple + layers of CmdletInvocationException, but this makes it difficult + for the caller to access the root problem, plus the serialization + layer might not communicate properties beyond some fixed depth. + Instead, we choose to not re-wrap the exception. + + PipelineStoppedException: This could mean one of two things. + It usually means that this pipeline has already stopped, + in which case the pipeline already stores the original error. + It could also mean that the cmdlet ran a command which was + stopped by CTRL-C etc, in which case we choose not to + re-wrap the exception as with CmdletInvocationException. + + + + + Stores the exception to be returned from + PipelineProcessor.SynchronousExecute, and writes it to + the error variable. + + + + The exception which occurred during script execution + + + + ManageScriptException throws PipelineStoppedException if-and-only-if + the exception is a RuntimeException, otherwise it returns. + This allows the caller to rethrow unexpected exceptions. + + + + + Sometimes we shouldn't be rethrow the exception we previously caught, + such as when the exception is handled by a trap. + + + + + IDisposable implementation + When the command is complete, the CommandProcessorBase should be disposed. + This enables cmdlets to reliably release file handles etc. + without waiting for garbage collection + + We use the standard IDispose pattern + + + + Finalizer for class CommandProcessorBase + + + + + Exposes the Content nouns to the Cmdlet Providers to the Cmdlet base class. The methods of this class + use the providers to perform operations. + + + + + Hide the default constructor since we always require an instance of SessionState + + + + + Constructs a facade over the "real" session state API + + + + An instance of the cmdlet. + + + + If is null. + + + + + + Constructs a facade over the "real" session state API + + + + An instance of the sessionState. + + + + If is null. + + + + + + Gets the content reader for the item at the specified path + + + + The path to the item to get the content reader for. + + + + The IContentReader for the item(s) at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the content reader for the item at the specified path + + + + The path(s) to the item(s) to get the content reader for. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The IContentReader for the item(s) at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + + + + + + + + + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the get-content cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the content writer for the item(s) at the specified path. + + + + The path to the item(s) to get the content writer for. + + + + The IContentWriter for the item(s) at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the content writer for the item(s) at the specified path. + + + + The path(s) to the item(s) to get the content writer for. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The IContentWriter for the item(s) at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + + + + + + + + + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the set-content and add-content cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Clears the content from the item(s) specified by the path + + + + The path to the item(s) to clear the content from. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Clears the content from the item(s) specified by the path + + + + The path(s) to the item(s) to clear the content from. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Clears the content from the specified item(s) + + + + The path to the item(s) to clear the content from. + + + + The context under which the command is running. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the clear-content cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Exposes the Cmdlet Family Provider's drives to the Cmdlet base class. The methods of this class + get and set provider data in session state. + + + + + Hide the default constructor since we always require an instance of SessionState + + + + + Constructs a Drive management facade + + + + The instance of session state that facade wraps. + + + + If is null. + + + + + + Gets the drive information for the current working drive. + + + + This property is readonly. To set the current drive use the + SetLocation method. + + + + + Creates a new MSH drive in session state + + + + The drive to be created. + + + + The ID of the scope to create the drive in. This may be one of the scope + keywords like global or local, or it may be an numeric offset of the scope + generation relative to the current scope. + If the scopeID is null or empty the local scope is used. + + + + The drive that was created. + + + + If is null. + + + + If the drive already exists, + or + If .Name contains one or more invalid characters; ~ / \\ . : + + + + If the provider is not a DriveCmdletProvider. + + + + The provider for the could not be found. + + + + If the provider threw an exception or returned null. + + + + If creating the drive will overflow the MaximumDriveCount limit. + + + + + Creates a new MSH drive in session state + + + + The drive to be created. + + + + The ID of the scope to create the drive in. This may be one of the scope + keywords like global or local, or it may be an numeric offset of the scope + generation relative to the current scope. + If the scopeID is null or empty the local scope is used. + + + + The context under which this command is running. + + + + Nothing. The drive that is created is written to the context. + + + + If or is null. + + + + If the drive already exists + or + If .Name contains one or more invalid characters; ~ / \\ . : + + + + If the provider is not a DriveCmdletProvider. + + + + The provider for the could not be found. + + + + If the provider threw an exception or returned null. + + + + If creating the drive will overflow the MaximumDriveCount limit. + + + + + + Gets an object that defines the additional parameters for the NewDrive implementation + for a provider. + + + + The provider ID for the drive that is being created. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the is not a DriveCmdletProvider. + + + + If does not exist. + + + + + + Removes the specified drive. + + + + The name of the drive to be removed. + + + + Determines whether drive should be forcefully removed even if there was errors. + + + + The ID of the scope to remove the drive from. This may be one of the scope + keywords like global or local, or it may be an numeric offset of the scope + generation relative to the current scope. + If the scopeID is null or empty the local scope is used. + + + + + Removes the specified drive. + + + + The name of the drive to be removed. + + + + Determines whether drive should be forcefully removed even if there was errors. + + + + The ID of the scope to remove the drive from. This may be one of the scope + keywords like global or local, or it may be an numeric offset of the scope + generation relative to the current scope. + If the scopeID is null or empty the local scope is used. + + + + The context under which this command is running. + + + + + + Gets the drive information for the drive specified by name. + + + + The name of the drive to get the drive information for. + + + + The drive information that represents the drive of the specified name. + + + + If is null. + + + + If there is no drive with . + + + + + Gets the drive information for the drive specified by name. + + + + The name of the drive to get the drive information for. + + + + The ID of the scope to get the drive from. This may be one of the scope + keywords like global or local, or it may be an numeric offset of the scope + generation relative to the current scope. + If the scopeID is null or empty the local scope is used. + + + + The drive information that represents the drive of the specified name. + + + + If is null. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + Retrieves all the drives in the specified scope + + + + + Retrieves all the drives in the specified scope + + + + The scope to retrieve the drives from. If null, the + drives in all the scopes will be returned. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + Gets all the drives for the specified provider + + + + The name of the provider to get the drives for. + + + + All the drives in all the scopes for the given provider. + + + + + Takes as input a collection of strings and builds an expression tree from the input. + At the evaluation stage, it walks down the tree and evaluates the result. + + + + + Construct the expression from a single string. + + + The specified flag attribute expression string. + + + + + Construct the tree from an object collection when arguments are comma seperated. + If valid, all elements are OR seperated. + + + The array of specified flag attribute subexpression strings. + + + + + Abstract base type for other types of nodes in the tree. + + + + + OR node for attributes separated by a comma. + + + + + AND node for attributes separated by a plus(+) operator. + + + + + NOT node for attribute preceded by an exclamation(!) operator. + + + + + Leaf nodes of the expression tree. + + + + + Takes a string value and converts to corresponding enum value. + The string value should be checked at parsing stage prior to + tree construction to ensure it is valid. + + + + + Evaluate a given flag enum value against the expression. + + + The flag enum value to be evaluated. + + + Whether the enum value satisfy the expression. + + + + + Given an enum element, check if the element is present in the expression tree, + which is also present in the input expression. + + + The enum element to be examined. + + + Whether the enum element is present in the expression. + + + The enum value passed in should be a single enum element value, + not a flag enum value with multiple bits set. + + + + + Takes a string of input tokenize into a list of ordered tokens. + + + The input argument string, + could be partial input (one element from the argument collection). + + + A generic list of tokenized input. + + + + + Find the start of the next token, skipping white spaces. + + + Input string + + + Current offset position for the string parser. + + + + + Given the start (offset) of the next token, traverse through + the string to find the next token, stripping correctly + enclosed quotes. + + + Input string + + + Current offset position for the string parser. + + + The next token on the input string + + + + + Checks syntax errors on input expression, + as well as performing disambiguation for identifiers. + + + A list of tokenized input. + + + + + Takes a list of tokenized input and create the corresponding expression tree. + + + Tokenized list of the input string. + + + + + Performs enum minimum disambiguation. + + + + + Initialize the dictionary for special cases of minimum disambiguation. + + + + + Perform disambiguation on enum names + + complete enum name after disambiguation + + + + Produces a string that contains all the enumerator names in an enum type. + + + + + + + Errors reported by Monad will be in one of these categories. + + + Do not specify ErrorCategory.NotSpecified when creating an + . + Choose the best match from among the other values. + + + + + No error category is specified, or the error category is invalid. + + + Do not specify ErrorCategory.NotSpecified when creating an + . + Choose the best match from among the other values. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Object can not be found (file, directory, computer, system resource, etc.) + + + + + + + + + + + + + + + + + + + + + + + + + Operation not permitted + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A non-Monad command reported an error to its STDERR pipe. + + + The Engine uses this ErrorCategory when it executes a native + console applications and captures the errors reported by the + native application. Avoid using ErrorCategory.FromStdErr + in other circumstances. + + + + + Used for security exceptions + + + + + The contract of a protocol is not being followed. Should not happen + with well-behaved components. + + + + + The operation depends on a network connection that cannot be + established or maintained. + + + + + Could not authenticate the user to the service. Could mean that the + credentials are invalid or the authentication system is not + functioning properly. + + + + + Internal limits prevent the operation from being executed. + + + + + Controls on the use of traffic or resources prevent the operation + from being executed. + + + + + The operation attempted to use functionality that is currently + disabled. + + + + + Contains auxiliary information about an + + + + + + + for this error + + + + + text description of the operation which + encountered the error + + text description of the operation + + By default, this is the cmdlet name. + The default can be overridden by calling Set with a + non-empty value, for example "Delete". + + + + + text description of the error + + text description of the error + + By default, this is the exception type. + The default can be overridden by calling Set with a + non-empty value, for example "Permission Denied". + + + + + text description of the target object + + text description of the target object + + By default, this is TargetObject.ToString(), or the empty string + if the target object is null. + The default can be overridden by calling Set with a + non-empty value, for example "John Doe". + + + + + text description of the type of the target object + + text description of the type of the target object + + By default, this is TargetObject.GetType().ToString(), + or the empty string if the target object is null. + The default can be overridden by calling Set with a + non-empty value, for example "Active Directory User". + + + + + concise text description based on + + + concise text description + + GetMessage returns a concise string which categorizes the error, + based on + + and including the other fields of + + as appropriate. This string is much shorter + than + or + , since it only + categorizes the error and does not contain a full description + or recommended actions. The default host will display this + string instead of the full message if shell variable + $ErrorView is set to "CategoryView". + + + + + concise text description based on + + + Culture in which to display message + concise text description + + GetMessage returns a concise string which categorizes the error, + based on + + and including the other fields of + + as appropriate. This string is much shorter + than + or + , since it only + categorizes the error and does not contain a full description + or recommended actions. The default host will display this + string instead of the full message if shell variable + $ErrorView is set to "CategoryView". + + + + + Same as + + + developer-readable identifier + + + + The Activity, Reason, TargetName and TargetType strings in + ErrorCategoryInfo can be of unlimited length. In order to + control the maximum length of the GetMessage() string, we + ellipsize these strings. The current heuristic is to take + strings longer than 40 characters and ellipsize them to + the first and last 15 characters plus "..." in the middle. + + culture to retrieve template if needed + original string + Ellipsized version of string + + "Please do not make this public as ellipsize is not a word." + + + + + additional details about an + + + + ErrorDetails represents additional details about an + , + starting with a replacement Message. Clients can use ErrorDetails + when they want to display a more specific Message than the one + contained in a particular Exception, without having to create + a new Exception or define a new Exception class. + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Creates an instance of ErrorDetails specifying a Message. + + + It is preferred for Cmdlets to use + , + for CmdletProviders to use + , + and for other localizable code to use + + where possible. + + + + + + Creates an instance of ErrorDetails specifying a Message. + This variant is used by cmdlets. + + cmdlet containing the template string + by default, the + + name + + by default, the resourceId in the + + + + + insertion parameters + + + This variant is a shortcut to build an instance of + + reducing the steps which localizable code generally has to duplicate when it + generates a localizable string. This variant is preferred over + , + since the improved + information about the error may help enable future scenarios. + + This constructor first loads the error message template string using + . + The default implementation of + + will load a string resource from the cmdlet assembly using + and ; + however, specific cmdlets can override this behavior + by overriding virtual method + . + This constructor then inserts the specified args using + . + + + + + Creates an instance of ErrorDetails specifying a Message. + This variant is used by CmdletProviders. + + + Resource supplier, most often an instance of + . + + by default, the + + name + + by default, the resourceId in the + + + + + insertion parameters + + + This variant is a shortcut to build an instance of + + reducing the steps which localizable code generally has to duplicate when it + generates a localizable string. This variant is preferred over + , + since the improved + information about the error may help enable future scenarios. + + This constructor first loads a template string using + . + The default implementation of + + will load a string resource from the CmdletProvider assembly using + and ; + however, specific CmdletProviders can override this behavior + by overriding virtual method + , + and it is also possible that PSSnapin custom classes + which are not instances of + + will implement + . + The constructor then inserts the specified args using + . + + + + + Creates an instance of ErrorDetails specifying a Message. + This variant is used by other code without a reference to + a or instance. + + + assembly containing the template string + + by default, the + + name + + by default, the resourceId in the + + + + + insertion parameters + + + This variant is a shortcut to build an instance of + + reducing the steps which localizable code generally has to duplicate when it + generates a localizable string. This variant is preferred over + , + since the improved + information about the error may help enable future scenarios. + + This constructor first loads a template string from the assembly using + . + The constructor then inserts the specified args using + . + + + + + Initializes a new instance of the ErrorDetails class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + streaming context + + + + Message which replaces + in + + + + + When an instance of + + contains a non-null + + and + + is non-empty, the default host will display it instead of + the in + . + + This should be a grammatically correct localized text string, as with + + + + + + Text describing the recommended action in the event that this error + occurs. This is empty unless the code which generates the error + specifies it explicitly. + + + + This should be a grammatically correct localized text string. + This may be left empty. + + + + + As + + developer-readable identifier + + + + Represents an error. + + + An ErrorRecord describes an error. It extends the usual information + in with the additional information in + , + , + , + , + , and + . + Non-terminating errors are stored as + + instances in shell variable + $error. + + Some terminating errors implement + + which gives them an ErrorRecord property containing this additional + information. In this case, ErrorRecord.Exception will be an instance of + . + rather than the actual exception, to avoid the mutual references. + + + + + Creates an instance of ErrorRecord. + + + This is an exception which describes the error. + This argument may not be null, but it is not required + that the exception have ever been thrown. + + + This string will be used to construct the FullyQualifiedErrorId, + which is a global identifier of the error condition. Pass a + non-empty string which is specific to this error condition in + this context. + + + This is the ErrorCategory which best describes the error. + + + This is the object against which the cmdlet or provider + was operating when the error occurred. This is optional. + + + + + Initializes a new instance of the ErrorRecord class + using data serialized via + + + serialization information + streaming context + constructed object + + ErrorRecord instances which are serialized using + + will only be partially reconstructed. + + + + + Deserializer for + + serialization information + streaming context + + + + isSerialized is set to true if this error record is serialized. + + + + + Is this instance serialized. + + + + + + Value for FullyQualifiedErrorId in case of serialized error record. + + + + + Message overidee for CategoryInfo.GetMessage method + + + + + This constructor is used by remoting code to create ErrorRecord. + Various information is obtained from serialized ErrorRecord. + + + + + + + + + + + + + + + + Adds the information about this error record to PSObject as notes. + + + + + + Gets the value for note from mshObject + + + + PSObject from which value is fetched. + + + + name of note whose value is fetched + + + value of note + + + + + + Create an ErrorRecord object from serialized ErrorRecord. + serializedErrorRecord PSObject is in the format returned + by ToPSObjectForRemoting method. + + + + PSObject to convert to ErrorRecord + + + + + ErrorRecord convert from mshObject. + + + + + Thrown if mshObject parameter is null. + + + + + + Copy constructor, for use when a new wrapper exception wraps an + exception which already has an ErrorRecord + ErrorCategoryInfo and ErrorDetails are deep-copied, other fields are not. + + wrapped ErrorRecord + + If the wrapped exception contains a ParentContainsErrorRecordException, the new + ErrorRecord should have this exception as its Exception instead. + + + + + Wrap the current ErrorRecord instance + A derived class needs to override this method if it contains additional info that needs to be kept when it gets wrapped. + + + If the wrapped exception contains a ParentContainsErrorRecordException, the new + ErrorRecord should have this exception as its Exception instead. + + + + + + An Exception describing the error. + + never null + + + + The object against which the error occurred. + + may be null + + + + Information regarding the ErrorCategory + associated with this error, and with the categorized error message + for that ErrorCategory. + + never null + + + + String which uniquely identifies this error condition + + never null + + FullyQualifiedErrorid identifies this error condition + more specifically than either the ErrorCategory + or the Exception. Use FullyQualifiedErrorId to filter specific + error conditions, or to associate special handling with specific + error conditions. + + + + + Additional information about the error. + + may be null + + In particular, ErrorDetails.Message (if present and non-empty) + contains a replacement message which should be displayed instead of + Exception.Message. + + + + + Identifies the cmdlet, script, or other command which caused + the error. + + may be null + + + + The script stack trace for the error. + + + + + The status of the pipeline when this record was created. + + + + + Whether to serizalize the InvocationInfo during remote calls + + + + + As + + developer-readable identifier + + + + Implemented by exception classes which contain additional + + information. + + + MSH defines certain exception classes which implement this interface. + This includes wrapper exceptions such as + , + and also MSH engine errors such as + . + Cmdlets and providers should not define this interface; + instead, they should use the + WriteError(ErrorRecord) or + ThrowTerminatingError(ErrorRecord) methods. + The ErrorRecord property will contain an ErrorRecord + which contains an instance of + + rather than the actual exception. + + Do not call WriteError(e.ErrorRecord). + The ErrorRecord contained in the ErrorRecord property of + an exception which implements IContainsErrorRecord + should not be passed directly to WriteError, since it contains + a ParentContainsErrorRecordException rather than the real exception. + + It is permitted for PSSnapins to implement custom Exception classes which implement + , + but it is generally preferable for Cmdlets and CmdletProviders to communicate + + information using + + or + + rather than by throwing an exception which implements + . + Consider implementing + + in your custom exception only if you throw it from a context + where a reference to the active + or + + is no longer available. + + + + + This is the + + which provides additional information about the error. + + + The instance returned by + + should contain in its + + property an instance of + + rather than a reference to the root exception. This prevents + a recursive reference between the exception implementing + and the + . + Use the + + constructor so that the + + will have the same + + as the root exception. + + + + + + Objects implementing this interface can be used by + + + + + implements this interface. PSSnapins can implement + + on their custom classes, but the only purpose would be to permit + the custom class to be used in the + . + constructor. + + contains special constructor + + reducing the steps which localizable code generally has to duplicate when it + generates a localizable string. This variant is preferred over + , + since the improved + information about the error may help enable future scenarios. + + + + + Gets the error message template string corresponding to + and . + + + If the desired behavior is simple string lookup + in your assembly, you can use the + + constructor instead and not bother implementing + . + Consider implementing + if you want more complex behavior. + + Insertions will be inserted into the string with + + to generate the final error message in + . + + the base resource name + the resource id + the error message template string corresponding to baseName and resourceId + + + + Describes how and where this command was invoked + + + + + Contructor for InvocationInfo object when the associated command object is present. + + + + + + Constructor for InvocationInfo object + + + + The command information the invocation info represents. + + + + The position representing the invocation, or the position representing the error. + + + + + + Constructor for InvocationInfo object + + + + The command information the invocation info represents. + + + + The position representing the invocation, or the position representing the error. + + + + The context in which the InvocationInfo is being created. + + + + + + Creates an InformationalRecord from an instance serialized as a PSObject by ToPSObjectForRemoting. + + + + + Provide basic information about the command + + may be null + + + + This member provides a dictionary of the parameters that were bound for this + script or command. + + + + + This member provides a list of the arguments that were not bound to any parameter + + + + + The line number in the executing script that contained this cmdlet. + + The script line number or -1 if not executing in a script. + + + + Command's character offset in that line. If the command was + executed directly through the host interfaces, this will be -1. + + The line offset or -1 if not executed from a text line. + + + + History ID that represents the command. If unavailable, this will be -1. + + The history ID or -1 if not available. + + + + The name of the script containing the cmdlet. + + The script name or "" if there was no script. + + + + The text of the line that contained this cmdlet invocation. + + Line that was entered to invoke this command + + + + Formatted message indicating where the cmdlet appeared + in the line + + Formatted string indicating the command's position in the line + + + + This property tells you the directory from where you were being invoked + + + + + This property tells you the full path to the command from where you were being invoked + + + + + Command name used to invoke this string - if invoked through an alias, then + this would be the alias name. + + The name string. + + + + How many elements are in the containing pipeline + + number of elements in the containing pipeline + + + + which element this command was in the containing pipeline + + which element this command was in the containing pipeline + + + + Is true if this command is expecting input... + + + + + This property tells you if you were being invoked inside the runspace or + if it was an external request. + + + + + The position for the invocation or error. + + + + + Create + + + + + + + + The position for the invocation or error. + + + + + Returns the full text of the script for this invocation info. + + + + + Index of the ProcessRecord iteration for each of the commands in the pipeline. + + + All the commands in a given pipeline share the same PipelinePositionInfo. + + + + + Adds the information about this informational record to a PSObject as note properties. + The PSObject is used to serialize the record during remote operations. + + + InvocationInfos are usually serialized as part of another object, so we add "InvocationInfo_" to + the note properties to prevent collisions with any properties set by the containing object. + + + + + A CommandInfo that has been serialized/deserialized as part of an InvocationInfo during a remote invocation. + + + + + + + + + + + A string representing the definition of the command. + + + + + Creates a RemoteCommandInfo from an instance serialized as a PSObject by ToPSObjectForRemoting. + + + + + Adds the information about this instance to a PSObject as note properties. + The PSObject is used to serialize the CommandInfo during remote operations. + + + CommandInfos are usually serialized as part of InvocationInfos, so we add "CommandInfo_" to + the note properties to prevent collisions with any properties set by the containing object. + + + + + NYI + + + + + Exposes the Item noun of the Cmdlet Providers to the Cmdlet base class. The methods of this class + use the providers to perform operations. + + + + + Hide the default constructor since we always require an instance of SessionState + + + + + Constructs a facade over the "real" session state API + + + + An instance of the cmdlet. + + + + If is null. + + + + + + Constructs a facade over the "real" session state API + + + + An instance of the "real" session state class. + + + + If is null. + + + + + + Gets the item at the specified path. + + + + The path to the item to retrieve. It may be a drive or provider-qualified path and may include + glob characters. + + + + The object(s) at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the item at the specified path. + + + + The path(s) to the item(s) to retrieve. They may be a drive or provider-qualified path(s) and may include + glob characters. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The object(s) at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the item at the specified path. + + + + The path to the item to retrieve. It may be a drive or provider-qualified path and may include + glob characters. + + + + The context under which the command is running. + + + + Nothing. The object(s) at the specified path are written to the context. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the get-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Sets the item at the specified path. + + + + The path to the item to set. It may be a drive or provider-qualified path and may include + glob characters. + + + + The new value to set the item to. + + + + The object(s) set at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Sets the item at the specified path. + + + + The path(s) to the item(s) to set. They may be drive or provider-qualified paths and may include + glob characters. + + + + The new value to set the item to. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The object(s) set at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Sets the item at the specified path. + + + + The path to the item to set. It may be a drive or provider-qualified path and may include + glob characters. + + + + The new value to set the item to. + + + + The context under which the command is running. + + + + Nothing. The object(s) set at the specified path are written to the context. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the set-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The new value of the item at the specified path. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Clears the item at the specified path. + + + + The path to the item to clear. It may be a drive or provider-qualified path and may include + glob characters. + + + + The object(s) cleared at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Clears the item at the specified path. + + + + The path(s) to the item to clear. It may be a drive or provider-qualified path and may include + glob characters. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The object(s) cleared at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Clears the item at the specified path. + + + + The path to the item to be cleared. It may be a drive or provider-qualified path and may include + glob characters. + + + + The context under which the command is running. + + + + Nothing. The object(s) cleared at the specified path are written to the context. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the clear-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Invokes the default action of the item at the specified path. + + + + The path to the item to invoke. It may be a drive or provider-qualified path and may include + glob characters. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Invokes the default action of the item(s) at the specified path(s). + + + + The path(s) to the item(s) to invoke. They may be drive or provider-qualified paths and may include + glob characters. + + + + If true, globbing is not done on paths. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Invokes the default action for the item at the specified path. + + + + The path to the item to be invoked. It may be a drive or provider-qualified path and may include + glob characters. + + + + The context under which the command is running. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the invoke-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Renames the item at the given path. + + + + The path to the item to rename. It may be a drive or provider-qualified path and may include + glob characters. + + + + The new name of the item. + + + + The item(s) that were renamed. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Renames the item at the given path. + + + + The path to the item to rename. It may be a drive or provider-qualified path and may include + glob characters. + + + + The new name of the item. + + + + Passed on to providers to force operations. + + + + The item(s) that were renamed. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Renames the item at the given path. + + + + The path to the item to rename. It may be a drive or provider-qualified path and may include + glob characters. + + + + The new name of the item. + + + + The context under which the command is running. + + + + Nothing. The item(s) that get renamed are written to the context. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the rename-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The new name of the item. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Creates a new item at the given path. + + + + The path to the container to create item in. It may be a drive or provider-qualified path and may include + glob characters. + + + + The name of the new item to create. + + + + The type of the new item to create. + + + + The content of the new item to create. + + + + The item that was created. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Creates a new item at the given path. + + + + The path(s) to the container to create item in. They may be drive or provider-qualified path and may include + glob characters. + + + + The name of the new item to create. + + + + The type of the new item to create. + + + + The content of the new item to create. + + + + Passed on to providers to force operations. + + + + The item(s) that was created. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Creates a new item at the given path. + + + + The path to the container to create item in. It may be a drive or provider-qualified path and may include + glob characters. + + + + The name of the new item to create. + + + + The type of the new item to create. + + + + The content of the new item to create. + + + + The context under which the command is running. + + + + Nothing. The new item is written to the context. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the new-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The type of the new item to create. + + + + The content of the new item to create. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Removes the items at the given path. + + + + The path to the item to remove. It may be a drive or provider-qualified path and may include + glob characters. + + + + If true, removes all the children in all the sub-containers of the specified + container. If false, only removes the immediate children of the specified + container. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Removes the items at the given path. + + + + The path(s) to the item(s) to remove. They may be drive or provider-qualified paths and may include + glob characters. + + + + If true, removes all the children in all the sub-containers of the specified + container. If false, only removes the immediate children of the specified + container. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Removes the items at the given path. + + + + The path to the item to remove. It may be a drive or provider-qualified path and may include + glob characters. + + + + If true, removes all the children in all the sub-containers of the specified + container. If false, only removes the immediate children of the specified + container. + + + + The context under which the command is running. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the remove-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + If true, removes all the children in all the sub-containers of the specified + container. If false, only removes the immediate children of the specified + container. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Copy item at the specified path + + + + The path to the item to copy. It may be a drive or provider-qualified path and may include + glob characters. + + + + The path to copy the item to. + + + + If true, copies all the children in all the sub-containers of the specified + container. If false, only copies the specified item. + + + + Determines how the source container is used in the copy operation. + + + + The item(s) that were copied. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Copy item at the specified path + + + + The path(s) to the item(s) to copy. They may be a drive or provider-qualified path and may include + glob characters. + + + + The path to copy the item to. + + + + If true, copies all the children in all the sub-containers of the specified + container. If false, only copies the specified item. + + + + Determines how the source container is used in the copy operation. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The item(s) that were copied. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Copy item at the specified path + + + + The path to the item to copy. It may be a drive or provider-qualified path and may include + glob characters. + + + + The path to copy the item to. + + + + If true, copies all the children in all the sub-containers of the specified + container. If false, only copies the specified item. + + + + Determines how the source container is used in the copy operation. + + + + The context under which the command is running. + + + + Nothing. The item(s) that were copied are written to the context. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the copy-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The path to copy the item to. + + + + If true, copies all the children in all the sub-containers of the specified + container. If false, only copies the specified item. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Moves the item at the specified path to the specified destination. + + + + The path to the item to move. + + + + The path to the location that the item will be moved. + + + + The item(s) that were moved. + + + + If is null. + + + + If resolves to multiple paths. + or + If and don't resolve + to the same provider. + or + If resolves to multiple paths and + is not a container. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Moves the item at the specified path to the specified destination. + + + + The path(s) to the item to move. + + + + The path to the location that the item will be moved. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The item(s) that were moved. + + + + If is null. + + + + If resolves to multiple paths. + or + If and don't resolve + to the same provider. + or + If resolves to multiple paths and + is not a container. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Moves the item at the specified path to the specified destination. + + + + The path to the item to move. + + + + The path to the location that the item will be moved. + + + + The context under which the command is running. + + + + Nothing. The object that is moved is written to the context. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the move-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The path to move the item to. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Determines if an item at the given path exits. + + + + The path to the item to determine if it exists. It may be a drive or provider-qualified path and may include + glob characters. + + + + True if the item at the specified path exists. False otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Determines if an item at the given path exits. + + + + The path to the item to determine if it exists. It may be a drive or provider-qualified path and may include + glob characters. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + True if the item at the specified path exists. False otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Determines if an item at the given path exits. + + + + The path to the item to determine if it exists. It may be a drive or provider-qualified path and may include + glob characters. + + + + The context under which the command is running. + + + + True if the item at the specified path exists. False otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the test-path cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Determines if the specified path is to an item that is a container. + + + + The path to the item to determine if it is a container. + + + + True if the path is to an item that is a container. False otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Determines if the specified path is to an item that is a container. + + + + The path to the item to determine if it is a container. + + + + The context under which the command is running. + + + + True if the path is to an item that is a container. False otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Determines how the source container of a copy operation + will be used. + + + + + The source container is copied. + + + + + The children of the source contianer are copied. + + + + + Derives InternalCommand for Native Commands + + + + + Implement the stop functionality for native commands... + + + + + Exposes the path manipulation and location APIs to the Cmdlet base class. + + + + + Hide the default constructor since we always require an instance of SessionState + + + + + Internal constructor for the PathIntrinsics facade. + + + + The session for which this is a facade. + + + + This is only public for testing purposes. + + + + If is null. + + + + + + Gets the current location. + + + + If a location has not been set yet. + + + + + Gets the current location for a specific provider + + + + The name of the provider to get the current location for. + + + + If is null. + + + + If refers to a provider that does not exist. + + + + If a current drive cannot be found for the provider + + + + + Gets the current location for the file system provider + + + + If a current drive cannot be found for the FileSystem provider + + + + + Changes the current location to the specified path. + + + + The path to change the location to. This can be either a drive-relative or provider-relative + path. It cannot be a provider-internal path. + + + + The path of the new current location. + + + + If is null. + + + + If does not exist, is not a container, or + resolved to multiple containers. + + + + If refers to a provider that does not exist. + + + + If refers to a drive that does not exist. + + + + If the provider associated with threw an + exception. + + + + + Changes the current location to the specified path. + + + + The path to change the location to. This can be either a drive-relative or provider-relative + path. It cannot be a provider-internal path. + + + + The context under which the command is running. + + + + The path of the new current location. + + + + If is null. + + + + If does not exist, is not a container, or + resolved to multiple containers. + + + + If refers to a provider that does not exist. + + + + If refers to a drive that does not exist. + + + + If the provider associated with threw an + exception. + + + + + Determines if the specified path is the current location or a parent of the current location. + + + + A drive or provider-qualified path to be compared against the current location. + + + + The context under which the command is running. + + + + True if the path is the current location or a parent of the current location. False otherwise. + + + + If is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider specified by threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + + Pushes the current location onto the location stack so that it can be retrieved later. + + + + The ID of the stack to push the location onto. + + + + + Gets the location off the top of the location stack. + + + + The ID of the stack to pop the location from. If stackName is null or empty + the default stack is used. + + + + The path information for the location that was on the top of the location stack. + + + + If the path on the stack does not exist, is not a container, or + resolved to multiple containers. + or + If contains wildcard characters and resolves + to multiple location stacks. + or + A stack was not found with the specified name. + + + + If the path on the stack refers to a provider that does not exist. + + + + If the path on the stack refers to a drive that does not exist. + + + + If the provider associated with the path on the stack threw an + exception. + + + + + Gets the location stack and all the locations on it. + + + + The stack ID of the stack to get the stack info for. + + + + + Sets the default location stack to that specified by the stack ID. + + + + The stack ID of the stack to use as the default location stack. + + + + If does not exist as a location stack. + + + + + Resolves a drive or provider qualified absolute or relative path that may contain + wildcard characters into one or more absolute drive or provider qualified paths. + + + + The drive or provider qualified path to be resolved. This path may contain wildcard + characters which will get resolved. + + + + An array of Msh paths that resolved from the given path. + + + + If is null. + + + + If is a provider-qualified path + and the specified provider does not exist. + + + + If is a drive-qualified path and + the specified drive does not exist. + + + + If the provider throws an exception when its MakePath gets + called. + + + + If the provider does not support multiple items. + + + + If the home location for the provider is not set and + starts with a "~". + + + + If does not contain wildcard characters and + could not be found. + + + + + Resolves a drive or provider qualified absolute or relative path that may contain + wildcard characters into one or more absolute drive or provider qualified paths. + + + + The drive or provider qualified path to be resolved. This path may contain wildcard + characters which will get resolved. + + + + The context under which the command is running. + + + + An array of Msh paths that resolved from the given path. + + + + If or is null. + + + + If is a provider-qualified path + and the specified provider does not exist. + + + + If the provider throws an exception when its MakePath gets + called. + + + + If the provider does not support multiple items. + + + + If the home location for the provider is not set and + starts with a "~". + + + + If does not contain wildcard characters and + could not be found. + + + + + Resolves a drive or provider qualified absolute or relative path that may contain + wildcard characters into one or more provider-internal paths. + + + + The drive or provider qualified path to be resolved. This path may contain wildcard + characters which will get resolved. + + + + The provider for which the returned paths should be used. + + + + An array of provider-internal paths that resolved from the given path. + + + + If is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider associated with the threw an + exception when building its path. + + + + If does not contain wildcard characters and + could not be found. + + + + + Resolves a drive or provider qualified absolute or relative path that may contain + wildcard characters into one or more provider-internal paths. + + + + The drive or provider qualified path to be resolved. This path may contain wildcard + characters which will get resolved. + + + + The context under which the command is running. + + + + The provider for which the returned paths should be used. + + + + An array of provider-internal paths that resolved from the given path. + + + + If or is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider associated with the threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + If does not contain wildcard characters and + could not be found. + + + + + Resolves a drive or provider qualified absolute or relative path that may contain + wildcard characters into one or more provider-internal paths. + + + + The drive or provider qualified path to be resolved. This path may contain wildcard + characters which will get resolved. + + + + The provider for which the returned paths should be used. + + + + An array of provider-internal paths that resolved from the given path. + + + + If is null. + + + + If references a provider that does not exist. + + + + If the references a provider that is not + a ContainerCmdletProvider. + + + + If the provider used to build the path threw an exception. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If does not contain wildcard characters and + could not be found. + + + + + Resolves a drive or provider qualified absolute or relative path that may contain + wildcard characters into one or more provider-internal paths. + + + + The drive or provider qualified path to be resolved. This path may contain wildcard + characters which will get resolved. + + + + The context under which the command is running. + + + + The provider for which the returned paths should be used. + + + + An array of provider-internal paths that resolved from the given path. + + + + If , , or + is null. + + + + If references a provider that does not exist. + + + + If the references a provider that is not + a ContainerCmdletProvider. + + + + If the provider used to build the path threw an exception. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If does not contain wildcard characters and + could not be found. + + + + + Converts a drive or provider qualified absolute or relative path that may contain + wildcard characters into one a provider-internal path still containing the wildcard characters. + + + + The drive or provider qualified path to be converted. This path may contain wildcard + characters which will not get resolved. + + + + A provider-internal path that does not have the wildcard characters resolved. + + + + If is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider specified by threw an + exception. + + + + + Converts a drive or provider qualified absolute or relative path that may contain + wildcard characters into one a provider-internal path still containing the wildcard characters. + + + + The drive or provider qualified path to be converted. This path may contain wildcard + characters which will not get resolved. + + + + The information for the provider for which the returned path should be used. + + + + The drive of the Msh path that was used to convert the path. Note, this may be null + if the was a provider-qualified path. + + + + A provider-internal path that does not have the wildcard characters resolved. + + + + If or is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider specified by threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + + Converts a drive or provider qualified absolute or relative path that may contain + wildcard characters into one a provider-internal path still containing the wildcard characters. + + + + The drive or provider qualified path to be converted. This path may contain wildcard + characters which will not get resolved. + + + + The context under which this command is running. + + + + The information for the provider for which the returned path should be used. + + + + The drive of the Msh path that was used to convert the path. + + + + A provider-internal path that does not have the wildcard characters resolved. + + + + If or is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider specified by threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + + Determines if the give path is an Msh provider-qualified path. + + + + The path to check. + + + + True if the specified path is provider-qualified, false otherwise. + + + + A provider-qualified path is a path in the following form: + providerId::provider-internal-path + + + + If is null. + + + + + Determines if the given path is a drive-qualified absolute path. + + + + The path to check. + + + + If the path is an Msh absolute path then the returned value is + the name of the drive that the path is absolute to. + + + + True if the specified path is an Msh absolute drive-qualified path. + False otherwise. + + + + A path is an absolute drive-qualified path if it has the following + form: + drive-name:drive-relative-path + + + + If is null. + + + + + Combines two strings with a provider specific path separator. + + + + The parent path to be joined with the child. + + + + The child path to be joined with the parent. + + + + The combined path of the parent and child with the provider + specific path separator between them. + + + + If is null. + + + + If both and is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + Combines two strings with a provider specific path separator. + + + + The parent path to be joined with the child. + + + + The child path to be joined with the parent. + + + + The context under which this command is running. + + + + The combined path of the parent and child with the provider + specific path separator between them. + + + + If is null. + + + + If both and is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + Gets the parent path of the specified path. + + + + The path to get the parent path from. + + + + If the root is specified the path returned will not be any higher than the root. + + + + The parent path of the specified path. + + + + If is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + Gets the parent path of the specified path. + + + + The path to get the parent path from. + + + + If the root is specified the path returned will not be any higher than the root. + + + + The context under which the command is running. + + + + The parent path of the specified path. + + + + If is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + Gets the parent path of the specified path. + Allow to use FileSystem as the default provider when the + given path is drive-qualified and the drive cannot be found. + + + + The path to get the parent path from. + + + + If the root is specified the path returned will not be any higher than the root. + + + + The context under which the command is running. + + + + to use default provider when needed. + + + + The parent path of the specified path. + + + + If is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + Gets the child name of the specified path. + + + + The path to get the child name from. + + + + The last element of the path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the child name of the specified path. + + + + The path to get the child name from. + + + + The context under which the command is running. + + + + The last element of the path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the child name of the specified path. + Allow to use FileSystem as the default provider when the + given path is drive-qualified and the drive cannot be found. + + + + The path to get the child name from. + + + + The context under which the command is running. + + + + to use default provider when needed. + + + + The last element of the path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Normalizes the path that was passed in and returns the normalized path + as a relative path to the basePath that was passed. + + + + An MSH path to an item. The item should exist + or the provider should write out an error. + + + + The path that the return value should be relative to. + + + + A normalized path that is relative to the basePath that was passed. + + + + If is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + Normalizes the path that was passed in and returns the normalized path + as a relative path to the basePath that was passed. + + + + An MSH path to an item. The item should exist + or the provider should write out an error. + + + + The path that the return value should be relative to. + + + + The context under which the command is running. + + + + A normalized path that is relative to the basePath that was passed. + + + + If is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + Determines if the MSH path is a syntactically and semantically valid path for the provider. + + + + The path to validate. + + + + true if the object specified by path is syntactically and semantically valid, false otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Determines if the MSH path is a syntactically and semantically valid path for the provider. + + + + The path to validate. + + + + The context under which the call is being made. + + + + true if the object specified by path is syntactically and semantically valid, false otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Defines a data structure used to represent the status of an ongoing operation at a point in time. + + + + + ProgressRecords are passed to , + which, according to user preference, forwards that information on to the host for rendering to the user. + + + + + + + + Initializes a new instance of the ProgressRecord class and defines the activity Id, + activity description, and status description. + + + + + A unique numeric key that identifies the activity to which this record applies. + + + + + A description of the activity for which progress is being reported. + + + + + A description of the status of the activity. + + + + + + Cloning constructor (all fields are value types - can treat our implementation of cloning as "deep" copy) + + + + + + Added to enable ClrFacade.GetUninitializedObject to instantiate an uninitialized version of this class. + + + + + + Gets the Id of the activity to which this record corresponds. Used as a 'key' for the + linking of subordinate activities. + + + + + + + Gets and sets the Id of the activity for which this record is a subordinate. + + + + + Used to allow chaining of progress records (such as when one installation invokes a child installation). UI: + normally not directly visible except as already displayed as its own activity. Usually a sub-activity will be + positioned below and to the right of its parent. + + A negative value (the default) indicates that the activity is not a subordinate. + + May not be the same as ActivityId. + + + + + + + + + Gets and sets the description of the activity for which progress is being reported. + + + + + States the overall intent of whats being accomplished, such as "Recursively removing item c:\temp." Typically + displayed in conjunction with a progress bar. + + + + + + + Gets and sets the current status of the operation, e.g., "35 of 50 items Copied." or "95% completed." or "100 files purged." + + + + + + + Gets and sets the current operation of the many required to accomplish the activity (such as "copying foo.txt"). Normally displayed + below its associated progress bar, e.g., "deleting file foo.bar" + Set to null or empty in the case a sub-activity will be used to show the current operation. + + + + + + + Gets and sets the estimate of the percentage of total work for the activity that is completed. Typically displayed as a progress bar. + Set to a negative value to indicate that the percentage completed should not be displayed. + + + + + + + Gets and sets the estimate of time remaining until this activity is completed. This can be based upon a measurement of time since + started and the percent complete or another approach deemed appropriate by the caller. + + Normally displayed beside the progress bar, as "N seconds remaining." + + + + + A value less than 0 means "don't display a time remaining." + + + + + + + Gets and sets the type of record represented by this instance. + + + + + + + Overrides + + + + + "parent = a id = b act = c stat = d cur = e pct = f sec = g type = h" where + a, b, c, d, e, f, and g are the values of ParentActivityId, ActivityId, Activity, StatusDescription, + CurrentOperation, PercentComplete, SecondsRemaining and RecordType properties. + + + + + + Returns percentage complete when it is impossible to predict how long an operation might take. + The percentage complete will slowly converge toward 100%. + At the the percentage complete will be 90%. + + When did the operation start + How long does the operation usually take + Estimated percentage complete of the operation (always between 0 and 99% - never returns 100%) + + Thrown when + 1) is in the future + 2) is negative or zero + + + + + Creates a ProgressRecord object from a PSObject property bag. + PSObject has to be in the format returned by ToPSObjectForRemoting method. + + PSObject to rehydrate + + ProgressRecord rehydrated from a PSObject property bag + + + Thrown if the PSObject is null. + + + Thrown when the PSObject is not in the expected format + + + + + Returns this object as a PSObject property bag + that can be used in a remoting protocol data object. + + This object as a PSObject property bag + + + + + Defines two types of progress record that refer to the beginning (or middle) and end of an operation. + + + + + + Operation just started or is not yet complete + + + A cmdlet can call WriteProgress with ProgressRecordType.Processing + as many times as it wishes. However, at the end of the operation, + it should call once more with ProgressRecordType.Completed. + + The first time that a host receives a progress record + for a given activity, it will typically display a progress + indicator for that activity. For each subsequent record + of the same Id, the host will update that display. + Finally, when the host receives a 'completed' record + for that activity, it will remove the progress indicator. + + + + + Operation is complete + + + If a cmdlet uses WriteProgress, it should use + ProgressRecordType.Completed exactly once, in the last call + to WriteProgress. + + + + + + Defines a data structure used to represent informational context destined for the host or user. + + + + + InformationRecords are passed to , + which, according to host or user preference, forwards that information on to the host for rendering to the user. + + + + + + + + Initializes a new instance of the InformationRecord class. + + + The object to be transmitted to the host. + The source of the message (i.e.: script path, function name, etc.) + + + + Added to enable ClrFacade.GetUninitializedObject to instantiate an uninitialized version of this class. + + + + + Copy constructor + + + + + The message data for this informational record + + + + + The source of this informational record (script path, function name, etc.) + + + + + The time this informational record was generated. + + + + + The tags assocaited with this informational record (if any) + + + + + The user that generated this informational record + + + + + The computer that generated this informational record + + + + + The process that generated this informational record + + + + + The native thread that generated this informational record + + + + + The managed thread that generated this informational record + + + + + Converts an InformationRecord to a string-based representation. + + + + + + Returns this object as a PSObject property bag + that can be used in a remoting protocol data object. + + This object as a PSObject property bag + + + + Class that holds informational messages to represent output created by the + Write-Host cmdlet. + + + + + The message being output by the host + + + + + 'True' if the host should not append a NewLine to the message output + + + + + The foreground color of the message + + + + + The background color of the message + + + + + Returns a string-based representation of the host information message + + + + + + Exposes the Property noun of the Cmdlet Providers to the Cmdlet base class. The methods of this class + use the providers to perform operations. + + + + + Hide the default constructor since we always require an instance of SessionState + + + + + Constructs a facade over the "real" session state API + + + + An instance of the cmdlet. + + + + If is null. + + + + + + Constructs a facade over the "real" session state API + + + + An instance of the "real" session state. + + + + If is null. + + + + + + Gets the specified properties from the specified item(s) + + + + The path to the item to get the properties from. + + + + The properties to get from the item(s). If this is empty, null, or "*" all + properties should be returned. + + + + A PSObject for each item that the path represents. Each PSObject should + contain a property for those in the providerSpecificPickList. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the specified properties from the specified item(s) + + + + The path(s) to the item(s) to get the properties from. + + + + If true, globbing is not done on paths. + + + + The properties to get from the item(s). If this is empty, null, or "*" all + properties should be returned. + + + + A PSObject for each item that the path represents. Each PSObject should + contain a property for those in the providerSpecificPickList. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the specified properties from the specified item(s) + + + + The path to the item to get the properties from. + + + + The properties to get from the item(s). If this is empty, null, or "*" all + properties should be returned. + + + + The context under which the command is running. + + + + Nothing. A PSObject for each item that the path represents is written + to the context. Each PSObject should + contain a property for those in the providerSpecificPickList. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the get-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The properties to get from the item(s). If this is empty, null, or "*" all + properties should be returned. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Sets the specified properties on the specified item(s) + + + + The path to the item to set the properties on. + + + + The properties that are to be set on the item + + + + A PSObject for each item that had the property set on it. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Sets the specified properties on the specified item(s) + + + + The path(s) to the item(s) to set the properties on. + + + + The properties that are to be set on the item + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + A PSObject for each item that had the property set on it. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Sets the specified properties on the specified item(s) + + + + The path to the item to set the properties on. + + + + The properties that are to be set on the item + + + + The context under which the command is running. + + + + Nothing. A PSObject for the property that was set is written to the context. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the set-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The properties that are to be set on the item + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Clear the specified properties from the specified item(s) + + + + The path to the item to clear the properties from. + + + + The properties to clear from the item(s). + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Clear the specified properties from the specified item(s) + + + + The path(s) to the item(s) to clear the properties from. + + + + The properties to clear from the item(s). + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Clears the specified properties from the specified item(s) + + + + The path to the item to clear the properties from. + + + + The properties to clear from the item(s). + + + + The context under which the command is running. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the clear-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The properties to clear from the item(s). + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Creates a new property on the specified item + + + + The path to the item on which the new property should be created. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + A PSObject for each item that the property was created on. The PSObject + contains the properties that were created. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Creates a new property on the specified item + + + + The path(s) to the item(s0 on which the new property should be created. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + A PSObject for each item that the property was created on. The PSObject + contains the properties that were created. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Creates a new property on the specified item + + + + The path to the item on which the new property should be created. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + The context under which the command is running. + + + + Nothing. A PSObject for each item that the property was created on + is written to the context. Each PSObject + contains the properties that were created. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the new-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Removes a property from the specified item(s) + + + + The path to the item(s) on which the property should be removed. + + + + The property name that should be removed. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Removes a property from the specified item(s) + + + + The path(s) to the item(s) on which the property should be removed. + + + + The property name that should be removed. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Removes a property from the specified item(s) + + + + The path to the item(s) on which the property should be removed. + + + + The property name that should be removed. + + + + The context under which the command is running. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the remove-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name of the property that should be removed. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Renames a property on the specified item(s) + + + + The path to the item(s) on which the property should be renamed. + + + + The source name of the property to be renamed. + + + + The new name of the property. + + + + A PSObject for each item that is the new property after the rename. + + + + If , , + or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Renames a property on the specified item(s) + + + + The path(s) to the item(s) on which the property should be renamed. + + + + The source name of the property to be renamed. + + + + The new name of the property. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + A PSObject for each item that is the new property after the rename. + + + + If , , + or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Renames a property on the specified item(s) + + + + The path to the item(s) on which the property should be renamed. + + + + The source name of the property to be renamed. + + + + The new name of the property. + + + + The context under which the command is running. + + + + Nothing. A PSObject for each item that the property is renamed on is + written to the context. The Shellobject contains the new property after the rename. + + + + If , , + or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the rename-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The source name of the property to be renamed. + + + + The new name of the property. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Copies a property on the specified item(s) + + + + The path to the item(s) on which the property should be copied. + + + + The source name of the property to be copied. + + + + The path to the item(s) to copy the property to. It can be the same + as the sourcePath as long as the destinationProperty is different. + + + + The new name of the property. + + + + A PSObject for each item that is the new property after the copy. + + + + If , , + , or + is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Copies a property on the specified item(s) + + + + The path(s) to the item(s) on which the property should be copied. + + + + The source name of the property to be copied. + + + + The path to the item(s) to copy the property to. It can be the same + as the sourcePath as long as the destinationProperty is different. + + + + The new name of the property. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + A PSObject for each item that is the new property after the copy. + + + + If , , + , or + is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Copies a property on the specified item(s) + + + + The path to the item(s) on which the property should be copied. + + + + The source name of the property to be copied. + + + + The path to the item(s) to copy the property to. It can be the same + as the sourcePath as long as the destinationProperty is different. + + + + The new name of the property. + + + + The context under which the command is running. + + + + Nothing. A PSObject for each item that the new property was copied to is + written to the context. + + + + If , , + , or + is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the copy-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The source name of the property to be copied. + + + + The path to the item(s) to copy the property to. It can be the same + as the sourcePath as long as the destinationProperty is different. + + + + The new name of the property. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Moves a property on the specified item(s) + + + + The path to the item(s) on which the property should be moved. + + + + The source name of the property to be moved. + + + + The path to the item(s) to move the property to. It can be the same + as the sourcePath as long as the destinationProperty is different. + + + + The new name of the property. + + + + A PSObject for each item that is the new property after the move. + + + + If , , + , or + is null. + + + + If resolves to more than one item. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Moves a property on the specified item(s) + + + + The path(s) to the item(s) on which the property should be moved. + + + + The source name of the property to be moved. + + + + The path to the item(s) to move the property to. It can be the same + as the sourcePath as long as the destinationProperty is different. + + + + The new name of the property. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + A PSObject for each item that is the new property after the move. + + + + If , , + , or + is null. + + + + If resolves to more than one item. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Moves a property on the specified item(s) + + + + The path to the item(s) on which the property should be moved. + + + + The source name of the property to be moved. + + + + The path to the item(s) to move the property to. It can be the same + as the sourcePath as long as the destinationProperty is different. + + + + The new name of the property. + + + + The context under which the command is running. + + + + Nothing. A PSObject for each item that the property was moved to is written + to the context. + + + + If , , + , or + is null. + + + + If resolves to more than one item. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the dynamic parameters for the copy-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The source name of the property to be moved. + + + + The path to the item(s) to move the property to. It can be the same + as the sourcePath as long as the destinationProperty is different. + + + + The new name of the property. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If does not contain glob characters and + could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Exposes the APIs to manage the Cmdlet Providers the Cmdlet base class. The methods of this class + get and set provider data in session state. + + + + + Hide the default constructor since we always require an instance of SessionState + + + + + The facade for managing providers + + + + The session to which this is a facade. + + + + If is null. + + + + + + Gets the specified provider(s). + + + + Either the fully-qualified or friendly name for the provider. + + + + The provider information for the specified provider. + + + + If is null or empty. + + + + If the provider specified by is not currently + loaded. + + + + + Gets the specified provider(s). + + + + Either the fully-qualified or friendly name for the provider. + + + + The provider information for the specified provider. + + + + If is null or empty. + + + + If is not PSSnapin-qualified and more than one provider + exists with the specified name. + + + + If the provider specified by is not currently + loaded. + + + + + Gets all the Cmdlet Providers that are loaded. + + + + + Determines if the specified provider has the specified capability + + + + The capability to check the provider for. + + + + The provider information to use for the check. + + + + True, if the provider has the capability, false otherwise. + + + + + + Gets the count of the number of providers that are loaded + + + + + + A ProxyCommand class used to represent a Command constructed Dynamically + + + + + Private Constructor to restrict inheritance + + + + + This method constructs a string representing the command specified by . + The returned string is a ScriptBlock which can be used to configure a Cmdlet/Function in a Runspace. + + + An instance of CommandMetadata representing a command. + + + A string representing Command ScriptBlock. + + + commandMetadata is null. + + + + + This method constructs a string representing the command specified by . + The returned string is a ScriptBlock which can be used to configure a Cmdlet/Function in a Runspace. + + + An instance of CommandMetadata representing a command. + + + The string to be used as the help comment. + + + A string representing Command ScriptBlock. + + + commandMetadata is null. + + + + + This method constructs a string representing the command specified by . + The returned string is a ScriptBlock which can be used to configure a Cmdlet/Function in a Runspace. + + + An instance of CommandMetadata representing a command. + + + The string to be used as the help comment. + + + A boolean that determines whether the generated proxy command should include the functionality required + to proxy dynamic parameters of the underlying command. + + + A string representing Command ScriptBlock. + + + commandMetadata is null. + + + + + This method constructs a string representing the CmdletBinding attribute of the command + specified by . + + + An instance of CommandMetadata representing a command. + + + A string representing the CmdletBinding attribute of the command. + + + commandMetadata is null. + + + + + This method constructs a string representing the param block of the command + specified by . The returned string only contains the + parameters, it is not enclosed in "param()". + + + An instance of CommandMetadata representing a command. + + + A string representing the parameters of the command. + + + commandMetadata is null. + + + + + This method constructs a string representing the begin block of the command + specified by . The returned string only contains the + script, it is not enclosed in "begin { }". + + + An instance of CommandMetadata representing a command. + + + A string representing the begin block of the command. + + + commandMetadata is null. + + + + + This method constructs a string representing the process block of the command + specified by . The returned string only contains the + script, it is not enclosed in "process { }". + + + An instance of CommandMetadata representing a command. + + + A string representing the process block of the command. + + + commandMetadata is null. + + + + + This method constructs a string representing the dynamic parameter block of the command + specified by . The returned string only contains the + script, it is not enclosed in "dynamicparam { }". + + + An instance of CommandMetadata representing a command. + + + A string representing the dynamic parameter block of the command. + + + commandMetadata is null. + + + + + This method constructs a string representing the end block of the command + specified by . The returned string only contains the + script, it is not enclosed in "end { }". + + + An instance of CommandMetadata representing a command. + + + A string representing the end block of the command. + + + commandMetadata is null. + + + + + Construct the text that can be used in a multi-line comment for get-help. + + A custom PSObject created by Get-Help. + A string that can be used as the help comment for script for the input HelpInfo object. + When the help argument is null. + When the help argument is not recognized as a HelpInfo object. + + + + Exposes the APIs to manipulate the providers, Runspace data, and location to the Cmdlet base class. + + + + + The internal constructor for this object. It should be the only one that gets called. + + + + An instance of SessionState that the APIs should work against. + + + + If is null. + + + + + + The internal constructor for this object. It should be the only one that gets called. + + + + An instance of ExecutionContext whose EngineSessionState represents the parent session state. + + + True if the session state should be created as a child session state. + + + True if the session state should be linked to the global scope. + + + + If is null. + + + + + Construct a new session state object... + + + + + Gets the APIs to access drives + + + + + Gets the APIs to access providers + + + + + Gets the APIs to access paths and location + + + + + Gets the APIs to access variables in session state. + + + + + Get/set constraints for this execution environemnt + + + + + If true the PowerShell debugger will use FullLanguage mode, otherwise it will use the current language mode + + + + + Public proxy for the list of scripts that are allowed to be run. If the name "*" + is in the list, then all scripts can be run. (This is the default.) + + + + + Public proxy for the list of appications that are allowed to be run. If the name "*" + is in the list, then all applications can be run. (This is the default.) + + + + + The module associated with this session state instance... + + + + + The provider intrinsics for this session state instance. + + + + + The command invocation intrinsics for this session state instance. + + + + + Utility to check the visiblity of an object based on the current + command origin. If the object implements IHasSessionStateEntryVisibility + then the check will be made. If the check fails, then an exception will be thrown... + + The command origin value to check against... + The object to check + + + + Checks the visibility of an object based on the command origin argument. + + The origin to check against + The object to check + Returns true if the object is visible, false otherwise + + + + Checks the visibility of an object based on the command origin argument. + + The origin to check against + The variable to check + Returns true if the object is visible, false otherwise + + + + Checks the visibility of an object based on the command origin argument. + + The origin to check against + The command to check + Returns true if the object is visible, false otherwise + + + + Gets a reference to the "real" session state object instead of the facade + + + + + + This enum defines the visiblity of execution environment elements... + + + + + Entries are visible to requests from outside the runspace + + + + + Entries are not visible to requests from outside the runspace + + + + + This enum defines what subset of the PowerShell language is permitted when + calling into this execution environment. + + + + + All PowerShell langugage elements are available + + + + + A subset of language elements are available to external requests + + + + + Commands containing script text to evaluate are not allowed. You can only + call commands using the Runspace APIs when in this mode. + + + + + Exposes a subset of the PowerShell language that limits itself to core PowerShell + types, does not support method invocation (except on those types), and does not + support property setters (except on those types). + + + + + Derives InternalCommand for ScriptCommand. + + + + + A common base class for code shared between an interpreted (old) script block and a compiled (new) script block. + + + + + When executing a scriptblock, the command origin needs to be set for the current scope. + If this true, then the scope origin will be set to the command origin. If it's false, + then the scope origin will be set to Internal. This allows public functions to call + private functions but still see $MyInvocation.CommandOrigin as $true. + + + + + If true, then an exit exception will be rethrown to instead of caught and processed... + + + + + This indicates whether exit is called during the execution of + script block. + + + Exit command can be executed in any of begin/process/end blocks. + + If exit is called in one block (for example, begin), any subsequent + blocks (for example, process and end) should not be executed. + + + + + Helper function for setting up command object and commandRuntime object + for script command processor. + + + + + Checks if user has requested help (for example passing "-?" parameter for a cmdlet) + and if yes, then returns the help target to display. + + help target to request + help category to request + true if user requested help; false otherwise + + + + This class implements a command processor for script related commands. + + + + 1. Usage scenarios + + ScriptCommandProcessor is used for four kinds of commands. + + a. Functions and filters + + For example, + + function foo($a) {$a} + foo "my text" + + Second command is an example of a function invocation. + + In this case, a FunctionInfo object is provided while constructing + command processor. + + b. Script File + + For example, + + . .\my.ps1 + + In this case, a ExternalScriptInfo or ScriptInfo object is provided + while constructing command processor. + + c. ScriptBlock + + For example, + + . {$a = 5} + + In this case, a ScriptBlock object is provided while constructing command + processor. + + d. Script Text + + This is used internally for directly running a text stream of script. + + 2. Design + + a. Script block + + No matter how a script command processor is created, core piece of information + is always a ScriptBlock object, which can come from either a FunctionInfo object, + a ScriptInfo object, or directly parsed from script text. + + b. Script scope + + A script block can be executed either in current scope or in a new scope. + + New scope created should be a scope supporting $script: in case the command + processor is created from a script file. + + c. Begin/Process/End blocks + + Each script block can have one block of script for begin/process/end. These map + to BeginProcessing, ProcessingRecord, and EndProcessing of cmdlet api. + + d. ExitException handling + + If the command processor is created based on a script file, its exit exception + handling is different in the sense that it indicates an exitcode instead of killing + current powershell session. + + + + + + Get the ObsoleteAttribute of the current command + + + + + Execute BeginProcessing part of command. It sets up the overall scope + object for this command and runs the begin clause of the script block if + it isn't empty. + + + a terminating error occurred, or the pipeline was otherwise stopped + + + + + The parameters for the paging support enabled by . + Includes: -IncludeTotalCount, -Skip [int], -First [int] + + + + + Gets or sets the value of the -IncludeTotalCount parameter for all cmdlets that support paging. + + + + + Gets or sets the value of the -Skip parameter for all cmdlets that support paging. + If the user doesn't specify anything, the default is 0. + + + + + Gets or sets the value of the -First parameter for all cmdlets that support paging. + If the user doesn't specify anything, the default is . + + + + + A helper method for creating an object that represents a total count + of objects that the cmdlet would return without paging + (this can be more than the size of the page specified in the cmdlet parameter). + + a total count of objects that the cmdlet would return without paging + + accuracy of the parameter. + 1.0 means 100% accurate; + 0.0 means that total count is unknown; + anything in-between means that total count is estimated + + An object that represents a total count of objects that the cmdlet would return without paging + + + + Exposes the APIs to manipulate variables in the Runspace. + + + + + Hide the default constructor since we always require an instance of SessionState + + + + + Constructs a facade for the specified session. + + + + The session for which the facade wraps. + + + + If is null. + + + + + + Gets the specified variable from session state. + + + + The name of the variable to get. The name can contain drive and/or + scope specifiers like "ENV:path" or "global:myvar". + + + + The specified variable. + + + + If is null. + + + + + Gets the specified variable from session state in the specified scope. + If the variable doesn't exist in the specified scope no additional lookup + will be done. + + + + The name of the variable to get. The name can contain drive and/or + scope specifiers like "ENV:path" or "global:myvar". + + + + The ID of the scope to do the lookup in. + + + + The specified variable. + + + + If is null. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + Gets the specified variable value from session state. + + + + The name of the variable to get. The name can contain drive and/or + scope specifiers like "ENV:path" or "global:myvar". + + + + The value of the specified variable. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the specified variable from session state. If the variable + is not found the default value is returned. + + + + The name of the variable to get. The name can contain drive and/or + scope specifiers like "ENV:path" or "global:myvar". + + + + The default value returned if the variable could not be found. + + + + The value of the specified variable or the default value if the variable + is not found. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Gets the specified variable from session state in the specified scope. + If the variable doesn't exist in the specified scope no additional lookup + will be done. + + + + The name of the variable to get. The name can contain drive and/or + scope specifiers like "ENV:path" or "global:myvar". + + + + The ID of the scope to do the lookup in. + + + + The value of the specified variable. + + + + If is null. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Sets the variable to the specified value. + + + + The name of the variable to be set. The name can contain drive and/or + scope specifiers like "ENV:path" or "global:myvar". + + + + The value to set the variable to. + + + + If is null. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Sets the variable. + + + + + The variable to set + + + + If is null. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + + Removes the specified variable from session state. + + + + The name of the variable to be removed. The name can contain drive and/or + scope specifiers like "ENV:path" or "global:myvar". + + + + If is null. + + + + if the variable is constant. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + Removes the specified variable from session state. + + + + The variable to be removed. It is removed based on the name of the variable. + + + + If is null. + + + + if the variable is constant. + + + + + Removes the specified variable from the specified scope + + + + The name of the variable to remove. + + + + The ID of the scope to do the lookup in. The ID is a zero based index + of the scope tree with the current scope being zero, its parent scope + being 1 and so on. + + + + If is null. + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + if the variable is constant. + + + + If refers to an MSH path (not a variable) + and the provider throws an exception. + + + + + Removes the specified variable from the specified scope + + + + The variable to be removed. It is removed based on the name of the variable. + + + + The ID of the scope to do the lookup in. The ID is a zero based index + of the scope tree with the current scope being zero, its parent scope + being 1 and so on. + + + + If is null. + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + if the variable is constant. + + + + + This interface defines the set of functionality that must be implemented to directly + execute an instance of a Cmdlet. + + + When a cmdlet is instantiated and run directly, all calls to the stream APIs will be proxied + through to an instance of this class. For example, when a cmdlet calls WriteObject, the + WriteObject implementation on the instance of the class implementing this interface will be + called. The Monad implementation provides a default implementation of this class for use with + standalone cmdlets as well as the implementation provided for running in the monad engine itself. + + If you do want to run Cmdlet instances standalone and capture their output with more + fidelity than is provided for with the default implementation, then you should create your own + implementation of this class and pass it to cmdlets before calling the Cmdlet Invoke() or + Execute() methods. + + + + + Returns an instance of the PSHost implementation for this environment. + + + + + Display debug information + + debug output + + This API is called by the cmdlet to display debug information on the inner workings + of the Cmdlet. An implementation of this interface should display this information in + an appropriately distinctive manner (e.g. through a different color or in a separate + status window. In simple implementations, just ignoring the text and returning is sufficient. + + + + + Internal variant: Writes the specified error to the error pipe. + + + Do not call WriteError(e.ErrorRecord). + The ErrorRecord contained in the ErrorRecord property of + an exception which implements IContainsErrorRecord + should not be passed directly to WriteError, since it contains + a + rather than the real exception. + + error + + + + Called to write objects to the output pipe. + + + The object that needs to be written. This will be written as + a single object, even if it is an enumeration. + + + When the cmdlet wants to write a single object out, it will call this + API. It is up to the implementation to decide what to do with these objects. + + + + + Called to write one or more objects to the output pipe. + If the object is a collection and the enumerateCollection flag + is true, the objects in the collection + will be written individually. + + + The object that needs to be written to the pipeline. + + + true if the collection should be enumerated + + + When the cmdlet wants to write multiple objects out, it will call this + API. It is up to the implementation to decide what to do with these objects. + + + + + Called by the cmdlet to display progress information + + progress information + + Use WriteProgress to display progress information about + the activity of your Task, when the operation of your Task + could potentially take a long time. + + By default, progress output will + be displayed, although this can be configured with the + ProgressPreference shell variable. + + The implementation of the API should display these progress records + in a fashion appropriate for the application. For example, a GUI application + would implement this as a progress bar of some sort. + + + + + + + + Displays progress output if enabled + + + Identifies which command is reporting progress + + + Progress status to be displayed + + + The implementation of the API should display these progress records + in a fashion appropriate for the application. For example, a GUI application + would implement this as a progress bar of some sort. + + + + + Called when the cmdlet want to display verbose information + + verbose output + + Cmdlets use WriteVerbose to display more detailed information about + the activity of the Cmdlet. By default, verbose output will + not be displayed, although this can be configured with the + VerbosePreference shell variable + or the -Verbose and -Debug command-line options. + + The implementation of this API should display this addition information + in an appropriate manner e.g. in a different color in a console application + or in a separate window in a GUI application. + + + + + + + + Called by the cmdlet to display warning information + + warning output + + Use WriteWarning to display warnings about + the activity of your Cmdlet. By default, warning output will + be displayed, although this can be configured with the + WarningPreference shell variable + or the -Verbose and -Debug command-line options. + + The implementation of this API should display this addition information + in an appropriate manner e.g. in a different color in a console application + or in a separate window in a GUI application. + + + + + + + + Write text into pipeline execution log. + + text to be written to log + + Use WriteCommandDetail to write important information about cmdlet execution to + pipeline execution log. + + If LogPipelineExecutionDetail is turned on, this information will be written + to monad log under log category "Pipeline execution detail" + + + + + + + + Called by the cmdlet to confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + + Name of the target resource being acted upon. This will + potentially be displayed to the user. + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + An implementation should prompt the user in an appropriate manner + and return true or false. An alternative trivial implementation + would be to just return true all the time. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + + + + + + + + + Called by a cmdlet to confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + This variant allows the caller to specify text for both the + target resource and the action. + + + Name of the target resource being acted upon. This will + potentially be displayed to the user. + + + Name of the action which is being performed. This will + potentially be displayed to the user. (default is Cmdlet name) + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + An implementation should prompt the user in an appropriate manner + and return true or false. An alternative trivial implementation + would be to just return true all the time. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + + + + + + + + + Called by a cmdlet to confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + This variant allows the caller to specify the complete text + describing the operation, rather than just the name and action. + + + Textual description of the action to be performed. + This is what will be displayed to the user for + ActionPreference.Continue. + + + Textual query of whether the action should be performed, + usually in the form of a question. + This is what will be displayed to the user for + ActionPreference.Inquire. + + + Caption of the window which may be displayed + if the user is prompted whether or not to perform the action. + may be displayed by some hosts, but not all. + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + An implementation should prompt the user in an appropriate manner + and return true or false. An alternative trivial implementation + would be to just return true all the time. + + + + + + + + + + Called by a cmdlet to confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + This variant allows the caller to specify the complete text + describing the operation, rather than just the name and action. + + + Textual description of the action to be performed. + This is what will be displayed to the user for + ActionPreference.Continue. + + + Textual query of whether the action should be performed, + usually in the form of a question. + This is what will be displayed to the user for + ActionPreference.Inquire. + + + Caption of the window which may be displayed + if the user is prompted whether or not to perform the action. + may be displayed by some hosts, but not all. + + + Indicates the reason(s) why ShouldProcess returned what it returned. + Only the reasons enumerated in + + are returned. + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + An implementation should prompt the user in an appropriate manner + and return true or false. An alternative trivial implementation + would be to just return true all the time. + + + + + + + + + + Called by a cmdlet to confirm an operation or grouping of operations with the user. + This differs from ShouldProcess in that it is not affected by + preference settings or command-line parameters, + it always does the query. + This variant only offers Yes/No, not YesToAll/NoToAll. + + + Textual query of whether the action should be performed, + usually in the form of a question. + + + Caption of the window which may be displayed + when the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + + If ShouldContinue returns true, the operation should be performed. + If ShouldContinue returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + Cmdlets using ShouldContinue should also offer a "bool Force" + parameter which bypasses the calls to ShouldContinue + and ShouldProcess. + If this is not done, it will be difficult to use the Cmdlet + from scripts and non-interactive hosts. + + Cmdlets using ShouldContinue must still verify operations + which will make changes using ShouldProcess. + This will assure that settings such as -WhatIf work properly. + You may call ShouldContinue either before or after ShouldProcess. + + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + Cmdlets may have different "classes" of confirmations. For example, + "del" confirms whether files in a particular directory should be + deleted, whether read-only files should be deleted, etc. + Cmdlets can use ShouldContinue to store YesToAll/NoToAll members + for each such "class" to keep track of whether the user has + confirmed "delete all read-only files" etc. + ShouldProcess offers YesToAll/NoToAll automatically, + but answering YesToAll or NoToAll applies to all subsequent calls + to ShouldProcess for the Cmdlet instance. + + An implementation should prompt the user in an appropriate manner + and return true or false. An alternative trivial implementation + would be to just return true all the time. + + + + + + + + + Called to confirm an operation or grouping of operations with the user. + This differs from ShouldProcess in that it is not affected by + preference settings or command-line parameters, + it always does the query. + This variant offers Yes, No, YesToAll and NoToAll. + + + Textual query of whether the action should be performed, + usually in the form of a question. + + + Caption of the window which may be displayed + when the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + + true iff user selects YesToAll. If this is already true, + ShouldContinue will bypass the prompt and return true. + + + true iff user selects NoToAll. If this is already true, + ShouldContinue will bypass the prompt and return false. + + + If ShouldContinue returns true, the operation should be performed. + If ShouldContinue returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + Cmdlets using ShouldContinue should also offer a "bool Force" + parameter which bypasses the calls to ShouldContinue + and ShouldProcess. + If this is not done, it will be difficult to use the Cmdlet + from scripts and non-interactive hosts. + + Cmdlets using ShouldContinue must still verify operations + which will make changes using ShouldProcess. + This will assure that settings such as -WhatIf work properly. + You may call ShouldContinue either before or after ShouldProcess. + + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + Cmdlets may have different "classes" of confirmations. For example, + "del" confirms whether files in a particular directory should be + deleted, whether read-only files should be deleted, etc. + Cmdlets can use ShouldContinue to store YesToAll/NoToAll members + for each such "class" to keep track of whether the user has + confirmed "delete all read-only files" etc. + ShouldProcess offers YesToAll/NoToAll automatically, + but answering YesToAll or NoToAll applies to all subsequent calls + to ShouldProcess for the Cmdlet instance. + + An implementation should prompt the user in an appropriate manner + and return true or false. An alternative trivial implementation + would be to just return true all the time. + + + + + + + + + Returns true if a transaction is available and active. + + + + + Gets an object that surfaces the current PowerShell transaction. + When this object is disposed, PowerShell resets the active transaction + + + + + This interface will be called to route fatal errors from a cmdlet. + + + The error which caused the command to be terminated + + + + terminates the command, where + + allows the command to continue. + + The cmdlet can also terminate the command by simply throwing + any exception. When the cmdlet's implementation of + , + or + + throws an exception, the Engine will always catch the exception + and report it as a terminating error. + However, it is preferred for the cmdlet to call + , + so that the additional information in + + is available. + + It is up to the implementation of this routine to determine what + if any information is to be added. It should encapsulate the + error record into an exception and then throw that exception. + + + + + This interface defines the set of functionality that must be implemented to directly + execute an instance of a Cmdlet. ICommandRuntime2 extends the ICommandRuntime interface + by adding support for the informational data stream. + + + + + Write an informational record to the command runtime. + + The informational record that should be transmitted to the host or user. + + + + Confirm an operation or grouping of operations with the user. + This differs from ShouldProcess in that it is not affected by + preference settings or command-line parameters, + it always does the query. + This variant offers Yes, No, YesToAll and NoToAll. + + + Textual query of whether the action should be performed, + usually in the form of a question. + + + Caption of the window which may be displayed + when the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + + true if the operation being confirmed has a security impact. If specified, + the default option selected in the selection menu is 'No'. + + + true iff user selects YesToAll. If this is already true, + ShouldContinue will bypass the prompt and return true. + + + true iff user selects NoToAll. If this is already true, + ShouldContinue will bypass the prompt and return false. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldContinue returns true, the operation should be performed. + If ShouldContinue returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + + + Monad internal implementation of the ICommandRuntime2 interface + used for execution in the monad engine environment. + + There will be one instance of this class for each cmdlet added to + a pipeline. When the cmdlet calls its WriteObject API, that API will call + the WriteObject implementation in this class which, in turn, calls + the downstream cmdlet. + + + + + Gets/Set the execution context value for this runtime object. + + + + + The host object for this object + + + + + IsClosed indicates to the Cmdlet whether its upstream partner + could still write more data to its incoming queue. + Note that there may still be data in the incoming queue. + + + + + True if we're not closed and the input pipe is non-null... + + + + + This allows all success output to be set to a variable. Similar to the way -errorvariable sets + all errors to a variable name. Semantically this is equivalent to : cmd |set-var varname -passthru + but it should be MUCH faster as there is no binding that takes place + + + + may not be set to null + + + This is a common parameter via class CommonParameters. + + + + + for diagnostic purposes + + + + + + Return the invocation data object for this command. + + The invocation object for this command. + + + + Internal helper. Indicates whether stop has been requested on this command. + + + + + Writes the object to the output pipe. + + + The object that needs to be written. This will be written as + a single object, even if it is an enumeration. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteObject may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + + + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread + + + + + Writes one or more objects to the output pipe. + If the object is a collection and the enumerateCollection flag + is true, the objects in the collection + will be written individually. + + + The object that needs to be written to the pipeline. + + + true if the collection should be enumerated + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteObject may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + + + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread + + + + + Display progress information + + progress information + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteProgress may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + Use WriteProgress to display progress information about + the activity of your Cmdlet, when the operation of your Cmdlet + could potentially take a long time. + + By default, progress output will + be displayed, although this can be configured with the + ProgressPreference shell variable. + + + + + + + + Displays progress output if enabled + + + Identifies which command is reporting progress + + + Progress status to be displayed + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + Display debug information + + debug output + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteDebug may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + Use WriteDebug to display debug information on the inner workings + of your Cmdlet. By default, debug output will + not be displayed, although this can be configured with the + DebugPreference shell variable or the -Debug command-line option. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + + + + Display debug information + + + + + Display verbose information + + verbose output + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteVerbose may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + Use WriteVerbose to display more detailed information about + the activity of your Cmdlet. By default, verbose output will + not be displayed, although this can be configured with the + VerbosePreference shell variable + or the -Verbose and -Debug command-line options. + + + + + + + + Display verbose information + + + + + Display warning information + + warning output + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + WriteWarning may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + Use WriteWarning to display warnings about + the activity of your Cmdlet. By default, warning output will + be displayed, although this can be configured with the + WarningPreference shell variable + or the -Verbose and -Debug command-line options. + + + + + + + + Display warning information + + + + + Display tagged object information + + + + + Display tagged object information + + + + + Write text into pipeline execution log. + + text to be written to log + + Use WriteCommandDetail to write important information about cmdlet execution to + pipeline execution log. + + If LogPipelineExecutionDetail is turned on, this information will be written + to monad log under log category "Pipeline execution detail" + + + + + + + + This allows all success output to be set to a variable, where the variable is reset for each item returned by + the cmdlet. Semantically this is equivalent to : cmd | % { $pipelineVariable = $_; (...) } + + + + + Configures the number of objects to buffer before calling the downstream Cmdlet + + + This is a common parameter via class CommonParameters. + + + + + Confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + + Name of the target resource being acted upon. This will + potentially be displayed to the user. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, + + will throw + , + but the command failure will ultimately be + , + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype1")] + public class RemoveMyObjectType1 : PSCmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + public override void ProcessRecord() + { + if (ShouldProcess(filename)) + { + // delete the object + } + } + } + } + + + + + + + + + + + Confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + This variant allows the caller to specify text for both the + target resource and the action. + + + Name of the target resource being acted upon. This will + potentially be displayed to the user. + + + Name of the action which is being performed. This will + potentially be displayed to the user. (default is Cmdlet name) + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype2")] + public class RemoveMyObjectType2 : PSCmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + public override void ProcessRecord() + { + if (ShouldProcess(filename, "delete")) + { + // delete the object + } + } + } + } + + + + + + + + + + + Confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + This variant allows the caller to specify the complete text + describing the operation, rather than just the name and action. + + + Textual description of the action to be performed. + This is what will be displayed to the user for + ActionPreference.Continue. + + + Textual query of whether the action should be performed, + usually in the form of a question. + This is what will be displayed to the user for + ActionPreference.Inquire. + + + Caption of the window which may be displayed + if the user is prompted whether or not to perform the action. + may be displayed by some hosts, but not all. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype3")] + public class RemoveMyObjectType3 : PSCmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + public override void ProcessRecord() + { + if (ShouldProcess( + String.Format("Deleting file {0}",filename), + String.Format("Are you sure you want to delete file {0}?", filename), + "Delete file")) + { + // delete the object + } + } + } + } + + + + + + + + + + + Confirm the operation with the user. Cmdlets which make changes + (e.g. delete files, stop services etc.) should call ShouldProcess + to give the user the opportunity to confirm that the operation + should actually be performed. + + This variant allows the caller to specify the complete text + describing the operation, rather than just the name and action. + + + Textual description of the action to be performed. + This is what will be displayed to the user for + ActionPreference.Continue. + + + Textual query of whether the action should be performed, + usually in the form of a question. + This is what will be displayed to the user for + ActionPreference.Inquire. + + + Caption of the window which may be displayed + if the user is prompted whether or not to perform the action. + may be displayed by some hosts, but not all. + + + Indicates the reason(s) why ShouldProcess returned what it returned. + Only the reasons enumerated in + + are returned. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldProcess returns true, the operation should be performed. + If ShouldProcess returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + A Cmdlet should declare + [Cmdlet( SupportsShouldProcess = true )] + if-and-only-if it calls ShouldProcess before making changes. + + ShouldProcess may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + ShouldProcess will take into account command-line settings + and preference variables in determining what it should return + and whether it should prompt the user. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype3")] + public class RemoveMyObjectType3 : PSCmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + public override void ProcessRecord() + { + ShouldProcessReason shouldProcessReason; + if (ShouldProcess( + String.Format("Deleting file {0}",filename), + String.Format("Are you sure you want to delete file {0}?", filename), + "Delete file", + out shouldProcessReason)) + { + // delete the object + } + } + } + } + + + + + + + + + + + Helper function for ShouldProcess APIs + + + Description of operation, to be printed for Continue or WhatIf + + + Warning prompt, to be printed for Inquire + + + This is the caption of the window which may be displayed + if the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + + Indicates the reason(s) why ShouldProcess returned what it returned. + Only the reasons enumerated in + + are returned. + + true iff the action should be performed + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + Confirm an operation or grouping of operations with the user. + This differs from ShouldProcess in that it is not affected by + preference settings or command-line parameters, + it always does the query. + This variant only offers Yes/No, not YesToAll/NoToAll. + + + Textual query of whether the action should be performed, + usually in the form of a question. + + + Caption of the window which may be displayed + when the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldContinue returns true, the operation should be performed. + If ShouldContinue returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + Cmdlets using ShouldContinue should also offer a "bool Force" + parameter which bypasses the calls to ShouldContinue + and ShouldProcess. + If this is not done, it will be difficult to use the Cmdlet + from scripts and non-interactive hosts. + + Cmdlets using ShouldContinue must still verify operations + which will make changes using ShouldProcess. + This will assure that settings such as -WhatIf work properly. + You may call ShouldContinue either before or after ShouldProcess. + + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + Cmdlets may have different "classes" of confirmations. For example, + "del" confirms whether files in a particular directory should be + deleted, whether read-only files should be deleted, etc. + Cmdlets can use ShouldContinue to store YesToAll/NoToAll members + for each such "class" to keep track of whether the user has + confirmed "delete all read-only files" etc. + ShouldProcess offers YesToAll/NoToAll automatically, + but answering YesToAll or NoToAll applies to all subsequent calls + to ShouldProcess for the Cmdlet instance. + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype4")] + public class RemoveMyObjectType4 : PSCmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + [Parameter] + public SwitchParameter Force + { + get { return force; } + set { force = value; } + } + private bool force; + + public override void ProcessRecord() + { + if (ShouldProcess( + String.Format("Deleting file {0}",filename), + String.Format("Are you sure you want to delete file {0}", filename), + "Delete file")) + { + if (IsReadOnly(filename)) + { + if (!Force && !ShouldContinue( + String.Format("File {0} is read-only. Are you sure you want to delete read-only file {0}?", filename), + "Delete file")) + ) + { + return; + } + } + // delete the object + } + } + } + } + + + + + + + + + + Confirm an operation or grouping of operations with the user. + This differs from ShouldProcess in that it is not affected by + preference settings or command-line parameters, + it always does the query. + This variant offers Yes, No, YesToAll and NoToAll. + + + Textual query of whether the action should be performed, + usually in the form of a question. + + + Caption of the window which may be displayed + when the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + + true if the operation being confirmed has a security impact. If specified, + the default option selected in the selection menu is 'No'. + + + true iff user selects YesToAll. If this is already true, + ShouldContinue will bypass the prompt and return true. + + + true iff user selects NoToAll. If this is already true, + ShouldContinue will bypass the prompt and return false. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldContinue returns true, the operation should be performed. + If ShouldContinue returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + + + Confirm an operation or grouping of operations with the user. + This differs from ShouldProcess in that it is not affected by + preference settings or command-line parameters, + it always does the query. + This variant offers Yes, No, YesToAll and NoToAll. + + + Textual query of whether the action should be performed, + usually in the form of a question. + + + Caption of the window which may be displayed + when the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + + true iff user selects YesToAll. If this is already true, + ShouldContinue will bypass the prompt and return true. + + + true iff user selects NoToAll. If this is already true, + ShouldContinue will bypass the prompt and return false. + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + Not permitted at this time or from this thread. + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + + If ShouldContinue returns true, the operation should be performed. + If ShouldContinue returns false, the operation should not be + performed, and the Cmdlet should move on to the next target resource. + + + Cmdlets using ShouldContinue should also offer a "bool Force" + parameter which bypasses the calls to ShouldContinue + and ShouldProcess. + If this is not done, it will be difficult to use the Cmdlet + from scripts and non-interactive hosts. + + Cmdlets using ShouldContinue must still verify operations + which will make changes using ShouldProcess. + This will assure that settings such as -WhatIf work properly. + You may call ShouldContinue either before or after ShouldProcess. + + ShouldContinue may only be called during a call to this Cmdlet's + implementation of ProcessRecord, BeginProcessing or EndProcessing, + and only from that thread. + + Cmdlets may have different "classes" of confirmations. For example, + "del" confirms whether files in a particular directory should be + deleted, whether read-only files should be deleted, etc. + Cmdlets can use ShouldContinue to store YesToAll/NoToAll members + for each such "class" to keep track of whether the user has + confirmed "delete all read-only files" etc. + ShouldProcess offers YesToAll/NoToAll automatically, + but answering YesToAll or NoToAll applies to all subsequent calls + to ShouldProcess for the Cmdlet instance. + + + + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet(VerbsCommon.Remove,"myobjecttype4")] + public class RemoveMyObjectType5 : PSCmdlet + { + [Parameter( Mandatory = true )] + public string Filename + { + get { return filename; } + set { filename = value; } + } + private string filename; + + [Parameter] + public SwitchParameter Force + { + get { return force; } + set { force = value; } + } + private bool force; + + private bool yesToAll; + private bool noToAll; + + public override void ProcessRecord() + { + if (ShouldProcess( + String.Format("Deleting file {0}",filename), + String.Format("Are you sure you want to delete file {0}", filename), + "Delete file")) + { + if (IsReadOnly(filename)) + { + if (!Force && !ShouldContinue( + String.Format("File {0} is read-only. Are you sure you want to delete read-only file {0}?", filename), + "Delete file"), + ref yesToAll, + ref noToAll + ) + { + return; + } + } + // delete the object + } + } + } + } + + + + + + + + + + Returns true if a transaction is available for use. + + + + + Gets an object that surfaces the current PowerShell transaction. + When this object is disposed, PowerShell resets the active transaction + + + + + Implementation of ThrowTerminatingError. + + + The error which caused the command to be terminated + + + always + + + + terminates the command, where + + allows the command to continue. + + The cmdlet can also terminate the command by simply throwing + any exception. When the cmdlet's implementation of + , + or + + throws an exception, the Engine will always catch the exception + and report it as a terminating error. + However, it is preferred for the cmdlet to call + , + so that the additional information in + + is available. + + + always throws + , + regardless of what error was specified in . + The Cmdlet should generally just allow + . + to percolate up to the caller of + . + etc. + + + + + Data streams available for merging. + + + + + No data stream available for merging. + + + + + All data streams. + + + + + Success output. + + + + + Error output. + + + + + Warning output. + + + + + Verbose output. + + + + + Debug output. + + + + + Host output. + + + + + Information output. + + + + + Get/sets error data stream merge state. + + + + + Method to set data stream merging based on passed in runtime object. + + MshCommandRuntime object. + + + + Claims the unclaimed error output of all previous commands + + + + + Gets or sets the input pipe. + + + + + Gets or sets the output pipe. + + + + + An empty array that is declared statically so we don't keep + allocating them over and over... + + + + + Gets or sets the error pipe. + + + + + Gets or sets the warning output pipe. + + + + + Gets or sets the verbose output pipe. + + + + + Gets or sets the debug output pipe. + + + + + Gets or sets the informational output pipe. + + + + + throws if the pipeline is stopping + + + + + + throws if the caller is trying to call WriteObject/WriteError + from the wrong thread, or not during a call to + BeginProcessing/ProcessRecord/EndProcessing + + + + + + WriteObject/WriteObjecs/WriteError are only allowed during this scope. + Be sure to use this object only in "using" so that it is reliably + disposed and follows stack semantics. + + IDisposable + + + + Begin the scope where WriteObject/WriteError is permitted. + + + + + End the scope where WriteObject/WriteError is permitted + + + + + + Stores the exception to be returned from + PipelineProcessor.SynchronousExecute, + and writes it to the error variable. + The general pattern is to call + throw ManageException(e); + + the exception + PipelineStoppedException + + + + ErrorVariable tells which variable to populate with the errors. + Use +varname to append to the variable rather than clearing it. + + + This is a common parameter via class CommonParameters. + + + + + Append an error to the ErrorVariable if specified, and also to $ERROR + + Exception or ErrorRecord + + (An error occurred working with the error variable or $ERROR. + + + + + Appends the object to $global:error. Non-terminating errors + are always added (even if they are redirected to another + Cmdlet), but terminating errors are only added if they are + at the top-level scope (the LocalPipeline scope). + We insert at position 0 and delete from position 63. + + + ErrorRecord or Exception to be written to $global:error + + + An error occurred accessing $ERROR. + + + + + WarningVariable tells which variable to populate with the warnings. + Use +varname to append to the variable rather than clearing it. + + + This is a common parameter via class CommonParameters. + + + + + Append a warning to WarningVariable if specified. + + The warning message + + + + InformationVariable tells which variable to populate with informational output. + Use +varname to append to the variable rather than clearing it. + + + This is a common parameter via class CommonParameters. + + + + + Append a Information to InformationVariable if specified. + + The Information message + + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + + + Internal variant: Writes the specified error to the error pipe. + + + Do not call WriteError(e.ErrorRecord). + The ErrorRecord contained in the ErrorRecord property of + an exception which implements IContainsErrorRecord + should not be passed directly to WriteError, since it contains + a + rather than the real exception. + + error + + Not permitted at this time or from this thread + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + + terminates the command, where + + allows the command to continue. + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + Not permitted at this time or from this thread + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + Preference setting controlling behavior of ShouldProcess() + + + This is not an independent parameter, it just emerges from the + Verbose, Debug, Confirm, and WhatIf parameters and the + $ConfirmPreference shell variable. + + We only read $ConfirmPreference once, then cache the value. + + + + + Preference setting + + + (get-only) An error occurred accessing $DebugPreference. + + + + + Preference setting + + + An error occurred accessing $VerbosePreference. + + + + + Preference setting + + + An error occurred accessing $WarningPreference. + + + + + Echo tells the command to articulate the actions it performs while executing. + + + This is a common parameter via class CommonParameters. + + + + + Confirm tells the command to ask the admin before performing an action. + + + This is a common parameter via class ShouldProcessParameters. + + + + + UseTransaction tells the command to activate the current PowerShell transaction. + + + This is a common parameter via class TransactionParameters. + + + + + Debug tell the command system to provide Programmer/Support type messages to understand what is really occuring + and give the user the opportunity to stop or debug the situation + + + This is a common parameter via class CommonParameters. + + + + + WhatIf indicates that the command should not + perform any changes to persistent state outside Monad. + + + This is a common parameter via class ShouldProcessParameters. + + + + + ErrorAction tells the command what to do when an error occurs + + + (get-only) An error occurred accessing $ErrorAction. + + + This is a common parameter via class CommonParameters. + + + + + + Preference setting for displaying ProgressRecords when WriteProgress is called. + + + + + + + + Preference setting for displaying InformationRecords when WriteInformation is called. + + + + + + + ContinueStatus indicates the last reply from the user + whether or not the command should process an object. + + + + + Should the verbose/debug/progress message be printed? + + + + + + + + + + Complete implementation of WriteDebug/WriteVerbose/WriteProgress + + + + + + + + Did Inquire return YesToAll? + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + Helper for continue prompt, handles Inquire + + may be null + may be null + + + + + user's selection + + The pipeline has already been terminated, or was terminated + during the execution of this method. + The Cmdlet should generally just allow PipelineStoppedException + to percolate up to the caller of ProcessRecord etc. + + + If the pipeline is terminated due to ActionPreference.Stop + or ActionPreference.Inquire, this method will throw + , + but the command failure will ultimately be + , + + + + + Determines if this is being run in the context of a remote host or not. + + + + + Default implementation of ICommandRuntime for running Cmdlets standalone. + + + + + Constructs an instance of the default ICommandRuntime object + that will write objects into the list that was passed. + + + + + Return the instance of PSHost - null by default. + + + + + Implementation of WriteDebug - just discards the input. + + Text to write + + + + Default implementation of WriteError - if the error record contains + an exceptin then that exception will be thrown. If not, then an + InvalidOperationException will be constructed and thrown. + + Error record instance to process + + + + Default implementation of WriteObject - adds the object to the list + passed to the objects constructor. + + Object to write + + + + Default implementation of the enumerated WriteObject. Either way, the + objects are added to the list passed to this object in the constuctor. + + Object to write + If true, the collection is enumerated, otherwise + it's written as a scalar. + + + + + Default implementation - just discards it's arguments + + progress record to write. + + + + Default implementation - just discards it's arguments + + Source ID to write for + record to write. + + + + Default implementation - just discards it's arguments + + Text to write. + + + + Default implementation - just discards it's arguments + + Text to write. + + + + Default implementation - just discards it's arguments + + Text to write. + + + + Default implementation - just discards it's arguments + + Record to write. + + + + Default implementation - always returns true. + + ignored + true + + + + Default implementation - always returns true. + + ignored + ignored + true + + + + Default implementation - always returns true. + + ignored + ignored + ignored + true + + + + Default implementation - always returns true. + + ignored + ignored + ignored + ignored + true + + + + Default implementation - always returns true. + + ignored + ignored + true + + + + Default implementation - always returns true. + + ignored + ignored + ignored + ignored + true + + + + Default implementation - always returns true. + + ignored + ignored + ignored + ignored + ignored + true + + + + Returns true if a transaction is available and active. + + + + + Gets an object that surfaces the current PowerShell transaction. + When this object is disposed, PowerShell resets the active transaction + + + + + Implementation of the dummy default ThrowTerminatingError API - it just + does what the base implementation does anyway - rethrow the exception + if it exists, otherwise throw an invalid operation exception. + + The error record to throw + + + + Provides information about a mapping between a command name and a real command. + + + + + Creates an instance of the AliasInfo class with the specified name and referenced command + + + + The name of the command. + + + + The token that the alias refers to. + + + + The execution context for this engine, used to lookup the current session state. + + + + If is null or empty. + + + + If is null. + + + + + + Creates an instance of the AliasInfo class with the specified name and referenced command + + + + The name of the command. + + + + The token that the alias refers to. + + + + The execution context for this engine instance, used to look up session state. + + + + The options to set on the alias. Note, Constant can only be set at creation time. + + + + If is null or empty. + + + + If is null. + + + + + + Gets the command information for the command that is immediately referenced by this alias. + + + + + Gets the command information for the command that + the alias eventually resolves to. + + + + An alias may reference another alias. This property follows the reference + chain of aliases to its end. + + + + + + + Gets the name of the command to which the alias refers. + + + + + Sets the new definition for the alias. + + + + The new definition for the alias. + + + + If true, the value will be set even if the alias is ReadOnly. + + + + If the alias is readonly or constant. + + + + + + Gets or sets the scope options for the alias + + + + If the trying to set an alias that is constant or + if the value trying to be set is ScopedItemOptions.Constant + + + + + Sets the options for the alias and allows changes ReadOnly options only if force is specified. + + + + The new options value. + + + + If true the change to the options will happen even if the existing options are read-only. + + + + + + Gets or sets the description for the alias + + + + + If ResolvedCommand returns null, this property will + return the name of the command that could not be resolved. + If ResolvedCommand has not yet been called or was able + to resolve the command, this this property will return null. + + + + + + The objects output from an alias are the objects output from the resolved + command. If we can't resolve the command, assume nothing is output - so use void. + + + + + Provides information for applications that are not directly executable by Monad. + + + + An application is any file that is executable by Windows either directly or through + file associations excluding any .ps1 files or cmdlets. + + + + + Creates an instance of the ApplicationInfo class with the specified name, and path. + + + + The name of the application. + + + + The path to the application executable + + + + THe engine execution context for this command... + + + If or is null or empty + or contains one or more of the invalid + characters defined in InvalidPathChars. + + + + + + Gets the path for the application file. + + + + + Gets the extension of the application file. + + + + + Gets the path of the application file. + + + + + Gets the source of this command + + + + + Gets the source version + + + + + Determine the visibility for this script... + + + + + An application could return nothing, but commonly it returns a string. + + + + + The command information for MSH cmdlets that are directly executable by MSH + + + + + Constructs a CmdletInfo object from the raw cmdlet data. This should only + be used for Intrinsic commands. + + + + The name of the cmdlet. + + + + The type information about the class that implements the cmdlet. + + + + The name of the help file associated with the cmdlet + + + + The PSSnapInInfo of the PSSnapin the cmdlet comes from. + + + + The current engine context. + + + + + + This is a copy constructor, used primarily for get-command. + + + + + Create a copy of commandInfo for GetCommandCommand so that we can generate parameter + sets based on an argument list (so we can get the dynamic parameters.) + + + + + Directly create a cmdlet object from a type. This allows + unregistered commands to be called. It also allows the overhead of + command discovery to be bypassed. + + The name to use for the cmdlet, must be in the form Noun-Verb. + The .NET class implementing this cmdlet. + + + + Gets the verb of the cmdlet + + + + + Gets the noun of the cmdlet. + + + + + Gets the help file path for the cmdlet. + + + + + Gets the Snap-in in which the cmdlet is implemented. + + + + + Gets the name of the PSSnapin the cmdlet is implemented in. + + + + + + Gets the source version + + + + + Gets the type that implements the cmdlet + + + + + Gets the synopsis of the cmdlet + + + + + Gets the name of the default parameter set. + + + + + Return the output types specified on the cmdlet. + + + + + Gets or sets the scope options for the alias + + + + If the trying to set an cmdlet that is constant or + if the value trying to be set is ScopedItemOptions.Constant + + + + + Sets the options for the cmdlet and allows changes ReadOnly options only if force is specified. + + + + The new options value. + + + + If true the change to the options will happen even if the existing options are read-only. + + + + + + Gets the full name of the cmdlet including the PSSnapin name + + + + + Gets the full name of the cmdlet including the PSSnapin name + + + + + Gets the full name of the cmdlet including the PSSnapin name. + + + + + Gets the full name of the cmdlet including the PSSnapin name + + + + + Gets the CommandMetadata for this cmdlet + + + + The type name is invalid or the length of the type name + exceeds 1024 characters. + + + + The caller does not have the required permission to load the assembly + or create the type. + + + + If more than int.MaxValue parameter-sets are defined for the command. + + + + If a parameter defines the same parameter-set name multiple times. + If the attributes could not be read from a property or field. + + + + + + This is the interface between the CommandProcessor and the various + parameter binders required to bind parameters to a cmdlet. + + + + + + Initializes the cmdlet parameter binder controller for + the specified cmdlet and engine context + + + + The cmdlet that the parameters will be bound to. + + + + The metadata about the cmdlet. + + + + The default parameter binder to use. + + + + + + Binds the specified command-line parameters to the target + + + + Parameters to the command. + + + + If any parameters fail to bind, + or + If any mandatory parameters are missing. + + + + If there is an error generating the metadata for dynamic parameters. + + + + + + Binds the unbound arguments to parameters but does not + perform mandatory parameter validation or parameter set validation. + + + + + Process all valid parameter sets, and filter out those that don't take any pipeline input + + + + The new valid parameter set flags + + + + + Apply the binding for the defualt parameter defined by the user + + + Dictate which binding stage this default binding happens + + + Special operation needed if the default binding happens at the dynamic binding stage + + + + + + Bind the default parameter value pairs + + validParameterSetFlag + default value pairs + + true if there is at least one default parameter bound scucessfully + false if there is no default parameter bound successfully + + + + + Wrap up current binding state to provide more information to the user + + + + + + Get all qualified default parameter value pairs based on the + given currentParameterSetFlag. + + + + null if no qualified pair found + + + + Get the aliases of the the current cmdlet + + + + + + Check if the passed-in aliasName matches an alias name in _aliasList + + + + + + + Get all available default parameter value pairs + + return the available parameter value pairs. Otherwise return null + + + + A helper method for GetDefaultParameterValuePairs + + + + + + + + + + + + Verify if all arguments from the command line are bound. + + + Previous binding exceptions that possiblly causes the failure + + + + + Verifies that a single parameter set is selected and throws an exception if + one of there are multiple and one of them is not the default parameter set. + + + + + + Restores the specified parameter to the original value. + + + + The argument containing the value to restore. + + + + The metadata for the parameter to restore. + + + + True if the parameter was restored correctly, or false otherwise. + + + + + + Binds the actual arguments to only the formal parameters + for only the parameters in the specified parameter set + + + + The parameter set used to bind the arguments. + + + The arguments that should be attempted to bind to the parameters of the specified + parameter binder. + + + + if multiple parameters are found matching the name. + or + if no match could be found. + or + If argument transformation fails. + or + The argument could not be coerced to the appropriate type for the parameter. + or + The parameter argument transformation, prerequisite, or validation failed. + or + If the binding to the parameter fails. + + + + + Determines if a ScriptBlock can be bound directly to the type of the specified parameter + + + + The metadata of the parameter to check the type of. + + + + true if the parameter type is Object, ScriptBlock, derived from ScriptBlock, a + collection of ScriptBlocks, a collection of Objects, or a collection of types derived from + ScriptBlock. + False otherwise. + + + + + + Binds the specified parameters to the cmdlet + + + + The parameters to bind. + + + + + + Binds the specified argument to the specified parameter using the appropriate + parameter binder. If the argument is of type ScriptBlock and the parameter takes + pipeline input, then the ScriptBlock is saved off in the delay-bind ScriptBlock + container for further processing of pipeline input and is not bound as the argument + to the parameter. + + + + The parameter set used to bind the arguments. + + + + The argument to be bound. + + + + The metadata for the parameter to bind the argument to. + + + + Flags for type coercion, validation, and script block binding. + + ParameterBindingFlags.DelayBindScriptBlock: + If set, arguments that are of type ScriptBlock where the parameter is not of type ScriptBlock, + Object, or PSObject will be stored for execution during pipeline input and not bound as + an argument to the parameter. + + + + True if the parameter was successfully bound. False if + has the flag set and the type does not match the parameter type. + + + + + + Binds the specified argument to the specified parameter using the appropriate + parameter binder. + + + + The argument to be bound. + + + + The metadata for the parameter to bind the argument to. + + + + Flags for type coercion and validation. + + + + True if the parameter was successfully bound. False if + has the flag set and the type does not match the parameter type. + + + + + + Binds the remaining arguments to an unbound ValueFromRemainingArguments parameter (Varargs) + + + + If there was an error binding the arguments to the parameters. + + + + + + Determines if the cmdlet supports dynamic parameters. If it does, + the dynamic parameter bindable object is retrieved and the unbound + arguments are bound to it. + + + + Returns the underlying parameter binding exception if any was generated. + + + + If there was an error compiling the parameter metadata. + + + + If there was an error binding the arguments to the parameters. + + + + + + This method determines if the unbound mandatory parameters take pipeline input or + if we can use the default parameter set. If all the unbound mandatory parameters + take pipeline input and the default parameter set is valid, then the default parameter + set is set as the current parameter set and processing can continue. If there are + more than one valid parameter sets and the unbound mandatory parameters are not + consistent across parameter sets or there is no default parameter set then a + ParameterBindingException is thrown with an errorId of AmbiguousParameterSet. + + + + The number of valid parameter sets. + + + + True if the pipeline is open to receive input. + + + + If there are multiple valid parameter sets and the missing mandatory parameters are + not consistent across parameter sets, or there is no default parameter set. + + + + + + Preserve potential parameter sets as much as possible + + + The mandatory set we choose to latch on + Other mandatory parameter sets to be ignored + Indicate if the chosen mandatory set contains any non-pipelineable mandatory parameters + + + + Update _currentParameterSetFlag to ignore the specified mandatory sets + + + + This method is used only when we try to preserve parameter sets during the mandatory parameter checking. + In cases where this method is used, there must be at least one parameter set declared. + + + the mandatory parameter sets to be ignored + + + + Ensures that only one parameter set is valid or throws an appropriate exception + + + + If true, it is acceptable to have multiple valid parameter sets as long as one + of those parameter sets take pipeline input. + + + + If true, the default parameter set will be selected if there is more than + one valid parameter set and one is the default set. + If false, the count of valid parameter sets will be returned but no error + will occur and the default parameter set will not be used. + + + + The number of valid parameter sets. + + + + If the more than one or zero parameter sets were resolved from the named + parameters. + + + + + + Determines if there are any unbound parameters that take pipeline input + for the specified parameter sets. + + + + The parameter sets that should be checked for each unbound parameter to see + if it accepts pipeline input. + + + + True if there is at least one parameter that takes pipeline input for the + specified parameter sets, or false otherwise. + + + + + + Checks for unbound mandatory paramters. If any are found, an exception is thrown. + + + + Returns the missing mandatory parameters, if any. + + + + True if there are no unbound mandatory parameters. False if there are unbound mandatory parameters. + + + + + Checks for unbound mandatory paramters. If any are found and promptForMandatory is true, + the user will be prompted for the missing mandatory parameters. + + + + The number of valid parameter sets. + + + + If true, unbound mandatory parameters will be processed via user prompting (if allowed by promptForMandatory). + If false, unbound mandatory parameters will cause false to be returned. + + + + If true, unbound mandatory parameters will cause the user to be prompted. If false, unbound + mandatory parameters will cause an exception to be thrown. + + + + If true, then only parameters that don't take pipeline input will be prompted for. + If false, any mandatory parameter that has not been specified will be prompted for. + + + + Returns the missing mandatory parameters, if any. + + + + True if there are no unbound mandatory parameters. False if there are unbound mandatory parameters + and promptForMandatory if false. + + + + If prompting didn't result in a value for the parameter (only when is true.) + + + + + + Creates a label with a Hotkey from . The Hotkey is + 's first capital character not in . + If does not have any capital character, the first lower + case character is used. The Hotkey is preceded by an ampersand in the label. + + + The parameter name from which the Hotkey is created + + + A list of used HotKeys + + + A label made from parameterName with a HotKey indicated by an ampersand + + + + + Gets the parameter set name for the current parameter set. + + + + + + Binds the specified object or its properties to parameters + that accept pipeline input. + + + + The pipeline object to bind. + + + + True if the pipeline input was bound successfully or there was nothing + to bind, or false if there was an error. + + + + + + Binds the pipeline parameters using the specified input and parameter set + + + + The pipeline input to be bound to the parameters. + + + + If argument transformation fails. + or + The argument could not be coerced to the appropriate type for the parameter. + or + The parameter argument transformation, prerequisite, or validation failed. + or + If the binding to the parameter fails. + or + If there is a failure resetting values prior to binding from the pipeline + + + + The algorithm for binding the pipeline object is as follows. If any + step is successful true gets returned immediately. + + - If parameter supports ValueFromPipeline + - attempt to bind input value without type coercion + - If parameter supports ValueFromPipelineByPropertyName + - attempt to bind the value of the property with the matching name without type coercion + + Now see if we have a single valid parameter set and reset the validParameterSets flags as + necessary. If there are still multiple valid parameter sets, then we need to use TypeDistance + to determine which parameters to do type coercion binding on. + + - If parameter supports ValueFromPipeline + - attempt to bind input value using type coercion + - If parameter support ValueFromPipelineByPropertyName + - attempt to bind the vlue of the property with the matching name using type coercion + + + + + + + Used for defining the state of the binding state machine. + + + + + + Invokes any delay bind script blocks and binds the resulting value + to the appropriate parameter. + + + + The input to the script block. + + + + Returns True if there was a ScriptBlock to invoke and bind, or false if there + are no ScriptBlocks to invoke. + + + + True if the binding succeeds, or false otherwise. + + + + if is null. + + + + If execution of the script block throws an exception or if it doesn't produce + any output. + + + + + + Determines the number of valid parameter sets based on the valid parameter + set flags. + + + + The valid parameter set flags. + + + + The number of valid parameter sets in the parameterSetFlags. + + + + + + This method gets a backup of the default value of a parameter. + Derived classes may override this method to get the default parameter + value in a different way. + + + + The name of the parameter to get the default value of. + + + + The value of the parameter specified by name. + + + + If the parameter binder encounters an error getting the default value. + + + + + + Gets or sets the command that this parameter binder controller + will bind parameters to. + + + + + The separator used in GetDefaultParameterValuePairs function + + + + + The cmdlet metadata. + + + + + THe command runtime object for this cmdlet. + + + + + Keep the obsolete parameter warnings generated from parameter binding + + + + + Keep names of the parameters for which we have generated obsolete warning messages + + + + + The parameter binder for the dynamic parameters. Currently this + can be either a ReflectionParameterBinder or a RuntimeDefinedParameterBinder + + + + + The parameter binder for the ShouldProcess parameters. + + + + + The parameter binder for the Paging parameters. + + + + + The parameter binder for the Transactions parameters. + + + + + The parameter binder for the CommonParameters. + + + + + + This dictionary is used to contain the arguments that were passed in as ScriptBlocks + but the parameter isn't a ScriptBlock. So we have to wait to bind the parameter + until there is a pipeline object available to invoke the ScriptBlock with. + + + + + + A collection of the default values of the parameters. + + + + + Binds the specified value to the specified parameter + + + + The value to bind to the parameter + + + + The parameter to bind the value to. + + + + Parameter binding flags for type coercion and validation. + + + + True if the parameter was successfully bound. False if + specifies no coercion and the type does not match the parameter type. + + + + If the parameter binder encounters an error getting the default value. + + + + + + Backs up the specified parameter value by calling the GetDefaultParameterValue + abstract method. + + This method is called when binding a parameter value that came from a pipeline + object. + + + + If the parameter binder encounters an error getting the default value. + + + + + + Replaces the values of the parameters with their initial value for the + parameters specified. + + + + The parameters that should have their default values restored. + + + + If is null. + + + + + + A versionable hashtable, so the caching of UserInput -> ParameterBindingResult will work + + + + + check to see if the hashtable has been changed since last check + + true for changed; false for not changed + + + + Default constructor + + + + + constructor takes a hash table + + + + Check for the keys' formats and make it versionable + + + a hashtable instance + + + + Override Contains + + + + + Override ContainsKey + + + + + Override the Add to check for key's format and make it versionable + + key + value + + + + Actual implementation for Add + + + + + Override the indexing to check for key's format and make it versionable. + + + + + + + Override the Remove to make it versionable + + key + + + + Override the Clear to make it versionable + + + + + Check if the key is in valid format. If it is, get the cmdlet name and parameter name. + + + + + Return true if the key is valid, false if not + + + + Get the cmdlet name and the parameter name + + point to a non-whitespace character + the key to iterate over + + Specify whether to get the cmdlet name or parameter name + + For cmdletName: + When the name is enclosed by quotes, the index returned should be the index of the character right after the second quote; + When the name is not enclosed by quotes, the index returned should be the index of the separator; + + For parameterName: + When the name is enclosed by quotes, the index returned should be the index of the seocnd quote plus 1 (the length of the key if the key is in a valid format); + When the name is not enclosed by quotes, the index returned should be the length of the key. + + + + + + Skip whitespace characters + + start index + the string to iterate over + + Return -1 if we reach the end of the key, otherwise return the index of the first + non-whitespace character we encounter. + + + + + EventArgs for the ScriptCmdletVariableUpdate event + + + + + Constructor for event args object + + The name of the command we're searching for + The origin of the command internal or runspace (external) + The execution context for this command + + + + The name of the command we're looking for + + + + + The origin of the command internal or runspace (external) + + + + + If true on return from event handler, the search is stopped. + + + + + The CommandInfo obejct for the command that was found. + + + + + Scriptblock to be returned as the found command. If it is set to + null, then the command to return and the StopSearch flag will be reset. + + + + + Defines the preference options for the Module Auto-loading feature + + + + + Do not auto-load modules when a command is not found. + + + + + Only auto-load modules when a command is not found, and the command + is module-qualified. + + + + + Auto-load modules when a command is not found. + + + + + CommandDiscovery... + + + + + Default constructor... + + + + If is null. + + + + + + Determines if the cmdlet is a cmdlet that shouldn't be in the discovery list. + + + + Type implementing the cmdlet + + + + True if the cmdlet is a special cmdlet that shouldn't be part of the discovery list. Or false otherwise. + + + + + + Adds the CmdletInfo to the cmdlet cache in the current scope object. + + + + The name of the cmdlet to add. + + + + The CmdletInfo to add. + + + + If true, the cmdlet is added to the Module Scope of the session state. + + + + If a cmdlet with the same module and cmdlet name already exists + but has a different implementing type. + + + + + + Add a SessionStateCmdletEntry to the cmdlet cache... + + + + + + Add a SessionStateCmdletEntry to the cmdlet cache... + + + + + + + Look up a command named by the argument string and return its CommandProcessorBase. + + + + The command name to lookup. + + + Location where the command was dispatched from. + + + True if command processor should use local scope to execute the command, + False if not. Null if command discovery should default to something reasonable + for the command discovered. + + + + + + + If the command, , could not be found. + + + + If the security manager is preventing the command from running. + + + + + + used to determine compatibility between the versions in the requires statement and + the installed version. The version can be PSSnapin or msh + + versions in the requires statement + version installed + + true if requires and installed's major version match and requires' minor version + is smaller than or equal to installed's + + + In PowerShell V2, script requiring PowerShell 1.0 will fail. + + + + + Look up a command using a CommandInfo object and return its CommandProcessorBase. + + + + The commandInfo for the command to lookup. + + + Location where the command was dispatched from. + + True if command processor should use local scope to execute the command, + False if not. Null if command discovery should default to something reasonable + for the command discovered. + + The session state the commandInfo should be run in. + + + + + + If the command, , could not be found. + + + + If the security manager is preventing the command from running. + + + + + + Look up a command and return its CommandInfo. + + + + The command name to lookup. + + + + An instance of a CommandInfo object that represents the + command. If the command is resolved as an alias, an AliasInfo + is returned with the ReferencedCommand info intact. + + + + If the command, , could not be found. + + + + + + Gets a CommandPathSearch constructed with the specified patterns and + using the PATH as the lookup directories + + + + The patterns to search for. These patterns must be in the form taken + by DirectoryInfo.GetFiles(). + + + + An instance of CommandPathSearch that is initialized with the specified + patterns and using the PATH as the lookup directories. + + + + + Gets the resolved paths contained in the PATH environment + variable. + + + + The contents of the PATH environment variable split using a semi-colon + as a delimiter. + + + + The result is an ordered list of paths with paths starting with "." unresolved until lookup time. + + + + + + The cached list of lookup paths. It can be invalidated by + the PATH changing. + + + + + The key that determines if the cached PATH can be used. + + + + + The cache of the tokenized PATH directories + + + + + Gets the PATHEXT environment variable extensions and tokenizes them. + + + + + + Gets the PATHEXT environment variable extensions and tokenizes them. + + + + + + Gets the cmdlet information for the specified name. + + + + The name of the cmdlet to return the information for. + + + True if we should search all scopes, false if we should stop after finding the first. + + + + The CmdletInfo for the cmdlet for all the cmdlets with the specified name. + + + + If is null or empty. + + + + + + Called by the RunspaceConfiguration when a PSSnapIn gets added to the + console to update the list of available cmdlets. + + + + + + Removes a cmdlet from the cmdlet cache. + + + + The configuration entry for the cmdlet which is being removed. + + + + + + Gets the cached ScriptInfo for a command using the script name. + + + + The name of the script. + + + + A reference to the ScriptInfo for the command if its in the cache, + or null otherwise. + + + + + + Gets the script cache + + + + + + The cache for the ScriptInfo. + + + + + + Reads the path for the appropriate shellID from the registry. + + + + The ID of the shell to retrieve the path for. + + + + The path to the shell represented by the shellID. + + + + The shellID must be registered in the Windows Registry in either + the HKEY_CURRENT_USER or HKEY_LOCAL_MACHINE hive under + Software/Microsoft/MSH/<ShellID> and are searched in that order. + + + + + + A helper collection of strings that doesn't allow duplicate strings. Comparison + is case-insensitive and done in the invariant culture. + + + + + Default constructor + + + + + Constructs a LookupPathCollection object and adds all the items + in the supplied collection to it. + + + + A set of items to be added to the collection. + + + + + + Adds the specified string to the collection if its not already + a member of the collection. + + + + The string to add to the collection. + + + + The index at which the string was added or -1 if it was not added. + + + + + + Adds all the strings in the specified collection to this collection + + + + The collection of strings to add. + + + + Only the strings that are not already in the collection will be added. + + + + + + Determines if the string already exists in the collection + using a invariant culture case insensitive comparison. + + + + The string to check for existence. + + + + True if the string already exists in the collection. + + + + + + Returns a collection of all the indexes that are relative paths. + + + + A collection of all the indexes that are relative paths. + + + + + + Finds the first index of the specified string. The string + is compared in the invariant culture using a case-insensitive comparison. + + + + The string to look for. + + + + The index of the string in the collection or -1 if it was not found. + + + + If is null or empty. + + + + + + Defines the types of commands that MSH can execute + + + + + Aliases create a name that refers to other command types + + + + Aliases are only persisted within the execution of a single engine. + + + + + Script functions that are defined by a script block + + + + Functions are only persisted within the execution of a single engine. + + + + + Script filters that are defined by a script block. + + + + Filters are only persisted within the execution of a single engine. + + + + + A cmdlet. + + + + + An MSH script (*.ps1 file) + + + + + Any existing application (can be console or GUI). + + + + An application can have any extension that can be executed either directly through CreateProcess + or indirectly through ShellExecute. + + + + + A script that is built into the runspace configuration + + + + + A workflow + + + + + A Configuration + + + + + All possible command types. + + + + Note, a CommandInfo instance will never specify + All as its CommandType but All can be used when filtering the CommandTypes. + + + + + The base class for the information about commands. Contains the basic information about + the command, like name and type. + + + + + Creates an instance of the CommandInfo class with the specified name and type + + + + The name of the command. + + + + The type of the command. + + + + If is null. + + + + + + Creates an instance of the CommandInfo class with the specified name and type + + + + The name of the command. + + + + The type of the command. + + + + The execution context for the command. + + + + If is null. + + + + + + This is a copy constructor, used primarily for get-command. + + + + + This is a copy constructor, used primarily for get-command. + + + + + Gets the name of the command. + + + + + Gets the type of the command + + + + + Gets the source of the command (shown by default in Get-Command) + + + + + Gets the source version (shown by default in Get-Command) + + + + + The execution context this command will run in. + + + + + The language mode that was in effect when this alias was defined. + + + + + Internal interface to change the type of a CommandInfo object. + + + + + + A string representing the definition of the command. + + + + This is overridden by derived classes to return specific + information for the command type. + + + + + This is required for renaming aliases, functions, and filters + + + + The new name for the command. + + + + If is null or empty. + + + + + + for diagnostic purposes + + + + + + Indicates if the command is to be allowed to be executed by a request + external to the runspace. + + + + + Return a CommandMetadata instance that is never exposed publicly. + + + + + Returns the syntax of a command + + + + + The module name of this command. It will be empty for commands + not imported from either a module or snapin. + + + + + The module that defines this cmdlet. This will be null for commands + that are not defined in the context of a module. + + + + + The remoting capabilities of this cmdlet, when exposed in a context + with ambient remoting. + + + + + True if the command has dynamic parameters, false otherwise. + + + + + Constructs the MergedCommandParameterMetadata, using any arguments that + may have been specified so that dynamic parameters can be determined, if any. + + + + + + Return the parameters for this command. + + + + + Resolves a full, shortened, or aliased parameter name to the actual + cmdlet parameter name, using PowerShell's standard parameter resolution + algorithm. + + The name of the parameter to resolve. + The parameter that matches this name + + + + Gets the information about the parameters and parameter sets for + this command. + + + + + A possibly incomplete or even incorrect list of types the command could return. + + + + + Specifies whether this command was imported from a module or not. + This is used in Get-Command to figure out which of the commands in module session state were imported. + + + + + The prefix that was used when importing this command + + + + + Create a copy of commandInfo for GetCommandCommand so that we can generate parameter + sets based on an argument list (so we can get the dynamic parameters.) + + + + + Generates the parameter and parameter set info from the cmdlet metadata + + + + A collection of CommandParameterSetInfo representing the cmdlet metadata. + + + + The type name is invalid or the length of the type name + exceeds 1024 characters. + + + + The caller does not have the required permission to load the assembly + or create the type. + + + + If more than int.MaxValue parameter-sets are defined for the command. + + + + If a parameter defines the same parameter-set name multiple times. + If the attributes could not be read from a property or field. + + + + + + Gets or sets whether this CmdletInfo instance is a copy used for get-command. + If true, and the cmdlet supports dynamic parameters, it means that the dynamic + parameter metadata will be merged into the parameter set information. + + + + + Gets or sets the command line arguments/parameters that were specified + which will allow for the dynamic parameters to be retrieved and their + metadata merged into the parameter set information. + + + + + Represents , but can be used where a real type + might not be available, in which case the name of the type can be used. + + + + + This constructor is used when the type exists and is currently loaded. + + The type + + + + This constructor is used when the type may not exist, or is not loaded. + + The name of the type + + + + This constructor is used when the type is defined in PowerShell. + + The type definition from the ast. + + + + This constructor creates a type from a ITypeName. + + + + + Return the name of the type + + + + + Return the type with metadata, or null if the type is not loaded. + + + + + When a type is defined by PowerShell, the ast for that type. + + + + + Returns a String that represents the current PSTypeName. + + String that represents the current PSTypeName. + + + + Used to enumerate the commands on the system that match the specified + command name + + + + + Constructs a command searching enumerator that resolves the location + of a command using the PATH environment variable. + + + + The patterns to search for in the path. + + + + The paths to directories in which to lookup the command. + + + + The exection context for the current engine instance. + + + + + Ensures that all the paths in the lookupPaths member are absolute + file system paths. + + + + + + Gets an instance of a command enumerator + + + + An instance of this class as IEnumerator. + + + + + + Gets an instance of a command enumerator + + + + An instance of this class as IEnumerator. + + + + + + Moves the enumerator to the next command match + + + + true if there was another command that matches, false otherwise. + + + + + + Resets the enumerator to before the first command match + + + + + Gets the path to the current command match. + + + + + The enumerator is positioned before the first element of + the collection or after the last element. + + + + + + Required by the IEnumerator generic interface. + Resets the searcher. + + + + + Gets the matching files in the specified directories and resets + the currentDirectoryResultsEnumerator to this new set of results. + + + + The pattern used to find the matching files in the specified directory. + + + + The path to the directory to find the files in. + + + + + + The directory paths in which to look for commands. + This is derived from the PATH environment variable + + + + + The enumerator for the lookup paths + + + + + The list of results matching the pattern in the current + path lookup directory. Resets to null. + + + + + The enumerator for the list of results + + + + + The command name to search for + + + + + The enumerator for the patterns + + + + + A reference to the execution context for this runspace + + + + + When reset is called, this gets set to true. Once MoveNext + is called, this gets set to false. + + + + + If not null, called with the enumerated files for futher processing + + + + + Used to enumerate the commands on the system that match the specified + command name + + + + + Constructs a command searching enumerator that resolves the location + to a command using a standard algorithm. + + + + The name of the command to look for. + + + + Determines which types of commands glob resolution of the name will take place on. + + + + The types of commands to look for. + + + + The execution context for this engine instance... + + + + If is null. + + + + If is null or empty. + + + + + + Gets an instance of a command enumerator + + + + An instance of this class as IEnumerator. + + + + + + Moves the enumerator to the next command match. Public for IEnumerable + + + + true if there was another command that matches, false otherwise. + + + + + + Gets the CommandInfo representing the current command match. + + + + + The enumerator is positioned before the first element of + the collection or after the last element. + + + + + + Required by the IEnumerator generic interface. + Resets the searcher. + + + + + Gets the next command info using the command name as a path + + + + A CommandInfo for the next command if it exists as a path, or null otherwise. + + + + + + Gets the appropriate CommandInfo instance given the specified path. + + + + The path to create the CommandInfo for. + + + + An instance of the appropriate CommandInfo derivative given the specified path. + + + + The refers to a cmdlet, or cmdletprovider + and it could not be loaded as an XML document. + + + + The refers to a cmdlet, or cmdletprovider + that does not adhere to the appropriate file format for its extension. + + + + If refers to a cmdlet file that + contains invalid metadata. + + + + + + Gets the next matching alias + + + + A CommandInfo representing the next matching alias if found, otherwise null. + + + + + + Gets the next matching function + + + + A CommandInfo representing the next matching function if found, otherwise null. + + + + + + Gets the FunctionInfo or FilterInfo for the specified function name. + + + + The name of the function/filter to retrieve. + + + + A FunctionInfo if the function name exists and is a function, a FilterInfo if + the filter name exists and is a filter, or null otherwise. + + + + + + Gets the next cmdlet from the collection of matching cmdlets. + If the collection doesn't exist yet it is created and the + enumerator is moved to the first item in the collection. + + + + A CmdletInfo for the next matching Cmdlet or null if there are + no more matches. + + + + + + Gets the next builtin script from the collection of matching scripts. + If the collection doesn't exist yet it is created and the + enumerator is moved to the first item in the collection. + + + + A ScriptInfo for the next matching script or null if there are + no more matches. + + + + + + Resolves the given path as an PSPath and ensures that it was resolved + by the FileSystemProvider + + + + The path to resolve. + + + + The path that was resolved. Null if the path couldn't be resolved or was + not resolved by the FileSystemProvider. + + + + + + Creates a collection of patterns used to find the command + + + + The name of the command to search for. + + get names for command discovery + + A collection of the patterns used to find the command. + The patterns are as follows: + 1. [commandName].cmdlet + 2. [commandName].ps1 + 3..x + foreach (extension in PATHEXT) + [commandName].[extension] + x+1. [commandName] + + + + If contains one or more of the + invalid characters defined in InvalidPathChars. + + + + + Determines if the given command name is a qualified PowerShell path. + + + + The name of the command. + + + + True if the command name is either a provider-qualified or PowerShell drive-qualified + path. False otherwise. + + + + + + Determines if the command name has any path special + characters which would require resolution. If so, + path lookup will not succeed. + + + + The command name (or possible path) to look for the special characters. + + + + True if the command name does not contain any special + characters. False otherwise. + + + + + + The command name to search for + + + + + Determines which command types will be globbed. + + + + + Determines which types of commands to look for. + + + + + The enumerator that uses the Path to + search for commands. + + + + + Thge execution context instance for the current engine... + + + + + A routine to initialize the path searcher... + + + + If the commandName used to construct this object + contains one or more of the invalid characters defined + in InvalidPathChars. + + + + + + Resets the enumerator to before the first command match, public for IEnumerable + + + + + An enumerator of the matching aliases + + + + + An enumerator of the matching functions + + + + + The CommandInfo that references the command that matches the pattern. + + + + + The current state of the enumerator + + + + + Determines which types of commands should be globbed using the specified + pattern. Any flag that is not specified will only match if exact. + + + + + The metadata associated with a parameter + + + + + + Constructs an instance of the CompiledCommandAttribute using the specified + runtime-defined parameter + + + + A runtime defined parameter that contains the definition of the parameter and its + metadata. + + + + True if dynamic parameters are being processed, or false otherwise. + + + + If is null. + + + + If the parameter has more than one ParameterAttribute + that defines the same parameter-set name. + + + + + + Constructs an instance of the CompiledCommandAttribute using the reflection information retrieved + from the enclosing bindable object type. + + + + The member information for the parameter + + + + True if dynamic parameters are being processed, or false otherwise. + + + + If is null. + + + + If is not a field or a property. + + + + If the member has more than one ParameterAttribute + that defines the same parameter-set name. + + + + + + Gets the name of the parameter + + + + + The PSTypeName from a PSTypeNameAttribute + + + + + Gets the Type information of the attribute. + + + + + Gets the Type information of the attribute. + + + + + Gets whether the parameter is a dynamic parameter or not. + + + + + Gets the parameter collection type information + + + + + A collection of the attributes found on the member. The attributes have been compiled into + a format that easier to digest by the metadata processor. + + + + + Gets the collection of data generation attributes on this parameter + + + + + Gets the collection of data validation attributes on this parameter + + + + + Get and private set the obsolete attribute on this parameter + + + + + If true, null can be bound to the parameter even if the parameter is mandatory + + + + + + If true, null cannot be bound to the parameter (ValidateNotNull + and/or ValidateNotNullOrEmpty has been specified) + + + + + If true, an empty string can be bound to the string parameter + even if the parameter is mandatory + + + + + + If true, an empty collection can be bound to the collection/array parameter + even if the parameter is mandatory + + + + + + Gets or sets the value that tells whether this parameter + is for the "all" parameter set + + + + + + Returns true if this parameter is ValueFromPipeline or ValueFromPipelineByPropertyName + in one or more (but not necessarily all) parameter sets. + + + + + Returns true if this parameter is Mandatory in one or more (but not necessarily all) parameter sets. + + + + + Gets or sets the parameter set flags that map the parameter sets + for this parameter to the parameter set names. + + + + This is a bit-field that maps the parameter sets in this parameter + to the parameter sets for the rest of the command. + + + + + + A delegate that can set the property. + + + + + A dictionary of the parameter sets and the parameter set specific data for this parameter + + + + + + The alias names for this parameter + + + + + + Determines if this parameter takes pipeline input for any of the specified + parameter set flags. + + + + The flags for the parameter sets to check to see if the parameter takes + pipeline input. + + + + True if the parameter takes pipeline input in any of the specified parameter + sets, or false otherwise. + + + + + + Gets the parameter set data for this parameter for the specified parameter set + + + + The parameter set to get the parameter set data for. + + + + The parameter set specified data for the specified parameter set. + + + + + + Gets the parameter set data for this parameter for the specified parameter sets + + + + The parameter sets to get the parameter set data for. + + + + A collection for all parameter set specified data for the parameter sets specified by + the . + + + + + + Processes the Attribute metadata to generate a CompiledCommandAttribute. + + + + If the attribute is a parameter attribute and another parameter attribute + has been processed with the same parameter-set name. + + + + + + Extracts the data from the ParameterAttribute and creates the member data as necessary. + + + + The name of the parameter. + + + + The instance of the ParameterAttribute to extract the data from. + + + + If a parameter set name has already been declared on this parameter. + + + + + + The types of collections that are supported as parameter types. + + + + + Contains the collection type information for a parameter + + + + + Constructs a parameter collection type information object + which exposes the specified Type's collection type in a + simple way. + + + + The type to determine the collection information for. + + + + + + The collection type of the parameter + + + + + The type of the elements in the collection + + + + + Provides information for MSH scripts that are directly executable by MSH + but are not built into the runspace configuration. + + + + + Creates an instance of the ExternalScriptInfo class with the specified name, and path. + + + + The name of the script. + + + + The path to the script + + + + The context of the currently running engine. + + + + If is null. + + + + If is null or empty. + + + + + + Creates an instance of ExternalScriptInfo that has no ExecutionContext. + This is used exclusively to pass it to the AuthorizationManager that just uses the path parameter + + + The name of the script. + + + + The path to the script + + + + If is null or empty. + + + + + + This is a copy constructor, used primarily for get-command. + + + + + Common initialization for all constructors + + + + + Create a copy of commandInfo for GetCommandCommand so that we can generate parameter + sets based on an argument list (so we can get the dynamic parameters.) + + + + + Gets the path to the script file. + + + + + Gets the path to the script file. + + + + + Gets the source of this command + + + + + Returns the syntax of a command + + + + + Determine the visibility for this script... + + + + + The script block that represents the external script + + + + + + Validates the external script info + + + + + + + + The output type(s) is specified in the script block + + + + + The command metadata for the script. + + + + + True if the command has dynamic parameters, false otherwise. + + + + + Gets the original contents of the script. + + + + + Gets the original encoding of the script. + + + + + Thrown when fail to parse #requires statements. Caught by CommandDiscovery. + + + + + Defines the name and version tuple of a PSSnapin + + + + + The name of the snapin. + + + + + The version of the snapin. + + + + + Provides information about a filter that is stored in session state. + + + + + Creates an instance of the FilterInfo class with the specified name and ScriptBlock + + + + The name of the filter. + + + + The ScriptBlock for the filter + + + + The ExecutionContext for the filter. + + + + If is null. + + + + + + Creates an instance of the FilterInfo class with the specified name and ScriptBlock + + + + The name of the filter. + + + + The ScriptBlock for the filter + + + + The ExecutionContext for the filter. + + + + The help file for the filter. + + + + If is null. + + + + + + Creates an instance of the FilterInfo class with the specified name and ScriptBlock + + + + The name of the filter. + + + + The ScriptBlock for the filter + + + + The options to set on the function. Note, Constant can only be set at creation time. + + + + The execution context for the filter. + + + + If is null. + + + + + + Creates an instance of the FilterInfo class with the specified name and ScriptBlock + + + + The name of the filter. + + + + The ScriptBlock for the filter + + + + The options to set on the function. Note, Constant can only be set at creation time. + + + + The execution context for the filter. + + + + The help file for the filter. + + + + If is null. + + + + + + This is a copy constructor, used primarily for get-command. + + + + + This is a copy constructor, used primarily for get-command. + + + + + Create a copy of commandInfo for GetCommandCommand so that we can generate parameter + sets based on an argument list (so we can get the dynamic parameters.) + + + + + Provides information about a function that is stored in session state. + + + + + Creates an instance of the FunctonInfo class with the specified name and ScriptBlock + + + + The name of the function. + + + + The ScriptBlock for the function + + + + The execution context for the function. + + + + If is null. + + + + + + Creates an instance of the FunctonInfo class with the specified name and ScriptBlock + + + + The name of the function. + + + + The ScriptBlock for the function + + + + The execution context for the function. + + + + The name of the help file associated with the function. + + + + If is null. + + + + + + Creates an instance of the FunctonInfo class with the specified name and ScriptBlock + + + + The name of the function. + + + + The ScriptBlock for the function + + + + The options to set on the function. Note, Constant can only be set at creation time. + + + + The execution context for the function. + + + + If is null. + + + + + + Creates an instance of the FunctonInfo class with the specified name and ScriptBlock + + + + The name of the function. + + + + The ScriptBlock for the function + + + + The options to set on the function. Note, Constant can only be set at creation time. + + + + The execution context for the function. + + + + The name of the help file associated with the function. + + + + If is null. + + + + + + This is a copy constructor, used primarily for get-command. + + + + + This is a copy constructor, used primarily for get-command. + + + + + Create a copy of commandInfo for GetCommandCommand so that we can generate parameter + sets based on an argument list (so we can get the dynamic parameters.) + + + + + Gets the ScriptBlock which is the implementation of the function + + + + + Updates a function. + + + + The script block that the function should represent. + + + + If true, the script block will be applied even if the filter is ReadOnly. + + + + Any options to set on the new function, null if none. + + + If is null. + + + + + + + + + Updates a function. + + + + The script block that the function should represent. + + + + If true, the script block will be applied even if the filter is ReadOnly. + + + + Any options to set on the new function, null if none. + + + + The helpfile for this function. + + + + If is null. + + + + + + Returns true if this function uses cmdlet binding mode for its parameters; otherwise returns false. + + + + + Gets the name of the default parameter set. + Returns null if this function doesn't use cmdlet parameter binding or if the default parameter set wasn't specified. + + + + + Gets the definition of the function which is the + ToString() of the ScriptBlock that implements the function. + + + + + Gets or sets the scope options for the function. + + + + If the trying to set a function that is constant or + if the value trying to be set is ScopedItemOptions.Constant + + + + + Gets or sets the description associated with the function + + + + + Gets the verb of the function + + + + + Gets the noun of the function. + + + + + Gets the help file path for the function. + + + + + Returns the syntax of a command + + + + + True if the command has dynamic parameters, false otherwise. + + + + + The command metadata for the function or filter + + + + + The output type(s) is specified in the script block + + + + + Provides information about a configuration that is stored in session state. + + + + + Creates an instance of the ConfigurationInfo class with the specified name and ScriptBlock + + + + The name of the configuration. + + + + The ScriptBlock for the configuration + + + + The ExecutionContext for the configuration. + + + + If is null. + + + + + + Creates an instance of the ConfigurationInfo class with the specified name and ScriptBlock + + + + The name of the configuration. + + + + The ScriptBlock for the configuration + + + + The ExecutionContext for the configuration. + + + + The help file for the configuration. + + + + If is null. + + + + + + Creates an instance of the ConfigurationInfo class with the specified name and ScriptBlock + + + + The name of the configuration. + + + + The ScriptBlock for the configuration + + + + The options to set on the function. Note, Constant can only be set at creation time. + + + + The execution context for the configuration. + + + + If is null. + + + + + + Creates an instance of the ConfigurationInfo class with the specified name and ScriptBlock + + + + The name of the configuration. + + + + The ScriptBlock for the configuration + + + + The options to set on the function. Note, Constant can only be set at creation time. + + + + The execution context for the configuration. + + + + The help file for the configuration. + + + The configuration is a meta configuration + + + If is null. + + + + + + Creates an instance of the ConfigurationInfo class with the specified name and ScriptBlock + + + + The name of the configuration. + + + + The ScriptBlock for the configuration + + + + The options to set on the function. Note, Constant can only be set at creation time. + + + + The execution context for the configuration. + + + + The help file for the configuration. + + + + If is null. + + + + + + This is a copy constructor, used primarily for get-command. + + + + + This is a copy constructor, used primarily for get-command. + + + + + Create a copy of commandInfo for GetCommandCommand so that we can generate parameter + sets based on an argument list (so we can get the dynamic parameters.) + + + + + Indication whether the configuration is a meta-configuration + + + + + Enumerated values for DSC resource implementation type + + + + + DSC resource implementation type not known + + + + + DSC resource is implemented using PowerShell module + + + + + DSC resource is implemented using a CIM provider + + + + + DSC resource is a composite and implemented using configuration keyword + + + + + Contains a DSC resource information + + + + + Initializes a new instance of the DscResourceInfo class + + Name of the DscResource. + FriendlyName of the DscResource. + Path of the DscResource. + ParentPath of the DscResource. + The execution context for the DscResource. + + + + Name of the DSC Resource. + + + + + Gets or sets resource type name + + + + + Gets or sets friendly name defined for the resource + + + + + Gets or sets of the file which implements the resource. For the reosurces which are defined using + MOF file, this will be path to a module which resides in the same folder where schema.mof file is present. + For composite resources, this will be the module which implements the resource + + + + + Gets or sets parent folder, where the resource is defined + It is the folder containing either the implementing module(=Path) or folder containing ".schema.mof". + For native providers, Path will be null and only ParentPath will be present. + + + + + Gets or sets a value which indicate how DSC resource is implemented + + + + + Gets or sets company which owns this resource + + + + + Gets or sets properties of the resource + + + + + Updates properties of the resource + + Updated properties + + + + Module in which the DscResource is implemented in. + + + + + Gets the help file path for the cmdlet. + + + + + Contains a DSC resource property information + + + + + Initializes a new instance of the DscResourcePropertyInfo class + + + + + Gets or sets name of the property + + + + + Gets or sets type of the property + + + + + Gets or sets a value indicating whether the property is mandatory or not + + + + + Gets Values for a resource property + + + + + Replaces any existing metadata in this object with the metadata specified. + + Note that this method should NOT be called after a MergedCommandParameterMetadata + instance is made read only by calling MakeReadOnly(). This is because MakeReadOnly() + will turn 'bindableParameters', 'aliasedParameters' and 'parameterSetMap' into + ReadOnlyDictionary and ReadOnlyCollection. + + + + The metadata to replace in this object. + + + + A list of the merged parameter metadata that was added. + + + + + Merges the specified metdata with the other metadata already defined + in this object. + + + + The compiled metadata for the type to be merged. + + + + The type of binder that the CommandProcessor will use to bind + the parameters for + + + + A collection of the merged parameter metadata that was added. + + + + If a parameter name or alias described in the already + exists. + + + + + + The next available parameter set bit. This number increments but the parameter + set bit is really 1 shifted left this number of times. This number also acts + as the index for the parameter set map. + + + + + Gets the number of parameter sets that were declared for the command. + + + + + + Gets a bit-field representing all valid parameter sets + + + + + This is the parameter set map. The index is the number of times 1 gets shifted + left to specify the bit field marker for the parameter set. + The value is the parameter set name. + New parameter sets are added at the nextAvailableParameterSetIndex. + + + + + + The name of the default parameter set + + + + + Adds the parameter set name to the parameter set map and returns the + index. If the parameter set name was already in the map, the index to + the existing parameter set name is returned. + + + + The name of the parameter set to add. + + + + The index of the parameter set name. If the name didn't already exist the + name gets added and the new index is returned. If the name already exists + the index of the existing name is returned. + + + + The nextAvailableParameterSetIndex is incremented if the parameter set name + is added. + + + + If more than uint.MaxValue parameter-sets are defined for the command. + + + + + Loops through all the parameters and retrieves the parameter set names. In the process + it generates a mapping of parameter set names to the bits in the bit-field and sets + the parameter set flags for the parameter. + + + + The default parameter set name. + + + + The bit flag for the default parameter set. + + + + If more than uint.MaxValue parameter-sets are defined for the command. + + + + + + Gets the parameter set name for the specified parameter set. + + + + The parameter set to get the name for. + + + + The name of the specified parameter set. + + + + + + Helper function to retrieve the name of the parameter + which defined an alias. + + + + + + + + Gets the parameters by matching its name. + + + + The name of the parameter. + + + + If true and a matching parameter is not found, an exception will be + throw. If false and a matching parameter is not found, null is returned. + + + + If true we do exact matching, otherwise we do not. + + + + The invocation information about the code being run. + + + + The a collection of the metadata associated with the parameters that + match the specified name. If no matches were found, an empty collection + is returned. + + + + If is null or empty. + + + + + + Gets a collection of all the parameters that are allowed in the parameter set + + + + The bit representing the parameter set from which the parameters should be retrieved. + + + + A collection of all the parameters in the specified parameter set. + + + + + + Gets a dictionary of the compiled parameter metadata for this Type. + The dictionary keys are the names of the parameters and + the values are the compiled parameter metdata. + + + + + Gets a dictionary of the parameters that have been aliased to other names. The key is + the alias name and the value is the MergedCompiledCommandParameter metadata. + + + + + Makes an association between a CompiledCommandParameter and the type + of the parameter binder used to bind the parameter. + + + + + + Constructs an association between the CompiledCommandParameter and the + binder that should be used to bind it. + + + + The metadata for a parameter. + + + + The type of binder that should be used to bind the parameter. + + + + + Gets the compiled command parameter for the association + + + + + Gets the type of binder that the compiled command parameter should be bound with. + + + + + This enum is used in the MergedCompiledCommandParameter class + to associate a particular CompiledCommandParameter with the + appropriate ParameterBinder. + + + + + + The parameter was declared as a formal parameter in the command type. + + + + + The parameter was declared as a dynamic parameter for the command. + + + + + The parameter is a common parameter found in the CommonParameters class. + + + + + The parameter is a ShouldProcess parameter found in the ShouldProcessParameters class. + + + + + The parameter is a transactions parameter found in the TransactionParameters class. + + + + + The parameter is a Paging parameter found in the PagingParameters class. + + + + + Flags + + + + + No flags specified + + + + + Set when the argument should be converted to the parameter type + + + + + Set when the argument should not be validated or recorded in BoundParameters + + + + + Set when script blocks can be bound as a script block parameter instead of a normal argument + + + + + Set when an exception will be thrown if a matching parameter could not be found. + + + + + An abstract class used by the CommandProcessor to bind parameters to a bindable object. + Derived classes are used to provide specific binding behavior for different object types, + like Cmdlet, PsuedoParameterCollection, and dynamic parameter objects. + + + + + Constructs the parameter binder with the specified type metadata. The binder is only valid + for a single instance of a bindable object and only for the duration of a command. + + + + The target object that the parameter values will be bound to. + + + + The invocation information for the code that is being bound. + + + + The context of the currently running engine. + + + + The command that the parameter binder is binding to. The command can be null. + + + + + + Constructs the parameter binder with the specified type metadata. The binder is only valid + for a single instance of a bindable object and only for the duration of a command. + + + + The invocation information for the code that is being bound. + + + + The context of the currently running engine. + + + + The command that the parameter binder is binding to. The command can be null. + + + + + + Gets or sets the bindable object that the binder will bind parameters to. + + + + + + The bindable object that parameters will be bound to. + + + + + Holds the set of parameters that have been bound from the command line... + + + + + If this is true, then we want to record the list of bound parameters... + + + + + Full Qualified ID for the obsolete parameter warning + + + + + Derived classes must override this method to get the default parameter + value so that it can be restored between pipeline input + + + + The name of the parameter to get the default value of. + + + + The value of the parameter specified by name. + + + + + + Derived classes define this method to bind the specified value + to the specified parameter. + + + The name of the parameter to bind the value to. + + + The value to bind to the parameter. It should be assumed by + derived classes that the proper type coercion has already taken + place and that any validation metadata has been satisfied. + + + + + + Does all the type coercion, data generation, and validation necessary to bind the + parameter, then calls the protected BindParameter method to have + the derived class do the actual binding. + + + + The parameter to be bound. + + + + The metadata for the parameter to use in guiding the binding. + + + + Flags for type coercion and validation. + + + + True if the parameter was successfully bound. False if + is false and the type does not match the parameter type. + + + + The binding algorithm goes as follows: + 1. The data generation attributes are run + 2. The data is coerced into the correct type + 3. The data if validated using the validation attributes + 4. The data is encoded into the bindable object using the + protected BindParameter method. + + + + If or is null. + + + + If argument transformation fails. + or + The argument could not be coerced to the appropriate type for the parameter. + or + The parameter argument transformation, prerequisite, or validation failed. + or + If the binding to the parameter fails. + + + + + + This method ensures that if the parameter is mandatory, and AllowNull, AllowEmptyString, + and/or AllowEmptyCollection is not specified, then argument is not null or empty. + + + + The argument token. + + + + The metadata for the parameter. + + + + The type of the argument to validate against. + + + + The value that will be bound to the parameter. + + + + If true, then elements of collections will be validated against the metadata. + + + + + + The invocation information for the code that is being bound + + + + + The context of the currently running engine + + + + + An instance of InternalCommand that the binder is binding to. + + + + + The engine APIs that need to be passed the attributes when evaluated. + + + + + Coerces the argument type to the parameter value type as needed. + + + + The argument as was specified by the command line. + + + + The name of the parameter that the coercion is taking place to bind to. It is + used only for error reporting. + + + + The type to coerce the value to. + + + + The information about the collection type, like element type, etc. + + + + The current value of the argument. + + + + The value of the argument in the type of the parameter. + + + + If or is null. + + + + If the argument value is missing and the parameter is not a bool or SwitchParameter. + or + If the argument value could not be converted to the parameter type. + + + + + + Takes the current value specified and converts or adds it to + a collection of the appropriate type. + + + + The argument the current value comes from. Used for error reporting. + + + + The name of the parameter. + + + + The collection type information to which the current value will be + encoded. + + + + The type the current value will be converted to. + + + + The value to be encoded. + + + + If true, the element will be coerced into the appropriate type + for the collection. If false, and the element isn't of the appropriate + type then the out parameter will + be true. + + + + This out parameter will be true if + is true and the value could not be encoded into the collection because it + requires coercion to the element type. + + + + A collection of the appropriate type containing the specified value. + + + + If is a collection and one of its values + cannot be coerced into the appropriate type. + or + A collection of the appropriate + could not be created. + + + + + + Represents an unbound parameter object in the engine. It's similar to + AutomationNull.Value however AutomationNull.Value as a parameter value + is used to say "use the default value for this object" whereas UnboundParameter + says "this parameter is unbound, use the default only if the target type + supports permits this." + + It's a singleton class. Sealed to prevent subclassing + + + + Represents an object of the same class (singleton class). + + + + + The base class for the parameter binder controllers. This class and + its derived classes control the interaction between the command processor + and the parameter binder(s). It holds the state of the arguments and parameters. + + + + + Constructs a parameter binder controller for the specified command + in the specified engine context. + + + + The invocation information about the code being run. + + + The engine context in which the command is being run. + + + The default parameter binder for the command. + + + + + The engine context the command is running in. + + + + + + Gets the parameter binder for the command. + + + + + + The invocation information about the code being run. + + + + + All the metadata associated with any of the parameters that + are available from the command. + + + + + + A list of the unbound parameters for the command. + + + + + + A collection of the bound parameters for the command. The collection is + indexed based on the name of the parameter. + + + + + + Set true if the default parameter binding is in use + + + + + A collection of bound default parameters + + + + + A collection of the unbound arguments. + + + + + + A collection of the arguments that have been bound + + + + + + Reparses the unbound arguments using the parameter metadata of the + specified parameter binder as the parsing guide. + + + + If a parameter token is not matched with an argument and its not a bool or + SwitchParameter. + Or + The name of the argument matches more than one parameter. + + + + + + The argument looks like a parameter if it is a string + and starts with a dash. + + + + The argument to check. + + + + True if the argument is a string and starts with a dash, + or false otherwise. + + + + + + Reparses the arguments specified in the object[] and generates CommandParameterInternal instances + based on whether the arguments look like parameters. The CommandParameterInternal instances then + get added to the specified command processor. + + + + The command processor instance to add the reparsed parameters to. + + + + The arguments that require reparsing. + + + + + + Bind the argument to the specified parameter + + + + The argument to be bound. + + + + The flags for type coercion, validation, and script block binding. + + + + True if the parameter was successfully bound. False if does not have the + flag ParameterBindingFlags.ShouldCoerceType and the type does not match the parameter type. + + + + If argument transformation fails. + or + The argument could not be coerced to the appropriate type for the parameter. + or + The parameter argument transformation, prerequisite, or validation failed. + or + If the binding to the parameter fails. + or + The parameter has already been bound. + + + + + + Derived classes need to define the binding of multiple arguments. + + + + The arguments to be bound. + + + + The arguments which are still not bound. + + + + + + Bind the argument to the specified parameter + + + + The parameter set used to bind the arguments. + + + + The argument to be bound. + + + + The metadata for the parameter to bind the argument to. + + + + Flags for type coercion and valiation of the arguments. + + + + True if the parameter was successfully bound. False if + specifies no type coercion and the type does not match the parameter type. + + + + If or is null. + + + + If argument transformation fails. + or + The argument could not be coerced to the appropriate type for the parameter. + or + The parameter argument transformation, prerequisite, or validation failed. + or + If the binding to the parameter fails. + + + + + + Binds the unbound arguments to positional parameters + + + + The unbound arguments to attempt to bind as positional arguments. + + + + The current parameter set flags that are valid. + + + + The parameter set to use to disambiguate parameters that have the same position + + + + Returns the underlying parameter binding exception if any was generated. + + + + The remaining arguments that have not been bound. + + + + It is assumed that the unboundArguments parameter has already been processed + for this parameter binder. All named parameters have been paired with their + values. Any arguments that don't have a name are considered positional and + will be processed in this method. + + + + If multiple parameters were found for the same position in the specified + parameter set. + or + If argument transformation fails. + or + The argument could not be coerced to the appropriate type for the parameter. + or + The parameter argument transformation, prerequisite, or validation failed. + or + If the binding to the parameter fails. + + + + + This method only updates the collections contained in the dictionary, not the dictionary + itself to contain only the parameters that are in the specified parameter set. + + + + The sorted dictionary of positional parameters. + + + + Valid parameter sets + + + + + + Generate elaborated binding exception so that the user will know the default binding might cause the failure + + + + + + Gets the unbound positional parameters in a sorted dictionary in the order of their + positions. + + + + The sorted dictionary of MergedCompiledCommandParameter metadata with the position + as the key. + + + + + + Keeps track of the parameters that get bound through pipeline input, so that their + previous values can be restored before the next pipeline input comes. + + + + + + For any unbound parameters, this method checks to see if the + parameter has a default value specified, and evaluates the expression + (if the expression is not constant) and binds the result to the parameter. + If not, we bind null to the parameter (which may go through type coercion). + + + + + If the parameter binder might use the value more than once, this it can save the value to avoid + re-evalauting complicated expressions. + + + + + Bind the default value for an unbound parameter to script (used by both the script binder + and the cmdlet binder). + + + + + Provides information about a cmdlet parameter for a particular parameter set. + + + + + Constructs the parameter info using the specified aliases, attributes, and + parameter set metadata + + + + The parameter metadata to retrieve the parameter information from. + + + + The parameter set flag to get the parameter information from. + + + + If is null. + + + + + + Gets the name of the parameter. + + + + + Gets the type of the parameter. + + + + + Gets whether or not the parameter is a dynamic parameter. + + + + True if the parameter is dynamic, or false otherwise. + + + + + Gets whether or not the parameter is mandatory. + + + + True if the parameter is mandatory, or false otherwise. + + + + + Gets the position in which the parameter can be specified on the command line + if not named. If the returned value is int.MinValue then the parameter must be named. + + + + + Gets whether the parameter can take values from the incoming pipeline object. + + + + + Gets whether the parameter can take values from a property inn the incoming + pipeline object with the same name as the parameter. + + + + + Gets whether the parameter will take any argument that isn't bound to another parameter. + + + + + Gets the help message for this parameter. + + + + + Gets the aliases by which this parameter can be referenced. + + + + + Gets the attributes that are specified on the parameter. + + + + + The information about a parameter set and its parameters for a cmdlet + + + + + + Constructs the parameter set information using the specified parameter name, + and type metadata. + + + + The formal name of the parameter. + + + + True if the parameter set is the default parameter set, or false otherwise. + + + + The bit that specifies the parameter set in the type metadata. + + + + The type metadata about the cmdlet. + + + + If is null or empty. + + + + If is null. + + + + + + Gets the name of the parameter set + + + + + Gets whether the parameer set is the default parameter set. + + + + + Gets the parameter information for the parameters in this parameter set. + + + + + Gets the synopsis for the cmdlet as a string + + + + + + + + This boolean is used to suppress common workflow parameters (or) display + them separately towards the end + + + + + + GenerateParameters parameters in display order + ie., Postional followed by + Named Mandatory (in alpha numeric) followed by + Named (in alpha numeric). + + Callers use and + to handle + syntax generation etc. + + + This boolean is used to suppress common workflow parameters (or) display + them separately towards the end + + + + + + + + This class holds the data for missing mandatory parameters for each parameter set as we + are trying to process which parameter set to use based on the missing mandatory parameters + + + + + + True if this parameter set represents the default parameter set + + + + + + The parameter set this data represents + + + + + + True if the parameter set represents parameters in all the parameter sets + + + + + Gets the parameters that take pipeline input and are mandatory in this parameter set + + + + + Gets the parameters that take pipeline input by value, and are mandatory in this parameter set + + + + + Gets the parameters that take pipeline input by property name, and are mandatory in this parameter set + + + + + Gets the parameters that do not take pipeline input and are mandatory in this parameter set + + + + + Constructs an instance of the ParameterSetSpecificMetadata using the instance of the attribute + that is specified. + + + + The attribute to be compiled. + + + + If is null. + + + + + + Returns true if the parameter is mandatory for this parameterset, false otherwise. + + + + + + If the parameter is allowed to be positional for this parameter set, this returns + the position it is allowed to be in. If it is not positional, this returns int.MinValue. + + + + + + Returns true if the parameter is positional for this parameter set, or false otherwise. + + + + + + Returns true if this parameter takes all the remaining unbound arguments that were specified, + or false otherwise. + + + + + + Specifies that this parameter can take values from the incoming pipeline object. + + + + + Specifies that this parameter can take values from a property un the incoming + pipeline object with the same name as the parameter. + + + + + A short description for this parameter, suitable for presentation as a tool tip. + + + + + The base name of the resource for a help message. + + + + + The Id of the resource for a help message. + + + + + Gets or sets the value that tells whether this parameter set + data is for the "all" parameter set + + + + + + Gets the parameter set flag that represents the parameter set + that this data is valid for. + + + + + + If HelpMessageBaseName and HelpMessageResourceId are set, the help info is + loaded from the resouce indicated by HelpMessageBaseName and HelpMessageResourceId. + If that fails and HelpMessage is set, the help info is set to HelpMessage; otherwise, + the exception that is thrown when loading the resource is thrown. + If both HelpMessageBaseName and HelpMessageResourceId are not set, the help info is + set to HelpMessage + + + + Help info about the parameter + + + + If the value of the specified resource is not a string and + HelpMessage is not set. + + + + If only one of HelpMessageBaseName and HelpMessageResourceId is set + OR if no usable resources have been found, and + there are no neutral culture resources and HelpMessage is not set. + + + + + + Constructs a container for the merged parameter metadata and + parameter set specific metadata for a positional parameter + + + + + + The parameter binder for runtime-defined parameters which are declared through the RuntimeDefinedParameterDictionary. + + + + + + Constructs the parameter binder with the specified type metadata. The binder is only valid + for a single instance of a bindable runtime-defined parameter collection and only for the duration of a command. + + + + The target runtime-defined parameter collection that the parameter values will be bound to. + + + + An instance of the command so that attributes can access the context. + + + + The Command line parameter collection to update... + + + + + + Hides the base class Target property to ensure the target + is always a RuntimeDefinedParameterDictionary + + + + + + Gets the default value for the specified parameter + + + + The name of the parameter to get the value for. + + + + The value of the specified parameter + + + + + + Uses ETS to set the property specified by name to the value on + the target bindable object. + + + The name of the parameter to bind the value to. + + + The value to bind to the parameter. It should be assumed by + derived classes that the proper type coercion has already taken + place and that any prerequisite metadata has been satisfied. + + + + If is null or empty. + + + + + Represents a parameter declaration that can be constructed at runtime. + + + Instances of + should be returned to cmdlet implementations of + . + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + + + + Constructs a runtime-defined parameter instance. + + + + + Constructs a new instance of a runtime-defined parameter using the specified parameters. + + + + The name of the parameter. This cannot be null or empty. + + + + The type of the parameter value. Arguments will be coerced to this type before binding. + This parameter cannot be null. + + + + Any parameter attributes that should be on the parameter. This can be any of the + parameter attributes including but not limited to Validate*Attribute, ExpandWildcardAttribute, etc. + + + + If is null or empty. + + + + If is null. + + + + + Gets or sets the name of the parameter + + + + If is null or empty on set. + + + + + Gets or sets the type of the parameter. + + + + Arguments will be coerced to this type before being bound. + + + + If is null. + + + + + Gets or sets the value of the parameter. + + + + If the value is set prior to parameter binding, the value will be + reset before each pipeline object is processed. + + + + + Gets or sets whether this parameter value has been set. + + + + + Gets or sets the attribute collection that describes the parameter. + + + + This can be any attribute that can be applied to a normal parameter. + + + + + Represents a collection of runtime-defined parameters that are keyed based on the name + of the parameter. + + + Instances of + should be returned to cmdlet implementations of + . + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + + + + Constructs a new instance of a runtime-defined parameter dictionary. + + + + + Gets or sets the help file that documents these parameters + + + + + Gets or sets private data associated with the runtime-defined parameters. + + + + + The parameter binder for real CLR objects that have properties and fields decorated with the parameter attributes. + + + + + + Constructs the parameter binder with the specified type metadata. The binder is only valid + for a single instance of a bindable object and only for the duration of a command. + + + + The target object that the parameter values will be bound to. + + + + An instance of the command so that attributes can access the context. + + + + + + Constructs the parameter binder with the specified type metadata. The binder is only valid + for a single instance of a bindable object and only for the duration of a command. + + + + The target object that the parameter values will be bound to. + + + + An instance of the command so that attributes can access the context. + + + + The dictionary to use to record the parameters set by this object... + + + + + + Gets the default value for the specified parameter + + + + The name of the parameter to get the default value of. + + + + The default value of the specified parameter. + + + + If the ETS call to get the property value throws an exception. + + + + + + Uses ETS to set the property specified by name to the value on + the target bindable object. + + + The name of the parameter to bind the value to. + + + The value to bind to the parameter. It should be assumed by + derived classes that the proper type coercion has already taken + place and that any prerequisite metadata has been satisfied. + + + + If the setter raises an exception. + + + + + The command information for MSH scripts that are directly executable by MSH + + + + + Creates an instance of the ScriptInfo class with the specified name, and script. + + + + The name of the script. + + + + The script definition + + + + The execution context for the script. + + + + If is null. + + + + + + This is a copy constructor, used primarily for get-command. + + + + + Create a copy of commandInfo for GetCommandCommand so that we can generate parameter + sets based on an argument list (so we can get the dynamic parameters.) + + + + + Gets the ScriptBlock that represents the implementation of the script. + + + + + Gets the definition of the ScriptBlock for the script. This is the ToString() of + the ScriptBlock. + + + + + The output type(s) is specified in the script block + + + + + for diagnostic purposes + + + + + + True if the command has dynamic parameters, false otherwise. + + + + + The command metadata for the script. + + + + + The parameter binder for shell functions. + + + + + + Constructs a ScriptParameterBinder with the specified context + + + + The script block representing the code being run + + + + The invocation information about the code that is being run. + + + + The context under which the shell function is executing. + + + + The command instance that represents the script in a pipeline. May be null. + + + + If binding in a new local scope, the scope to set variables in. If dotting, the value is null. + + + + + Gets the default value for the specified parameter + + + + The name of the parameter to get the default value of. + + + + The default value of the specified parameter. + + + see SessionStateInternal.GetVariableValue + + + + Binds the parameters to local variables in the function scope + + + The name of the parameter to bind the value to. + + + The value to bind to the parameter. It should be assumed by + derived classes that the proper type coercion has already taken + place and that any prerequisite metadata has been satisfied. + + + + + + Return the default value of a script parameter, evaluating the parse tree if necessary. + + + + + The script that is being bound to + + + + + This is the interface between the ScriptCommandProcessor and the + parameter binders required to bind parameters to a shell function. + + + + + + Initializes the cmdlet parameter binder controller for + the specified cmdlet and engine context + + + + The script that contains the parameter metadata. + + + The invocation information about the code being run. + + + The engine context the cmdlet is run in. + + + The command that the parameters will be bound to. + + + The scope that the parameter binder will use to set parameters. + + + + + Holds the set of parameters that were not bound to any argument (i.e $args) + + + + + Binds the command line parameters for shell functions/filters/scripts/scriptblocks + + + + The arguments to be bound. + + + + True if binding was successful or false otherwise. + + + + + Passes the binding directly through to the parameter binder. + It does no verification against metadata. + + + + The name and value of the variable to bind. + + + + Ignored. + + + + True if the parameter was successfully bound. Any error condition + produces an exception. + + + + + + Binds the specified parameters to the shell function + + + + The arguments to bind. + + + + + + Takes the remaining arguments that haven't been bound, and binds + them to $args + + + + The remaining unbound arguments. + + + + An array containing the values that were bound to $args. + + + + + A class respresenting a name that is qualified by the PSSnapin name + + + + + Gets an instance of the Name class. + + + + The name of the command. + + + + An instance of the Name class. + + + + + + Gets the command's full name. + + + + + + Gets the command's PSSnapin name. + + + + + + Gets the command's short name. + + + + + + The full name + + + + A string representing the full name. + + + + + + This class represents the compiled metadata for a parameter set. + + + + + + + + + + + A copy constructor that creates a deep copy of the ParameterSetMetadata object. + + object to copy + + + + Returns true if the parameter is mandatory for this parameterset, false otherwise. + + + + + + If the parameter is allowed to be positional for this parameter set, this returns + the position it is allowed to be in. If it is not positional, this returns int.MinValue. + + + + + + Specifies that this parameter can take values from the incoming pipeline object. + + + + + Specifies that this parameter can take values from a property from the incoming + pipeline object with the same name as the parameter. + + + + + Specifies if this parameter takes all the remaining unbound + arguments that were specified + + + + + + A short description for this parameter, suitable for presentation as a tool tip. + + + + + The base name of the resource for a help message. + + + + + The Id of the resource for a help message. + + + + + + + + + + + Compares this instance with the supplied . + + + An object to compare this instance with + + + true if the metadata is same. false otherwise. + + + + + Constructor used by rehydration + + + + + + + + + + + This class represents the compiled metadata for a parameter. + + + + + Constructs a ParameterMetadata instance. + + + Name of the parameter. + + + name is null. + + + + + Constructs a ParameterMetadata instance. + + + Name of the parameter. + + + Type of the parameter. + + + name is null. + + + + + A copy constructor that creates a deep copy of the ParameterMetadata object. + Instances of Attribute and Type classes are copied by reference. + + object to copy + + + + An internal constructor which constructs a ParameterMetadata object + from compiled commmand parameter metadata. ParameterMetadata + is a proxy written on top of CompiledCommandParameter + + + Internal CompiledCommandParameter metadata + + + + + Constructor used by implicit remoting + + + + + Gets the name of the parameter + + + + + + Gets the Type information of the Parameter. + + + + + Gets the ParameterSets metadata that this parameter belongs to. + + + + + Specifies if the parameter is Dynamic + + + + + Specifies the alias names for this parameter + + + + + A collection of the attributes found on the member. + + + + + Specifies if the parameter is a SwitchParameter + + + + + Gets a dictionary of parameter metadata for the supplied . + + + CLR Type for which the parameter metadata is constructed. + + + A Dictionary of ParameterMetadata keyed by parameter name. + null if no parameter metadata is found. + + + type is null. + + + + + + + + + + + + + + + + + + + + + prefix that is added to every new-line. Used for tabbing content. + + + The paramNameOverride is used as the parameter name if it is not null or empty. + + + The parameter is for a cmdlet and requires a Parameter attribute. + + + + + + Generates proxy data for attributes like ValidateLength, ValidateRange etc. + + + Attribute to process. + + + Prefix string to add. + + + Attribute's proxy string. + + + + + The metadata associated with a bindable type + + + + + + Gets or constructs an instance of the InternalParameterMetadata for the specified runtime-defined parameters. + + + + The runtime-defined parameter collection that describes the parameters and their metadata. + + + + True if dynamic parameters are being processed, or false otherwise. + + + + Check for reserved parameter names. + + + + An instance of the TypeMetdata for the specified runtime-defined parameters. The metadata + is always constructed on demand and never cached. + + + + If is null. + + + + If a parameter defines the same parameter-set name multiple times. + If the attributes could not be read from a property or field. + + + + + + Gets or constructs an instance of the InternalParameterMetadata for the specified type. + + + + The type to get the metadata for. + + + + The current engine context. + + + + True if dynamic parameters are being processed, or false otherwise. + + + + An instance of the TypeMetdata for the specified type. The metadata may get + constructed on-demand or may be retrieved from the cache. + + + + If is null. + + + + If a parameter defines the same parameter-set name multiple times. + If the attributes could not be read from a property or field. + + + + + + Constructs an instance of the InternalParameterMetadata using the metadata in the + runtime-defined parameter collection. + + + + The collection of runtime-defined parameters that declare the parameters and their + metadata. + + + + True if dynamic parameters are being processed, or false otherwise. + + + + Check if the parameter name has been reserved. + + + + If is null. + + + + If a parameter defines the same parameter-set name multiple times. + If the attributes could not be read from a property or field. + + + + + + Constructs an instance of the InternalParameterMetadata using the reflection information retrieved + from the enclosing bindable object type. + + + + The type information for the bindable object + + + + True if dynamic parameters are being processed, or false otherwise. + + + + If is null. + + + + If a parameter defines the same parameter-set name multiple times. + If the attributes could not be read from a property or field. + + + + + + Gets the type name of the bindable type + + + + + + Gets a dictionary of the compiled parameter metadata for this Type. + The dictionary keys are the names of the parameters (or aliases) and + the values are the compiled parameter metdata. + + + + + + Gets a dictionary of the parameters that have been aliased to other names. The key is + the alias name and the value is the CompiledCommandParameter metadata. + + + + + + The type information for the class that implements the bindable object. + This member is null in all cases except when constructed with using reflection + against the Type. + + + + + The flags used when reflecting against the object to create the metadata + + + + + Fills in the data for an instance of this class using the specified runtime-defined parameters + + + + A description of the parameters and their metadata. + + + + True if dynamic parameters are being processed, or false otherwise. + + + + Check if the parameter name has been reserved. + + + + If a parameter defines the same parameter-set name multiple times. + If the attributes could not be read from a property or field. + + + + + + Compiles the parameter using reflection against the CLR type. + + + + True if dynamic parameters are being processed, or false otherwise. + + + + If a parameter defines the same parameter-set name multiple times. + If the attributes could not be read from a property or field. + + + + + + Determines if the specified member represents a parameter based on its attributes + + + + The member to check to see if it is a parameter. + + + + True if at least one ParameterAttribute is declared on the member, or false otherwise. + + + + If GetCustomAttributes fails on . + + + + + + The cache of the type metadata. The key for the cache is the Type.FullName. + Note, this is a case-sensitive dictionary because Type names are case sensitive. + + + + + Provides information about a workflow that is stored in session state. + + + + + Creates an instance of the workflowInfo class with the specified name and ScriptBlock + + + + The name of the workflow. + + + + The script body defining the workflow. + + + + The ScriptBlock for the workflow + + + + The XAML used to define the workflow + + + + The workflows referenced within . + + + + If is null. + + + + + Creates an instance of the workflowInfo class with the specified name and ScriptBlock + + + The name of the workflow. + + + The script body defining the workflow. + + + The ScriptBlock for the workflow + + + The XAML used to define the workflow + + + The workflows referenced within . + + module + + If is null. + + + + + Creates an instance of the workflowInfo class with the specified name and ScriptBlock + + + + The name of the workflow. + + + + The ScriptBlock for the workflow + + + + The ExecutionContext for the workflow. + + + + If is null. + + + + + + Creates an instance of the workflowInfo class with the specified name and ScriptBlock + + + + The name of the workflow. + + + + The ScriptBlock for the workflow + + + + The ExecutionContext for the workflow. + + + + The helpfile for the workflow. + + + + If is null. + + + + + + Creates an instance of the WorkflowInfo class with the specified name and ScriptBlock + + + + The name of the workflow. + + + + The ScriptBlock for the workflow + + + + The options to set on the function. Note, Constant can only be set at creation time. + + + + The execution context for the workflow. + + + + If is null. + + + + + + Creates an instance of the WorkflowInfo class with the specified name and ScriptBlock + + + + The name of the workflow. + + + + The ScriptBlock for the workflow + + + + The options to set on the function. Note, Constant can only be set at creation time. + + + + The execution context for the workflow. + + + + The helpfile for the workflow. + + + + If is null. + + + + + + This is a copy constructor. + + + + + This is a copy constructor. + + + + + Update a workflow + + + The script block that the function should represent. + + + + If true, the script block will be applied even if the filter is ReadOnly. + + + + Any options to set on the new function, null if none. + + + + Helpfile for this function + + + + + Create a copy of commandInfo for GetCommandCommand so that we can generate parameter + sets based on an argument list (so we can get the dynamic parameters.) + + + + + Returns the definition of the workflow. + + + + + Gets the XAML that represents the definition of the workflow. + + + + + Gets or sets the XAML that represents the definition of the workflow + when called from another workflow. + + + + + Gets the XAML for workflows called by this workflow. + + + + + This is the interface between the NativeCommandProcessor and the + parameter binders required to bind parameters to a minishell. + + + + + + Initializes the parameter binder controller for + the specified native command and engine context + + + + The command that the parameters will be bound to. + + + + + + Override of parent class which should not be used. + + + + The parameters to bind. + + + + For any parameters that do not have a name, they are added to the command + line arguments for the command + + + + + Value of input format. This property should be read after binding of parameters. + + + + + Value of output format. This property should be read after binding of parameters. + + + + + IF true, child minishell is invoked with no-window + + + + + Binds the specified parameters to the native command + + + + The parameters to bind. + + + + true if minishell output is redirected. + + + + name of the calling host. + + + + For any parameters that do not have a name, they are added to the command + line arguments for the command + + + + + + Handles error handling if some parameter is specified more than once. + + + + + This function processes the value for -inputFormat and -outputFormat parameter of minishell. + + Name of the parameter for error messages. Value should be -inputFormat or -outputFormat + value to process + Processed value + + + + Converts value of args parameter in to an encoded string + + + + + Converts the value of -args parameter received from + parser in to an arraylist + + + + + The parameter binder for native commands. + + + + + + Constructs a NativeCommandParameterBinder + + + + The NativeCommand to bind to. + + + + .Context is null + + + + + Binds a parameter for a native command (application). + + + The name of the parameter to bind the value to. For applications + this just becomes another parameter... + + + The value to bind to the parameter. It should be assumed by + derived classes that the proper type coercion has already taken + place and that any prerequisite metadata has been satisfied. + + + + + + Gets the command arguments in string form + + + + + + Stringize a non-IEnum argument to a native command, adding quotes + and trailing spaces as appropriate. An array gets added as multiple arguments + each of which will be stringized. + + Execution context instance + The object to append + A space or comma used when obj is enumerable + true if the argument occurs after --% + + + + The native command to bind to + + + + + This is the interface between the NativeCommandProcessor and the + parameter binders required to bind parameters to a native command. + + + + + + Initializes the cmdlet parameter binder controller for + the specified native command and engine context + + + + The command that the parameters will be bound to. + + + + + + Gets the command arguments in string form + + + + + + Passes the binding directly through to the parameter binder. + It does no verification against metadata. + + + + The name and value of the variable to bind. + + + + Ignored. + + + + True if the parameter was successfully bound. Any error condition + produces an exception. + + + + + + Binds the specified parameters to the native command + + + + The parameters to bind. + + + + For any parameters that do not have a name, they are added to the command + line arguments for the command + + + + + + Various types of input/output supported by native commands. + + + Most native commands only support text. Other formats + are supported by minishell + + + + + Different streams produced by minishell output + + + + + Helper class which holds stream names and also provide conversion + method + + + + + An output object from the child process. + If it's from the error stream isError will be true + + + + + Get the data from this object + + The data + + + + Stream to which data belongs + + + + + Build an output object + + The data to output + stream to which data belongs + + + + Provides way to create and execute native commands. + + + + + Information about application which is invoked by this instance of + NativeCommandProcessor + + + + + Initializes the new instance of NativeCommandProcessor class. + + + + The information about the application to run. + + + + The execution context for this command. + + + + or is null + + + + + Gets the NativeCommand associated with this command processor. + + + + + Gets or sets the name of the native command. + + + + + Gets or sets path to the native command. + + + + + Variable which is set to true when prepare is called. + Parameter Binder should only be created after Prepare method is called + + + + + Parameter binder used by this command processor + + + + + Gets a new instance of a ParameterBinderController using a NativeCommandParameterBinder + + + + The native command to be run. + + + + A new parameter binder controller for the specified command. + + + + + + Prepares the command for execution with the specified CommandParameterInternal. + + + + + Executes the command. This method assumes that Prepare is already called. + + + + + Process object for the invoked application + + + + + This is used for writing input to the process + + + + + This is used for reading input form the process + + + + + Is true if this command is to be run "standalone" - that is, with + no redirection. + + + + + object used for synchronization between StopProcessing thread and + Pipeline thread. + + + + + Executes the native command once all of the input has been gathered. + + + The pipeline is stopping + + + The native command could not be run + + + + + Utility routine to kill a process, discarding non-critial exceptions. + This utility makes two passes at killing a process. In the first pass, + if the process handle is invalid (as seems to be the case with an ntvdm) + then we try to get a fresh handle based on the original process id. + + The process to kill + + + + Used by remote server to kill a process tree given + a process id. Process class does not have ParentId + property, so this wrapper uses WMI to get ParentId + and wraps the original process. + + + + + Kills the process tree (process + associated child processes) + + + + + + + Return true if the passed in process is a console process. + + + + + + + Check if the passed in process is a windows application. + + + + + + + This is set to true when StopProcessing is called + + + + + Routine used to stop this processing on this node... + + + + + Aggressively clean everything up... + + + + + This method process the output + + + + + Gets the start info for process + + + + + + + + + + This method calculates if input and output of the process are redirected + + + + + + + + Returns true if native command being invoked is mini-shell. + + + + If any of the argument supplied to native command is script block, + we assume it is minishell. + + + + + Helper class to handle writing input to a process. + + + + + Creates an instance of ProcessInputWriter + + + + + Input is collected in this list + + + + + Add an object to write to process + + + + + + Count of object in inputlist + + + + + Stream to which input is written + + + + + Format of input. + + + + + Thread which writes the input + + + + + Start writing input to process + + + process to which input is written + + + + + + + Stop writing input to process + + + + + This method wait for writer thread to finish. + + + + + Thread procedure for writing data to the child process... + + + + + Formats the input objects using out-string. Output of out-string + is given as input to native command processor. + This method is to be called from the pipeline thread and not from the + thread which writes input in to process. + + + + + This helper class reads the output from error and output streams of + process. + + + + + Process whose output is to be read. + + + + + Path of the process application + + + + + Process whose output is read + + + + + Reader for output stream of process + + + + + Reader for error stream of process + + + + + Synchronized object queue in which object read form output and + error streams are deposited + + + + + Start reading the output/error. Note all the work is done asynchronously. + + + + + Stops reading from streams. This is called from NativeCommandProcessor's StopProcessing + method. Note return of this method doesn't mean reading has stopped and all threads are + done. + Use Done to ensure that all reading threads are finished. + + + + + This method returns when all output reader threads have returned + + + + + Return one object which was read from the process. + + + AutomationNull.Value if no more objects. + object of type ProcessOutputObject otherwise + + + + + object used for synchronizing ReaderDone call between two readers + + + + + Count of readers - this is set by Start. If both output and error + are redirected, it will be 2. If only one is redirected, it'll be 1. + + + + + This method is called by output or error reader when they are + done reading. When it is called two times, we close the writer. + + + + + + This class reads the string from output or error streams of process + and processes them appropriately. + + + This class is not thread safe. It is assumed that NativeCommnadProcessor + class will synchronize access to this class between different threads. + + + + + Stream from which data is read. + + + + + Flag which tells if streamReader is for stdout or stderr stream of process + + + + + Writer to which data read from stream are written + + + + + Path to the process. This is used for setting the name of the thread. + + + + + ProcessReader which owns this stream reader + + + + + Creates an instance of ProcessStreamReader + + + Stream from which data is read + + + Path to the process. This is used for setting the name of the thread. + + + if true stream is output stream of process + else stream is error stream. + + + Processed data is written to it + + + ProcessOutputReader which owns this stream reader + + + + + Thread on which reading happens + + + + + Launches a new thread to start reading. + + + + + This method returns when reader thread has returned. + + + + + Thread proc for reading + + + + + Adds one object to writer + + + + + Static class that allows you to show and hide the console window + associated with this process. + + + + + If set to true, then native commands will always be run redirected... + + + + + Code to control the display properties of the a window... + + The window to show... + The command to do + true it it was successful + + + + Code to allocate a console... + + true if a console was created... + + + + Called to save the foreground window before allocating a hidden console window + + A handle to the foreground window + + + + Called to restore the foreground window after allocating a hidden console window + + A handle to the window that should be activated and brought to the foreground. + true if the window was brought to the foreground + + + + If no console window is attached to this process, then allocate one, + hide it and return true. If there's already a console window attached, then + just return false. + + + + + + If there is a console attached, then make it visible + and allow interactive console applications to be run. + + + + + If there is a console attached, then hide it and always capture + output from the child process. + + + + + Exception used to wrap the error coming from + remote instance of Msh. + + + This remote instance of Msh can be in a separate process, + appdomain or machine. + + + + + Initializes a new instance of RemoteException + + + + + Initializes a new instance of RemoteException with a specified error message. + + + The message that describes the error. + + + + + Initializes a new instance of the RemoteException class + with a specified error message and a reference to the inner exception + that is the cause of this exception. + + + The message that describes the error. + + + The exception that is the cause of the current exception. + + + + + Initializes a new instance of the RemoteException + with a specified error message, serialzed Exception and + serialized InvocationInfo + + The message that describes the error. + + serialized exception from remote msh + + + serialized invocation info from remote msh + + + + + Initializes a new instance of the + class with serialized data. + + + The that holds the serialized object + data about the exception being thrown. + + + The that contains contextual information + about the source or destination. + + + + + Original Serialized Exception from remote msh + + This is the exception which was thrown in remote. + + + + + InvocationInfo, if any, associated with the SerializedRemoteException. + + + This is the serialized InvocationInfo from the remote msh. + + + + + Sets the remote error record associated with this exception + + + + + + ErrorRecord associated with the exception + + + + + Searcher class for finding DscResources on the system. + + + + + Reset the Iterator. + + + + + Reset and dispose the Iterator. + + + + + Get the Enumerator. + + + + + + Get the Enumerator + + + + + + Move to the Next value in the enumerator. + + + + + + Return the current DscResource + + + + + Return the current DscResource as object + + + + + Invoke command Get-DscResource with resource name to find the resource. + When found add them to the enumerator. If we have already got it, return the next resource. + + Next DscResource Info object or null if none are found. + + + + Searcher class for finding PS classes on the system. + + + + + Reset the Iterator. + + + + + Reset and dispose the Iterator. + + + + + Get the Enumerator. + + + + + + Get the Enumerator + + + + + + Move to the Next value in the enumerator. + + + + + + Return the current PSClassInfo + + + + + Return the current PSClassInfo as object + + + + + Get all modules and find the matching type + When found add them to the enumerator. If we have already got it, return the next resource. + + Next PSClassInfo object or null if none are found. + + + + Convert the cacheItem to a PSClassInfo object. + For this, we call Get-Module -List with module name. + + Wildcard pattern matcher for comparing class name. + Path to the module where the class is defined. + Converted PSClassInfo object. + + + + Contains a PS Class information + + + + + Initializes a new instance of the PSClassInfo class + + Name of the PS Class. + + + + Name of the class. + + + + + Collection of members of the class. + + + + + Updates members of the class. + + Updated members + + + + Module in which the class is implemented in. + + + + + Gets the help file path for the cmdlet. + + + + + Contains a class field information + + + + + Initializes a new instance of the PSClassMemberInfo class + + + + + Gets or sets name of the member + + + + + Gets or sets type of the member + + + + + Default value of the Field. + + + + + Class to manage the caching of analysis data. + + For performance, module command caching is flattened after discovery. Many modules have nested + modules that can only be resolved at runtime - for example, + script modules that declare: $env:PATH += "; $psScriptRoot". When + doing initial analysis, we include these in 'ExportedCommands'. + + Changes to these type of modules will not be re-analyzed, unless the user re-imports the module, + or runs Get-Module -List. + + + + + + Return the exported types for a specific module. + If the module is already cache, return from cache, else cache the module. + Also re-cache the module if the cached item is stale. + + Path to the module to get exported types from. + Current Context + + + + + Encapsulates the basic module operations for a PowerShell engine instance... + + + + + Tracer for module analysis + + + + + Create a new module object from a scriptblock specifying the path to set for the module + + The name of the module + The path where the module is rooted + + ScriptBlock that is executed to initialize the module... + + + The arguments to pass to the scriptblock used to initialize the module + + The session state instance to use for this module - may be null + The results produced from evaluating the scriptblock + The newly created module info object + + + + Create a new module object from a ScriptInfo object + + The path where the module is rooted + The script info to use to create the module + The position for the command that loaded this module + Optional arguments to pass to the script while executing + The session state instance to use for this module - may be null + The private data to use for this module - may be null + The constructed module object + + + + Create a new module object from code specifying the path to set for the module + + The name of the module + The path to use for the module root + + The code to use to create the module. This can be one of ScriptBlock, string + or ExternalScriptInfo + + + Arguments to pass to the module scriptblock during evaluation. + + + The results of the evaluation of the scriptblock. + + + The position of the caller of this function so you can tell where the call + to Import-Module (or whatever) occurred. This can be null. + + The session state instance to use for this module - may be null + The private data to use for this module - may be null + The created module + + + + Allocate a new dynamic module then return a new scriptblock + bound to the module instance. + + Context to use to create bounded script. + The scriptblock to bind + Whether it should be linked to the global session state or not + A new scriptblock + + + + Returns true if the extension is one of the module extensions... + + The extension to check + True if it was a module extension... + + + + Gets the module name from module path. + + The path to the module + The module name + + + + Gets the personal module path (i.e. C:\Users\lukasza\Documents\WindowsPowerShell\modules) + + personal module path + + + + Gets the default system-wide module path. + + The default system wide module path + + + + Get the DSC module path. + + + + + + Combine the PS system-wide module path and the DSC module path + to get the system module paths. + + + + + + Checks if a particular string (path) is a member of 'combined path' string (like %Path% or %PSModulePath%) + + 'Combined path' string to analyze; can not be null. + Path to search for; can not be another 'combined path' (semicolon-separated); can not be null. + Index of pathToLookFor in pathToScan; -1 if not found. + + + + Adds paths to a 'combined path' string (like %Path% or %PSModulePath%) if they are not already there. + + Path string (like %Path% or %PSModulePath%). + Collection of individual paths to add. + -1 to append to the end; 0 to insert in the beginning of the string; etc... + Result string. + + + + Checks the various PSModulePath environment string and returns PSModulePath string as appropriate. Note - because these + strings go through the provider, we need to escape any wildcards before passing them + along. + + + + + Checks if $env:PSModulePath is not set and sets it as appropriate. Note - because these + strings go through the provider, we need to escape any wildcards before passing them + along. + + + + + Checks if $env:PSModulePath is not set and sets it as appropriate. Note - because these + strings go through the provider, we need to escape any wildcards before passing them + along. + + + + + Get the current module path setting. + + + Include The system wide module path ($PSHOME\Modules) even if it's not in PSModulePath. + In V3-V5, we prepended this path during module auto-discovery which incorrectly preferred + $PSHOME\Modules over user installed modules that might have a command that overrides + a product-supplied command. + For 5.1, we append $PSHOME\Modules in this case to avoid the rare case where PSModulePath + does not contain the path, but a script depends on previous behavior. + Note that appending is still a potential breaking change, but necessary to update in-box + modules long term - e.g. when open sourcing a module and installing from the gallery. + + + The module path as an array of strings + + + + Removes all functions not belonging to the parent module. + + Parent module + + + + Mark stuff to be exported from the current environment using the various patterns + + The cmdlet calling this method + The session state instance to do the exports on + Patterns describing the functions to export + Patterns describing the cmdlets to export + Patterns describing the aliases to export + Patterns describing the variables to export + List of Cmdlets that will not be exported, + even if they match in cmdletPatterns. + + + + Checks pattern list for wildcard characters. + + Pattern list + True if pattern contains '*' + + + + Used by Modules/Snapins to provide a hook to the engine for startup initialization + w.r.t compiled assembly loading. + + + + + Gets called when assembly is loaded. + + + + + Used by modules to provide a hooko to the engine for cleanup on removal + w.r.t. compiled assembly being removed. + + + + + Gets called when the binary module is unloaded. + + + + + Class describing a PowerShell module... + + + + + This object describes a PowerShell module... + + The absolute path to the module + The execution context for this engine instance + The module's sessionstate object - this may be null if the module is a dll. + + + + This object describes a PowerShell module... + + The name to use for the module. If null, get it from the path name + The absolute path to the module + The execution context for this engine instance + The module's sessionstate object - this may be null if the module is a dll. + Language mode for script based modules + + + + This object describes a PowerShell module... + + The name to use for the module. If null, get it from the path name + The absolute path to the module + The execution context for this engine instance + The module's sessionstate object - this may be null if the module is a dll. + + + + Default constructor to create an empty module info. + + + + + Default constructor to create an empty module info. + + + + + Construct a PSModuleInfo instance initializing it from a scriptblock instead of a script file. + + The scriptblock to use to initialize the module. + + + + Specifies the language mode for script based modules + + + + + Set to true when script module automatically exports all functions by default + + + + + True if the module had errors during loading + + + + + ToString() implementation which returns the name of the module. + + The name of the module + + + + Get/set whether to log Pipeline Execution Detail events. + + + + + The name of this module. + + + + + Sets the name property of the PSModuleInfo object + + The name to set it to + + + + The path to the file that defined this module... + + + + + If the module is a binary module or a script module that defines + classes, this property if a reference to the assembly, otherwise + it is null. + + + + + If this is a script module, then this property will contain + the PowerShell source text that was used to define this module. + + + + + A description of this module... + + + + + The guid for this module if one was defined in the module manifest. + + + + + The HelpInfo for this module if one was defined in the module manifest. + + + + + Get the module base directory for this module. For modules loaded via a module + manifest, this will be the directory containting the manifest file rather than + the directory containing the actual module file. This is particularly useful + when loading a GAC'ed assembly. + + + + + This value is set from the PrivateData member in the module manifest. + It allows implementor specific data to be passed to the module + via the manifest file. + + + + + Tags of this module. + + + + + ProjectUri of this module. + + + + + IconUri of this module. + + + + + LicenseUri of this module. + + + + + ReleaseNotes of this module. + + + + + Repository SourceLocation of this module. + + + + + The version of this module + + + + + Sets the module version + + the version to set... + + + + True if the module was compiled (i.e. a .DLL) instead of + being in PowerShell script... + + + + + This this module as being a compiled module... + + + + + Module Author + + + + + Controls the module access mode... + + + + + CLR Version + + + + + Company Name + + + + + Copyright + + + + + .NET Framework Version + + + + + Lists the functions exported by this module... + + + + + Lists the types (PowerShell classes, enums, interfaces) exported by this module. + This returns ASTs for types, created in parse time. + + + + + Create ExportedTypeDefinitions from ast. + + + + + + Prefix + + + + + Add function to the fixed exports list + + the function to add + + + + Add workflow to the fixed exports list + + the function to add + + + + Lists the functions exported by this module... + + + + + Add CmdletInfo to the fixed exports list... + + the cmdlet to add... + + + + Gets the aggregated list of visible commands exported from the module. If there are two + commands of different types exported with the same name (e.g. alias 'foo' and cmdlet 'foo') the + combined dictionary will only contain the highest precidence cmdlet (e.g. the alias 'foo' since + aliases shadow cmdlets. + + + + + Add CmdletInfo to the fixed exports list... + + the cmdlet to add... + + + + Return the merged list of exported cmdlets. This is necessary + because you may have a binary module with nested modules where + some cmdlets come from the module and others come from the nested + module. We need to consolidate the list so it can properly be constrained. + + + + + Add AliasInfo to the fixed exports list... + + the cmdlet to add... + + + + Return the merged list of exported aliases. This is necessary + because you may have a binary module with nested modules where + some aliases come from the module and others come from the nested + module. We need to consolidate the list so it can properly be constrained. + + + + + FileList + + + + + CompatiblePSEditions + + + + + ModuleList + + + + + Returns the list of child modules of this module. This will only + be non-empty for module manifests. + + + + + Add a module to the list of child modules. + + The module to add + + + + PowerShell Host Name + + + + + PowerShell Host Version + + + + + PowerShell Version + + + + + Processor Architecture + + + + + Scripts to Process + + + + + Required Assemblies + + + + + Returns the list of required modules of this module. This will only + be non-empty for module manifests. + + + + + Add a module to the list of required modules. + + The module to add + + + + Returns the list of required modules specified in the module manifest of this module. This will only + be non-empty for module manifests. + + + + + Add a module to the list of required modules specification + + The module to add + + + + Root Module + + + + + This member is used to copy over the RootModule in case the module is a manifest module + This is so that only ModuleInfo for modules with type=Manifest have RootModule populated + + + + + Add a module to the list of modules, avoiding adding duplicates. + + + + + Lists the variables exported by this module. + + + + + Lists the aliases exported by this module. + + + + + Add alias to the detected alias list + + the alias to add + the command it resolves to + + + + Lists the workflows exported by this module. + + + + + + + + + + The session state instance associated with this module. + + + + + Returns a new scriptblock bound to this module instance. + + The original scriptblock + The new bound scriptblock + + + + Invoke a scriptblock in the context of this module... + + The scriptblock to invoke + Arguments to the scriptblock + The result of the invocation + + + + This routine allows you to get access variable objects in the callers module + or from the toplevel sessionstate if there is no calling module. + + + + + + + Copies the local variables in the caller's cope into the module... + + + + + Build a custom object out of this module... + + A custom object + + + + Optional script that is going to be called just before Remove-Module cmdlet removes the module + + + + + The list of Format files imported by this module. + + + + + The list of types files imported by this module. + + + + + Implements deep copy of a PSModuleInfo instance. + A new PSModuleInfo instance + + + + + Enables or disables the appdomain module path cache + + + + + Clear out the appdomain-level module path cache. + + + + + Look up a module in the appdomain wide module path cache. + + Module name to look up. + The path to the matched module + + + + Add an entry to the appdomain level module path cache. By default, if there already is an entry + it won't be replace. If force is specified, then it will be updated. \ + + + + + + + + If there is an entry for the named module in the appdomain level module path cache, remove it. + + The name of the module to remove from the cache + True if the module was remove. + + + + Indicates the type of a module. + + + + + Indicates that this is a script module (a powershell file with a .PSM1 extension) + + + + + Indicates that this is compiled .dll containing cmdlet definitions. + + + + + Indicates that this module entry was derived from a module manifest and + may have child modules. + + + + + Indicates that this is cmdlets-over-objects module (a powershell file with a .CDXML extension) + + + + + Indicates that this is workflow module (a powershell file with a .XAML extension) + + + + + Defines the possible access modes for a module... + + + + + The default access mode for the module + + + + + The module is readonly and can only be removed with -force + + + + + The module cannot be removed. + + + + + An EqualityComparer to compare 2 PSModuleInfo instances. 2 PSModuleInfos are + considered equal if their Name,Guid and Version are equal. + + + + + Class describing a PowerShell module... + + + + + This class aggregates the objects necessary for the Monad + engine to run. + + + + + Returns the handle to the execution context + for this instance of the automation engine. + + + + + Gets the CommandDiscovery instance for the current engine + + + + + + The principal constructor that most hosts will use when creating + an instance of the automation engine. It allows you to pass in an + instance of PSHost that provides the host-specific I/O routines, etc. + + + + + Method to take a string and expand any metachars in it. + + + + + Compile a piece of text into a parse tree for later execution. + + The text to parse + + The parse text as a parsetree node. + + + + Exposes the Engine APIs for a particular instance of the engine + + + + + Hide the default constructor since we always require an instance of ExecutionContext + + + + + The internal constructor for this object. It should be the only one that gets called. + + + + An instance of ExecutionContext that the APIs should work against. + + + + If is null. + + + + + + Gets engine APIs to access the host + + + + + Gets engine APIs to access the event manager + + + + + Gets the engine APIs to access providers + + + + + Gets the engine APIs to access session state + + + + + Gets the engine APIs to invoke a command + + + + + This class contains the execution context that gets passed + around to commands. This is all of the information that lets you get + at session state and the host interfaces. + + + + + The events received by this runspace + + + + + The debugger for the interpreter + + + + + Reset or clear the various context managers so the runspace can be reused without contamination. + + + + + The tracing mode for the interpreter. + + True if tracing is turned on, false if it's turned off. + + + + The step mode for the interpreter. + + True of stepping is turned on, false if it's turned off. + + + + Check to see a specific version of strict mode is enabled. The check is always scoped, + even though in version 1 the check was engine wide. + + The version for a strict check about to be performed. + + + + + Is true if the current statement in the interpreter should be traced... + + + + + If true, then a script command processor should rethrow the exit exception instead of + simply capturing it. This is used by the -file option on the console host. + + + + + If this flag is set to true, script trace output + will not be generated regardless of the state of the + trace flag. + + The current state of the IgnoreScriptDebug flag. + + + + Gets the automation engine instance. + + + + + Get the RunspaceConfiguration instance + + + + + True if the RunspaceConfiguration/InitialSessionState is for a single shell or false otherwise. + + + + + + Added for Win8: 336382 + Contains the name of the previous module that was processed. This + allows you to skip this module when doing a lookup. + + + + + Added for 4980967 + Contains the name of the latest module that was imported, + Allows "module\function" to call the function from latest imported module instead of randomly choosing the first module in the moduletable. + + + + + Contains the name of the module currently being processed. This + allows you to skip this module when doing a lookup. + + + + + The AppDomain currently being used for module analysis. It should only be created if needed, + but various callers need to take responsbility for unloading the domain via + the TakeResponsibilityForModuleAnalysisAppDomain. + + + + + Authorization manager for this runspace + + + + + Gets the appropriate provider names for the default + providers based on the type of the shell + (single shell or custom shell). + + + + + + The module information for this engine... + + + + + Get the shellID for this runspace... + + + + + Session State with which this instance of engine works + + + + + + The default or top-level session state instance for the + engine. + + + + + Get the SessionState facade for the internal session state APIs + + + + + + Get/set constraints for this execution environemnt + + + + + True if this runspace has ever used constrained language mode + + + + + Indicate if a parameter binding is happening that transitions the execution from ConstrainedLanguage + mode to a trusted FullLanguage command. + + + + + True if we've ever used ConstrainedLanguage. If this is the case, then the binding restrictions + need to also validate against the language mode. + + + + + Initialized when 'ConstrainedLanguage' is applied. + The objects contained in this table are considered to be untrusted. + + + + + Helper for checking if the given value is marked as untrusted. + + + + + Helper for marking a value as untrusted. + + + + + Helper for setting the untrusted value of an assignment to either a 'Global:' variable, or a 'Script:' variable in a module scope. + + + This method is for tracking assignment to global variables and module script scope varaibles in ConstrainedLanguage mode. Those variables + can go across boundaries between ConstrainedLanguage and FullLanguage, and make it easy for a trusted script to use data from an untrusted + environment. Therefore, in ConstrainedLanguage mode, we need to mark the value objects assigned to those variables as untrusted. + + + + + The result object is assumed generated by operating on the original object. + So if the original object is from an untrusted input source, we mark the result object as untrusted. + + + + + If true the PowerShell debugger will use FullLanguage mode, otherwise it will use the current language mode + + + + + Is true the PSScheduledJob and PSWorkflow modules are loaded for this runspace + + + + + Gets the location globber for the session state for + this instance of the runspace. + + + + + + The assemblies that have been loaded for this runspace + + + + + + The state for current engine that is running. + + + + + + + Get a variable out of session state. + + + + + Get a variable out of session state. This calls GetVariable(name) and returns the + value unless it is null in which case it returns the defaultValue provided by the caller + + + + + Set a variable in session state. + + + + + Same as GetEnumPreference, but for boolean values + + + + + + + + + Help system for this engine context. + + + + + + Routine to create a command(processor) instance using the factory. + + The name of the command to lookup + + The command processor object + + + + Hold the current command. + + Reference to command discovery + + + + Redirect to the CommandDiscovery in the engine. + + Reference to command discovery + + + + Interface that should be used for interaction with host + + + + + Interface to be used for interaction with internal + host. InternalHost wraps the host supplied + during construction. Use this wrapper to access + functionality specific to InternalHost. + + + + + Interface to the public API for the engine + + + + + Log context cache + + + + + The PipelineWriter provided by the connection object for success output + + + + + The PipelineWriter provided by the connection object for error output + + + + + The PipelineWriter provided by the connection object for progress output + + + + + Host uses this to saves context data when entering a nested prompt + + + + + + Reset all of the redirection book keeping variables. This routine should be called when starting to + execute a script. + + + + + Function and Script command processors will route their error output to + this pipe if set, unless explicitly routed elsewhere. We also keep track + of the first time this value is set so we can know if it's the default + error output or not. + + + + + Supports expression Warning output redirection. + + + + + Supports expression Verbose output redirection. + + + + + Supports expression Verbose output redirection. + + + + + Supports expression Information output redirection. + + + + + Appends the object to $global:error if it's an error record or exception. + + + ErrorRecord or Exception to be written to $global:error + + + (get-only) An error occurred accessing $ERROR. + + + + + Check if the stack would overflow soon, if so, throw ScriptCallDepthException. + + + If the stack would overflow soon. + + + + + The current connection object + + + + + The current connection object + + + + + Each pipeline has a stack of pipeline processor. This method + pushes pp in to stack for currently executing pipeline. + + + + + + Each pipeline has a stack of pipeline processor. This method pops the + top item from the stack + + + + + This flag is checked by parser to stop loops etc. + + + + + + True means one of these: + 1) there is a trap statement in a dynamically enclosing statement block that might catch an exception. + 2) execution happens inside a PS class and exceptions should be propagated all the way up, even if there is no enclosing try-catch-finally. + + + + + + Shortcut to get at $? + + The current value of $? + + + + Shortcut to get at $error + + The current value of $global:error + + + + Gets the type table instance for this engine. This is somewhat + complicated by the need to have a single type table in RunspaceConfig + shared across all bound runspaces, as well as individual tables for + instances created from InitialSessionState. + + + + + Here for PSObject, should probably not be used elsewhere, maybe not even in PSObject. + + + + + Gets the format info database for this engine. This is significantly + complicated by the need to have a single type table in RunspaceConfig + shared across all bound runspaces, as well as individual tables for + instances created from InitialSessionState. + + + + + Gets the TransactionManager instance that controlls transactions in the current + instance. + + + + + This function is called by RunspaceConfiguration.Assemblies.Update call back. + It's not used when constructing a runspace from an InitialSessionState object. + + + + + Report an initialization-time error. + + resource string + arguments + + + + Report an initialization-time error + + error to report + + + + Report an initialization-time error + + + + + + Report an initialization-time error + + + + + + Constructs an Execution context object for Automation Engine + + + + Engine that hosts this execution context + + + Interface that should be used for interaction with host + + + RunspaceConfiguration information + + + + + Constructs an Execution context object for Automation Engine + + + + Engine that hosts this execution context + + + Interface that should be used for interaction with host + + + InitialSessionState information + + + + + AssemblyResolve event handler that will look in the assembly cache to see + if the named assembly has been loaded. This is necessary so that assemblies loaded + with LoadFrom, which are in a different loaded context than Load, can still be used to + resolve types. + + The event sender + The event args + The resolve assembly or null if not found + + + + Enum that defines state of monad engine. + + + + + + Engine state is not defined or initialized. + + + + + Engine available + + + + + Engine service is degraded + + + + + Engine is out of service + + + + + Engine is stopped + + + + + Encapsulates $PSVersionTable. + + + + + A constant to track current PowerShell Version. + + + We can't depend on assembly version for PowerShell version. + + This is why we hard code the PowerShell version here. + + For each later relase of PowerShell, this constant needs to + be updated to reflect the right version. + + + + + A constant to track current PowerShell Edition + + + Desktop -- "full" PowerShell that runs on Server and Desktop SKUs. Contains all features. + Core -- Covers Nano Server and IoT SKUs since they are identical from a built-in feature and CLR perspective. + Linux -- All PS on Linux flavors. This may need to be subdivided based on compatibility between distros. + + + + + + + + For 2.0 PowerShell, we still use "1" as the registry version key. + For >=3.0 PowerShell, we still use "1" as the registry version key for + Snapin and Custom shell lookup/discovery. + + + + + + + + For 3.0 PowerShell, we use "3" as the registry version key only for Engine + related data like ApplicationBase. + For 3.0 PowerShell, we still use "1" as the registry version key for + Snapin and Custom shell lookup/discovery. + + + + + Represents the interface to the PowerShell eventing functionality. + This class allows you to subscribe to, and receive events. + + + + Sequential event ID + + + + Returns a sequential event ID + + + + + Represents the interface to the PowerShell event queue. + + + + + Gets the list of event subscribers. + + + + + Creates a PowerShell event. + + + An optional identifier that identifies the source event + + + The object that generated this event + + + Any event-specific data associated with the event. + + + Any additional data you wish to attach to the event + + + + + + Generate a PowerShell event. + + + An optional identifier that identifies the source event + + + The object that generated this event + + + Any event-specific data associated with the event. + + + Any additional data you wish to attach to the event + + + + + + Generate a PowerShell event. + + + An optional identifier that identifies the source event + + + The object that generated this event + + + Any event-specific data associated with the event. + + + Any additional data you wish to attach to the event + + + True if the event should be triggered in current thread. False for the event + to be triggered in a separate thread. + + + Wait for the event and associated action to be processed and completed. + + + + + + Adds a forwarded event to the current event manager + + + + + Processes new events (which have either been generated by this instance or forwarded to it) + + + + + Processes new events (which have either been generated by this instance or forwarded to it) + + + + + Get the event subscription that corresponds to an identifier + + + The identifier that identifies the source of the events + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + Indicate how many times the subscriber should be triggered before auto-unregister it + If the value is equal or less than zero, there is no limit on the number of times the event can be triggered without being unregistered + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + Indicate how many times the subscriber should be triggered before auto-unregister it + If the value is equal or less than zero, there is no limit on the number of times the event can be triggered without being unregistered + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + True, if the handlerDelegate should be processed in the pipeline execution thread (if possible). + + + Indicate how many times the subscriber should be triggered before auto-unregister it + If the value is equal or less than zero, there is no limit on the number of times the event can be triggered without being unregistered + The default value is zero + + + + + + Unsubscribes from an event on an object. + + + The subscriber associated with the event subscription + + + + + + This event is raised by the event manager to forward events + + + + + Implementation of the PSEventManager for local runspaces. + + + + + Creates a new instance of the PSEventManager class. + + + + + Gets the list of event subscribers. + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + Indicate how many times the subscriber should be triggered before auto-unregister it + If the value is equal or less than zero, there is no limit on the number of times the event can be triggered without being unregistered + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + True, if the handlerDelegate should be processed in the pipeline execution thread (if possible). + + + Indicate how many times the subscriber should be triggered before auto-unregister it + If the value is equal or less than zero, there is no limit on the number of times the event can be triggered without being unregistered + The default value is zero + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + Indicate how many times the subscriber should be triggered before auto-unregister it + If the value is equal or less than zero, there is no limit on the number of times the event can be triggered without being unregistered + + + + + + + We sample every 100ms to check if the engine is idle (currentlyRunningPipeline == null). If it's "idle" + in four consecutive samples, then we believe it's actually idle. In this way we can avoid capturing possible + pipeline transitions. + + + + + + Send on-idle event if the engine is idle. The property "AutoReset" of the timer is always false, + so only one handler will be running at anytime. The timer will be enabled again if we can meet + the following two conditions. + 1. No PowerShell.OnIdle event is sent out + 2. A PowerShell.OnIdle event is sent out, and there are still subscribers to the on-idle event + + + + + Unsubscribes from an event on an object. + + + The subscriber associated with the event subscription + + + + + + Unsubscribes from an event on an object. + + + The subscriber associated with the event subscription + + + Indicate if we should skip draining + + + + + + Creates a PowerShell event. + + + An optional identifier that identifies the source event + + + The object that generated this event + + + Any event-specific data associated with the event. + + + Any additional data you wish to attach to the event + + + + + + Adds a forwarded event to the current event manager + + + + + Processes new events (which have either been generated by this instance or forwarded to it) + + + + + Processes new events (which have either been generated by this instance or forwarded to it) + + + + + Called from ProcessNewEvent to actually process the event. + + + + + Process any pending actions. The parser calls this method before it executes any + parse tree node. If we are processing pending actions, we must block the parser. + To prevent starvation of the foreground script, we throttle the number of events + that we process while the parser is waiting. If the parser is not waiting, we + do not throttle the event processing. + + + + + + Auto unregister the subscriber if both 'RemainingTriggerCount' and 'RemainingActionsToProcess' become zero + + + + + Drain any pending actions for a given subscriber. + This is a synchronous (and expensive) operation, but is + required so that unregistering for an event / stopping the + event job truly discontinues those event arrivals. + + + + + Get the event subscription that corresponds to an identifier + + + The identifier that identifies the source of the events + + + + + + If we add event filter feature in the future, the filtering work should be done in this method, + so that we only return a list of subscribers that will be invoked. + + + + + This event is raised by the event manager to forward events + + + + + Raises the ForwardEvent event + + + + + Destructor for the EventManager class + + + + + + Disposes the EventManager class. + + + + + + Stop the timer if it's not null. + Unsubscribes from all events. + + + Whether to actually dispose the object. + + + + + + + Implementation of PSEventManager for remote runspaces + + + + Computer on which the event was generated + + + Runspace on which the event was generated + + + + Creates an event manager for the given runspace + + Computer on which the event was generated + Runspace on which the event was generated + + + + Gets the list of event subscribers. + + + + + Creates a PowerShell event. + + + An optional identifier that identifies the source event + + + The object that generated this event + + + Any event-specific data associated with the event. + + + Any additional data you wish to attach to the event + + + + + + Adds a forwarded event to the current event manager + + + + + Processes new events (which have either been generated by this instance or forwarded to it) + + + + + Processes new events (which have either been generated by this instance or forwarded to it) + + + + + Get the event subscription that corresponds to an identifier + + + The identifier that identifies the source of the events + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + Indicate how many times the subscriber should be triggered before auto-unregister it + If the value is equal or less than zero, there is no limit on the number of times the event can be triggered without being unregistered + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + + + + Subscribes to an event on an object. + + + The source object that defines the event + + + The event to subscribe + + + An optional subscription identifier to help identify this event subscription + + + Any additional data you wish to attach to the event + + + Any action to be invoked when the event arrives + + + Any action to be invoked when the event arrives + + + Whether events in this subscriber should be forwarded to the client PowerShell during remote executions + + + Indicate how many times the subscriber should be triggered before auto-unregister it + If the value is equal or less than zero, there is no limit on the number of times the event can be triggered without being unregistered + + + + + + Unsubscribes from an event on an object. + + + The subscriber associated with the event subscription + + + + + + This event is raised by the event manager to forward events + + + + + Raises the ForwardEvent event + + + + + Constants that represent PowerShell engine events + + + + + Called when the PowerShell engine is exiting + + + + + Call when the PowerShell engine is idle + + + + + Called when a workflow job is started from a PowerShell script. + + + + + Called during scriptblock invocation + + + + + Called during scriptblock invocation + + + + + A HashSet that contains all engine event names + + + + + Represents a subscriber to an event + + + + + Creates an instance of the PSEventSubscriber class for a given source object, event name, + and optional source identifier + + + + + Creates an instance of the PSEventSubscriber + class. Additionally supports an Action scriptblock. + + + + + Creates an instance of the PSEventSubscriber + class. Additionally supports an Action scriptblock. + + + + + Create a bound script block + + + + + Get the identifier of this event subscription + + + + + The object to which this event subscription applies + + + + + The event object to which this event subscription applies + + + + + The identifier that identifies the source of these events + + + + + The action invoked when this event arrives + + + + + The delegate invoked when this event arrives + + + + + Get the flag that marks this event as a supporting event + + + + + Gets whether to forward the event to the PowerShell client during a remote execution + + + + + Gets whether the event should be processed in the pipeline execution thread. + + + + + Gets whether the event should be unregistered + + + + + Indicate how many new should be added to the action queue. + e.g. NumberOfTimesToBeInvoked = 3 means that this subscriber only responses to + the first triggered event. So three new actions will be added to the action + queue, and the following events will be ignored. + + + + + Indicate how many actions from this subscriber should be processed. + The method "ProcessPendingAction" will unsubscribe this subscriber + if it's marked as auto-unregister and this property becomes 0. + + + + + Indicate if the subscriber is being subscribed by a thread + + + + + The event generated when this event subscriber is unregistered + + + + + Determines if two PSEventSubscriber instances are equal + + The PSEventSubscriber to which to compare this instance + + + + + + Gets the hashcode that represents this PSEventSubscriber instance + + + + + The generic event handler from which specific event handlers extend. When possible, + add functionality to this class instead of the IL generated by the GenerateEventHandler() + method. + + + + + Creates a new instance of the PsEventHandler class + + + + + Creates a new instance of the PsEventHandler class for a given + event manager, source identifier, and extra data + + + The event manager to which we forward events. + + + The object that generated this event. + + + An optional subscription identifier that identifies the + source of the event + + + Any additional data you wish to attach to the event + + + + + + The event manager to which we forward events + + + + + The sender of the event + + + + + An optional identifier that identifies the source of the event + + + + + Any additional data you wish to attach to the event + + + + + Event argument associated with the event fired in a remote runspace and forwarded to the current runspace. + + + + + Serialized event arguments from the event fired in a remote runspace + + + + + PowerShell event arguments + This class provides a generic wrapper for event arguments. + + event argument type + + + + Event arguments + + + + + Class constructor + + event arguments + + + + The event arguments associated with an event + + + + + Create a new instance of the PSEventArgs type + + + + Computer on which this event was generated + + + Runspace on which this event was generated + + + The unique identifier of the event + + + The source of the event + + + The object that generated this event + + + The arguments associated with the handler of the original event. + + + Additional data attached by the user to this event. + + + + + Gets the name of the computer on which this event was generated; the value of this property is null for events generated on the local machine. + + + + + Gets the unique identifier of this event + + + + + Gets the unique identifier of this event + + + + + Gets the object that generated this event + + + + + Gets the first argument from the original event source that + derives from EventArgs + + + + + Gets the list of arguments captured by the original event source + + + + + Gets the identifier associated with the source of this event + + + + + Gets the time and date that this event was generated + + + + + Gets the additional user data associated with this event + + + + + Gets whether to forward the event to the PowerShell client during a remote execution + + + + + When processing synchronous events, this mutex is set so we know when we can safely return. + + + + + The delegate that handles notifications of new events + added to the collection + + + + + The event arguments associated with unsubscribing from an event + + + + + Create a new instance of the PSEventUnsubscribedEventArgs type + + + + The event subscriber being unregistered + + + + + The event subscriber being unregistered + + + + + The delegate that handles notifications of the event being unsubscribed + + + + + This class contains the collection of events received by the + execution context. + + + + + The event generated when a new event is received + + + + + Add add an event to the collection + + + + The PSEventArgs instance that represents this event + + Don't add events to the collection directly; use the EventManager instead + + + + Removes an item at a specific index from the collection + + + + + Removes an item at a specific index from the collection + + + + + Gets an item at a specific index from the collection + + + + + Get the enumerator of this collection + + + + + Get the enumerator of this collection + + + + + Get the synchronization root for this collection + + + + + The combination of an event subscriber, and the event that was fired. + This is to support the arguments to script blocks that we invoke automatically + as a response to some events + + + + + Get the sender of this event (the event subscriber) + + + + + Get the arguments of this event (the event that was fired) + + + + + A class to give a job-like interface to event actions + + + + + Creates a new instance of the PSEventJob class. + + + The event manager that controls the event subscriptions + + + The subscriber that generates these actions + + + The script block invoked for this event + + + The name of the job + + + + + + Gets dynamic module where the action is invoked + + + + + Stop Job + + + + + Message indicating status of the job + + + + + indicates if more data is available + + + This has more data if any of the child jobs have more data. + + + + + Location in which this job is running + + + + + The scriptblock that defines the action + + + + + Invoke the script block + + + The subscriber that generated this event + + + The context of this event + + + + + + Holds the information for a given breakpoint + + + + + The action to take when the breakpoint is hit + + + + + Gets whether this breakpoint is enabled + + + + + Records how many times this breakpoint has been triggered + + + + + This breakpoint's Id + + + + + True if breakpoint is set on a script, false if the breakpoint is not scoped + + + + + The script this breakpoint is on, or null if the breakpoint is not scoped + + + + + A breakpoint on a command + + + + + Which command this breakpoint is on + + + + + Gets a string representation of this breakpoint. + + A string representation of this breakpoint + + + + The access type for variable breakpoints to break on + + + + + Break on read access only + + + + + Break on write access only (default) + + + + + Breakon read or write access + + + + + A breakpoint on a variable + + + + + The access mode to trigger this variable breakpoint on + + + + + Which variable this breakpoint is on + + + + + Gets the string representation of this breakpoint + + The string representation of this breakpoint + + + + A breakpoint on a line or statement + + + + + Which column this breakpoint is on + + + + + Which line this breakpoint is on. + + + + + Gets a string representation of this breakpoint. + + A string representation of this breakpoint + + + + Possible actions for the debugger after hitting a breakpoint/step + + + + + Continue running until the next breakpoint, or the end of the script + + + + + Step to next statement, going into functions, scripts, etc + + + + + Step to next statement, going over functions, scripts, etc + + + + + Step to next statement after the current function, script, etc + + + + + Stop executing the script + + + + + Arguments for the DebuggerStop event. + + + + + Initializes the DebuggerStopEventArgs + + + + + Constructor. + + + + + + + + Invocation info of the code being executed + + + + + The breakpoint(s) hit + + + Note there may be more than one breakpoint on the same object (line, variable, command). A single event is + raised for all these breakpoints. + + + + + This property must be set in the event handler to indicate the debugger what it should do next + + + The default action is DebuggerAction.Continue. + DebuggerAction.StepToLine is only valid when debugging an script. + + + + + Kinds of breakpoint updates + + + + + A breakpoint was set + + + + + A breakpoint was removed + + + + + A breakpoint was enabled + + + + + A breakpoint was disabled + + + + + Arguments for the BreakpointUpdated event. + + + + + Initializes the BreakpointUpdatedEventArgs + + + + + Gets the breakpoint that was updated + + + + + Gets the type of update + + + + + Gets the current breakpoint count + + + + + Arguments for the script job start callback event. + + + + + Job to be started + + + + + Job debugger + + + + + Job is run asynchronously + + + + + Constructor + + Started job + Debugger + Job started asynchronously + + + + Contains debugger script and script file information. + + + + + Full script. + + + + + Script file for script or null. + + + + + Xaml definition for Workflow script or null. + + + + + Constructor. + + Script text + Script file + Xaml definition + + + + Defines debugging mode. + + + + + PowerShell script debugging is disabled. + + + + + Default setting for original PowerShell script debugging. + Compatible with PowerShell Versions 2 and 3. + + + + + PowerShell script debugging including workflow script. + + + + + PowerShell remote script and workflow debugging. + + + + + Defines unhandled breakpoint processing behavior + + + + + Ignore unhandled breakpoint events. + + + + + Wait on unhandled breakpoint events until a handler is avaialable. + + + + + Base class for all PowerShell debuggers. + + + + + Event raised when the debugger hits a breakpoint or a step + + + + + Event raised when a breakpoint is updated + + + + + Event raised when nested debugging is cancelled. + + + + + True when the debugger is stopped. + + + + + IsPushed + + + + + IsRemote + + + + + Returns true if the debugger is preserving a DebuggerStopEvent + event. Use ReleaseSavedDebugStop() to allow event to process. + + + + + Returns true if debugger has been set to stepInto mode. + + + + + Returns true if there is a handler for debugger stops. + + + + + UnhandledBreakpointMode + + + + + DebuggerMode + + + + + Returns true if debugger has breakpoints set and + is currently active. + + + + + InstanceId + + + + + True when debugger is stopped at a breakpoint. + + + + + RaiseDebuggerStopEvent + + DebuggerStopEventArgs + + + + IsDebuggerStopEventSubscribed + + True if event subscription exists + + + + RaiseBreakpointUpdatedEvent + + BreakpointUpdatedEventArgs + + + + IsDebuggerBreakpointUpdatedEventSubscribed + + True if event subscription exists + + + + Evaluates provided command either as a debugger specific command + or a PowerShell command. + + PowerShell command + Output + DebuggerCommandResults + + + + Sets the debugger resume action. + + DebuggerResumeAction + + + + Stops a running command. + + + + + Returns current debugger stop event arguments if debugger is in + debug stop state. Otherwise returns null. + + DebuggerStopEventArgs + + + + Sets the parent debugger and breakpoints. + + Parent debugger + List of breakpoints + Debugger mode + host + Current path + + + + Sets the parent debugger, breakpoints, function source and other + debugging context information. + + Parent debugger + List of breakpoints + Debugger mode + PowerShell host + Current path + Function to source map + + + + Sets the debugger mode. + + + + + Returns IEnumerable of CallStackFrame objects. + + + + + + Adds the provided set of breakpoints to the debugger. + + Breakpoints. + + + + Resets the command processor source information so that it is + updated with latest information on the next debug stop. + + + + + Sets debugger stepping mode. + + True if stepping is to be enabled + + + + Passes the debugger command to the internal script debugger command processor. This + is used internally to handle debugger commands such as list, help, etc. + + Command string + Output collection + DebuggerCommand containing information on whether and how the command was procssed. + + + + Creates a source list based on root script debugger source information if available, with + the current source line highlighted. This is used internally for nested runspace debugging + where the runspace command is run in context of a parent script. + + Current source line + Output collection + True if source listed successfully + + + + Sets up debugger to debug provided job or its child jobs. + + + Job object that is either a debuggable job or a container + of debuggable child jobs. + + + + + Removes job from debugger job list and pops the its + debugger from the active debugger stack. + + Job + + + + GetActiveDebuggerCallStack. + + Array of stack frame objects of active debugger + + + + Method to add the provided runspace information to the debugger + for monitoring of debugger events. This is used to implement nested + debugging of runspaces. + + PSEntityCreatedRunspaceEventArgs + + + + Method to end the monitoring of a runspace for debugging events. + + PSEntityCreatedRunspaceEventArgs + + + + If a debug stop event is currently pending then this method will release + the event to continue processing. + + + + + Sets up debugger to debug provided Runspace in a nested debug session. + + Runspace to debug + + + + Removes the provided Runspace from the nested "active" debugger state. + + Runspace + + + + Raises the NestedDebuggingCancelledEvent event. + + + + + Holds the debugging information for a Monad Shell session + + + + + Static constructor + + + + + True when debugger is stopped at a breakpoint. + + + + + Returns true if the debugger is preserving a DebuggerStopEvent + event. Use ReleaseSavedDebugStop() to allow event to process. + + + + + Returns true if debugger has been set to stepInto mode. + + + + + Resets debugger to initial state. + + + + + Raises the BreakpointUpdated event + + + + + + Checks for command breakpoints + + + + + Get a breakpoint by id, primarily for Enable/Disable/Remove-PSBreakpoint cmdlets. + + + + + Returns breakpoints primarily for the Get-PSBreakpoint cmdlet. + + + + + Implmentation of Enable-PSBreakpoint cmdlet. + + + + + Implementation of Disable-PSBreakpoint cmdlet. + + + + + The frame is hidden due to the attribute. + No breakpoints will be set and no stepping in/through. + + + + + Raises the DebuggerStop event + + + + + Resumes execution after a breakpoint/step event has been handled + + + + + Blocking call that blocks until a release occurs via ReleaseSavedDebugStop(). + + True if there is a DebuggerStop event subscriber. + + + + Sets the internal Execution context debug mode given the + current DebugMode setting. + + Internal debug mode + + + + Restores debugger back to non-step mode. + + + + + Set ScriptDebugger action. + + DebuggerResumeAction + + + + GetDebuggerStopped + + DebuggerStopEventArgs + + + + ProcessCommand + + PowerShell command + Output + DebuggerCommandResults + + + + StopProcessCommand + + + + + Set debug mode + + + + + + Returns current call stack. + + IEnumerable of CallStackFrame objects + + + + SetBreakpoints + + + + + + True when debugger is active with breakpoints. + + + + + Resets the command processor source information so that it is + updated with latest information on the next debug stop. + + + + + Sets debugger stepping mode. + + True if stepping is to be enabled + + + + Passes the debugger command to the internal script debugger command processor. This + is used internally to handle debugger commands such as list, help, etc. + + Command string + output + DebuggerCommand containing information on whether and how the command was procssed. + + + + Creates a source list based on root script debugger source information if available, with + the current source line highlighted. This is used internally for nested runspace debugging + where the runspace command is run in context of a parent script. + + Current source line + Output collection + True if source listed successfully + + + + IsRemote + + + + + Array of stack frame objects of active debugger if any, + otherwise null. + + CallStackFrame[] + + + + Sets how the debugger deals with breakpoint events that are not handled. + Ignore - This is the default behavior and ignores any breakpoint event + if there is no handler. Releases any preserved event. + Wait - This mode preserves a breakpoint event until a handler is + subscribed. + + + + + Sets up debugger to debug provided job or its child jobs. + + + Job object that is either a debuggable job or a container + of debuggable child jobs. + + + + + Removes job from debugger job list and pops its + debugger from the active debugger stack. + + Job + + + + Helper method to set a IJobDebugger job CanDebug property. + + IJobDebugger + Boolean + + + + Sets up debugger to debug provided Runspace in a nested debug session. + + Runspace to debug + + + + Removes the provided Runspace from the nested "active" debugger state. + + Runspace + + + + If a debug stop event is currently pending then this method will release + the event to continue processing. + + + + + Dispose + + + + + Base class for nested runspace debugger wrapper. + + + + + Type of runspace being monitored for debugging. + + + + + Unique parent debugger identifier for monitored runspace. + + + + + Creates an instance of NestedRunspaceDebugger. + + Runspace + Runspace type + Debugger Id of parent + + + + Process debugger or PowerShell command/script. + + PowreShell command + Output collection + DebuggerCommandResults + + + + SetDebuggerAction + + Debugger resume action + + + + Stops running command. + + + + + Returns current debugger stop event arguments if debugger is in + debug stop state. Otherwise returns null. + + DebuggerStopEventArgs + + + + Sets the debugger mode. + + Debug mode + + + + Sets debugger stepping mode. + + True if stepping is to be enabled + + + + Returns true if debugger is active. + + + + + Dispose + + + + + Attempts to fix up the debugger stop invocation information so that + the correct stack and source can be displayed in the debugger, for + cases where the debugged runspace is called inside a parent sccript, + such as with Workflow InlineScripts and script Invoke-Command cases. + + + InvocationInfo + + + + Checks to see if the runspace debugger is in a preserved debug + stop state, and if so then allows the debugger stop event to + continue processing and raise the event. + + + + + Wrapper class for runspace debugger where it is running in no known + embedding scenario and is assumed to be running independently of + any other running script. + + + + + Constructor + + Runspace + + + + Wrapper class for runspace debugger where the runspace is being used in an + embedded scenario such as Workflow InlineScript or Invoke-Command command + inside script. + + + + + Constructor for runspaces executing from script. + + Runspace to debug + PowerShell command + Root debugger + Runspace to monitor type + Parent debugger Id + + + + Attempts to fix up the debugger stop invocation information so that + the correct stack and source can be displayed in the debugger, for + cases where the debugged runspace is called inside a parent sccript, + such as with Workflow InlineScripts and script Invoke-Command cases. + + Invocation information from debugger stop + InvocationInfo + + + + Dispose + + + + + Command results returned from Debugger.ProcessCommand. + + + + + Resume action + + + + + True if debugger evaluated command. Otherwise evaluation was + performed by PowerShell. + + + + + Constructor + + Resume action + True if evaluated by debugger + + + + This class is used to pre-process the command read by the host when it is in debug mode; its + main intention is to implement the debugger commands ("s", "c", "o", etc) + + + + + Creates the table of debugger commands + + + + + Resets any state in the command processor + + + + + Process the command read by the host and returns the DebuggerResumeAction or the command + that the host should execute (see comments in the DebuggerCommand class above). + + + + + ProcessCommand + + + + + + + + + + Process list command with provided line number. + + Current InvocationInfo + Output + + + + Looks up string command and if it is a debugger command returns the + corresponding DebuggerCommand object. + + String command + DebuggerCommand or null. + + + + Helper for ProcessCommand + + + + + Displays the help text for the debugger commands + + + + + Executes the list command + + + + + Executes the list command + + + + + Class used to hold the output of the DebuggerCommandProcessor + + + + + If ResumeAction is not null it indicates that the host must exit the debugger + and resume execution of the suspended pipeline; the debugger will use the + value of this property to decide how to resume the pipeline (i.e. step into, + step-over, continue, etc) + + + + + When ResumeAction is null, this property indicates the command that the + host should pass to the PowerShell engine + + + + + If true, the host should repeat this command if the next command in an empty line (enter) + + + + + If true, the command was executed by the debugger and the host should ignore the command + + + + + This class exposes the information about the debugger that is available via $PSDebugContext + + + + + Constructor. + + InvocationInfo + Breakpoints + + + + InvocationInfo of the command currently being executed + + + + + If not empty, indicates that the execution was suspended because one or more breakpoints + were hit. Otherwise, the execution was suspended as part of a step operation. + + + + + A call stack item returned by the Get-PSCallStack cmdlet. + + + + + Constructor + + Invocation Info + + + + Constructor + + Function context + Invocation Info + + + + File name of the current location, or null if the frame is not associated to a script + + + + + Line number of the current location, or 0 if the frame is not associated to a script + + + + + The InvocationInfo of the command + + + + + The position information for the current position in the frame. Null if the frame is not + associated with a script. + + + + + The name of the function associated with this frame. + + + + + Returns a formatted string containing the ScriptName and ScriptLineNumber + + + + + Return a dictionary with the names and values of variables that are "local" + to the frame. + + + + + + ToString override. + + + + + Base class for all Adapters + This is the place to look every time you create a new Adapter. Consider if you + should implement each of the virtual methods here. + The base class deals with errors and performs additional operations before and after + calling the drived virtual methods. + + + + + tracer for this and derivate classes + + + + + Returns the TypeNameHierarchy out of an object + + object to get the TypeNameHierarchy from + + + + Returns the cached typename, if it can be cached, otherwise constructs a new typename. + By default, we don't return interned values, adapters can override if they choose. + + object to get the TypeNameHierarchy from + + + + Returns null if memberName is not a member in the adapter or + the corresponding PSMemberInfo + + object to retrieve the PSMemberInfo from + name of the member to be retrieved + The PSMemberInfo corresponding to memberName from obj + + + + Retrieves all the members available in the object. + The adapter implementation is encouraged to cache all properties/methods available + in the first call to GetMember and GetMembers so that subsequent + calls can use the cache. + In the case of the .NET adapter that would be a cache from the .NET type to + the public properties and fields available in that type. + In the case of the DirectoryEntry adapter, this could be a cache of the objectClass + to the properties available in it. + + object to get all the member information from + all members in obj + + + + Returns the value from a property coming from a previous call to GetMember + + PSProperty coming from a previous call to GetMember + The value of the property + + + + Sets the value of a property coming from a previous call to GetMember + + PSProperty coming from a previous call to GetMember + value to set the property with + instructs the adapter to convert before setting, if the adapter suports conversion + + + + Returns true if the property is settable + + property to check + true if the property is settable + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + + + Returns the name of the type corresponding to the property's value + + PSProperty obtained in a previous GetMember + True if the result is for display purposes only + the name of the type corresponding to the member + + + + Returns the string representation of the property in the object + + property obtained in a previous GetMember + the string representation of the property in the object + + + + Returns an array with the property attributes + + property we want the attributes from + an array with the property attributes + + + + Called after a non null return from GetMember to try to call + the method with the arguments + + the non empty return from GetMethods + invocation constraints + the arguments to use + the return value for the method + + + + Called after a non null return from GetMember to try to call + the method with the arguments + + the non empty return from GetMethods + the arguments to use + the return value for the method + + + + Called after a non null return from GetMember to return the overloads + + the return of GetMember + + + + + Returns the string representation of the method in the object + + the string representation of the method in the object + + + + Returns the name of the type corresponding to the property's value + + property obtained in a previous GetMember + the name of the type corresponding to the member + + It is not necessary for derived methods to override this. + This method is called only if ParameterizedProperties are present. + + + + + Returns true if the property is settable + + property to check + true if the property is settable + + It is not necessary for derived methods to override this. + This method is called only if ParameterizedProperties are present. + + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + It is not necessary for derived methods to override this. + This method is called only if ParameterizedProperties are present. + + + + + Called after a non null return from GetMember to return the overloads + + the return of GetMember + + It is not necessary for derived methods to override this. + This method is called only if ParameterizedProperties are present. + + + + + Called after a non null return from GetMember to get the property value + + the non empty return from GetMember + the arguments to use + the return value for the property + + It is not necessary for derived methods to override this. + This method is called only if ParameterizedProperties are present. + + + + + Called after a non null return from GetMember to set the property value + + the non empty return from GetMember + the value to set property with + the arguments to use + + It is not necessary for derived methods to override this. + This method is called only if ParameterizedProperties are present. + + + + + Returns the string representation of the property in the object + + property obtained in a previous GetMember + the string representation of the property in the object + + It is not necessary for derived methods to override this. + This method is called only if ParameterizedProperties are present. + + + + + Compare the 2 methods, determining which method is better. + + 1 if method1 is better, -1 if method2 is better, 0 otherwise. + + + + Returns -1 if is less specific than + (1 otherwise, or 0 if both are equally specific or non-comparable) + + + + + Return the best method out of overlaoded methods. + The best has the smallest type distance between the method's parameters and the given arguments. + + different overloads for a method + invocation constraints + arguments to check against the overloads + if no best method, the error id to use in the error message + if no best method, the error message (format string) to use in the error message + true if the best method's last parameter is a params method + true if best method should be called as non-virtual + + + + Called in GetBestMethodAndArguments after a call to FindBestMethod to perform the + type conversion, copying(varArg) and optional value setting of the final arguments. + + + + + Auxilliary method in MethodInvoke to set newArguments[index] with the propper value + + used for the MethodException that might be thrown + the complete array of arguments + the complete array of new arguments + the parameter to use + the index in newArguments to set + + + + ordered and case insensitive hashtable + + + + + Stores method related information. + This structure should be used whenever a new type is adapted. + For example, ManagementObjectAdapter uses this structure to store + WMI method information. + + + + + This constructor supports .net methods + + + + + Stores parameter related information. + This structure should be used whenever a new type is adapted. + For example, ManagementObjectAdapter uses this structure to store + method parameter information. + + + + + This is the adapter used for all objects that don't match the appropriate types for other adapters. + It uses reflection to retrieve property information. + + + + + CLR reflection property cache for instance properties + + + + + CLR reflection property cache for static properties + + + + + CLR reflection method cache for instance methods + + + + + CLR reflection method cache for static methods + + + + + CLR reflection method cache for instance events + + + + + CLR reflection method cache for static events + + + + + Compare the signatures of the methods, returning true if the methods have + the same signature. + + + + + Adds an overload to a list of MethodInfo. Before adding to the list, the + list is searched to make sure we don't end up with 2 functions with the + same signature. This can happen when there is a newslot method. + + + + + Called from GetMethodReflectionTable within a lock to fill the + method cache table + + type to get methods from + table to be filled + bindingFlags to use + + + + Called from GetEventReflectionTable within a lock to fill the + event cache table + + type to get events from + table to be filled + bindingFlags to use + + + + This method is necessary becausean overridden property in a specific class derived from a generic one will + appear twice. The second time, it should be ignored. + + + + + Called from GetPropertyReflectionTable within a lock to fill the + property cache table + + type to get properties from + table to be filled + bindingFlags to use + + + + Called from GetProperty and GetProperties to populate the + typeTable with all public properties and fields + of type. + + type to load properties for + + + + Retrieves the table for static methods + + type to load methods for + + + + Retrieves the table for static events + + type containing properties to load in typeTable + + + + Called from GetProperty and GetProperties to populate the + typeTable with all public properties and fields + of type. + + type with properties to load in typeTable + + + + Retrieves the table for instance methods + + type with methods to load in typeTable + + + + Retrieves the table for instance events + + type containing methods to load in typeTable + + + + Returns true if a parameterized property should be in a PSMemberInfoCollection of type t + + Type of a PSMemberInfoCollection like the type of T in PSMemberInfoCollection of T + true if a parameterized property should be in a collection + + Usually typeof(T).IsAssignableFrom(typeof(PSParameterizedProperty)) would work like it does + for PSMethod and PSProperty, but since PSParameterizedProperty derives from PSMethodInfo and + since we don't want to have ParameterizedProperties in PSMemberInfoCollection of PSMethodInfo + we need this method. + + + + + Returns null if memberName is not a member in the adapter or + the corresponding PSMemberInfo + + object to retrieve the PSMemberInfo from + name of the member to be retrieved + The PSMemberInfo corresponding to memberName from obj + + + + Retrieves all the members available in the object. + The adapter implementation is encouraged to cache all properties/methods available + in the first call to GetMember and GetMembers so that subsequent + calls can use the cache. + In the case of the .NET adapter that would be a cache from the .NET type to + the public properties and fields available in that type. + In the case of the DirectoryEntry adapter, this could be a cache of the objectClass + to the properties available in it. + + object to get all the member information from + all members in obj + + + + Returns an array with the property attributes + + property we want the attributes from + an array with the property attributes + + + + Returns the string representation of the property in the object + + property obtained in a previous GetMember + the string representation of the property in the object + + + + Returns the value from a property coming from a previous call to GetMember + + PSProperty coming from a previous call to GetMember + The value of the property + + + + Sets the value of a property coming from a previous call to GetMember + + PSProperty coming from a previous call to GetMember + value to set the property with + instructs the adapter to convert before setting, if the adapter suports conversion + + + + Returns true if the property is settable + + property to check + true if the property is settable + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + + + Returns the name of the type corresponding to the property's value + + PSProperty obtained in a previous GetMember + True if the result is for display purposes only + the name of the type corresponding to the member + + + + Calls constructor using the arguments and catching the appropriate exception + + final arguments to the constructor + the return of the constructor + Information about the method to call. Used for setting references. + Original arguments in the method call. Used for setting references. + if the constructor throws an exception + + + + Calls method on target using the arguments and catching the appropriate exception + + object we want to call the method on + final arguments to the method + Information about the method to call. Used for setting references. + Original arguments in the method call. Used for setting references. + the return of the method + if the method throws an exception + + + + Converts a MethodBase[] into a MethodInformation[] + + the methods to be converted + the MethodInformation[] corresponding to methods + + + + Calls the method best suited to the arguments on target. + + used for error messages + object to call the method on + method information corresponding to methods + invocation constraints + arguiments of the call + the return of the method + if the method throws an exception + if we could not find a method for the given arguments + + + + Calls the method best suited to the arguments on target. + + the type being constructed, used for diagnostics and caching + all overloads for the constructors + arguments of the call + the return of the method + if the method throws an exception + if we could not find a method for the given arguments + + + + this is a flavor of MethodInvokeDotNet to deal with a peculiarity of property setters: + Tthe setValue is always the last parameter. This enables a parameter after a varargs or optional + parameters and GetBestMethodAndArguments is not prepared for that. + This method disregards the last parameter in its call to GetBestMethodAndArguments used in this case + more for its "Arguments" side than for its "BestMethod" side, since there is only one method. + + + + + Called after a non null return from GetMember to try to call + the method with the arguments + + the non empty return from GetMethods + the arguments to use + the return value for the method + + + + Called after a non null return from GetMember to try to call + the method with the arguments + + the non empty return from GetMethods + invocation constraints + the arguments to use + the return value for the method + + + + Called after a non null return from GetMember to return the overloads + + the return of GetMember + + + + + Returns the name of the type corresponding to the property's value + + property obtained in a previous GetMember + the name of the type corresponding to the member + + + + Returns true if the property is settable + + property to check + true if the property is settable + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + + + Called after a non null return from GetMember to get the property value + + the non empty return from GetMember + the arguments to use + the return value for the property + + + + Called after a non null return from GetMember to set the property value + + the non empty return from GetMember + the value to set property with + the arguments to use + + + + Called after a non null return from GetMember to return the overloads + + + + + Returns the string representation of the property in the object + + property obtained in a previous GetMember + the string representation of the property in the object + + + + This is used by PSObject to support dotnet member lookup for the adapted + objects. + + + This class is created to avoid cluttering DotNetAdapter with if () { } blocks . + + + + + Return a collection representing the object's + members as returned by CLR reflection. + + + + + + + + Returns a member representing the as given by CLR reflection. + + + + + + + + + Used only to add a COM style type name to a COM interop .NET type + + + + + Adapter used for GetMember and GetMembers only. + All other methods will not be called. + + + + + Returns an array with the property attributes + + property we want the attributes from + an array with the property attributes + + + + Returns the value from a property coming from a previous call to GetMember + + PSProperty coming from a previous call to GetMember + The value of the property + + + + Sets the value of a property coming from a previous call to GetMember + + PSProperty coming from a previous call to GetMember + value to set the property with + instructs the adapter to convert before setting, if the adapter suports conversion + + + + Returns true if the property is settable + + property to check + true if the property is settable + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + + + Returns the name of the type corresponding to the property's value + + PSProperty obtained in a previous GetMember + True if the result is for display purposes only + the name of the type corresponding to the member + + + + Returns the string representation of the property in the object + + property obtained in a previous GetMember + the string representation of the property in the object + + + + Called after a non null return from GetMember to try to call + the method with the arguments + + the non empty return from GetMethods + the arguments to use + the return value for the method + + + + Called after a non null return from GetMember to return the overloads + + the return of GetMember + + + + + adapter for properties in the inside PSObject if it has a null BaseObject + + + + + Returns the TypeNameHierarchy out of an object + + object to get the TypeNameHierarchy from + + + + Returns null if memberName is not a member in the adapter or + the corresponding PSMemberInfo + + object to retrieve the PSMemberInfo from + name of the member to be retrieved + The PSMemberInfo corresponding to memberName from obj + + + + Retrieves all the members available in the object. + The adapter implementation is encouraged to cache all properties/methods available + in the first call to GetMember and GetMembers so that subsequent + calls can use the cache. + In the case of the .NET adapter that would be a cache from the .NET type to + the public properties and fields available in that type. + In the case of the DirectoryEntry adapter, this could be a cache of the objectClass + to the properties available in it. + + object to get all the member information from + all members in obj + + + + adapter for properties inside a member set + + + + + Returns null if memberName is not a member in the adapter or + the corresponding PSMemberInfo + + object to retrieve the PSMemberInfo from + name of the member to be retrieved + The PSMemberInfo corresponding to memberName from obj + + + + Retrieves all the members available in the object. + The adapter implementation is encouraged to cache all properties/methods available + in the first call to GetMember and GetMembers so that subsequent + calls can use the cache. + In the case of the .NET adapter that would be a cache from the .NET type to + the public properties and fields available in that type. + In the case of the DirectoryEntry adapter, this could be a cache of the objectClass + to the properties available in it. + + object to get all the member information from + all members in obj + + + + Base class for all adapters that adapt only properties and retain + .NET methods + + + + + Returns null if propertyName is not a property in the adapter or + the corresponding PSProperty with its adapterData set to information + to be used when retrieving the property. + + object to retrieve the PSProperty from + name of the property to be retrieved + The PSProperty corresponding to propertyName from obj + + + + Retrieves all the properties available in the object. + + object to get all the property information from + collection where the properties will be added + + + + Returns null if memberName is not a member in the adapter or + the corresponding PSMemberInfo + + object to retrieve the PSMemberInfo from + name of the member to be retrieved + The PSMemberInfo corresponding to memberName from obj + + + + Retrieves all the members available in the object. + The adapter implementation is encouraged to cache all properties/methods available + in the first call to GetMember and GetMembers so that subsequent + calls can use the cache. + In the case of the .NET adapter that would be a cache from the .NET type to + the public properties and fields available in that type. + In the case of the DirectoryEntry adapter, this could be a cache of the objectClass + to the properties available in it. + + object to get all the member information from + all members in obj + + + + Deals with XmlNode objects + + + + + Returns the TypeNameHierarchy out of an object + + object to get the TypeNameHierarchy from + + + + Retrieves all the properties available in the object. + + object to get all the property information from + collection where the members will be added + + + + Returns null if propertyName is not a property in the adapter or + the corresponding PSProperty with its adapterData set to information + to be used when retrieving the property. + + object to retrieve the PSProperty from + name of the property to be retrieved + The PSProperty corresponding to propertyName from obj + + + + Returns true if the property is settable + + property to check + true if the property is settable + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + + + Returns the value from a property coming from a previous call to DoGetProperty + + PSProperty coming from a previous call to DoGetProperty + The value of the property + + + + Sets the value of a property coming from a previous call to DoGetProperty + + PSProperty coming from a previous call to DoGetProperty + value to set the property with + instructs the adapter to convert before setting, if the adapter suports conversion + + + + Returns the name of the type corresponding to the property + + PSProperty obtained in a previous DoGetProperty + True if the result is for display purposes only + the name of the type corresponding to the property + + + + Auxilliary in GetProperty to perform case sensitive and case insensitve searches + in the child nodes + + XmlNode to extract property from + property to look for + type pf comparison to perform + the corresponding XmlNode or null if not present + + + + Internal wrapper for third-party adapters (PSPropertyAdapter) + + + + + The type this instance is adapting + + + + + The type of the external adapter + + + + + Returns the TypeNameHierarchy out of an object + + + + + Retrieves all the properties available in the object. + + + + + Returns null if propertyName is not a property in the adapter or + the corresponding PSProperty with its adapterData set to information + to be used when retrieving the property. + + + + + Ensures that the adapter and base object are set in the given PSAdaptedProperty + + + + + Returns true if the property is settable + + + + + Returns true if the property is gettable + + + + + Returns the value from a property coming from a previous call to DoGetProperty + + + + + Sets the value of a property coming from a previous call to DoGetProperty + + + + + Returns the name of the type corresponding to the property + + + + + User-defined property adapter + + + This class is used to expose a simplified version of the type adapter API + + + + + Returns the type hiercharchy for the given object + + + + + Returns a list of the adapted properties + + + + + Returns a specific property, or null if the base object does not contain the given property + + + + + Returns true if the given property is settable + + + + + Returns true if the given property is gettable + + + + + Returns the value of a given property + + + + + Sets the value of a given property + + + + + Returns the type for a given property + + + + + Defines a base class implemented when you need to customize the type conversion for a target class. + + + There are two ways of associating the PSTypeConverter with its target class: + - Through the type configuration file. + - By applying a TypeConverterAttribute to the target class. + + Unlike System.ComponentModel.TypeConverter, PSTypeConverter can be applied to a family of types (like all types derived from System.Enum). + PSTypeConverter has two main differences from TypeConverter: + - It can be applied to a family of types and not only the one type as in TypeConverter. In order to do that + ConvertFrom and CanConvertFrom receive destinationType to know to which type specifically we are converting sourceValue. + - ConvertTo and ConvertFrom receive formatProvider and ignoreCase. + Other differences to System.ComponentModel.TypeConverter: + - There is no ITypeDescriptorContext. + - This class is abstract + + + + + Determines if the converter can convert the parameter to the parameter. + + value supposedly *not* of the types supported by this converted to be converted to the parameter + one of the types supported by this converter to which the parameter should be converted + True if the converter can convert the parameter to the parameter, otherwise false. + + + + Determines if the converter can convert the parameter to the parameter. + + value supposedly *not* of the types supported by this converted to be converted to the parameter + one of the types supported by this converter to which the parameter should be converted + True if the converter can convert the parameter to the parameter, otherwise false. + + + + Converts the parameter to the parameter using formatProvider and ignoreCase + + value supposedly *not* of the types supported by this converted to be converted to the parameter + one of the types supported by this converter to which the parameter should be converted to + The format provider to use like in IFormatable's ToString + true if case should be ignored + the parameter converted to the parameter using formatProvider and ignoreCase + if no conversion was possible + + + + Converts the parameter to the parameter using formatProvider and ignoreCase + + value supposedly *not* of the types supported by this converted to be converted to the parameter + one of the types supported by this converter to which the parameter should be converted to + The format provider to use like in IFormatable's ToString + true if case should be ignored + the parameter converted to the parameter using formatProvider and ignoreCase + if no conversion was possible + + + + Returns true if the converter can convert the parameter to the parameter + + value supposedly from one of the types supported by this converter to be converted to the parameter + type to convert the parameter, supposedly not one of the types supported by the converter + True if the converter can convert the parameter to the parameter, otherwise false. + + + + Returns true if the converter can convert the parameter to the parameter + + value supposedly from one of the types supported by this converter to be converted to the parameter + type to convert the parameter, supposedly not one of the types supported by the converter + True if the converter can convert the parameter to the parameter, otherwise false. + + + + Converts the parameter to the parameter using formatProvider and ignoreCase + + value supposedly from one of the types supported by this converter to be converted to the parameter + type to convert the parameter, supposedly not one of the types supported by the converter + The format provider to use like in IFormatable's ToString + true if case should be ignored + sourceValue converted to the parameter using formatProvider and ignoreCase + if no conversion was possible + + + + Converts the parameter to the parameter using formatProvider and ignoreCase + + value supposedly from one of the types supported by this converter to be converted to the parameter + type to convert the parameter, supposedly not one of the types supported by the converter + The format provider to use like in IFormatable's ToString + true if case should be ignored + sourceValue converted to the parameter using formatProvider and ignoreCase + if no conversion was possible + + + + Enables a type that only has conversion from string to be converted from all other + types through string + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + This will return false only if sourceValue is string + + value to convert from + ignored + false only if sourceValue is string + + + + Converts to destinationType by first converting sourceValue to string + and then converting the result to destinationType. + + The value to convert from + The type this converter is associated with + The IFormatProvider to use + true if case should be ignored + sourceValue converted to destinationType + When no conversion was possible + + + + Returns false, since this converter is not designed to be used to + convert from the type associated with the converted to other types. + + The value to convert from + The value to convert from + false + + + + Throws NotSupportedException, since this converter is not designed to be used to + convert from the type associated with the converted to other types. + + The value to convert from + The value to convert from + The IFormatProvider to use + true if case should be ignored + This method does not return a value. + NotSupportedException is always thrown + + + + The ranking of versions for comparison purposes (used in overload resolution.) + A larger value means the conversion is better. + + Note that the lower nibble is all ones for named conversion ranks. This allows for + conversions with rankings in between the named values. For example, int=>string[] + is value dependent, if the conversion from int=>string succeeds, then an array is + created, otherwise we try some other conversion. The int=>string[] conversion should + be worse than int=>string, but it is probably better than many other conversions, so + we want it to be only slightly worse than int=>string. + + + ValueDependent is a flag, but we don't mark the enum as flags because it really isn't + a flags enum. + To make debugging easier, the "in between" conversions are all named, though there are + no references in the code. They all use the suffix S2A which means "scalar to array". + + + + + Defines language support methods + + + + + This is a wrapper class that allows us to use the generic IEnumerable + implementation of an object when we can't use it's non-generic + implementation. + + + + + Retrieves the IEnumerable of obj or null if the language does not consider obj to be IEnumerable + + + IEnumerable or IEnumerable-like object + + + + + Retrieves the IEnumerator of obj or null if the language does not consider obj as capable of returning an IEnumerator + + + IEnumerable or IEnumerable-like object + + When the act of getting the enumerator throws an exception + + + + This method takes a an arbitrary object and wraps it in a PSDataCollection of PSObject. + This simplifies interacting with the PowerShell workflow activities. + + + + + + + Used to compare two objects for equality converting the second to the type of the first, if required. + + first object + object to compare first to + true if first is equal to the second + + + + Used to compare two objects for equality converting the second to the type of the first, if required. + + first object + object to compare first to + used only if first and second are strings + to specify the type of string comparison + true if first is equal to the second + + + + Used to compare two objects for equality converting the second to the type of the first, if required. + + first object + object to compare first to + used only if first and second are strings + to specify the type of string comparison + the format/culture to be used. If this parameter is null, + CultureInfo.InvariantCulture will be used. + + true if first is equal to the second + + + + Compare first and second, converting second to the + type of the first, if necessary. + + first comparison value + second comparison value + less than zero if first is smaller than second, more than + zero if it is greater or zero if they are the same + + does not implement IComparable or cannot be converted + to the type of . + + + + + Compare first and second, converting second to the + type of the first, if necessary. + + first comparison value + second comparison value + Used if both values are strings + less than zero if first is smaller than second, more than + zero if it is greater or zero if they are the same + + does not implement IComparable or cannot be converted + to the type of . + + + + + Compare first and second, converting second to the + type of the first, if necessary. + + first comparison value + second comparison value + Used if both values are strings + Used in type conversions and if both values are strings + less than zero if first is smaller than second, more than + zero if it is greater or zero if they are the same + + does not implement IComparable or cannot be converted + to the type of . + + + + + Returns true if the language considers obj to be true + + obj to verify if it is true + true if obj is true + + + + Internal routine that determines if an object meets any of our criteria for null. + + The object to test + true if the object is null + + + + Auxilliary for the cases where we want a new PSObject or null + + + + + Table of the largest safe type to which both types can be converted without exceptions. + This table is used for numeric comparisons. + The 4 entries marked as not used, are explicitly dealt with in NumericCompareDecimal. + NumericCompareDecimal exists because doubles and singles can throw + an exception when converted to decimal. + The order of lines and columns cannot be changed since NumericCompare depends on it. + + + + + Necessary not to return an integer type code for enums + + + + + + + Emulates the "As" C# language primitive, but will unwrap + the PSObject if required. + + The type for which to convert + The object from which to convert + An object of the specified type, if the conversion was successful. Returns null otherwise. + + + + Verifies if type is a signed integer + + type code to check + true if type is a signed integer, false otherwise + + + + Verifies if type is an unsigned integer + + type code to check + true if type is an unsigned integer, false otherwise + + + + Verifies if type is integer + + type code to check + true if type is integer, false otherwise + + + + Verifies if type is a floating point number + + type code to check + true if type is floating point, false otherwise + + + + Verifies if type is an integer or floating point number + + type code to check + true if type is integer or floating point, false otherwise + + + + Verifies if type is a CIM intrinsic type + + type code to check + true if type is CIM intrinsic type, false otherwise + + + + Verifies if type is one of the boolean types + + type to check + true if type is one of boolean types, false otherwise + + + + Verifies if type is one of switch parameter types + + type to check + true if type is one of switch parameter types, false otherwise + + + + Verifies if type is one of boolean or switch parameter types + + type to check + true if type if one of boolean or switch parameter types, + false otherwise + + + + Do the necessary conversions when using property or array assignment to a generic dictionary: + + $dict.Prop = value + $dict[$Prop] = value + + The property typically won't need conversion, but it could. The value is more likely in + need of conversion. + + The dictionary that potentially implement + The object representing the key + The value to assign + + + backupTypeTable: + Used by Remoting Rehydration Logic. While Deserializing a remote object, + LocalPipeline.ExecutionContextFromTLS() might return null..In which case this + TypeTable will be used to do the conversion. + + + + BUGBUG - brucepay Mar. 2013 - I don't think this is general enough for dynamic keywords to support arbitrary target + languages with arbitrary type representations so we may need an extension point here... + + Maps a .NET or CIM type name string (e.g. SInt32) to the form expected by PowerShell users, namely "[typename]" + If there is no mapping, then it returns null. + If the string to convert is null or empty then the function returns "[object]" as the default typeless type. + + The typename string to convert. + The equivalent PowerShell representatin of that type. + + + + Converts valueToConvert to resultType + + + A null valueToConvert can be converted to : + string - returns "" + char - returns '\0' + numeric types - returns 0 converted to the appropriate type + boolean - returns LanguagePrimitives.IsTrue(null) + PSObject - returns new PSObject()) + array - returns an array with null in array[0] + non value types - returns null + + The following conversions are considered language standard and cannot be customized: + - from derived to base class - returns valueToConvert intact + - to PSObject - returns PSObject.AsPSObject(valueToConvert) + - to void - returns AutomationNull.Value + - from array/IEnumerable to array - tries to convert array/IEnumerable elements + - from object of type X to array of X - returns an array with object as its only element + - to bool - returns LanguagePrimitives.IsTrue(valueToConvert) + - to string - returns a string representation of the object. + In the particular case of a number to string, + the conversion is culture invariant. + - from IDictionary to Hashtable - uses the Hashtable constructor + - to XmlDocument - creates a new XmlDocument with the + string representation of valueToConvert + - from string to char[] - returns ((string)valueToConvert).ToCharArray() + - from string to RegEx - creates a new RegEx with the string + - from string to Type - looks up the type in the minishell's assemblies + - from empty string to numeric - returns 0 converted to the appropriate type + - from string to numeric - returns a culture invariant conversion + - from ScriptBlock to Delegate - returns a delegate wrapping that scriptblock. + - from Integer to Enumeration - Uses Enum.ToObject + - to WMI - Instantiate a WMI instance using + System.Management.ManagementObject + - to WMISearcher - returns objects from running WQL query with the + string representation of valueToConvert. The + query is run using ManagementObjectSearcher Class. + - to WMIClass - returns ManagementClass represented by the + string representation of valueToConvert. + - to ADSI - returns DirectoryEntry represented by the + string representation of valueToConvert. + - to ADSISearcher - return DirectorySearcher representd by the + string representation of valueToConvert. + + If none of the cases above is true, the following is considered in order: + + 1) TypeConverter and PSTypeConverter + 2) the Parse methods if the valueToConvert is a string + 3) Constructors in resultType that take one parameter with type valueToConvert.GetType() + 4) Implicit and explicit cast operators + 5) IConvertible + + If any operation above throws an exception, this exception will be wrapped into a + PSInvalidCastException and thrown resulting in no further conversion attempt. + + value to be converted and returned + type to convert valueToConvert + converted value + if resultType is null + if the conversion failed + + + + Converts valueToConvert to resultType possibly considering formatProvider + + + A null valueToConvert can be converted to : + string - returns "" + char - returns '\0' + numeric types - returns 0 converted to the appropriate type + boolean - returns LanguagePrimitives.IsTrue(null) + PSObject - returns new PSObject()) + array - returns an array with null in array[0] + non value types - returns null + + The following conversions are considered language standard and cannot be customized: + - from derived to base class - returns valueToConvert intact + - to PSObject - returns PSObject.AsPSObject(valueToConvert) + - to void - returns AutomationNull.Value + - from array/IEnumerable to array - tries to convert array/IEnumerable elements + - from object of type X to array of X - returns an array with object as its only element + - to bool - returns LanguagePrimitives.IsTrue(valueToConvert) + - to string - returns a string representation of the object. + In the particular case of a number to string, + the conversion is culture invariant. + - from IDictionary to Hashtable - uses the Hashtable constructor + - to XmlDocument - creates a new XmlDocument with the + string representation of valueToConvert + - from string to char[] - returns ((string)valueToConvert).ToCharArray() + - from string to RegEx - creates a new RegEx with the string + - from string to Type - looks up the type in the minishell's assemblies + - from empty string to numeric - returns 0 converted to the appropriate type + - from string to numeric - returns a culture invariant conversion + - from ScriptBlock to Delegate - returns a delegate wrapping that scriptblock. + - from Integer to Enumeration - Uses Enum.ToObject + + If none of the cases above is true, the following is considered in order: + + 1) TypeConverter and PSTypeConverter + 2) the Parse methods if the valueToConvert is a string + 3) Constructors in resultType that take one parameter with type valueToConvert.GetType() + 4) Implicit and explicit cast operators + 5) IConvertible + + If any operation above throws an exception, this exception will be wrapped into a + PSInvalidCastException and thrown resulting in no further conversion attempt. + + value to be converted and returned + type to convert valueToConvert + To be used in custom type conversions, to call parse and to call Convert.ChangeType + converted value + if resultType is null + if the conversion failed + + + + Converts PSObject to resultType. + + value to be converted and returned. + type to convert psobject. + Indicates if inner properties have to be recursively converted. + To be used in custom type conversions, to call parse and to call Convert.ChangeType + Indiacates if Unknown members in the psobject have to be ignored if the corresponding members in resultType do not exist. + converted value. + + + + Generic convertto that simplifies workfing with workflow. + + The type of object to return + + + + + + Sets result to valueToConvert converted to resultType. + + + This method is a variant of ConvertTo that does not throw exceptions if the conversion fails. + + value to be converted and returned + result of the conversion. This is valid only if the return is true. + false for conversion failure, true for success + + + + Sets result to valueToConvert converted to resultType considering formatProvider + for custom conversions, calling the Parse method and calling Convert.ChangeType. + + + This method is a variant of ConvertTo that does not throw exceptions if the conversion fails. + + value to be converted and returned + governing conversion of types + result of the conversion. This is valid only if the return is true. + false for conversion failure, true for success + + + + Sets result to valueToConvert converted to resultType. + + + This method is a variant of ConvertTo that does not throw exceptions if the conversion fails. + + value to be converted and returned + type to convert valueToConvert + result of the conversion. This is valid only if the return is true. + false for conversion failure, true for success + + + + Sets result to valueToConvert converted to resultType considering formatProvider + for custom conversions, calling the Parse method and calling Convert.ChangeType. + + + This method is a variant of ConvertTo that does not throw exceptions if the conversion fails. + + value to be converted and returned + type to convert valueToConvert + governing conversion of types + result of the conversion. This is valid only if the return is true. + false for conversion failure, true for success + + + + Checks if the enumValue is defined or not in enumType. + + some enumeration + supposed to be an integer + + + + + + Throws if the enumType enumeration has no negative values, but the enumValue is not + defined in enumType. + + some enumeration + supposed to be an integer + the error id to be used when throwing an exception + + + + Throws if the enumType enumeration has no negative values, but the enumValue is not + defined in enumType. + + The error id to be used when throwing an exception + value to validate + value to use while throwing an exception + the enum type to validate the enumValue with. + + is used by those callers who want the exception + to contain a different value than the one that is validated. + This will enable callers to take different forms of input -> convert to enum using + Enum.Object -> then validate using this method. + + + + + There might be many cast operators in a Type A that take Type A. Each operator will have a + different return type. Because of that we cannot call GetMethod since it would cause a + AmbiguousMatchException. This auxilliar method calls GetMember to find the right method + + Either op_Excplicit or op_Implicit, at the moment + the type to look for an operator + Type of the only parameter the operator method should have + Return type of the operator method + A cast operator method, or null if not found + + + backupTypeTable: + Used by Remoting Rehydration Logic. While Deserializing a remote object, + LocalPipeline.ExecutionCotextFromTLS() might return null..In which case this + TypeTable will be used to do the conversion. + + + + We need to add this built-in converter because in FullCLR, Syste.Uri has a TypeConverter attribute + declared: [TypeConverter(typeof(UriTypeConverter))], so the conversion from 'string' to 'Uri' is + actually taken care of by 'UriTypeConverter'. However, the type 'UriTypeConverter' is not available + in CoreCLR, and thus the conversion from 'string' to 'Uri' would show a different behavior. + + Therefore, we just add this built-in string-to-uri converter using the same logic 'UriTypeConverter' + is using in FullCLR, so the conversion behavior will be the same on desktop powershell and powershell core. + + + + + Create a IList to hold all elements, and use the IList to create the object of the resultType. + The reason for using IList is that it can work on constructors that takes IEnumerable[T], ICollection[T] or IList[T]. + + + When get to this method, we know the fromType and the toType meet the following two conditions: + 1. toType is a closed generic type and it has a constructor that takes IEnumerable[T], ICollection[T] or IList[T] + 2. fromType is System.Array, System.Object[] or it's the same as the element type of toType + + + + + + + the same as in the public version + the same as in the public version + true if we should perform any recursive calls to ConvertTo + governing conversion of types + + Used by Remoting Rehydration Logic. While Deserializing a remote object, + LocalPipeline.ExecutionCotextFromTLS() might return null..In which case this + TypeTable will be used to do the conversion. + + the value converted + if resultType is null + if the conversion failed + + + + Get the errorId and errorMessage for an InvalidCastException + + + + + A two-element tuple indicating [errorId, errorMsg] + + + + + Figure conversion when following conditions are satisfied: + 1. toType is a closed generic type and it has a constructor that takes IEnumerable[T], ICollection[T] or IList[T] + 2. fromType is System.Array, System.Object[] or it's the same as the element type of toType + + + + + + + + This type is introduced to provide a way to pass null into a .NET method that has a string parameter + + + + + This overrides ToString() method and returns null. + + + + + This returns the singleton instance of NullString + + + + + This is a private constructor, meaning no outsiders have access. + + + + + Contains utility methods for use in applications that generate PowerShell code. + + + + + Escapes content so that it is safe for inclusion in a single-quoted string. + For example: "'" + EscapeSingleQuotedStringContent(userContent) + "'" + + The content to be included in a single-quoted string. + Content with all single-quotes escaped. + + + + Escapes content so that it is safe for inclusion in a block comment. + For example: "<#" + EscapeBlockCommentContent(userContent) + "#>" + + The content to be included in a block comment. + Content with all block comment characters escaped. + + + + Escapes content so that it is safe for inclusion in a string that will later be used as a + format string. If this is to be embedded inside of a single-quoted string, be sure to also + call EscapeSingleQuotedStringContent. + For example: "'" + EscapeSingleQuotedStringContent(EscapeFormatStringContent(userContent)) + "'" -f $args + + The content to be included in a format string. + Content with all curly braces escaped. + + + + Escapes content so that it is safe for inclusion in a string that will later be used in a variable + name reference. This is only valid when used within PowerShell's curly brace naming syntax. + + For example: '${' + EscapeVariableName('value') + '}' + + The content to be included as a variable name. + Content with all curly braces and back-ticks escaped. + + + + GetValue is only called for pre/post increment/decrement or for read/modify/write assignment operators (+=, -=, etc.) + It returns the expressions that holds the value of the ast. It may append the exprs or temps lists if the return + value relies on temps and other expressions. + + + + + SetValue is called to set the result of an assignment (=) or to write back the result of + a pre/post increment/decrement. It needs to use potentially cached temps if GetValue was called first. + + + + + Return value is Tuple[paramText, scriptBlockText] + + + + + The abstract base class for all PowerShell abstract syntax tree nodes. + + + + + Initialize the common fields of an ast. + + The extent of the expression. + + If is null. + + + + + The extent in the source this ast represents. + + + + + The parent tree for this node. + + + + + Visit the Ast using a visitor that can choose how the tree traversal is performed. This visit method is + for advanced uses of the visitor pattern where an is insufficient. + + The visitor + Returns the value returned by the visitor. + + + + Visit each node in the Ast, calling the methods in for each node in the ast. + + The visitor + + + + Traverse the entire Ast, returning all nodes in the tree for which returns true. + + The predicate function. + Search nested functions and script block expressions. + A possibly empty collection of matching Ast nodes. + + + + Traverse the entire Ast, returning the first node in the tree for which returns true. + + The predicate + Search nested functions and script block expressions. + The first matching node, or null if there is no match. + + + + Formats the ast and returns a string. + + + + + Duplicates the AST, allowing it to be composed into other ASTs. + + A copy of the AST, with the link to the previous parent removed. + + + + Constructs the resultant object from the AST and returns it if it is safe. + + The object represented by the AST as a safe object + + If is deemed unsafe + + + + + Copy a collection of AST elements + + The actual AST type + Collection of ASTs + + + + + Copy a single AST element + + The actual AST type + An AST instance + + + + + Get ancestor Ast of the given type of the given ast + + + + + + + Copy the SequencePointAst instance + + + + + A placeholder statement used when there are syntactic errors in the source script. + + + + + Indicate the kind of the ErrorStatement. e.g. Kind == Switch means that this error statment is generated + when parsing a switch statement. + + + + + The flags specifid and their value. The value is null if it's not specified. + e.g. switch -regex -file c:\demo.txt ---> regex -- null + file -- { c:\demo.txt } + + TODO, Changing this to an IDictionary because ReadOnlyDictionary is available only in .NET 4.5 + This is a temporary workaround and will be fixed later. Tracked by Win8: 354135 + + + + The conditions specified. + + + + + The bodies specified. + + + + + Sometimes a valid ast is parsed successfully within the extent that this error statement represents. Those + asts are contained in this collection. This collection may contain other error asts. This collection may + be null when no asts were successfully constructed within the extent of this error ast. + + + + + Copy the ErrorStatementAst instance + + + + + A placeholder expression used when there are syntactic errors in the source script. + + + + + Sometimes a valid ast is parsed successfully within the extent that this error expression represents. Those + asts are contained in this collection. This collection may contain other error asts. This collection may + be null when no asts were successfully constructed within the extent of this error ast. + + + + + Copy the ErrorExpressionAst instance + + + + + + + + + + The application id this script requires, specified like: + #requires -Shellid Shell + If no application id has been specified, this property is null. + + + + + The PowerShell version this script requires, specified like: + #requires -Version 3 + If no version has been specified, this property is null. + + + + + The PowerShell Edition this script requires, specified like: + #requires -PSEdition Desktop + If no PSEdition has been specified, this property is an empty collection. + + + + + The modules this script requires, specified like: + #requires -Module NetAdapter + #requires -Module @{Name="NetAdapter"; Version="1.0.0.0"} + If no modules are required, this property is an empty collection. + + + + + The snapins this script requires, specified like: + #requires -PSSnapin Snapin + #requires -PSSnapin Snapin -Version 2 + If no snapins are required, this property is an empty collection. + + + + + The aseemblies this script requires, specified like: + #requires -Assembly path\to\foo.dll + #requires -Assembly "System.Management.Automation, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" + If no assemblies are required, this property is an empty collection. + + + + + Specifies if this script requires elevated privelges, specified like: + #requires -RunAsAdministrator + If nothing is specified, this property is false. + + + + + A ScriptBlockAst is the root ast node for a complete script. + + + + + Construct a ScriptBlockAst that uses explicitly named begin/process/end blocks. + + The extent of the script block. + The list of using statments, may be null. + The set of attributes for the script block. + The ast for the param block, may be null. + The ast for the begin block, may be null. + The ast for the process block, may be null. + The ast for the end block, may be null. + The ast for the dynamicparam block, may be null. + + If is null. + + + + + Construct a ScriptBlockAst that uses explicitly named begin/process/end blocks. + + The extent of the script block. + The list of using statments, may be null. + The ast for the param block, may be null. + The ast for the begin block, may be null. + The ast for the process block, may be null. + The ast for the end block, may be null. + The ast for the dynamicparam block, may be null. + + If is null. + + + + + Construct a ScriptBlockAst that uses explicitly named begin/process/end blocks. + + The extent of the script block. + The ast for the param block, may be null. + The ast for the begin block, may be null. + The ast for the process block, may be null. + The ast for the end block, may be null. + The ast for the dynamicparam block, may be null. + + If is null. + + + + + Construct a ScriptBlockAst that does not use explicitly named blocks. + + The extent of the script block. + The list of using statments, may be null. + The ast for the param block, may be null. + + The statements that go in the end block if is false, or the + process block if is true. + + True if the script block is a filter, false if it is a function or workflow. + + If or is null. + + + + + Construct a ScriptBlockAst that does not use explicitly named blocks. + + The extent of the script block. + The ast for the param block, may be null. + + The statements that go in the end block if is false, or the + process block if is true. + + True if the script block is a filter, false if it is a function or workflow. + + If or is null. + + + + + Construct a ScriptBlockAst that does not use explicitly named blocks. + + The extent of the script block. + The ast for the param block, may be null. + + The statements that go in the end block if is false, or the + process block if is true. + + True if the script block is a filter, false if it is a function or workflow. + True if the script block is a configuration + + If or is null. + + + + + Construct a ScriptBlockAst that does not use explicitly named blocks. + + The extent of the script block. + The list of using statments, may be null. + The ast for the param block, may be null. + + The statements that go in the end block if is false, or the + process block if is true. + + True if the script block is a filter, false if it is a function or workflow. + True if the script block is a configuration + + If or is null. + + + + + Construct a ScriptBlockAst that does not use explicitly named blocks. + + The extent of the script block. + The attributes for the script block. + The ast for the param block, may be null. + + The statements that go in the end block if is false, or the + process block if is true. + + True if the script block is a filter, false if it is a function or workflow. + True if the script block is a configuration + + If or is null. + + + + + Construct a ScriptBlockAst that does not use explicitly named blocks. + + The extent of the script block. + The list of using statments, may be null. + The attributes for the script block. + The ast for the param block, may be null. + + The statements that go in the end block if is false, or the + process block if is true. + + True if the script block is a filter, false if it is a function or workflow. + True if the script block is a configuration + + If or is null. + + + + + The asts for attributes (such as [DscLocalConfigurationManager()]) used before the scriptblock. + This property is never null. + + + + + The asts for any using statements. This property is never null. + Elements of the collection are instances of either + or (only in error cases) . + + + + + The ast representing the parameters for a script block, or null if no param block was specified. + + + + + The ast representing the begin block for a script block, or null if no begin block was specified. + + + + + The ast representing the process block for a script block, or null if no process block was specified. + + + + + The ast representing the end block for a script block, or null if no end block was specified. + + + + + The ast representing the dynamicparam block for a script block, or null if no dynamicparam block was specified. + + + + + All of the parsed information from any #requires in the script, or null if #requires was not used. + This property is only set for the top level script block (where ) is null. + + + + + Return the help content, if any, for the script block. + + + + + Convert the ast into a script block that can be invoked. + + The compiled script block. + + Thrown if there are any semantic errors in the ast. + + + + + Copy the ScriptBlockAst instance + + + + + The ast representing the param statement in a script block. + + + + + Construct the ast for a param statement of a script block. + + The extent of the param statement, from any possible attributes to the closing paren. + The attributes (such as [cmdletbinding()]) specified on the param statement. May be null. + The parameters to the script block. May be null. + + If is null. + + + + + The asts for attributes (such as [cmdletbinding()]) used before the param keyword. + + + + + The asts for the parameters of the param statement. + + + + + Copy the ParamBlockAst instance + + + + + The ast representing a begin, process, end, or dynamicparam block in a scriptblock. This ast is used even + when the block is unnamed, in which case the block is either an end block (for functions) or process block (for filters). + + + + + Construct the ast for a begin, process, end, or dynamic param block. + + + The extent of the block. If is false, the extent includes + the keyword through the closing curly, otherwise the extent is the as the extent of . + + + The kind of block, must be one of: + + + + + + + + The ast for the statements in this named block. + True if the block was not explicitly named. + + If or is null. + + + If is not one of the valid kinds for a named block, + or if is true and is neither + nor . + + + + + For a function/filter that did not explicitly name the end/process block (which is quite common), + this property will return true. + + + + + The kind of block, always one of: + + + + + + + + + + + The asts for all of the statements represented by this statement block. This property is never null. + + + + + The asts for all of the trap statements specified by this statement block, or null if no trap statements were + specified in this block. + + + + + Copy the NamedBlockAst instance + + + + + The ast representing a named attribute argument. For example, in [Parameter(Mandatory=$true)], this ast + represents Mandatory=$true. + + + + + Construct the ast for a named attribute argument. + + + The extent of the named attribute argument, starting with the name, ending with the expression, or if the expression + is omitted from the source, then ending at the end of the name. + + The name of the argument specified. May not be null or empty. + The argument expression. May not be null even if the expression is omitted from the source. + + True when an explicit argument is not provided in the source, e.g. [Parameter(Mandatory)]. In this case, + an ast for the argument expression must still be provided. + + + If , , or is null, or if + is an empty string. + + + + + The named argument specified by this ast, is never null or empty. + + + + + The ast of the value of the argument specified by this ast. This property is never null. + + + + + If the source omitted an expression, this returns true, otherwise false. This allows a caller to distinguish + the difference between [Parameter(Mandatory)] and [Parameter(Mandatory=$true)] + + + + + Copy the NamedAttributeArgumentAst instance + + + + + An abstract base class representing attributes that accept optional arguments, e.g. [Parameter()], as well as + type constraints, such as [int]. + + + + + Initiale the common fields for an attribute. + + The extent of the attribute, from the opening '[' to the closing ']'. + The type named by the attribute. + + If or is null. + + + + + The type name for the attribute. This property is never null. + + + + + The ast representing an attribute with optional positional and named arguments. + + + + + Construct an attribute ast. + + The extent of the attribute from opening '[' to closing ']'. + The named arguments, may be null. + The positional arguments, may be null. + The attribute name. + + If or is null. + + + + + The asts for the attribute arguments specified positionally. + + + + + The asts for the named attribute arguments. + + + + + Copy the AttributeAst instance + + + + + The ast representing a type constraint, which is simply a typename with no arguments. + + + + + Construct a type constraint from a possibly not yet resolved typename. + + The extent of the constraint, from the opening '[' to the closing ']'. + The type for the constraint. + + If or is null. + + + + + Construct a type constraint from a . + + The extent of the constraint, from the opening '[' to the closing ']'. + The type for the constraint. + + If or is null. + + + + + Copy the TypeConstraintAst instance + + + + + The ast representing a parameter to a script. Parameters may appear in one of 2 places, either just after the + name of the function, e.g. function foo($a){} or in a param statement, e.g. param($a). + + + + + Construct a parameter ast from the name, attributes, and default value. + + The extent of the parameter, including the attributes and default if specified. + The name of the variable. + The attributes, or null if no attributes were specified. + The default value of the parameter, or null if no default value was specified. + + If or is null. + + + + + The asts for any attributes or type constraints specified on the parameter. + + + + + The variable path for the parameter. This property is never null. + + + + + The ast for the default value of the parameter, or null if no default value was specified. + + + + + Returns the type of the parameter. If the parameter is constrained to be a specific type, that type is returned, + otherwise typeof(object) is returned. + + + + + Copy the ParameterAst instance + + + + + Get the text that represents this ParameterAst based on the $using variables passed in. + A parameter name cannot be a using variable, but its default value could contain any number of UsingExpressions, for example: + function bar ($x = (Get-X @using:defaultSettings.Parameters)) { ... } + This method goes through the ParameterAst text and replace each $using variable with its new synthetic name (remove the $using prefix). + This method is used when we call Invoke-Command targetting a PSv2 remote machine. In that case, we might need to call this method + to process the script block text, since $using prefix cannot be recognized by PSv2. + + A sorted enumerator of using variable asts, ascendingly sorted based on StartOffSet + + The text of the ParameterAst with $using variable being replaced with a new variable name. + + + + + The ast representing a block of statements. The block of statements could be part of a script block or some other + statement such as an if statement or while statement. + + + + + Construct a statement block. + + The extent of the statement block. If curly braces are part of the statement block (and + not some other ast like in a script block), then the curly braces are included in the extent, otherwise the + extent runs from the first statement or trap to the last statement or trap. + The (possibly null) collection of statements. + The (possibly null) collection of trap statements. + + If is null. + + + + + The asts for all of the statements represented by this statement block. This property is never null. + + + + + The asts for all of the trap statements specified by this statement block, or null if no trap statements were + specified in this block. + + + + + Copy the StatementBlockAst instance + + + + + An abstract base class for any statement like an if statement or while statement. + + + + + Initialize the common fields of a statement. + + The extent of the statement. + + If is null. + + + + + Specifies type attributes. + + + + No attributes specified. + + + The type specifies a class. + + + The type specifies an interface. + + + The type specifies an enum. + + + + The ast representing a type definition including attributes, base class and + implemented interfaces, plus it's members. + + + + + Construct a type definition. + + The extent of the type definition, from any attributes to the closing curly brace. + The name of the type + The attributes, or null if no attributes were specified. + The members, or null if no members were specified. + The attributes (like class or interface) of the type. + Base class and implemented interfaces for the type. + + + + The name of the type. + + + + + The asts for the custom attributes specified on the type. This property is never null. + + + + + The asts for the base types. This property is never null. + + + + + The asts for the members of the type. This property is never null. + + + + + The type attributes (like class or interface) of the type. + + + + + Returns true if the type defines an enum. + + + + + Returns true if the type defines a class. + + + + + Returns true if the type defines an interface. + + + + + Copy the TypeDefinitionAst + + + + + The kind of using statement. + + + + + A parse time reference to an assembly. + + + + + A parse time command alias. + + + + + A parse time reference or alias to a module. + + + + + A parse time statement that allows specifying types without their full namespace. + + + + + A parse time type alias (type accelerator). + + + + + The ast representing a using statement. + + + + + Construct a simple using statement (one that is not a form of an alias). + + The extent of the using statement including the using keyword. + + The kind of using statement, cannot be + or + + The item (assembly, module, or namespace) being used. + + + + Construct a simple (one that is not a form of an alias) using module statement with module specification as hashtable. + + The extent of the using statement including the using keyword. + HashtableAst that describes object + + + + Construct a using statement that aliases an item. + + The extent of the using statement including the using keyword. + + The kind of using statement, cannot be . + + The name of the alias. + The item being aliased. + + + + Construct a using module statement that aliases an item with module specification as hashtable. + + The extent of the using statement including the using keyword. + The name of the alias. + The module being aliased. Hashtable that describes + + + + The kind of using statement. + + + + + When is null or is null, the item being used, otherwise the alias name. + + + + + The name of the item being aliased. + This property is mutually exclusive with property. + + + + + Hashtable that can be converted to . Only for 'using module' case, otherwise null. + This property is mutually exclusive with property. + + + + + ModuleInfo about used module. Only for 'using module' case, otherwise null. + + + + + Copy the UsingStatementAst + + + + + Define imported module and all type definitions imported by this using statement. + + + return ExportedTypeTable for this module + + + + Is UsingStatementKind Module or Assembly. + + true, if it is. + + + + An abstract base class for type members. + + + + + Initialize the common fields of a type member. + + The extent of the type member. + + + + The name of the member. This property is never null. + + + + + The attributes for a property. + + + + No attributes specified. + + + The property is public. + + + The property is private. + + + The property is static. + + + The property is a literal. + + + The property is a hidden. + + + + The ast for a property. + + + + + Construct a property member. + + The extent of the property starting with any custom attributes. + The name of the property. + The ast for the type of the property - may be null. + The custom attributes for the property. + The attributes (like public or static) for the property. + The initial value of the property (may be null). + + + + The name of the property. + + + + + The ast for the type of the property. This property may be null if no type was specified. + + + + + The custom attributes of the property. This property is never null. + + + + + The attributes (like public or static) of the property. + + + + + The ast for the initial value of the property. This property may be null if no initial value was specified. + + + + + Return true if the property is public. + + + + + Return true if the property is private. + + + + + Return true if the property is hidden. + + + + + Return true if the property is static. + + + + + Copy the PropertyMemberAst. + + + + + Flags for a method. + + + + No flags specified. + + + The method is public. + + + The method is private. + + + The method is static. + + + The property is a hidden. + + + + The ast for a method. + + + + + Construct a member function. + + The extent of the method starting from any attributes to the closing curly. + The main body of the method. + The return type of the method, may be null. + The custom attributes for the function. + The method attributes like public or static. + + + + The name of the method. This property is never null. + + + + + The attributes specified on the method. This property is never null. + + + + + The ast representing the return type for the method. This property may be null if no return type was specified. + + + + + The parameters specified immediately after the function name. This property is never null. + + + + + The body of the function. This property is never null. + + + + + Method attribute flags. + + + + + Returns true if the method is public. + + + + + Returns true if the method is public. + + + + + Returns true if the method is hidden + + + + + Returns true if the method is static + + + + + Returns true if the method is a constructor + + + + + Copy a function member ast. + + + + + The ast that represents a function or filter definition. The function is always named. + + + + + Construct a function definition. + + + The extent of the function definition, starting with the function or filter keyword, ending at the closing curly. + + True if the filter keyword was used. + True if the workflow keyword was used. + The name of the function. + + The parameters specified after the function name. This does not include parameters specified with a param statement. + + The body of the function/filter. + + If , , or is null, or + if is an empty string. + + + + + If true, the filter keyword was used. + + + + + If true, the workflow keyword was used. + + + + + The name of the function or filter. This property is never null or empty. + + + + + The parameters specified immediately after the function name, or null if no parameters were specified. + It is possible that this property may have a value and to also have a + value. Normally this is not allowed in a valid script, but in one rare case it is allowed: + function foo() { param($a) } + + In this example, the parameters specified after the function name must be empty or the script is not valid. + + + + + + The body of the function. This property is never null. + + + + + Return the help content, if any, for the function. + + + + + Return the help content, if any, for the function. + Use this overload when parsing multiple functions within a single scope. + + A dictionary that the parser will use to + map AST nodes to their respective tokens. The parser uses this to improve performance + while repeatedly parsing the parent script blocks of a function (since the parent + script blocks may contain help comments related to this function. + To conserve memory, clear / null-out this cache when done with repeated parsing. + + + + + Copy the FunctionDefinitionAst instance + + + + + The ast that represents an if statement. + + + + + Construct an if statement. + + + The extent of the statement, starting with the if keyword, ending at the closing curly of the last clause. + + + A non-empty collection of pairs of condition expressions and statement blocks. + + The else clause, or null if no clause was specified. + If is null. + If is null or empty. + + + + The asts representing a pair of (condition,statements) that are tested, in sequence until the first condition + tests true, in which case it's statements are executed, otherwise the , if any, is + executed. This property is never null and always has at least 1 value. + + + + + The ast for the else clause, or null if no else clause is specified. + + + + + Copy the IfStatementAst instance + + + + + The ast representing the data statement. + + + + + Construct a data statement. + + The extent of the data statement, extending from the data keyword to the closing curly brace. + The name of the variable, if specified, otherwise null. + The list of commands allowed in the data statement, if specified, otherwise null. + The body of the data statement. + + If or is null. + + + + + The name of the variable this data statement sets, or null if no variable name was specified. + + + + + The asts naming the commands allowed to execute in this data statement. + + + + + The ast for the body of the data statement. This property is never null. + + + + + Copy the DataStatementAst instance + + + + + An abstract base class for statements that have labels such as a while statement or a switch statement. + + + + + Initialize the properties commmon to labeled statements. + + The extent of the statement. + The optionally null label for the statement. + The optionally null pipeline for the condition test of the statement. + + If is null. + + + + + The label name if specified, otherwise null. + + + + + The ast for the condition that is tested on each iteration of the loop, or the condition tested on a switch. + This property may be null if the statement is a , otherwise it is never null. + + + + + An abstract base class for looping statements including a the do/while statement, the do/until statement, + the foreach statement, the for statement, and the while statement. + + + + + Initialize the properties common to all loop statements. + + The extent of the statement. + The optionally null label for the statement. + The optionally null pipeline for the condition test of the statement. + The body of the statement. + + If or is null. + + + + + The body of a loop statement. This property is never null. + + + + + Flags that are specified on a foreach statement. Values may be or'ed together, not all invalid combinations + of flags are detected. + + + + + No flags specified. + + + + + The -parallel flag. + + + + + The ast representing the foreach statement. + + + + + Construct a foreach statement. + + + The extent of the statement, starting from the optional label or the foreach keyword and ending at the closing curly brace. + + The optionally null label. + Any flags that affect how the foreach statement is processed. + The variable set on each iteration of the loop. + The pipeline generating values to iterate through. + The body to execute for each element written from pipeline. + + If , , or is null. + + + + + Construct a foreach statement. + + + The extent of the statement, starting from the optional label or the foreach keyword and ending at the closing curly brace. + + The optionally null label. + Any flags that affect how the foreach statement is processed. + The limit to be obeyed during parallel processing, if any. + The variable set on each iteration of the loop. + The pipeline generating values to iterate through. + The body to execute for each element written from pipeline. + + If , , or is null. + + + + + The name of the variable set for each item as the loop iterates. This property is never null. + + + + + The limit to be obeyed during parallel processing, if any. + + + + + The flags, if any specified on the foreach statement. + + + + + Copy the ForEachStatementAst instance + + + + + The ast for a for statement. + + + + + Construct a for statement. + + The extent of the statement, from the label or for keyword to the closing curly. + The optionally null label. + The optionally null initialization expression executed before the loop. + The optionally null condition expression tested on each iteration of the loop. + The optionally null iteration expression executed after each iteration of the loop. + The body executed on each iteration of the loop. + + If is null. + + + + + The ast for the initialization expression of a for statement, or null if none was specified. + + + + + The ast for the iteration experssion of a for statement, or null if none was specified. + + + + + Copy the ForStatementAst instance + + + + + The ast that represents the do/while statement. + + + + + Construct a do/while statement. + + The extent of the do/while statment from the label or do keyword to the closing curly brace. + The optionally null label. + The condition tested on each iteration of the loop. + The body executed on each iteration of the loop. + + If or is null. + + + + + Copy the DoWhileStatementAst instance + + + + + The ast that represents a do/until statement. + + + + + Construct a do/until statement. + + The extent of the statement, from the label or do keyword to the closing curly brace. + The optionally null label. + The condition tested on each iteration of the loop. + The body executed on each iteration of the loop. + + If or is null. + + + + + Copy the DoUntilStatementAst instance + + + + + The ast for a while statement. + + + + + Construct a while statement. + + The extent of the statement, from the label or while keyword to the closing curly brace. + The optionally null label. + The condition tested on each iteration of the loop. + The body executed on each iteration of the loop. + + If or is null. + + + + + Copy the WhileStatementAst instance + + + + + Flags that are specified on a switch statement. Values may be or'ed together, not all invalid combinations + of flags are detected. + + + + + No flags specified. + + + + + The -file flag. + + + + + The -regex flag. + + + + + The -wildcard flag. + + + + + The -exact flag. + + + + + The -casesensitive flag. + + + + + The -parallel flag. + + + + + The ast that represents a switch statement. + + + + + Construct a switch statement. + + The extent of the statement, from the label or switch keyword to the closing curly. + The optionally null label. + The expression being switched upon. + Any flags that affect how the is tested. + + A possibly null or empty collection of conditions and block of statements to execute if the condition matches. + + The default clause to execute if no clauses match. + + If is null. + + + If and are both null or empty. + + + + + The flags, if any specified on the switch statement. + + + + + A possibly empty collection of conditions and statement blocks representing the cases of the switch statement. + If the colleciton is empty, the default clause is not null. + + + + + The ast for the default of the switch statement, or null if no default block was specified. + + + + + Copy the SwitchStatementAst instance + + + + + The ast that represents a single catch as part of a try statement. + + + + + Construct a catch clause. + + The extent of the catch, from the catch keyword to the closing curly brace. + The collection of types caught by this catch clause, may be null if all types are caught. + The body of the catch clause. + + If or is null. + + + + + A possibly empty collection of types caught by this catch block. If the collection is empty, the catch handler + catches all exceptions. + + + + + Returns true if this handler handles any kind of exception. + + + + + The body of the catch block. This property is never null. + + + + + Copy the CatchClauseAst instance + + + + + The ast that represents a try statement. + + + + + Construct a try statement ast. + + + The extent of the try statement, from the try keyword to the closing curly of the last catch or finally. + + The region of guarded code. + The list of catch clauses, may be null. + The finally clause, may be null. + + If or is null. + + + If is null or is an empty collection and is also + null, then an exception is also raised as the try block must have a finally or at least one catch. + + + + + The body of the try statement. This property is never null. + + + + + A collection of catch clauses, which is empty if there are no catches. + + + + + The ast for the finally block, or null if no finally block was specified, in which case + is a non-null, non-empty collection. + + + + + Copy the TryStatementAst instance + + + + + The ast that represents the trap statement. + + + + + Construct a trap statement. + + + The extent of the trap statement, starting with the trap keyword and ending with the closing curly of the body. + + The type handled by the trap statement, may be null if all exceptions are trapped. + The handler for the error. + + If or is null. + + + + + The ast for the type trapped by this trap block, or null if no type was specified. + + + + + The body for the trap block. This property is never null. + + + + + Copy the TrapStatementAst instance + + + + + The ast representing the break statement. + + + + + Construct a break statement ast. + + The extent of the statement, including the break keyword and the optional label. + The optional label expression. + + If is null. + + + + + The expression or label to break to, or null if no label was specified. + + + + + Copy the BreakStatementAst instance + + + + + The ast representing the continue statement. + + + + + Construct a continue statement. + + The extent of the statement including the optional label. + The optional label expression. + + If is null. + + + + + The expression or label to continue to, or null if no label was specified. + + + + + Copy the ContinueStatementAst instance + + + + + The ast representing the return statement. + + + + + Construct a return statement. + + The extent of the statement including the optional return value. + The optional return value. + + If is null. + + + + + The pipeline specified in the return statement, or null if none was specified. + + + + + Copy the ReturnStatementAst instance + + + + + The ast representing the exit statement. + + + + + Construct an exit statement. + + The extent of the exit statement including the optional exit value. + The optional exit value. + + If is null. + + + + + The pipeline specified in the exit statement, or null if none was specified. + + + + + Copy the ExitStatementAst instance + + + + + The ast representing the throw statement. + + + + + Construct a throw statement. + + The extent of the throw statement, including the optional value to throw. + The optional value to throw. + + If is null. + + + + + The pipeline specified in the throw statement, or null if none was specified. + + + + + If the throw statement is a rethrow. In PowerShell, a throw statement need not throw anything. Such + a throw statement throws a new exception if it does not appear lexically withing a catch, otherwise + it rethrows the caught exception. Examples: + + if ($true) { throw } # not a rethrow + try { foo } catch { throw } # rethrow + try { foo } catch { . { throw } } # rethrow + try { foo } catch { function foo { throw } } # rethrow + try { foo } finally { throw } # not a rethrow + + + + + + Copy the ThrowStatementAst instance + + + + + An abstract base class for statements that include command invocations, pipelines, expressions, and assignements. + Any statement that does not begin with a keyword is derives from PipelineBastAst. + + + + + Initialize the common parts of a PipelineBaseAst. + + The extent of the statement. + + If is null. + + + + + If the pipeline represents a pure expression, the expression is returned, otherwise null is returned. + + + + + The ast that repesents a PowerShell pipeline, e.g. gci -re . *.cs | select-string Foo or 65..90 | % { [char]$_ }. + A pipeline must have at least 1 command. The first command may be an expression or a command invocation. + + + + + Construct a pipeline from a collection of commands. + + The extent of the pipeline. + The collection of commands representing the pipeline. + + If is null. + + + If is null or is an empty collection. + + + + + Construct a pipeline from a single command. + + The extent of the pipeline (which should be the extent of the command). + The command for the pipeline. + + If or is null. + + + + + A non-null, non-empty collection of commands that represent the pipeline. + + + + + If the pipeline represents a pure expression, the expression is returned, otherwise null is returned. + + + + + Copy the PipelineAst instance + + + + + An abstract base class for the components of a . + + + + + Initialize the common fields of a comment element. + + The extent of the command element. + + If is null. + + + + + The ast that represents a parameter to a command, e.g. dir -Path a*, this class represent '-Path', and + in dir -Path:a*, this class represents '-Path:a*'. + + In the first case, the argument 'a*' is not represented by this class because the parser can't know until runtime + if the argument is positional or if -Path accepts an argument. In the later case, the argument 'a*' always + belongs to the parameter -Path. + + + + + Construct a command parameter. + + + The extent of the parameter, starting from the dash character, ending at the end of the parameter name, or else + at the end of the optional argument. + + + The parameter name, without the leading dash and without the trailing colon, if a colon was used. + + + If the parameter includes an argument with the syntax like -Path:a*, then the expression for 'a*' is + passed as the argument. An argument is not required. + + + The extent to use for error reporting when parameter binding fails with this parameter. If + is null, this extent is the same as , otherwise it is the extent of the parameter token + itself. + + + If or is null, or if + is an empty string. + + + + + The name of the parameter. This value does not include a leading dash, and in the case that an argument + is specified, no trailing colon is included either. This property is never null or empty. + + + + + The ast for the argument if specified (e.g. -Path:-abc, then the argument is the ast for '-ast'), otherwise null + if no argument was specified. + + + + + The error position to use when parameter binding fails. This extent does not include the argument if one was + specified, which means this extent is often the same as . + + + + + Copy the CommandParameterAst instance + + + + + An abstract base class for a command and an expression wrapper that allows an expression as a command in a pipeline. + + + + + Initialize the common fields of a command. + + The extent of the command. + The redirections for the command, may be null. + + If is null. + + + + + The possibly empty collection of redirections for this command. + + + + + The ast for a command invocation, e.g. dir *.ps1. + + + + + Construct a command invocation. + + + The extent of the command, starting with either the optional invocation operator '&' or '.' or the command name + and ending with the last command element. + + The elements of the command (command name, parameters and expressions.) + The invocation operator that was used, if any. + The redirections for the command, may be null. + + If is null. + + + If is null or is an empty collection. + + + + + A non-empty collection of command elements. This property is never null. + + + + + The invocation operator (either or ) if one was specified, + otherwise the value is . + + + + + Returns the name of the command invoked by this ast. + + This command name may not be known statically, in which case null is returned. + + + For example, if the command name is in a variable: & $foo, then the parser cannot know which command is executed. + Similarly, if the command is being invoked in a module: & (gmo SomeModule) Bar, then the parser does not know the + command name is Bar because the parser can't determine that the expression (gmo SomeModule) returns a module instead + of a string. + + + The command name, if known, null otherwise. + + + + If this command was synthesiszed out of a dynamic keyword, this property will point to the DynamicKeyword + data structure that was used to create this command. + + + + + Copy the CommandAst instance + + + + + The ast representing an expression when the expression is used as the first command of a pipeline. + + + + + Construct a command that wraps an expression. + + The extent of the expression. + The expression being wrapped. + The redirections for the command, may be null. + + If or is null. + + + + + The ast for the expression that is or starts a pipeline. This property is never null. + + + + + Copy the CommandExpressionAst instance + + + + + An abstract base class representing both file redirections and merging redirections. + + + + + Initialize the common fields in a redirection. + + The extent of the redirection. + The stream to read from. + + + + The stream to read objects from. Objects are either merged with another stream, or written to a file. + + + + + The stream number that is redirected. + + + + + All streams, used when the redirection token uses '*' as the stream number. + + + + + The normal output stream. + + + + + The error stream. + + + + + The warning stream. + + + + + The verbose stream. + + + + + The debug stream. + + + + + The information stream. + + + + + The ast representing a redirection that merges 2 streams, e.g. dir 2>&1 + + + + + Construct a merging redirection. + + The extent of the redirection. + The stream to read from. + The stream to write to - must always be + If is null. + + + + The stream that results will be written to. + + + + + Copy the MergingRedirectionAst instance + + + + + The ast representing a redirection to a file, e.g. dir > out.txt, the '> out.txt' is represented by this ast. + + + + + Construct a redirection to a file. + + + The extent of the redirection, starting with the redirection operator and including the file. + + + The stream being redirected. + + + The optional location to redirect to. Merging operators may not specify a file, the other redirection + operators must specify a location. + + + True if the file is being appended, false otherwise. + + If is null. + If is null. + + + + The ast for the location to redirect to. + + + + + True if the file is appended, false otherwise. + + + + + Copy the FileRedirectionAst instance + + + + + The ast that represents an assignment statement, e.g. $x = 42. + + + + + Construct an assignement statement. + + The extent of the assignment statement. + The value being assigned. + The assignment operator, e.g. '=' or '+='. + The value to assign. + The position to report an error if an error occurs at runtime. + + If , , , + or is null. + + + + + The ast for the location being assigned. This property is never null. + + + + + The operator for token assignment (such as =, +=, -=, etc.). The value is always some assignment operator. + + + + + The ast for the value to assign. This property is never null. + + + + + The position to report at runtime if there is an error during assignment. This property is never null. + + + + + Copy the AssignmentStatementAst instance + + + + + Return all of the expressions assigned by the assignment statement. Typically + it's just a variable expression, but if is an , + then all of the elements are assigned. + + All of the expressions assigned by the assignment statement. + + + + Defines types of configuration document + + + + + Resource configuration + + + + + Meta configuration + + + + + The ast represents the DSC configuration statement + + + + + Construct a configuration statement + + + The extent of the expression, starting with the attribute and ending after the expression being attributed. + + of the configuration statement + The type of the configuration + The configuration name expression + + If , , or is null. + + + + + This ast represents configuration body script block. + This property is never null. + + + + + The configuration type + + + + + The name of the configuration instance, + For example, Instance name of 'configuration test { ...... }' is 'test' + This property is never null. + + + + + Duplicates the , allowing it to be composed into other ASTs. + + A copy of the , with the link to the previous parent removed. + + + + Gets inferred type + + + + + + + A dynamic keyword may also define additional keywords in the child scope + of the scriptblock. This collection will contain those keywords. + + + + + Generate ast that definies a function for this object + + + The that defines a function for this object + + + + + + + + Item1 - ResourceName, Item2 - ModuleName, Item3 - ModuleVersion + + + + + The ast represents the DynamicKeyword statement + + + + + Construct a DynamicKeyword statement + + + The extent of the expression, starting with the attribute and ending after the expression being attributed. + + A collection of used to invoke specific command + + If is null or empty. + + + + + A non-empty collection of command elements represent the content of the + DynamicKeyword. + It may represents a command, such as “Import-DSCResource”, + or DSC resources, then CommandElements includes: + (1) Keyword Name + (2) InstanceName + (3) Body, could be ScriptBlockExpressionAst (for Node keyword) or a HashtableAst (remaining) + + This property is never null and never empty + + + + + Duplicates the , allowing it to be composed into other ASTs. + + A copy of the , with the link to the previous parent removed. + + + + Get inferred type of DynamicKeywordStatementAst + + + + + + + An abstract base class that represents all PowerShell expressions. + + + + + Initialize the fields common to all expressions. + + The extent of the expression. + + If is null. + + + + + By default, the static type of an expression is unknown and hence we assume typeof(object). + + + + + Determine if the results of ParenExpression/SubExpression should be preserved in case of exception + + + We should preserve the partial output in case of exception only if the SubExpression/ParenExpression meets following conditions: + 1. the SubExpr/ParenExpr is the first expression, and the only element in a pipeline + 2. the pipeline's parent is a StatementBlockAst or NamedBlockAst. e.g. $(1; throw 2) OR if (true) { $(1; throw 2) } + + + + + + The ast representing a binary expression, e.g. $a + $b. + + + + + Construct a binary expression. + + The extent of the expression. + The left hand operand. + The binary operator. + The right hand operand. + + The position to report if an error occurs at runtime while evaluating the binary operation. + + + If is not a valid binary operator. + + + If , , , + or is null. + + + + + The operator token kind. The value returned is always a binary operator. + + + + + The ast for the left hand side of the binary expression. The property is never null. + + + + + The ast for the right hand side of the binary expression. The property is never null. + + + + + The position to report an error if an error occurs at runtime. The property is never null. + + + + + Copy the BinaryExpressionAst instance + + + + + The result type of the operation. For most binary operators, the type is unknown until runtime, but + xor always results in typeof(bool). + + + + + The ast representing an expression with a unary operator. + + + + + Construct a unary expression. + + The extent of the expression, including the operator (which may be prefix or postfix.) + The unary operator token kind for the operation. + The expression that the unary operator is applied to. + + If or is null. + + + If is not a valid unary operator. + + + + + The operator token for the unary expression. The value returned is always a unary operator. + + + + + The child expression the unary operator is applied to. The property is never null. + + + + + Copy the UnaryExpressionAst instance + + + + + Returns typeof(bool) if the unary operator is a logical negation, otherwise returns typeof(object). + + + + + The ast that represents a scriptblock with a keyword name. This is normally allowed only for script workflow. + e.g. parallel { ... } or sequence { ... }. + + + + + Construct a keyword block expression + + + + + + + + The scriptblockexpression that has a keyword applied to it. This property is nerver null. + + + + + The keyword name + + + + + Copy the BlockStatementAst instance + + + + + The ast that represents an expression with an attribute. This is normally allowed only on parameters or variables + being assigned, e.g. [Parameter()]$PassThru or [ValidateScript({$true})$abc = 42. + + + + + Construct an attributed expression. + + + The extent of the expression, starting with the attribute and ending after the expression being attributed. + + The attribute being applied to . + The expression being attributed by . + + If , , or is null. + + + + + The expression that has an attribute or type constraint applied to it. This property is never null. + + + + + The attribute or type constraint for this expression. This property is never null. + + + + + Copy the AttributedExpressionAst instance + + + + + The ast that represents a cast expression, e.g. [wmiclass]"Win32_Process". + + + + + Construct a cast expression. + + + The extent of the expression, starting with the type literal and ending after the expression being converted. + + The type to convert to. + The expression being converted. + + If , , or is null. + + + + + The type to convert to. + + + + + Copy the ConvertExpressionAst instance + + + + + The static type produced after the cast is normally the type named by , but in some cases + it may not be, in which, is assumed. + + + + + The ast that represents accessing a member as a property, e.g. $x.Length or [int]::MaxValue. + Most often this is a simple property access, but methods can also be access in this manner, returning an object + that supports invoking that member. + + + + + Construct an ast to reference a property. + + + The extent of the expression, starting with the expression before the operator '.' or '::' and ending after + membername or expression naming the member. + + The expression before the member access operator '.' or '::'. + The name or expression naming the member to access. + True if the '::' operator was used, false if '.' is used. + True if the member access is for a static member, using '::', false if accessing a member on an instace using '.'. + + + If , , or is null. + + + + + The expression that produces the value to retrieve the member from. This property is never null. + + + + + The name of the member to retrieve. This property is never null. + + + + + True if the member to return is static, false if the member is an instance member. + + + + + Copy the MemberExpressionAst instance + + + + + The ast that represents the invocation of a method, e.g. $sb.Append('abc') or [math]::Sign($i). + + + + + Construct an instance of a method invocation expression. + + + The extent of the expression, starting with the expression before the invocation operator and ending with the + closing paren after the arguments. + + The expression before the invocation operator ('.' or '::'). + The method to invoke. + The arguments to pass to the method. + + True if the invocation is for a static method, using '::', false if invoking a method on an instace using '.'. + + + If is null. + + + + + The non-empty collection of arguments to pass when invoking the method, or null if no arguments were specified. + + + + + Copy the InvokeMemberExpressionAst instance + + + + + The ast that represents the invocation of a base ctor method from PS class instance ctor, e.g. class B : A{ B() : base() {} }. + + + + + Construct an instance of a base ctor invocation expression. + + + The extent of the base keyword, i.e. for + class B : A { B() : base(100) {} } + it will be "base". + Can be empty extent (i.e. for implicit base ctor call). + + + The extent of the base ctor call expression, i.e. for + class B : A { B() : base(100) {} } + it will be "base(100)" + Can be empty extent (i.e. for implicit base ctor call). + + The arguments to pass to the ctor. + + + + The name and attributes of a type. + + + + + The full name of the type, including any namespace and assembly name. + + + + + The name of the type, including any namespace, but not including the assembly name. + + + + + The name of the assembly, if specified, otherwise null. + + + + + Returns true if the type names an array, false otherwise. + + + + + Returns true if the type names a closed generic type (has generic type arguments), false otherwise. + + + + + Returns the that this typename represents, if such a type exists, null otherwise. + + + + + Assuming the typename is an attribute, returns the that this typename represents. + By convention, the typename may omit the suffix "Attribute". Lookup will attempt to resolve the type as is, + and if that fails, the suffix "Attribute" will be appended. + + + + + The extent of the typename. + + + + + A simple type that is not an array or does not have generic arguments. + + + + + Construct a simple typename. + + The extent of the typename. + The name of the type. + + If is null or the empty string. + + + If contains characters that are only allowed in a generic or array typename. + + + + + Construct a typename with an assembly specification. + + The extent of the typename. + The name of the type. + The assembly the type belongs to. + + If is null or if or is null or the empty string. + + + If contains characters that are only allowed in a generic or array typename. + + + + + Returns the full name of the type. + + + + + Returns the name of the type, w/o any assembly name if one was specified. + + + + + The name of the assembly, if specified, otherwise null. + + + + + Always returns false, array typenames are instances of . + + + + + Always returns false, generic typenames are instances of . + + + + + The extent of the typename. + + + + + Get the from a typename. + + + The if possible, null otherwise. Null may be returned for valid typenames if the assembly + containing the type has not been loaded. + + + + + Returns the this type represents, assuming the type is an attribute. The suffix + "Attribute" may be appended, if necessary, to resolve the type. + + + The if possible, null otherwise. Null may be returned for valid typenames if the assembly + containing the type has not been loaded. + + + + + Simply return the of the type. + + + + + + + + + + + Check if the type names a , false otherwise. + + The given + Returns true if the type names a , false otherwise. + + This helper function is now used to check 'Void' type only; + Other types may not work, for example, 'int' + + + + + Represent a closed generic type including its arguments. + + + + + Construct a generic type name. + + The extent of the generic typename. + + The name of the generic class. The name does not need to include the backtick and number of expected arguments, + (e.g. System.Collections.Generic.Dictionary`2, but the backtick and number be included. + + + The list of typenames that represent the arguments to the generic type named by . + + + If is null. + + + If is null or if is an empty collection. + + + + + Return the typename, using PowerShell syntax for generic type arguments. + + + + + The name of the type, including any namespace, but not including the assembly name, using PowerShell syntax for generic type arguments. + + + + + The name of the assembly, if specified, otherwise null. + + + + + Always returns false because this class does not represent arrays. + + + + + Always returns true because this class represents generics. + + + + + The typename that specifies the generic class. + + + + + The generic arguments for this typename. + + + + + The extent of the typename. + + + + + Returns the that this typename represents, if such a type exists, null otherwise. + + + + + Get the actual generic type if it's necessary + + + + + + + Returns the this type represents, assuming the type is an attribute. The suffix + "Attribute" may be appended, if necessary, to resolve the type. + + + The if possible, null otherwise. Null may be returned for valid typenames if the assembly + containing the type has not been loaded. + + + + + Simply return the of the type. + + + + + + + + + + + Represents the name of an array type including the dimensions. + + + + + Construct an ArrayTypeName. + + The extent of the array typename. + The name of the element type. + The number of dimensions in the array. + + If or is null. + + + If is 0 or negative. + + + + + Return the typename, using PowerShell syntax for the array dimensions. + + + + + The name of the type, including any namespace, but not including the assembly name, using PowerShell syntax for the array dimensions. + + + + + The name of the assembly, if specified, otherwise null. + + + + + Returns true always as this class represents arrays. + + + + + Returns false always as this class never represents generics. + + + + + The element type of the array. + + + + + The rank of the array. + + + + + The extent of the typename. + + + + + Returns the that this typename represents, if such a type exists, null otherwise. + + + + + Always return null, arrays can never be an attribute. + + + + + Simply return the of the type. + + + + + + + + + + + A class that allows a to be used directly in the PowerShell ast. + + + + + Construct a typename from a . + + The type to wrap. + + If is null. + + + + + Returns the typename in PowerShell syntax. + + + + + Returns the typename in PowerShell syntax. + + + + + The name of the assembly. + + + + + Returns true if the type is an array, false otherwise. + + + + + Returns true if the type is a generic, false otherwise. + + + + + The extent of the typename. + + + + + Returns the for this typename. Never returns null. + + + + + Assuming the typename is an attribute, returns the that this typename represents. + + + + + Simply return the of the type. + + + + + + + + + + + The ast that represents a type literal expression, e.g. [int]. + + + + + Construct a type literal expression. + + The extent of the typename, including the opening and closing square braces. + The typename for the constructed ast. + + If or is null. + + + + + The name of the type. This property is never null. + + + + + Copy the TypeExpressionAst instance + + + + + The static type of a type literal is always typeof(Type). + + + + + The ast representing a variable reference, either normal references, e.g. $true, or splatted references + @PSBoundParameters. + + + + + Construct a variable reference. + + The extent of the variable. + + The name of the variable. A leading '$' or '@' is not removed, those characters are assumed to be part of + the variable name. + + True if splatting, like @PSBoundParameters, false otherwise, like $false. + + If or is null, or if + is an empty string. + + + + + Construct a variable reference from a token. Used from the parser. + + + + + Construct a variable reference with an exising VariablePath (rather than construct a new one.) + + + If or is null. + + + + + The name of the variable. This property is never null. + + + + + True if splatting syntax was used, false otherwise. + + + + + Check if the variable is one of $true, $false and $null + + + True if it is a constant variable + + + + + Copy the VariableExpressionAst instance + + + + + The ast representing constant values, such as numbers. Constant values mean truly constant, as in, the value is + always the same. Expandable strings with variable references (e.g. "$val") or sub-expressions + (e.g. "$(1)") are not considered constant. + + + + + Construct a constant expression. + + The extent of the constant. + The value of the constant. + + If is null. + + + + + The value of the constant. This property is null only if the expression represents the null constant. + + + + + Copy the ConstantExpressionAst instance + + + + + The static type of a constant is whatever type the value is, or if null, then assume it's typeof(object). + + + + + The kind of string constant. + + + + + A string enclosed in single quotes, e.g. 'some text'. + + + + + A here string enclosed in single quotes, e.g. @' + a here string + '@ + + + + + + A string enclosed in double quotes, e.g. "some text". + + + + + A here string enclosed in double quotes, e.g. @" + a here string + "@ + + + + + + A string like token not enclosed in any quotes. This usually includes a command name or command argument. + + + + + The ast that represents a constant string expression that is always constant. This includes both single and + double quoted strings, but the double quoted strings will not be scanned for variable references and sub-expressions. + If expansion of the string is required, use . + + + + + Construct a string constant expression. + + The extent of the string constant, including quotes. + The value of the string. + The type of string. + + If or is null. + + + + + The type of string. + + + + + The value of the string, not including the quotes used. + + + + + Copy the StringConstantExpressionAst instance + + + + + The type of a StringConstantExpressionAst is always typeof(string). + + + + + The ast that repesents a double quoted string (here string or normal string) and can have nested variable + references or sub-expressions, e.g. "Name: $name`nAge: $([DateTime]::Now.Year - $dob.Year)". + + + + + Construct an expandable string. The value is scanned for nested variable references and expressions + which are evaluated at runtime when this ast is compiled. + + The extent of the string. + The unexpanded value of the string. + The kind of string, must be one of + + + + + + If or is null. + + + + + Construct an expandable string expression from a string token. Used from the parser after parsing + the nested tokens. This method is internal mainly so we can avoid validating . + + + + + The value of string, not including the quote characters and without any variables replaced. + This property is never null. + + + + + The type of string. + + + + + A non-empty collection of expressions contained within the string. The nested expressions are always either + instances of or . + + + + + Copy the ExpandableStringExpressionAst instance + + + + + The type of a StringConstantExpressionAst is always typeof(string). + + + + + The format expression needed to execute this ast. It is generated by the scanner, it is not provided by clients. + + + + + The ast that represents an anonymous script block expression, e.g. { dir }. + + + + + Construct a script block expression. + + The extent of the script block, from the opening curly brace to the closing curly brace. + The script block. + + If or is null. + + + + + The ast for the scriptblock that this ast represent. This property is never null. + + + + + Copy the ScriptBlockExpressionAst instance + + + + + The result of a is always typeof(). + + + + + The ast that represents an array literal expression, e.g. 1,2,3. An array expression, e.g. @(dir), + is represented by . An array literal expression can be constructed from a single + element, as happens with the unary comma operator, e.g. ,4. + + + + + Construct an array literal expression. + + The extent of all of the elements. + The collection of asts that represent the array literal. + + If is null. + + + If is null or is an empty collection. + + + + + The non-empty collection of asts of the elements of the array, or null if no elements were specified (e.g. @()). + + + + + Copy the ArrayLiteralAst instance + + + + + The result of an is always typeof(object[]). + + + + + The ast that represents a hash literal, e.g. @{a = 1}. + + + + + Construct a hash literal ast. + + The extent of the literal, from '@{' to the closing '}'. + The optionally null or empty list of key/value pairs. + + If is null. + + + + + The pairs of key names and asts for values used to construct the hash table. + + + + + Copy the HashtableAst instance + + + + + The result type of a is always typeof(). + + + + + The ast that represents an array expression, e.g. @(1). The array literal (e.g. 1,2,3) is + represented by . + + + + + Construct an expression that forces the result to be an array. + + The extent of the expression, including the opening '@(' and closing ')'. + The statements executed as part of the expression. + + If or is null. + + + + + The expression/statements represented by this sub-expression. + + + + + Copy the ArrayExpressionAst instance + + + + + The result of an ArrayExpressionAst is always typeof(object[]). + + + + + The ast that represents an expression (or pipeline) that is enclosed in parentheses, e.g. (1) or (dir) + + + + + Construct a parenthesized expression. + + The extent of the expression, including the opening and closing parentheses. + The pipeline (or expression) enclosed in parentheses. + + If or is null. + + + + + The pipeline (which is frequently but not always an expression) for this parenthesized expression. + This property is never null. + + + + + Copy the ParenExpressionAst instance + + + + + The ast that represents a subexpression, e.g. $(1). + + + + + Construct a subexpression. + + The extent of the expression. + + + If or is null. + + + + + The expression/statements represented by this sub-expression. This property is never null. + + + + + Copy the SubExpressionAst instance + + + + + The ast that represents a "using" expression, e.g. $using:pshome + + + + + Construct a using expression. + + The extent of the using expression. + The sub-expression of the using expression. + + If or is null. + + + + + The expression represented by this using expression. This property is never null. + + + + + Copy the UsingExpressionAst instance + + + + + Get the underlying "using variable" from a UsingExpressionAst + + + A UsingExpressionAst + + + The underlying VariableExpressionAst of the UsingExpression + + + + + A UsingExpressionAst must contains a VariableExpressionAst + + + + + + + The ast that represents an index expression, e.g. $a[0]. + + + + + Construct an ast for an index expression. + + The extent of the expression. + The expression being indexed. + The index expression. + + If , , or is null. + + + + + Return the ast for the expression being indexed. This value is never null. + + + + + Return the ast for the index expression. This value is never null. + + + + + Copy the IndexExpressionAst instance + + + + + The help content specified via help comments for a given script or script function. + + + + + The help content of the .SYNOPSIS section, if specified, otherwise null. + + + + + The help content of the .DESCRIPTION section, if specified, otherwise null. + + + + + The help content of the .NOTES section, if specified, otherwise null. + + + + + The help content for each parameter where help content is specified. The + key is the parameter name, the value is the help content. + + TODO, Changing this to an IDictionary because ReadOnlyDictionary is available only in .NET 4.5 + This is a temporary workaround and will be fixed later. Tracked by Win8: 354135 + + + + The help content from all of the specified .LINK sections. + + + + + The help content from all of the specified .EXAMPLE sections. + + + + + The help content from all of the specified .INPUT sections. + + + + + The help content from all of the specified .OUTPUT sections. + + + + + The help content of the .COMPONENT section, if specified, otherwise null. + + + + + The help content of the .ROLE section, if specified, otherwise null. + + + + + The help content of the .FUNCTIONALITY section, if specified, otherwise null. + + + + + The help content of the .FORWARDHELPTARGETNAME section, if specified, otherwise null. + + + + + The help content of the .FORWARDHELPCATEGORY section, if specified, otherwise null. + + + + + The help content of the .REMOTEHELPRUNSPACE section, if specified, otherwise null. + + + + + The help content of the .MAMLHELPFILE section, if specified, otherwise null. + + + + + Returns the help info as a comment block. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Searches an AST, using the evaluation function provided by either of the constructors + + + + + Default implementation of interface + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Default implementation of interface + + + + + + + + + + + + + + + + + + + + + + + + + + + + This flag allow us some optimizations, if usings don't have assemblies and modules. + + + + + Bake types and creates a dynamic assembly. + This method should be called only for rootAsts (i.e. script file root ScriptBlockAst). + + + non-empty array of TypeDefinitionAst + Assembly with defined types + + + + Take module info of module that can be already loaded or not and loads it. + + + module info of the same module, but loaded + + + + The parser that parses PowerShell script and returns a , tokens, and error messages + if the script cannot be parsed successfullly. + + + + + Parse input from the specified file. + + The name of the file to parse. + Returns the tokens from parsing the script. + Returns errors, if any, discovered while parsing the script. + The that represents the input script file. + + + + Parse input that does not come from a file. + + The input to parse. + Returns the tokens from parsing the script. + Returns errors, if any, discovered while parsing the script. + The that represents the input script file. + + + + Parse input that does not come from a file. + + The input to parse. + The fileName if present or null. + Returns the tokens from parsing the script. + Returns errors, if any, discovered while parsing the script. + The that represents the input script file. + + + + Parses the specified constant hashtable string into a Hashtable object + + The Hashtable string + the Hashtable object + + + + + Parse a single statement. + + A statement ast. Never returns null, always returns PipelineAst.EmptyPipeline if there was no statement. + + + + Handle the InlineScript syntax in the script workflow + + + + + true -- InlineScript parsing successful + false -- InlineScript parsing unsuccessful + + + + + Reads an argument expression for a keyword or keyword parameter. + This can be either a bare word or an expression + + the token of the associated keyword + + + + Parse a dynamic keyword statement which will be either of the form + keyword [parameters] [name] { a=1; b=2; } # constructor with properties + or + keyword [parameters] [name] { ... } # constructor with a simple body. + or keywordcommand parameters + This custom keyword does not introduce a new AST node type. Instead it generates a + CommandAst that calls a PowerShell command to implement the keyword's logic. + This command has one of two signatures: + keywordImplCommand + + The name of the function to invoke + The data for this keyword definition + + + + + Parse a catch block. + + + Set to the last thing scanned that is definitely part of the catch, but only set after issuing an error. + + + If there are any errors and CatchBlockRule is returning null, this list is used to return back any asts + consumed here (essentially the type constraints.) + + A catch clause, or null there is no catch or there was some error. + + + + + + + + + Creates a new parse error. + + The IScriptExtent that represents the location of the error. + The error ID to associate with the error. + The message of the error. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a single point in a script. The script may come from a file or interactive input. + + + + + The name of the file, or if the script did not come from a file, then null. + + + + + The line number of the position, with the value 1 being the first line. + + + + + The column number of the position, with the value 1 being the first column. + + + + + The offset from the beginning of the script. + + + + + The complete text of the line that this position is included on. + + + + + The complete script that this position is included in. + + + + + Represents the a span of text in a script. + + + + + The filename the extent includes, or null if the extent is not included in any file. + + + + + The starting position of the extent. + + + + + The end position of the extent. This position is actually 1 character past the end of the extent. + + + + + The line number at the beginning of the extent, with the value 1 being the first line. + + + + + The column number at the beginning of the extent, with the value 1 being the first column. + + + + + The line number at the end of the extent, with the value 1 being the first line. + + + + + The column number at the end of the extent, with the value 1 being the first column. + + + + + The script text that the extent includes. + + + + + The starting offset of the extent + + + + + The ending offset of the extent + + + + + A few utilty functions for script positions. + + + + + Return a unique position representing an empty or missing position. + + + + + Return a unique extent repesenting an empty or missing extent. + + + + + Return a message that looks like: + + At {filename}:{line} char:{column} + + $x + @y + + ~ + + + + + Return a message that looks like: + 12+ $x + <<<< $b + + + + + Represents a single point in a script. The script may come from a file or interactive input. + + + + + Creates a new script position, which represents a point in a script + + The name of the file, or if the script did not come from a file, then null. + The line number of the position, with the value 1 being the first line. + The column number of the position, with the value 1 being the first column. + The complete text of the line that this position is included on. + + + + Creates a new script position, which represents a point in a script + + The name of the file, or if the script did not come from a file, then null. + The line number of the position, with the value 1 being the first line. + The column number of the position, with the value 1 being the first column. + The complete text of the line that this position is included on. + The complete script text. Optional, can be null. + + + + The name of the file, or if the script did not come from a file, then null. + + + + + The line number of the position, with the value 1 being the first line. + + + + + The column number of the position, with the value 1 being the first column. + + + + + The offset from the beginning of the script, always return 0. + + + + + The complete text of the line that this position is included on. + + + + + The complete script that this position is included in. + + + + + A script extent used to customize the display of error location information + + + + + Creates a new ScriptExtent class. + + + + + The name of the file, or if the script did not come from a file, then null. + + + + + The starting position of the extent. + + + + + The end position of the extent. This position is actually 1 character past the end of the extent. + + + + + The line number at the beginning of the extent, with the value 1 being the first line. + + + + + The column number at the beginning of the extent, with the value 1 being the first column. + + + + + The line number at the end of the extent, with the value 1 being the first line. + + + + + The column number at the end of the extent, with the value 1 being the first column. + + + + + The start offset (always returns 0) + + + + + The end offset (always returns 0) + + + + + The script text that the extent includes. + + + + + Each Visit* method in returns one of these values to control + how visiting nodes in the AST should proceed. + + + + + Continue visiting all nodes the ast. + + + + + Skip visiting child nodes of currently visited node, but continue visiting other nodes. + + + + + Stop visiting all nodes. + + + + + AstVisitor is used for basic scenarios requiring traveral of the nodes in an Ast. + An implementation of AstVisitor does not explicitly traverse the Ast, instead, + the engine traverses all nodes in the Ast and calls the appropriate method on each node. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + AstVisitor for new Ast node types + + + + + + + + + + + + + + + + + + + + + + + + + + Implement this interface when you implement or when + you want to do something after possibly visiting the children of the ast. + + + + + The function called on each ast node after processing it's children. + + The ast whose children have all been processed and whose siblings + and parents are about to be processed. + + + + Check that label exists inside the method. + Only call it, when label is present and can be calculated in compile time. + + BreakStatementAst or ContinueStatementAst + label name. Can be null + + + + Check that flow doesn't leave finally. + + + If label is null, either it's a break/continue to an unknown label + (and unknown does not mean not specified, it means it's an expression we can't evaluate) or we have a return statement. + + + + + Check if the ast is a valid target for assignment. If not, the action reportError is called. + + The target of an assignment. + True if the operator '=' is used, false otherwise (e.g. false on '+=' or '++'.) + The action called to report any errors. + + + + Check if it is a qualified DSC resource type + + + + + + + + Look up all the way up until find all the required members + + + The type definition ast of the DSC resource type + flag to indicate if the class contains Set method. + flag to indicate if the class contains Get method. + flag to indicate if the class contains Test method. + flag to indicate if the class contains Key property. + + + + Check if it is a Get method with correct return type and signature + + + The function member AST + True if it is a Get method with qualified return type and signaure; otherwise, false. + + + + Check if it is a Test method with correct return type and signature + + The function member AST + True if it is a Test method with qualified return type and signaure; otherwise, false. + + + + Check if it is a Set method with correct return type and signature + + The function member AST + True if it is a Set method with qualified return type and signaure; otherwise, false. + + + + True if it is a key property. + + + The property member AST + True if it is a key property; otherwise, false. + + + + TypeTable maps namespace (currently it's module name) to the types under this namespace. + For the types defined in the current namespace (module) we use CURRENT_NAMESPACE as a namespace. + + + + + Add Type to the symbol Table. + + + + + + Add Type from the different module to the symbol Table. + + + + + + + Return the most deep typeDefinitionAst in the current context. + + typeDefinitionAst or null, if currently not in type definition + + + + Resolves using module to a collection of PSModuleInfos. Doesn't throw. + PSModuleInfo objects are retunred in the right order: i.e. if multiply verions of the module + is presented on the system and user didn't specify version, we will return all of them, but newer one would go first. + + using statement + If exception happens, return exception object. + + True if in the module name uses wildcardCharacter. + We don't want to resolve any wild-cards in using module. + + True if module hashtable contains constant value (it's our requirement). + Modules, if can resolve it. null if any problems happens. + + + + The specific kind of token. + + + + An unknown token, signifies an error condition. + + + + A variable token, always begins with '$' and followed by the variable name, possibly enclose in curly braces. + Tokens with this kind are always instances of . + + + + + A splatted variable token, always begins with '@' and followed by the variable name. + Tokens with this kind are always instances of . + + + + + A parameter to a command, always begins with a dash ('-'), followed by the parameter name. + Tokens with this kind are always instances of . + + + + + Any numerical literal token. + Tokens with this kind are always instances of . + + + + + A label token - always begins with ':', followed by the label name. + Tokens with this kind are always instances of . + + + + + A simple identifier, always begins with a letter or '_', and is followed by letters, numbers, or '_'. + + + + + A token that is only valid as a command name, command argument, function name, or configuration name. It may contain + characters not allowed in identifiers. + Tokens with this kind are always instances of + or if the token contains variable + references or subexpressions. + + + + A newline (one of '\n', '\r', or '\r\n'). + + + A line continuation (backtick followed by newline). + + + A single line comment, or a delimited comment. + + + Marks the end of the input script or file. + + + + A single quoted string literal. + Tokens with this kind are always instances of . + + + + + A double quoted string literal. + Tokens with this kind are always instances of + even if there are no nested tokens to expand. + + + + + A single quoted here string literal. + Tokens with this kind are always instances of . + + + + + A double quoted here string literal. + Tokens with this kind are always instances of . + even if there are no nested tokens to expand. + + + + The opening parenthesis token '('. + + + The closing parenthesis token ')'. + + + The opening curly brace token '{'. + + + The closing curly brace token '}'. + + + The opening square brace token '['. + + + The closing square brace token ']'. + + + The opening token of an array expression '@('. + + + The opening token of a hash expression '@{'. + + + The opening token of a sub-expression '$('. + + + The statement terminator ';'. + + + The (unimplemented) operator '&&'. + + + The (unimplemented) operator '||'. + + + The invocation operator '&'. + + + The pipe operator '|'. + + + The unary or binary array operator ','. + + + The pre-decrement operator '--'. + + + The pre-increment operator '++'. + + + The range operator '..'. + + + The static member access operator '::'. + + + The instance member access or dot source invocation operator '.'. + + + The logical not operator '!'. + + + The multiplication operator '*'. + + + The division operator '/'. + + + The modulo division (remainder) operator '%'. + + + The addition operator '+'. + + + The substraction operator '-'. + + + The assignment operator '='. + + + The addition assignment operator '+='. + + + The subtraction assignment operator '-='. + + + The multiplcation assignment operator '*='. + + + The division assignment operator '/='. + + + The modulo division (remainder) assignment operator '%='. + + + A redirection operator such as '2>&1' or '>>'. + + + The (unimplemented) stdin redirection operator '<'. + + + The string format operator '-f'. + + + The logical not operator '-not'. + + + The bitwise not operator '-bnot'. + + + The logical and operator '-and'. + + + The logical or operator '-or'. + + + The logical exclusive or operator '-xor'. + + + The bitwise and operator '-band'. + + + The bitwise or operator '-bor'. + + + The bitwise exclusive or operator '-xor'. + + + The join operator '-join'. + + + The case insensitive equal operator '-ieq' or '-eq'. + + + The case insensitive not equal operator '-ine' or '-ne'. + + + The case insensitive greater than or equal operator '-ige' or '-ge'. + + + The case insensitive greater than operator '-igt' or '-gt'. + + + The case insensitive less than operator '-ilt' or '-lt'. + + + The case insensitive less than or equal operator '-ile' or '-le'. + + + The case insensitive like operator '-ilike' or '-like'. + + + The case insensitive not like operator '-inotlike' or '-notlike'. + + + The case insensitive match operator '-imatch' or '-match'. + + + The case insensitive not match operator '-inotmatch' or '-notmatch'. + + + The case insensitive replace operator '-ireplace' or '-replace'. + + + The case insensitive contains operator '-icontains' or '-contains'. + + + The case insensitive notcontains operator '-inotcontains' or '-notcontains'. + + + The case insensitive in operator '-iin' or '-in'. + + + The case insensitive notin operator '-inotin' or '-notin' + + + The case insensitive split operator '-isplit' or '-split'. + + + The case sensitive equal operator '-ceq'. + + + The case sensitive not equal operator '-cne'. + + + The case sensitive greater than or equal operator '-cge'. + + + The case sensitive greater than operator '-cgt'. + + + The case sensitive less than operator '-clt'. + + + The case sensitive less than or equal operator '-cle'. + + + The case sensitive like operator '-clike'. + + + The case sensitive notlike operator '-cnotlike'. + + + The case sensitive match operator '-cmatch'. + + + The case sensitive not match operator '-cnotmatch'. + + + The case sensitive replace operator '-creplace'. + + + The case sensitive contains operator '-ccontains'. + + + The case sensitive not contains operator '-cnotcontains'. + + + The case sensitive in operator '-cin'. + + + The case sensitive not in operator '-notin'. + + + The case sensitive split operator '-csplit'. + + + The type test operator '-is'. + + + The type test operator '-isnot'. + + + The type conversion operator '-as'. + + + The post-increment operator '++'. + + + The post-decrement operator '--'. + + + The shift left operator. + + + The shift right operator. + + + The PS class base class and implemented interfaces operator ':'. Also used in base class ctor calls. + + + The 'begin' keyword. + + + The 'break' keyword. + + + The 'catch' keyword. + + + The 'class' keyword. + + + The 'continue' keyword. + + + The 'data' keyword. + + + The (unimplemented) 'define' keyword. + + + The 'do' keyword. + + + The 'dynamicparam' keyword. + + + The 'else' keyword. + + + The 'elseif' keyword. + + + The 'end' keyword. + + + The 'exit' keyword. + + + The 'filter' keyword. + + + The 'finally' keyword. + + + The 'for' keyword. + + + The 'foreach' keyword. + + + The (unimplemented) 'from' keyword. + + + The 'function' keyword. + + + The 'if' keyword. + + + The 'in' keyword. + + + The 'param' keyword. + + + The 'process' keyword. + + + The 'return' keyword. + + + The 'switch' keyword. + + + The 'throw' keyword. + + + The 'trap' keyword. + + + The 'try' keyword. + + + The 'until' keyword. + + + The (unimplemented) 'using' keyword. + + + The (unimplemented) 'var' keyword. + + + The 'while' keyword. + + + The 'workflow' keyword. + + + The 'parallel' keyword. + + + The 'sequence' keyword. + + + The 'InlineScript' keyword + + + The "configuration" keyword + + + The token kind for dynamic keywords + + + The 'public' keyword + + + The 'private' keyword + + + The 'static' keyword + + + The 'interface' keyword + + + The 'enum' keyword + + + The 'namespace' keyword + + + The 'module' keyword + + + The 'type' keyword + + + The 'assembly' keyword + + + The 'command' keyword + + + The 'hidden' keyword + + + The 'base' keyword + + + + Flags that specify additional information about a given token. + + + + + The token has no flags. + + + + + The precedence of the logical operators '-and', '-or', and '-xor'. + + + + + The precedence of the bitwise operators '-band', '-bor', and '-bxor' + + + + + The precedence of comparison operators including: '-eq', '-ne', '-ge', '-gt', '-lt', '-le', '-like', '-notlike', + '-match', '-notmatch', '-replace', '-containts', '-notcontains', '-in', '-notin', '-split', '-join', '-is', '-isnot', '-as', + and all of the case sensitive variants of these operators, if they exists. + + + + + The precedence of the binary operators '+' and '-'. + + + + + The precedence of the operators '*', '/', and '%'. + + + + + The precedence of the '-f' operator. + + + + + The precedence of the '..' operator. + + + + + A bitmask to get the precedence of binary operators. + + + + + The token is a keyword. + + + + + The token one of the keywords that is a part of a script block: 'begin', 'process', 'end', or 'dynamicparam'. + + + + + The token is a binary operator. + + + + + The token is a unary operator. + + + + + The token is a case sensitive operator such as '-ceq' or '-ccontains'. + + + + + The operators '&', '|', and the member access operators ':' and '::'. + + + + + The token is one of the assignment operators: '=', '+=', '-=', '*=', '/=', or '%=' + + + + + The token is scanned identically in expression mode or command mode. + + + + + The token has some error associated with it. For example, it may be a string missing it's terminator. + + + + + The operator is not allowed in restricted language mode or in the data language. + + + + + The token is either a prefix or postfix '++' or '--'. + + + + + The token names a command in a pipeline. + + + + + The token names a member of a class. + + + + + The token names a type. + + + + + The token names an attribute. + + + + + The token is a valid operator to use when doing constant folding. + + + + + The token is a statement but does not support attributes. + + + + + A utility class to get statically known traits and invariant traits about PowerShell tokens. + + + + + Return all the flags for a given TokenKind. + + + + + Return true if the TokenKind has the given trait. + + + + + Return the text for a given TokenKind. + + + + + Represents many of the various PowerShell tokens, and is the base class for all PowerShell tokens. + + + + + Return the text of the token as it appeared in the script. + + + + + Return the flags for the token. + + + + + Return the kind of token. + + + + + Returns true if the token is in error somehow, such as missing a closing quote. + + + + + Return the extent in the script of the token. + + + + + Return the text of the token as it appeared in the script. + + + + + A constant number token. The value may be any numeric type including int, long, double, or decimal. + + + + + The numeric value of this token. + + + + + A parameter to a cmdlet (always starts with a dash, like -Path). + + + + + The parameter name without the leading dash. It is never + null or an empty string. + + + + + When passing an parameter with argument in the form: + dir -Path:* + The colon is part of the ParameterToken. This property + returns true when this form is used, false otherwise. + + + + + A variable token - either a regular variable, such as $_, or a splatted variable like @PSBoundParameters. + + + + + The simple name of the variable, without any scope or drive qualification. + + + + + The full details of the variable path. + + + + + The base class for any string token, including single quoted string, double quoted strings, and here strings. + + + + + The string value without quotes or leading newlines in the case of a here string. + + + + + A single quoted string, or a single quoted here string. + + + + + A double quoted string, or a double quoted here string. + + + + + This collection holds any tokens from variable references and sub-expressions within the string. + For example: + "In $([DateTime]::Now.Year - $age), $name was born" + has a nested expression with a sequence of tokens, plus the variable reference $name. + + + + + + + + + + + + + + + An abstract base class for merging and file redirections. + + + + + The (currently unimplemented) input redirection. + + + + + A merging redirection. + + + + + The stream being redirected. + + + + + The stream being written to. + + + + + A file redirection. + + + + + The stream being redirected. + + + + + True if the redirection should append the file rather than create a new file. + + + + + Defines the name modes for a dynamic keyword. A name expression may be required, optional or not permitted. + + + + + This keyword does not take a name value + + + + + Name must be present and simple non-empty bare word + + + + + Name must be present but can also be an expression + + + + + Name may be optionally present, but if it is present, it must be a non-empty bare word. + + + + + Name may be optionally present, expression or bare word + + + + + Defines the body mode for a dynamic keyword. It can be a scriptblock, hashtable or command which means no body + + + + + The keyword act like a command + + + + + The keyword has a scriptblock body + + + + + The keyword has hashtable body + + + + + Defines the schema/behaviour for a dynamic keyword. + a constrained + + + + + Defines a dictionary of dynamic keywords, stored in thread-local storage. + + + + + stack of DynamicKeywords Cache + + + + + + Reset the keyword table to a new empty collection. + + + + + Push current dynamicKeywords cache into stack + + + + + Pop up previous dynamicKeywords cache + + + + + + + + + + + + Returns a copied list of all of the existing dynamic keyword definitions. + + + + + + + + + + + + + + + + + + + Remove a single entry from the dynamic keyword collection + and clean up any assoicated data. + + + + + + Check if it is a hidden keyword + + + + + + + A set of dynamic keywords that are not supposed to be used in script directly. + They are for internal use only. + + + + + Duplicates the DynamicKeyword + + A copy of the DynamicKeyword + + + + The name of the module that implements the function corresponding to this keyword. + + + + + The version of the module that implements the function corresponding to this keyword. + + + + + The keyword string + If an alias qualifier exist, use alias + + + + + The keyword resource name string + + + + + Set to true if we should be looking for a scriptblock instead of a hashtable + + + + + If true, then don't use the marshalled call. Just + rewrite the node as a simple direct function call. + If NameMode is other than NoName, then the name of the instance + will be passed as the parameter -InstanceName. + + + + + + This allows you to specify if the keyword takes a name argument and if so, what form that takes. + + + + + Indicate that the nothing should be added to the AST for this + dynamic keyword. + + + + + Indicate that the keyword is reservce for future use by powershell + + + + + Contains the list of properties that are reserved for future use + + + + + A list of the properties allowed for this constuctor + + + + + A list of the parameters allowed for this constuctor. + + + + + A custom function that gets executed at parsing time before parsing dynamickeyword block + The delegate has one parameter: DynamicKeyword + + + + + A custom function that gets executed at parsing time after parsing dynamickeyword block + + + + + A custom function that checks semantic for the given + + + + + Get allowed keyword list for a given keyword + + + + NULL if no keyword allowed for a given + + + + Metadata about a member property for a dynamic keyword. + + + + + The name of the property + + + + + The required type of the property + + + + + Any attributes that the property has + + + + + List of strings that may be used as values for this property. + + + + + Mapping the descriptive values to the actual values + + + + + Indicates that this property is mandatory and must be present. + + + + + Indicates that this property is a key. + + + + + Indicates a range constraint on the property value + + + + + Metadata about a parameter for a dynamic keyword. Adds one + new property to the base classL Switch for switch parameters + (THere is no such thing as a switch property...) + + + + + Type if this is a switch parameter and takes no argument + + + + the first character + indicate if it's a hex number + indicate if it's a real number + indicate the type suffix + indicate the specified multiplier + + return null if the token is not a number + OR + return the string format of the number + + + + + Inherited from InvalidCastException, because it happens in [string] -> [Type] convertion. + + + + + A type IsPublic if IsPublic or (IsNestedPublic and is nested in public type(s)) + + + + + A typeInfo is public if IsPublic or (IsNestedPublic and is nested in public type(s)) + + + + + A set of assemblies that we have searched from but found no matching type. By checking this set, we can + avoid searching from some assemblies multiple times. + This set is made thread static, so that type resolution happens on the same thread can reuse the HashSet + without having to create a new HashSet instance every time. This will reduce GC given that type resolution + is a frequent operation in powershell script. + + + This set should be used directly only in the method CallResolveTypeNameWorkerHelper. + + + + + A helper method to call ResolveTypeNameWorker in steps. + + + + + This routine converts a string into a Type object using the msh rules. + + A string representing the name of the type to convert + The exception, if one happened, trying to find the type + A type if the conversion was successful, null otherwise. + + + + The idea behind this class is: I should be able to re-use expensive + type resolution operation result in the same context. + Hence, this class is a key for TypeCache dictionary. + + Every SessionStateScope has TypeResolutionState. + typesDefined contains PowerShell types names defined in the current scope and all scopes above. + Same for namespaces. + + If TypeResolutionState doesn't add anything new compare to it's parent, we represent it as null. + So, when we do lookup, we need to find first non-null TypeResolutionState. + + + + + TypeResolutionState can be shared and that's why it should be represented as an immutable object. + So, we use this API to alternate TypeResolutionState, but instead of mutating existing one, we clone it. + + + + + + + Tell flow analysis that this block can flow to next block. + + + + + + Analyze a member function, marking variable references as "dynamic" (so they can be reported as errors) + and also analyze the control flow to make sure every block returns (or throws) + + + + + + + Extension methods for DynamicMetaObject. Some of these extensions help handle PSObject, both in terms of + getting the type or value from a DynamicMetaObject, but also help to generate binding restrictions that + account for values that are optionally wrapped in PSObject. + + + + + Some classes that implement IEnumerable are not considered as enumerable from the perspective of pipelines, + this binder implements those semantics. + + The standard interop ConvertBinder is used to allow third party dynamic objects to get the first chance + at the conversion in case they do support enumeration, but do not implement IEnumerable directly. + + + + + Check if the statically known type is potentially enumerable. We can avoid some dynamic sites if we know the + type is never enumerable. + + + + + This binder is used for the @() operator. + + + + + This binder creates the collection we use to do multi-assignments, e.g.: + $x,$y = $z + $x,$y,$z = 1,2,3,4,5 + The target in this binder is the RHS, the result expression is an IList where the Count matches the + number of values assigned (_elements) on the left hand side of the assign. + + + + + This binder is used to convert objects to string in specific circumstances, including: + + * The LHS of a format expression. The arguments (the RHS objects) of the format + expression are not converted to string here, that is defered to String.Format which + may have some custom formatting to apply. + * The objects passed to the format expression as part of an expandable string. In this + case, the format string is generated by the parser, so we know that there is no custom + formatting to consider. + + + + + This binder is used to optimize the conversion of the result + + + + + This binder is used to copy mutable value types when assigning to variables, otherwise just assigning the target object directly. + + + + + The binder for common binary operators. PowerShell specific binary operators are handled elsewhere. + + + + + Use the tokenzier to scan a number and convert it to a number of any type. + + + The expression that refers to a string to be converted to a number of any type. + + + Primarily used as part of an error message. If the string is not a number, we want to raise an exception saying the + string can't be converted to this type. Note that if the string is a valid number, it need not be this type. + + + + + The binder for unary operators like !, -, or +. + + + + + The binder for converting a value, e.g. [int]"42" + + + + + The binder to get the value of an indexable object, e.g. $x[1] + + + + + The binder for setting the value of an indexable element, like $x[1] = 5. + + + + + The binder for getting a member of a class, like $foo.bar or [foo]::bar + + + + + Get the actual value, as an expression, of the object represented by target. This + will get the base object if it's a psobject, plus correctly handle Nullable. + + + + + Return the binding result when no property exists. + + + + + Return the binding restriction that tests that an instance member does not exist, used when the binder + knows instance members might exist (because the name was added to some instance), but the object we're + currently binding does not have an instance member with the given member name. + + + + + Resolve the alias, throwing an exception if a cycle is detected while resolving the alias. + + + + + The binder for setting a member, like $foo.bar = 1 or [foo]::bar = 1 + + + + The target to operate against + + Arguments to the operator. The first argument must be either a scriptblock + or a string representing a 'simple where' expresson. The second is an enum that controls + the matching behaviour returning the first, last or all matching elements. + + The binding restrictions for the arguments. + + + + Check if the target type is not public + + + + + Return the full name of the target type + + + + + If type has fatal errors we cannot construct .NET type from it. + TypeBuilder.CreateTypeInfo() would throw exception. + + + + + Return base class type, never return null. + + + + return declared interfaces + + + + + The types for AstParameterArgumentPair + + + + + The base class for parameter argument pair + + + + + The parameter Ast + + + + + The argument type + + + + + Indicate if the parameter is specified + + + + + Indicate if the parameter is specified + + + + + The parameter name + + + + + The parameter text + + + + + The argument type + + + + + Represent a parameter argument pair. The argument is a pipeline input object + + + + + Represent a parameter argument pair. The argument is an array of ExpressionAst (remaining + arguments) + + + + + Get the argument + + + + + Represent a parameter argument pair. The argument is a fake object. + + + + + Represent a parameter argument pair. The parameter is a switch parameter. + + + + + Get the argument + + + + + Represent a parameter argument pair. It could be a pure argument (no parameter, only argument available); + it could be a CommandParameterAst that contains its argument; it also could be a CommandParameterAst with + another CommandParameterAst as the argument. + + + + + Indicate if the argument is contained in the CommandParameterAst + + + + + Indicate if the argument is of type CommandParameterAst + + + + + Get the argument + + + + + Runs the PowerShell parameter binding algorithm against a CommandAst, + returning information about which parameters were bound. + + + + + + Bind a CommandAst to one of PowerShell's built-in commands + + The CommandAst that represents the command invocation. + The StaticBindingResult that represents the binding. + + + + Bind a CommandAst to the specified command + + The CommandAst that represents the command invocation. + Boolean to determine whether binding should be syntactic, or should attempt + to resolve against an existing command. + + The StaticBindingResult that represents the binding. + + + + Bind a CommandAst to the specified command + + The CommandAst that represents the command invocation. + Boolean to determine whether binding should be syntactic, or should attempt + to resolve against an existing command. + + + A string array that represents parameter names of interest. If any of these are specified, + then full binding is done. + + The StaticBindingResult that represents the binding. + + + + Represents the results of the PowerShell parameter binding process. + + + + + + + + + + + + + + + Represents the binding of a parameter to its argument + + + + + + + + + + + + + + + + + + + + Represents the exception generated by the static parameter binding process + + + + + Creates a StaticBindingException + + The element associated with the exception + The parameter binding exception that got raised + + + + The command element associated with the exception. + + + + + The ParameterBindingException that this command element caused. + + + + + The pseudo binding succeeded + + + + + + + + + + + + + + + + + + The pseudo binding failed with parameter set confliction + + + + + + + + + Caller is binding a parameter argument + + + + + Caller is performing completion on a parameter argument + + + + + Caller is performing completion on a parameter name + + + + + Get the parameter binding metadata + + + Indicate the type of the piped-in argument + The CommandParameterAst the cursor is pointing at + Indicates whether pseudo binding is for argument binding, argument completion, or parameter completion. + PseudoBindingInfo + + + + Sets a temporary default host on the ExecutionContext + + ExecutionContext + + + + Restores original ExceutionContext host state. + + ExecutionContext + + + + Initialize collection/dictionary members when it's necessary + + + + + Parse the arguments to process switch parameters and parameters without a value + specified. We always eat the error (such as parameter without value) and continue + to do the binding. + + + + For parameter completion, if the cursor is pointing at a CommandParameterAst, we + should not try exact matching for that CommandParameterAst. This is to handle the + following case: + Add-Computer -domain(tab) + Add-Computer has an alias "Domain" that can exactly match this partial input, but + since the user is typing 'tab', the partial input 'domain' should not be considered + as an exact match. In this case, we don't try exact matching when calling + GetMatchingParameter(..) so as to preserve other possibilities. + + + + + Enumerates all possible types of members + + + + + An alias to another member + + + + + A property defined as a reference to a method + + + + + A property from the BaseObject + + + + + A prorperty defined by a Name-Value pair + + + + + A property defined by script language + + + + + A set of properties + + + + + A method from the BaseObject + + + + + A method defined as a reference to another method + + + + + A method defined as a script + + + + + A member that acts like a Property that takes parameters. This is not consider to be a property or a method. + + + + + A set of members + + + + + All events + + + + + All dynamic members (where PowerShell cannot know the type of the member) + + + + + All property member types + + + + + All method member types + + + + + All member types + + + + + Enumerator for all possible views available on a PSObject. + + + + + Extended methods / properties + + + + + Adapted methods / properties + + + + + Base methods / properties + + + + + All methods / properties + + + + + Match options + + + + + No options + + + + + Hidden members should be displayed + + + + + Only include members with property set to true + + + + + Serves as the base class for all members of an PSObject + + + + + Initializes a new instance of an PSMemberInfo derived class + + + + + Gets the member type + + + + + Gets the member name + + + + + Allows a derived class to set the member name... + + + + + + True if this is one of the reserved members + + + + + True if the member should be hidden when searching with PSMemberInfoInternalCollection's Match + or enumerating a collection. + This should not be settable as it would make the count of hidden properties in + PSMemberInfoInternalCollection invalid. + For now, we are carefully setting this.isHidden before adding + the members toPSObjectMembersetCollection. In the future, we might need overload for all + PSMemberInfo constructors to take isHidden. + + + + + True if this member has been added to the instance as opposed to + coming from the adapter or from type data + + + + + Gets and Sets the value of this member + + When getting the value of a property throws an exception. + This exception is also thrown if the property is an and there + is no Runspace to run the script. + When setting the value of a property throws an exception. + This exception is also thrown if the property is an and there + is no Runspace to run the script. + When some problem other then getting/setting the value happened + + + + Gets the type of the value for this member + + When there was a problem getting the property + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Serves as a base class for all members that behave like properties. + + + + + Initializes a new instance of an PSPropertyInfo derived class + + + + + Gets true if this property can be set + + + + + Gets true if this property can be read + + + + + Serves as an alias to another member + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Returns the string representation of this property + + This property as a string + + + + Initializes a new instance of PSAliasProperty setting the name of the alias + and the name of the member this alias refers to. + + name of the alias + name of the member this alias refers to + for invalid arguments + + + + Initializes a new instance of PSAliasProperty setting the name of the alias, + the name of the member this alias refers to and the type to convert the referenced + member's value. + + name of the alias + name of the member this alias refers to + the type to convert the referenced member's value + for invalid arguments + + + + Gets the name of the member this alias refers to + + + + + Gets the member this alias refers to + + + + + Gets the the type to convert the referenced member's value. It might be + null when no conversion is done. + + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets the member type + + + + + Gets the type of the value for this member + + + When + the alias has not been added to an PSObject or + the alias has a cycle or + an aliased member is not present + + + + + Gets true if this property can be set + + + When + the alias has not been added to an PSObject or + the alias has a cycle or + an aliased member is not presen + + + + + Gets true if this property can be read + + + When + the alias has not been added to an PSObject or + the alias has a cycle or + an aliased member is not present + + + + + Gets and Sets the value of this member + + + When + the alias has not been added to an PSObject or + the alias has a cycle or + an aliased member is not present + + When getting the value of a property throws an exception + When setting the value of a property throws an exception + + + + Serves as a property implemented with references to methods for getter and setter. + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Returns the string representation of this property + + This property as a string + + + + Called from TypeTableUpdate before SetSetterFromTypeTable is called + + + + + Called from TypeTableUpdate after SetGetterFromTypeTable is called + + + + + Used from TypeTable with the internal constructor + + + + + Used from TypeTable with the internal constructor + + + + + Used from TypeTable to delay setting getter and setter + + + + + Initializes a new instance of the PSCodeProperty class as a read only property. + + name of the property + This should be a public static non void method taking one PSObject parameter. + if namme is null or empty or getterCodeReference is null + if getterCodeReference doesn't have the right format. + + + + Initializes a new instance of the PSCodeProperty class. Setter or getter can be null, but both cannot be null. + + name of the property + This should be a public static non void method taking one PSObject parameter. + This should be a public static void method taking 2 parameters, where the first is an PSObject. + when methodForGet and methodForSet are null + + if: + - getterCodeReference doesn't have the right format, + - setterCodeReference doesn't have the right format, + - both getterCodeReference and setterCodeReference are null. + + + + + Gets the method used for the properties' getter. It might be null. + + + + + Gets the method used for the properties' setter. It might be null. + + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets the member type + + + + + Gets true if this property can be set + + + + + Gets true if this property can be read + + + + + Gets and Sets the value of this member + + When getting and there is no getter or when the getter throws an exception + When setting and there is no setter or when the setter throws an exception + + + + Gets the type of the value for this member + + If there is no property getter + + + + Used to access the adapted or base properties from the BaseObject + + + + + Returns the string representation of this property + + This property as a string + + + + used by the adapters to keep intermediate data used between DoGetProperty and + DoGetValue or DoSetValue + + + + + This will be either instance.adapter or instance.clrAdapter + + + + + Constructs a property from a serialized value + + name of the property + value of the property + + + + Constructs this proprerty + + name of the property + adapter used in DoGetProperty + object passed to DoGetProperty + adapter specific data + for invalid arguments + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets the member type + + + + + Gets or sets the value of this property + + When getting the value of a property throws an exception + When setting the value of a property throws an exception + + + + Gets true if this property can be set + + + + + Gets true if this property can be read + + + + + Gets the type of the value for this member + + + + + A property created by a user-defined PSPropertyAdapter + + + + + Creates a property for the given base object + + name of the property + an adapter can use this object to keep any arbitrary data it needs + for invalid arguments + + + + Copy an adapted property. + + + + + Gets the object the property belongs to + + + + + Gets the data attached to this property + + + + + Serves as a property that is a simple name-value pair. + + + + + Returns the string representation of this property + + This property as a string + + + + Initiializes a new instance of the PSNoteProperty class. + + name of the property + value of the property + for an empty or null name + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets PSMemberTypes.NoteProperty + + + + + Gets true since the value of an PSNoteProperty can always be set + + + + + Gets true since the value of an PSNoteProperty can always be obtained + + + + + Gets or sets the value of this property + + + + + Gets the type of the value for this member + + + + + Serves as a property that is a simple name-value pair. + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Returns the string representation of this property + + This property as a string + + + + Initiializes a new instance of the PSVariableProperty class. This is + a subclass of the NoteProperty that wraps a variable instead of a simple value. + + The variable to wrap + for an empty or null name + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo, + Note that it returns another reference to the variable, not a reference + to a new variable... + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets PSMemberTypes.NoteProperty + + + + + True if the underlying variable is settable... + + + + + Gets true since the value of an PSNoteProperty can always be obtained + + + + + Gets or sets the value of this property + + + + + Gets the type of the value for this member + + + + + Serves as a property implemented with getter and setter scripts. + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Returns the string representation of this property + + This property as a string + + + + Gets the script used for the property getter. It might be null. + + + + + Gets the script used for the property setter. It might be null. + + + + + Initializes an instance of the PSScriptProperty class as a read only property. + + name of the property + script to be used for the property getter. $this will be this PSObject. + for invalid arguments + + + + Initializes an instance of the PSScriptProperty class as a read only + property. getterScript or setterScript can be null, but not both. + + Name of this property + script to be used for the property getter. $this will be this PSObject. + script to be used for the property setter. $this will be this PSObject and $args(1) will be the value to set. + for invalid arguments + + + + Initializes an instance of the PSScriptProperty class as a read only + property, using the text of the properties to support lazy initialization. + + Name of this property + script to be used for the property getter. $this will be this PSObject. + script to be used for the property setter. $this will be this PSObject and $args(1) will be the value to set. + Language mode to be used during script block evaluation. + for invalid arguments + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets the member type + + + + + Gets true if this property can be set + + + + + Gets true if this property can be read + + + + + Gets and Sets the value of this property + + When getting and there is no getter, + when the getter throws an exception or when there is no Runspace to run the script. + + When setting and there is no setter, + when the setter throws an exception or when there is no Runspace to run the script. + + + + Gets the type of the value for this member. Currently this always returns typeof(object).FullName. + + + + + If null then there are no constraints + + + + + If null then there are no constraints + + + + + Serves as a base class for all members that behave like methods. + + + + + Initializes a new instance of a class derived from PSMethodInfo. + + + + + Invokes the appropriate method overload for the given arguments and returns its result. + + arguments to the method + return value from the method + if arguments is null + For problems finding an appropriate method for the arguments + For exceptions invoking the method. + This exception is also thrown for an when there is no Runspace to run the script. + + + + Gets a list of all the overloads for this method + + + + + Gets the value of this member. The getter returns the PSMethodInfo itself. + + When setting the member + + This is not the returned value of the method even for Methods with no arguments. + The getter returns this (the PSMethodInfo itself). The setter is not supported. + + + + + Serves as a method implemented with a reference to another method. + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Returns the string representation of this member + + This property as a string + + + + Used from TypeTable + + + + + Initializes a new instance of the PSCodeMethod class. + + name of the property + this should be a public static method where the first parameter is an PSObject. + for invalid arguments + if the codeReference does not have the right format + + + + Gets the method referenced by this PSCodeMethod + + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets the member type + + + + + Invokes CodeReference method and returns its results. + + arguments to the method + return value from the method + if arguments is null + + When + could CodeReference cannot match the given argument count or + could not convert an argument to the type required + + For exceptions invoking the CodeReference + + + + Gets the definition for CodeReference + + + + + Gets the type of the value for this member. Currently this always returns typeof(PSCodeMethod).FullName. + + + + + Serves as a method implemented with a script + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Returns the string representation of this member + + This property as a string + + + + Gets the script implementing this PSScriptMethod + + + + + Initializes a new instance of PSScriptMethod + + name of the method + script to be used when calling the method. + for invalid arguments + + + + + + + + + Used by TypeTable. + TypeTable might be shared between multiple runspaces and + ScriptBlock is not shareable. We decided to Clone as needed + instead of Cloning whenever a shared TypeTable is attached + to a Runspace to save on Memory. + + + + + Invokes Script method and returns its results. + + arguments to the method + return value from the method + if arguments is null + For exceptions invoking the Script or if there is no Runspace to run the script. + + + + Gets a list of all the overloads for this method + + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets the member type + + + + + Gets the type of the value for this member. Currently this always returns typeof(object).FullName. + + + + + Used to access the adapted or base methods from the BaseObject + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Returns the string representation of this member + + This property as a string + + + + Constructs this method + + name + adapter to be used invoking + baseObject for the methods + adapterData from adapter.GetMethodData + for invalid arguments + + + + Constructs a PSMethod + + name + adapter to be used invoking + baseObject for the methods + adapterData from adapter.GetMethodData + true if this member is a special member, false otherwise. + true if this member is hidden, false otherwise. + for invalid arguments + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets the member type + + + + + Invokes the appropriate method overload for the given arguments and returns its result. + + arguments to the method + return value from the method + if arguments is null + For problems finding an appropriate method for the arguments + For exceptions invoking the method + + + + Invokes the appropriate method overload for the given arguments and returns its result. + + constraints + arguments to the method + return value from the method + if arguments is null + For problems finding an appropriate method for the arguments + For exceptions invoking the method + + + + Gets a list of all the overloads for this method + + + + + Gets the type of the value for this member. This always returns typeof(PSMethod).FullName. + + + + + True if the method is a special method like GET/SET property accessor methods. + + + + + Used to access parameterized properties from the BaseObject + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Returns the string representation of this member + + This property as a string + + + + Constructs this parameterized proprerty + + name of the property + adapter used in DoGetMethod + object passed to DoGetMethod + adapter specific data + for invalid arguments + + + + Gets true if this property can be set + + + + + Gets true if this property can be read + + + + + Invokes the getter method and returns its result + + arguments to the method + return value from the method + if arguments is null + When getting the value of a property throws an exception + + + + Invokes the setter method + + value to set this property with + arguments to the method + if arguments is null + When setting the value of a property throws an exception + + + + Returns a collection of the definitions for this property + + + + + Gets the type of the value for this member. + + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets the member type + + + + + Serves as a set of members + + + + + Returns the string representation of this member + + This property as a string + + + + Initializes a new instance of PSMemberSet with no initial members + + name for the member set + for invalid arguments + + + + Initializes a new instance of PSMemberSet with all the initial members in + + name for the member set + members in the member set + for invalid arguments + + + + Used to create the Extended MemberSet + + name of the memberSet + object associated with this memberset + for invalid arguments + + + + Gets a flag indicating whether the memberset will inherit members of the memberset + of the same name in the "parent" class. + + + + + Gets the internal member collection + + + + + Gets the member collection + + + + + Gets the Property collection, or the members that are actually properties. + + + + + Gets the Method collection, or the members that are actually methods. + + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets the member type. For PSMemberSet the member type is PSMemberTypes.MemberSet. + + + + + Gets the value of this member. The getter returns the PSMemberSet itself. + + When trying to set the property + + + + Gets the type of the value for this member. This returns typeof(PSMemberSet).FullName. + + + + + This MemberSet is used internally to represent the memberset for properties + PSObject, PSBase, PSAdapted members of a PSObject. Having a specialized + memberset enables delay loading the members for these members. This saves + time loading the members of a PSObject. + + + This is added to improve hosting PowerShell's PSObjects in a ASP.Net GridView + Control + + + + + Constructs the specialized member set. + + + Should be one of PSObject, PSBase, PSAdapted + + + original PSObject to use to generate members + + + + + Generates the members when needed. + + + + + Serves as a list of property names + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Returns the string representation of this member + + This property as a string + + + + Initializes a new instance of PSPropertySet with a name and list of property names + + name of the set + name of the properties in the set + for invalid arguments + + + + Gets the property names in this property set + + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets the member type + + + + + Gets the PSPropertySet itself. + + When setting the member + + + + Gets the type of the value for this member. This returns typeof(PSPropertySet).FullName. + + + + + Used to access the adapted or base events from the BaseObject + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Returns the string representation of this member + + This property as a string + + + + Constructs this event + + The actual event + for invalid arguments + + + + returns a new PSMemberInfo that is a copy of this PSMemberInfo + + a new PSMemberInfo that is a copy of this PSMemberInfo + + + + Gets the member type + + + + + Gets the value of this member. The getter returns the + actual .NET event that this type wraps. + + When setting the member + + + + Gets the type of the value for this member. This always returns typeof(PSMethod).FullName. + + + + + A dynamic member + + + + + + + + + + + + + + + + + + + + /// This class is used in PSMemberInfoInternalCollection and ReadOnlyPSMemberInfoCollection + + + + + Returns all members in memberList matching name and memberTypes + + Members to look for member with the correct types and name. + Name of the members to look for. The name might contain globbing characters + WildcardPattern out of name + type of members we want to retrieve + A collection of members of the right types and name extracted from memberList. + for invalid arguments + + + + Serves as the collection of members in an PSObject or MemberSet + + + + + Initializes a new instance of an PSMemberInfoCollection derived class + + + + + Adds a member to this collection + + member to be added + + When: + adding a member to an PSMemberSet from the type configuration file or + adding a member with a reserved member name or + trying to add a member with a type not compatible with this collection or + a member by this name is already present + + for invalid arguments + + + + Adds a member to this collection + + member to be added + flag to indicate that validation has already been done + on this new member. Use only when you can guarantee that the input will not + cause any of the errors normally caught by this method. + + When: + adding a member to an PSMemberSet from the type configuration file or + adding a member with a reserved member name or + trying to add a member with a type not compatible with this collection or + a member by this name is already present + + for invalid arguments + + + + Removes a member from this collection + + name of the member to be removed + + When: + removing a member from an PSMemberSet from the type configuration file + removing a member with a reserved member name or + trying to remove a member with a type not compatible with this collection + + for invalid arguments + + + + Gets the member in this collection matching name. If the member does not exist, null is returned. + + name of the member to look for + the member matching name + for invalid arguments + + + + Returns all members in the collection matching name + + name of the members to be return. May contain wildcard characters. + all members in the collection matching name + for invalid arguments + + + + Returns all members in the collection matching name and types + + name of the members to be return. May contain wildcard characters. + type of the members to be searched. + all members in the collection matching name and types + for invalid arguments + + + + Returns all members in the collection matching name and types + + name of the members to be return. May contain wildcard characters. + type of the members to be searched. + match options + all members in the collection matching name and types + for invalid arguments + + + + Gets the general enumerator for this collection + + the enumerator for this collection + + + + Gets the specific enumerator for this collection. + + the enumerator for this collection + + + + Serves as a read only collection of members + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Initializes a new instance of ReadOnlyPSMemberInfoCollection with the given members + + + for invalid arguments + + + + Return the member in this collection matching name. If the member does not exist, null is returned. + + name of the member to look for + the member matching name + for invalid arguments + + + + Returns all members in the collection matching name + + name of the members to be return. May contain wildcard characters. + all members in the collection matching name + for invalid arguments + + + + Returns all members in the collection matching name and types + + name of the members to be return. May contain wildcard characters. + type of the members to be searched. + all members in the collection matching name and types + for invalid arguments + + + + Gets the general enumerator for this collection + + the enumerator for this collection + + + + Gets the specific enumerator for this collection. + + the enumerator for this collection + + + + Gets the number of elements in this collection + + + + + Returns the 0 based member identified by index + + index of the member to retrieve + for invalid arguments + + + + Collection of members + + + + + Constructs this collection + + + + + Adds a member to the collection by replacing the one with the same name + + + + + + Adds a member to this collection + + member to be added + when a member by this name is already present + for invalid arguments + + + + Adds a member to this collection + + member to be added + flag to indicate that validation has already been done + on this new member. Use only when you can guarantee that the input will not + cause any of the errors normally caught by this method. + when a member by this name is already present + for invalid arguments + + + + Removes a member from this collection + + name of the member to be removed + When removing a member with a reserved member name + for invalid arguments + + + + Returns the member in this collection matching name + + name of the member to look for + the member matching name + for invalid arguments + + + + Returns all members in the collection matching name + + name of the members to be return. May contain wildcard characters. + all members in the collection matching name + for invalid arguments + + + + Returns all members in the collection matching name and types + + name of the members to be return. May contain wildcard characters. + type of the members to be searched. + all members in the collection matching name and types + for invalid arguments + + + + Returns all members in the collection matching name and types + + name of the members to be return. May contain wildcard characters. + type of the members to be searched. + match options + all members in the collection matching name and types + for invalid arguments + + + + The number of elements in this collection + + + + + The number of elements in this collection not marked as Hidden + + + + + Returns the 0 based member identified by index + + index of the member to retrieve + for invalid arguments + + + + Gets the specific enumerator for this collection. + This virtual works around the difficulty of implementing + interfaces virtually. + + the enumerator for this collection + + + + Adds member to the collection + + member to be added + + When + member is an PSProperty or PSMethod + adding a member to a MemberSet with a reserved name + adding a member with a reserved member name or + adding a member with a type not compatible with this collection + a member with this name already exists + trying to add a member to a static memberset + + for invalid arguments + + + + Adds member to the collection + + member to be added + flag to indicate that validation has already been done + on this new member. Use only when you can guarantee that the input will not + cause any of the errors normally caught by this method. + + When + member is an PSProperty or PSMethod + adding a member to a MemberSet with a reserved name + adding a member with a reserved member name or + adding a member with a type not compatible with this collection + a member with this name already exists + trying to add a member to a static memberset + + for invalid arguments + + + + Auxiliary to add members from types.xml + + + + + + + Adds member to the collection + + member to be added + flag to indicate that validation has already been done + on this new member. Use only when you can guarantee that the input will not + cause any of the errors normally caught by this method. + + When + adding a member with a reserved member name or + adding a member with a type not compatible with this collection + a member with this name already exists + trying to add a member to a static memberset + + for invalid arguments + + + + Removes the member named name from the collection + + Name of the member to be removed + + When trying to remove a member with a type not compatible with this collection + When trying to remove a member from a static memberset + When trying to remove a member from a MemberSet with a reserved name + + for invalid arguments + + + + Method which checks if the is reserved and if so + it will ensure that the particular reserved member is loaded into the + objects member collection. + + Caller should ensure that name is not null or empty. + + + Name of the member to check and load (if needed). + + + + + Returns the name corresponding to name or null if it is not present + + name of the member to return + for invalid arguments + + + + Returns all members in the collection matching name + + name of the members to be return. May contain wildcard characters. + all members in the collection matching name + for invalid arguments + + + + Returns all members in the collection matching name and types + + name of the members to be return. May contain wildcard characters. + type of the members to be searched. + all members in the collection matching name and types + for invalid arguments + + + + Returns all members in the collection matching name and types + + name of the members to be return. May contain wildcard characters. + type of the members to be searched. + search options + all members in the collection matching name and types + for invalid arguments + + + + Gets the specific enumerator for this collection. + This virtual works around the difficulty of implementing + interfaces virtually. + + the enumerator for this collection + + + + Enumerable for this class + + + + + Constructs this instance to enumerate over members + + members we are enumerating + + + + Moves to the next element in the enumeration + + + false if there are no more elements to enumerate + true otherwise + + + + + Current PSMemberInfo in the enumeration + + for invalid arguments + + + + Not supported + + + + + Wraps an object providing alternate views of the available members + and ways to extend them. Members can be methods, properties, + parameterized properties, etc. + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + A collection of delegates to get Extended/Adapated/Dotnet members based on the + + + + A filter to select Extended/Adapted/Dotnet view of the object + + + + + + A collection of delegates to get Extended/Adapated/Dotnet members based on the + + + + A filter to select Extended/Adapted/Dotnet view of the object + + + Backup type table to use if there is no execution context associated with the current thread + + + + + + A collection of delegates to get Extended/Adapated/Dotnet properties based on the + + + + A filter to select Extended/Adapted/Dotnet view of the object + + + + + + A collection of delegates to get Extended/Adapated/Dotnet properties based on the + + + + A filter to select Extended/Adapted/Dotnet view of the object + + + Backup type table to use if there is no execution context associated with the current thread + + + + + + Returns the adapter corresponding to obj.GetType() + + the adapter set corresponding to obj.GetType() + + + + Initializes a new instance of PSObject with an PSCustomObject BaseObject + + + + + Initializes a new instance of PSObject wrapping obj (accessible through BaseObject). + + object we are wrapping + if is null + + + + Creates a PSObject from an ISerializable context + + Serialization information for this instance + The streaming context for this instance + + + + If this is non-null return this string as the ToString() for this wrapped object. + + + + + This is the main field in the class representing + the System.Object we are encapsulating + + + + + This is the adapter that will depend on the type of baseObject. + + + + + This is the adapter that is used to resolve the base dotnet members for an + adapted object. If an object is not adapted, this will be null. + + + If an object is not adapted, InternalAdapter will use the dotnet adapter. + So there is no point falling back to the same dotnet adapter. + + If an object is adapted, this adapter will be used to resolve the dotnet + members. + + + + + This is the adapter set that will contain the adapter of the baseObject + and the ultimate .net member lookup adater. + See for explanation. + + + + + Indicate whether we store the instance members and type names locally + for this PSObject instance. + + + + + Members from the adapter of the object before it was serialized + Null for live objects but not null for deserialized objects + + + + + Members from the adapter of the object before it was serialized + Null for live objects but not null for deserialized objects + + + + + Set to true when the BaseObject is PSCustomObject + + + + + Gets the member collection + + + + + Gets the Property collection, or the members that are actually properties. + + + + + Gets the Method collection, or the members that are actually methods. + + + + + Gets the object we are directly wrapping. + + If the ImmediateBaseObject is another PSObject, + that PSObject will be returned. + + + + Gets the object we are wrapping. + + If the ImmediateBaseObject is another PSObject, this property + will return its BaseObject. + + + + Gets the type names collection initially containing the object type hierarchy. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + If obj is not an PSObject, it is returned. Otherwise, retrieves + the first non PSObject or PSObject with CustomBaseObject + in the PSObject - BaseObject chain. + + + + + If obj is an PSObject it will be returned as is, otherwise + a new PSObject will be created based on obj. + + object to be wrapped + + obj or a new PSObject whose BaseObject is obj + + if is null + + + + If obj is a PSObject, it will be returned as is, otherwise a new + PSObject will be created on obj. Its InstanceMembers and TypeNames + will be initialized if we are not going to use the ResurrectionTables + for this PSObject instance. + + + + + + + + Returns an object that should be used as a key for getting 1) instance members and 2) type names + - If base object is a PSCustomObject or a string or a type + then the most nested wrapping PSObject is returned (the PSObject where immediateBaseObject=PSCustomObject/string/type) + - Otherwise the base object is returned + This is a temporary fix for Win8 : 254345 - Job Failed By Throwing ExtendedTypeSystemException. + + + + + + Returns the string representation of obj. + + ExecutionContext used to fetch the separator. + + object we are trying to call ToString on. If this is not an PSObject we try + enumerating and if that fails we call obj.ToString. + If this is an PSObject, we look for a brokered ToString. + If it is not present, and the BaseObject is null we try listing the properties. + If the BaseObject is not null we try enumerationg. If that fails we try the BaseObject's ToString. + + A string representation of the object + + When there is a brokered ToString but it failed, or when the ToString on obj throws an exception. + + + + + Called from an PSObject instance ToString to provide a string representation for an object + + + ExecutionContext used to fetch the separator. + Typically either this or separator will be null. + If both are null, " " is used. + + + object we are trying to call ToString on. If this is not an PSObject we try + enumerating and if that fails we call obj.ToString. + If this is an PSObject, we look for a brokered ToString. + If it is not present, and the BaseObject is null we try listing the properties. + If the BaseObject is not null we try enumerationg. If that fails we try the BaseObject's ToString. + + The separator between elements, if this is an enumeration + the format to be passed to ToString + the formatProvider to be passed to ToString + true if we should enumerate values or properties which would cause recursive + calls to this method. Such recursive calls will have recurse set to false, limiting the depth. + If recurse is false, this parameter is not considered. If it is true + this parameter will determine how enumerators are going to be treated. + + A string representation of the object + + When there is a brokered ToString but it failed, or when the ToString on obj throws an exception. + + + + + Returns the string representation for this object. A ToString + CodeMethod or ScriptMethod will be used, if available. Enumerations items are + concatenated using $ofs. + + the string representation for baseObject + if an exception was thrown by the BaseObject's ToString + + + + Returns the string representation for this object. A ToString + CodeMethod or ScriptMethod will be used, if available. Enumerations items are + concatenated using $ofs. + + repassed to baseObject's IFormatable if present + repassed to baseObject's IFormatable if present + the string representation for baseObject + if an exception was thrown by the BaseObject's ToString + + + + Returns a copy of this PSObject. This will copy the BaseObject if + it is a value type, and use BaseObject.Clone() for the new PSObject, + if the BaseObject is ICloneable. + + a copy of this object + + + + Compares the current instance with another object of the same type. + + An object to compare with this instance. + A 32-bit signed integer that indicates the relative order of the comparands. + The return value has these meanings: + Value Meaning + Less than zero This instance is less than obj. + Zero This instance is equal to obj. + Greater than zero This instance is greater than obj. + + If has a different type + than this intance's BaseObject or if the BaseObject does not implement IComparable. + + + + + Determines whether the specified Object is equal to the current Object. + + The Object to compare with the current Object. + true if the specified Object is equal to the current Object; otherwise, false. + + + + Serves as a hash function for a particular type, suitable for use in hashing algorithms and data structures like a hash table. + + A hash code for the current Object + + + + The name of the member set for adapted members + + + This needs to be Lower cased as it saves some comparision time elsewhere. + + + + + The name of the member set for extended members + + + This needs to be Lower cased as it saves some comparision time elsewhere. + + + + + The name of the member set for the BaseObject's members + + + This needs to be Lower cased as it saves some comparision time elsewhere. + + + + + The PSObject's properties + + + This needs to be Lower cased as it saves some comparision time elsewhere. + + + + + a shortcut to .PSObject.TypeNames + + + This needs to be Lower cased as it saves some comparision time elsewhere. + + + + + Implements the ISerializable contract for serializing a PSObject + + Serialization information for this instance + The streaming context for this instance + + + + Used in the serialization dupplicate entry hashtable to detect when an PSObject has been serialized + + The System.Object implementation of GetHashCode + + + + + + + + + + + true to make this PSObject as the owner of the memberset. + + + PSObject to be used while replicating the owner for PSMemeberSet + + + + + + + + TypeTable to use if this PSObject.GetTypeTable() returns null. This will happen + in the remoting scenario on the client/server side (where a LocalRunspace may not be + present). + + + + + + + + TypeTable to use if this PSObject.GetTypeTable() returns null. This will happen + in the remoting scenario on the client/server side (where a LocalRunspace may not be + present). + + + + + + Used by Deserializer to deserialize a serialized object to a given type + (as specified in the a types.ps1xml file) + + + TypeTable to use if this PSObject.GetTypeTable() returns null. This will happen + in the remoting scenario on the client/server side (where a LocalRunspace may not be + present). + + + + + This is only going to be called if SerializationMethod is SpecificProperties + + + TypeTable to use if this PSObject.GetTypeTable() returns null. This will happen + in the remoting scenario on the client side (where a LocalRunspace may not be + present). + + A collection with only the specific properties to serialize + + + + This flag is set to true in deserialized shellobject + + + + + Set base object + + object which is set as core + If true, overwrite the type information + This method is to be used only by Serialization code + + + + Sets the to string value on deserialization + + + + + This class is solely used by PSObject to support .net member lookup for all the + adapters except for dotNetInstanceAdapter, mshMemberSetAdapter and mshObjectAdapter. + If the original adapter is not one of those, then .net members are also exposed + on the PSObject. This will have the following effect: + + 1. Every adapted object like xml, wmi, adsi will show adapted members as well as + .net members. + 2. Users will not need to access PSBase to access original .net members. + 3. This will fix v1.0 ADSI adapter where most of the complaints were about + discovering original .net members. + + Use of this class will allow us to customize the utlitmate .net member lookup. + For example, XML adapter already exposes .net methods. + Using this class you can choose exact .net adapter to support .net + member lookup and avoid lookup duplication. + + + This class is intended for internal use only. + + + + + This property can be accessed only internally and hence + no checks are performed on input. + + + + + Serves as a placeholder BaseObject when PSObject's + constructor with no parameters is used. + + + + + To prevent other instances than SelfInstance + + + + + Returns an empty string + + + + + + + + Please keep in sync with SerializationMethod from + C:\e\win7_powershell\admin\monad\nttargets\assemblies\logging\ETW\Manifests\Microsoft-Windows-PowerShell-Instrumentation.man + + + + + Internal class to provide a Hashtable key out of a Collection of strings + preserving the evaluation of the key + + + + + Copy constructor (deep copy) + + + + + + Construct an optionally readonly list of strings. + + + + + This exception is used by TypeTable constructor to indicate errors + occured during construction time. + + + + + This is the default constructor. + + + + + This constructor takes a localized error message. + + + A localized error message. + + + + + This constructor takes a localized message and an inner exception. + + + Localized error message. + + + Inner exception. + + + + + This constructor takes a colletion of errors occurred during construction + time. + + + The errors that occured + + + + + This constructor is required by serialization. + + + + + + + Serializes the exception data. + + serialization information + streaming context + + + + Set the default ErrorRecord. + + + + + The specific TypeTable load errors. + + + + + TypeData represent a Type Definition + + + + + Initialize a TypeData instance by providing the typeName + + + + + + Initialize a TypeData instance by providing a Type + + + + + + Get the TypeName + + + + + Get the members of this TypeData instance. + The Key of the dictionary is the member's name, and the Value is a TypeMemberData instance. + + + + + The type converter + + + + + The type adapter + + + + + Set to true if override the existing definition + + + + + The serializationMethod + + + + + The targetTypeForDeserialization + + + + + The serializationDepth + + + + + The defaultDisplayProperty + + + + + The InheritPropertySerializationSet + + + + + The stringSerializationSource + + + + + The StringSerializationSource when the property is not an AliasProperty. + If the property is an AliasProperty, prefer . + + + + + The defaultDisplayPropertySet + + + + + The defaultKeyPropertySet + + + + + The PropertySerializationSet + + + + + Return a TypeData that is a copy of this one + + + + + + TypeMemberData is the base class for type members. + The type members derived from this class are: + NotePropertyData, + AliasPropertyData, + ScriptPropertyData, + CodePropertyData, + ScriptMethodData, + CodeMethodData + + + + + TypeMemberData constructor + + + + + + The name of the member + + + + + Return a TypeMemberData that is a copy of this one. + + + + + + NotePropertyData represents a NoteProperty definition + + + + + NotePropertyData constructor + + + + + + + The value of this NoteProperty + + + + + Set true if the member is supposed to be hidden + + + + + Return a new NotePropertyData that is a copy of this one + + + + + + AliasPropertyData represents a AliasProperty definition + + + + + AliasPropertyData constructor + + + + + + + AliasPropertyData constructor + + + + + + + + The name of the referenced member + + + + + Specify the Type to which the referenced member value will be + converted to + + + + + Set true if the member is supposed to be hidden + + + + + Return a new AliasPropertyData that is a copy of this one + + + + + + ScriptPropertyData represents a ScriptProperty definition + + + + + Initialize the ScriptPropertyData as a read only property + + + + + + + ScriptPropertyData constructor + + + + + + + + The getter ScriptBlock + + + + + The setter ScriptBlock + + + + + Set true if the member is supposed to be hidden + + + + + Return a new ScriptPropertyData that is a copy of this one + + + + + + CodePropertyData represents a CodeProperty definition + + + + + Initialize the CodePropertyData as a read only property + + + + + + + CodePropertyData constructor + + + + + + + + The getter code reference + + + + + The setter code reference + + + + + Set true if the member is supposed to be hidden + + + + + Return a CodePropertyData that is a copy of this one + + + + + + ScriptMethodData represents a ScriptMethod definition + + + + + ScriptMethodData constructor + + + + + + + The script method + + + + + Return a ScriptMethodData that is a copy of this one + + + + + + CodeMethodData represents a CodeMethodData definition + + + + + CodeMethodData constructor + + + + + + + The code reference + + + + + Return a CodeMethodData that is a copy of this one + + + + + + PropertySetData represent a PropertySet definition + + + + + PropertySetData constructor + + + + + + The referenced properties + + + + + The PropertySet name + + + + + Set true if the member is supposed to be hidden + + + + + Return a new PropertySetData that is a copy of this one + + + + + + MemberSetData represents a MemberSet definition + + + + + MemberSetData constructor + + The name of the MemberSet + The members of the MemberSet + + + + The members of the MemberSet + + + + + Set true if the member is supposed to be hidden + + + + + Indicating if the MemberSet will inherit members of the MemberSet + of the same name in the "parent" class. + + + + + A class that keeps the information from types.ps1xml files in a cache table + + + + + Table from type name list into PSMemberInfoInternalCollection + + + + + Table from type name list into Collection of strings + + + + + Table from type name into PSMemberInfoInternalCollection + + + + + points to a Hashtable from type name to type converter + + + + + points to a Hashtable from type name to type adapter + + + + + Issue appropriate errors and remove members as necessary if: + - The serialization settings do not fall into one of the combinations of the table below + - If the serialization settings notes' values cannot be converted to the propper type + - If serialization settings members are of the wrong member type + - DefaultDisplayPropertySet is not an PSPropertySet + - DefaultDisplayProperty is not an PSPropertyInfo + - DefaultKeyPropertySet is not an PSPropertySet + + SerializationMethod InheritPropertySerializationSet PropertySerializationSet SerializationDepth StringSerializationSource + --------------------- ------------------------------- ------------------------ ------------------- --------------------------- + String must NOT be present must NOT be present must NOT be present optional + SpecificProperties optional must be present optional optional + AllPublicProperties must NOT be present must NOT be present optional optional + + + + + Helper for ProcessTypeConverter/ProcessTypeAdapter from TypeData + + + + + + + + + + + + + + + + Constructor that creates a TypeTable from a set of type files. + + + Type files to load for type information. + + + 1. Path {0} is not fully qualified. Specify a fully qualified type file path. + + + 1. There were errors loading TypeTable. Look in the Errors property to get + detailed error messages. + + + + + Load types.ps1xml, typesv3.ps1xml into the typetable + + + if caller doesn't have permission to read the PowerShell registry key + + TypeTable + + + + Gets the default types files available in PowerShell + + list of type files + + + + Constructor that creates a TypeTable from a set of type files. + + + Type files to load for type information. + + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + + 1. Path {0} is not fully qualified. Specify a fully qualified type file path. + + + 1. There were errors loading TypeTable. Look in the Errors property to get + detailed error messages. + + + + + The first type in the type hierarchy is guaranteed to have SpecificProperties + + + null if this should not be serialized with SpecificProperties + + + + Gets the MemberInfoCollection for types. This method will cache its + return value for future reference to the same types. + + list of types to get the member from + + + + + Gets the type converter for the typeName + + type name with the converter + the type converter for the typeName or null, if there is no type converter + + + + Gets the type adapter for the given type + + the type adapter or null, if there is no adapter + + + + Load a PSMemberInfo instance to the passed-in TypeData + + + + + + + Helper function to convert an object to a specific type + + + + + + + + Load the standard members into the passed-in TypeData + + + + + Get all Type configurations, return a Dictionary with typeName as the key, TypeData as the value + + + + + + Clone the TypeTable by doing a shallow copy of all the members. + + + Indicate that the clone of this TypeTable instance should not be marked as "Shared", even if + this TypeTable instance itself is a shared TypeTable. + + + If unshared is True, return an unshared clone of this TypeTable instance + If unshared is False, return a clone that is exactly the same as this TypeTable instance. + + + + + Clear the TypeTable. + + + + + Load the specified file and report the errors in + + + + Type file to load. File should be a fully-qualified path. + + + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + Indicate if the file failed to be loaded + + + + Helper method to load content for a module. + + + + + Helper method to update with module file contents. + + Module contents + Module name + Module file path + Whether the module contents are fully trusted + Whether the module contents are considered part of Windows (e.g. catalog signed) + Errors + + + + Removes the from the current TypeTable's type file list. + The TypeTable will not reflect the change until Update is called. + + + + + + Update the TypeTable by adding a TypeData instance. + + throw when the argument is null + throw when there were failures during the update + a TypeData instance to update the TypeTable + + + + Remove all type information related to the type name. + + throw when the argument is null or empty + throw if there were failures when remove the type + the name of the type to remove from TypeTable + + + + Update typetable from psSnapinTypes, this method will always rebuild the typetable. + The psSnapinTypes contain files and strong type data + + + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + + 1. The TypeTable cannot be updated becasue the TypeTable might have + been created outside of the Runspace. + + + + + Entry created to make reflection-based test suites happy. DO NOT USE THIS ENTRY + + The path to the file to load + A place to put the errors... + If true, reset the table to empty... + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + Indicate if the file cannot be loaded due to the security reason + + 1. The TypeTable cannot be updated becasue the TypeTable might have + been created outside of the Runspace. + + + + + Update type data from a specific file... + + The name of the module or snapin that this file is associated with. + The path to the file to load + A place to put the errors... + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + Indicate if the file cannot be loaded due to security reason + + 1. The TypeTable cannot be updated becasue the TypeTable might have + been created outside of the Runspace. + + + + + Update typetable from a specific strong type data + + + + + + + + Base class for AsyncResult objects that are returned by various + Async operations supported by RunspacePool , PowerShell types + + + + + Constructor + + + Instace Id of the object creating this instance + + + A AsyncCallback to call once the async operation completes. + + + A user supplied state object + + + + + This always returns false + + + + + Gets an indication whether the asynchronous operation has completed. + + + + + This is not supported and returns null. + + + + + Gets a System.Threading.WaitHandle that is used to wait for an asynchronous + operation to complete. + + + + + Instance Id of the object owning this async result. + + + + + Gets the exception that occurred while processing the + async operation. + + + + + User supplied callback. + + + + + SyncObject + + + + + Marks the async operation as completed. + + + Exception occured. null if no exception occured + + + + + Release the asyncResult without calling the callback. + + + + + Signal wait handle of this async result. + + + + + Wait for the operation to complete and throw the exception if any. + + + + + Use blocked thread to invoke callback delegate. + + Callback delegate + Callback state + + + + Defines a Command object which can be added to object + for invocation. + + + + + Initializes a new instance of Command class using specified command parameter. + + Name of the command or script contents + command is null + + + + Initializes a new instance of Command class using specified command parameter. + + The command name or script contents + True if this command represents a script, otherwise; false. + command is null + + + + Constructor + + The command name or script contents + True if this command represents a script, otherwise; false. + if true local scope is used to run the script command + command is null + + + + Copy constructor for clone operations + + The source instance. + + + + Gets the set of parameters for this command. + + + This property is used to add positional or named parameters to the command. + + + + + Access the command string. + + The command name, if is false; otherwise; the script contents + + + + Access the commandInfo. + + The command info object + + + + Access the value indicating if this represents a script. + + + + + Access the value indicating if LocalScope is to be used for running + this script command. + + True if this command is a script and localScope is + used for executing the script + This value is always false for non-script commands + + + + Gets or sets the command origin for this command. A command origin + of 'Runspace' (the default) applies Runspace restrictions to this command. + A command origin of 'Internal' does not apply runspace restrictions. + + + + + Access the actual value indicating if LocalScope is to be used for running + this script command. Needed for serialization in remoting. + + + + + Checks if the current command marks the end of a statement (see PowerShell.AddStatement()) + + + + + Creates a new that is a copy of the current instance. + + A new that is a copy of this instance. + + + + for diagnostic purposes + + + + + + Sets this command as the mergepoint for previous unclaimed + commands' results + + + + Currently only supported operation is to merge + Output and Error. + + + Currently only supported operation is to merge Output and Error. + Attempt to set the property to something other than + PipelineResultTypes.Error | PipelineResultTypes.Output results + in this exception. + + + + + Internal accessor for _mergeInstructions. It is used by serialization + code + + + + + Merges this commands resutls + + + + Pipeline stream to be redirected. + + + + Pipeline stream in to which myResult is merged + + + + myResult parameter is not PipelineResultTypes.Error or + toResult parameter is not PipelineResultTypes.Output + + + Currently only operation supported is to merge error of command to output of + command. + + + + + Set the merge settings on commandProcessor + + + + + + Create a CommandProcessorBase for this Command + + + + + + + + + + The collection of paramters that have been added. + + + + + The command string passed in at ctor time. + + + + + The command info passed in at ctor time. + + + + + Does this instance represent a script? + + + + + This is used for script commands (i.e. _isScript is true). If + _useLocalScope is true, script is run in LocalScope. If + null, it was unspecified and a suitable default is used (true + for non-script, false for script). Note that the public + property is bool, not bool? (from V1), so it should probably + be deprecated, at least for internal use. + + + + + Creates a Command object from a PSObject property bag. + PSObject has to be in the format returned by ToPSObjectForRemoting method. + + PSObject to rehydrate + + Command rehydrated from a PSObject property bag + + + Thrown if the PSObject is null. + + + Thrown when the PSObject is not in the expected format + + + + + Returns this object as a PSObject property bag + that can be used in a remoting protocol data object. + + PowerShell remoting protocol version + This object as a PSObject property bag + + + + Enum defining the types of streams coming out of a pipeline + + + + + Default streaming behavior + + + + + Success output + + + + + Error output + + + + + Warning information stream + + + + + Verbose information stream + + + + + Debug information stream + + + + + Information information stream + + + + + All streams + + + + + Redirect to nothing. + + + + + Defines a collection of Commands. This collection is used by to define + elements of pipeline. + + + + + Make the default constructor internal + + + + + Adds a new command for given string + + + command is null. + + + + + Adds a new script command + + script contents + + scriptContents is null. + + + + + Adds a new scrip command for given script + + script contents + if true local scope is used to run the script command + + scriptContents is null. + + + + + Gets the string represenation of the command collection to be used for history. + + + string representing the command(s) + + + + + Exception thrown when state of the runspace is different from + expected state of runspace. + + + + + Initializes a new instance of InvalidRunspaceStateException + + + + + Initializes a new instance of InvalidRunspaceStateException with a specified error message. + + + The message that describes the error. + + + + + Initializes a new instance of the InvalidRunspaceStateException class + with a specified error message and a reference to the inner exception + that is the cause of this exception. + + + The message that describes the error. + + + The exception that is the cause of the current exception. + + + + + Initializes a new instance of the InvalidRunspaceStateException + with a specified error message and current and expected state. + + The message that describes the error. + Current state of runspace + Expected states of runspace + + + + Initializes a new instance of the + class with serialized data. + + + The that holds the serialized object + data about the exception being thrown. + + + The that contains contextual information + about the source or destination. + + + + + Access CurrentState of the runspace. + + This is the state of the runspace when exception was thrown. + + + + + Expected state of runspace by the operation which has thrown this exception. + + + + + State of the runspace when exception was thrown. + + + + + States of the runspace expected in method which throws this exception. + + + + + Defines various states of runspace. + + + + + Beginning state upon creation + + + + + A runspace is being established. + + + + + The runspace is established and valid. + + + + + The runspace is closed or has not been established. + + + + + The runspace is being closed + + + + + The runspace has been disconnected abnormally. + + + + + The runspace is being disconnected. + + + + + The runspace is disconnected. + + + + + The runspace is Connecting. + + + + + These options control whether a new thread is created when a command is executed within a runspace + + + + + Use the default options: UseNewThread for local Runspace, ReuseThread for local RunspacePool, server settings for remote Runspace and RunspacePool + + + + + Creates a new thread for each invocation + + + + + Creates a new thread for the first invocation and then re-uses + that thread in subsequent invocations. + + + + + Doesn't create a new thread; the execution occurs on the + thread that calls Invoke. + + + This option is not valid for asynchronous calls + + + + + Defines type which has information about RunspaceState and + Exception associated with RunspaceState + + + + + Constructor for state changes not resulting from an error. + + The state of the runspace. + + + + Constructor for state changes with an optional error + + The state of runspace. + A non-null exception if the state change was + caused by an error, otherwise; null. + + + + + Copy constructor to support cloning. + + The source + RunspaceStateInfo + + + + + The state of the runspace. + + + + + The reason for the state change, if caused by an error. + + + The value of this property is non-null if the state + changed due to an error. Otherwise, the value of this + property is null. + + + + + override for ToString() + + + + + + Clones current object + + Cloned object + + + + State of runspace + + + + + The reason for the state change, if caused by an error. + + + + + Defines Event arguments passed to RunspaceStateEvent handler + event. + + + + + Constructs RunspaceStateEventArgs using RunspaceStateInfo + + The information about + current state of the runspace. + runspaceStateInfo is null + + + + + Information about state of the runspace + + + This value indicates the state of the runspace after the + change. + + + + + RunspaceStateInfo when event raised. + + + + + Enum to indicate whether a Runspace is busy or available + + + + + The Runspace is not been in the Opened state + + + + + The Runspace is available to execute commands + + + + + The Runspace is available to execute nested commands + + + + + The Runspace is busy executing a command + + + + + Applies only to remote runspace case. The remote runspace + is currently in a Debugger Stop mode and requires a debugger + SetDebuggerAction() call to continue. + + + + + Defines the event arguments passed to the AvailabilityChanged event. + + + + + Whether the Runspace is available to execute commands + + + + + Defines runspace capabilities. + + + + + No additional capabilites beyond a default runspace. + + + + + Runspace and remoting layer supports disconnect/connect feature. + + + + + Runspace is based on a named pipe transport. + + + + + Runspace is based on a VM socket transport. + + + + + Public interface to Msh Runtime. Provides APIs for creating pipelines, + access session state etc. + + + + + Explicit default constructor + + + + + Static Constructor + + + + + Used to store Runspace reference on per thread basis. Used by + various PowerShell engine features to get access to TypeTable + etc. + + + + + Gets and sets the default Runspace used to evaluate scripts + + The Runspace used to set this property should not be shared between different threads. + + + + Returns true if Runspace.DefaultRunspace can be used to + create an instance of the PowerShell class with + 'UseCurrentRunspace = true'. + + + + + ApartmentState of the thread used to execute commands within this Runspace + + + Any updates to the value of this property must be done before the Runspace is opened + + + An attempt to change this property was made after opening the Runspace + + + + + This property determines whether a new thread is create for each invocation + + + Any updates to the value of this property must be done before the Runspace is opened + + + An attempt to change this property was made after opening the Runspace + + + The thread options cannot be changed to the requested value + + + + + Return version of this runspace + + + + + Return whether the Runspace is Remote + We can determine this by whether the runspace is an implementation of LocalRunspace + or infer it from whether the ConnectionInfo property is null + If it happens to be an instance of a LocalRunspace, but has a non-null ConnectionInfo + we declare it to be remote + + + + + Retrieve information about current state of the runspace + + + + + Gets the current availability of the Runspace + + + + + RunspaceConfiguration information for this runspace. + + + + + InitialSessionState information for this runspace. + + + + + Get unqiue id for this instance of runspace. It is primarily used + for logging purposes + + + + + Gets execution context. + + Runspace is not opened. + + + + + Skip user profile on engine initialization + + + + + Connection information for remote Runspaces, null for local Runspaces + + + + + ConnectionInfo originally supplied by the user + + + + + Manager for JobSourceAdapters registered in this runspace. + + + + + DisconnectedOn property applies to remote runspaces that have + been disconnected. + + + + + ExpiresOn property applies to remote runspaces that have been + disconnected. + + + + + Gets and sets a friendly name for the Runspace. + + + + + Gets the Runspace Id. + + + + + Returns protocol version that the remote server uses for PS remoting + + + + + Engine activity id (for ETW tracing) + + + + + Returns a read only runspace dictionary. + + + + + Returns a read only list of runspaces. + + + + + Event raised when RunspaceState changes. + + + + + Event raised when the availability of the Runspace changes. + + + + + Returns true if there are any subscribers to the AvailabilityChanged event + + + + + Raises the AvailabilityChanged event + + + + + Used to raise the AvailabilityChanged event when the state of the currently executing pipeline changes + + + The possible pipeline states are + NotStarted + Running + Disconnected + Stopping + Stopped + Completed + Failed + + + + + Used to update the runspace availability when the state of the currently executing PowerShell instance changes + + + The possible invocation states are + NotStarted + Running + Stopping + Stopped + Completed + Failed + + + + + Used to update the runspace availability event when the state of the runspace changes + + + The possible runspace states are: + BeforeOpen + Opening + Opened + Closed + Closing + Broken + + + + + Used to update the runspace availability from Enter/ExitNestedPrompt and the debugger + + + + + Raises the AvailabilityChanged event + + + + + Queries the server for disconnected runspaces and creates an array of runspace + objects associated with each disconnected runspace on the server. Each + runspace object in the returned array is in the Disconnected state and can be + connected to the server by calling the Connect() method on the runspace. + + Connection object for the target server. + Array of Runspace objects each in the Disconnected state. + + + + Queries the server for disconnected runspaces and creates an array of runspace + objects associated with each disconnected runspace on the server. Each + runspace object in the returned array is in the Disconnected state and can be + connected to the server by calling the Connect() method on the runspace. + + Connection object for the target server. + Client host object. + Array of Runspace objects each in the Disconnected state. + + + + Queries the server for disconnected runspaces and creates an array of runspace + objects associated with each disconnected runspace on the server. Each + runspace object in the returned array is in the Disconnected state and can be + connected to the server by calling the Connect() method on the runspace. + + Connection object for the target server. + Client host object. + TypeTable object. + Array of Runspace objects each in the Disconnected state. + + + + Returns a single disconnected Runspace object targeted to the remote computer and remote + session as specified by the connection, session Id, and command Id parameters. + + Connection object for the target server. + Id of a disconnected remote session on the target server. + Optional Id of a disconnected command running in the disconnected remote session on the target server. + Optional client host object. + Optional TypeTable object. + Disconnected runspace corresponding to the provided session Id. + + + + Disconnects the runspace synchronously. + + + Disconnects the remote runspace and any running command from the server + machine. Any data generated by the running command on the server is + cached on the server machine. This runspace object goes to the disconnected + state. This object can be reconnected to the server by calling the + Connect() method. + If the remote runspace on the server remains disconnected for the IdleTimeout + value (as defined in the WSManConnectionInfo object) then it is closed and + torn down on the server. + + + RunspaceState is not Opened. + + + + + Disconnects the runspace asynchronously. + + + Disconnects the remote runspace and any running command from the server + machine. Any data generated by the running command on the server is + cached on the server machine. This runspace object goes to the disconnected + state. This object can be reconnected to the server by calling the + Connect() method. + If the remote runspace on the server remains disconnected for the IdleTimeout + value (as defined in the WSManConnectionInfo object) then it is closed and + torn down on the server. + + + RunspaceState is not Opened. + + + + + Connects the runspace to its remote counterpart synchronously. + + + Connects the runspace object to its corresponding runspace on the target + server machine. The target server machine is identified by the connection + object passed in during construction. The remote runspace is identified + by the internal runspace Guid value. + + + RunspaceState is not Disconnected. + + + + + Connects a runspace to its remote counterpart asynchronously. + + + Connects the runspace object to its corresponding runspace on the target + server machine. The target server machine is identified by the connection + object passed in during construction. The remote runspace is identified + by the internal runspace Guid value. + + + RunspaceState is not Disconnected. + + + + + Creates a PipeLine object in the disconnected state for the currently disconnected + remote running command associated with this runspace. + + Pipeline object in disconnected state. + + + + Creates a PowerShell object in the disconnected state for the currently disconnected + remote running command associated with this runspace. + + PowerShell object in disconnected state. + + + + Returns Runspace capabilities. + + RunspaceCapability + + + + Opens the runspace synchronously. Runspace must be opened before it can be used. + + + RunspaceState is not BeforeOpen + + + + + Open the runspace Asynchronously. + + + RunspaceState is not BeforeOpen + + + + + Close the runspace synchronously. + + + Attempts to execute pipelines after a call to close will fail. + + + RunspaceState is BeforeOpen or Opening + + + + + Close the runspace Asynchronously. + + + Attempts to execute pipelines after a call to + close will fail. + + + RunspaceState is BeforeOpen or Opening + + + + + Create an empty pipeline + + An empty pipeline + + + + Creates a pipeline for specified command string + + A valid command string + + A pipline pre-filled with a object for specified command parameter. + + + command is null + + + + + Create a pipeline from a command string. + + A valid command string + if true command is added to history + + A pipline pre-filled with a object for specified command parameter. + + + command is null + + + + + Creates a nested pipeline. + + + Nested pipelines are needed for nested prompt scenario. Nested + prompt requires that we execute new pipelines( child pipelines) + while current pipeline (lets call it parent pipeline) is blocked. + + + + + Creates a nested pipeline. + + A valid command string + if true command is added to history + + A pipline pre-filled with Command specified in commandString. + + + command is null + + + + + Returns the currently executing pipeline, or null if no pipeline is executing + + + + + Private data to be used by applications built on top of PowerShell. + + Local runspace is created with application private data set to an empty . + + Remote runspace gets its application private data from the server (set when creating a remote runspace pool) + Calling this method on a remote runspace will block until the data is received from the server. + The server will send application private data before reaching state. + + Runspaces that are part of a inherit application private data from the pool. + + + + + A method that runspace pools can use to propagate application private data into runspaces + + + + + + Push a running PowerShell onto the stack. + + PowerShell + + + + Pop the currently running PowerShell from stack. + + PowerShell + + + + Gets session state proxy + + + + + Disposes this runspace instance. Dispose will close the runspace if not closed already. + + + + + Protected dispose which can be overridden by derived classes. + + + + + + Gets the execution context + + + + + Returns true if the internal host is in a nested prompt + + + + + Gets the debugger + + + + + InternalDebugger + + + + + Gets the event manager + + + + + Sets the base transaction for the runspace; any transactions created on this runspace will be nested to this instance + + The base transaction + This overload uses RollbackSeverity.Error; i.e. the transaction will be rolled back automatically on a non-terminating error or worse + + + + Sets the base transaction for the runspace; any transactions created on this runspace will be nested to this instance + + The base transaction + The severity of error that causes PowerShell to automatically rollback the transaction + + + + + Clears the transaction set by SetBaseTransaction() + + + + + + Resets the variable table for the runspace to the default state. + + + + + This class provides subset of functionality provided by + session state. + + + + + Set a variable in session state. + + + + The name of the item to set. + + + + The new value of the item being set. + + + + name is null + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get a variable out of session state. + + + + name of variable to look up + + + + The value of the specified variable. + + + + name is null + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the list of applications out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the list of scripts out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the APIs to access drives out of session state + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get/Set the language mode out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the module info out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the APIs to access paths and locations out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the APIs to access a provider out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the APIs to access variables out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the APIs to build script blocks and execute script out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Gets the instance of the provider interface APIs out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Runspaces is base class for different kind of Runspaces. + + There should be a class derived from it for each type of + Runspace. Types of Runspace which we support are Local, X-AppDomain, + X-Process and X-Machine. + + + + Construct an instance of an Runspace using a custom + implementation of PSHost. + + The explicit PSHost implementation + + Host is null. + + + host is null. + + + configuration information for this minshell. + + + + + Construct an instance of an Runspace using a custom + implementation of PSHost. + + The explicit PSHost implementation + + Host is null. + + + host is null. + + + configuration information for this runspace instance. + + + + + Construct an instance of an Runspace using a custom + implementation of PSHost. + + + The explicit PSHost implementation + + + configuration information for this runspace instance. + + + If true, don't make a copy of the initial session state object. + + + Host is null. + + + host is null. + + + + + The host implemented PSHost interface + + + + + runspaceConfiguration information for this runspace + + + + + runspaceConfiguration information for this runspace + + + + + Return version of this runspace + + + + + Retrieve information about current state of the runspace + + + + + Gets the current availability of the Runspace + + + + + Object used for synchronization + + + + + Information about the computer where this runspace is created + + + + + Original Connection Info that the user passed + + + + + Open the runspace synchronously. + + + RunspaceState is not BeforeOpen + + + + + Open the runspace Asynchronously. + + + RunspaceState is not BeforeOpen + + + + + Opens the runspace. + + If true runspace is opened synchronously + else runspaces is opened asynchronously + + + RunspaceState is not BeforeOpen + + + + + Derived class's open implementation + + + + + Close the runspace synchronously. + + + Attempts to execute pipelines after a call to close will fail. + + + RunspaceState is BeforeOpen or Opening + + + + + Close the runspace Asynchronously. + + + Attempts to execute pipelines after a call to + close will fail. + + + RunspaceState is BeforeOpen or Opening + + + + + Close the runspace + + If true runspace is closed synchronously + else runspaces is closed asynchronously + + + + RunspaceState is BeforeOpen or Opening + + + + If SessionStateProxy has some method call in progress + + + + + Derived class's close implementation + + If true runspace is closed synchronously + else runspaces is closed asynchronously + + + + + Disconnects the runspace synchronously. + + + + + Disconnects the runspace asynchronously. + + + + + Connects a runspace to its remote counterpart synchronously. + + + + + Connects a runspace to its remote counterpart asynchronously. + + + + + Creates a pipeline object in the Disconnected state. + + Pipeline + + + + Creates a powershell object in the Disconnected state. + + PowerShell + + + + Returns Runspace capabilities. + + RunspaceCapability + + + + Create an empty pipeline + + An empty pipeline + + + + Createa a pipeline froma command string + + A valid command string + + A pipline pre-filled with Commands specified in commandString. + + + command is null + + + + + Create a pipeline from a command string. + + A valid command string + if true command is added to history + + A pipline pre-filled with Commands specified in commandString. + + + command is null + + + + + Creates a nested pipeline. + + + Nested pipelines are needed for nested prompt scenario. Nested + prompt requires that we execute new pipelines( child pipelines) + while current pipeline (lets call it parent pipeline) is blocked. + + + + + Creates a nested pipeline. + + A valid command string + if true command is added to history + + A pipline pre-filled with Commands specified in commandString. + + + command is null + + + + + Create a pipeline from a command string + + + A valid command string or String.Empty. + if true command is added to history + True for nested pipeline + + A pipline pre-filled with Commands specified in commandString. + + + + + Event raised when RunspaceState changes. + + + + + Event raised when the availability of the Runspace changes. + + + + + Returns true if there are any subscribers to the AvailabilityChanged event + + + + + Raises the AvailabilityChanged event + + + + + Retrieve the current state of the runspace. + + + + + + This is queue of all the state change event which have occured for + this runspace. RaiseRunspaceStateEvents raises event for each + item in this queue. We don't raise events from with SetRunspaceState + because SetRunspaceState is often called from with in the a lock. + Raising event with in a lock introduces chances of deadlock in GUI + applications. + + + + + Set the new runspace state. + + the new state + An exception indicating the state change is the + result of an error, otherwise; null. + + + Sets the internal runspace state information member variable. It also + adds RunspaceStateInfo to a queue. + RaiseRunspaceStateEvents raises event for each item in this queue. + + + + + Set the current runspace state - no error + + the new state + + + + Raises events for changes in runspace state. + + + + + In RemoteRunspace, it is required to invoke pipeline + as part of open call (i.e. while state is Opening). + If this property is true, runspace state check is + not performed in AddToRunningPipelineList call. + + + + + List of pipeline which are currently executing in this runspace. + + + + + Add the pipeline to list of pipelines in execution. + + Pipeline to add to the + list of pipelines in execution + + + Thrown if the runspace is not in the Opened state. + . + + + Thrown if + is null. + + + + + Remove the pipeline from list of pipelines in execution. + + Pipeline to remove from the + list of pipelines in execution + + + Thrown if is null. + + + + + Waits till all the pipelines running in the runspace have + finished execution. + + + + + Stops all the running pipelines + + + + + Gets the currently executing pipeline. + + Internal because it is needed by invoke-history + + + + This method stops all the pipelines which are nested + under specified pipeline + + + + + + + This method ensures that SessionStateProxy call is allowed and if + allowed it sets a variable to disallow further SessionStateProxy or + pipeline calls. + + + + + SetVariable implementation. This class does the necessary checks to ensure + that no pipeline or other SessionStateProxy calls are in progress. + It delegates to derived class worker method for actual operation. + + + + + + + GetVariable implementation. This class does the necessary checks to ensure + that no pipeline or other SessionStateProxy calls are in progress. + It delegates to derived class worker method for actual operation. + + + + + + + Applications implementation. This class does the necessary checks to ensure + that no pipeline or other SessionStateProxy calls are in progress. + It delegates to derived class worker method for actual operation. + + + + + + Scripts implementation. This class does the necessary checks to ensure + that no pipeline or other SessionStateProxy calls are in progress. + It delegates to derived class worker method for actual operation. + + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the acutal work of setting variable. + + Name of the variable to set + The value to set it to + + + + Protected methods to be implemented by derived class. + This does the actual work of getting variable. + + + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting applications. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Protected methods to be implemented by derived class. + This does the actual work of getting scripts. + + + + + Returns SessionState proxy object. + + + + + + Defines a factory class for creating Runspace objects. + + + + + Static constructor + + + + + Creates a runspace using host of type . + This runspace is created using the information + from EntryAssembly. + + + A runspace object. + + + + + Creates a runspace using specified host. This runspace is created using the + configuration information from EntryAssembly. + + + The explicit PSHost implementation. + + + A runspace object + + + Thrown when host is null. + + + + + Creates a runspace using + + + RunspaceConfiguration information for the runspace. + + + A runspace object + + + Thrown when runspaceConfiguration is null + + + + + Creates a runspace using specified PSHost and RunspaceConfiguration + + + Host implementation for runspace. + + + RunspaceConfiguration information for the runspace. + + + A runspace object + + + Thrown when host is null + + + Thrown when runspaceConfiguration is null + + + + + Creates a runspace using + + + InitialSessionState information for the runspace. + + + A runspace object + + + Thrown when initialSessionState is null + + + + + Creates a runspace using specified PSHost and InitialSessionState + + + Host implementation for runspace. + + + InitialSessionState information for the runspace. + + + A runspace object + + + Thrown when host is null + + + Thrown when initialSessionState is null + + + + + Creates a runspace using specified PSHost and InitialSessionState + + + Host implementation for runspace. + + + InitialSessionState information for the runspace. + + + A runspace object + + + Thrown when host is null + + + Thrown when initialSessionState is null + + + + + Creates a RunspacePool using default RunspaceConfiguration + with MaxRunspaces 1 and MinRunspaces 1. + + + + + Creates a RunspacePool using default RunspaceConfiguration. + + limits the number of Runspaces that can exist in this + pool. The minimum pool size is set to . + + + The minimum number of Runspaces that exist in this + pool. Should be greater than or equal to 1. + + + The maximum number of Runspaces that can exist in this + pool. Should be greater than or equal to 1. + + + Maximum runspaces is less than 1. + Minimum runspaces is less than 1. + + + + + Creates a RunspacePool using the supplied . + The minimum runspaces size is set to 1. The maximum runspaces size is + set to 1. + + + initialSessionState to use when creating a new + Runspace in the pool. + + + RunspaceConfiguration is null. + + + + + Creates a RunspacePool using the supplied , + and + + + The minimum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The maximum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The explicit PSHost implementation. + + + is null. + + + A local runspacepool instance. + + + + + Creates a RunspacePool using the supplied , + and + + + The minimum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The maximum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + RunspaceConfiguration to use when creating a new Runspace in the + pool. + + + RunspaceConfiguration is null. + + + The explicit PSHost implementation. + + + is null. + is null. + + + Maximum runspaces is less than 1. + Minimum runspaces is less than 1. + + + + + Creates a RunspacePool using the supplied , + and + + + The minimum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The maximum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + initialSessionState to use when creating a new Runspace in the + pool. + + + RunspaceConfiguration is null. + + + The explicit PSHost implementation. + + + is null. + is null. + + + Maximum runspaces is less than 1. + Minimum runspaces is less than 1. + + + + + Creates a RunspacePool + on the specified remote computer. + + limits the number of Runspaces that can exist in this + pool. The minimum pool size is set to + . + + + The minimum number of Runspace that should exist in this + pool. Should be greater than 1. + + + The maximum number of Runspaces that can exist in this + pool. Should be greater than or equal to 1. + + RunspaceConnectionInfo object describing + the remote computer on which this runspace pool needs to be + created + + Maximum Pool size is less than 1. + Minimum Pool size is less than 1. + + + connectionInfo is null + + + + Creates a RunspacePool + on the specified remote runspace computer. + + limits the number of Runspaces that can exist in this + pool. The minimum pool size is set to + . + + + The minimum number of Runspace that should exist in this + pool. Should be greater than 1. + + + The maximum number of Runspaces that can exist in this + pool. Should be greater than or equal to 1. + + Host associated with this + runspace pool + RunspaceConnectionInfo object describing + the remote computer on which this runspace pool needs to be + created + + Maximum Pool size is less than 1. + Minimum Pool size is less than 1. + + + connectionInfo is null + + + + Creates a RunspacePool + on the specified remote runspace compuer. + + limits the number of Runspaces that can exist in this + pool. The minimum pool size is set to + . + + + The minimum number of Runspace that should exist in this + pool. Should be greater than 1. + + + The maximum number of Runspaces that can exist in this + pool. Should be greater than or equal to 1. + + + The TypeTable to use while deserializing/serializing remote objects. + TypeTable has the following information used by serializer: + 1. SerializationMethod + 2. SerailizationDepth + 3. SpecificSerializationProperties + TypeTable has the following inforamtion used by deserializer: + 1. TargetTypeForDeserializaiton + 2. TypeConverter + + If is null no custom serialization/deserialization + can be done. Default PowerShell behavior will be used in this case. + + Host associated with this + runspace pool + RunspaceConnectionInfo object describing + the remote computer on which this runspace pool needs to be + created + + Maximum Pool size is less than 1. + Minimum Pool size is less than 1. + + + connectionInfo is null + + + + Creates a RunspacePool + on the specified remote runspace compuer. + + limits the number of Runspaces that can exist in this + pool. The minimum pool size is set to + . + + + The minimum number of Runspace that should exist in this + pool. Should be greater than 1. + + + The maximum number of Runspaces that can exist in this + pool. Should be greater than or equal to 1. + + + The TypeTable to use while deserializing/serializing remote objects. + TypeTable has the following information used by serializer: + 1. SerializationMethod + 2. SerailizationDepth + 3. SpecificSerializationProperties + TypeTable has the following inforamtion used by deserializer: + 1. TargetTypeForDeserializaiton + 2. TypeConverter + + If is null no custom serialization/deserialization + can be done. Default PowerShell behavior will be used in this case. + + Host associated with this + runspace pool + + Application arguments the server can see in + + RunspaceConnectionInfo object describing + the remote computer on which this runspace pool needs to be + created + + Maximum Pool size is less than 1. + Minimum Pool size is less than 1. + + + connectionInfo is null + + + + + + + The TypeTable to use while deserializing/serializing remote objects. + TypeTable has the following information used by serializer: + 1. SerializationMethod + 2. SerailizationDepth + 3. SpecificSerializationProperties + TypeTable has the following inforamtion used by deserializer: + 1. TargetTypeForDeserializaiton + 2. TypeConverter + + + + + + + + + + + The TypeTable to use while deserializing/serializing remote objects. + TypeTable has the following information used by serializer: + 1. SerializationMethod + 2. SerailizationDepth + 3. SpecificSerializationProperties + TypeTable has the following inforamtion used by deserializer: + 1. TargetTypeForDeserializaiton + 2. TypeConverter + + + + + Application arguments the server can see in + + + + + + + + + + + The TypeTable to use while deserializing/serializing remote objects. + TypeTable has the following information used by serializer: + 1. SerializationMethod + 2. SerailizationDepth + 3. SpecificSerializationProperties + TypeTable has the following inforamtion used by deserializer: + 1. TargetTypeForDeserializaiton + 2. TypeConverter + + + Application arguments the server can see in + + Name for remote runspace. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Runspace class for local runspace + + + Runspace class for local runspace + + + + + Construct an instance of an Runspace using a custom implementation + of PSHost. + + + The explicit PSHost implementation + + + configuration information for this minshell. + + + + + Construct an instance of an Runspace using a custom implementation + of PSHost. + + + The explicit PSHost implementation + + + configuration information for this minshell. + + + If true, don't make a copy of the initial session state object + + + + + Construct an instance of an Runspace using a custom implementation + of PSHost. + + + The explicit PSHost implementation + + + configuration information for this minshell. + + + + + Private data to be used by applications built on top of PowerShell. + + Local runspace pool is created with application private data set to an empty . + + Runspaces that are part of a inherit application private data from the pool. + + + + + A method that runspace pools can use to propagate application private data into runspaces + + + + + + Gets the event manager + + + + + This property determines whether a new thread is create for each invocation + + + Any updates to the value of this property must be done before the Runspace is opened + + + An attempt to change this property was made after opening the Runspace + + + The thread options cannot be changed to the requested value + + + + + Resets the runspace state to allow for fast reuse. Not all of the runspace + elements are reset. The goal is to minimize the chance of the user taking + accidental dependencies on prior runspace state. + + + + + Create a pipeline from a command string + + A valid command string. Can be null + if true command is added to history + True for nested pipeline + + A pipeline pre-filled with Commands specified in commandString. + + + + + Gets the execution context + + + + + Returns true if the internal host is in a nested prompt + + + + + CommandFactory object for this runspace. + + + + + Gets history manager for this runspace + + + + + + Gets transcription data for this runspace + + + + + + List of jobs in this runspace + + + + + Manager for JobSourceAdapters registered in this runspace. + + + + + List of remote runspaces in this runspace + + + + + Debugger + + + + + DebugPreference serves as a property bag to keep + track of all process specific debug preferences. + + + + + CreateDebugPerfStruct is a helper method to populate DebugPreference + + App Domain Names + DebugPreference + + + + SetDebugPreference is a helper method used to enable and disable debug preference. + + Process Name + App Domain Name + Indicates if the debug preference has to be enabled or disabled. + + + + GetDebugPreferenceCache is a helper method used to fetch + the debug preference cache contents as a Hashtable. + + Runspace + If the Debug preference is persisted then a hashtable containing + the debug preference is returned or else Null is returned. + + + + GetProcessSpecificDebugPreference is a helper method used to fetch persisted process specific debug preference. + + + + + + + Open the runspace + + + paramter which control if Open is done synchronously or asynchronously + + + + + Start method for asynchronous open + + + + + Helper function used for opening a runspace + + + + + Logs engine health event + + + + + Logs engine health event + + + + + Returns the thread that must be used to execute pipelines when CreateThreadOptions is ReuseThread + + + The pipeline calls this function after ensuring there is a single thread in the pipeline, so no locking is neccesary + + + + + Start method for asynchronous close + + + + + Close the runspace. + + + Attempts to create/execute pipelines after a call to + close will fail. + + + + + Closes or disconnects all the remote runspaces passed in by the getRunspace + function. If a remote runspace supports disconnect then it will be disconnected + rather than closed. + + + + + Disconnects all disconnectable jobs listed in the JobRepository. + + + + + Set to true when object is disposed + + + + + Protected dispose which can be overridden by derived classes. + + + + + + Close the runspace + + + + + CommandFactory for creating Command objects + + + + + AutomationEngine instance for this runspace + + + + + Manages history for this runspace + + + + + This ensures all processes have a server/listener. + + + + + initialize default values of preference vars + + + Does not return a value + + + + + + + Helper class to stop a running job. + + + + + Internal constructor + + Job object to stop. + + + + Handles the Job state change event. + + Originator of event, unused + Event arguments containing Job state. + + + + Override method to start the operation. + + + + + Override method to stop the operation. Not used, stop operation must + run to completion. + + + + + Event to signal ThrottleManager when the operation is complete. + + + + + Raise the OperationComplete event. + + + + + Helper class to disconnect a runspace if the runspace supports disconnect + semantics or otherwise close the runspace. + + + + + Internal constructor + + + + + + Handle the runspace state changed event + + sender of this information, unused + runspace event args + + + + Start the operation of closing the runspace + + + + + There is no scenario where we are going to cancel this close + Hence this method is intentionally empty + + + + + Event raised when the required operation is complete + + + + + Raise the operation completed event + + + + + Defines the exception thrown an error loading modules occurs while opening the runspace. It + contains a list of all of the module errors that have occurred + + + + + Initializes a new instance of ScriptBlockToPowerShellNotSupportedException + with the message set to typeof(ScriptBlockToPowerShellNotSupportedException).FullName + + + + + Initializes a new instance of ScriptBlockToPowerShellNotSupportedException setting the message + + the exception's message + + + + Initializes a new instance of ScriptBlockToPowerShellNotSupportedException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Recommended constructor for the class + + The name of the module that cause the error + The collection of errors that occurred during module processing + + + + The collection of error records generated while loading the modules. + + + + + Initializes a new instance of RunspaceOpenModuleLoadException with serialization parameters + + serialization information + streaming context + + + + Populates a with the + data needed to serialize the RunspaceOpenModuleLoadException object. + + The to populate with data. + The destination for this serialization. + + + + Pipeline class to be used for LocalRunspace + + + + + Create a Pipeline with an existing command string. + + The LocalRunspace to associate with this + pipeline. + + The command string to parse. + if true, add pipeline to history + True for nested pipeline + + + + Create a Pipeline with an existing command string. + Caller should validate all the parameters. + + + The LocalRunspace to associate with this pipeline. + + + The command to execute. + + + If true, add the command(s) to the history list of the runspace. + + + If true, mark this pipeline as a nested pipeline. + + + Stream to use for reading input objects. + + + Stream to use for writing error objects. + + + Stream to use for writing output objects. + + + Buffers used to write progress, verbose, debug, warning, information + information of an invocation. + + + + + Copy constructor to support cloning + + The source pipeline + + + + Creates a new that is a copy of the current instance. + + A new that is a copy of this instance. + + + + Invoke the pipeline asynchronously with input. + + + Results are returned through the reader. + + + + + Prepares the invoke thread for execution + + + + + Stack Reserve setting for pipeline threads + + + + + Helper method for asynchronous invoke + Unhandled FlowControl exception if InvocationSettings.ExposeFlowControlExceptions is true. + + + + + Start thread method for asynchronous pipeline execution. + + + + + Stop the running pipeline. + + If true pipeline is stoped synchronously + else asynchronously. + + + + Start method for asynchronous Stop + + + + + Gets PipelineStopper object which maitains stack of PipelineProcessor + for this pipeline + + + + + + Helper method for Stop functionality + + + + + Returns true if pipeline is stopping + + + + + + Creates a PipelineProcessor object from LocalPipeline object. + + Created PipelineProcessor object + + + + Resolves command.CommandInfo to an appropriate CommandProcessorBase implementation + + command to resolve + + + + + This method initializes streams and backs up their original states. + This should be only called from constructors. + + + + + This method sets streams to their orignal states from execution context. + This is done when Pipeline is completed/failed/stopped ie., termination state. + + + + + Adds an entry in history for this pipeline + + + + + Add HistoryEntry for this pipeline. Use this function when writing + history at the end of pipeline. + + + + + This method is called Add-History cmdlet to add history entry. + + + In general history entry for current pipeline is added at the + end of pipeline execution. + However when add-history cmdlet is executed, history entry + needs to be added before add-history adds additional entries + in to history. + + + + + Add-history cmdlet adds history entry for the pipeline in its + begin processing. This method is called to update the end execution + time and status of pipeline. + + + + + sets the history string to the specified one + + history string to set to + + + + Gets the execution context in the thread local storage of current + thread + + + ExecutionContext, if it available in TLS + Null, if ExecutionContext is not availalbe in TLS + + + + + Holds reference to LocalRunspace to which this pipeline is + associated with + + + + + This is list of HistoryInfo ids which have been executed in + this pipeline. + + + + + Set to true when object is disposed + + + + + Protected dispose which can be overridden by derived classes. + + + + + + Helper class that holds the thread used to execute pipelines when CreateThreadOptions.ReuseThread is used + + + + + Creates the worker thread and waits for it to be ready + + + + + Returns the worker thread + + + + + Posts an item to the worker thread and wait for its completion + + + + + Shortcut for dispose + + + + + Implementation of the worker thread + + + + + Releases the worker thread + + + + + Ensure we release the worker thread + + + + + This is helper class for stopping a running pipeline. This + class maintains a stack of currently active pipeline processors. + To stop a pipeline, stop is called on each pipeline processor + in the stack. + + + + + stack of current executing pipeline processor + + + + + Object used for synchronization + + + + + Default constructor + + + + + This is set true when stop is called + + + + + Push item in to PipelineProcessor stack + + + + + + Pop top item from PipelineProcessor stack + + + + + Define a parameter for + + + + + Create a named parameter with a null value + + parameter name + + name is null. + + + Name length is zero after trimming whitespace. + + + + + Create a named parameter + + parameter name + parameter value + + Name is non null and name length is zero after trimming whitespace. + + + + + gets the parameter name + + + + + gets the value of the parameter + + + + + The parameter name + + + + + The parameter value. + + + + + Creates a CommandParameter object from a PSObject property bag. + PSObject has to be in the format returned by ToPSObjectForRemoting method. + + PSObject to rehydrate + + CommandParameter rehydrated from a PSObject property bag + + + Thrown if the PSObject is null. + + + Thrown when the PSObject is not in the expected format + + + + + Returns this object as a PSObject property bag + that can be used in a remoting protocol data object. + + This object as a PSObject property bag + + + + Defines a collection of parameters. + + + + + Create a new empty instance of this collection type + + + + + Add a parameter with given name and default null value + + name of the parameter + + name is null. + + + Name length is zero after trimming whitespace. + + + + + Add a parameter with given name and value + + name of the parameter + value of the parameter + + Both name and value are null. One of these must be non-null. + + + Name is non null and name length is zero after trimming whitespace. + + + + + Defines exception which is thrown when state of the pipeline is different + from expected state. + + + + + Initializes a new instance of the InvalidPipelineStateException class + + + + + Initializes a new instance of the InvalidPipelineStateException class + with a specified error message + + + The error message that explains the reason for the exception. + + + + + Initializes a new instance of the InvalidPipelineStateException class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + + + + + Initializes a new instance of the InvalidPipelineStateException and defines value of + CurrentState and ExpectedState + + The error message that explains the reason for the exception. + + Current state of pipeline + Expected state of pipeline + + + + Initializes a new instance of the + class with serialized data. + + + The that holds the serialized object + data about the exception being thrown. + + + The that contains contextual information + about the source or destination. + + + + + Gets CurrentState of the pipeline + + + + + Gets ExpectedState of the pipeline + + + + + State of pipleine when exception was thrown. + + + + + States of the pipeline expected in method which throws this exception. + + + + + Enumerated type defining the state of the Pipeline + + + + + The pipeline has not been started + + + + + The pipeline is executing + + + + + The pipeline is stoping execution. + + + + + The pipeline is completed due to a stop request. + + + + + The pipeline has completed. + + + + + The pipeline completed abnormally due to an error. + + + + + The pipeline is disconnected from remote running command. + + + + + Type which has information about PipelineState and Exception + associated with PipelineState + + + + + Constructor for state changes not resulting from an error. + + Execution state + + + + Constructor for state changes with an optional error. + + The new state. + A non-null exception if the state change was + caused by an error,otherwise; null. + + + + + Copy constructor to support cloning + + source information + + ArgumentNullException when is null. + + + + + The state of the runspace. + + + This value indicates the state of the pipeline after the change. + + + + + The reason for the state change, if caused by an error. + + + The value of this property is non-null if the state + changed due to an error. Otherwise, the value of this + property is null. + + + + + Clones this object + + Cloned object + + + + The current execution state + + + + + Non-null exception if the execution state change was due to an error. + + + + + Event arguments passed to PipelineStateEvent handlers + event. + + + + + Constructor PipelineStateEventArgs from PipelineStateInfo + + The current state of the + pipeline. + + ArgumentNullException when is null. + + + + + Info about current state of pipeline. + + + + + Info about state of pipeline + + + + + Defines a class which can be used to invoke a pipeline of commands. + + + + + Explicit default constructor + + + + + Constructor to initialize both Runspace and Command to invoke. + Caller should make sure that "command" is not null. + + + Runspace to use for the command invocation. + + + command to Invoke. + Caller should make sure that "command" is not null. + + + + + gets the runspace this pipeline is created on. + + + + + Gets the property which indicates if this pipeline is nested. + + + + + Gets the property which indicates if this pipeline is a child pipeline. + + IsChild flag makes it possible for the pipeline to differentiate between + a true v1 nested pipeline and the cmdlets calling cmdlets case. See bug + 211462. + + + + + gets input writer for this pipeline. + + + When the caller calls Input.Write(), the caller writes to the + input of the pipeline. Thus, + is a PipelineWriter or "thing which can be written to". + Note:Input must be closed after Pipeline.InvokeAsync for InvokeAsync to + finish. + + + + + Gets the output reader for this pipeline. + + + When the caller calls Output.Read(), the caller reads from the + output of the pipeline. Thus, + is a PipelineReader or "thing which can be read from". + + + + + gets the error output reader for this pipeline. + + + When the caller calls Error.Read(), the caller reads from the + output of the pipeline. Thus, + is a PipelineReader or "thing which can be read from". + + This is the non-terminating error stream from the command. + In this release, the objects read from this PipelineReader + are PSObjects wrapping ErrorRecords. + + + + + Gets Info about current state of the pipeline. + + + This value indicates the state of the pipeline after the change. + + + + + True if pipeline execution encountered and error. + It will alwys be true if _reason is non-null + since an exception occurred. For other error types, + It has to be set manually. + + + + + gets the unique identifier for this pipeline. This indentifier is unique with in + the scope of Runspace. + + + + + gets the collection of commands for this pipeline. + + + + + If this property is true, SessionState is updated for this + pipeline state. + + + + + Settings for the pipeline invocation thread. + + + + + If this flag is true, the commands in this Pipeline will redirect the global error output pipe + (ExecutionContext.ShellFunctionErrorOutputPipe) to the command's error output pipe. + + When the global error output pipe is not set, $ErrorActionPreference is not checked and all + errors are treated as terminating errors. + + On V1, the global error output pipe is redirected to the command's error output pipe only when + it has already been redirected. The command-line host achieves this redirection by merging the + error output into the output pipe so it checks $ErrorActionPreference all right. However, when + the Pipeline class is used programatically the global error output pipe is not set and the first + error terminates the pipeline. + + This flag is used to force the redirection. By default it is false to maintain compatibility with + V1, but the V2 hosting interface (PowerShell class) sets this flag to true to ensure the global + error output pipe is always set and $ErrorActionPreference when invoking the Pipeline. + + + + + Event raised when Pipeline's state changes. + + + + + Invoke the pipeline, synchronously, returning the results as an array of + objects. + + If using synchronous invoke, do not close + input objectWriter. Synchronous invoke will always close the input + objectWriter. + + + No command is added to pipeline + + + PipelineState is not NotStarted. + + + 1) A pipeline is already executing. Pipeline cannot execute + concurrently. + 2) Attempt is made to invoke a nested pipeline directly. Nested + pipeline must be invoked from a running pipeline. + + + RunspaceState is not Open + + + Pipeline already disposed + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the pipeline was executing was aborted. + + + Pipeline.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Invoke the pipeline, synchronously, returning the results as an array of objects. + + an array of input objects to pass to the pipeline. + Array may be empty but may not be null + An array of zero or more result objects + If using synchronous exectute, do not close + input objectWriter. Synchronous invoke will always close the input + objectWriter. + + + No command is added to pipeline + + + PipelineState is not NotStarted. + + + 1) A pipeline is already executing. Pipeline cannot execute + concurrently. + 2) Attempt is made to invoke a nested pipeline directly. Nested + pipeline must be invoked from a running pipeline. + + + RunspaceState is not Open + + + Pipeline already disposed + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the pipeline was executing was aborted. + + + Pipeline.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Invoke the pipeline asynchronously + + + 1) Results are returned through the reader. + 2) When pipeline is invoked using InvokeAsync, invocation doesn't + finish until Input to pipeline is closed. Caller of InvokeAsync must close + the input pipe after all input has been written to input pipe. Input pipe + is closed by calling Pipeline.Input.Close(); + + If you want this pipeline to execute as a standalone command + (that is, using command-line parameters only), + be sure to call Pipeline.Input.Close() before calling + InvokeAsync(). Otherwise, the command will be executed + as though it had external input. If you observe that the + command isn't doing anything, this may be the reason. + + + No command is added to pipeline + + + PipelineState is not NotStarted. + + + 1) A pipeline is already executing. Pipeline cannot execute + concurrently. + 2) InvokeAsync is called on nested pipeline. Nested pipeline + cannot be executed Asynchronously. + + + RunspaceState is not Open + + + Pipeline already disposed + + + + + Synchronous call to stop the running pipeline. + + + + + Asynchronous call to stop the running pipeline. + + + + + Creates a new that is a copy of the current instance. + + A new that is a copy of this instance. + + + + Connects synchronously to a running command on a remote server. + The pipeline object must be in the disconnected state. + + A collection of result objects. + + + + Connects asynchronously to a running command on a remote server. + + + + + Sets the command collection. + + command collection to set + called by ClientRemotePipeline + + + + Sets the history string to the one that is specified + + history string to set + + + + Invokes a remote command and immediately disconnects if + transport layer supports it. + + + + + Blocks data arriving from remote session. + + + + + Resumes data arrive from remote session. + + + + + Blocking call that waits until the current remote data + queue is empty. + + + + + Disposes the pipeline. If pipeline is running, dispose first + stops the pipeline. + + + + + Protected dispose which can be overridden by derived classes. + + + + + + This class has common base implementation for Pipeline class. + LocalPipeline and RemotePipeline classes derives from it. + + + + + Create a pipeline initialized with a command string + + The associated Runspace/>. + command string + if true, add pipeline to history + True for nested pipeline + + Command is null and add to history is true + + + + + Create a Pipeline with an existing command string. + Caller should validate all the parameters. + + + The LocalRunspace to associate with this pipeline. + + + The command to invoke. + + + If true, add the command to history. + + + If true, mark this pipeline as a nested pipeline. + + + Stream to use for reading input objects. + + + Stream to use for writing error objects. + + + Stream to use for writing output objects. + + + Buffers used to write progress, verbose, debug, warning, information + information of an invocation. + + + Command is null and add to history is true + + + 1. InformationalBuffers is null + + + + + Copy constructor to support cloning + + The source pipeline + + The copy constructor's intent is to support the scenario + where a host needs to run the same set of commands multiple + times. This is accomplished via creating a master pipeline + then cloning it and executing the cloned copy. + + + + + Access the runspace this pipeline is created on. + + + + + This internal method doesn't do the _disposed check. + + + + + + Is this pipeline nested + + + + + Is this a pulse pipeline (created by the EventManager) + + + + + Info about current state of the pipeline. + + + This value indicates the state of the pipeline after the change. + + + + + Access the input writer for this pipeline. + + + + + Access the output reader for this pipeline. + + + + + Access the error output reader for this pipeline. + + + This is the non-terminating error stream from the command. + In this release, the objects read from this PipelineReader + are PSObjects wrapping ErrorRecords. + + + + + Is this pipeline a child pipeline? + + IsChild flag makes it possible for the pipeline to differentiate between + a true v1 nested pipeline and the cmdlets calling cmdlets case. See bug + 211462. + + + + + Synchronous call to stop the running pipeline. + + + + + Asynchronous call to stop the running pipeline. + + + + + Stop the running pipeline. + + If true pipeline is stoped synchronously + else asynchronously. + + + + Stop execution of pipeline + + If false, call is asynchronous + + + + Invoke the pipeline, synchronously, returning the results as an + array of objects. + + an array of input objects to pass to the pipeline. + Array may be empty but may not be null + An array of zero or more result objects + Caller of synchronous exectute should not close + input objectWriter. Synchronous invoke will always close the input + objectWriter. + + On Synchronous Invoke if output is throttled and no one is reading from + output pipe, Execution will block after buffer is full. + + + + + Invoke the pipeline asynchronously + + + Results are returned through the reader. + + + + + This parameter is true if Invoke is called. + It is false if InvokeAsync is called. + + + + + Invoke the pipeline asynchronously with input. + + input to provide to pipeline. Input is + used only for synchronous execution + True if this method is called from + synchronous invoke else false + + Results are returned through the reader. + + + No command is added to pipeline + + + PipelineState is not NotStarted. + + + 1) A pipeline is already executing. Pipeline cannot execute + concurrently. + 2) InvokeAsync is called on nested pipeline. Nested pipeline + cannot be executed Asynchronously. + 3) Attempt is made to invoke a nested pipeline directly. Nested + pipeline must be invoked from a running pipeline. + + + RunspaceState is not Open + + + Pipeline already disposed + + + + + Invokes a remote command and immediately disconnects if + transport layer supports it. + + + + + Starts execution of pipeline. + + + + + For nested pipeline, system checks that Execute is called from + currently executing pipeline. + If PerformNestedCheck is false, this check is bypassed. This + is set to true by remote provider. In remote provider case all + the checks are done by the client proxy. + + + + + This is the thread on which NestedPipeline can be executed. + In case of LocalPipeline, this is the thread of execution + of LocalPipeline. In case of RemotePipeline, this is thread + on which EnterNestedPrompt is called. + RemotePipeline proxy should set it on at the begining of + EnterNestedPrompt and clear it on return. + + + + + Check if anyother pipeline is executing. + In case of nested pipeline, checks that it is called + from currently executing pipeline's thread. + + True if method is called from Invoke, false + if called from InvokeAsync + The sync object on which the lock is acquired + True if the method is invoked in a critical secion + + 1) A pipeline is already executing. Pipeline cannot execute + concurrently. + 2) InvokeAsync is called on nested pipeline. Nested pipeline + cannot be executed Asynchronously. + 3) Attempt is made to invoke a nested pipeline directly. Nested + pipeline must be invoked from a running pipeline. + + + + + Connects synchronously to a running command on a remote server. + The pipeline object must be in the disconnected state. + + A collection of result objects. + + + + Connects asynchronously to a running command on a remote server. + + + + + Event raised when Pipeline's state changes. + + + + + Current state of the pipeline. + + + This value indicates the state of the pipeline after the change. + + + + + This returns true if pipeline state is Completed, Failed or Stopped + + + + + + This is queue of all the state change event which have occured for + this pipeline. RaisePipelineStateEvents raises event for each + item in this queue. We don't raise the event with in SetPipelineState + because often SetPipelineState is called with in a lock. + Raising event in lock introduces chances of deadlock in GUI applications. + + + + + Sets the new execution state. + + the new state + + An exception indicating that state change is the result of an error, + otherwise; null. + + + Sets the internal execution state information member variable. It + also adds PipelineStateInfo to a queue. RaisePipelineStateEvents + raises event for each item in this queue. + + + + + Set the new execution state + + the new state + + + + Raises events for changes in execution state. + + + + + ManualResetEvent which is signaled when pipeline execution is + completed/failed/stoped. + + + + + OutputStream from PipelineProcessor. Host will read on + ObjectReader of this stream. PipelineProcessor will write to + ObjectWriter of this stream. + + + + + ErrorStream from PipelineProcessor. Host will read on + ObjectReader of this stream. PipelineProcessor will write to + ObjectWriter of this stream. + + + + + Informational Buffers that represent verbose, debug, progress, + warning emanating from the command execution. + + + Informational buffers are introduced after 1.0. This can be + null if executing command as part of 1.0 hosting interfaces. + + + + + Stream for providing input to PipelineProcessor. Host will write on + ObjectWriter of this stream. PipelineProcessor will read from + ObjectReader of this stream. + + + + + if true, this pipeline is added in history + + + + + String which is added in the history + + This needs to be internal so that it can be replaced + by invoke-cmd to place correct string in history. + + + + Initialized the current pipeline instance with the supplied data. + + + + + + + 1. addToHistory is true and command is null. + + + + + Object used for synchronization + + + + + Set to true when object is disposed + + + + + Protected dispose which can be overridden by derived classes. + + + + + + Exception thrown when state of the runspace pool is different from + expected state of runspace pool. + + + + + Creates a new instance of InvalidRunspacePoolStateException class. + + + + + Creates a new instance of InvalidRunspacePoolStateException class. + + + The error message that explains the reason for the exception. + + + + + Creates a new instance of InvalidRunspacePoolStateException class. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + + + + + Initializes a new instance of the InvalidRunspacePoolStateException + with a specified error message and current and expected state. + + The message that describes the error. + Current state of runspace pool. + Expected state of the runspace pool. + + + + Initializes a new instance of the InvalidRunspacePoolStateException + class with serialized data. + + + The that holds + the serialized object data about the exception being thrown. + + + The that contains + contextual information about the source or destination. + + + + + Access CurrentState of the runspace pool. + + + This is the state of the runspace pool when exception was thrown. + + + + + Expected state of runspace pool by the operation which has thrown + this exception. + + + + + Converts the current to an InvalidRunspaceStateException + + + + + Converts a RunspacePoolState to a RunspaceState + + + + + State of the runspace pool when exception was thrown. + + + + + State of the runspace pool expected in method which throws this exception. + + + + + Defines various states of a runspace pool. + + + + + Beginning state upon creation + + + + + A RunspacePool is being created. + + + + + The RunspacePool is created and valid. + + + + + The RunspacePool is closed. + + + + + The RunspacePool is being closed + + + + + The RunspacePool has been disconnected abnormally. + + + + + The RunspacePool is being disconnected + + + + + The RunspacePool has been disconnected + + + + + The RunspacePool is being connected + + + + + Event arguments passed to runspacepool state change handlers + event. + + + + + Constructor + + + state to raise the event with. + + + + + + + + + + + Gets the stateinfo of RunspacePool when this event occurred. + + + + + Event arguments passed to RunspaceCreated event of RunspacePool. + + + + + + + + + + Defines runspace pool availability. + + + + + RunspacePool is not in the Opened state. + + + + + RunspacePool is Opened and available to accept commands. + + + + + RunspacePool on the server is connected to another + client and is not available to this client for connection + or running commands. + + + + + Defines runspace capabilities. + + + + + No additional capabilites beyond a default runspace. + + + + + Runspacepool and remoting layer supports disconnect/connect feature. + + + + + Encapsulated the AsyncResult for pool's Open/Close async operations + + + + + Constructor + + + Instace Id of the pool creating this instance + + + Callback to call when the async operation completes. + + + A user supplied state to call the "callback" with. + + + true if AsyncResult monitors Async Open. + false otherwise + + + + + true if AsyncResult monitors Async Open. + false otherwise + + + + + Encapsulated the results of a RunspacePool.BeginGetRunspace method + + + + + Constructor + + + Instace Id of the pool creating this instance + + + Callback to call when the async operation completes. + + + A user supplied state to call the "callback" with. + + + + + Gets the runspace that is assigned to the async operation. + + + This can be null if the async Get operation is not completed. + + + + + Gets or sets a value indicating whether this operation + is active or not. + + + + + Marks the async operation as completed and releases + waiting threads. + + + This is not used + + + This method is called from a thread pool thread to release + the async operation. + + + + + Public interface which supports pooling PowerShell Runspaces. + + + + + Constructor which creates a RunspacePool using the + supplied , + and + + + The minimum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The maximum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + RunspaceConfiguration to use when creating a new Runspace. + + + The explicit PSHost implementation. + + + RunspaceConfiguration is null. + Host is null. + + + Maximum runspaces is less than 1. + Minimum runspaces is less than 1. + + + + + Constructor which creates a RunspacePool using the + supplied , + and + + + The minimum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The maximum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + InitialSessionState object to use when creating a new Runspace. + + + The explicit PSHost implementation. + + + initialSessionState is null. + Host is null. + + + Maximum runspaces is less than 1. + Minimum runspaces is less than 1. + + + + + Construct a runspace pool object. + + Min runspaces. + Max runspaces. + TypeTable. + Host. + App arguments. + Connection information. + Session name. + + + + Creates a runspace pool object in a disconnected state that is + ready to connect to a remote runspace pool session specified by + the instanceId parameter. + + Indicates whether the shell/runspace pool is disconnected. + Identifies a remote runspace pool session to connect to. + Friendly name for runspace pool. + Runspace pool running commands information. + Connection information of remote server. + PSHost object. + TypeTable used for serialization/deserialization of remote objects. + + + + Get unqiue id for this instance of runspace pool. It is primarily used + for logging purposes. + + + + + Gets a boolean which describes if the runspace pool is disposed. + + + + + Gets State of the current runpsace pool. + + + + + Gets the InitialSessionState object that this pool uses + to create the runspaces. + + + + + Connection information for remote RunspacePools, null for local RunspacePools + + + + + Specifies how often unused runspaces are disposed. + + + + + Returns runspace pool availability. + + + + + Event raised when RunspacePoolState changes. + + + + + Handle internal Pool state changed events. + + + + + + + Event raised when one of the runspaces in the pool forwards an event to this instance + + + + + Pass thru of the ForwardEvent event from the internal pool + + + + + Raises the ForwardEvent event + + + + + Event rasied when a new Runspace is created by the pool. + + + + + Handle internal Pool RunspaceCreated events. + + + + + + + Queries the server for disconnected runspace pools and creates an array of runspace + pool objects associated with each disconnected runspace pool on the server. Each + runspace pool object in the returned array is in the Disconnected state and can be + connected to the server by calling the Connect() method on the runspace pool. + + Connection object for the target server. + Array of RunspacePool objects each in the Disconnected state. + + + + Queries the server for disconnected runspace pools and creates an array of runspace + pool objects associated with each disconnected runspace pool on the server. Each + runspace pool object in the returned array is in the Disconnected state and can be + connected to the server by calling the Connect() method on the runspace pool. + + Connection object for the target server. + Client host object. + Array of RunspacePool objects each in the Disconnected state. + + + + Queries the server for disconnected runspace pools and creates an array of runspace + pool objects associated with each disconnected runspace pool on the server. Each + runspace pool object in the returned array is in the Disconnected state and can be + connected to the server by calling the Connect() method on the runspace pool. + + Connection object for the target server. + Client host object. + TypeTable object. + Array of RunspacePool objects each in the Disconnected state. + + + + Disconnects the runspace pool synchronously. Runspace pool must be in Opened state. + + + + + Disconnects the runspace pool asynchronously. Runspace pool must be in Opened state. + + An AsyncCallback to call once the BeginClose completes. + A user supplied state to call the callback with. + + + + Waits for the pending asynchronous BeginDisconnect to complete. + + Asynchronous call result object. + + + + Connects the runspace pool synchronously. Runspace pool must be in disconnected state. + + + + + Connects the runspace pool asynchronously. Runspace pool must be in disconnected state. + + + + + + + Waits for the pending asynchronous BeginConnect to complete. + + Asynchronous call result object. + + + + Creates an array of PowerShell objects that are in the Disconnected state for + all currently disconnected running commands associated with this runspace pool. + + + + + + Returns RunspacePool capabilities. + + RunspacePoolCapability + + + + Sets the maximum number of Runspaces that can be active concurrently + in the pool. All requests above that number remain queued until + runspaces become available. + + + The maximum number of runspaces in the pool. + + + true if the change is successful; otherwise, false. + + + You cannot set the number of runspaces to a number smaller than + the minimum runspaces. + + + + + Retrieves the maximum number of runspaces the pool maintains. + + + The maximum number of runspaces in the pool + + + + + Sets the minimum number of Runspaces that the pool maintains + in anticipation of new requests. + + + The minimum number of runspaces in the pool. + + + true if the change is successful; otherwise, false. + + + You cannot set the number of idle runspaces to a number smaller than + 1 or greater than maximum number of active runspaces. + + + + + Retrieves the minimum number of runspaces the pool maintains. + + + The minimum number of runspaces in the pool + + + + + Retrieves the number of runspaces available at the time of calling + this method. + + + The number of available runspace in the pool. + + + + + Opens the runspacepool synchronously. RunspacePool must + be opened before it can be used. + + + RunspacePoolState is not BeforeOpen + + + + + Opens the RunspacePool asynchronously. RunspacePool must + be opened before it can be used. + To get the exceptions that might have occurred, call + EndOpen. + + + A AsyncCallback to call once the BeginOpen completes. + + + A user supplied state to call the + with. + + + An AsyncResult object to monitor the state of the async + operation. + + + + + Waits for the pending asynchronous BeginOpen to complete. + + + asyncResult is a null reference. + + + asyncResult object was not created by calling BeginOpen + on this runspacepool instance. + + + RunspacePoolState is not BeforeOpen. + + + TODO: Behavior if EndOpen is called multiple times. + + + + + Closes the RunspacePool and cleans all the internal + resources. This will close all the runspaces in the + runspacepool and release all the async operations + waiting for a runspace. If the pool is already closed + or broken or closing this will just return. + + + Cannot close the RunspacePool because RunspacePool is + in Closing state. + + + + + Closes the RunspacePool asynchronously and cleans all the internal + resources. This will close all the runspaces in the + runspacepool and release all the async operations + waiting for a runspace. If the pool is already closed + or broken or closing this will just return. + + + A AsyncCallback to call once the BeginClose completes. + + + A user supplied state to call the + with. + + + An AsyncResult object to monitor the state of the async + operation. + + + + + Waits for the pending asynchronous BeginClose to complete. + + + asyncResult is a null reference. + + + asyncResult object was not created by calling BeginClose + on this runspacepool instance. + + + + + Dispose the current runspacepool. + + + + + Private data to be used by applications built on top of PowerShell. + + Local runspace pool is created with application private data set to an empty . + + Remote runspace pool gets its application private data from the server (when creating the remote runspace pool) + Calling this method on a remote runspace pool will block until the data is received from the server. + The server will send application private data before reaching state. + + Runspaces that are part of a inherit application private data from the pool. + + + + + This property determines whether a new thread is created for each invocation + + + Any updates to the value of this property must be done before the RunspacePool is opened + + + An attempt to change this property was made after opening the RunspacePool + + + + + ApartmentState of the thread used to execute commands within this RunspacePool + + + Any updates to the value of this property must be done before the RunspacePool is opened + + + An attempt to change this property was made after opening the RunspacePool + + + + + Gets Runspace asynchronously from the runspace pool. The caller + will get notified with the runspace using + + + A AsyncCallback to call once the runspace is available. + + + A user supplied state to call the + with. + + + An IAsyncResult object to track the status of the Async operation. + + + + + Cancels the pending asynchronous BeginGetRunspace operation. + + + + + + + Waits for the pending asynchronous BegineGetRunspace to complete. + + + + + asyncResult is a null reference. + + + asyncResult object was not created by calling BeginGetRunspace + on this runspacepool instance. + + + RunspacePoolState is not BeforeOpen. + + + + + Releases a Runspace to the pool. If pool is closed, this + will be a no-op. + + + Runspace to release to the pool. + + + is null. + + + Cannot release the runspace to this pool as the runspace + doesn't belong to this pool. + + + Only opened runspaces can be released back to the pool. + + + + + Indicates whether the RunspacePool is a remote one + + + + + RemoteRunspacePoolInternal associated with this + runspace pool + + + + + Class which supports pooling local powerShell runspaces. + + + + + Constructor which creates a RunspacePool using the + supplied , + and + + + RunspaceConfiguration to use when creating a new Runspace. + + + The maximum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The minimum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The explicit PSHost implementation. + + + RunspaceConfiguration is null. + Host is null. + + + Maximum runspaces is less than 1. + Minimum runspaces is less than 1. + + + + + Constructor which creates a RunspacePool using the + supplied , + and + + + InitialSessionState to use when creating a new Runspace. + + + The maximum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The minimum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The explicit PSHost implementation. + + + initialSessionState is null. + Host is null. + + + Maximum runspaces is less than 1. + Minimum runspaces is less than 1. + + + + + Constructor for doing common initialization between + this class and its derivatives + + + The maximum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The minimum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + + + default constructor + + + + + Get unqiue id for this instance of runspace pool. It is primarily used + for logging purposes. + + + + + Gets a boolean which describes if the runspace pool is disposed. + + + + + Gets State of the current runpsace pool. + + + + + Private data to be used by applications built on top of PowerShell. + + Local runspace pool is created with application private data set to an empty . + + + + + Gets the RunspaceConfiguration object that this pool uses + to create the runspaces. + + + + + Gets the InitialSessionState object that this pool uses + to create the runspaces. + + + + + the connection associated with this runspace pool + + + + + Specifies how often unused runspaces are disposed. + + + + + Returns runspace pool availability. + + + + + Event raised when RunspacePoolState changes. + + + + + Event raised when one of the runspaces in the pool forwards an event to this instance + + + + + Event rasied when a new Runspace is created by the pool. + + + + + Synchronously disconnect runspace pool. + + + + + Asynchronously disconnect runspace pool. + + + + + + + + Wait for BeginDisconnect to complete. + + + + + + Synchronously connect runspace pool. + + + + + Asynchronously connect runspace pool. + + + + + + + + Wait for BeginConnect to complete. + + + + + + Creates an array of PowerShell objects that are in the Disconnected state for + all currently disconnected running commands associated with this runspace pool. + + + + + + Returns RunspacePool capabilities. + + RunspacePoolCapability + + + + Resets the runspace state on a runspace pool with a single + runspace. + This is currently supported *only* for remote runspaces. + + True if successful + + + + Sets the maximum number of Runspaces that can be active concurrently + in the pool. All requests above that number remain queued until + runspaces become available. + + + The maximum number of runspaces in the pool. + + + true if the change is successful; otherwise, false. + + + You cannot set the number of runspaces to a number smaller than + the minimum runspaces. + + + + + Retrieves the maximum number of runspaces the pool maintains. + + + The maximum number of runspaces in the pool + + + + + Sets the minimum number of Runspaces that the pool maintains + in anticipation of new requests. + + + The minimum number of runspaces in the pool. + + + true if the change is successful; otherwise, false. + + + You cannot set the number of idle runspaces to a number smaller than + 1 or greater than maximum number of active runspaces. + + + + + Retrieves the minimum number of runspaces the pool maintains. + + + The minimum number of runspaces in the pool + + + + + Retrieves the number of runspaces available at the time of calling + this method. + + + If the RunspacePool failed or has been closed + + + The number of available runspace in the pool. + + + + + Opens the runspacepool synchronously. RunspacePool must + be opened before it can be used. + + + RunspacePoolState is not BeforeOpen + + + + + Opens the RunspacePool asynchronously. RunspacePool must + be opened before it can be used. + To get the exceptions that might have occurred, call + EndOpen. + + + A AsyncCallback to call once the BeginOpen completes. + + + A user supplied state to call the + with. + + + An AsyncResult object to monitor the state of the async + operation. + + + + + Waits for the pending asynchronous BeginOpen to complete. + + + asyncResult is a null reference. + + + asyncResult object was not created by calling BeginOpen + on this runspacepool instance. + + + RunspacePoolState is not BeforeOpen. + + + TODO: Behavior if EndOpen is called multiple times. + + + + + Closes the RunspacePool and cleans all the internal + resources. This will close all the runspaces in the + runspacepool and release all the async operations + waiting for a runspace. If the pool is already closed + or broken or closing this will just return. + + + + + Closes the RunspacePool asynchronously and cleans all the internal + resources. This will close all the runspaces in the + runspacepool and release all the async operations + waiting for a runspace. If the pool is already closed + or broken or closing this will just return. + + + A AsyncCallback to call once the BeginClose completes. + + + A user supplied state to call the + with. + + + An AsyncResult object to monitor the state of the async + operation. + + + + + Waits for the pending asynchronous BeginClose to complete. + + + asyncResult object was not created by calling BeginClose + on this runspacepool instance. + + + TODO: Behavior if EndClose is called multiple times. + + + + + Gets a Runspace from the pool. If no free runspace is available + and if max pool size is not reached, a new runspace is created. + Otherwise this will block a runspace is released and available. + + + An opened Runspace. + + + Cannot perform operation because RunspacePool is + not in the opened state. + + + + + Releases a Runspace to the pool. If pool is closed, this + will be a no-op. + + + Runspace to release to the pool. + + + is null. + + + Runspool is not in Opened state. + + + Cannot release the runspace to this pool as the runspace + doesn't belong to this pool. + + + + + Dispose off the current runspace pool + + + true to release all the internal resources. + + + + + The value of this property is propagated to all the Runspaces in this pool; + it determines whether a new thread is create when a pipeline is executed. + + + Any updates to the value of this property must be done before the RunspacePool is opened + + + + + The value of this property is propagated to all the Runspaces in this pool + + + Any updates to the value of this property must be done before the RunspacePool is opened + + + + + Gets Runspace asynchronously from the runspace pool. The caller + will get notified with the runspace using + + + A AsyncCallback to call once the runspace is available. + + + A user supplied state to call the + with. + + + An IAsyncResult object to track the status of the Async operation. + + + + + Cancels the pending asynchronous BeginGetRunspace operation. + + + + + + + Waits for the pending asynchronous BegineGetRunspace to complete. + + + + + asyncResult is a null reference. + + + asyncResult object was not created by calling BeginGetRunspace + on this runspacepool instance. + + + RunspacePoolState is not BeforeOpen. + + + TODO: Behavior if EndGetRunspace is called multiple times. + + + + + Opens the runspacepool synchronously / asynchronously. + Runspace pool must be opened before it can be used. + + + true to open asynchronously + + + A AsyncCallback to call once the BeginOpen completes. + + + A user supplied state to call the + with. + + + asyncResult object to monitor status of the async + open operation. This is returned only if + is true. + + + Cannot open RunspacePool because RunspacePool is not in + the BeforeOpen state. + + + There is not enough memory available to start this asynchronously. + + + + + Creates a Runspace + opens it synchronously and + pushes it into the stack. + + + Caller to make sure this is thread safe. + + + + + Starting point for asynchronous thread + + + asyncResult object + + + + + Closes the runspacepool synchronously / asynchronously. + + + true to close asynchronously + + + A AsyncCallback to call once the BeginClose completes. + + + A user supplied state to call the + with. + + + asyncResult object to monitor status of the async + open operation. This is returned only if + is true. + + + + + Raise state changed event based on the StateInfo + object + + state information object + + + + Checks if the Pool is open to honour requests. + If not throws an exception. + + + Cannot perform operation because RunspacePool is + not in the opened state. + + + + + Creates a new Runspace and initializes it by calling Open() + + + An opened Runspace. + + + TODO: Exceptions thrown here need to be documented. + + + + + Cleans/Closes the runspace + + + Runspace to be closed/cleaned + + + + + Cleans the pool closing the runspaces that are idle. + This method is called as part of a timer callback. + This method will make sure atleast minPoolSz number + of Runspaces are active. + + + + + + Close all the runspaces in the pool + + + + + If is not null, enqueues the request. + Checks if a thread pool thread is queued to service pending requests + for runspace. If a thread is not queued, queues one. + + + Used by calling threads to queue a request before checking and starting + servicing thread. + + + uses calling thread to assign available runspaces (if any) to runspace + requesters. + + + + + Releases any readers in the reader queue waiting for + Runspace. + + + This is of type object..because this method is called from a ThreadPool + Thread. + true, if calling thread should be used to assign a runspace. + + + + + Throws an exception if the runspace state is not + BeforeOpen + + + + + Raises the ForwardEvent event + + + + + Forward runspace events to the pool's event queue + + + + + Class which supports pooling remote powerShell runspaces + on the client + + + + + Constructor which creates a RunspacePool using the + supplied , + and + + + The maximum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The minimum number of Runspaces that can exist in this pool. + Should be greater than or equal to 1. + + + The TypeTable to use while deserializing/serializing remote objects. + TypeTable has the following information used by serializer: + 1. SerializationMethod + 2. SerailizationDepth + 3. SpecificSerializationProperties + TypeTable has the following inforamtion used by deserializer: + 1. TargetTypeForDeserializaiton + 2. TypeConverter + + Host associated with this runspacepool + + Application arguments the server can see in + + The RunspaceConnectionInfo object + which identifies this runspace pools connection to the server + + Session name. + + Maximum runspaces is less than 1. + Minimum runspaces is less than 1. + + + ConnectionInfo specified is null + + + + + Create a runspacepool object in the disconnected state. + + Identifies remote session to connect. + Friendly name for runspace pool. + Indicates whether the runspacepool is disconnected. + Array of commands associated with this runspace pool. + Connection information for remote server. + PSHost object. + TypeTable for object serialization/deserialization. + + + + Helper method to create the dispatchTable and dataStructureHandler objects. + + + + + the connection associated with this runspace pool + + + + + The ClientRunspacePoolDataStructureHandler associated with this + runspace pool + + + + + List of CommandConnectInfo objects for each remote running command + associated with this remote runspace pool. + + + + + Gets and sets the name string for this runspace pool object. + + + + + Indicates whether this runspace pools viable/available for connection. + + + + + Returns robust connection maximum retry time in milliseconds. + + + + + Returns runspace pool availability. + + + + + Property to indicate that the debugger associated to this + remote runspace is in debug stop mode. + + + + + Resets the runspace state on a runspace pool with a single + runspace. + This is currently supported *only* for remote runspaces. + + True if successful + + + + Sets the maximum number of Runspaces that can be active concurrently + in the pool. All requests above that number remain queued until + runspaces become available. + + + The maximum number of runspaces in the pool. + + + true if the change is successful; otherwise, false. + + + You cannot set the number of runspaces to a number smaller than + the minimum runspaces. + + + + + Sets the minimum number of Runspaces that the pool maintains + in anticipation of new requests. + + + The minimum number of runspaces in the pool. + + + true if the change is successful; otherwise, false. + + + You cannot set the number of idle runspaces to a number smaller than + 1 or greater than maximum number of active runspaces. + + + + + Retrieves the number of runspaces available at the time of calling + this method from the remote server + + The number of runspaces available in the pool + + + + The server sent application private data. Store the data so that user + can get it later. + + argument describing this event + sender of this event + + + + The state of the server RunspacePool has changed. Handle + the same and reflect local states accordingly + + argument describing this event + sender of this event + + + + A host call has been proxied from the server which needs to + be executed + + sender of this event + arguments describing this event + + + + Application arguments to use when opening a remote session + + + + + Private data to be used by applications built on top of PowerShell. + + Remote runspace pool gets its application private data from the server (when creating the remote runspace pool) + - calling this method on a remote runspace will block until the data is received from the server. + - unless the runspace is disconnected and data hasn't been received in which case it returns null immediately. + + + + + This event is raised, when a host call is for a remote runspace + which this runspace pool wraps + + + + + EventHandler used to report connecion URI redirections to the application + + + + + Notifies the successful creation of the runspace session. + + + + + + + + + + + Add a ClientPowerShellDataStructureHandler to ClientRunspaceDataStructureHandler list. + + PowerShell Instance Id. + ClientPowerShellDataStructureHandler for PowerShell. + + + + Returns true if Runspace supports disconnect. + + + + + Returns the WinRM protocol version object for this runspace + pool connection. + + + + + Push a running PowerShell onto the stack. + + PowerShell + + + + Pop the currently running PowerShell from stack. + + PowerShell + + + + Return the current running PowerShell. + + PowerShell + + + + Opens the runspacepool synchronously / asynchronously. + Runspace pool must be opened before it can be used. + + + true to open asynchronously + + + A AsyncCallback to call once the BeginOpen completes. + + + A user supplied state to call the + with. + + + asyncResult object to monitor status of the async + open operation. This is returned only if + is true. + + + Cannot open RunspacePool because RunspacePool is not in + the BeforeOpen state. + + + There is not enough memory available to start this asynchronously. + + + + + Synchronous open + + + + + Closes the RunspacePool and cleans all the internal + resources. This will close all the runspaces in the + runspacepool and release all the async operations + waiting for a runspace. If the pool is already closed + or broken or closing this will just return. + + + Cannot close the RunspacePool because RunspacePool is + in Closing state. + + + + + Closes the RunspacePool asynchronously. To get the exceptions + that might have occurred, call EndOpen + + + An AsyncCallback to call once the BeginClose completes + + + A user supplied state to call the + with + + + An AsyncResult object to monitor the state of the async + operation + + + + + Synchronous disconnect. + + + + + Asynchronous disconnect. + + AsyncCallback object. + state object. + IAsyncResult + + + + Waits for BeginDisconnect operation to complete. + + IAsyncResult object. + + + + Synchronous connect. + + + + + Asynchronous connect. + + ASyncCallback object. + state Object. + IAsyncResult + + + + Waits for BeginConnect to complete. + + IAsyncResult object. + + + + Creates an array of PowerShell objects that are in the Disconnected state for + all currently disconnected running commands associated with this runspace pool. + + Array of PowerShell objects. + + + + Returns RunspacePool capabilities. + + RunspacePoolCapability + + + + Set the new runspace pool state based on the state of the + server RunspacePool + + state information object + describing the state change at the server RunspacePool + + + + Set the new runspace pool state based on the state of the + server RunspacePool and raise events if required + + state information object + describing the state change at the server RunspacePool + raise state changed events if true + + + + The session is closing set the state and reason accordingly + + sender of this event, unused + arguments describing this event + + + + The session closed, set the state and reason accordingly + + sender of this event, unused + arguments describing this event + + + + Set the async result for open as completed + + + + + Set the async result for close as completed + + + + + When a response to a SetMaxRunspaces or SetMinRunspaces is received, + from the server, this method sets the response and thereby unblocks + corresponding call + + sender of this message, unused + contains response and call id + + + + When the client remote session reports a URI redirection, this method will report the + message to the user as a Warning using Host method calls. + + + + + + + When the server sends a PSEventArgs this method will add it to the local event queue + + + + + A session disconnect has been initiated by the WinRM robust connection layer. Set + internal state to Disconnecting. + + + + + + + The session has been successfully created. + + + + + + + Waits for application private data from server before raising + event: Connecting->Opened state changed event. + + + + + + Public method for Dispose + + + + + Release all resources + + if true, release all managed resources + + + + Class defining a remote command to connect to. + + + + + Remote command instance Id. + + + + + Remote command string. + + + + + Constructs a remote command object. + + Command instance Id. + Command string. + + + + Enumerates remote runspacepools (Shells) and running commands + using Get-WSManInstance cmdlet. + + + + + Gets an array of XmlElement objects representing all + disconnected runspace pools on the indicated server. + + Specifies the remote server to connect to.] + Collection of XmlElement objects. + + + + Gets an array of XmlElement objects representing each running command + on the specified runspace pool with the shellid Guid. + + Guid of shellId (runspacepool Id). + Specifies the remote server to connect to.] + Collection of XmlElement objects. + + + + Use the WSMan New-WSManSessionOption cmdlet to create a session options + object used for Get-WSManInstance queries. + + WSManConnectionInfo + WSMan session options object + + + + PowerShell client side proxy base which handles invocation + of powershell on a remote machine + + + + + Constructor which creates a client remote powershell + + powershell instance + The runspace pool associated with + this shell + + + + Instance Id associated with this + client remote powershell + + + + + PowerShell associated with this ClientRemotePowerShell + + + + + Set the state information of the client powershell + + state information to set + + + + whether input is available when this object is created + + + + + Input stream associated with this object + + + + + Output stream associated with this object + + + + + data structure handler object + + + + + Invocation settings associated with this + ClientRemotePowerShell + + + + + Close the output, error and other collections + associated with the shell, so that the + enumerator does not block + + + + + Stop the remote powershell asynchronously + + This method will be called from + within the lock on PowerShell. Hence no need + to lock + + + + + + + + + This event is raised, when a host call is for a remote pipeline + which this remote powershell wraps + + + + + Initialize the client remote powershell instance + + input for execution + error stream to which + data needs to be written to + informational buffers + which will hold debug, verbose and warning messages + settings based on which this powershell + needs to be executed + output stream to which data + needs to be written to + + + + Do any clean up operation per initialization here + + + + + If this client remote powershell has been initialized + + + + + + + + + + + + Attempts to reconnect or connect to a running command on a remote server, + which will resume events and data collection from the server. + If connectCmdInfo parameter is null then a reconnection is attempted and + it is assumed that the current client state is unchanged since disconnection. + If connectCmdInfo parameter is non-null then a connection is attempted to + the specified remote running command. + This is an asynchronous call and results will be reported in the ReconnectCompleted + or the ConnectCompleted call back as appropriate. + + ConnectCommandInfo specifying remote command. + + + + This event is fired when this PowerShell object receives a robust connection + notification from the transport. + + + + + Current remote connection retry status. + + + + + An error record is received from the powershell at the + server side. It is added to the error collection of the + client powershell + + sender of this event, unused + arguments describing this event + + + + An output object is received from the powershell at the + server side. It is added to the output collection of the + client powershell + + sender of this event, unused + arguments describing this event + + + + The invocation state of the server powershell has changed. + The state of the client powershell is reflected accordingly + + sender of this event, unused + arguments describing this event + + + + Helper method to check any error condition after a stop call + and close the remote runspace/pool if the stop call failed due + to network outage problems. + + Exception + + + + Handler for handling any informational message received + from the server side. + + sender of this event, unused + arguments describing this event + + + + + + + + + + + Handler for ConnectCompleted and ReconnectCompleted events from the + PSRP layer. + + Sender of this event, unused. + Event arugments. + + + + This is need for the state change events that resulted in closing the underlying + datastructure handler. We cannot send the state back to the upper layers until + close is completed from the datastructure/transport layer. We have to send + the terminal state only when we know that underlying datastructure/transport + is closed. + + + + + + + Execute the specified host call + + host call to execute + + + + + + + + + + + Handles notification from RunspacePool indicating + that the pool is broken. This sets the state of + all the powershell objects associated with the + runspace pool to Failed + + sender of this information, unused + arguments describing this event + contains information on the reason associated with the + runspace pool entering a Broken state + + + + Handles a robust connection layer notification from the transport + manager. + + + + + + + This queue is for the state change events that resulted in closing the underlying + datastructure handler. We cannot send the state back to the upper layers until + close is completed from the datastructure/transport layer. + + + + + Public interface for dispose + + + + + Release all resources + + if true, release all managed resources + + + + Robust Connection notifications. + + + + + PSConnectionRetryStatusEventArgs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets a value indicating whether the associated process has been terminated. + true if the operating system process referenced by the Process component has terminated; otherwise, false. + + + + + + + + + + + + + + + + + + + + + Computer target type + + + + + Target is a machine with which the session is based on networking + + + + + Target is a virtual machine with which the session is based on Hyper-V socket + + + + + Target is a container with which the session is based on Hyper-V socket (Hyper-V + container) or named pipe (windows container) + + + + + Class that exposes read only properties and which conveys information + about a remote runspace object to the user. The class serves the + following purpose: + 1. Exposes useful information to the user as properties + 2. Shields the remote runspace object from directly being exposed + to the user. This way, the user will not be able to directly + act upon the object, but instead will have to use the remoting + cmdlets. This will prevent any unpredictable behavior. + + + + + Static variable which is incremented to generate id + + + + + Type of the computer target + + + + + Name of the computer target + + + + + Id of the container target + + + + + Name of the virtual machine target + + + + + Guid of the virtual machine target + + + + + Shell which is executed in the remote machine + + + + + InstanceID that identifies this runspace + + + + + SessionId of this runspace. This is unique only across + a session + + + + + Friendly name for identifying this runspace + + + + + Indicates whether the specified runspace is available + for executing commands + + + + + Private data to be used by applications built on top of PowerShell. + Optionally sent by the remote server when creating a new session / runspace. + + + + + The remote runspace object based on which this information object + is derived + + This property is marked internal to allow other cmdlets + to get access to the RemoteRunspace object and operate on it like + for instance test-runspace, close-runspace etc + + + + ToString method override + + string + + + + Internal method to insert a runspace into a PSSession object. + This is used only for Disconnect/Reconnect scenarios where the + new runspace is a reconstructed runspace having the same Guid + as the existing runspace. + + Runspace to insert + Boolean indicating if runspace was inserted. + + + + This constructor will be used to created a remote runspace info + object with a auto generated name + + Remote runspace object for which + the info object need to be created + + + + Generates and returns the runspace name + + auto generated name + + + + Returns shell configuration name with shell prefix removed. + + shell configuration name + display shell name + + + + Generates a unique runspace id and name. + + Returned Id + Returned name + + + + Increments and returns a session unique runspace Id. + + Id + + + + Creates a runspace name based on a given Id value. + + Integer Id + Runspace name + + + + Error record in remoting cases + + + + + Contains the origin information + + + + + constructor + + the error record that is wrapped + origin information + + + + constructor that is used to wrap an error record + + + + + + + + Serializer method for class. + + Serializer information + Streaming context + + + + Deserializer constructor. + + Serializer information + Streaming context + + + + Wrap the current ErrorRecord instance + + + If the wrapped exception contains a ParentContainsErrorRecordException, the new + ErrorRecord should have this exception as its Exception instead. + + + + + + Progress record containing origin information + + + + + Contains the origin information + + + + + Constructor + + the progress record that is wrapped + origin information + + + + Warning record containing origin information + + + + + Contains the origin information + + + + + Constructor + + The warning message that is wrapped + The origin information + + + + Constructor taking WarningRecord to wrap and OriginInfo. + + WarningRecord to wrap + OriginInfo + + + + Debug record containing origin information + + + + + Contains the origin information + + + + + Constructor + + The debug message that is wrapped + The origin information + + + + Verbose record containing origin information + + + + + Contains the origin information + + + + + Constructor + + The verbose message that is wrapped + The origin information + + + + Information record containing origin information + + + + + Contains the origin information + + + + + Constructor + + The Information message that is wrapped + The origin information + + + + Different Authentication Mechanisms supported by New-Runspace command to connect + to remote server. + + + + + Use the default authentication (as defined by the underlying protocol) + for establishing a remote connection. + + + + + Use Basic authentication for establishing a remote connection. + + + + + Use Negotiate authentication for establishing a remote connection. + + + + + Use Negotiate authentication for establishing a remote connection. + Allow implicit credentials for Negotiate. + + + + + Use CredSSP authentication for establishing a remote connection. + + + + + Use Digest authentication mechanism. Digest authentication operates much + like Basic authentication. However, unlike Basic authentication, Digest authentication + transmits credentials across the network as a hash value, also known as a message digest. + The user name and password cannot be deciphered from the hash value. Conversely, Basic + authentication sends a Base 64 encoded password, essentially in clear text, across the + network. + + + + + Use Kerberos authentication for establishing a remote connection. + + + + + Specifies the type of session configuration that + should be used for creating a connection info + + + + + Default PowerShell remoting + endpoint + + + + + Default Workflow endpoint + + + + + Specify the type of access mode that should be + used when creating a session configuration + + + + + Disable the configuration + + + + + Allow local access + + + + + Default allow remote access + + + + + WSManTransportManager supports disconnected PowerShell sessions. + When a remote PS session server is in disconnected state, output + from the running command pipeline is cached on the server. This + enum determines what the server does when the cache is full. + + + + + No output buffering mode specified. Output buffering mode on server will + default to Block if a new session is created, or will retain its current + mode for non-creation scenarios (e.g., disconnect/connect operations). + + + + + Command pipeline execution continues, excess output is dropped in FIFO manner. + + + + + Command pipeline execution on server is blocked until session is reconnected. + + + + + Class which defines connection path to a remote runspace + that needs to be created. Transport specific connection + paths will be derived from this + + + + + Name of the computer + + + + + Credential used for the connection + + + + + Authentication mechanism to use while connecting to the server + + + + + ThumbPrint of a certificate used for connecting to a remote machine. + When this is specified, you dont need to supply credential and authentication + mechanism. + + + + + Culture that the remote session should use + + + + + UI culture that the remote session should use + + + + + The duration (in ms) for which PowerShell remoting waits before timing out on a connection to a remote machine. + Simply put, the timeout for a remote runspace creation. + The administrator would like to tweak this timeout depending on whether + he/she is connecting to a machine in the data center or across a slow WAN. + + + + + The duration (in ms) for which PowerShell should wait before it times out on cancel operations + (close runspace or stop powershell). For instance, when the user hits ctrl-C, + New-PSSession cmdlet tries to call a stop on all remote runspaces which are in the Opening state. + The administrator wouldn�t mind waiting for 15 seconds, but this should be time bound and of a shorter duration. + A high timeout here like 3 minutes will give the administrator a feeling that the PowerShell client has hung. + + + + + The duration for which PowerShell remoting waits before timing out + for any operation. The user would like to tweak this timeout + depending on whether he/she is connecting to a machine in the data + center or across a slow WAN. + + Default: 3*60*1000 == 3minutes + + + + + The duration (in ms) for which a Runspace on server needs to wait before it declares the client dead and closes itself down. + This is especially important as these values may have to be configured differently for enterprise administration + and exchange scenarios. + + + + + The maximum allowed idle timeout duration (in ms) that can be set on a Runspace. This is a read-only property + that is set once the Runspace is successfully created and opened. + + + + + Populates session options from a PSSessionOption instance. + + + + + + Creates the appropriate client session transportmanager. + + Runspace/Pool instance Id + Session name + PSRemotingCryptoHelper + + + + Create a copy of the connection info object. + + Copy of the connection info object. + + + + Class which defines path to a remote runspace that + need to be created + + + + + Uri associated with this connection path + + + + + Name of the computer + + + + + Scheme used for connection + + + + + Port in which to connect + + + + + AppName which identifies the connection + end point in the machine + + + + + Credential used for the connection + + + + + + + + + + Authentication mechanism to use while connecting to the server + + + + + AuthenticationMaechanism converted to WSManAuthenticationMechanism type. + This is internal. + + + + + Allow default credentials for Negotiate + + + + + Returns the actual port property value and not the ConnectionUri port. + Internal only. + + + + + ThumbPrint of a certificate used for connecting to a remote machine. + When this is specified, you dont need to supply credential and authentication + mechanism. + + + + + Maximum uri redirection count + + + + + Total data (in bytes) that can be received from a remote machine + targeted towards a command. If null, then the size is unlimited. + Default is unlimited data. + + + + + Maximum size (in bytes) of a deserialized object received from a remote machine. + If null, then the size is unlimited. Default is unlimited object size. + + + + + If true, underlying WSMan infrastructure will compress data sent on the network. + If false, data will not be compressed. Compression improves performance by + reducing the amount of data sent on the network. Compression my require extra + memory consumption and CPU usage. In cases where available memory / CPU is less, + set this property to false. + By default the value of this property is "true". + + + + + If true then Operating System won't load the user profile (i.e. registry keys under HKCU) on the remote server + which can result in a faster session creation time. This option won't have any effect if the remote machine has + already loaded the profile (i.e. in another session). + + + + + By default, wsman uses IEConfig - the current user + Internet Explorer proxy settings for the current active network connection. + This option requires the user profile to be loaded, so the option can + be directly used when called within a process that is running under + an interactive user account identity; if the client application is running + under a user context different then the interactive user, the client + application has to explicitly load the user profile prior to using this option. + + IMPORTANT: proxy configuration is supported for HTTPS only; for HTTP, the direct + connection to the server is used + + + + + The following is the definition of the input parameter "ProxyAuthentication". + This parameter takes a set of authentication methods the user can select + from. The available options should be as follows: + - Negotiate: Use the default authentication (ad defined by the underlying + protocol) for establishing a remote connection. + - Basic: Use basic authentication for establishing a remote connection + - Digest: Use Digest authentication for establishing a remote connection + + + + + The following is the definition of the input parameter "ProxyCredential". + + + + + When connecting over HTTPS, the client does not validate that the server + certificate is signed by a trusted certificate authority (CA). Use only when + the remote computer is trusted by other means, for example, if the remote + computer is part of a network that is physically secure and isolated or the + remote computer is listed as a trusted host in WinRM configuration + + + + + Indicates that certificate common name (CN) of the server need not match the + hostname of the server. Used only in remote operations using https. This + option should only be used for trusted machines. + + + + + Indicates that certificate common name (CN) of the server need not match the + hostname of the server. Used only in remote operations using https. This + option should only be used for trusted machines + + + + + Specifies that no encryption will be used when doing remote operations over + http. Unencrypted traffix is not allowed by default and must be enabled in + the local configuration + + + + + Indicates the request is encoded in UTF16 format rather than UTF8 format; + UTF8 is the default. + + + + + Determines how server in disconnected state deals with cached output + data when the cache becomes filled. + + + + + Uses Service Principal Name (SPN) along with the Port number during authentication. + + + + + When true and in loopback scenario (localhost) this enables creation of WSMan + host process with the user interactive token, allowing PowerShell script network access, + i.e., allows going off box. When this property is true and a PSSession is disconnected, + reconnection is allowed only if reconnecting from a PowerShell session on the same box. + + + + + Specifies the maximum number of connection retries if previous connection attempts fail + due to network issues. + + + + + Constructor used to create a WSManConnectionInfo + + computer to connect to + scheme to be used for connection + port to connect to + application end point to connect to + remote shell to launch + on connection + credential to be used + for connection + Timeout in milliseconds for open + call on Runspace to finish + Invalid + scheme or invalid port is specified + + + + Constructor used to create a WSManConnectionInfo + + computer to connect to + Scheme to be used for connection. + port to connect to + application end point to connect to + remote shell to launch + on connection + credential to be used + for connection + Invalid + scheme or invalid port is specified + max server life timeout and open timeout are + default in this case + + + + Constructor used to create a WSManConnectionInfo + + + + + + + + + + + + + + + + + + + + + + + Creates a WSManConnectionInfo for the following URI + and with the default credentials, default server + life time and default open timeout + http://localhost/ + The default shellname Microsoft.PowerShell will be + used + + + + + Constructor to create a WSManConnectionInfo with a uri + and explicit credentials - server life time is + default and open timeout is default + + uri of remote runspace + + credentials to use to + connect to the remote runspace + When an + uri representing an invalid path is specified + + + + Constructor used to create a WSManConnectionInfo. This constructor supports a certificate thumbprint to + be used while connecting to a remote machine instead of credential. + + uri of remote runspace + + + A thumb print of the certificate to use while connecting to the remote machine. + + + + + constructor to create a WSManConnectionInfo with a + uri specified and the default credentials, + default server life time and default open + timeout + + uri of remote runspae + When an + uri representing an invalid path is specified + + + + Populates session options from a PSSessionOption instance. + + + + 1. Proxy credential cannot be specified when proxy accesstype is None. + Either specify a valid proxy accesstype other than None or do not specify proxy credential. + + + + + Shallow copy of the current instance. + + RunspaceConnectionInfo + + + + Does a shallow copy of the current instance + + + + + + string for http scheme + + + + + string for https scheme + + + + + Converts to a WSManConnectionInfo. If conversion succeeds extracts + the propery..otherwise returns default value + + + + + + + + + Constructs a Uri from the supplied parameters. + + + + + Making the port nullable to make sure the UseDefaultWSManPort variable is protected and updated + only when Port is updated. Usages that dont update port, should use null for this parameter. + + + + + + + returns connection string without the scheme portion. + + + The uri from which the string will be extracted + + + returns true if https scheme is specified + + + returns connection string without the scheme portion. + + + + + Used to resolve authentication from the parameters chosen by the user. + User has the following options: + 1. AuthMechanism + Credential + 2. CertiticateThumbPrint + + All the above are mutually exclusive. + + + If there is ambiguity as specified above. + + + + + Default disconnected server output mode is set to None. This mode allows the + server to set the buffering mode to Block for new sessions and retain its + current mode during disconnect/connect operations. + + + + + Default maximum connection retry count. + + + + + Default appname. This is empty as WSMan configuration has support + for this. Look at + get-item WSMan:\localhost\Client\URLPrefix + + + + + Default scheme. + As part of port DCR, WSMan changed the default ports + from 80,443 to 5985,5986 respectively no-SSL,SSL + connections. Since the standards say http,https use + 80,443 as defaults..we came up with new mechanism + to specify scheme as empty. For SSL, WSMan introduced + a new SessionOption. In order to make scheme empty + in the connection string passed to WSMan, we use + this internal boolean. + + + + + default port for http scheme + + + + + default port for https scheme + + + + + This is the default port value which when specified + results in the default port for the scheme to be + assumed + + + + + default remote host name + + + + + Maximum value for port + + + + + Minimum value for port + + + + + String that represents the local host Uri + + + + + Default value for shell + + + + + Default credentials - null indicates credentials of + current user + + + + + Helper property that returns true when the connection has EnableNetworkAccess set + and the connection is localhost (loopback), i.e., not a network connection. + + + + + + DisconnectedOn property applies to disconnnected runspaces. + This property is publicly exposed only through Runspace class. + + + + + ExpiresOn property applies to disconnnected runspaces. + This property is publicly exposed only through Runspace class. + + + + + Helper method to reset DisconnectedOn/ExpiresOn properties to null. + + + + + Helper method to set the DisconnectedOn/ExpiresOn properties based + on current date/time and session idletimeout value. + + + + + Constructor that constructs the configuration name from its type + + type of configuration to construct + + + + Class which is used to create an Out-Of-Process Runspace/RunspacePool. + This does not have a dependency on WSMan. *-Job cmdlets use Out-Of-Proc + Runspaces to support background jobs. + + + + + Script to run while starting the background process. + + + + + On a 64bit machine, specifying true for this will launch a 32 bit process + for the background process. + + + + + Powershell version to execute the job in + + + + + Name of the computer. Will always be "localhost" to signify local machine. + + + + + Credential used for the connection + + + + + Authentication mechanism to use while connecting to the server. + Only Default is supported. + + + + + ThumbPrint of a certificate used for connecting to a remote machine. + When this is specified, you dont need to supply credential and authentication + mechanism. + Will always be empty to signfy that this is not supported. + + + + + Creates a connection info instance used to create a runspace on a different + process on the local machine + + + + + Class used to create an Out-Of-Process Runspace/RunspacePool between + two local processes using a named pipe for IPC. + This class does not have a dependency on WSMan and is used to implement + the PowerShell attach-to-process feature. + + + + + Process Id of process to attach to. + + + + + Optional application domain name. If not specified then the + default application domain is used. + + + + + Constructor + + + + + Constructor + + Process Id to connect to. + + + + Constructor + + Process Id to connect to + Application domain name to connect to, or default AppDomain if blank. + + + + Constructor + + Process Id to connect to + Name of application domain to connect to. Connection is to default application domain if blank. + Open time out in Milliseconds + + + + Computer is always localhost. + + + + + Credential + + + + + Authentication + + + + + CertificateThumbprint + + + + + Shallow copy of current instance. + + NamedPipeConnectionInfo + + + + The class that contains connection information for a remote session between a local host + and VM. The local host can be a VM in nested scenario. + + + + + GUID of the target VM. + + + + + Configuration name of the VM session. + + + + + Authentication mechanism to use while connecting to the server. + Only Default is supported. + + + + + ThumbPrint of a certificate used for connecting to a remote machine. + When this is specified, you dont need to supply credential and authentication + mechanism. + Will always be null to signfy that this is not supported. + + + + + Credential used for the connection. + + + + + Name of the target VM. + + + + + Creates a connection info instance used to create a runspace on target VM. + + + + + The class that contains connection information for a remote session between a local + container host and container. + For Windows Server container, the transport is based on named pipe for now. + For Hyper-V container, the transport is based on Hyper-V socket. + + + + + ContainerProcess class instance. + + + + + Authentication mechanism to use while connecting to the server. + Only Default is supported. + + + + + ThumbPrint of a certificate used for connecting to a remote machine. + When this is specified, you dont need to supply credential and authentication + mechanism. + Will always be null to signfy that this is not supported. + + + + + Credential used for the connection. + + + + + Name of the target container. + + + + + Creates a connection info instance used to create a runspace on target container. + + + + + Create ContainerConnectionInfo object based on container id. + + + + + Create process inside container. + + + + + Terminate process inside container. + + + + + Class used to create/terminate process inside container, which can be either + Windows Server Container or Hyper-V container. + - Windows Server Container does not require Hyper-V. + - Hyper-V container requires Hyper-V and utility VM, which is different from normal VM. + + + + + For Hyper-V container, it is Guid of utility VM hosting Hyper-V container. + For Windows Server Container, it is empty. + + + + + OB root of the container. + + + + + ID of the container. + + + + + Process ID of the process created in container. + + + + + Whether the process in container should be launched as high privileged account + (RunAsAdmin being true) or low privileged account (RunAsAdmin being false). + + + + + The configuration name of the container session. + + + + + Whether the process in container has terminated. + + + + + The error code. + + + + + The error message for other errors. + + + + + The process id. + + + + + Reserved. + + + + + If created, standard input handle of the process. + + + + + If created, standard output handle of the process. + + + + + If created, standard error handle of the process. + + + + + Creates an instance used for PowerShell Direct for container. + + + + + Create process inside container. + + + + + Terminate process inside container. + + + + + Get object root based on given container id. + + + + + Dynamically load the Host Compute interop assemblies and return useful types. + + The HCS.Compute.System.Properties type. + The Microsoft.HostCompute.Interop.HostComputeInterop type. + + + + Create process inside container. + + + + + Terminate the process inside container. + + + + + Get object root based on given container id. + + + + + Run some tasks on MTA thread if needed. + + + + + Get error message from the thrown exception. + + + + + Defines configuration information for runspace. + + + + + Developers may want to derive from this class when writing their own + host to host monad engine. This will allow host to control the behaviour + of monad engine through customized runspace configuration. + + + + + + + + Create an instance of RunspaceConfiguration type implemented from an assembly. + + Assembly name from which to find runspace configuration implementation + Runspace configuration instance created + + Exception thrown when is null or empty. + + + + + + Create one single shell runspace configuration object from console file + + + + + + + + Create one single shell runspace configuration object for a msh version. + + + + + + Create an RunspaceConfiguration-derived instance based an RunspaceConfiguration-derived type + in specified assembly. The type name is defined by assembly attribute: + RunspaceConfigurationTypeAttribute. + + + Runspace configuration instance created + + Exception thrown when is null or empty. + + + + + Create RunspaceConfiguration-derived instance based on a derived type. + + A type that is derived from RunspaceConfiguration + + + + + Gets the shell id for current runspace configuration. + + + + + Add a PSSnapin to runspace configuration. + + + This member provides logic for adding PSSnapin. + + RunspaceConfiguration derived class should not override this member. + + + name of the PSSnapin + warning message + + + + + Remove a PSSnapin from runspace configuration. + + + This member provides logic for removing PSSnapin. + + RunspaceConfiguration derived class should not override this member. + + name of the PSSnapin + warning message + + + + + Gets the cmdlets defined in runspace configuration. + + + RunspaceConfiguration derived class can override this member to provide its own cmdlet list. + + + + + Gets the providers defined in runspace configuration. + + + RunspaceConfiguration derived class can override this member to provide its own provider list. + + + + + types.ps1xml information + + + + + + Gets the type data files defined in runspace configuration. + + + RunspaceConfiguration derived class can override this member to provide its own types to be + loaded at engine start up. + + + + + Gets the format data files defined in runspace configuration. + + + RunspaceConfiguration derived class can override this member to provide its own formats to be + loaded at engine start up. + + + + + Gets the scripts defined in runspace configuration. + + + RunspaceConfiguration derived class can override this member to provide its own scripts + to be include in monad engine. + + + + + Gets the initialization scripts defined in runspace configuration. + + + RunspaceConfiguration derived class can override this member to provide its own initialization scripts + to be run at the start up of monad engine. + + + + + Gets the assemblies defined in runspace configuration. + + + RunspaceConfiguration derived class can override this member to provide its own assemblies + to be loaded at the start up of monad engine. + + + + + Gets the authorization manager to be used for runspace. + + + RunspaceConfiguration derived class can override this member to provide its own authorization + manager for monad engine. + + + + + Remove duplicate entries and entries with files that cannot be loaded from the Types and Formats + + + + + + + Enum for describing different kind information that can be configured in runspace configuration. + + + + + + + Cmdlets + + + + + Providers + + + + + Assemblies + + + + + Scripts + + + + + Initialization scripts + + + + + Types + + + + + Formats + + + + + Define class for runspace configuration entry. + + + This abstract class is to be derived internally by Monad for different + runspace configuration entries only. Developers should not derive from + this class. + + + + + Initiate an instance of runspace configuration entry. + + Name for the runspace configuration entry + + + + + Initiate an instance of runspace configuration entry. + + Name for the runspace configuration entry + The name of the PSSnapin the entry comes from. + + + + + Gets name of configuration entry + + + + + Gets name of PSSnapin that this configuration entry belongs to. + + + + + Get whether this entry is a built-in entry. + + + + + Defines class for type configuration entry. + + + + + Initiate an instance for type configuration entry. + + Name of the type configuration entry + File name that contains the types configuration information. + when is null or empty + + + + Initiate an instance for type configuration entry. + + TypeData instance + Specify the operation with the typedata + + + + Initiate an instance for type configuration entry. + + Name of the type configuration entry + File name that contains the types configuration information. + PSSnapin from which type info comes. + when is null, empty or does not end in .ps1xml + + + + Initiate an instance for type configuration entry. + + File name that contains the types configuration information. + when is null, empty or does not end in .ps1xml + + + + Gets file name that contains the types configuration information. + + + + + + Get the strong type data contains the type configuration information + + + + + Set to true if the strong type data is to be removed + + + + + Defines class for type configuration entry. + + + + + Initiate an instance for type configuration entry. + + Name of the format configuration entry + File name that contains the format configuration information. + when is null or empty + + + + Initiate an instance for Format configuration entry. + + Name of the Format configuration entry + File name that contains the Formats configuration information. + PSSnapin from which the format comes. + when is null, empty or does not end in .ps1xml + + + + Initiate an instance for type configuration entry. + + File name that contains the format configuration information. + when is null or empty + + + + Initiate an instance for type configuration entry. + + + + + + Gets file name that contains the format configuration information. + + File name that contains the format configuration information. + + + + Get the typeDefinition that contains the format configuration information + + + + + Class to define configuration data for cmdlets + + + + + Initiate an instance for cmdlet configuration entry. + + Name of the cmdlet configuration entry + Class that include implementation of the cmdlet + Name of the help file that include help information for the cmdlet + + + + Initiate an instance for cmdlet configuration entry. + + Name of the cmdlet configuration entry + Class that include implementation of the cmdlet + PSSnapin from which the cmdlet comes. + Name of the help file that include help information for the cmdlet + + + + Get class that include implementation of the cmdlet + + + + + Get name of the help file that include help information for the cmdlet + + + + + + Define class for provider configuration entry + + + + + Initiate an instance for provider configuration entry. + + Name of the provider configuration entry + Class that include implementation of the provider + Name of the help file that include help information for the provider + + + + Initiate an instance for provider configuration entry. + + Name of the provider configuration entry + Class that include implementation of the provider + Name of the help file that include help information for the provider + PSSnapin from which provider comes from. + + + + Get class that include implementation of the provider. + + + + + + Get name of the help file that include help information for the provider + + + + + Define class for script configuration entry + + + + + Initiate an instance for script configuration entry. + + Name of the script configuration entry + Content of the script + + + + Get content for the script. + + + + + Configuration data for assemblies. + + + + + Initiate an instance for assembly configuration entry. + + Strong name of the assembly + Name of the assembly file + + + + Initiate an instance for assembly configuration entry. + + Strong name of the assembly + Name of the assembly file + PSSnapin information. + when is null, empty or does not end in .ps1xml + + + + Get name of the assembly file + + Name of the assembly file + + + + Define class for runspace configuration entry collection. + + + + + + Constructor + + + + + Constructor + + + + + + Get items at a index position. + + + + + + + Get number of items in the collection. + + + + + Reset items in the collection + + + + + Remove one item from the collection + + + when is out of range. + + + + Remove multiple items in the collection. + + + + when is out of range. + + + + Remove one item from the collection + + + + + + Prepend an item to the collection. + + + + + + Prepend items into the collection + + + + + + Append one item to the collection + + + + + + Append items to the collection. + + + + + + Get enumerator for this collection. + + + + + + + Get enumerator for this collection. + + + + + + + Update others about the collection change. + + + + + OnUpdate handler should lock the object itself. + + + + + Define the class for runspace configuration type attribute. + + + + + + Initiate an instance of RunspaceConfigurationTypeAttribute. + + Runspace configuration type + + + + Get runspace configuration type + + + + + Defines exception thrown when runspace configuration attribute is not defined correctly. + + + + + + Initiate an instance of RunspaceConfigurationAttributeException. + + Error detail for the exception + Assembly on which runspace configuration attribute is defined or should be defined. + + + + Initiate an instance of RunspaceConfigurationAttributeException. + + + + + Initiate an instance of RunspaceConfigurationAttributeException. + + Error message + + + + Initiate an instance of RunspaceConfigurationAttributeException. + + Error message + Inner exception + + + + Initiate an instance of RunspaceConfigurationAttributeException. + + Error detail + Assembly on which runspace configuration attribute is defined or should be defined. + The inner exception of this exception + + + + Create the internal error record based on helpTopic. + The ErrorRecord created will be stored in the _errorRecord member. + + + + + Gets error record embedded in this exception. + + + + + + Get localized error message. + + error + + + + Gets assembly name on which runspace configuration attribute is defined or should be defined. + + error + + + + Gets message for this exception. + + + + + Initiate a RunspaceConfigurationAttributeException instance. + + Serialization information + Streaming context + + + + Get object data from serizliation information. + + Serialization information + Streaming context + + + + Define class for runspace configuration type. + + + + + + Initiate an instance for RunspaceConfigurationTypeException + + Name of the assembly where is defined. + Runspace configuration type + + + + Initiate an instance for RunspaceConfigurationTypeException + + + + + Initiate an instance for RunspaceConfigurationTypeException + + Name of the assembly where is defined. + Runspace configuration type defined in + Inner exception of this exception + + + + Initiate an instance for RunspaceConfigurationTypeException + + Error message + + + + Initiate an instance for RunspaceConfigurationTypeException + + Error message + Inner exception of this exception + + + + Create the internal error record based on assembly name and type. + The ErrorRecord created will be stored in the _errorRecord member. + + + + + Get the error record embedded in this exception. + + + + + Get name of the assembly where runspace configuration type is defined. + + + + + Get the runspace configuration type. + + + + + Get message for this exception. + + + + + Initiate a RunspaceConfigurationAttributeException instance. + + Serialization information + Streaming context + + + + Get object data from serizliation information. + + Serialization information + Streaming context + + + + RunspaceConfigurationHelper define some constants to be used by + both Minishell api and makekit. + + Be very careful when trying to change values for strings below since + it will be used by makekit process also. + + This file will be built with both monad engine and makekit. + + + + + Baseclass for defining elements that can be added + to an InitialSessionState object. + + + + + ctor so that each derived class has a name + + + + + + The name of this entry + + + + + The SnapIn to load from initially + + + + + The SnapIn to load from initially + + + + + Shallow-clone this object + + The cloned object... + + + + Class to constrain session state entries + + + + + + + + + + + + + + + + + Command class so that all the commands can derive off this one. + Adds the flexibility of adding addditional derived class, + such as ProxyCommand for Exchange. + Derived classes - Alias, Application, Cmdlet, Function, Script. + + + + + Base constructor for all SessionState commands. + + + + + + + + + + + + + Returns the type of the command using an enum + instead of requiring a full reflection type check. + + + + + Is internal so it can be set by the engine code... + + + + + Is internal so it can be set by the engine code... + This is used to specify whether this command was imported or not + If noClobber is specified during Import-Module, it is set to false + + + + + Type file configuration entry... + + + + + Loads all entries from the types file. + + + + + + Loads all the types specified in the typeTable + + + + + + Loads all entries from the typeData + + + + + + + Shallow-clone this object + + The cloned object + + + + The pathname of the types.ps1xml file. This can be null if + TypeTable constructor or TypeData constructor is used. + + + + + The TypeTable specified with constructor. This can be null if + FileName constructor or TypeData constructor is used. + + + + + The TypeData we want to update with. This can be null if + FileName constructor or TypeTable constructor is used. + + + + + The operation will be done on the typedata. This is only + meaningful when the TypeData constructor is used. + + + + + Format file configuration entry... + + + + + Loads the entire formats file + + + + + + Loads all the format data specified in the formatTable + + + + + + Loads all the format data specified in the typeDefinition + + + + + + Shallow-clone this object... + + The cloned object + + + + The name of the format file referenced by this entry... + + + + + The FormatTable specified with constructor. This can be null if + FileName constructor is used. + + + + + The FormatData specified with constructor. This can be null if + FileName or FormatTable constructor is used + + + + + An assembly to load for this sessionstate... + + + + + Create a named entry for the assembly to load with both the + name and the path to the assembly as a backup. + + The name of the assembly to load + The path to the assembly to use as an alternative + + + + Create a named entry for the assembly to load, specifying + just the nanme + + The name of the assembly to load + + + + Shallow-clone this object + + The cloned object + + + + Return the assembly file name... + + + + + List a cmdlet to add to this session state entry + + + + + + + + + + + + + + + + + + + + + + Shallow-clone this object... + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Shallow-clone this object... + + The cloned object + + + + + + + + + + + + + + + + + + + Create a session state command entry instance. + + The path to the script + + + + Create a session state command entry instance with the specified visiblity. + + The path to the script + Visibility of the script. + + + + Shallow-clone this object... + + The cloned object + + + + + + + + + + + + + + Define an alias entry to add to the initial session state + + Name of the aliase + The name of the command it resolves to + + + + Define an alias entry to add to the initial session state + + Name of the aliase + The name of the command it resolves to + A descripion of the purpose of the alias. + + + + Define an alias entry to add to the initial session state + + Name of the aliase + The name of the command it resolves to + A descripion of the purpose of the alias. + Options defining the scope visiblity, readonly and constant + + + + Define an alias entry to add to the initial session state + + Name of the aliase + The name of the command it resolves to + A descripion of the purpose of the alias. + Options defining the scope visiblity, readonly and constant + + + + + Shallow-clone this object... + + The cloned object + + + + The string defining the body of this alias... + + + + + A string describing this alias... + + + + + Options controling scope visiblity and setability for this entry. + + + + + + + + + + Used to define a permitted script in this session state. If the path is + "*", then any path is permitted. + + The full path to the application + + + + Used to define a permitted script in this session state. If the path is + "*", then any path is permitted. + + The full path to the application + Sets the external visibilty of the path. + + + + Shallow-clone this object... + + The cloned object + + + + The path to this application... + + + + + + + + + + Represents a function definition in an Initial session state object. + + The name of the function + The definition of the function + Options controlling scope-related elements of this object + The name of the help file associated with the function + + + + Represents a function definition in an Initial session state object. + + The name of the function + The definition of the function + The name of the help file associated with the function + + + + Represents a function definition in an Initial session state object. + + The name of the function + The definition of the function + + + + This is an internal copy constructor. + + + + + Shallow-clone this object... + + The cloned object + + + + Sets the name of the help file associated with the function. + + + + + The string to use to define this function... + + + + + The script block for this function. + + + + + Options controling scope visiblity and setability for this entry. + + + + + The name of the help file associated with the function. + + + + + + + + + + Represents a workflow definition in an Initial session state object. + + The name of the workflow + The definition of the workflow + Options controlling scope-related elements of this object + The name of the help file associated with the workflow + + + + Represents a workflow definition in an Initial session state object. + + The name of the workflow + The definition of the workflow + The name of the help file associated with the workflow + + + + Represents a workflow definition in an Initial session state object. + + The name of the workflow + The definition of the workflow + + + + This is an internal copy constructor. + + + + + Shallow-clone this object... + + The cloned object + + + + Sets the name of the help file associated with the function. + + + + + The string to use to define this function... + + + + + The script block for this function. + + + + + Options controling scope visiblity and setability for this entry. + + + + + The name of the help file associated with the function. + + + + + + + + + + Is used to define a variable that should be created when + the runspace is opened. Note - if this object is cloned, + then the clone will contain a reference to the original object + not a clone of it. + + The name of the variable + The value to set the variable to + A descriptive string to attach to the variable. + + + + Is used to define a variable that should be created when + the runspace is opened. Note - if this object is cloned, + then the clone will contain a reference to the original object + not a clone of it. + + The name of the variable + The value to set the variable to + A descriptive string to attach to the variable. + Options like readonly, constant, allscope, etc. + + + + Is used to define a variable that should be created when + the runspace is opened. Note - if this object is cloned, + then the clone will contain a reference to the original object + not a clone of it. + + The name of the variable + The value to set the variable to + A descriptive string to attach to the variable. + Options like readonly, constant, allscope, etc. + A list of attributes to attach to the variable. + + + + Is used to define a variable that should be created when + the runspace is opened. Note - if this object is cloned, + then the clone will contain a reference to the original object + not a clone of it. + + The name of the variable + The value to set the variable to + A descriptive string to attach to the variable. + Options like readonly, constant, allscope, etc. + A single attribute to attach to the variable. + + + + Is used to define a variable that should be created when + the runspace is opened. Note - if this object is cloned, + then the clone will contain a reference to the original object + not a clone of it. + + The name of the variable + The value to set the variable to + A descriptive string to attach to the variable. + Options like readonly, constant, allscope, etc. + A single attribute to attach to the variable. + + + + + Shallow-clone this object... + + The cloned object + + + + The value to bind to this variable. + + + + + The description associated with this variable. + + + + + The options associated with this variable (e.g. readonly, allscope, etc.) + + + + + The attributes that will be attached to this object. + + + + + + + + + + + Create an empty collection... + + + + + Create an new collection, copying in the passed items... + + + + + + Clone this collection + + The cloned object + + + + Reset the collection + + + + + Returns a count of the number of items in the collection... + + + + + + + + + + + + To find the entries based on name. + Why collection - Different SnapIn/modules and same entity names. + If used on command collection entry, then for the same name, one can have multiple output + + + + + + + Find entries based on string name which can include wildcards. + + + + + + + + + + + + + Remove a number of items starting at the specified index. + + + + + + + Clears the collection... + + + + + This overload exists so that we can remove items based on the item name, rather than + its position in the collection. The type argument can be null but we'll throw an error if + we can't distinguish between multiple entries of the same name but different types + and the type hasn't been specified. + BUGBUG - brucepay - the throw thing is not implemented yet... + + The name of the element to remove + The type of object to remove, can be null to remove any type. + + + + Add an item to this collection. + + The item to add... + + + + Add items to this collection. + + + + + + Special add for TypeTable type entries that removes redundant file entries. + + + + + Get enumerator for this collection. + + + + + + + Get enumerator for this collection. + + + + + + + Allows you to define the set of elements that should be + present when Session State is created. + + + + + Creates an initial session state from a PSSC configuration file + + The path to the PSSC session configuration file + + + + + Creates an initial session state from a PSSC configuration file + + The path to the PSSC session configuration file + + The verifier that PowerShell should call to determine if groups in the Role entry apply to the + target session. If you have a WindowsPrincipal for a user, for example, create a Function that + checks windowsPrincipal.IsInRole(). + + + + + + Creates an instance that exposes only the minimal + set of commands needed by give set of + All commands that are not needed are made private in order to minimize the attack surface. + + + What capabilities the session should have. + + + + + + Following cmdlets are needed for debugging support starting WinBlue + + + + + this cmdlets are exposed due to some bugs. Need to figure out if + they are still required + + + + + ctor for Custom-Shell - Do we need this? + + + + + Creates an empty InitialSessionState object... + + + + + + Creates the default PowerShell one with default cmdlets, provider etc. + BuiltIn functions, aliases need to be available through default + InitialSessionstate constructor. Need to have this discussion for packaging as well. + + + + + + Creates the default PowerShell one with default cmdlets, provider etc. + The default cmdlets, provider, etc are loaded via Modules + + + + + + Clone this InitialSessionState object. The collections are + recursively cloned as well as the elements in the collections. + Note however, that the contents of the individual entries + are not deep-cloned. This is only an issue for variable + entries which may have reference types. These objects + will be added by reference rather than by value. + + The cloned object. + + + + Want to get away from SnapIn and console file. Have modules and assemblies instead. + Specify the registered SnapIn name or name collection + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the language mode to be used for this session state instance + + + + + Specifies the directory to be used for collection session transcripts + + + + + True when session opted for a User PSDrive. + + + + + User name for the user drive. This will be part of the root path + for the User PSDrive. + + + + + Optional maximum size value for User drive (in bytes). + + + + + Forces all session script input parameters to have validation. + + + + + Specifies the execution policy to be used for this session state instance + + + + + If true the PowerShell debugger will use FullLanguage mode, otherwise it will use the current language mode + + + + + ApartmentState of the thread used to execute commands + + + + + This property determines whether a new thread is create for each invocation of a command + + + + + If this property is set and there was a runspace creation error, then + throw an exception, otherwise just continue creating the runspace even though it may + be in an inconsistent state. + + + + + This property will be set only if we are refreshing the Type/Format settings by calling UpdateTypes/UpdateFormats directly. + In this case, we should wait until all type/format entries get processed. After that, if there were errors + generated, we throw them as an exception. + + + + + Specifies the authorization manager to be used for this session state instance. + If no authorization manager is specified, then the default authroization manager + for PowerShell will be used which checks the ExecutionPolicy before running a command. + + + + + Add a list of modules to import when the runspace is created. + + The modules to add + + + + + Clears ImportPSModule list. + + + + + Add a list of modules to import when the runspace is created. + + + The modules, whose specificiations are specified by , + to add. + + + + + Imports all the modules from the specified module + path by default + + path from which all modules need + to be imported + + + + Add a list of core modules to import when the runspace is created. + + The modules to add + + + + + Imported modules. + + + + + Gets the dictionary of core modules to import on runspace creation... + + + + + The list of assemblies to load... + + + + + List of types to use for this session state instance... + + + + + + + + + + If set to true, disables any updates to format table. This includes disabling + format table updates throught Update-FormatData, Import-Module etc. + All the disabling happens silently ie., the user will not get any exception. + By default, this is set to False. + + + + + + + + + + List of commands (Alias, Application, Cmdlets, Function, Script) for this entry. + + + + + + + + + + + + + + + + + + + + Process a command modification for a specific parameter + + The hashtable of command modifications for this command + The metadata for the command being processed + The parameter being modified + + + + Helper method to search for commands matching the provided commandPattern. + Supports wild cards and if the commandPattern contains wildcard characters then multiple + results can be returned. Otherwise a single (and first) match will be returned. + If a moduleName is provided then only commands associated with that module will be returned. + Only public commands are searched to start with. If no results are found then a search on + internal commands is performed. + + + + + + + + + if is null, import module using . Otherwise, + import module using + + + + + Reinitializes elements of the associated runspace to their initial values. + This allows for runspace reuse with minimal chance for contamination. + + + + + + Remove anything that would have been bound by this ISS instance. + At this point, it removes assemblies and cmdlet entries at the top level. + It also removes types and formats. + The other entry types - functions, variables, aliases + are not removed by this function. + + + + + + Update the type metadata loaded into this runspace + + The execution context for the runspace to update + if true, re-initialize the metadata collection... + + + + Update the formatting information for a runspace + + The execution context for the runspace to be updated + True if we only want to add stuff, false if we want to reinitialize + + + + Need to have SnapIn support till we move to modules + + + + + + + + This is a "proxy" snapin that loads a subset of cmdlets from another snapin... + + + CustomPSSnapIn derives from System.Configuration.Install, which is not in CoreCLR. + So CustomPSSnapIn is not supported on CSS. + + The snapin to examine. + + + + This is the default function to use for tab expansion. + + + + + This is the default function to use for 'Import System Modules'. + + + Win8: 320909. Retaining the original definition to ensure backward compatability. + + + + + This is the default function to use for man/help. It uses + splatting to pass in the parameters. + + + + + Returns a new array of alias entries everytime it's called. This + can't be static because the elements may be mutated in different session + state objects so each session state must have a copy of the entry. + + + + + Set of helper methods fro loading assemblies containing cmdlets... + + + + + Runspace config for single shell are a special kind of runspace + configuration that is generated for single shells. + + This class needs to handle the standard managment of + + 1. consoleInfo: each instance of this class will have + a consoleInfo object. + 2. interface to consoleInfo. This includes "open", + "save", and "change" of consoleInfo and console files. + 3. interface to mshsnapin's. This includes add, remove + and list mshsnapins in console file. + + This class derives from RunspaceConfiguration and supports + basic information for cmdlets, providers, types, formats, + etc. + + Eventually when minishell model goes away, RunspaceConfiguration + and RunspaceConfigForSingleShell may merge into one class. + + + + + + One or more default mshsnapins cannot be loaded because the + registry is not populated correctly. + + + fileName is null. + + + fileName does not specify proper file extension. + + + Unable to load/parse the file specified by fileName. + + + + + One or more default mshsnapins cannot be loaded because the + registry is not populated correctly. + + + + + mshSnapInID is empty or null. + + + PSSnapIn is already loaded. + No PSSnapIn with given id found. + PSSnapIn cannot be loaded. + + + Caller doesn't have permission to read keys. + + + + + mshSnapInID is null. + + + mshSnapInID is either a default mshsnapin or not loaded. + + + + + Gets the shell id for current runspace configuration. + + + + + + Gets the cmdlets defined in runspace configuration. + + + + + Gets the providers defined in runspace configuration. + + + + + Gets the type data files defined in runspace configuration. + + + + + Gets the format data files defined in runspace configuration. + + + + + Gets the initialization scripts defined in runspace configuration. + + + + + Class that understands Monad Console File Format. The format for the console + file is applied/read by this class only. + + Functionality: + 1. Schema version verification check. + 2. Data values for the content represented by Console file. Later this data + is used by other components ( MshConsoleInfo ) to construct Monad Types ( like + PSSnapInInfo ). + 3. Owns responsibilty to read/write Files. + + Risk: + File Acces related security issues. + + Requires: + Might require Permissions to read/write into files. + + + + + + MonadVersion from the console file + + + + + List of MshSnapin IDs from the console file + + + + + Writes MshConsoleInfo object in Monad Console format into the file specified by the . + + The absolute path of the file into which the content is saved. + The version of PowerShell. + The external snapins that are loaded in the console + + The path value is null. + + + + + + Reads a Monad Console file specified by and constructs + a PSConsoleFileElement. + + The absolute path of the file to read from. + A MShConsoleFileElement object that represents content of the console file. + The return object wont be null. + + There is a load or parser error in the XML. + + + + + + Class that manages(reads/writes) Monad Console files and constructs objects + that represent data in the console files. + + Functionality: + 1. Access point to the console files for Runspace and cmdlets + 2. Depends on PSConsoleFileElement for reading/writing files + + + + + + Monad Version that the console file depends on. + + + + + Returns the major version of current console. + + + + + List of mshsnapins that are available. This includes both the monad + default mshsnapins as well as external mshsnapins as represented by the + console file. + + + The list returned is an ordered-list with default mshsnapins at the + start followed by external mshsnapins in the order represented by the + console file. + + + + + List of external mshsnapins, as represented by the console file and cmdlets + add-pssnapin,remove-pssnapin, that are available. + + + + + A boolean which tells whether the console file is modified after it is read + or created. + + + Modification refers to addition/deletion operations of the external mshsnapins. + + + + + A string representing the console file name of the current MshConsoleInfo object. + If the filename is relative path, an absolute path will be constructed using + Path.GetFullPath() + + + Once a MshConsoleInfo object is constructed, a user may update the object by + adding,removing mshsnapins. These operations directly effect the state of the + MshConsoleInfo object but not update the console file. + + + + + Construct a MshConsoleInfo object for the Monad version specified. + + Monad Version. + + + + Constructs a object for the + current Monad version which is already started. + + + One or more default mshsnapins cannot be loaded because the + registry is not populated correctly. + + + + + Constructs a object from a + Monad console file. + + + Monad console file name. If the filename is not absolute path. Then absolute path is + constructed by using Path.GetFullPath() API. + + + PSConsoleLoadException occurred while loading this console file. This object + also contains specific PSSnapInExceptions that occurred while loading. + + + One or more default mshsnapins cannot be loaded because the + registry is not populated correctly. + + + fileName is null. + + + 1. fileName does not specify proper file extension. + + + fileName contains one or more of the invalid characters defined in System.IO.Path.InvalidPathChars. + + + Unable to load/parse the file specified by fileName. + + + + + Saves the current object to a file specified + by . IsDirty is set to false once file is saved. + + + If path is not an absolute path, then an absolute path is constructed by + using Path.GetFullPath() API. + + + 1.Path does not specify proper file extension. + + + 1. Path is null. + + + path contains one or more of the invalid characters defined in System.IO.Path.InvalidPathChars. + + + + + Saves the current object to its console file. + IsDirty is set to false once file is saved. + + + Msh is loaded with default mshsnapins. $console is currently empty. + + + + + Adds a mshsnapin specified by to the current list of + mshsnapins. If the mshsnapin is successfully added, IsDirty property is set to true. + + ID of the mshsnapin which needs to be added. + A object corresponding to mshSnapInID. + PSSnapIn information must be present in the registry for this call to succeed. + + mshSnapInID is empty or null. + + + PSSnapIn is already loaded. + No PSSnapIn with given id found. + PSSnapIn cannot be loaded. + + + Caller doesn't have permission to read keys. + + + + + Removes a mshsnapin specified by from the current + list. + + ID of the mshsnapin which needs to be removed + PSSnapInInfo object for the mshsnapin that is removed. + MshSnapin is removed only from the console file. Registry entry + is not touched. + + mshSnapInID is null. + + + 1. mshSnapInID is either a default mshsnapin or not loaded. + 2. mshSnapInId is not valid. + + + + + Searches for mshsnapin in either current console or registry as determined + by . + + + Id/WildcardPattern of the mshsnapin to search for. This can contain wildcard characters as + represented by WildCardPattern. + + + A boolean which determines whether to search in the current console or registry. + + A collection of mshsnapininfo objects. + + 1.Unable to read registry entries for mshsnapins. + 2.Pattern specified is not valid. If pattern doesnt contain + wildcard characters, this function checks for the validity + of the mshsnapin name. + + + Caller doesn't have permission to read keys. + + + + + Loads a Monad Console file specified by + + + The absolute path from which the content is loaded. + + + PSConsoleLoadException occurred while loading this console file. This object + also contains specific PSSnapInExceptions that occurred while loading. + + + A list of objects specified in the console file. + + + Path is null. + + + 1. Path does not specify proper file extension. + 2. PSSnapInId doesnt contain valid characters. + 3. Path is not an Absolute Path. + Example of valid paths:"\\MyDir\\MyFile.txt" and "C:\\MyDir". + + + path contains one or more of the invalid characters defined in System.IO.Path.InvalidPathChars. + + + Unable to load/parse the file specified by path. + + + + + Checks whether the mshsnapin is a default mshsnapin + + Id of the mshsnapin + List of default mshsnapins + True if PSSnapIn is default.False otherwise. + + + + Checks whether the mshsnapin is already loaded + + Id of the mshsnapin + True if PSSnapIn is loaded.False otherwise. + + + + Constructs a new list of mshsnapins from defualt mshsnapins and external mshsnapins. + + A list of mshsnapins represented by the current console file + + + + Defines exception thrown when a PSSnapin was not able to load into current runspace. + + + + + + Intiate an instance of PSConsoleLoadException. + + Console info object for the exception + A collection of PSSnapInExceptions. + + + + Initiate an instance of PSConsoleLoadException. + + + + + Initiate an instance of PSConsoleLoadException. + + Error message + + + + Initiate an instance of PSConsoleLoadException. + + Error message + Inner exception + + + + Create the internal error record. + The ErrorRecord created will be stored in the _errorRecord member. + + + + + Gets error record embedded in this exception. + + + + + + Gets message for this exception. + + + + + Initiate a PSConsoleLoadException instance. + + Serialization information + Streaming context + + + + Get object data from serizliation information. + + Serialization information + Streaming context + + + + Defines exception thrown when a PSSnapin was not able to load into current runspace. + + + + + + Initiate an instance of PSSnapInException. + + PSSnapin for the exception + Message with load failure detail. + + + + Initiate an instance of PSSnapInException. + + PSSnapin for the exception + Message with load failure detail. + Whether this is just a warning for PSSnapin load. + + + + Initiate an instance of PSSnapInException. + + PSSnapin for the exception + Message with load failure detail. + Exception for PSSnapin load failure + + + + Initiate an instance of PSSnapInException. + + + + + Initiate an instance of PSSnapInException. + + Error message + + + + Initiate an instance of PSSnapInException. + + Error message + Inner exception + + + + Create the internal error record. + The ErrorRecord created will be stored in the _errorRecord member. + + + + + Gets error record embedded in this exception. + + + + + + Gets message for this exception. + + + + + Initiate a PSSnapInException instance. + + Serialization information + Streaming context + + + + Get object data from serizliation information. + + Serialization information + Streaming context + + + + PipelineReader provides asynchronous access to the stream of objects emitted by + a . + + + + + + + Event fired when data is added to the buffer + + + + + Signaled when data is available + + + + + Check if the stream is closed and contains no data. + + True if the stream is closed and contains no data, otherwise false + + Attempting to read from the underlying stream if EndOfPipeline is true returns + zero objects. + + + + + Check if the stream is open for further writes. + + true if the underlying stream is open, otherwise false + + The underlying stream may be readable after it is closed if data remains in the + internal buffer. Check to determine if + the underlying stream is closed and contains no data. + + + + + Returns the number of objects currently available in the underlying stream + + + + + Get the capacity of the stream + + + The capacity of the stream. + + + The capacity is the number of objects that stream may contain at one time. Once this + limit is reached, attempts to write into the stream block until buffer space + becomes available. + + + + + Close the stream + + + Causes subsequent calls to IsOpen to return false and calls to + a write operation to throw an PipelineClosedException. + All calls to Close() after the first call are silently ignored. + + + The stream is already disposed + + + + + Read at most objects + + The maximum number of objects to read + The objects read + + This method blocks if the number of objects in the stream is less than + and the stream is not closed. + + + + + Read a single object from the stream + + the next object in the stream + This method blocks if the stream is empty + + + + Blocks until the pipeline closes and reads all objects. + + A collection of zero or more objects. + + If the stream is empty, an empty collection is returned. + + + + + Reads all objects currently in the stream, but does not block. + + A collection of zero or more objects. + + This method performs a read of all objects currently in the + stream. If there are no objects in the stream, + an empty collection is returned. + + + + + Reads objects currently in the stream, but does not block. + + A collection of zero or more objects. + + This method performs a read of objects currently in the + stream. If there are no objects in the stream, + an empty collection is returned. + + + Return no more than maxRequested objects. + + + + + Peek the next object, but do not remove it from the stream. Non-blocking. + + + The next object in the stream or AutomationNull.Value if the stream is empty + + The stream is closed + + + + Returns an enumerator that reads the items in the pipeline + + + + + PipelineWriter allows the caller to provide an asynchronous stream of objects + as input to a . + + + + + + Signaled when buffer space is available in the underlying stream. + + + + + Check if the stream is open for further writes. + + true if the underlying stream is open, otherwise false + + Attempting to write to the underlying stream if IsOpen is false throws + a . + + + + + Returns the number of objects currently in the underlying stream + + + + + Get the capacity of the stream + + + The capacity of the stream. + + + The capacity is the number of objects that stream may contain at one time. Once this + limit is reached, attempts to write into the stream block until buffer space + becomes available. + + + + + Close the stream + + + Causes subsequent calls to IsOpen to return false and calls to + a write operation to throw an ObjectDisposedException. + All calls to Close() after the first call are silently ignored. + + + The stream is already disposed + + + + + Flush the buffered data from the stream. Closed streams may be flushed, + but disposed streams may not. + + + The stream is already disposed + + + + + Write a single object into the underlying stream + + The object to add to the stream + + One, if the write was successful, otherwise; + zero if the stream was closed before the object could be written, + or if the object was AutomationNull.Value. + + + The underlying stream is already closed + + + AutomationNull.Value is ignored + + + + + Write multiple objects to the underlying stream + + object or enumeration to read from + + If enumerateCollection is true, and + is an enumeration according to LanguagePrimitives.GetEnumerable, + the objects in the enumeration will be unrolled and + written seperately. Otherwise, + will be written as a single object. + + The number of objects written + + The underlying stream is already closed + + + If the enumeration contains elements equal to + AutomationNull.Value, they are are ignored. + This can cause the return value to be less than the size of + the collection. + + + + + This exception is used by Formattable constructor to indicate errors + occured during construction time. + + + + + This is the default constructor. + + + + + This constructor takes a localized error message. + + + A localized error message. + + + + + This constructor takes a localized message and an inner exception. + + + Localized error message. + + + Inner exception. + + + + + This constructor takes a colletion of errors occurred during construction + time. + + + The errors that occured + + + + + This constructor is required by serialization. + + + + + + + Serializes the exception data. + + serialization information + streaming context + + + + Set the default ErrorRecord. + + + + + The specific Formattable load errors. + + + + + A class that keeps the information from format.ps1xml files in a cache table + + + + + Default Constructor + + + + + Constructor that creates a FormatTable from a set of format files. + + + Format files to load for format information. + + + 1. Path {0} is not fully qualified. Specify a fully qualified type file path. + + + 1. There were errors loading Formattable. Look in the Errors property to + get detailed error messages. + + + + + Append the formatData to the list of formatting configurations, and update the + entire formatting database. + + + The formatData is of type 'ExtendedTypeDefinition'. It defines the View configuration + including TableControl, ListControl, and WideControl. + + + 1. There were errors loading Formattable. Look in the Errors property to + get detailed error messages. + + + + + Prepend the formatData to the list of formatting configurations, and update the + entire formatting database. + + + The formatData is of type 'ExtendedTypeDefinition'. It defines the View configuration + including TableControl, ListControl, and WideControl. + + + 1. There were errors loading Formattable. Look in the Errors property to + get detailed error messages. + + + + + Constructor that creates a FormatTable from a set of format files. + + + Format files to load for format information. + + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + + 1. Path {0} is not fully qualified. Specify a fully qualified type file path. + + + 1. There were errors loading Formattable. Look in the Errors property to + get detailed error messages. + + + + + Adds the to the current FormatTable's file list. + The FormatTable will not reflect the change until Update is called. + + + + if true, is prepended to the current FormatTable's file list. + if false, it will be appended. + + + + + Removes the from the current FormatTable's file list. + The FormatTable will not reflect the change until Update is called. + + + + + + Returns a format table instance with all default + format files loaded + + + + + + Defines the exception thrown for all Extended type system related errors + + + + + Initializes a new instance of ExtendedTypeSystemException with the message set + to typeof(ExtendedTypeSystemException).FullName + + + + + Initializes a new instance of ExtendedTypeSystemException setting the message + + the exception's message + + + + Initializes a new instance of ExtendedTypeSystemException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Recommended constructor for the class + + String that uniquely identifies each thrown Exception + The inner exception, null for none + Resource string + Arguments to the resource string + + + + Initializes a new instance of ExtendedTypeSystemException with serialization parameters + + serialization information + streaming context + + + + Defines the exception thrown for Method related errors + + + + + Initializes a new instance of MethodException with the message set + to typeof(MethodException).FullName + + + + + Initializes a new instance of MethodException setting the message + + the exception's message + + + + Initializes a new instance of MethodException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Recommended constructor for the class + + String that uniquely identifies each thrown Exception + The inner exception + Resource String + Arguments to the resource string + + + + Initializes a new instance of MethodException with serialization parameters + + serialization information + streaming context + + + + Defines the exception thrown for Method invocation exceptions + + + + + Initializes a new instance of MethodInvocationException with the message set + to typeof(MethodInvocationException).FullName + + + + + Initializes a new instance of MethodInvocationException setting the message + + the exception's message + + + + Initializes a new instance of MethodInvocationException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Recommended constructor for the class + + String that uniquely identifies each thrown Exception + The inner exception + Resource String + Arguments to the resource string + + + + Initializes a new instance of MethodInvocationException with serialization parameters + + serialization information + streaming context + + + + Defines the exception thrown for errors getting the value of properties + + + + + Initializes a new instance of GetValueException with the message set + to typeof(GetValueException).FullName + + + + + Initializes a new instance of GetValueException setting the message + + the exception's message + + + + Initializes a new instance of GetValueException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Recommended constructor for the class + + String that uniquely identifies each thrown Exception + The inner exception + Resource String + Arguments to the resource string + + + + Initializes a new instance of GetValueException with serialization parameters + + serialization information + streaming context + + + + Defines the exception thrown for errors getting the value of properties + + + + + Initializes a new instance of GetValueException with the message set + to typeof(GetValueException).FullName + + + + + Initializes a new instance of GetValueException setting the message + + the exception's message + + + + Initializes a new instance of GetValueException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Recommended constructor for the class + + String that uniquely identifies each thrown Exception + The inner exception + Resource String + Arguments to the resource string + + + + Initializes a new instance of GetValueException with serialization parameters + + serialization information + streaming context + + + + Defines the exception thrown for exceptions thrown by property getters + + + + + Initializes a new instance of GetValueInvocationException with the message set + to typeof(GetValueInvocationException).FullName + + + + + Initializes a new instance of GetValueInvocationException setting the message + + the exception's message + + + + Initializes a new instance of GetValueInvocationException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Recommended constructor for the class + + String that uniquely identifies each thrown Exception + The inner exception + Resource String + Arguments to the resource string + + + + Initializes a new instance of GetValueInvocationException with serialization parameters + + serialization information + streaming context + + + + Defines the exception thrown for errors setting the value of properties + + + + + Initializes a new instance of SetValueException with the message set + to typeof(SetValueException).FullName + + + + + Initializes a new instance of SetValueException setting the message + + the exception's message + + + + Initializes a new instance of SetValueException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Recommended constructor for the class + + String that uniquely identifies each thrown Exception + The inner exception + Resource String + Arguments to the resource string + + + + Initializes a new instance of SetValueException with serialization parameters + + serialization information + streaming context + + + + Defines the exception thrown for exceptions thrown by property setters + + + + + Initializes a new instance of SetValueInvocationException with the message set + to typeof(SetValueInvocationException).FullName + + + + + Initializes a new instance of SetValueInvocationException setting the message + + the exception's message + + + + Initializes a new instance of SetValueInvocationException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Recommended constructor for the class + + String that uniquely identifies each thrown Exception + The inner exception + Resource String + Arguments to the resource string + + + + Initializes a new instance of SetValueInvocationException with serialization parameters + + serialization information + streaming context + + + + Defines the exception thrown for type conversion errors + + + + + Populates a with the + data needed to serialize the PSInvalidCastException object. + + The to populate with data. + The destination for this serialization. + + + + Initializes a new instance of PSInvalidCastException with serialization parameters + + serialization information + streaming context + + + + Initializes a new instance of PSInvalidCastException with the message set + to typeof(PSInvalidCastException).FullName + + + + + Initializes a new instance of PSInvalidCastException setting the message + + the exception's message + + + + Initializes a new instance of PSInvalidCastException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Gets the ErrorRecord associated with this exception + + + + + Define type for a reference object in Monad scripting language. + + + This class is used to describe both kinds of references: + a. reference to a value: _value will be holding the value being referenced. + b. reference to a variable: _value will be holding a PSVariable instance for the variable to be referenced. + + A reference is created in following ways, + a. value reference + $a = [ref] 3 + [ref] $a = 3 + [ref] $a = $b + b. variable reference + $a = [ref] $b + + + + + + Create an instance of PSReference. + + + + + + Get and set value of PSReference. + + + If underlining object is a value, the object itself will be operated on. + If underlining object is a variable, the variable will be operated on. + + + + + IInspectable represents the base interface for all WinRT types. + Any run time class exposed through WInRT language projections + like C#, VB.Net, C++ and JavaScript would have implemented + the IInspectable interface. + This interface is needed on long term basis to efficiently support identifying + WinRT type instances created in Powershell session. Hence being + included as part of SMA. + The only purpose of this interface is to identify if the created object is of WinRT type. + Users should not implement this interface for any custom functionalities. + This is like a PInvoke. WinRT team have defined IInspectable in the COM layer. + Through PInvoke this interface is being used in the managed layer. + + + + + Helper class for WinRT types. + + + + + Implements Adapter for the COM objects. + + + + + Constructor for the ComAdapter + + typeinfo for the com object we are adapting + + + + Returns the TypeNameHierarchy out of an object + + object to get the TypeNameHierarchy from + + + + Returns null if memberName is not a member in the adapter or + the corresponding PSMemberInfo + + object to retrieve the PSMemberInfo from + name of the member to be retrieved + The PSMemberInfo corresponding to memberName from obj + + + + Retrieves all the members available in the object. + The adapter implementation is encouraged to cache all properties/methods available + in the first call to GetMember and GetMembers so that subsequent + calls can use the cache. + In the case of the .NET adapter that would be a cache from the .NET type to + the public properties and fields available in that type. + In the case of the DirectoryEntry adapter, this could be a cache of the objectClass + to the properties available in it. + + object to get all the member information from + all members in obj + + + + Returns an array with the property attributes + + property we want the attributes from + an array with the property attributes + + + + Returns the value from a property coming from a previous call to DoGetProperty + + PSProperty coming from a previous call to DoGetProperty + The value of the property + + + + Sets the value of a property coming from a previous call to DoGetProperty + + PSProperty coming from a previous call to DoGetProperty + value to set the property with + instructs the adapter to convert before setting, if the adapter suports conversion + + + + Returns true if the property is settable + + property to check + true if the property is settable + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + + + Returns the name of the type corresponding to the property + + PSProperty obtained in a previous DoGetProperty + True if the result is for display purposes only + the name of the type corresponding to the property + + + + get the property signature. + + property object whose signature we want + string representing the signature of the property + + + + Called after a non null return from GetMethodData to try to call + the method with the arguments + + the non empty return from GetMethods + the arguments to use + the return value for the method + + + + Called after a non null return from GetMethodData to return the overloads + + the return of GetMethodData + + + + + Returns the name of the type corresponding to the property's value + + property obtained in a previous GetMember + the name of the type corresponding to the member + + + + Returns true if the property is settable + + property to check + true if the property is settable + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + + + Called after a non null return from GetMember to get the property value + + the non empty return from GetMember + the arguments to use + the return value for the property + + + + Called after a non null return from GetMember to set the property value + + the non empty return from GetMember + the value to set property with + the arguments to use + + + + Returns the string representation of the property in the object + + property obtained in a previous GetMember + the string representation of the property in the object + + + + Called after a non null return from GetMember to return the overloads + + the return of GetMember + + + + Summary description for IDispatch. + + + + + Make a by-Ref VARIANT value based on the passed-in VARIANT argument + + The source Variant pointer + The destination Variant pointer + + + + Alloc memory for a VARIANT array with the specified length. + Also initialize the VARIANT elements to be the type 'VT_EMPTY'. + + Array length + Pointer to the array + + + + Generate the ByRef array indicating whether the corresponding argument is by-reference. + + Parameters retrieved from metadata + Count of arguments to pass in IDispatch.Invoke + Indicate if we are handling arguments for PropertyPut/PropertyPutRef + + + + + Invoke the COM member + + IDispatch object + Dispatch identifier that identifies the member + Arguments passed in + Boolean array that indicates by-Ref parameters + Invocation kind + + + + + Clear variables of type VARIANTARG (or VARIANT) before the memory containing the VARIANTARG is freed. + + + + + + We have to declare 'bstrSource', 'bstrDescription' and 'bstrHelpFile' as pointers because + CLR marshalling layer would try to free those BSTRs by default and that is not correct. + Therefore, manually marshalling might be needed to extract 'bstrDescription'. + + + + + VARIANT type used for passing arguments in COM interop + + + + + Defines a method in the COM object. + + + + + Initializes new instance of ComMethod class. + + + + + Defines the name of the method. + + + + + Updates funcdesc for method information. + + index of funcdesc for method in type information. + + + + Returns the different method overloads signatures. + + + + + + Invokes the method on object + + represents the instance of the method we want to invoke + parameters to be passed to the method + returns the value of method call + + + + Defines a property in the COM object. + + + + + Initializes a new instance of ComProperty. + + reference to the ITypeInfo of the COM object + name of the property being created. + + + + Defines the name of the property. + + + + + Defines the type of the property. + + + + + Retrieves the index of the FUNCDESC for the current property. + + + + + Defines whether the property has parameters or not. + + + + + Returns the number of parameters in this property. + This is applicable only for parameterized properties. + + + + + Defines whether this property is settable. + + + + + Defines whether this property is gettable. + + + + + Get value of this property + + instance of the object from which to get the property value + value of the property + + + + Get value of this property + + instance of the object from which to get the property value + parameters to get the property value + value of the property + + + + Sets value of this property. + + instance of the object to which to set the property value + value to set this property + + + + Sets the value of the property. + + instance of the object to which to set the property value + value to set this property + parameters to set this property. + + + + Updates the COM property with setter and getter information. + + functional descriptor for property getter or setter + index of function descriptor in type information + + + + Returns the property signature string + + property signature + + + + A Wrapper class for COM object's Type Information + + + + + Member variables. + + + + + Constructor + + ITypeInfo object being wrapped by this object + + + + Collection of properties in the COM object. + + + + + Collection of methods in the COM object. + + + + + Returns the string of the GUID for the type information. + + + + + Initializes the typeinfo object + + + + + Get the typeinfo interface for the given comobject. + + reference to com object for which we are getting type information. + ComTypeInfo object which wraps the ITypeInfo interface of the given COM object + + + + Get TypeAttr for the given type information. + + reference to ITypeInfo from which to get TypeAttr + + + + + + + + + + + + + + + + + + + + Get the IDispatch Typeinfo from CoClass typeinfo. + + Reference to the type info to which the type descriptor belongs + ITypeInfo reference to the Dispatch interface + + + + Defines a utility class that is used by COM adapter. + + + + + Gets Method Signature from FuncDesc describing the method. + + ITypeInfo interface of the object + FuncDesc which defines the method + True if this is a property put; these properties take their return type from their first paramenter + signature of the method + + + + Gets the name of the method or property defined by funcdesc + + ITypeInfo interface of the type + FuncDesc of property of method + name of the method or property + + + + Gets the name of the custom type defined in the type library + + ITypeInfo interface of the type + reference to the custom type + name of the custom type + + + + This function gets a string representation of the Type Descriptor + This is used in generating signature for Properties and Methods. + + Reference to the type info to which the type descriptor belongs + reference to type descriptor which is being converted to string from + string representation of the type descriptor + + + + Determine .net type for the given type descriptor + + COM type descriptor to convert + type represented by the typedesc + + + + Converts a FuncDesc out of GetFuncDesc into a MethodInformation + + + + + Obtains the parameter information for a given FuncDesc + + + + + Converts a MethodBase[] into a MethodInformation[] + + the ComMethodInformation[] corresponding to methods + + + + Deals with DataRow objects + + + + + Retrieves all the properties available in the object. + + object to get all the property information from + collection where the members will be added + + + + Returns null if propertyName is not a property in the adapter or + the corresponding PSProperty with its adapterData set to information + to be used when retrieving the property. + + object to retrieve the PSProperty from + name of the property to be retrieved + The PSProperty corresponding to propertyName from obj + + + + Returns the name of the type corresponding to the property + + PSProperty obtained in a previous DoGetProperty + True if the result is for display purposes only + the name of the type corresponding to the property + + + + Returns true if the property is settable + + property to check + true if the property is settable + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + + + Returns the value from a property coming from a previous call to DoGetProperty + + PSProperty coming from a previous call to DoGetProperty + The value of the property + + + + Sets the value of a property coming from a previous call to DoGetProperty + + PSProperty coming from a previous call to DoGetProperty + value to set the property with + instructs the adapter to convert before setting, if the adapter suports conversion + + + + Deals with DataRowView objects + + + + + Retrieves all the properties available in the object. + + object to get all the property information from + collection where the members will be added + + + + Returns null if propertyName is not a property in the adapter or + the corresponding PSProperty with its adapterData set to information + to be used when retrieving the property. + + object to retrieve the PSProperty from + name of the property to be retrieved + The PSProperty corresponding to propertyName from obj + + + + Returns the name of the type corresponding to the property + + PSProperty obtained in a previous DoGetProperty + True if the result is for display purposes only + the name of the type corresponding to the property + + + + Returns true if the property is settable + + property to check + true if the property is settable + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + + + Returns the value from a property coming from a previous call to DoGetProperty + + PSProperty coming from a previous call to DoGetProperty + The value of the property + + + + Sets the value of a property coming from a previous call to DoGetProperty + + PSProperty coming from a previous call to DoGetProperty + value to set the property with + instructs the adapter to convert before setting, if the adapter suports conversion + + + + Deals with DirectoryEntry objects + + + + + Returns null if memberName is not a member in the adapter or + the corresponding PSMemberInfo + + object to retrieve the PSMemberInfo from + name of the member to be retrieved + The PSMemberInfo corresponding to memberName from obj + + + + Retrieves all the members available in the object. + The adapter implementation is encouraged to cache all properties/methods available + in the first call to GetMember and GetMembers so that subsequent + calls can use the cache. + In the case of the .NET adapter that would be a cache from the .NET type to + the public properties and fields available in that type. + In the case of the DirectoryEntry adapter, this could be a cache of the objectClass + to the properties available in it. + + object to get all the member information from + all members in obj + + + + Returns the value from a property coming from a previous call to GetMember + + PSProperty coming from a previous call to GetMember + The value of the property + + + + Sets the value of a property coming from a previous call to GetMember + + PSProperty coming from a previous call to GetMember + value to set the property with + instructs the adapter to convert before setting, if the adapter suports conversion + + + + Returns true if the property is settable + + property to check + true if the property is settable + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + + + Returns the name of the type corresponding to the property's value + + PSProperty obtained in a previous GetMember + True if the result is for display purposes only + the name of the type corresponding to the member + + + + Called after a non null return from GetMember to try to call + the method with the arguments + + the non empty return from GetMethods + the arguments to use + the return value for the method + + + + Returns the string representation of the method in the object + + the string representation of the method in the object + + + + Deals with ManagementObject objects. + This is a base class that interacts with other entities. + + + + + Method information is cached for every unique ManagementClassPath created/used. + This structure stores information such as MethodDefinition as displayed + by Get-Member cmdlet, original MethodData and computed method information such + as whether a method is static etc. + + + + + Returns the TypeNameHierarchy using the __Derivation SystemProperties + and dotnetBaseType. + + + + + + + + + Returns the TypeNameHierarchy out of an ManagementBaseObject + + object to get the TypeNameHierarchy from + + TypeName is of the format ObjectType#__Namespace\\__Class + + + + + Returns null if memberName is not a member in the adapter or + the corresponding PSMemberInfo + + object to retrieve the PSMemberInfo from + name of the member to be retrieved + The PSMemberInfo corresponding to memberName from obj + + + + Retrieves all the members available in the object. + The adapter implementation is encouraged to cache all properties/methods available + in the first call to GetMember and GetMembers so that subsequent + calls can use the cache. + In the case of the .NET adapter that would be a cache from the .NET type to + the public properties and fields available in that type. + In the case of the DirectoryEntry adapter, this could be a cache of the objectClass + to the properties available in it. + + object to get all the member information from + all members in obj + + + + Called after a non null return from GetMember to try to call + the method with the arguments + + the non empty return from GetMethods + the arguments to use + the return value for the method + + + + Called after a non null return from GetMember to return the overloads + + the return of GetMember + + + + + Returns true if the property is settable + + property to check + true if the property is settable + + + + Returns true if the property is gettable + + property to check + true if the property is gettable + + + + Returns the name of the type corresponding to the property + + PSProperty obtained in a previous DoGetProperty + True if the result is for display purposes only + the name of the type corresponding to the property + + + + Returns the value from a property coming from a previous call to DoGetProperty + + PSProperty coming from a previous call to DoGetProperty + The value of the property + + + + Sets the value of a property coming from a previous call to DoGetProperty. + This method will only set the property on a particular instance. If you want + to update the WMI store, call Put(). + + PSProperty coming from a previous call to DoGetProperty + value to set the property with + instructs the adapter to convert before setting, if the adapter suports conversion + + + + Returns the string representation of the property in the object + + property obtained in a previous GetMember + the string representation of the property in the object + + + + Returns an array with the property attributes + + property we want the attributes from + an array with the property attributes + + + + Retrieves the table for instance methods + + object containing methods to load in typeTable. + controls what methods are adapted. + + + + Populates methods of a ManagementClass in a CacheTable + + Class to get the method info from. + Cachetable to update. + controls what methods are adapted. + + + + + + Constructs a ManagementClass object from the supplied mgmtBaseObject. + ManagementObject has scope, options, path which need to be carried over to the ManagementClass for + retreiveing method/property/parameter metadata + + + + + + + Gets the object type associated with a CimType:object + + PropertyData representing a parameter + + typeof(object)#EmbeddedObjectTypeName if one found + typeof(object) otherwise + + + This helps users of WMI in identifying exactly what type + the underlying WMI provider will accept. + + + + + Gets the dotnet type of a given PropertyData + + PropertyData input. + A string representing dotnet type. + + + + Checks whether a given MethodData is static or not. + + + + true, if static + + + This method relies on the qualifier "static" + + + + + Decode parameter information from the supplied object. + + A ManagementBaseObject describing the parameters. + A sorted list to store parameter information. + + Should not throw exceptions + + + + + Gets WMI method information. + + + + + Decodes only input parameters. + + + + + Retrieves all the properties available in the object. + + object to get all the property information from + collection where the members will be added + + + + Adds method information of the ManagementObject. This is done by accessing + the ManagementClass corresponding to this ManagementObject. All the method + information is cached for a particular ManagementObject. + + PSMemberInfo + Object for which the members need to be retrieved. + Method information is added to this. + + + + Get a method object given method name + + PSMemberInfo + Object for which the method is required. + Name of the method + + PsMemberInfo if method exists. + Null otherwise. + + + + + Returns null if propertyName is not a property in the adapter or + the corresponding PSProperty with its adapterData set to information + to be used when retrieving the property. + + object to retrieve the PSProperty from + name of the property to be retrieved + The PSProperty corresponding to propertyName from obj + + + + Deals with ManagementClass objects. + Adapts only static methods and SystemProperties of a + ManagemetnClass object. + + + + + Invokes method reperesented by using supplied arguments. + + ManagementObject on which the method is invoked. + Method data. + Method arguments. + + + + + Adds method information of the ManagementClass. Only static methods are added for + an object of type ManagementClass + + PSMemberInfo + Object for which the members need to be retrieved. + Method information is added to this. + + + + Returns method information for a ManagementClass method. + + + + + + PSMethod if method exists and is static. Null otherwise. + + + + + Deals with ManagementObject objects. + This class do not adapt static methods + + + + + Invokes method reperesented by using supplied arguments. + + ManagementObject on which the method is invoked. + Method data. + Method arguments. + + + + + Adds method information of the ManagementObject. Only instance methods are added for + a ManagementObject. + + PSMemberInfo + Object for which the members need to be retrieved. + Method information is added to this. + + + + Returns method information for a ManagementObject method. + + + + + + PSMethod if method exists and is not static. Null otherwise. + + + + + Serves as the arguments for events triggered by exceptions in the SetValue method of + + + The sender of this event is an object of type . + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Gets and sets a indicating if the SetValue method of + should throw the exception associated with this event. + + + The default value is true, indicating that the Exception associated with this event will be thrown. + + + + + Gets the exception that triggered the associated event. + + + + + Initializes a new instance of setting the value of of the exception that triggered the associated event. + + Exception that triggered the associated event + + + + Serves as the arguments for events triggered by exceptions in the GetValue + method of + + + The sender of this event is an object of type . + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Gets and sets a indicating if the GetValue method of + should throw the exception associated with this event. + + + + + Gets the Exception that triggered the associated event. + + + + + Initializes a new instance of setting the value of of the exception that triggered the associated event. + + Exception that triggered the associated event + + + + Gets and sets the value that will serve as a replacement to the return of the GetValue + method of . If this property is not set + to a value other than null then the exception associated with this event is thrown. + + + + + Serves as the property information generated by the GetProperties method of . + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + Gets the collection of attributes for this member. + + + + + Gets a value indicating whether this property is read-only. + + + + + This method has no effect for . + CanResetValue returns false. + + This parameter is ignored for + + + + Returns false to indicate that ResetValue has no effect. + + The component to test for reset capability. + false + + + + Returns true to indicate that the value of this property needs to be persisted. + + The component with the property to be examined for persistence. + true + + + + Gets the type of the component this property is bound to. + + This property returns the type. + + + + Gets the type of the property value. + + + + + Gets the current value of the property on a component. + + The component with the property for which to retrieve the value. + The value of a property for a given component. + + If the property has not been found in the component or an exception has + been thrown when getting the value of the property. + This Exception will only be thrown if there is no event handler for the GettingValueException + event of the that created this . + If there is an event handler, it can prevent this exception from being thrown, by changing + the ShouldThrow property of from its default + value of true to false. + + If is null. + if is not + an or an . + + + + Sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + If the property has not been found in the component or an exception has + been thrown when setting the value of the property. + This Exception will only be thrown if there is no event handler for the SettingValueException + event of the that created this . + If there is an event handler, it can prevent this exception from being thrown, by changing + the ShouldThrow property of + from its default value of true to false. + + If is null. + if is not an + or an . + + + + + Provides information about the properties for an object of the type . + + + + + Occurs when there was an exception setting the value of a property. + + + The ShouldThrow property of the allows + subscribers to prevent the exception from being thrown. + + + + + Occurs when there was an exception getting the value of a property. + + + The ShouldThrow property of the allows + subscribers to prevent the exception from being thrown. + + + + + Initializes a new instance of the that provides + property information about . + + The this class retrieves property information from. + + + + Gets the this class retrieves property information from. + + + + + Returns a collection of property descriptors for the represented by this type descriptor. + + A PropertyDescriptorCollection containing the property descriptions for the represented by this type descriptor. + + + + Returns a filtered collection of property descriptors for the represented by this type descriptor. + + An array of attributes to use as a filter. This can be a null reference (Nothing in Visual Basic). + A PropertyDescriptorCollection containing the property descriptions for the represented by this type descriptor. + + + + Determines whether the Instance property of is equal to the current Instance. + + The Object to compare with the current Object. + true if the Instance property of is equal to the current Instance; otherwise, false. + + + + Provides a value for hashing algorithms. + + A hash code for the current object + + + + Returns the default property for this object. + + An that represents the default property for this object, or a null reference (Nothing in Visual Basic) if this object does not have properties + + + + Returns a type converter for this object. + + A that is the converter for this object, or a null reference (Nothing in Visual Basic) if there is no for this object. + + + + Returns the object that this value is a member of. + + A that represents the property whose owner is to be found. + An object that represents the owner of the specified property. + + + + Returns the default event for this object. + + An that represents the default event for this object, or a null reference (Nothing in Visual Basic) if this object does not have events. + + + + Returns the events for this instance of a component. + + An that represents the events for this component instance. + + + + Returns the events for this instance of a component using the attribute array as a filter. + + An array of type that is used as a filter. + An that represents the events for this component instance that match the given set of attributes. + + + + Returns a collection of type for this object. + + An with the attributes for this object. + + + + Returns the class name of this object. + + The class name of the object, or a null reference (Nothing in Visual Basic) if the class does not have a name. + + + + Returns the name of this object. + + The name of the object, or a null reference (Nothing in Visual Basic) if object does not have a name. + + + + Returns an editor of the specified type for this object. + + A that represents the editor for this object. + An object of the specified type that is the editor for this object, or a null reference (Nothing in Visual Basic) if the editor cannot be found. + + + + Retrieves a to provides information about the properties for an object of the type . + + + + + Occurs when there was an exception setting the value of a property. + + + The ShouldThrow property of the allows + subscribers to prevent the exception from being thrown. + + + + + Occurs when there was an exception getting the value of a property. + + + The ShouldThrow property of the allows + subscribers to prevent the exception from being thrown. + + + + + Initializes a new instance of + + + + + Retrieves a to provide information about the properties for an object of the type . + + The type of object for which to retrieve the type descriptor. If this parameter is not noll and is not the , the return of this method will be null. + An instance of the type. If instance is null or has a type other than , this method returns null. + An that can provide property information for the + type , or null if is not null, + but has a type other than . + + + + The MamlUtil class. + + + + + Takes Name value from maml2 and overrides it in maml1. + + + + + + + Takes Name value from maml2 and overrides it in maml1. + + + + + + + Adds common properties like PSSnapIn,ModuleName from maml2 to maml1 + + + + + + + Prepend - Modify Syntax element in maml1 using the Syntax element from maml2. + + + + + Prepend - Modify DetailedDescription element in maml1 using the DetailedDescription element from maml2. + + + + + Override - Modify Parameters element in maml1 using the Parameters element from maml2. + This will copy parameters from maml2 that are not present in maml1. + + + + + Prepend - Modify Notes element in maml1 using the Notes element from maml2. + + + + + Get propery info. + + + + + Prepend property value. + + + + + + + + + Should Override the maml1 value from maml2 instead of prepend. + + + + + Ensure property info path exists. + + + + + The ProviderCommandHelpInfo class. + + + + + Help info. + + + + + Constructor for ProviderCommandHelpInfo. + + + + + Get parameter. + + + + + Returns the Uri used by get-help cmdlet to show help + online. Returns only the first uri found under + RelatedLinks. + + + Null if no Uri is specified by the helpinfo or a + valid Uri. + + + + + The Name property. + + + + + The Synopsis property. + + + + + The HelpCategory property. + + + + + The FullHelp property. + + + + + The Component property. + + + + + The Role property. + + + + + The Functionality property. + + + + + The ProviderContext class. + + + + + Requested path. + + + + + Requested path. + + + + + Create a new instance of ProviderContext. + + + + + Get provider specific help info. + + + + + Monad help is an architecture made up of three layers: + 1. At the top is get-help commandlet from where help functionality is accessed. + 2. At the middel is the help system which collects help objects based on user's request. + 3. At the bottom are different help providers which provide help contents for different kinds of information requested. + + Class HelpSystem implements the middle layer of Monad Help. + + HelpSystem will provide functionalitys in following areas, + 1. Initialization and management of help providers + 2. Help engine: this will invoke different providers based on user's request. + 3. Help API: this is the API HelpSystem provide to get-help commandlet. + + Initialization: + Initialization of different help providers needs some context information like "ExecutionContext" + + Help engine: + By default, HelpInfo will be retrieved in two phase: exact-match phase and search phase. + + Exact-match phase: help providers will be called in appropriate order to retrieve HelpInfo. + If a match is found, help engine will stop and return the one and only HelpInfo retrieved. + + Search phase: all relevant help providers will be called to retrieve HelpInfo. (Order doesn't + matter in this case) Help engine will not stop until all help providers are called. + + Behaviour of help engine can be modified based on Help API parameters in following ways, + 1. limit the number of HelpInfo to be returned. + 2. specify which providers will be used. + 3. general help info returned in case the search target is empty. + 4. default help info (or hint) returned in case no match is found. + + Help Api: + Help Api is the function to be called by get-help commandlet. + + Following information needs to be provided in Help Api paramters, + 1. search target: (which can be one or multiple strings) + 2. help type: limit the type of help to be searched. + 3. included fields: the fields to be included in the help info + 4. excluded fields: the fields to be excluded in the help info + 5. max number of results to be returned: + 6. scoring algorithm for help results? + 7. help reason: help can be directly invoked by end user or as a result of + some command syntax error. + + [gxie, 7-25-04]: included fields, excluded fields and help reason will be handled in + get-help commandlet. + + Help API's are internal. The only way to access help is by + invoking the get-help command. + + To support the scenario where multiple monad engine running in one process. It + is required that each monad engine has its one help system instance. + + Currently each ExecutionContext has a help system instance as its member. + + Help Providers: + The basic contract for help providers is to provide help based on the + search target. + + The result of help provider invocation can be three things: + a. Full help info. (in the case of exact-match and single search result) + b. Short help info. (in the case of multiple search result) + c. Partial help info. (in the case of some commandlet help info, which + should be supplemented by provider help info) + d. Help forwarding info. (in the case of alias, which will change the target + for alias) + + Help providers may need to provide functionality in following two area, + a. caching and indexing to boost performance + b. localization + + + + + + Constructor for HelpSystem. + + Execution context for this help system + + + + ExecutionContext for the help system. Different help providers + will depend on this to retrieve session related information like + session state and command discovery objects. + + + + + + Initialize help system with an execution context. If the execution context + matches the execution context of current singleton HelpSystem object, nothing + needs to be done. Otherwise, a new singleton HelpSystem object will be created + with the new execution context. + + + + + Get Help api function. This is the basic form of the Help API using help + request. + + Variants of this function are defined below, which will create help request + object on fly. + + helpRequest object + An array of HelpInfo object + + + + This is for tracking the last set of errors happened during the help + search. + + + + + + This is the help category to search for help for the last command. + + help category to search for help + + + + VerboseHelpErrors is used in the case when end user is interested + to know all errors happened during a help search. This property + is false by default. + + If this property is turned on (by setting session variable "VerboseHelpError"), + following two behaviours will be different, + a. Help errors will be written to error pipeline regardless the situation. + (Normally, help errors will be written to error pipeline if there is no + help found and there is no wildcard in help search target). + b. Some additional warnings, including maml processing warnings, will be + written to error pipeline. + + + + + + Gets the search paths for external snapins/modules that are currently loaded. + If the current shell is single-shell based, then the returned + search path contains all the directories of currently active PSSnapIns/modules. + + a collection of strings representing locations + + + + Get help based on the target, help type, etc + + Help eninge retrieve help based on following schemes, + + 1. if help target is empty, get default help + 2. if help target is not a search pattern, try to retrieve exact help + 3. if help target is a search pattern or step 2 returns no helpInfo, try to search for help + (Search for pattern in command name followed by pattern match in help content) + 4. if step 3 returns exact one helpInfo object, try to retrieve exact help. + + + Help request object + An array of HelpInfo object + + + + Get help that exactly match the target. + + If the helpInfo returned is not complete, we will forward the + helpInfo object to appropriate help provider for further processing. + (this is implemented by ForwardHelp) + + + Help request object + HelpInfo object retrieved. Can be Null. + + + + Forward help to the help provider with type forwardHelpCategory. + + This is used in the following known scenarios so far + 1. Alias: helpInfo returned by Alias is not what end user needed. + The real help can be retrieved from Command help provider. + + + + Help request object + Never returns null. + helpInfos is not null or emtpy. + + + + Get the default help info (normally when help target is empty). + + + + + + Get help that exactly match the target + + help request object + An IEnumerable of HelpInfo object + + + + return the list of help providers initialized + + a list of help providers + + + + Initialize help providers. + + + Currently we hardcode the sequence of help provider initialization. + In the longer run, we probably will load help providers based on some provider catalog. That + will allow new providers to be defined by customer. + + + + + The error tracer for this help system + + + + + + Start a trace frame for a help file + + + + + + + Trace an error within a help frame, which is tracked by help tracer itself. + + + + + + Trace a collection of errors within a help frame, which is tracked by + help tracer itself. + + + + + + Before each help request is serviced, current thread culture will validate + against the current culture of help system. If there is a miss match, each + help provider will be notified of the culture change. + + + + + Reset help providers providers. This normally corresponds to help culture change. + + Normally help providers will remove cached help content to make sure new help + requests will be served with content of right culture. + + + + + + Help progress info + + + + + This is the structure to keep track of HelpProvider Info. + + + + + Constructor + + assembly that contains this help provider + the class that implements this help provider + help category of this help provider + + + + Help categories + + + + + Undefined help category + + + + + Alias help + + + + + Cmdlet help + + + + + Provider help + + + + + General keyword help + + + + + FAQ's + + + + + Glossary and term definitions + + + + + Help that is contained in help file + + + + + Help from a script block + + + + + Help for a function + + + + + Help for a filter + + + + + Help for an external script (i.e. for a *.ps1 file) + + + + + All help categories. + + + + + Default Help + + + + + Help for a Workflow + + + + + Help for a Configuration + + + + + Help for DSC Resource + + + + + Help for PS Classes + + + + + + Class HelpInfo keeps track of help information to be returned by help system. + + HelpInfo includes information in following aspect, + + a. Name: the target name for help + b. Category: what category the help belongs to + This class will be derived to track help info for different help categories like, + AliasHelpInfo + CommandHelpInfo + ProviderHelpInfo + + etc. + + In general, there will be a specific helpInfo child class for each kind of help provider. + + + + + + Constructor for HelpInfo + + + + + Name for help info + + Name for help info + + + + Synopsis for help info + + Synopsis for help info + + + + Component for help info. + + Component for help info + + + + Role for help info. + + Role for help ino + + + + Functionality for help info. + + Functionality for help info + + + + Help category for help info + + Help category for help info + + + + Forward help category for this help info + + + If this is not HelpCategory.None, then some other help provider + (as specified in the HelpCategory bit pattern) need + to process this helpInfo before it can be returned to end user. + + Help category to forward this helpInfo to + + + + Target object in forward-help-provider that should process this HelpInfo. + This will serve as auxilliary information to be passed to forward help provider. + + In the case of AliasHelpInfo, for example, it needs to be forwarded to + CommandHelpProvider to fill in detailed helpInfo. In that case, ForwardHelpCategory + will be HelpCategory.Command and the help target is the cmdlet name that matches this + alias. + + forward target object name + + + + Full help object for this help item. + + Full help object for this help item + + + + Short help object for this help item. + + Short help object for this help item + + + + Returs help information for a parameter(s) identified by pattern + + pattern to search for parameters + A collection of parameters that match pattern + + The base method returns an empty list. + + + + + Returns the Uri used by get-help cmdlet to show help + online. + + + Null if no Uri is specified by the helpinfo or a + valid Uri. + + + Specified Uri is not valid. + + + + + Returns true if help content in help info matches the + pattern contained in . + The underlying code will usually run pattern.IsMatch() on + content it wants to search. + + + + + + + Add common help properties to the helpObject which is in PSObject format. + + Intrinsic help properties include properties like, + Name, + Synopsis + HelpCategory + etc. + + Since help object from different help category has different format, it is + needed that we generate these basic information uniformly in the help object + itself. + + This function is normally called at the end of each child class constructor. + + + + + + Update common help user-defined properties of the help object which is in PSObject format. + Call this function to update Mshobject after it is created. + + + This function wont create new properties.This will update only user-defined properties created in + + + + + + This is for tracking the set of errors happened during the parsing of + of this helpinfo. + + + + + + + Class HelpProvider defines the interface to be implemented by help providers. + + Help Providers: + The basic contract for help providers is to provide help based on the + search target. + + The result of help provider invocation can be three things: + a. Full help info. (in the case of exact-match and single search result) + b. Short help info. (in the case of multiple search result) + c. Partial help info. (in the case of some commandlet help info, which + should be supplemented by provider help info) + d. Help forwarding info. (in the case of alias, which will change the target + for alias) + + Help providers may need to provide functionality in following two area, + a. caching and indexing to boost performance + b. localization + + Basic properties of a Help Provider + 1. Name + 2. Type + 3. Assembly + + Help Provider Interface + 1. Initialize: + 2. ExactMatchHelp: + 3. SearchHelp: + 4. ProcessForwardedHelp + + + + + + Constructor for HelpProvider + + + + + Name for the help provider + + Name for the help provider + Derived classes should set this. + + + + Help category for the help provider + + Help category for the help provider + Derived classes should set this. + + + + Retrieve help info that exactly match the target. + + help request object + List of HelpInfo objects retrived + + + + Search help info that match the target search pattern. + + help request object + + If true, searches for pattern in the help content. Individual + provider can decide which content to search in. + + If false, seraches for pattern in the command names. + + a collection of help info objects + + + + Process a helpinfo forwarded over by another help provider. + + HelpProvider can choose to process the helpInfo or not, + + 1. If a HelpProvider chooses not to process the helpInfo, it can return null to indicate + helpInfo is not processed. + 2. If a HelpProvider indeed processes the helpInfo, it should create a new helpInfo + object instead of modifying the passed-in helpInfo object. This is very important + since the helpInfo object passed in is usually stored in cache, which can + used in later queries. + + helpInfo passed over by another HelpProvider + help request object + + + + + Reset help provider. + + Normally help provider are reset after a help culture change. + + + + + Report help file load errors. + + Currently three cases are handled, + + 1. IOException: not able to read the file + 2. SecurityException: not authorized to read the file + 3. XmlException: xml schema error. + + This will be called either from search help or exact match help + to find the error. + + + + + + + + + Each Shell ( minishell ) will have its own path specified by the + registry HKLM\software\microsoft\msh\1\ShellIds\<ShellID>\path. Every help + provider should search this path for content. + + string representing base directory of the executing shell. + + + + Helper function which checks whether PSSnapIns are supported in current invocation. + + true if supported,false otherwise. + + + + Gets the search paths. If the current shell is single-shell based, then the returned + search path contains all the directories of currently active PSSnapIns + + a collection of string representing locations + + + + + Class HelpProviderWithCache provides a pseudo implementation of HelpProvider + at which results are cached in a hashtable so that later retrieval can be + faster. + + + + + + Constructor for HelpProviderWithCache + + + + + _helpCache is a hashtable to stores helpInfo + + + This hashtable is made case-insensitive so that helpInfo can be retrieved case insensitively. + + + + + Exact match help for a target. + + Help request object + The HelpInfo found. Null if nothing is found + + + + This is for child class to indicate that it has implemented + a custom way of match. + + + + + + This is for implementing custom match algorithm. + + target to search + key used in cache table + + + + + Do exact match help for a target. + + + Derived class can choose to either override ExactMatchHelp method to DoExactMatchHelp method. + If ExactMatchHelp is overriden, initial cache checking will be disabled by default. + If DoExactMatchHelp is overriden, cache check will be done first in ExactMatchHelp before the + logic in DoExactMatchHelp is in place. + + help request object + + + + Search help for a target + + help request object + + If true, searches for pattern in the help content. Individual + provider can decide which content to search in. + + If false, seraches for pattern in the command names. + + a collection of help info objects + + + + Create a wildcard pattern based on a target. + + Here we provide the default implementation of this, covering following + two cases + a. if target has wildcard pattern, return as it is. + b. if target doesn't have wildcard pattern, postfix it with * + + Child class of this one may choose to override this function. + + target string + wild card pattern created + + + + Do search help. This is for child class to override. + + + Child class can choose to override SearchHelp of DoSearchHelp depending on + whether it want to reuse the logic in SearchHelp for this class. + + help request object + a collection of help info objects + + + + Add an help entry to cache. + + the key of the help entry + helpInfo object as the value of the help entry + + + + Get help entry from cache + + the key for the help entry to retrieve + the HelpInfo in cache corresponding the key specified + + + + Is cached fully loaded? + + If cache is fully loaded, search/exactmatch Help can short cut the logic + in various help providers to get help directly from cache. + + This indicator is usually set by help providers derived from this class. + + + + + + This will reset the help cache. Normally this corresponds to a + help culture change. + + + + + + Class MamlCommandHelpInfo keeps track of help information to be returned by + command help provider. + + + + + + Constructor for custom HelpInfo object construction + + This is used by the CommandHelpProvider class to generate the + default help UX when no help content is present. + + + + + + + Constructor for MamlCommandHelpInfo. This constructor will call the corresponding + constructor in CommandHelpInfo so that xmlNode will be converted a mamlNode. + + + This constructor is intentionally made private so that the only way to create + MamlCommandHelpInfo is through static function + Load(XmlNode node) + where some sanity check is done. + + + + + Override the FullHelp PSObject of this provider-specific HelpInfo with generic help. + + + + + Full help object for this help item. + + Full help object for this help item. + + + + Examples string of this cmdlet help info. + + + + + Parameters string of this cmdlet help info. + + + + + Notes string of this cmdlet help info. + + + + + Component for this command. + + + + + + Role for this command + + + + + + Functionality for this command + + + + + + Add user-defined command help data to command help. + + User defined data object + + + + Create a MamlCommandHelpInfo object from an XmlNode. + + xmlNode that contains help info + help category this maml object fits into + MamlCommandHelpInfo object created + + + + Extracts text for a given property from the full help object + + FullHelp object + + Name of the property for which text needs to be extracted. + + + + + + Given a PSObject, this method will traverse through the objects properties, + extracts content from properities that are of type System.String, appends them + together and returns. + + + + + + + Returns true if help content in help info matches the + pattern contained in . + The underlying code will usually run pattern.IsMatch() on + content it wants to search. + Cmdlet help info looks for pattern in Synopsis and + DetailedDescription + + + + + + + Class CommandHelpProvider implement the help provider for commands. + + + + Command Help information are stored in 'help.xml' files. Location of these files + can be found from through the engine execution context. + + + + + Constructor for CommandHelpProvider + + + + + + + + + + Name of this provider + + Name of this provider + + + + Help category for this provider, which is a constant: HelpCategory.Command. + + Help category for this provider + + + + ExactMatchHelp implementation for this help provider. + + + + ExactMatchHelp is overrided instead of DoExactMatchHelp to make sure + all help item retrival will go through command discovery. Because each + help file can contain multiple help items for different commands. Directly + retrieve help cache can result in a invalid command to contain valid + help item. Forcing each ExactMatchHelp to go through command discovery + will make sure helpInfo for invalid command will not be returned. + + help request object + + + + + This is a hashtable to track which help files are loaded already. + + This will avoid one help file getting loaded again and again. + (Which should not happen unless some commandlet is pointing + to a help file that actually doesn't contain the help for it). + + + + + + Finds a help file associated with the given cmdlet + + + + + + + Load help file for HelpInfo objects. The HelpInfo objects will be + put into help cache. + + + 1. Needs to pay special attention about error handling in this function. + Common errors include: file not found and invalid xml. None of these error + should cause help search to stop. + 2. a helpfile cache is used to avoid same file got loaded again and again. + + + + + Process user defined help data by finding the corresponding helpInfo and inserting + necessary helpdata info to command help. + + PSSnapIn Name for the current help file. + + + + + Gets the HelpInfo object corresponding to the command. + + help file identifier (either name of PSSnapIn or simply full path to help file) + Name of the command. + + HelpInfo object. + + + + Gets the HelpInfo object corresponding to the CommandInfo. + + help file identifier (simply full path to help file) + + HelpInfo object. + + + + Tries to get the help for the Cmdlet from cache. + + + + HelpInfo object representing help for the command. + + + + + Used to retrieve helpinfo by removing the prefix from the noun portion of a command name. + Import-Module and Import-PSSession supports changing the name of a command + by suppling a custom prefix. In those cases, the help content is stored by using the + original command name (without prefix) as the key. + + This method retrieves the help content by suppressing the prefix and then making a copy + of the help contnet + change the name and then returns the copied help content. + + + + + Copied help content or null if no help content is found. + + + + + Prepends mshsnapin id to the cmdlet name and adds the result to help cache. + + PSSnapIn name that this cmdlet belongs to. + Name of the cmdlet. + Help object for the cmdlet. + + + + Check whether a HelpItems node indicates that the help content is + authored using maml schema. + + This covers two cases: + a. If the help file has an extension .maml. + b. If HelpItems node (which should be the top node of any command help file) + has an attribute "schema" with value "maml", its content is in maml + schema + + + + + + + + + Search help for a specific target. + + help request object + + If true, searches for pattern in the help content of all cmdlets. + Otherwise, seraches for pattern in the cmdlet names. + + + + + + Check if a helpInfo object matches the component/role/functionality + criteria from helpRequest. + + + + + + + + + Checks whether matches any of the patterns + present in + + content to search in. + string patterns to look for. + + true if contains any of the patterns + present in + false otherwise. + + + + + Process helpInfo forwarded over from other other providers, specificly AliasHelpProvider. + This can return more than 1 helpinfo object. + + HelpInfo that is forwarded over + Help request object + The result helpInfo objects after processing + + + + This will reset the help cache. Normally this corresponds to a + help culture change. + + + + + Gets a command searcher used for ExactMatch help lookup. + + + + + + + + Gets a command searcher used for searching help. + + + + + + + + This is the class to track the user-defined Help Data which is separate from the + commandHelp itself. + + Legally, user-defined Help Data should be within the same file as the corresponding + commandHelp and it should appear after the commandHelp. + + + + + Stores help information related to Alias Commands. + + + + + Initializes a new instance of the AliasHelpInfo class. + + + + The constructor is private. The only way to create an + AliasHelpInfo object is through static method + + + + + Returns the name of alias help. + + Name of alias help. + + + + Returns synopsis of alias help. + + Synopsis of alias help. + + + + Help category for alias help. This is always HelpCategory.Alias + + Help category for alias help + + + + Returns full help object for alias help. + + Full help object of alias help. + + + + Creates an AliasHelpInfo instance based on an AliasInfo object. + This is the only way to create AliasHelpInfo object from outside this class. + + AliasInfo object for which to create AliasHelpInfo object. + AliasHelpInfo object. + + + + Implements the help provider for alias help. + + + + Unlike other help providers, AliasHelpProvider directly inherits from HelpProvider + instead of HelpProviderWithCache. This is because alias can be created/removed/updated + in a Microsoft Command Shell session. And thus caching may result in old alias being cached. + + The real information for alias is stored in command help. To retrieve the real + help information, help forwarding is needed. + + + + + Initializes a new instance of AliasHelpProvider class. + + + + + Session state for current Microsoft Command Shell session + + + _sessionState is mainly used for alias help search in the case + of wildcard search patterns. This is currently not achievable + through _commandDiscovery. + + + + + Command Discovery object for current session. + + + _commandDiscovery is mainly used for exact match help for alias. + The AliasInfo object returned from _commandDiscovery is essential + in creating AliasHelpInfo. + + + + + Name of alias help provider + + Name of alias help provider + + + + Help category of alias help provider, which is a constant: HelpCategory.Alias. + + Help category of alias help provider. + + + + Exact match an alias help target. + + + This will + a. use _commandDiscovery object to retrieve AliasInfo object. + b. Create AliasHelpInfo object based on AliasInfo object + + help request object + help info found + + + + Search an alias help target. + + + This will, + a. use _sessionState object to get a list of alias that match the target. + b. for each alias, retrive help info as in ExactMatchHelp. + + help request object + + If true, searches for pattern in the help content. Individual + provider can decide which content to search in. + + If false, seraches for pattern in the command names. + + a IEnumerable of helpinfo object + + + + + Class HelpFileHelpInfo keeps track of help information to be returned by + command help provider. + + + + + + Constructor for HelpFileHelpInfo + + + This is made private intentally so that the only way to create object of this type + is through + GetHelpInfo(string name, string text, string filename) + + help topic name + help text + file name that contains the help text + + + + Name for the help info + + Name for the help info + + + + Synopsis for the help info + + Synopsis for the help info + + + + Help category for the help info + + Help category for the help info + + + + Full help object for this help info + + Full help object for this help info + + + + Get help info based on name, text and filename + + help topic name + help text + file name that contains the help text + HelpFileHelpInfo object created based on information provided + + + + Get the text corresponding to a line in input text. + + text to get the line for + line number + the part of string in text that is in specified line + + + + + Class HelpFileHelpProvider implement the help provider for help.txt kinds of + help contents. + + Help File help information are stored in '.help.txt' files. These files are + located in the Monad / CustomShell Path as well as in the Application Base + of PSSnapIns + + + + + + Constructor for HelpProvider + + + + + Name of the provider + + Name of the provider + + + + Help category of the provider + + Help category of the provider + + + + Load help file based on the file path. + + file path to load help from + Help info object loaded from the file + + + + Gets the extended search paths for about_topics help. To be able to get about_topics help from unloaded modules, + we will add $pshome and the folders under PS module paths to the collection of paths to search. + + a collection of string representing locations + + + + This will reset the help cache. Normally this corresponds to a + help culture change. + + + + + This is a hashtable to track which help files are loaded already. + + This will avoid one help file getting loaded again and again. + + + + + + Class DefaultHelpProvider implement the help provider for commands. + + Command Help information are stored in 'help.xml' files. Location of these files + can be found from CommandDiscovery. + + + + + + Constructor for HelpProvider + + + + + + + + + + + + + + + + + + + help request object + + + + + + Class ProviderHelpInfo keeps track of help information to be returned by + command help provider. + + + + + + Constructor for HelpProvider + + + + + Name of the provider for which this provider help info is for. + + Name of the provider + + + + Synopsis in the provider help info + + Synopsis in the provider help info + + + + Detailed description in the provider help info + + Detailed description in the provider help info + + + + Help category for this provider help info, which is constantly HelpCategory.Provider + + Help category for this provider help info + + + + Full help object for this provider help info + + Full help object for this provider help info + + + + Returns true if help content in help info matches the + pattern contained in . + The underlying code will usually run pattern.IsMatch() on + content it wants to search. + Provider help info looks for pattern in Synopsis and + DetailedDescription + + + + + + + Create providerHelpInfo from an xmlNode + + xml node that contains the provider help info + the providerHelpInfo object created + + + + Class ProviderHelpProvider implement the help provider for commands. + + + Provider Help information are stored in 'help.xml' files. Location of these files + can be found from CommandDiscovery. + + + + + Constructor for HelpProvider + + + + + Name of this help provider. + + Name of this help provider. + + + + Help category of this provider. + + Help category of this provider + + + + Do exact match help based on the target. + + help request object + + + + This is a hashtable to track which help files are loaded already. + + This will avoid one help file getting loaded again and again. + (Which should not happen unless some provider is pointing + to a help file that actually doesn't contain the help for it). + + + + + + Load help file provided. + + + This will load providerHelpInfo from help file into help cache. + + providerInfo for which to locate help. + + + + Search for provider help based on a search target. + + help request object + + If true, searches for pattern in the help content. Individual + provider can decide which content to search in. + + If false, seraches for pattern in the command names. + + + + + + This will reset the help cache. Normally this corresponds to a + help culture change. + + + + + + MamlNode is an xml node in MAML schema. Maml schema includes formatting oriented tags like para, list + etc, which needs to be taken care of during display. As a result, xml node in Maml schema can't be + converted into PSObject directly with XmlNodeAdapter. + + MamlNode class provides logic in converting formatting tags into the format accetable by monad format + and output engine. + + Following three kinds of formating tags are supported per our agreement with Maml team, + 1. para, + + para text here + + 2. list, + + + + listItem Text here + + + + 3. definition list, + + + + definition term text here + + + + definition text here + + + + + + After processing, content of these three tags will be converted into textItem and its derivations, + 1. para => paraTextItem + + para text here + + 2. list => a list of listTextItem's (which can be ordered or unordered) + + * + text for list item 1 + + + * + text for list item 2 + + 3. definitionList => a list of defintionTextItem's + + definition term here + defintion text here + + + + + + + Constructor for HelpInfo + + + + + Underline xmlNode for this MamlNode object + + + + + + mshObject which is converted from XmlNode. + + + + + + Convert an xmlNode into an PSObject. There are four scenarios, + 1. Null xml, this will return an PSObject wrapping a null object. + 2. Atomic xml, which is an xmlNode with only one simple text child node + + atomic xml text + + In this case, an PSObject that wraps string "atomic xml text" will be returned with following properties + attribute => name + 3. Composite xml, which is an xmlNode with structured child nodes, but not a special case for Maml formating. + + + single child node text + + + dup child node text 1 + + + dup child node text 2 + + + In this case, an PSObject will base generated based on an inside PSObject, + which in turn has following properties + a. property "singleChildNode", with its value an PSObject wrapping string "single child node text" + b. property "dupChildNode", with its value an PSObject array wrapping strings for two dupChildNode's + The outside PSObject will have property, + a. property "attribute", with its value an PSObject wrapping string "attribute" + 4. Maml formatting xml, this is a special case for Composite xml, for example + + + para 1 + + + + + list item 1 + + + + + list item 2 + + + + + + + term 1 + + + definition list item 1 + + + + + term 2 + + + definition list item 2 + + + + + + In this case, an PSObject based on an PSObject array will be created. The inside PSObject array + will contain following items + . a MamlParaTextItem based on "para 1" + . a MamlUnorderedListItem based on "list item 1" + . a MamlUnorderedListItem based on "list item 2" + . a MamlDefinitionListItem based on "definition list item 1" + . a MamlDefinitionListItem based on "definition list item 2" + + The outside PSObject will have a property + attribute => "value" + + + + + + + + Get inside PSObject created based on inside nodes of xmlNode. + + The inside PSObject will be based on null. It will created one + property per inside node grouping by node names. + + For example, for xmlNode like, + + get-item + note 1 + note 2 + + It will create an PSObject based on null, with following two properties + . property 1: name="name" value=an PSObject to wrap string "get-item" + . property 2: name="note" value=an PSObject array with following two PSObjects + 1. PSObject wrapping string "note 1" + 2. PSObject wrapping string "note 2" + + + + + + + This is for getting inside properties of an XmlNode. Properties are + stored in a hashtable with key as property name and value as property value. + + Inside node with same node names will be grouped into one property with + property value as an array. + + For example, for xmlNode like, + + get-item + note 1 + note 2 + + It will create an PSObject based on null, with following two properties + . property 1: name="name" value=an PSObject to wrap string "get-item" + . property 2: name="note" value=an PSObject array with following two PSObjects + 1. PSObject wrapping string "note 1" + 2. PSObject wrapping string "note 2" + + Since we don't know whether an node name will be used more than once, + We are making each property value is an array (PSObject[]) to start with. + At the end, SimplifyProperties will be called to reduce PSObject[] containing + only one element to PSObject itself. + + + + + + + + Removes unsupported child nodes recursively from the given + xml node so that they wont spoil the format. + + + Node whose children are verified for maml. + + + + + This is for adding a property into a property hashtable. + + As mentioned in comment of GetInsideProperties, property values stored in + property hashtable is an array to begin with. + + The property value to be added is an mshObject whose base object can be an + PSObject array itself. In that case, each PSObject in the array will be + added separately into the property value array. This case can only happen when + an node with maml formatting node inside is treated. The side effect of this + is that the properties for outside mshObject will be lost. An example of this + is that, + + + + + + + + + + After the processing, PSObject corresponding to command will have an property + with name "description" and a value of an PSObject array created based on + maml formatting node inside "description" node. The attribute of description node + "attrib1" will be lost. This seems to be OK with current practice of authoring + monad command help. + + property hastable + property name + property value + + + + This is for simplifying property value array of only one element. + + As mentioned in comments for GetInsideProperties, this is needed + to reduce an array of only one PSObject into the PSObject itself. + + A side effect of this function is to turn property values from + ArrayList into PSObject[]. + + + + + + + An xmlNode is atomic if it contains no structured inside nodes. + + + + + + + Check whether an xmlNode contains childnodes which is for + maml formatting. + + + + + + + Check whether a node is for maml formatting. This include following nodes, + a. para + b. list + c. definitionList + + + + + + + Check whether an mshObject is created from a maml formatting node. + + + + + + + Convert an xmlNode containing maml formatting nodes into an PSObject array. + + For example, for node, + + + para 1 + + + + + list item 1 + + + + + list item 2 + + + + + + + term 1 + + + definition list item 1 + + + + + term 2 + + + definition list item 2 + + + + + + In this case, an PSObject based on an PSObject array will be created. The inside PSObject array + will contain following items + . a MamlParaTextItem based on "para 1" + . a MamlUnorderedListItem based on "list item 1" + . a MamlUnorderedListItem based on "list item 2" + . a MamlDefinitionListItem based on "definition list item 1" + . a MamlDefinitionListItem based on "definition list item 2" + + + + + + + Gets the number of para nodes + + + + + + + Write an error to helpsystem to indicate an invalid maml child node. + + + + + + + Write an error to help system to indicate an invalid child node count. + + + + + + + + Convert a para node into an mshObject. + + For example, + + para text + + In this case, an PSObject of type "MamlParaTextItem" will be created with following property + a. text="para text" + + + + + + + + + Convert a list node into an PSObject array. + + For example, + + + + text for list item 1 + + + + + text for list item 2 + + + + + In this case, an array of PSObject, each of type "MamlOrderedListText" will be created with following + two properties, + a. tag=" 1. " or " 2. " + b. text="text for list item 1" or "text for list item 2" + In the case of unordered list, similiar PSObject will created with type to be "MamlUnorderedListText" and tag="*" + + + + + + + + Check whether a list is ordered or not. + + + + + + + Convert an listItem node into an PSObject with property "tag" and "text" + + + + + + + + + Convert definitionList node into an array of PSObject, an for + each definitionListItem node inside this node. + + + + + + + Convert an definitionListItem node into an PSObject + + For example + + + term text + + + + definiton text + + + + In this case, an PSObject of type "definitionListText" will be created with following + properties + a. term="term text" + b. definition="definition text" + + + + + + + Get the text for definition. The will treat some intermediate nodes like "definition" and "para" + + + + + + + This is for getting preformatted text from an xml document. + + Normally in xml document, preformatted text will be indented by + a fix amount based on its position. The task of this function + is to remove that fixed amount from the text. + + For example, in xml, + + + void function() + { + // call some other function here; + } + + + we can find that the preformatted text are indented unanimously + by 4 spaces because of its position in xml. + + After massaging in this function, the result text will be, + + void function + { + // call some other function here; + } + + please notice that the indention is reduced. + + + + + + + Trim empty lines from the either end of an string array. + + lines to trim + an string array with empty lines trimed on either end + + + + Get mininum indentation of a paragraph + + + + + + + Get indetation of a line, i.e., number of spaces + at the beginning of the line. + + + + + + + Test whether a line is empty. + + A line is empty if it contains only white spaces. + + + + + + + This is for tracking the set of errors happened during the parsing of + maml text. + + + + + + + Class HelpProviderWithFullCache provides a pseudo implementation of HelpProvider + at which results are fully cached in a hashtable after initial cache load. + + This class is different from HelpProviderWithCache class in the sense that + help contents for this provider can be loaded once and be used for later + search. So logically class derived from this class only need to provide + a way to load and initialize help cache. + + + + + + Constructor for HelpProviderWithFullCache + + + + + Exact match help for a target. This function will be sealed right here + since this is no need for children class to override this member. + + help request object + The HelpInfo found. Null if nothing is found + + + + Do exact match help for a target. This member is sealed right here since + children class don't need to override this member. + + help request object + + + + Search help for a target. This function will be sealed right here + since this is no need for children class to override this member. + + help request object + + If true, searches for pattern in the help content. Individual + provider can decide which content to search in. + + If false, seraches for pattern in the command names. + + a collection of help info objects + + + + Do search help. This function will be sealed right here + since this is no need for children class to override this member. + + help request object + a collection of help info objects + + + + Load cache for later searching for help. + + + This is the only member child class need to override for help search purpose. + This function will be called only once (usually this happens at the first time when + end user request some help in the target help category). + + + + + Class FaqHelpProvider implement the help provider for faq's. + + + + Faq Help information are stored in 'faq.xml' files. These files are + located in the Monad / CustomShell Path as well as in the Application Base + of PSSnapIns + + + + + Constructor for FaqHelpProvider + + + + + Name of this provider + + Name of this provider + + + + Help category for this provider, which is a constant: HelpCategory.FAQ. + + Help category for this provider + + + + Load cache for faq help's + + + + + Load help file for HelpInfo objects. The HelpInfo objects will be + put into help cache. + + + 1. Needs to pay special attention about error handling in this function. + Common errors include: file not found and invalid xml. None of these error + should cause help search to stop. + + + + + + + + + + + + This will reset the help cache. Normally this corresponds to a + help culture change. + + + + + This is a hashtable to track which help files are loaded already. + + This will avoid one help file getting loaded again and again. + + + + + + Class FaqHelpInfo keeps track of help information to be returned by + faq help provider. + + + + + + Constructor for FaqHelpInfo + + + This constructor is can be called only from constructors of derived class + for FaqHelpInfo. The only way to to create a FaqHelpInfo is through + static function + Load(XmlNode node) + where some sanity check is done. + + + + + Name of faq. + + Name of faq + + + + Synopsis for this faq help. + + Synopsis for this faq help + + + + Help category for this faq help, which is constantly HelpCategory.FAQ. + + Help category for this faq help + + + + Full help object for this help item. + + Full help object for this help item. + + + + Returns true if help content in help info matches the + pattern contained in . + The underlying code will usually run pattern.IsMatch() on + content it wants to search. + FAQ help info looks for pattern in Synopsis and + Answers + + + + + + + Answers string of this FAQ help info. + + + + + Create a FaqHelpInfo object from an XmlNode. + + xmlNode that contains help info + FaqHelpInfo object created + + + + Class GlossaryHelpProvider implement the help provider for glossary's. + + + + Glossary Help information are stored in 'glossary.xml' files. These files are + located in the Monad / CustomShell Path as well as in the Application Base + of PSSnapIns + + + + + Constructor for GlossaryHelpProvider + + + + + Name of this provider + + Name of this provider + + + + Help category for this provider, which is a constant: HelpCategory.Command. + + Help category for this provider + + + + This is for implementing CustomMatch algorithm to be used in + HelpProviderWithCache for matching a help target with keys in + help cache. + + For each glossary entry, it can contain multiple terms. The + key stored in help cache is a concatenation of keys. For example, + if there are two terms "foo" and "bar", the key to be used in + help cache will be "foo, bar". + + Because of this mangling, key "foo, bar" should match both + "foo" and "bar". + + + target to search + key used in cache table + + + + + Load cache for glossary help's + + + + + Load help file for HelpInfo objects. The HelpInfo objects will be + put into help cache. + + + 1. Needs to pay special attention about error handling in this function. + Common errors include: file not found and invalid xml. None of these error + should cause help search to stop. + + + + + + + + + + + + This will reset the help cache. Normally this corresponds to a + help culture change. + + + + + This is a hashtable to track which help files are loaded already. + + This will avoid one help file getting loaded again and again. + + + + + + Class GlossaryHelpInfo keeps track of help information to be returned by + glossary help provider. + + + + + + Constructor for GlossaryHelpInfo + + + This constructor is can be called only from constructors of derived class + for GlossaryHelpInfo. The only way to to create a GlossaryHelpInfo is through + static function + Load(XmlNode node) + where some sanity check is done. + + + + + Name of glossary. + + Name of glossary + + + + Synopsis for this glossary help. + + Synopsis for this glossary help + + + + Help category for this glossary help, which is constantly HelpCategory.Glossary. + + Help category for this glossary help + + + + Full help object for this help item. + + Full help object for this help item. + + + + Create a GlossaryHelpInfo object from an XmlNode. + + xmlNode that contains help info + GlossaryHelpInfo object created + + + + Class GeneralHelpProvider implement the help provider for general help topics. + + + + General Help information are stored in 'concept.xml' files. These files are + located in the Monad / CustomShell Path as well as in the Application Base + of PSSnapIns + + + + + Constructor for GeneralHelpProvider + + + + + Name of this provider + + Name of this provider + + + + Help category for this provider, which is a constant: HelpCategory.Command. + + Help category for this provider + + + + Load cache for general help's + + + + + Load help file for HelpInfo objects. The HelpInfo objects will be + put into help cache. + + + 1. Needs to pay special attention about error handling in this function. + Common errors include: file not found and invalid xml. None of these error + should cause help search to stop. + + + + + + This will reset the help cache. Normally this corresponds to a + help culture change. + + + + + This is a hashtable to track which help files are loaded already. + + This will avoid one help file getting loaded again and again. + + + + + + Class GeneralHelpInfo keeps track of help information to be returned by + general help provider. + + + + + + Constructor for GeneralHelpInfo + + + This constructor is can be called only from constructors of derived class + for GeneralHelpInfo. The only way to to create a GeneralHelpInfo is through + static function + Load(XmlNode node) + where some sanity check is done. + + + + + Name of help content. + + Name of help content + + + + Synopsis for this general help. + + Synopsis for this general help + + + + Help category for this general help, which is constantly HelpCategory.General. + + Help category for general help + + + + Full help object for this help item. + + Full help object for this help item. + + + + Create a GeneralHelpInfo object from an XmlNode. + + xmlNode that contains help info + GeneralHelpInfo object created + + + + HelpErrorTracer is a class to help tracing errors happened during loading + help content for a help topic. + + This class tracks help context information like help topic, help category + and help file, which are usually not available when an error happens at + down level. + + Following is how this class can be used. + + using(HelpErrorTracer.Trace(helpTopic, helpCategory, helpFile)) + { + InsideFunctionCall(); + } + + At this moment, a TraceFrame instance, which is disposable, will be created. + + In inside function calls and the calls down on the call stack, error can + be traced by calling, + + HelpErrorTracer.TraceError(errorRecord) + + At this moment, the errorRecord will be temporarily stored with in TraceFrame instance. + + When the TraceFrame instance is disposed, all errorRecords stored will be + dumped into HelpSystem.LastErrors with context information attached. + + + + + + TraceFrame class track basic context information for current help activity. + + TraceFrame instance exists in a scope governed by using statement. It is possible + that a new TraceFrame instance will be created in the scope of another TraceFrame + instance. The scopes of various live TraceFrame instances form a stack which is + similiar to call stacks of normal C# functions. This is why we call this class + a "TraceFrame" + + TraceFrame itself implements IDisposable interface to guarrentee a chance to + write errors into system error pool when execution gets out of its scope. During + disposal time, errorRecords accumulated will be written to system error pool + together with error context information collected at instance creation. + + + + + Constructor. Here help context information will be collected. + + + + + + + This is a interface for code in trace frame scope to add errorRecord into + accumulative error pool. + + + + + + This is a interface for code in trace frame scope to add errorRecord's into + accumulative error pool. + + + + + + This is where we dump ErrorRecord's accumulated to help system error pool + together with some context information. + + + + + This tracks all live TraceFrame objects, which forms a stack. + + + + + This is the API to use for starting a help trace scope + + + + + + + This is the api function used for adding errorRecords to TraceFrame's error + pool. + + + + + + This is the api function used for adding errorRecords to TraceFrame's error + pool. + + + + + + Track whether help error tracer is turned on. + + + + + + Help request is a set of data to be passed into monad help engine for requesting help contents. + + Help request track information including + + 1. target + 2. category filter + 3. provider + 4. dynamic parameters + 5. components + 6. functionalities + 7. roles + + Upon getting a help request, help engine will validate the help request and send the request to + necessary help providers for processing. + + + + + Constructor for HelpRequest + + + + + + + Create a copy of current help request object. + + + + + + Defines which provider the user seeking help is curious about. + + + + + Target for help. + + + + + + Help category filter + + + + + + Provider for this help. + + If provider is set and helpCategory is 'Provider', provider help will be returned. (Also + the value of target will be set to this one). + + If provider is set and helpCategory is 'Command', this will add provider specific help + to provider. + + + + + + + Maximum number of result to return for this request. + + + + + + Component filter for command help. + + + + + + Role filter for command help. + + + + + + Functionality filter for command help. + + + + + + Keeps track of get-help cmdlet call origin. It can be called + directly by the user or indirectly by a script that a user calls. + + + + + Following validation will be done, (in order) + + 1. If everything is empty, do default help. + 2. If target is empty, set it to be provider if currently doing provider help only. Otherwise, set it to be * + 3. If any special parameters like component, role, functionality are specified, do command help only. + 4. If command help is requested, search for alias also. + 5. If help category is none, set it to be all. + 6. Don't do default help. + + + + + + Constructor. It is private so that MUIFileSearcher is used only internal for this class. + To access functionality in this class, static api should be used. + + + + + + + + A constructor to make searchMode optional. + + + + + + + Search target. It can be + 1. a file name + 2. a search pattern + It can also include a path, in that case, + 1. the path will be searched first for the existense of the files. + + + + + Search path as provided by user. + + + + + Search mode for this file search. + + + + + Result of the search. + + + + + _uniqueMatches is used to track matches already found during the search process. + This is useful for ignoring duplicates in the case of unique search. + + + + + search for files using the target, searchPaths member of this class. + + + + + Search for files of a particular pattern under a particular directory. + This will do MUI search in which appropriate language directories are + searched in order. + + + + + + + A help file is located in 3 steps + 1. If file itself contains a path itself, try to locate the file + from path. LocateFile will fail if this file doesn't exist. + 2. Try to locate the file from searchPaths. Normally the searchPaths will + contain the cmdlet/provider assembly directory if currently we are searching + help for cmdlet and providers. + 3. Try to locate the file in the default PowerShell installation directory. + + + + + + + + Helper method which returns the default monad installation path based on ShellID + registry key. + + string representing path. + + If ShellID is not defined or Path property is not defined returns null. + + + + + Search for files in default search paths. + + + + + + + Search for files in specified search paths. + + + + + + + + Locate a file in default search paths + + + + + + + Get the file in different search paths corresponding to current culture. + + The file name to search is the filename part of path parameter. (Normally path + parameter should contain only the filename part. But it is possible for + RunspaceConfiguration to directly specify a hard coded path for help file there). + + + This is the path to the file. If it has a path, we need to search under that path first + Additional search paths + + + + + This enum defines different search mode for the MUIFileSearcher + + + + + Parses help comments and turns them into HelpInfo objects + + + + + Create the maml xml after a successful analysis of the comments. + + The xml node for the command constructed + + + + Split the text in the comment token into multiple lines, appending commentLines. + + A single line or multiline comment token + + + + + Collect the text of a section. Stop collecting the section + when a new directive is found (even if it is an unknown directive). + + The comment block, as a list of lines. + + The text of the help section, with 'i' left on the last line collected. + + + + Look for special comments indicating the comment block is meant + to be used for help. + + The list of comments to process + True if any special comments are found, false otherwise. + + + + The analysis of the comments finds the component, functionality, and role fields, but + those fields aren't added to the xml because they aren't children of the command xml + node, they are under a sibling of the command xml node and apply to all command nodes + in a maml file. + + The helpInfo object to set the fields on. + + + + Analyze a block of comments to determine if it is a special help block. + + The block of comments to analyze. + true if the block is our special comment block for help, false otherwise. + + + + Class BaseCommandHelpInfo provides common functionality for + extracting information from FullHelp property. + + + + + Name of command. + + Name of command + + + + Synopsis for this command help. + + Synopsis for this command help + + + + Help category for this command help, which is constantly HelpCategory.Command. + + Help category for this command help + + + + Returns the Uri used by get-help cmdlet to show help + online. Returns only the first uri found under + RelatedLinks. + + + Null if no Uri is specified by the helpinfo or a + valid Uri. + + + Specified Uri is not valid. + + + + + Returns true if help content in help info matches the + pattern contained in . + The underlying code will usually run pattern.IsMatch() on + content it wants to search. + Cmdlet help info looks for pattern in Synopsis and + DetailedDescription + + + + + + + Returs help information for a parameter(s) identified by pattern + + pattern to search for parameters + A collection of parameters that match pattern + + + + Detailed Description string of this cmdlet help info. + + + + + + Class MamlCommandHelpInfo keeps track of help information to be returned by + command help provider. + + + + + + Class ScriptCommandHelpProvider implement the help provider for Functions/ExternalScripts. + This class does the same thing as CommandHelpProvider except for decision making: whether + a particular command is Function/Script or not. + + + Command Help information are stored in 'help.xml' files. Location of these files + can be found from through the engine execution context. + + + + + Constructor for CommandHelpProvider + + + + + Help category for this provider, which is a constant: HelpCategory.Command. + + Help category for this provider + + + + Gets a command searcher used for ExactMatch help lookup. + + + + + + + + Gets a command searcher used for searching help. + + + + + + + + + Class HelpFileHelpInfo keeps track of help information to be returned by + command help provider. + + + + + + Constructor for SyntaxHelpInfo + + + + + Name for the help info + + Name for the help info + + + + Synopsis for the help info + + Synopsis for the help info + + + + Full help object for this help info + + Full help object for this help info + + + + Get help info based on name, text and filename + + help topic name + help text + help category + SyntaxHelpInfo object created based on information provided + + + + Positional parameter comparer + + + + + + + + + + + + + The help object builder class attempts to create a full HelpInfo object from + a CmdletInfo object. This is used to generate the default UX when no help content + is present in the box. This class mimics the exact same structure as that of a MAML + node, so that the default UX does not introduce regressions. + + + + + Generates a HelpInfo PSObject from a CmdletInfo object + + command info + HelpInfo PSObject + + + + Adds the details properties + + HelpInfo object + command name + command noun + command verb + type name for help + synopsis + + + + Adds the syntax properties + + HelpInfo object + command name + parameter sets + common parameters + common workflow parameters + type name for help + + + + Add the syntax item properties + + HelpInfo object + cmdlet name, you can't get this from parameterSets + a collection of parameter sets + common parameters + common workflow parameters + type name for help + + + + Add the syntax parameters properties (these parameters are used to create the syntax section) + + HelpInfo object + + a collection of parameters in display order + ie., Postional followed by + Named Mandatory (in alpha numeric) followed by + Named (in alpha numeric) + + common parameters + common workflow + Name of the parameter set for which the syntax is generated + + + + Adds a parameter value group (for enums) + + object + parameter group values + + + + Add the parameters properties (these parameters are used to create the parameters section) + + HelpInfo object + parameters + common parameters + common workflow parameters + type name for help + + + + Adds the parameter properties + + HelpInfo object + parameter name + parameter aliases + is dynamic parameter? + parameter type + parameter attributes + Name of the parameter set for which the syntax is generated + + + + Adds the parameterType properties + + HelpInfo object + the type of a parameter + the attributes of the parameter (needed to look for PSTypeName) + + + + Adds the parameterValue properties + + HelpInfo object + the type of a parameter + the attributes of the parameter (needed to look for PSTypeName) + + + + Adds the InputTypes properties + + HelpInfo object + command parameters + + + + Adds the OutputTypes properties + + HelpInfo object + output types + + + + Adds the aliases properties + + HelpInfo object + command name + execution context + + + + Adds the remarks properties + + HelpInfo object + + + + + + Adds the related links properties + + + + + + + Gets the parameter attribute from parameter metadata + + parameter attributes + parameter attributes + + + + Gets the validate set attribute from parameter metadata + + parameter attributes + parameter attributes + + + + Gets the pipeline input type + + parameter attribute + pipeline input type + + + + Checks if a set of parameters contains any of the common parameters + + parameters to check + true if it contains common parameters, false otherwise + + + + Checks if a parameter is a common workflow parameter + + parameter name + true if it is a common parameter, false if not + + + + Checks if the module contains HelpInfoUri + + + + + + + + Represents each supported culture + + + + + Class constructor + + culture info + version info + + + + Culture version + + + + + Supported culture + + + + + This class represents the HelpInfo metadata XML + + + + + Class constructor + + unresolved help content URI + supported UI cultures + + + + Unresolved URI + + + + + Link to the actual help content + + + + + Supported UI cultures + + + + + Checks if the other HelpInfo has a newer version + + HelpInfo object to check + culture to check + true if the other HelpInfo is newer, false if not + + + + Checks if a culture is supported + + culture to check + true if supported, false if not + + + + Gets a string representation of the supported cultures + + supported cultures in string + + + + Gets the culture version + + culture info + culture version + + + + Updatable help system internal representation of the PSModuleInfo class + + + + + Class constructor + + module name + module GUID + module path + HelpInfo URI + + + + Module name + + + + + Module GUID + + + + + Module path + + + + + HelpInfo URI + + + + + Gets the combined HelpContent.zip name + + current culture + HelpContent name + + + + Gets the combined HelpInfo.xml name + + HelpInfo name + + + + Updatable help system exception + + + + + Class constructor + + FullyQualifiedErrorId + exception message + category + target object + inner exception + + + + Class constructor + + serialization info + streaming context + + + + Fully qualified error id + + + + + Error category + + + + + Target object + + + + + Exception context + + + + + Class constructor + + exception to wrap + + + + A list of modules + + + + + A list of UI cultures + + + + + Gets the help system exception + + + + + Creates an error record from this context + + command type + error record + + + + Gets the exception message + + + + + + + Enumeration showing Update or Save help + + + + + Progress event arguments + + + + + Class constructor + + module name + progress status + progress percentage + + + + Class constructor + + module name + command type + progress status + progress percentage + + + + Progress status + + + + + Progress percentage + + + + + Module name + + + + + Command type + + + + + This class implements the Updatable Help System common operations + + + + + Class constructor + + + + + Disposes the help system + + + + + Help system errors + + + + + Gets the current UIculture (includes the fallback chain) + + a list of cultures + + + + Gets an internal help URI + + internal module information + help content culture + internal help uri representation + + + + Gets the HelpInfo xml from the given URI + + command type + HelpInfo URI + module name + module GUID + current UI culture + HelpInfo object + + + + Sends a standard HTTP request to get the resolved URI (potential FwLinks) + + base URI + + resolved URI + + + + HelpInfo.xml schema + + + + + Creates a HelpInfo object + + XML text + module name + module GUID + current UI cultures + overrides the path contained within HelpInfo.xml + + + Resolve the uri retrieved from the content. The uri is resolved + to handle redirections if any. + + ignore the xsd validation exception and return null in such case + HelpInfo object + + + + Creates a valid xml document + + input xml + schema namespace + xml schema + validation event handler + HelpInfo or HelpContent? + + + + Handles HelpInfo XML validation events + + event sender + event arguments + + + + Handles Help content MAML validation events + + event sender + event arguments + + + + Cancels all asynchronous download operations + + + + + Downloads and installs help content + + command type + execution context + destination paths + file names + culture to update + help content uri + path of the maml XSDs + files installed + true if the operation succeeded, false if not + + + + Downloads the help cotent + + command type + destination path + help content uri + combined file name + culture name + true if the operation succeeded, false if not + + + + Downloads help content and saves it in the specified file. + + + + + + + + + + Installs HelpInfo.xml + + + + culture updated + version updated + help content uri + destination name + combined file name + forces the file to copy + + + + Removes the read only attribute + + + + + + Installs (unzips) the help content + + command type + execution context + source directory + destination paths + help content file name + temporary path + current culture + path of the maml XSDs + files installed + + Directory pointed by (if any) will be deleted. + + + + + Unzips to help content to a given location + + execution context + source path + destination path + Is set to false if we find a single file placeholder.txt in cab. This means we no longer need to install help files + + + + Validates all XML files within a given path + + path containing files to validate + destination paths + culture name + path of the maml XSDs + installed files + + + + Loads string from the given path + + cmdlet instance + path to load + credential + string loaded + + + + Gets the default source path from GP + + + + + + Sets the DisablePromptToUpdatableHelp regkey + + + + + Checks if it is necessary to prompt to update help + + + + + + Handles the download completion event + + event sender + event arguments + + + + Handles the download progress changed event + + event sender + event arguments + + + + Controls the updatable help system drive + + + + + Gets the drive name + + + + + + + + + + + + + Disposes the class + + + + + This class represents a help system URI + + + + + Class constructor + + module name + module guid + UI culture + resolved URI + + + + Module name + + + + + Module GUID + + + + + UI Culture + + + + + Resolved URI + + + + + Constructor for DscResourceHelpProvider + + + + + Execution context of the HelpSystem + + + + + This is a hashtable to track which help files are loaded already. + + This will avoid one help file getting loaded again and again. + + + + + + Name of the Help Provider. + + + + + Supported Help Categories + + + + + Override SearchHelp to find a dsc resource help matching a pattern. + + Help request. + Not used. + + + + + Override ExactMatchHelp to find the matching DscResource matching help request. + + Help Request for the search. + Enumerable of HelpInfo objects. + + + + Get the help in for the DscResource Info. /// + + Searcher for DscResources. + Next HelpInfo object. + + + + Check whether a HelpItems node indicates that the help content is + authored using maml schema. + + This covers two cases: + a. If the help file has an extension .maml. + b. If HelpItems node (which should be the top node of any command help file) + has an attribute "schema" with value "maml", its content is in maml + schema + + + File name. + Nodes to check. + + + + + Gets the HelpInfo object corresponding to the command. + + help file identifier (either name of PSSnapIn or simply full path to help file) + Help Category for search. + HelpInfo object. + + + + Load help file for HelpInfo objects. The HelpInfo objects will be + put into help cache. + + + 1. Needs to pay special attention about error handling in this function. + Common errors include: file not found and invalid xml. None of these error + should cause help search to stop. + 2. a helpfile cache is used to avoid same file got loaded again and again. + + + + + Constructor for PSClassHelpProvider + + + + + Execution context of the HelpSystem + + + + + This is a hashtable to track which help files are loaded already. + + This will avoid one help file getting loaded again and again. + + + + + + Name of the Help Provider. + + + + + Supported Help Categories + + + + + Override SearchHelp to find a class module with help matching a pattern. + + Help request. + Not used. + + + + + Override ExactMatchHelp to find the matching class module matching help request. + + Help Request for the search. + Enumerable of HelpInfo objects. + + + + Get the help in for the PS Class Info. /// + + Searcher for PS Classses. + Next HelpInfo object. + + + + Check whether a HelpItems node indicates that the help content is + authored using maml schema. + + This covers two cases: + a. If the help file has an extension .maml. + b. If HelpItems node (which should be the top node of any command help file) + has an attribute "schema" with value "maml", its content is in maml + schema + + + File name. + Nodes to check. + + + + + Gets the HelpInfo object corresponding to the command. + + help file identifier (either name of PSSnapIn or simply full path to help file) + Help Category for search. + HelpInfo object. + + + + Load help file for HelpInfo objects. The HelpInfo objects will be + put into help cache. + + + 1. Needs to pay special attention about error handling in this function. + Common errors include: file not found and invalid xml. None of these error + should cause help search to stop. + 2. a helpfile cache is used to avoid same file got loaded again and again. + + + + + + Class MamlClassHelpInfo keeps track of help information to be returned by + class help provider. + + + + + + Constructor for custom HelpInfo object creation. + + + + + + + Convert a XMLNode to HelpInfo object. + + + + + + + HelpCategory of the Help object. + + + + + PSObject representation on help. + + + + + Create a MamlClassHelpInfo object from an XmlNode. + + xmlNode that contains help info + help category this maml object fits into + MamlCommandHelpInfo object created + + + + Clone the help info object. + + MamlClassHelpInfo object. + + + + Clone the help object with a new category. + + + MamlClassHelpInfo + + + + + Provides a description of a choice for use by . + + + + + + + + Initializes an new instance of ChoiceDescription and defines the Label value. + + + + + The label to identify this field description + + + + + is null or empty. + + + + + + + Initializes an new instance of ChoiceDescription and defines the Label and HelpMessage values. + + + + + The label to identify this field description. + + + + + The help message for this field. + + + + + is null or empty. + + + + + is null. + + + + + + Added to enable ClrFacade.GetUninitializedObject to instantiate an uninitialized version of this class. + + + + + + Gets a short, human-presentable message to describe and identify the choice. Think Button label. + + + + + Note that the special character & (ampersand) may be embedded in the label string to identify the next character in the label + as a "hot key" (aka "keyboard accelerator") that the Console.PromptForChoice implementation may use to allow the user to + quickly set input focus to this choice. The implementation of + is responsible for parsing the label string for this special character and rendering it accordingly. + + For examples, a choice named "Yes to All" might have "Yes to &All" as it's label. + + + + + + + Gets and sets the help message for this field. + + + + + Set to null. + + + + + This should be a few sentences to describe the field, suitable for presentation as a tool tip. + Avoid placing including formatting characters such as newline and tab. + + + + + + + Provides a description of a field for use by . + + + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + + Initializes a new instance of FieldDescription and defines the Name value. + + + + + The name to identify this field description + + + + + is null or empty. + + + + + + Added to enable ClrFacade.GetUninitializedObject to instantiate an uninitialized version of this class. + + + + + + Gets the name of the field. + + + + + + + Sets the ParameterTypeName, ParameterTypeFullName, and ParameterAssemblyFullName as a single operation. + + + + + The Type that sets the properties. + + + + + If is null. + + + + + + + Gets the short name of the parameter's type. + + + + + The type name of the parameter + + + + + If not already set by a call to , + will be used as the type. + + + + + + + + Gets the full string name of the parameter's type. + + + + + If not already set by a call to , + will be used as the type. + + + + + + + + Gets the full name of the assembly containing the type identified by ParameterTypeFullName or ParameterTypeName + + + + + If the assembly is not currently loaded in the hosting application's AppDomain, the hosting application needs + to load the containing assembly to access the type information. AssemblyName is used for this purpose. + + If not already set by a call to , + will be used as the type. + + + + + + + A short, human-presentable message to describe and identify the field. If supplied, a typical implementation of + will use this value instead of + the field name to identify the field to the user. + + + + + set to null. + + + + + Note that the special character & (ampersand) may be embedded in the label string to identify the next + character in the label as a "hot key" (aka "keyboard accelerator") that the + implementation may use + to allow the user to quickly set input focus to this field. The implementation of + is responsible for parsing + the label string for this special character and rendering it accordingly. + + For example, a field named "SSN" might have "&Social Security Number" as it's label. + + If no label is set, then the empty string is returned. + + + + + + + Gets and sets the help message for this field. + + + + + Set to null. + + + + + This should be a few sentences to describe the field, suitable for presentation as a tool tip. + Avoid placing including formatting characters such as newline and tab. + + + + + + + Gets and sets whether a value must be supplied for this field + + + + + + + Gets and sets the default value, if any, for the implementation of + to pre-populate its UI with. This is a PSObject instance so that the value can be serialized, converted, + manipulated like any pipeline object. + + + + + It is up to the implementer of to decide if it + can make use of the object in its presentation of the fields prompt. + + + + + + + Gets the Attribute classes that apply to the field. In the case that + is being called from the MSH engine, this will contain the set of prompting attributes that are attached to a + cmdlet parameter declaration. + + + + + + + For use by remoting serialization. + + + + + + If is null. + + + + + + + For use by remoting serialization. + + + + + + If is null. + + + + + + + For use by remoting serialization. + + + + + + If is null. + + + + + + Indicates if this field description was + modified by the remoting protocol layer + + Used by the console host to + determine if this field description was + modified by the remoting protocol layer + and take appropriate actions + + + + Indicates if this field description + is coming from a remote host + + Used by the console host to + not cast strings to an arbitrary type, + but let the server-side do the type conversion + + + + + + Defines the properties and facilities providing by an application hosting an MSH . + + + + + A hosting application derives from this class and + overrides the abstract methods and properties. The hosting application creates an instance of its derived class and + passes it to the CreateRunspace method. + + From the moment that the instance of the derived class (the "host class") is passed to CreateRunspace, the MSH runtime + can call any of the methods of that class. The instance must not be destroyed until after the Runspace is closed. + + There is a 1:1 relationship between the instance of the host class and the Runspace instance to which it is passed. In + other words, it is not legal to pass the same instance of the host class to more than one call to CreateRunspace. (It + is perfectly legal to call CreateRunspace more than once, as long as each call is supplied a unique instance of the host + class.) + + Methods of the host class can be called by the Runspace or any cmdlet or script executed in that Runspace in any order + and from any thread. It is the responsibility of the hosting application to define the host class methods in a + threadsafe fashion. An implementation of the host class should not depend on method execution order. + + The instance of the host class that is passed to a Runspace is exposed by the Runspace to the cmdlets, scripts, and + providers that are executed in that Runspace. Scripts access the host class via the $Host built-in variable. Cmdlets + access the host via the Host property of the Cmdlet base class. + + + + + + + + + The powershell.exe spec states that 128 is the maximum nesting depth. + + + + + + Protected constructor which does nothing. Provided per .Net design guidelines section 4.3.1 + + + + + + + Gets the hosting application's identification in some user-friendly fashion. This name can be referenced by scripts and cmdlets + to identify the host that is executing them. The format of the value is not defined, but a short, simple string is + recommended. + + + + In implementing this member, you should return some sort of informative string describing the nature + your hosting application. For the default console host shipped by Microsoft this is ConsoleHost. + + + + The name identifier of the hosting application. + + + + + if ($Host.Name -ieq "ConsoleHost") { write-host "I'm running in the Console Host" } + + + + + + + Gets the version of the hosting application. This value should remain invariant for a particular build of the + host. This value may be referenced by scripts and cmdlets. + + + + When implementing this member, it should return the product version number for the product + that is hosting the Monad engine. + + + + The version number of the hosting application. + + + + + + + Gets a GUID that uniquely identifies this instance of the host. The value should remain invariant for the lifetime of + this instance. + + + + + + + Gets the hosting application's implementation of the + abstract base class. A host + that does not want to support user interaction should return null. + + + + + A reference to an instance of the hosting application's implementation of a class derived from + , or null to indicate that user + interaction is not supported. + + + + The implementation of this routine should return an instance of the appropriate + implementation of PSHostUserInterface for this application. As an alternative, + for simple scenarios, just returning null is sufficient. + + + + + + Gets the host's culture: the culture that the runspace should use to set the CurrentCulture on new threads + + + + + A CultureInfo object representing the host's current culture. Returning null is not allowed. + + + + + The runspace will set the thread current culture to this value each time it starts a pipeline. Thus, cmdlets are + encouraged to use Thread.CurrentThread.CurrentCulture. + + + + + + + Gets the host's UI culture: the culture that the runspace and cmdlets should use to do resource loading. + + The runspace will set the thread current ui culture to this value each time it starts a pipeline. + + + + + A CultureInfo object representing the host's current UI culture. Returning null is not allowed. + + + + + + + Request by the engine to end the current engine runspace (to shut down and terminate the host's root runspace). + + + + + This method is called by the engine to request the host shutdown the engine. This is invoked by the exit keyword + or by any other facility by which a runspace instance wishes to be shut down. + + To honor this request, the host should stop accepting and submitting commands to the engine and close the runspace. + + + + + The exit code accompanying the exit keyword. Typically, after exiting a runspace, a host will also terminate. The + exitCode parameter can be used to set the host's process exit code. + + + + + + + Instructs the host to interrupt the currently running pipeline and start a new, "nested" input loop, where an input + loop is the cycle of prompt, input, execute. + + + + + Typically called by the engine in response to some user action that suspends the currently executing pipeline, such + as choosing the "suspend" option of a ConfirmProcessing call. Before calling this method, the engine should set + various shell variables to the express the state of the interrupted input loop (current pipeline, current object in + pipeline, depth of nested input loops, etc.) + + A non-interactive host may throw a "not implemented" exception here. + + If the UI property returns null, the engine should not call this method. + + + + + + + + + + + Causes the host to end the currently running input loop. If the input loop was created by a prior call to + EnterNestedPrompt, the enclosing pipeline will be resumed. If the current input loop is the top-most loop, then the + host will act as though SetShouldExit was called. + + + + + Typicalled called by the engine in response to some user action that resumes a suspended pipeline, such as with the + 'continue-command' intrinsic cmdlet. Before calling this method, the engine should clear out the loop-specific + variables that were set when the loop was created. + + If the UI Property returns a null, the engine should not call this method. + + + + + + + + Used to allow the host to pass private data through a Runspace to cmdlets running inside that Runspace's + runspace. The type and nature of that data is entirely defined by the host, but there are some caveats: + + + + + + The default implementation returns null. + + + + + If the host is using an out-of-process Runspace, then the value of this property is serialized when crossing + that process boundary in the same fashion as any object in a pipeline is serialized when crossing process boundaries. + In this case, the BaseObject property of the value will be null. + + If the host is using an in-process Runspace, then the BaseObject property can be a non-null value a live object. + No guarantees are made as to the app domain or thread that the BaseObject is accessed if it is accessed in the + runspace. No guarantees of threadsafety or re-entrancy are made. The object set in the BaseObject property of + the value returned by this method is responsible for ensuring its own threadsafety and re-entrance safety. + Note that thread(s) accessing that object may not necessarily be the same from one access to the next. + + The return value should have value-semantics: that is, changes to the state of the instance returned are not + reflected across processes. Ex: if a cmdlet reads this property, then changes the state of the result, that + change will not be visible to the host if the host is in another process. Therefore, the implementation of + get for this property should always return a unique instance. + + + + + + + Called by the engine to notify the host that it is about to execute a "legacy" command line application. A legacy + application is defined as a console-mode executable that may do one or more of the following: + . reads from stdin + . writes to stdout + . writes to stderr + . uses any of the win32 console APIs + + + + + Notifying the host allows the host to do such things as save off any state that might need to be restored when the + legacy application terminates, set or remove break handler hooks, redirect stream handles, and so forth. + + The engine will always call this method and the NotifyEndApplication method in matching pairs. + + The engine may call this method several times in the course of a single pipeline. For instance, the pipeline: + + foo.exe | bar-cmdlet | baz.exe + + Will result in a sequence of calls similar to the following: + NotifyBeginApplication - called once when foo.exe is started + NotifyBeginApplication - called once when baz.exe is started + NotifyEndApplication - called once when baz.exe terminates + NotifyEndApplication - called once when foo.exe terminates + + Note that the order in which the NotifyEndApplication call follows the corresponding call to NotifyBeginApplication + with respect to any other call to NotifyBeginApplication is not defined, and should not be depended upon. In other + words, NotifyBeginApplication may be called several times before NotifyEndApplication is called. The only thing + that is guaranteed is that there will be an equal number of calls to NotifyEndApplication as to + NotifyBeginApplication. + + + + + + + + Called by the engine to notify the host that the execution of a legacy command has completed. + + + + + + + Used by hosting applications to notify PowerShell engine that it is + being hosted in a console based application and the Pipeline execution + thread should call SetThreadUILanguage(0). This propery is currently + used by ConsoleHost only and in future releases we may consider + exposing this publicly. + + + + + This property enables and disables the host debugger if debugging is supported. + + + + + This interface needs to be implemented by PSHost objects that want to support the PushRunspace + and PopRunspace functionality. + + + + + Called by the engine to notify the host that a runspace push has been requested. + + + + + + Called by the engine to notify the host that a runspace pop has been requested. + + + + + + True if a runspace is pushed; false otherwise. + + + + + Returns the current runspace associated with this host. + + + + + + Represents an (x,y) coordinate pair + + + + + + + Gets and sets the X coordinate + + + + + + + Gets and sets the Y coordinate + + + + + + + Initializes a new instance of the Coordinates class and defines the X and Y values. + + + + + The X coordinate + + + + + The Y coordinate + + + + + + + Overrides + + + + + "a,b" where a and b are the values of the X and Y properties. + + + + + + + Overrides + + + + + object to be compared for equality. + + + + + True if is Coordinates and its X and Y values are the same as those of this instance, + false if not. + + + + + + + Overrides + + + + + Hash code for this instance. + + + + + + + Compares two instances for equality + + + + + The left side operand. + + + + + The right side operand. + + + + + true if the respective X and Y values are the same, false otherwise. + + + + + + + Compares two instances for inequality + + + + + The left side operand. + + + + + The right side operand. + + + + + true if any of the respective either X or Y field is not the same, false otherwise. + + + + + + + Represents a width and height pair + + + + + + + Gets and sets the Width + + + + + + + Gets and sets the Height + + + + + + + Initialize a new instance of the Size class and defines the Width and Height values. + + + + + The Width + + + + + The Height + + + + + + + Overloads + + + + + "a,b" where a and b are the values of the Width and Height properties. + + + + + + + Overrides + + + + + object to be compared for equality. + + + + + True if is Size and its Width and Height values are the same as those of this instance, + false if not. + + + + + + + Overrides + + + + + Hash code for this instance. + + + + + + + + Compares two instances for equality + + + + + The left side operand. + + + + + The right side operand. + + + + + true if the respective Width and Height fields are the same, false otherwise. + + + + + + + Compares two instances for inequality + + + + + The left side operand. + + + + + The right side operand. + + + + + true if any of the respective Width and Height fields are not the same, false otherwise. + + + + + + + Governs the behavior of + and + + + + + + + Allow Ctrl-C to be processed as a keystroke, as opposed to causing a break event. + + + + + + + Do not display the character for the key in the window when pressed. + + + + + + + Include key down events. Either one of IncludeKeyDown and IncludeKeyUp or both must be specified. + + + + + + + Include key up events. Either one of IncludeKeyDown and IncludeKeyUp or both must be specified. + + + + + + + Defines the states of Control Key + + + + + + The right alt key is pressed. + + + + + The left alt key is pressed. + + + + + The right ctrl key is pressed. + + + + + The left ctrl key is pressed. + + + + + The shift key is pressed. + + + + + The numlock light is on. + + + + + The scrolllock light is on. + + + + + The capslock light is on. + + + + + The key is enhanced. + + + + + + Represents information of a keystroke + + + + + + + Gets and set device-independent key + + + + + + Gets and set unicode Character of the key + + + + + State of the control keys. + + + + + Gets and set the status of whether this instance is generated by a key pressed or released + + + + + + Initialize a new instance of the KeyInfo class and defines the VirtualKeyCode, + Character, ControlKeyState and KeyDown values. + + + + + The virtual key code + + + + + The character + + + + + The control key state + + + + + Whether the key is pressed or released + + + + + + + Overloads + + + + + "a,b,c,d" where a, b, c, and d are the values of the VirtualKeyCode, Character, ControlKeyState, and KeyDown properties. + + + + + + + Overrides + + + + + object to be compared for equality. + + + + + True if is KeyInfo and its VirtualKeyCode, Character, ControlKeyState, and KeyDown values are the + same as those of this instance, false if not. + + + + + + + Overrides + + + + + Hash code for this instance. + + + + + + + + Compares two instances for equality + + + + + The left side operand. + + + + + The right side operand. + + + + + true if the respective Character, ControlKeyStates , KeyDown, and VirtualKeyCode fields + are the same, false otherwise. + + + + + + + + Compares two instances for inequality + + + + + The left side operand. + + + + + The right side operand. + + + + + true if any of the respective Character, ControlKeyStates , KeyDown, or VirtualKeyCode fields + are the different, false otherwise. + + + + + + + + Represents a rectangular region of the screen. + + + + + + + + + Gets and sets the left side of the rectangle + + + + + + + Gets and sets the top of the rectangle + + + + + + + Gets and sets the right side of the rectangle + + + + + + + Gets and sets the bottom of the rectanngle + + + + + + + Initialize a new instance of the Rectangle class and defines the Left, Top, Right, and Bottom values. + + + + + The left side of the rectangle + + + + + The top of the rectangle + + + + + The right side of the rectangle + + + + + The bottom of the rectanngle + + + + + is less than ; + is less than + + + + + + + Initializes a new instance of the Rectangle class and defines the Left, Top, Right, and Bottom values + by , the upper left corner and , the lower + right corner. + + + + + + The Coordinates of the upper left corner of the Rectangle + + + + + The Coordinates of the lower right corner of the Rectangle + + + + + + + + Overloads + + + + + "a,b ; c,d" where a, b, c, and d are values of the Left, Top, Right, and Bottom properties. + + + + + + + Overrides + + + + + object to be compared for equality. + + + + + True if is Rectangle and its Left, Top, Right, and Bottom values are the same as those of this instance, + false if not. + + + + + + + Overrides + + + + + Hash code for this instance. + + + + + + + + + Compares two instances for equality + + + + + The left side operand. + + + + + The right side operand. + + + + + true if the respective Top, Left, Bottom, and Right fields are the same, false otherwise. + + + + + + + Compares two instances for inequality + + + + + The left side operand. + + + + + The right side operand. + + + + + true if any of the respective Top, Left, Bottom, and Right fields are not the same, false otherwise. + + + + + + + + Represents a character, a foregroundColor color, and background color + + + + + + + Gets and sets the character value + + + + + + + Gets and sets the foreground color + + + + + + + Gets and sets the background color + + + + + + + Gets and sets the type value + + + + + + + Initializes a new instance of the BufferCell class and defines the + Character, ForegroundColor, BackgroundColor and Type values. + + + + + The character in this BufferCell object + + + + + The foreground color of this BufferCell object + + + + + The foreground color of this BufferCell object + + + + + The type of this BufferCell object + + + + + + + Overloads + + + + + "'a' b c d" where a, b, c, and d are the values of the Character, ForegroundColor, BackgroundColor, and Type properties. + + + + + + + Overrides + + + + + object to be compared for equality. + + + + + True if is BufferCell and its Character, ForegroundColor, BackgroundColor, and BufferCellType values + are the same as those of this instance, false if not. + + + + + + + Overrides + + + + + + Hash code for this instance. + + + + + + + Compares two instances for equality + + + + + The left side operand. + + + + + The right side operand. + + + + + true if the respective Character, ForegroundColor, BackgroundColor, and BufferCellType values are the same, false otherwise. + + + + + + + Compares two instances for inequality + + + + + The left side operand. + + + + + The right side operand. + + + + + true if any of the respective Character, ForegroundColor, BackgroundColor, and BufferCellType values are not the same, + false otherwise. + + + + + + + Defines three types of BufferCells to accommodate for hosts that use up to two cells + to display a character in some languages such as Chinese and Japanese. + + + + + + + Character occupies one BufferCell + + + + + + + Character occupies two BufferCells and this is the leading one + + + + + + + Preceded by a Leading BufferCell + + + + + + + Defines the lowest-level user interface functions that an interactive application hosting an MSH + can choose to implement if it wants to + support any cmdlet that does character-mode interaction with the user. + + + + + It models an 2-dimensional grid of cells called a Buffer. A buffer has a visible rectangular region, called a window. + Each cell of the grid has a character, a foreground color, and a background color. When the buffer has input focus, it + shows a cursor positioned in one cell. Keystrokes can be read from the buffer and optionally echoed at the current + cursor position. + + + + + + + + + Protected constructor which does nothing. Provided per .Net design guidelines section 4.3.1 + + + + + + + Gets or sets the color used to render characters on the screen buffer. Each character cell in the screen buffer can + have a separate foreground color. + + + + + + + + + + Gets or sets the color used to render the background behind characters on the screen buffer. Each character cell in + the screen buffer can have a separate background color. + + + + + + + + Gets or sets the cursor position in the screen buffer. The view window always adjusts it's location over the screen + buffer such that the cursor is always visible. + + + + + To write to the screen buffer without updating the cursor position, use + or + + + + + + + + + + + + + + Gets or sets position of the view window relative to the screen buffer, in characters. (0,0) is the upper left of the screen + buffer. + + + + + + + + + + + Gets or sets the cursor size as a percentage 0..100. + + + + + + + + Gets or sets the current size of the screen buffer, measured in character cells. + + + + + + + + + + + + Gets or sets the current view window size, measured in character cells. The window size cannot be larger than the + dimensions returned by . + + + + + + + + + + + + Gets the size of the largest window possible for the current buffer, current font, and current display hardware. + The view window cannot be larger than the screen buffer or the current display (the display the window is rendered on). + + + + + The largest dimensions the window can be resized to without resizing the screen buffer. + + + + + Always returns a value less than or equal to + . + + + + + + + + + + + + Gets the largest window possible for the current font and display hardware, ignoring the current buffer dimensions. In + other words, the dimensions of the largest window that could be rendered in the current display, if the buffer was + at least as large. + + + + + To resize the window to this dimension, use + to first check and, if necessary, adjust, the screen buffer size. + + + + + + + + + + + + Reads a key stroke from the keyboard device, blocking until a keystroke is typed. + Same as ReadKey(ReadKeyOptions.IncludeKeyDown) + + + + + Key stroke when a key is pressed. + + + + + $Host.UI.RawUI.ReadKey() + + + + + + + + + + + Reads a key stroke from the keyboard device, blocking until a keystroke is typed. + Either one of ReadKeyOptions.IncludeKeyDown and ReadKeyOptions.IncludeKeyUp or both must be specified. + + + + + A bit mask of the options to be used to read the keyboard. Constants defined by + + + + + + Key stroke depending on the value of . + + + + + Neither ReadKeyOptions.IncludeKeyDown nor ReadKeyOptions.IncludeKeyUp is specified. + + + + + $option = [System.Management.Automation.Host.ReadKeyOptions]"IncludeKeyDown"; + $host.UI.RawUI.ReadKey($option) + + + + + + + + + + + + Resets the keyboard input buffer. + + + + + + + + + + A non-blocking call to examine if a keystroke is waiting in the input buffer. + + + + + True if a keystroke is waiting in the input buffer, false if not. + + + + + + + + + + Gets or sets the titlebar text of the current view window. + + + + + + + Copies the array into the screen buffer at the + given origin, clipping such that cells in the array that would fall outside the screen buffer are ignored. + + + + + The top left corner of the rectangular screen area to which is copied. + + + + + A rectangle of objects to be copied to the + screen buffer. + + + + + + + + + + + + + + + Copies a given character to all of the character cells in the screen buffer with the indicated colors. + + + + + The rectangle on the screen buffer to which is copied. + If all elements are -1, the entire screen buffer will be copied with . + + + + + The character and attributes used to fill . + + + + + Provided for clearing regions -- less chatty than passing an array of cells. + + + + + using System; + using System.Management.Automation; + using System.Management.Automation.Host; + namespace Microsoft.Samples.MSH.Cmdlet + { + [Cmdlet("Clear","Screen")] + public class ClearScreen : PSCmdlet + { + protected override void BeginProcessing() + { + Host.UI.RawUI.SetBufferContents(new Rectangle(-1, -1, -1, -1), + new BufferCell(' ', Host.UI.RawUI.ForegroundColor, Host.UI.RawUI.BackgroundColor)) + } + } + } + + + + + + + + + + + + + + + Extracts a rectangular region of the screen buffer. + + + + + The rectangle on the screen buffer to extract. + + + + + An array of objects extracted from + the rectangular region of the screen buffer specified by + + + + + If the rectangle is completely outside of the screen buffer, a BufferCell array of zero rows and column will be + returned. + + If the rectangle is partially outside of the screen buffer, the area where the screen buffer and rectangle overlap + will be read and returned. The size of the returned array is the same as that of r. Each BufferCell in the + non-overlapping area of this array is set as follows: + + Character is the space (' ') + ForegroundColor to the current foreground color, given by the ForegroundColor property of this class. + BackgroundColor to the current background color, given by the BackgroundColor property of this class. + + The resulting array is organized in row-major order for performance reasons. The screen buffer, however, is + organized in column-major order -- e.g. you specify the column index first, then the row index second, as in (x, y). + This means that a cell at screen buffer position (x, y) is in the array element [y, x]. + + + + + + + + + + + + + + + Scroll a region of the screen buffer. + + + + + Indicates the region of the screen to be scrolled. + + + + + Indicates the upper left coordinates of the region of the screen to receive the source region contents. The target + region is the same size as the source region. + + + + + Indicates the region of the screen to include in the operation. If a cell would be changed by the operation but + does not fall within the clip region, it will be unchanged. + + + + + The character and attributes to be used to fill any cells within the intersection of the source rectangle and + clipping rectangle that are left "empty" by the move. + + + + + + + + + + + + + + + Determines the number of BufferCells a substring of a string occupies. + + + + + The string whose substring length we want to know. + + + + + Offset where the substring begins in + + + + + The default implementation calls method + with the substring extracted from the string + starting at the offset + + + + + + + + + + + + + + + + Determines the number of BufferCells a string occupies. + + + + + The string whose length we want to know. + + + + + The default implementation returns the length of + + + + + + + + + + + + + + + + Determines the number of BufferCells a character occupies. + + + + + The character whose length we want to know. + + + + + The default implementation returns 1. + + + + + + + + + + + + + + + Creates a two dimensional array of BufferCells by examining each character in . + + + + + String array based on which the two dimensional array of BufferCells will be created. + + + + + Foreground color of the buffer cells in the resulting array. + + + + + Background color of the buffer cells in the resulting array. + + + + + A two dimensional array of BufferCells whose characters are the same as those in + and whose foreground and background colors set to and + + + + + + is null; + Any string in is null or empty + + + + + If a character C takes one BufferCell to display as determined by LengthInBufferCells, + one BufferCell is allocated with its Character set to C and BufferCellType to BufferCell.Complete. + On the other hand, if C takes two BufferCell, two adjacent BufferCells on a row in + the returned array will be allocated: the first has Character set to C and BufferCellType to + and the second + Character set to (char)0 and Type to + . Hence, the returned + BufferCell array has .Length number of rows and number of columns + equal to the largest number of cells a string in takes. The + foreground and background colors of the cells are initialized to + and , respectively. + The resuling array is suitable for use with + and . + + + + + + + + + + + + + + + Creates a 2D array of BufferCells by examining .Character. + + + + + + The number of columns of the resulting array + + + + + The number of rows of the resulting array + + + + + The cell to be copied to each of the elements of the resulting array. + + + + + A by array of BufferCells where each cell's value is + based on + + + + + + + is less than 1; + is less than 1. + + + + + If the character takes one BufferCell to display as determined by LengthInBufferCells, + one BufferCell is allocated with its Character set to the character and BufferCellType to + BufferCell.Complete. + On the other hand, if it takes two BufferCells, two adjacent BufferCells on a row + in the returned array will be allocated: the first has Character + set to the character and BufferCellType to BufferCellType.Leading and the second Character + set to (char)0 and BufferCellType to BufferCellType.Trailing. Moreover, if + is odd, the last column will just contain the leading cell. + .BufferCellType is not used in creating the array. + The resulting array is suitable for use with the PSHostRawUserInterface.SetBufferContents method. + + + + + + + + + + + + + + + Same as + + + + + The width and height of the resulting array. + + + + + The cell to be copied to each of the elements of the resulting array. + + + + + An array of BufferCells whose size is and where each cell's value is + based on + + + + + If .Width or .Height is less than 1. + + + + + + + + + + + + + + + Defines the properties and facilities providing by an hosting application deriving from + that offers dialog-oriented and + line-oriented interactive features. + + + + + + + + Gets hosting application's implementation of the + abstract base class + that implements that class. + + + A reference to an instance of the hosting application's implementation of a class derived from + , or null to indicate that + low-level user interaction is not supported. + + + + + Returns true for hosts that support VT100 like virtual terminals. + + + + + Reads characters from the console until a newline (a carriage return) is encountered. + + + The characters typed by the user. + + + + + + + + + + Same as ReadLine, except that the result is a SecureString, and that the input is not echoed to the user while it is + collected (or is echoed in some obfuscated way, such as showing a dot for each character). + + + The characters typed by the user in an encrypted form. + + + Note that credentials (a user name and password) should be gathered with + + + + + + + + + + + + Writes characters to the screen buffer. Does not append a carriage return. + + + + The characters to be written. null is not allowed. + + + + + + + + + Same as , + except that colors can be specified. + + + The foreground color to display the text with. + + + The foreground color to display the text with. + + + The characters to be written. null is not allowed. + + + + + + + + + The default implementation writes a carriage return to the screen buffer. + + + + + + + + + Writes characters to the screen buffer, and appends a carriage return. + + + The characters to be written. null is not allowed. + + + + + + + + + Same as , + except that colors can be specified. + + + The foreground color to display the text with. + + + The foreground color to display the text with. + + + The characters to be written. null is not allowed. + + + + + + + + + Writes a line to the "error display" of the host, as opposed to the "output display," which is + written to by the variants of + + + and + + + + The characters to be written. + + + + + + + + + Invoked by to display a debugging message + to the user. + + + + + + + + Invoked by to display a progress record. + + + Unique identifier of the source of the record. An int64 is used because typically, the 'this' pointer of + the command from whence the record is originating is used, and that may be from a remote Runspace on a 64-bit + machine. + + + The record being reported to the host. + + + + + + + + Invoked by to display a verbose processing message to the user. + + + + + + + + Invoked by to display a warning processing message to the user. + + + + + + + + Invoked by to give the host a chance to intercept + informational messages. These should not be displayed to the user by default, but may be useful to display in + a separate area of the user interface. + + + + + Transcribes a command being invoked + + The text of the command being invoked. + The invocation info of the command being transcribed. + + + + Signals that a command being invoked (and its output) should be ignored. + + The text of the command being invoked. + The invocation info of the command being transcribed. + + + + Flag to determine whether the host is in "Transcribe Only" mode, + so that when content is sent through Out-Default it doesn't + make it to the actual host. + + + + + Flag to determine whether the host is transcribing. + + + + + Transcribes the supplied result text to the transcription buffer. + + The runspace that was used to generate this result, if it is not the current runspace. + The text to be transcribed. + + + + Transcribes the supplied result text to the transcription buffer. + + The text to be transcribed. + + + + Transcribes / records the completion of a command + + + + + + Constructs a 'dialog' where the user is presented with a number of fields for which to supply values. + + + Caption to preceed or title the prompt. E.g. "Parameters for get-foo (instance 1 of 2)" + + + A text description of the set of fields to be prompt. + + + Array of FieldDescriptions that contain information about each field to be prompted for. + + + A Dictionary object with results of prompting. The keys are the field names from the FieldDescriptions, the values + are objects representing the values of the corresponding fields as collected from the user. To the extent possible, + the host should return values of the type(s) identified in the FieldDescription. When that is not possible (for + example, the type is not avaiable to the host), the host should return the value as a string. + + + + + + + + + + Prompt for credentials. + + + + Prompt for credential. + + + Caption for the message. + + + Text description for the credential to be prompt. + + + Name of the user whose credential is to be prompted for. If set to null or empty + string, the function will prompt for user name first. + + + Name of the target for which the credential is being collected. + + + User input credential. + + + + + + + + + + Prompt for credential. + + + Caption for the message. + + + Text description for the credential to be prompt. + + + Name of the user whose credential is to be prompted for. If set to null or empty + string, the function will prompt for user name first. + + + Name of the target for which the credential is being collected. + + + Types of credential can be supplied by the user. + + + Options that control the credential gathering UI behavior + + + User input credential. + + + + + + + + + + Presents a dialog allowing the user to choose an option from a set of options. + + + Caption to preceed or title the prompt. E.g. "Parameters for get-foo (instance 1 of 2)" + + + A message that describes what the choice is for. + + + An Collection of ChoiceDescription objects that describe each choice. + + + The index of the label in the choices collection element to be presented to the user as the default choice. -1 + means "no default". Must be a valid index. + + + The index of the choices element that corresponds to the option selected. + + + + + + + + + + Creates a new instance of the PSHostUserInterface class + + + + + Helper to transcribe an error through formatting and output. + + The Execution Context + The invocation info associated with the record + The error record + + + + Get Module Logging information from the registry. + + + + + The path that this transcript is being logged to. + + + + + Any output to log for this transcript. + + + + + Any output currently being logged for this transcript. + + + + + Whether to include time stamp / command separators in + transcript output. + + + + + The encoding of this transcript, so that appending to it + can be done correctly. + + + + + Logs buffered content to disk. We use this instead of File.AppendAllLines + so that we don't need to pay seek penalties all the time, and so that we + don't need append permission to our own files. + + + + + Disposes this runspace instance. Dispose will close the runspace if not closed already. + + + + + This interface needs to be implemented by PSHost objects that want to support PromptForChoice + by giving the user ability to select more than one choice. The PromptForChoice method available + in PSHostUserInterface class supports only one choice selection. + + + + + Presents a dialog allowing the user to choose options from a set of options. + + + Caption to preceed or title the prompt. E.g. "Parameters for get-foo (instance 1 of 2)" + + + A message that describes what the choice is for. + + + An Collection of ChoiceDescription objects that describe each choice. + + + The index of the labels in the choices collection element to be presented to the user as + the default choice(s). + + + The indices of the choice elements that corresponds to the options selected. The + returned collection may contain duplicates depending on a particular host + implementation. + + + + + + Helper methods used by PowerShell's Hosts: ConsoleHost and InternalHost to process + PromptForChoice. + + + + + Constructs a string of the choices and their hotkeys. + + + + + 1. Cannot process the hot key because a question mark ("?") cannot be used as a hot key. + + + + + Searches for a corresponding match between the response string and the choices. A match is either the response + string is the full text of the label (sans hotkey marker), or is a hotkey. Full labels are checked first, and take + precedence over hotkey matches. + + + + + + Returns the index into the choices array matching the response string, or -1 if there is no match. + + + + + + Defines the exception thrown when the Host cannot complete an operation + such as checking whether there is any input available. + + + + + + + Initializes a new instance of the HostException class + + + + + + + Initializes a new instance of the HostException class and defines the error message + + + + + The error message that explains the reason for the exception. + + + + + + + Initializes a new instance of the HostException class and defines the error message and + inner exception. + + + + + The error message that explains the reason for the exception. + + + + + The exception that is the cause of the current exception. If the + parameter is not a null reference, the current exception is raised in a catch + block that handles the inner exception. + + + + + + + Initializes a new instance of the HostException class and defines the error message, + inner exception, the error ID, and the error category. + + + + + The error message that explains the reason for the exception. + + + + + The exception that is the cause of the current exception. If the + parameter is not a null reference, the current exception is raised in a catch + block that handles the inner exception. + + + + + The string that should uniquely identifies the situation where the exception is thrown. + The string should not contain white space. + + + + + The ErrorCategory into which this exception situation falls + + + + Intentionally public, third-party hosts can call this + + + + + + Initializes a new instance of the HostException class and defines the SerializationInfo + and the StreamingContext. + + + + + The object that holds the serialized object data. + + + + + The contextual information about the source or destination. + + + + + + + Defines the exception thrown when an error occurs from prompting for a command parameter. + + + + + + + Initializes a new instance of the PromptingException class + + + + + + + Initializes a new instance of the PromptingException class and defines the error message + + + + + The error message that explains the reason for the exception. + + + + + + + Initializes a new instance of the PromptingException class and defines the error message and + inner exception. + + + + + The error message that explains the reason for the exception. + + + + + The exception that is the cause of the current exception. If the + parameter is not a null reference, the current exception is raised in a catch + block that handles the inner exception. + + + + + + + Initializes a new instance of the PromptingException class and defines the error message, + inner exception, the error ID, and the error category. + + + + + The error message that explains the reason for the exception. + + + + + The exception that is the cause of the current exception. If the + parameter is not a null reference, the current exception is raised in a catch + block that handles the inner exception. + + + + + The string that should uniquely identifies the situation where the exception is thrown. + The string should not contain white space. + + + + + The ErrorCategory into which this exception situation falls + + + + Intentionally public, third-party hosts can call this + + + + + + Initializes a new instance of the HostException class and defines the SerializationInfo + and the StreamingContext. + + + + + The object that holds the serialized object data. + + + + + The contextual information about the source or destination. + + + + + + Base class for items in the PSInformationalBuffers. + + A PSInformationalRecord consists of a string Message and the InvocationInfo and pipeline state corresponding + to the command that created the record. + + + + + This class can be instantiated only by its derived classes + + + + + Creates an InformationalRecord object from a record serialized as a PSObject by ToPSObjectForRemoting. + + + + + The message written by the command that created this record + + + + + The InvocationInfo of the command that created this record + + + The InvocationInfo can be null if the record was not created by a command. + + + + + The status of the pipeline when this record was created. + + + The PipelineIterationInfo can be null if the record was not created by a command. + + + + + Sets the InvocationInfo (and PipelineIterationInfo) for this record + + + + + Whether to serialize the InvocationInfo and PipelineIterationInfo during remote calls + + + + + Returns the record's message + + + + + Adds the information about this informational record to a PSObject as note properties. + The PSObject is used to serialize the record during remote operations. + + + + + A warning record in the PSInformationalBuffers. + + + + + + + + + + + + + + + + + Constructor for Fully qualified warning Id. + + Fully qualified warning Id + Warning message + + + + Constructor for Fully qualified warning Id. + + Fully qualified warning Id + Warning serialized object + + + + String which uniquely identifies this warning condition. + + + + + A debug record in the PSInformationalBuffers. + + + + + + + + + + + + + + + + + A verbose record in the PSInformationalBuffers. + + + + + + + + + + + + + + + + + PSListModifier is a simple helper class created by the update-list cmdlet. + The update-list cmdlet will either return an instance of this class, or + it will internally use an instance of this class to implement the updates. + + Cmdlets can also take a PSListModifier as a parameter. Usage might look like: + + Get-Mailbox | Set-Mailbox -Alias @{Add='jim'} + + Alias would take a PSListModifier and the Cmdlet code would be responsible + for apply updates (possibly using PSListModifier.ApplyTo or else using custom logic). + + + + + Create a new PSListModifier with empty lists for Add/Remove. + + + + + Create a new PSListModifier with the specified add and remove lists. + + The items to remove + The items to add + + + + Create a new PSListModifier to replace a given list with replaceItems. + + The item(s) to replace an existing list with + + + + Create a new PSListModifier with the specified add and remove lists (in the hash.) + + A hashtable, where the value for key Add is the list to add + and the value for Remove is the list to remove. + + + + The list of items to add when ApplyTo is called. + + + + + The list of items to remove when AppyTo is called. + + + + + The list of items to replace an existing list with. + + + + + Update the given collection with the items in Add and Remove. + + The collection to update + + + + Update the given collection with the items in Add and Remove. + + The collection to update + + + + A generic version of PSListModifier that exists for the sole purpose of making + cmdlets that accept a PSListModifier more usable. Users that look at the syntax + of the command will see something like PSListModifier[Mailbox] and know they need + to pass in Mailboxes. + + The list element type + + + + Create a new PSListModifier with empty lists for Add/Remove. + + + + + Create a new PSListModifier with the specified add and remove lists. + + The items to remove + The items to add + + + + Create a new PSListModifier to replace a given list with replaceItems. + + The items to replace an existing list with + + + + Create a new PSListModifier with the specified add and remove lists (in the hash.) + + A hashtable, where the value for key Add is the list to add + and the value for Remove is the list to remove. + + + + Defines exception which is thrown when state of the PowerShell is different + from the expected state. + + + + + Creates a new instance of InvalidPowershellStateException class. + + + + + Creates a new instance of InvalidPowershellStateException class. + + + The error message that explains the reason for the exception. + + + + + Creates a new instance of InvalidPowershellStateException class. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + + + + + Initializes a new instance of the InvalidPowerShellStateException and defines value of + CurrentState. + + Current state of powershell + + + + Initializes a new instance of the InvalidPowerShellStateException + class with serialized data. + + + The that holds the serialized object + data about the exception being thrown. + + + The that contains contextual information + about the source or destination. + + + + + Gets CurrentState of the powershell + + + + + State of powershell when exception was thrown. + + + + + Enumerated type defining the state of the PowerShell + + + + + PowerShell has not been started + + + + + PowerShell is executing + + + + + PowerShell is stoping execution. + + + + + PowerShell is completed due to a stop request. + + + + + PowerShell has completed executing a command. + + + + + PowerShell completed abnormally due to an error. + + + + + PowerShell is in disconnected state. + + + + + Enumerated type defining runspace modes for nested pipeline + + + + + Use current runspace from the current thread of execution + + + + + Create new runspace + + + + + Type which has information about InvocationState and Exception + associated with InvocationState + + + + + Constructor for state changes with an optional error. + + The new state. + A non-null exception if the state change was + caused by an error,otherwise; null. + + + + + Construct from PipelineStateInfo + + + + + + The state of the PowerShell instance. + + + + + + + The reason for the state change, if caused by an error. + + + The value of this property is non-null if the state + changed due to an error. Otherwise, the value of this + property is null. + + + + + Clone the current instance. + + + A copy of the current instance. + + + + + The current execution state + + + + + Non-null exception if the execution state change was due to an error. + + + + + Event arguments passed to PowerShell state change handlers + event. + + + + + Constructs PSInvocationStateChangedEventArgs from PSInvocationStateInfo + + + state to raise the event with. + + + + + Information about current state of a PowerShell Instance. + + + + + Information about current state of a PowerShell Instance. + + + + + Settings to control command invocation. + + + + + Default Constructor. + + + + + ApartmentState of the thread in which the command + is executed. + + + + + Host to use with the Runspace when the command is + executed. + + + + + Options for the Error, Warning, Verbose and Debug streams during remote calls + + + + + Boolean which tells if the command is added to the history of the + Runspace the command is executing in. By default this is false. + + + + + Determines how errors should be handled during batch command execution + + + + + Used by Powershell remoting infrastructure to flow identity from calling thread to + Pipeline Execution Thread. + + + Scenario: In the IIS hosting model, the calling thread is impersonated with a different + identity than the process identity. However Pipeline Execution Thread always inherits + process's identity and this will create problems related to security. In the IIS hosting + model, we should honor calling threads identity. + + + + + When true, allows an unhandled flow control exceptions to + propagate to a caller invoking the PowerShell object. + + + + + Invokes a remote command and immediately disconnects, if the transport + layer supports this operation. + + + + + Batch execution context + + + + + Class constructor + + + + + + + Invocation output + + + + + Command to invoke + + + + + Waits for the completion event + + + + + Signals the completion event + + + + + These flags control whether InvocationInfo is added to items in the Error, Warning, Verbose and Debug + streams during remote calls + + + + + If this flag is set, ErrorRecord will include an instance of InvocationInfo on remote calls + + + + + If this flag is set, WarningRecord will include an instance of InvocationInfo on remote calls + + + + + If this flag is set, DebugRecord will include an instance of InvocationInfo on remote calls + + + + + If this flag is set, VerboseRecord will include an instance of InvocationInfo on remote calls + + + + + If this flag is set, ErrorRecord, WarningRecord, DebugRecord, and VerboseRecord will include an instance of InvocationInfo on remote calls + + + + + Internal Async result type used by BeginInvoke() and BeginStop() overloads. + + + + + true if AsyncResult monitors Async BeginInvoke(). + false otherwise + + + + + The output buffer for the asynchronous invoke + + + + + Constructor + + + Instace Id of the Powershell object creating this instance + + + Callback to call when the async operation completes. + + + A user supplied state to call the "callback" with. + + + The output buffer to return from EndInvoke. + + + true if AsyncResult monitors BeginInvoke. + false otherwise + + + + + Represents a PowerShell command or script to execute against a + Runspace(Pool) if provided, otherwise execute using a default + Runspace. Provides access to different result buffers + like output, error, debug, verbose, progress, warning, and information. + + Provides a simple interface to execute a powershell command: + + Powershell.Create("get-process").Invoke(); + + The above statetement creates a local runspace using default + configuration, executes the command and then closes the runspace. + + Using RunspacePool property, the caller can provide the runspace + where the command / script is executed. + + + + + Constructs PowerShell + + + A PSCommand. + + + A list of extra commands to run + + + A Runspace or RunspacePool to refer while invoking the command. + This can be null in which case a new runspace is created + whenever Invoke* method is called. + + + + + Constructs a PowerShell instance in the disconnected start state with + the provided remote command connect information and runspace(pool) objects. + + Remote command connect information. + Remote Runspace or RunspacePool object. + + + + + + + + + + + + + Creates a PowerShell object in the disconnected start state and with a ConnectCommandInfo object + parameter that specifies what remote command to associate with this PowerShell when it is connected. + + + + + + + + + + Sets the command collection in this powershell + + This method will be called by RemotePipeline + before it begins execution. This method is used to set + the command collection of the remote pipeline as the + command collection of the underlying powershell + + + + Initialize PowerShell object for connection to remote command. + + Input stream. + Output stream. + Error stream. + Settings information. + Redirect error output. + + + + Constructs an empty PowerShell instance; a script or command must be added before invoking this instance + + + An instance of PowerShell. + + + + + Constructs an empty PowerShell instance; a script or command must be added before invoking this instance + + runspace mode + An instance of PowerShell. + + + + Constructs an empty PowerShell instance; a script or command must be added before invoking this instance + + InitialSessionState with which to create the runspace + An instance of PowerShell. + + + + Creates a nested powershell within the current instance. + Nested PowerShell is used to do simple operations like checking state + of a variable while another command is using the runspace. + + Nested PowerShell should be invoked from the same thread as the parent + PowerShell invocation thread. So effectively the parent Powershell + invocation thread is blocked until nested invoke() operation is + complete. + + Implement PSHost.EnterNestedPrompt to perform invoke() operation on the + nested powershell. + + + 1. State of powershell instance is not valid to create a nested powershell instance. + Nested PowerShell should be created only for a running powershell instance. + + + + + Method needed when deserializing PowerShell object coming from a RemoteDataObject + + Indicates if PowerShell object is nested + Commands that the PowerShell pipeline is built of + Extra commands to run + + + + Add a cmdlet to construct a command pipeline. + For example, to construct a command string "get-process | sort-object", + + PowerShell shell = PowerShell.Create("get-process").AddCommand("sort-object"); + + + + A string representing cmdlet. + + + A PowerShell instance with added. + + + This method is not thread safe. + + + cmdlet is null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Add a cmdlet to construct a command pipeline. + For example, to construct a command string "get-process | sort-object", + + PowerShell shell = PowerShell.Create("get-process").AddCommand("sort-object"); + + + + A string representing cmdlet. + + + if true local scope is used to run the script command. + + + A PowerShell instance with added. + + + This method is not thread safe. + + + cmdlet is null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Add a piece of script to construct a command pipeline. + For example, to construct a command string "get-process | foreach { $_.Name }" + + PowerShell shell = PowerShell.Create("get-process"). + AddCommand("foreach { $_.Name }", true); + + + + A string representing a script. + + + A PowerShell instance with added. + + + This method is not thread-safe. + + + command is null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Add a piece of script to construct a command pipeline. + For example, to construct a command string "get-process | foreach { $_.Name }" + + PowerShell shell = PowerShell.Create("get-process"). + AddCommand("foreach { $_.Name }", true); + + + + A string representing a script. + + + if true local scope is used to run the script command. + + + A PowerShell instance with added. + + + This method is not thread-safe. + + + command is null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Add a element to the current command + pipeline. + + + Command to add. + + + A PSCommand instance with added. + + + This method is not thread-safe. + + + command is null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + CommandInfo object for the command to add. + + The CommandInfo object for the command to add + + A PSCommand instance with the command added. + + + This method is not thread-safe. + + + command is null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Add a parameter to the last added command. + For example, to construct a command string "get-process | select-object -property name" + + PowerShell shell = PowerShell.Create("get-process"). + AddCommand("select-object").AddParameter("property","name"); + + + + Name of the parameter. + + + Value for the parameter. + + + A PowerShell instance with added + to the parameter list of the last command. + + + This method is not thread safe. + + + Name is non null and name length is zero after trimming whitespace. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Adds a switch parameter to the last added command. + For example, to construct a command string "get-process | sort-object -descending" + + PSCommand command = new PSCommand("get-process"). + AddCommand("sort-object").AddParameter("descending"); + + + + Name of the parameter. + + + A PowerShell instance with added + to the parameter list of the last command. + + + This method is not thread safe. + + + Name is non null and name length is zero after trimming whitespace. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Adds a set of parameters to the last added command. + + + List of parameters. + + + A PowerShell instance with the items in added + to the parameter list of the last command. + + + This method is not thread safe. + + + The function was given a null argument. + + + Powershell instance cannot be changed in its + current state. + + + + + Adds a set of parameters to the last added command. + + + Dictionary of parameters. Each key-value pair corresponds to a parameter name and its value. Keys must strings. + + + A PowerShell instance with the items in added + to the parameter list of the last command. + + + This method is not thread safe. + + + The function was given a null argument. + + + Powershell instance cannot be changed in its + current state. + + + One of the dictionary keys is not a string. + + + + + Adds an argument to the last added command. + For example, to construct a command string "get-process | select-object name" + + PowerShell shell = PowerShell.Create("get-process"). + AddCommand("select-object").AddParameter("name"); + + + This will add the value "name" to the positional parameter list of "select-object" + cmdlet. When the command is invoked, this value will get bound to positional parameter 0 + of the "select-object" cmdlet which is "Property". + + + Value for the parameter. + + + A PSCommand instance parameter value added + to the parameter list of the last command. + + + This method is not thread safe. + + + + + Adds an additional statement for execution + + For example, + + Runspace rs = RunspaceFactory.CreateRunspace(); + PowerShell ps = PowerShell.Create(); + + ps.Runspace = rs; + ps.AddCommand("Get-Process").AddArgument("idle"); + ps.AddStatement().AddCommand("Get-Service").AddArgument("audiosrv"); + ps.Invoke(); + + + + A PowerShell instance with the items in added + to the parameter list of the last command. + + + + + Gets or sets current powershell command line. + + + Cannot set to a null value. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Streams generated by PowerShell invocations + + + + + Gets or sets the error buffer. Powershell invocation writes + the error data into this buffer. + + + Cannot set to a null value. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets or sets the progress buffer. Powershell invocation writes + the progress data into this buffer. Can be null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets or sets the verbose buffer. Powershell invocation writes + the verbose data into this buffer. Can be null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets or sets the debug buffer. Powershell invocation writes + the debug data into this buffer. Can be null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets or sets the warning buffer. Powershell invocation writes + the warning data into this buffer. Can be null. + + + Cannot set to a null value. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets or sets the information buffer. Powershell invocation writes + the information data into this buffer. Can be null. + + + Cannot set to a null value. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets the informational buffers + + + + + If this flag is true, the commands in this Pipeline will redirect + the global error output pipe to the command's error output pipe. + + (see the comment in Pipeline.RedirectShellErrorOutputPipe for an + explanation of why this flag is needed) + + + + + Get unqiue id for this instance of runspace pool. It is primarily used + for logging purposes. + + + + + Gets the execution state of the current PowerShell instance. + + + + + Gets the property which indicates if this PowerShell instance + is nested. + + + + + Gets the property which indicates if this PowerShell instance + is a child instance. + + IsChild flag makes it possible for the pipeline to differentiate between + a true v1 nested pipeline and the cmdlets calling cmdlets case. See bug + 211462. + + + + + + If an error occurred while executing the pipeline, this will be set to true. + + + + + Access to the EndInvoke AysncResult object. Used by remote + debugging to invoke debugger commands on command thread. + + + + + Event rasied when PowerShell Execution State Changes. + + + + + This event gets fired when a Runspace from the RunspacePool is assigned to this PowerShell + instance to invoke the commands. + + + + + Sets an associated Runspace for this PowerShell instance. + This can be null in which case a new runspace is created + whenever Invoke* method is called. + + + This property and RunspacePool are mutually exclusive; setting one of them resets the other to null + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Internal method to set the Runspace property + + + + + Sets an associated RunspacePool for this PowerShell instance. + A Runspace from this pool is used whenever Invoke* method + is called. + + This can be null in which case a new runspace is created + whenever Invoke* method is called. + + + This property and Runspace are mutually exclusive; setting one of them resets the other to null + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets the associated Runspace or RunspacePool for this PowerShell + instance. If this is null, PowerShell instance is not associated + with any runspace. + + + + + Synchronously connects to a running command on a remote server. + + Command output as a PSDataCollection. + + + + Asynchronously connects to a running command on a remote server. + The returned IAsyncResult object can be used with EndInvoke() method + to wait on command and/or get command returned data. + + IAsyncResult. + + + + Asynchronously connects to a running command on a remote server. + The returned IAsyncResult object can be used with EndInvoke() method + to wait on command and/or get command returned data. + + The output buffer to return from EndInvoke. + An AsyncCallback to be called once the previous invocation has completed. + A user supplied state to call the with. + IAsyncResult + + + + Checks that the current runspace associated with this PowerShell is a remote runspace, + and if it is in Disconnected state then to connect it. + + + + + This method allows the script debugger first crack at evaluating the + command in case it is a debugger command, otherwise the command is + evaluated by PowerShell. + If the debugger evaluated a command then DebuggerCommand.ResumeAction + value will be set appropriately. + + Input + Output collection + PS invocation settings + True if PowerShell Invoke must run regardless + of whether debugger handles the command. + + DebuggerCommandResults + + + + Invoke the synchronously and return + the output PSObject collection. + + + collection of PSObjects. + + + Object is disposed. + + + Cannot perform the operation because the command is + already started.Stop the command and try the operation again. + (or) + No commands are specified. + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the command was executing was aborted. + + + PowerShell.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Invoke the synchronously and return + the output PSObject collection. + + + Input to the command + + + Collection of PSObjects representing output. + + + Object is disposed. + + + Cannot perform the operation because the command is + already started.Stop the command and try the operation again. + (or) + No commands are specified. + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the command was executing was aborted. + + + PowerShell.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Invoke the synchronously and return + the output PSObject collection. + + + Input to the command + + + Invocation Settings + + + Collection of PSObjects representing output. + + + Object is disposed. + + + Cannot perform the operation because the command is + already started.Stop the command and try the operation again. + (or) + No commands are specified. + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the command was executing was aborted. + + + PowerShell.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Invoke the synchronously and return + the output. + + + Type of output object(s) expected from the command invocation. + + + Object is disposed. + + + Cannot perform the operation because the command is + already started.Stop the command and try the operation again. + (or) + No commands are specified. + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the command was executing was aborted. + + + PowerShell.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Invoke the synchronously and return + the output. + + + Type of output object(s) expected from the command invocation. + + + Input to the command + + + Object is disposed. + + + Cannot perform the operation because the command is + already started.Stop the command and try the operation again. + (or) + No commands are specified. + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the command was executing was aborted. + + + PowerShell.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Invoke the synchronously and return + the output. + + + Type of output object(s) expected from the command invocation. + + + Input to the command + + + Invocation Settings + + + Object is disposed. + + + Cannot perform the operation because the command is + already started.Stop the command and try the operation again. + (or) + No commands are specified. + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the command was executing was aborted. + + + PowerShell.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Invoke the synchronously and collect + output data into the buffer + + + Type of output object(s) expected from the command invocation. + + + Input to the command + + + A collection supplied by the user where output is collected. + + + cannot be null. + + + Object is disposed. + + + Cannot perform the operation because the command is + already started.Stop the command and try the operation again. + (or) + No commands are specified. + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the command was executing was aborted. + + + PowerShell.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Invoke the synchronously and collect + output data into the buffer + + + Type of output object(s) expected from the command invocation. + + + Input to the command + + + A collection supplied by the user where output is collected. + + + Invocation Settings to use. + + + cannot be null. + + + No commands are specified. + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the command was executing was aborted. + + + PowerShell.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Invoke the synchronously and stream + output data into the buffer + + + Type of input object(s) expected from the command invocation. + + + Type of output object(s) expected from the command invocation. + + + Input to the command + + + Output of the command. + + + Invocation Settings to use. + + + cannot be null. + + + No commands are specified. + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the command was executing was aborted. + + + PowerShell.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Invoke the asynchronously. + Use EndInvoke() to obtain the output of the command. + + + Cannot perform the operation because the command is already started. + Stop the command and try the operation again. + (or) + No command is added. + + + Object is disposed. + + + + + Invoke the asynchronously. + Use EndInvoke() to obtain the output of the command. + + + When invoked using BeginInvoke, invocation doesn't + finish until Input is closed. Caller of BeginInvoke must + close the input buffer after all input has been written to + input buffer. Input buffer is closed by calling + Close() method. + + If you want this command to execute as a standalone cmdlet + (that is, using command-line parameters only), + be sure to call Close() before calling BeginInvoke(). Otherwise, + the command will be executed as though it had external input. + If you observe that the command isn't doing anything, + this may be the reason. + + + Type of the input buffer + + + Input to the command. See remarks for more details. + + + Cannot perform the operation because the command is already started. + Stop the command and try the operation again. + (or) + No command is added. + + + Object is disposed. + + + + + Invoke the asynchronously. + Use EndInvoke() to obtain the output of the command. + + + When invoked using BeginInvoke, invocation doesn't + finish until Input is closed. Caller of BeginInvoke must + close the input buffer after all input has been written to + input buffer. Input buffer is closed by calling + Close() method. + + If you want this command to execute as a standalone cmdlet + (that is, using command-line parameters only), + be sure to call Close() before calling BeginInvoke(). Otherwise, + the command will be executed as though it had external input. + If you observe that the command isn't doing anything, + this may be the reason. + + + Type of the input buffer + + + Input to the command. See remarks for more details. + + + Invocation Settings. + + + An AsyncCallback to call once the BeginInvoke completes. + + + A user supplied state to call the + with. + + + Cannot perform the operation because the command is already started. + Stop the command and try the operation again. + (or) + No command is added. + + + Object is disposed. + + + + + Invoke the asynchronously. + When this method is used EndInvoke() returns a null buffer. + + + When invoked using BeginInvoke, invocation doesn't + finish until Input is closed. Caller of BeginInvoke must + close the input buffer after all input has been written to + input buffer. Input buffer is closed by calling + Close() method. + + If you want this command to execute as a standalone cmdlet + (that is, using command-line parameters only), + be sure to call Close() before calling BeginInvoke(). Otherwise, + the command will be executed as though it had external input. + If you observe that the command isn't doing anything, + this may be the reason. + + + Type of input object(s) for the command invocation. + + + Type of output object(s) expected from the command invocation. + + + Input to the command. See remarks for more details. + + + A buffer supplied by the user where output is collected. + + + Cannot perform the operation because the command is already started. + Stop the command and try the operation again. + (or) + No command is added. + + + Object is disposed. + + + + + Invoke the asynchronously and collect + output data into the buffer . + When this method is used EndInvoke() returns a null buffer. + + + When invoked using BeginInvoke, invocation doesn't + finish until Input is closed. Caller of BeginInvoke must + close the input buffer after all input has been written to + input buffer. Input buffer is closed by calling + Close() method. + + If you want this command to execute as a standalone cmdlet + (that is, using command-line parameters only), + be sure to call Close() before calling BeginInvoke(). Otherwise, + the command will be executed as though it had external input. + If you observe that the command isn't doing anything, + this may be the reason. + + + Type of input object(s) for the command invocation. + + + Type of output object(s) expected from the command invocation. + + + Input to the command. See remarks for more details. + + + A buffer supplied by the user where output is collected. + + + Invocation Settings. + + + An AsyncCallback to call once the BeginInvoke completes. + + + A user supplied state to call the + with. + + + Cannot perform the operation because the command is already started. + Stop the command and try the operation again. + (or) + No command is added. + + + Object is disposed. + + + + + Begins a batch execution + + + Type of input object(s) for the command invocation. + + + Type of output object(s) expected from the command invocation. + + + Input to the command. See remarks for more details. + + + A buffer supplied by the user where output is collected. + + + Invocation Settings. + + + An AsyncCallback to call once the BeginInvoke completes. + + + A user supplied state to call the + with. + + + Cannot perform the operation because the command is already started. + Stop the command and try the operation again. + (or) + No command is added. + + + Object is disposed. + + + + + Batch invocation callback + + + + + + Batch invocation callback + + + + + + Executes remaining batch commands + + + + + + + + + + Prepare for async batch execution + + + + + Ends an async batch execution + + + + + Appends an exception to the error stream + + + + + + Waits for the pending asynchronous BeginInvoke to complete. + + + Instance of IAsyncResult returned by BeginInvoke. + + + The output buffer created to hold the results of the asynchronous invoke, or null if the caller provided their own buffer. + + + asyncResult is a null reference. + + + asyncResult object was not created by calling BeginInvoke + on this PowerShell instance. + + + + + Stop the currently running command synchronously. + + + Object is disposed. + + + + + Stop the currently running command asynchronously. If the command is not started, + the state of PowerShell instance is changed to Stopped and corresponding events + will be raised. + + The returned IAsyncResult object can be used to wait for the stop operation + to complete. + + + A AsyncCallback to call once the BeginStop completes. + + + A user supplied state to call the + with. + + + Object is disposed. + + + + + Waits for the pending asynchronous BeginStop to complete. + + + Instance of IAsyncResult returned by BeginStop. + + + asyncResult is a null reference. + + + asyncResult object was not created by calling BeginStop + on this PowerShell instance. + + + + + Handler for state changed changed events for the currently running pipeline. + + + Source of the event. + + + Pipeline State. + + + + + Dispose all managed resources. This will suppress finalizer on the object from getting called by + calling System.GC.SuppressFinalize(this). + + + + + Indicates if this PowerShell object is the owner of the + runspace or RunspacePool assigned to this object + + + + + OutputBuffer + + + + + This has been added as a work around for Windows8 bug 803461. + It should be used only for the PSJobProxy API. + + Resets the instance ID of the command to a new guid. + If this is not done, then there is a race condition on the server + in the following circumstances: + + ps.BeginInvoke(...); + ps.Stop() + ps.Commands.Clear(); + ps.AddCommand("Foo"); + ps.Invoke(); + + In these conditions, stop returns before the server is done cleaning up. + The subsequent invoke will cause an error because the guid already + identifies a command in progress. + + + + + Get a steppable pipeline object. + + A steppable pipeline object + An attempt was made to use the scriptblock outside of the engine. + + + + Returns the current execution context from TLS, or raises an exception if it is null. + + An attempt was made to use the scriptblock outside of the engine. + + + + Gets the steppable pipeline from the powershell object + + engine execution context + command origin + steppable pipeline object + + + + Checks if the command is running + + + + + + Checks if the current state is Disconnected. + + + + + + Checks if the command is already running. + If the command is already running, throws an + exception. + + + Cannot perform the operation because the command is already started. + Stop the command and try the operation again. + + + Object is disposed. + + + + + Checks if the current powershell instance can accept changes like + changing one of the properties like Output, Command etc. + If changes are not allowed, throws an exception. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Checks if the current powershell instance is disposed. + If disposed, throws ObjectDisposedException. + + + Object is disposed. + + + + + Release all the resources. + + + if true, release all the managed objects. + + + + + Clear the internal elements + + + + + Raise the execution state change event handlers. + + + State Information + + + + + Sets the state of this powershell instance. + + the state info to set + + + + Helper function to close the input buffer after command is reconnected. + + Previous state. + + + + clear the internal reference to remote powershell + + + + + Sets if the pipeline is nested, typically used by the remoting infrastructure + + + + + + Performs the actual synchronous command invocation. The caller + should check if it safe to call this method. + + + Type of objects to return. + + + Input to the command. + + + output from the command + + + Invocation settings. + + + No commands are specified. + + + The script recursed too deeply into script functions. + There is a fixed limit on the depth of recursion. + + + A CLR security violation occurred. Typically, this happens + because the current CLR permissions do not allow adequate + reflextion access to a cmdlet assembly. + + + The thread in which the command was executing was aborted. + + + PowerShell.Invoke can throw a variety of exceptions derived + from RuntimeException. The most likely of these exceptions + are listed below. + + + One of more parameters or parameter values specified for + a cmdlet are not valid, or mandatory parameters for a cmdlet + were not specified. + + + A cmdlet generated a terminating error. + + + A provider generated a terminating error. + + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. + + + The pipeline was terminated asynchronously. + + + If there is an error generating the metadata for dynamic parameters. + + + + + Core invocation helper method + + input type + output type + input objects + output object + invocation settings + + + + Core invocation helper method for remoting + + input type + output type + input objects + output object + invocation settings + + + + Core invocation method + + input type + output type + input objects + output object + invocation settings + + + + Performs the actual asynchronous command invocation. + + Type of the input buffer + Type of the output buffer + + input can be null + + + + + A AsyncCallback to call once the BeginInvoke completes. + + + A user supplied state to call the + with. + + + The output buffer to attach to the IAsyncResult returned by this method + + + Cannot perform the operation because the command is already started. + Stop the command and try the operation again. + (or) + No command is added. + (or) + BeginInvoke is called on nested powershell. Nested + Powershell cannot be executed Asynchronously. + + + Object is disposed. + + + + + Verifies the settings for ThreadOptions and ApartmentState + + + + + + + Type for the input collection + Type for the output collection + + + + + + Cannot perform the operation because the command is already started. + Stop the command and try the operation again. + + + Object is disposed. + + + + + Called by both Sync Stop and Async Stop. + If isSyncCall is false, then an IAsyncResult object is returned which + can be passed back to the user + + + true if pipeline to be stopped synchronously, + false otherewise. + + + Valid for asynchronous stop + + + Valid for asynchronous stop + + + + + If there is no worker assigned yet, we need to emulate stop here. + In Asynchronous stop case, we need to send event change notifications + from a different thread. + + + + + + The client remote powershell associated with this + powershell object + + + + + The history string to be used for displaying + the history. + + + + + Extra commands to run in a single invocation + + + + + Currently running extra commands + + + + + Helper method to add running remote PowerShell to the remote runspace list. + + + + + Helper method to remove running remote PowerShell from the remote runspacelist. + + + + + AsyncResult object used to monitor pipeline creation and invocation. + This is needed as a Runspace may not be available in the RunspacePool. + + + + + + + + + + + + + + Sets the async result object that monitors a + BeginGetRunspace async operation on the + RunspacePool. + + + + + Gets the currently running pipeline. + + + + + This method gets invoked from a ThreadPool thread. + + + + + + This method gets invoked when PowerShell is not associated + with a RunspacePool. + + + User supplied Runspace if any. + + + true if Invoke() should be used to invoke pipeline + false if InvokeAsync() should be used. + + + All exceptions are caught and reported via a + PipelineStateChanged event. + + + + + This method gets called from a ThreadPool thread. + This method gets called from a RunspacePool thread when a + Runsapce is available. + + + AsyncResult object which monitors the asyncOperation. + + + All exceptions are caught and reported via a + PipelineStateChanged event. + + + + + Constructs a pipeline from the supplied runspace and invokes + pipeline either synchronously or asynchronously identified by + . + + + Runspace to create pipeline. Cannot be null. + + + if true, Invoke() is called + BeginInvoke() otherwise. + + + 1.BeginInvoke is called on nested powershell. Nested + Powershell cannot be executed Asynchronously. + + + true if the pipeline is created/invoked successfully. + false otherwise. + + + + + Stops the async operation. + + + + + + Internal clear is called when the invoke operation + is completed or failed or stopped. + + + + + Creates a PowerShell object from a PSObject property bag. + PSObject has to be in the format returned by ToPSObjectForRemoting method. + + PSObject to rehydrate + + PowerShell rehydrated from a PSObject property bag + + + Thrown if the PSObject is null. + + + Thrown when the PSObject is not in the expected format + + + + + Returns this object as a PSObject property bag + that can be used in a remoting protocol data object. + + This object as a PSObject property bag + + + + Suspends data arriving from remote session. + + + + + Resumes data arriving from remote session. + + + + + Blocking call that waits until the *current remote* data + queue at the transport manager is empty. This affects only + the current queue until it is empty. + + + + + Returns a job object which can be used to + control the invocation of the command with + AsJob Parameter + + Job object + + + + Streams generated by PowerShell invocations + + + + + PSDataStreams is the public interface to access the *Buffer properties in the PowerShell class + + + + + Gets or sets the error buffer. Powershell invocation writes + the error data into this buffer. + + + Cannot set to a null value. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets or sets the progress buffer. Powershell invocation writes + the progress data into this buffer. Can be null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets or sets the verbose buffer. Powershell invocation writes + the verbose data into this buffer. Can be null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets or sets the debug buffer. Powershell invocation writes + the debug data into this buffer. Can be null. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets or sets the warning buffer. Powershell invocation writes + the warning data into this buffer. Can be null. + + + Cannot set to a null value. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Gets or sets the information buffer. Powershell invocation writes + the warning data into this buffer. Can be null. + + + Cannot set to a null value. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Removes all items from all the data streams + + + + + Helper class for making sure Ctrl-C stops an active powershell invocation. + + + powerShell = PowerShell.Create(); + powerShell.AddCommand("Start-Sleep"); + powerShell.AddParameter("Seconds", 10); + powerShell.Runspace = remoteRunspace; + Collection<PSObject> result; + using (new PowerShellStopper(context, powerShell)) + { + result = powerShell.Invoke(); + } + + + + + Defines a PowerShell command / script object which can be used with + object. + + + + + Creates an empty PSCommand; a command or script must be added to this PSCommand before it can be executed. + + + + + Internal copy constructor + + + + + + Creates a PSCommand from the specified command + + Command object to use + + + + Add a command to construct a command pipeline. + For example, to construct a command string "get-process | sort-object", + + PSCommand command = new PSCommand("get-process").AddCommand("sort-object"); + + + + A string representing the command. + + + Powershell instance cannot be changed in its + current state. + + + A PSCommand instance with added. + + + This method is not thread safe. + + + cmdlet is null. + + + + + Add a cmdlet to construct a command pipeline. + For example, to construct a command string "get-process | sort-object", + + PSCommand command = new PSCommand("get-process").AddCommand("sort-object"); + + + + A string representing cmdlet. + + + if true local scope is used to run the script command. + + + Powershell instance cannot be changed in its + current state. + + + A PSCommand instance with added. + + + This method is not thread safe. + + + cmdlet is null. + + + + + Add a piece of script to construct a command pipeline. + For example, to construct a command string "get-process | foreach { $_.Name }" + + PSCommand command = new PSCommand("get-process"). + AddCommand("foreach { $_.Name }", true); + + + + A string representing the script. + + + A PSCommand instance with added. + + + This method is not thread-safe. + + + command is null. + + + Powershell instance cannot be changed in its + current state. + + + + + Add a piece of script to construct a command pipeline. + For example, to construct a command string "get-process | foreach { $_.Name }" + + PSCommand command = new PSCommand("get-process"). + AddCommand("foreach { $_.Name }", true); + + + + A string representing the script. + + + if true local scope is used to run the script command. + + + A PSCommand instance with added. + + + This method is not thread-safe. + + + command is null. + + + Powershell instance cannot be changed in its + current state. + + + + + Add a element to the current command + pipeline. + + + Command to add. + + + A PSCommand instance with added. + + + This method is not thread-safe. + + + command is null. + + + Powershell instance cannot be changed in its + current state. + + + + + Add a parameter to the last added command. + For example, to construct a command string "get-process | select-object -property name" + + PSCommand command = new PSCommand("get-process"). + AddCommand("select-object").AddParameter("property","name"); + + + + Name of the parameter. + + + Value for the parameter. + + + A PSCommand instance with added + to the parameter list of the last command. + + + This method is not thread safe. + + + Name is non null and name length is zero after trimming whitespace. + + + Powershell instance cannot be changed in its + current state. + + + + + Adds a switch parameter to the last added command. + For example, to construct a command string "get-process | sort-object -descending" + + PSCommand command = new PSCommand("get-process"). + AddCommand("sort-object").AddParameter("descending"); + + + + Name of the parameter. + + + A PSCommand instance with added + to the parameter list of the last command. + + + This method is not thread safe. + + + Name is non null and name length is zero after trimming whitespace. + + + Powershell instance cannot be changed in its + current state. + + + + + Adds an argument to the last added command. + For example, to construct a command string "get-process | select-object name" + + PSCommand command = new PSCommand("get-process"). + AddCommand("select-object").AddParameter("name"); + + + This will add the value "name" to the positional parameter list of "select-object" + cmdlet. When the command is invoked, this value will get bound to positional parameter 0 + of the "select-object" cmdlet which is "Property". + + + Value for the parameter. + + + A PSCommand instance parameter value added + to the parameter list of the last command. + + + Powershell instance cannot be changed in its + current state. + + + This method is not thread safe. + + + + + Adds an additional statement for execution + + For example, + + Runspace rs = RunspaceFactory.CreateRunspace(); + PowerShell ps = PowerShell.Create(); + + ps.Runspace = rs; + ps.AddCommand("Get-Process").AddArgument("idle"); + ps.AddStatement().AddCommand("Get-Service").AddArgument("audiosrv"); + ps.Invoke(); + + + + A PowerShell instance with the items in added + to the parameter list of the last command. + + + + + Gets the collection of commands from this PSCommand + instance. + + + + + The PowerShell instance this PSCommand is associated to, or null if it is an standalone command + + + + + Clears the command(s). + + + + + Creates a shallow copy of the current PSCommand. + + + A shallow copy of the current PSCommand + + + + + Initializes the instance. Called from the constructor. + + + Command to initialize the instance with. + + + true if the is script, + false otherwise. + + + if true local scope is used to run the script command. + + + Caller should check the input. + + + command is null + + + + + Event arguments passed to PSDataCollection DataAdded handlers. + + + + + Constructor + + + PowerShell InstanceId which added this data. + Guid.Empty, if the data is not added by a PowerShell + instance. + + + Index at which the data is added. + + + + + Index at which the data is added. + + + + + PowerShell InstanceId which added this data. + Guid.Empty, if the data is not added by a PowerShell + instance. + + + + + Event arguments passed to PSDataCollection DataAdding handlers. + + + + + Constructor + + + PowerShell InstanceId which added this data. + Guid.Empty, if the data is not added by a PowerShell + instance. + + + The actual item about to be added. + + + + + The item about to be added. + + + + + PowerShell InstanceId which added this data. + Guid.Empty, if the data is not added by a PowerShell + instance. + + + + build + Thread Safe buffer used with PowerShell Hosting interfaces. + + + + + Whether the enumerator needs to be blocking + by default + + + + + whether the ref count was incremented when + BlockingEnumerator was updated + + + + + Default Constructor + + + + + Creates a PSDataCollection that includes all the items in the IEnumerable and invokes Complete(). + + + Items used to initialize the collection + + + This constructor is useful when the user wants to use an IEnumerable as an input to one of the PowerShell.BeginInvoke overloads. + The invocation doesn't complete until Complete() is called on the PSDataCollection; this constructor does the Complete() on + behalf of the user. + + + + + Initializes a new instance with the specified capacity + + + + The number of elements that the new buffer can initially + store. + + + Capacity is the number of elements that the PSDataCollection can + store before resizing is required. + + + + + Wrap the argument in a PSDataCollection + + The value to convert + New collection of value, marked as Complete + + + + Wrap the argument in a PSDataCollection + + The value to convert + New collection of value, marked as Complete + + + + Wrap the argument in a PSDataCollection + + The value to convert + New collection of value, marked as Complete + + + + Wrap the argument in a PSDataCollection + + The value to convert + New collection of value, marked as Complete + + + + Wrap the argument in a PSDataCollection + + The value to convert + New collection of value, marked as Complete + + + + Wrap the argument in a PSDataCollection + + The value to convert + New collection of value, marked as Complete + + + + Wrap the argument in a PSDataCollection + + The value to convert + New collection of value, marked as Complete + + + + Construct the DataBuffer using the supplied + as the data buffer. + + + buffer wherer the elements are stored + + + Using this constructor will make the data buffer a wrapper on + top of the , which provides synchronized + access. + + + + + Creates a PSDataCollection from an ISerializable context + + Serialization information for this instance + The streaming context for this instance + + + + Event fired when objects are being added to the underlying buffer. + + + + + Event fired when objects are done being added to the underlying buffer + + + + + Event fired when the buffer is completed. + + + + + A boolean which determines if the buffer is open. + + + + + An int that tells the frequency of Data Added events fired. + Raises the DataAdded event only when data has been added a multiple of this many times, + or when collection can receive no more data, if further data is added past the last event + prior to completion. + + + + + Serializes all input by default. + This is supported only for PSDataCollections of PSObject. + + + + + Determines whether this PSDataCollection was created implicitly in support of + data collection (for example, a workflow that wants to capture output but hasn't + provided an instance of the PSDataCollection to capture it with.) + + + + + Internal tag for indicating a source object identifier for this collection. + + + + + If this flag is set to true, the items in the collection will be set to null when it is + traversed using a PSDataCollectionEnumerator + + + + + This flag is true when the collection has been enumerated at least once by a PSDataCollectionEnumerator + + + + + Completes insertions to the buffer. + Subsequent Inserts to the buffer will result in an InvalidOperationException + + + + + Indicates whether the data collection should + have a blocking enumerator by default. Currently + only when a PowerShell object is associated with + the data collection, a reference count is added + which causes the enumerator to be blocking. This + prevents the use of PSDataCollection without a + PowerShell object. This property fixes the same + + + + + If this is set to true, then the enumerator returned from + GetEnumerator() will never block. + + + + + Gets or sets the element at the specified index. + + + The zero-based index of the element to get or set. + + + Objects cannot be added to a closed buffer. + Make sure the buffer is open for Add and Insert + operations to succeed. + + + index is less than 0. + (or) + index is equal to or greater than Count. + + + + + Determines the index of a specific item in the buffer. + + + The object to locate in the buffer. + + + The index of item if found in the buffer; otherwise, -1. + + + + + Inserts an item to the buffer at the specified index. + + + The zero-based index at which item should be inserted. + + + The object to insert into the buffer. + + + Objects cannot be added to a closed buffer. + Make sure the buffer is open for Add and Insert + operations to succeed. + + + The index specified is less than zero or greater + than Count. + + + + + Removes the item at the specified index. + + + The zero-based index of the item to remove. + + + index is not a valid index in the buffer. + + + + + Gets the number of elements contained in the buffer + + + + + Gets a value indicating whether the buffer is read-only. + + + + + Adds an item to the thread-safe buffer + + + item to add + + + Objects cannot be added to a closed buffer. + Make sure the buffer is open for Add and Insert + operations to succeed. + + + + + Removes all items from the buffer + + + + + Determines whether the buffer contains an element with a specific value. + + + The object to locate in the buffer. + + + true if the element value is found in the buffer; otherwise false. + + + + + Copies the elements of the buffer to a specified array, starting at a particular index. + + + The destination Array for the elements of type T copied from the buffer. + + + The zero-based index in the array at which copying begins. + + + array is multidimensional. + (or) + arrayIndex is equal to or greater than the length of array. + (or) + The number of elements in the source buffer is greater than the + available space from arrayIndex to the end of the destination array. + (or) + Type T cannot be cast automatically to the type of the destination array. + + + array is a null reference + + + arrayIndex is less than 0. + + + + + Removes the first occurrence of a specified item from the buffer. + + + The object to remove from the buffer. + + + true if item was successfully removed from the buffer; otherwise, false. + + + + + Returns an enumerator that iterates through the + elements of the buffer. + + + An IEnumerator for objects of the type stored in the buffer. + + + + + Adds an element to the buffer. + + + The object to add to the buffer. + + + The position into which the new element was inserted. + + + Objects cannot be added to a closed buffer. + Make sure the buffer is open for Add and Insert + operations to succeed. + + + value reference is null. + (or) + value is not of the correct generic type T for the buffer. + + + + + Determines whether the collection contains an + element with a specific value. + + + The object to locate in the collection + + + true if the element value is found in the collection; + otherwise false. + + + value reference is null. + (or) + value is not of the correct generic type T for the buffer. + + + + + Determines the zero-based index of an element in the buffer. + + + The element in the buffer whose index is being determined. + + + The index of the value if found in the buffer; otherwise, -1. + + + value reference is null. + (or) + value is not of the correct generic type T for the buffer. + + + + + Inserts an object into the buffer at a specified index. + + + The zero-based index at which value is to be inserted. + + + The object to insert into the buffer. + + + index is not a valid index in the buffer. + + + value reference is null. + (or) + value is not of the correct generic type T for the buffer. + + + + + Removes the first occurrence of a specified object + as an element from the buffer. + + + The object to be removed from the buffer. + + + value reference is null. + (or) + value is not of the correct generic type T for the buffer. + + + + + Gets a value that indicates whether the buffer is fixed in size. + + + + + Gets a value that indicates whether the buffer is read-only. + + + + + Gets or sets the element at the specified index. + + + The zero-based index of the element to get or set. + + + index is less than 0. + (or) + index is equal to or greater than Count. + + + value reference is null. + (or) + value is not of the correct generic type T for the buffer. + + + + + Gets a value that indicates whether the buffer is synchronized. + + + + + Gets the object used to synchronize access to the thread-safe buffer + + + + + Copies the elements of the collection to a specified array, + starting at a particular index. + + + The destination Array for the elements of type T copied + from the buffer. + + + The zero-based index in the array at which copying begins. + + + array is multidimensional. + (or) + arrayIndex is equal to or greater than the length of array. + (or) + The number of elements in the source buffer is greater than the + available space from arrayIndex to the end of the destination array. + + + array is a null reference + + + arrayIndex is less than 0. + + + + + Returns an enumerator that iterates through the buffer. + + + An IEnumerator for objects of the type stored in the buffer. + + + + + Makes a shallow copy of all the elements currently in this collection + and clears them from this collection. This will not result in a blocking call. + + Calling this method might have side effects on the enumerator. When this + method is called, the behavior of the enumerator is not defined. + + + A new collection with a copy of all the elements in the current collection. + + + + + Makes a shallow copy of all the elements currently in this collection + and clears them from this collection. This will not result in a blocking call. + + Calling this method might have side effects on the enumerator. When this + method is called, the behavior of the enumerator is not defined. + + + A new collection with a copy of all the elements in the current collection. + + maximum number of elements to read + + + + Inserts an item into the buffer at a specified index. + + + InstanceId of PowerShell instance adding this data. + Guid.Empty if not initiated by a PowerShell instance. + + + The zero-based index of the buffer where the object is to be inserted + + + The object to be inserted into the buffer. + + + The index specified is less than zero or greater + than Count. + + + + + Removes the item at a specified index + + + The zero-based index of the buffer where the object is to be removed. + + + The index specified is less than zero or greater + than the number of items in the buffer. + + + + + Implements the ISerializable contract for serializing a PSDataCollection + + Serialization information for this instance + The streaming context for this instance + + + + Waitable handle for caller's to block until new data + is added to the underlying buffer + + + + + Utility method to signal handles and raise events + in the consistent order. + + + PowerShell InstanceId which added this data. + Guid.Empty, if the data is not added by a PowerShell + instance. + + + Index at which the data is added. + + + + + Inserts an item into the buffer at a specified index. + The caller should make sure the method call is + synchronized. + + + InstanceId of PowerShell instance adding this data. + Guid.Empty if this is not initiated by a PowerShell instance. + + + The zero-based index of the buffer where the object is + to be inserted. + + + The object to be inserted into the buffer. + + + Objects cannot be added to a closed buffer. + Make sure the buffer is open for Add and Insert + operations to succeed. + + + The index specified is less than zero or greater + than Count. + + + + + Adds an item to the thread-safe buffer + + + InstanceId of PowerShell instance adding this data. + Guid.Empty if this is not initiated by a PowerShell instance. + + + item to add + + + Objects cannot be added to a closed buffer. + Make sure the buffer is open for Add and Insert + operations to succeed. + + + + + Adds the elements of an ICollection to the end of the buffer. + + + InstanceId of PowerShell instance adding this data. + + + The ICollection whose elements should be added to the end of + the buffer. + + + is null. + + + value is not of the correct generic type T for the buffer. + + + + + Increment counter to keep track of active PowerShell instances + using this buffer. This is used only internally. + + + + + Decrement counter to keep track of active PowerShell instances + using this buffer. This is used only internally. + + + + + Returns the index of first occurece of + in the buffer. + This method is not thread safe. + + + The object to locate in the buffer. + + + 0 based index of item if found, + -1 otherwise. + + + + + Checks if the is of type T. + + + Value to verify. + + + value reference is null. + (or) + value is not of the correct generic type T for the buffer. + + + + + Sync object for this collection + + + + + Reference count variable + + + + + Indicates whether or not the collection should pulse idle events + + + + + Fires an idle event + + + + + Pulses the collection + + + + + Public dispose method + + + + + Release all the resources + + if true, release all managed resources + + + + Interface to support PSDataCollectionEnumerator. + Needed to provide a way to get to the non-blocking + MoveNext implementation. + + + + + + Enumerator for PSDataCollection. This enumerator blocks until + either all the PowerShell operations are compeleted or the + PSDataCollection is closed. + + + + + + Constructor + + + PSDataCollection to enumerate. + + + Controls if the enumerator is blocking by default or not. + + + + + Gets the element in the collection at the current position + of the enumerator. + + + For better performance, this property does not throw an exception + if the enumerator is positioned before the first element or after + the last element; the value of the property is undefined. + + + + + Gets the element in the collection at the current position + of the enumerator. + + + For better performance, this property does not throw an exception + if the enumerator is positioned before the first element or after + the last element; the value of the property is undefined. + + + + + Advances the enumerator to the next element in the collection. + + + true if the enumerator successfully advanced to the next element; + otherwise, false. + + + This will block if the original collection is attached to any + active PowerShell instances and the original collection is not + closed. + + + + + Advances the enumerator to the next element in the collection. + + + true if the enumerator successfully advanced to the next element; + otherwise, false. + + true - to block when no elements are available + + + + Resets the enumerator to its initial position, + which is before the first element in the collection. + + + + + + + + + + Class that represents various informational buffers like + verbose, debug, warning, progress, information used with command invocation. + + + + + Default constructor. + + + Guid of Powershell instance creating this buffers. + Whenver an item is added to one of the buffers, this id is + used to notify the buffer about the PowerShell instance adding + this data. + + + + + A buffer representing Progress record objects of a PowerShell command invocation. + Can be null. + + + + + A buffer representing Verbose objects of a PowerShell command invocation. + Can be null. + + + + + A buffer representing Debug objects of a PowerShell command invocation. + Can be null. + + + + + A buffer representing Warning objects of a PowerShell command invocation. + Can be null. + + + + + A buffer representing Information objects of a PowerShell command invocation. + Can be null. + + + + + Adds item to the progress buffer. + The item is added to the buffer along with PowerShell InstanceId. + + + + + + Adds item to the verbose buffer. + The item is added to the buffer along with PowerShell InstanceId. + + + + + + Adds item to the debug buffer. + The item is added to the buffer along with PowerShell InstanceId. + + + + + + Adds item to the warning buffer. + The item is added to the buffer along with PowerShell InstanceId. + + + + + + Adds item to the information buffer. + The item is added to the buffer along with PowerShell InstanceId. + + + + + + Implements utility methods that might be used by Hosts. + + + + + Gets a PSObject whose base object is currentUserCurrentHost and with notes for the other 4 parameters. + + The profile file name for all users and all hosts. + The profile file name for all users and current host. + The profile file name for cuurrent user and all hosts. + The profile name for cuurrent user and current host. + A PSObject whose base object is currentUserCurrentHost and with notes for the other 4 parameters. + + + + Gets an array of commands that can be run sequentially to set $profile and run the profile commands. + + The id identifying the host or shell used in profile file names. + + + + + Gets the object that serves as a value to $profile and the paths on it + + The id identifying the host or shell used in profile file names. + used from test not to overwrite the profile file names from development boxes + path for all users and all hosts + path for current user and all hosts + path for all users current host + path for current user and current host + the object that serves as a value to $profile + + + + + Gets an array of commands that can be run sequentially to set $profile and run the profile commands. + + The id identifying the host or shell used in profile file names. + used from test not to overwrite the profile file names from development boxes + + + + + Used to get all profile file names for the current or all hosts and for the current or all users. + + null for all hosts, not null for the specified host + false for all users, true for the current user. + The profile file name matching the parameters. + + + + Used to get all profile file names for the current or all hosts and for the current or all users. + + null for all hosts, not null for the specified host + false for all users, true for the current user. + used from test not to overwrite the profile file names from development boxes + The profile file name matching the parameters. + + + + Used internally in GetFullProfileFileName to get the base path for all users profiles. + + The shellId to use. + the base path for all users profiles. + + + + Gets the first lines of . + + string we want to limit the number of lines + maximum number of lines to be returned + The first lines of . + + + + Remove the GUID from the message if the message is in the pre-defined format + + + + + + + + Create suggestion with string rule and suggestion. + + + + + Create suggestion with scriptblock rule and suggestion. + + + + + Create suggestion with scriptblock rule and scriptblock suggestion with arguments. + + + + + Get suggestion text from suggestion scriptblock + + + + + Get suggestion text from suggestion scriptblock with arguments. + + + + + Returns the prompt used in remote sessions: "[machine]: basePrompt" + + + + + Create a configured remote runspace from provided name. + + + + + + + + PSEditFunction script string. + + + + + CreatePSEditFunction script string. + + + + + RemovePSEditFunction script string. + + + + + Open file event. + + + + + Defines a class which allows simple execution of commands from CLR languages + + + + + Runspace on which commands are invoked + + + + + Create a RunspaceInvoke for invoking commands. This uses + a runspace with default PSSnapins. + + + + + Creates a RunspaceInvoke for invoking commands. Underlying Runspace is created using + specified RunspaceConfiguration + + RunspaceConfiguration used for creating the runspace + + + Thrown when runspaceConfiguration is null + + + + + Creates a RunspaceInvoke for invoking commands. Underlying Runspace is created using the + specified console file. + + Console file used for creating the underlying + runspace. + + Thrown when consoleFilePath is null + + + Thrown when errors occurs in loading one or more PSSnapins. + + + + + Create RunspaceInvoke for invoking command in specified + runspace. + + + Runspace must be opened state + + + + Invoke the specified script + + msh script to invoke + Output of invocation + + + + Invoke the specified script and passes specified input to the script + + msh script to invoke + input to script + Output of invocation + + + + Invoke the specified script and passes specified input to the script. + + msh script to invoke + input to script + this gets errors from script + output of invocation + + is the non-terminating error stream + from the command. + In this release, the objects read from this PipelineReader + are PSObjects wrapping ErrorRecords. + + + + + Set to true when object is disposed + + + + + Dispose underlying Runspace + + + + + Protected dispose which can be overridden by derived classes. + + + + + + The purpose of this class is to hide an object (mask it) and replace it + with a substitute temporarily. This is used in pushing and popping + runspaces. It is also used to temporarily set a PowerShell object's host as + the Runspace object's host when the PowerShell object is executed. + + + + + New value. + + + + + Old value. + + + + + Old value. + + + + + Value. + + + + + Is overridden. + + + + + Constructor for ObjectRef. + + + + + Override. + + + + + Revert. + + + + + The RemoteHostMethodId enum. + + + + + Stores information about remote host methods. By storing information + in this data structure we only need to transport enums on the wire. + + + + + Interface type. + + + + + Interface type. + + + + + Name. + + + + + Name. + + + + + Return type. + + + + + Return type. + + + + + Parameter types. + + + + + Parameter types. + + + + + Create a new instance of RemoteHostMethodInfo. + + + + + Look up. + + + + + This class is designed to contains the pertinent information about a Remote Connection, + such as remote computer name, remote user name etc. + It is also used to access remote connection capability and configuration information. + Currently the session is identified by the InstanceId of the runspacePool associated with it + This can change in future if we start supporting multiple runspacePools per session. + + + + + Remote computer address in URI format. + + + + + User credential to be used on the remote computer. + + + + + Capability information for the client side. + + + + + Capability information received from the server side. + + + + + This is the shellName which indentifies the PowerShell configuration to launch + on remote machine. + + + + + This abstract class defines the client view of the remote connection. + + + + + Client side user calls this function to create a new remote session. + User needs to register event handler to ConnectionEstablished and ConnectionClosed to + monitor the actual connection state. + + + + + This event handler is raised when the state of session changes + + + + + Close the connection to the remote computer in an asynchronous manner. + Client side user can register an event handler with ConnectionClosed to minitor + the connection state. + + + + + Disconnects the remote session in an asynchronous manner + + + + + Reconnects the remote session in an asynchronous manner + + + + + Connects to an existing remote session + User needs to register event handler to ConnectionEstablished and ConnectionClosed to + monitor the actual connection state. + + + + + Deleagate used to report connecion URI redirections to the application + + + New URI to which the connection is being redirected to. + + + + + ServerRemoteSessionDataStructureHandler instance for this session + + + + + Protocol version negotiated by the server + + + + + remote runspace pool if used, for this session + + + + + Get the runspace pool with the matching id + + + Id of the runspace to get + + + + + + Remote Session Implementation + + + + + Creates a new instance of ClientRemoteSessionImpl + + + The RunspacePool object this session should map to. + + + + + + + Creates a Remote Session Asynchronously. + + + + + Connects to a existing Remote Session Asynchronously by executing a Connect negotiation algorithm + + + + + Closes Session Connection Asynchronously. + + + Caller should register for ConnectionClosed event to get notified + + + + + Temporaritly suspends connection to a connected remote session + + + + + Restores connection to a disconnected remote session. Negotiation has already been performed before + + + + + This event handler is raised when the state of session changes + + + + + Handles changes in data structure handler state + + + + Event argument which contains the new state + + + + + Start the key exchange process + + + + + Complete the key exchange process + + + + + Handles an encrypted session key received from the other side + + sender of this event + arguments that contain the remote + public key + + + + Handles a request for public key from the server + + send of this event, unused + arguments describing this event, unused + + + + Examines the negotiation packet received from the server + + + + + + + Verifies the negotiation packet received from the server + + + Capablities of remote session + + + The method returns true if the capability negotiation is successful. + Otherwise, it returns false. + + + 1. PowerShell client does not support the PSVersion {1} negotiated by the server. + Make sure the server is compatible with the build {2} of PowerShell. + 2. PowerShell client does not support the SerializationVersion {1} negotiated by the server. + Make sure the server is compatible with the build {2} of PowerShell. + + + + + Public method for dispose + + + + + Release all resources + + if true, release all managed resources + + + + This class implements a Finite State Machine (FSM) to control the remote connection on the client side. + There is a similar but not identical FSM on the server side for this connection. + + The FSM's states and events are defined to be the same for both the client FSM and the server FSM. + This design allows the client and server FSM's to + be as similar as possible, so that the complexity of maintaining them is minimized. + + This FSM only controls the remote connection state. States related to runspace and pipeline are managed by runspace + pipeline themselves. + + This FSM defines an event handling matrix, which is filled by the event handlers. + The state transitions can only be performed by these event handlers, which are private + to this class. The event handling is done by a single thread, which makes this + implementation solid and thread safe. + + This implementation of the FSM does not allow the remote session to be reused for a connection + after it is been closed. This design decision is made to simplify the implementation. + However, the design can be easily modified to allow the reuse of the remote session + to reconnect after the connection is closed. + + + + + Event handling matrix. It defines what action to take when an event occur. + [State,Event]=>Action + + + + + Current state of session + + + + + Timer to be used for key exchange + + + + + indicates that the client has previously completed the session key exchange + + + + + this is to queue up a disconnect request when a key exchange is in process + the session will be disconnect once the exchange is complete + intermediate disconnect requests are tracked by this flag + + + + + processes events in the queue. If there are no + more events to process, then sets eventsInProcess + variable to false. This will ensure that another + thread which raises an event can then take control + of processing the events + + + + + Raises the StateChanged events which are queued + All StateChanged events will be raised once the + processing of the State Machine events are + complete + + + + + Unique identifier for this state machine. Used + in tracing + + + + + Handler to be used in cases, where setting the state is the + only task being performed. This method also asserts + if the specified event is valid for the current state of + the state machine + + sender of this event + event args + + + + Handles the timeout for key exchange + + sender of this event + + + + Handler to be used in cases, where raising an event to + the state needs to be performed. This method also + asserts if the specified event is valid for + the current state of the state machine + + sender of this event + event args + + + + Creates an instance of ClientRemoteSessionDSHandlerStateMachine + + + + + Helper method used by dependents to figure out if the RaiseEvent + method can be short-circuited. This will be useful in cases where + the dependent code wants to take action immediately instead of + going through state machine. + + + + + + This method is used by all classes to raise a FSM event. + The method will queue the event. The event queue will be handled in + a thread safe manner by a single dedicated thread. + + + This parameter contains the event to be raised. + + + optional bool indicating whether to clear currently queued events + + + + If the parameter is null. + + + + + This is the private version of raising a FSM event. + It can only be called by the dedicated thread that processes the event queue. + It calls the event handler + in the right position of the event handling matrix. + + + The parameter contains the actual FSM event. + + + + If the parameter is null. + + + + + This is a readonly property available to all other classes. It gives the FSM state. + Other classes can query for this state. Only the FSM itself can change the state. + + + + + This event indicates that the FSM state changed. + + + + + This is the handler for CreateSession event of the FSM. This is the begining of everything + else. From this moment on, the FSM will proceeds step by step to eventually reach + Established state or Closed state. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for ConnectSession event of the FSM. This is the begining of everything + else. From this moment on, the FSM will proceeds step by step to eventually reach + Established state or Closed state. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for NegotiationSending event. + It sets the new state to be NegotiationSending and + calls data structure handler to send the negotiation packet. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for Close event. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + If the parameter does not contain remote data. + + + + + Handles a fatal error message. Throws a well defined error message, + which contains the reason for the fatal error as an inner exception. + This way the internal details are not surfaced to the user + + sender of this event, unused + arguments describing this event + + + + Sets the state of the state machine. Since only + one thread can be manipulating the state at a time + the state is not synchronized + + new state of the state machine + reason why the state machine is set + to the new state + + + + Implements ServerRemoteSessionDataStructureHandler + + + + + Creates an instance of ClientRemoteSessionDSHandlerImpl + + + + + Makes a create call asynchronously. + + + + + This callback is called on complete of async connect call + + + + + + + Close the connection asynchronously. + + + + + Sends the negotiation package asynchronously + + + + + This event indicates that the connection state has changed. + + + + + Clubing negotiation packet + runspace creation and then doing transportManager.ConnectAsync(). + This will save us 2 network calls by doing all the work in one network call. + + + + + Transport reported an error saying that uri is redirected. This method + will perform the redirection to the new URI by doing the following: + 1. Close the current transport manager to clean resources + 2. Raise a warning that URI is getting redirected. + 3. Using the new URI, ask the same transport manager to redirect + Step 1 is performed here. Step2-3 is performed in another method + + + + newURIString is a null reference. + + + uriString is empty. + The scheme specified in uriString is invalid. + uriString contains too many slashes. + The password specified in uriString is invalid. + The host name specified in uriString is invalid. + + + + + This is step 2 of URI redirection. This is called after the current transport manager + is closed. This is usually called from the close complete callback. + + + + + + Handler which handles transport errors. + + + + + + + Dispatches data when it arrives from the input queue + + + + arg which contains the data recevied from input queue + + + + + This processes the object received from transport which are + targetted for session + + + argument containg the data object + + + + + This processes the object received from transport which are + not targetted for session + + + received data. + + + + + public method for dispose + + + + + release all resources + + if true, release all managed resources + + + + Send the specified local public key to the remote end + + local public key as a string + + + + Raise the public key received event + + received data + This method is a hook to be called + from the transport manager + + + + Contains OriginInfo for an error record + + This class should only be used when + defining origin information for error records. + In case of output objects, the information + should directly be added to the object as + properties + + + + The HostEntry information for the machine on + which this information originated + + + + + Runspace instance ID + + + + + Error record source instance ID + + + + + public constructor + + machine name + instance id of runspace + + + + public constructor + + machine name + instance id of runspace + instance id for the origin object + + + + Overriden ToString() method + + returns the computername + + + + Executes methods on the client. + + + + + Transport manager. + + + + + Client host. + + + + + Client runspace pool id. + + + + + Client power shell id. + + + + + Remote host call. + + + + + Remote host call. + + + + + Constructor for ClientMethodExecutor. + + + + + Create a new ClientMethodExecutor object and then dispatch it. + + + + + Is runspace pushed. + + + + + Execute. + + + + + Execute. + + + + + Execute. + + + + + Execute void. + + + + + Provides a reference to a runspace that can be used to temporarily + push a remote runspace on top of a local runspace. This is + primary used by Start-PSSession. The purpose of this class is to hide + the CreatePipeline method and force it to be used as defined in this + class. + + + + + Runspace ref. + + + + + Constructor for RunspaceRef. + + + + + Revert. + + + + + Runspace. + + + + + Is runspace overridden. + + + + + Parse ps command using script block. + + + + + Create ps command. + + + + + Creates the PSCommand when the runspace is not overriden + + + + + Create pipeline. + + + + + Create pipeline. + + + + + Create nested pipeline. + + + + + Override. + + + + + Override inside a safe lock + + runspace to override + object to use in synchronization + set is runspace pushed + + + + + + + + + + + PSStreamObjectType is for internal (PowerShell) consumption and should not be treated as a public API. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + struct which describes whether an object written + to an ObjectStream is of type - output, error, + verbose, debug. + PSStreamObject is for internal (PowerShell) consumption + and should not be treated as a public API. + + + + + + + + + + + + + + + + + Handle the object obtained from an ObjectStream's reader + based on its type + + cmdlet to use for outputting the object + Used by Receive-Job to suppress inquire preference. + + + + Handle the object obtained from an ObjectStream's reader + based on its type + + cmdlet to use for outputting the object + + Suppresses prompt on messages with Inquire preference. + Needed for Receive-Job + + + + Handle the object obtained from an ObjectStream's reader + based on its type + + cmdlet to use for outputting the object + + Overrides the inquire preference, used in Receive-Job to suppress prompts. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Provides an enumerator for iterating through a multi-dimensional array. + This is needed to encode multi-dimensional arrays in remote host methods. + + + + + Current. + + + + + Lengths. + + + + + Current. + + + + + Constructor for Indexer. + + + + + Check lengths non negative. + + + + + Get enumerator. + + + + + Reset. + + + + + Move next. + + + + + This class is used to hold a fragment of remoting PSObject for transporting to remote computer. + + A large remoting PSObject will be broken into fragments. Each fragment has a ObjectId and a FragementId. + The first fragment has a StartFragment marker. The last fragment also an EndFragment marker. + These fragments can be reassembled on the receiving + end by sequencing the fragment ids. + + Currently control objects (Control-C for stopping a pipeline execution) is not + really fragmented. These objects are small. They are just wrapped into a single + fragment. + + + + + SFlag stands for the IsStartFragment. It is the bit value in the binary encoding. + + + + + EFlag stands for the IsEndFragment. It is the bit value in the binary encoding. + + + + + HeaderLength is the total number of bytes in the binary encoding header. + + + + + _objectIdOffset is the offset of the ObjectId in the binary encoding. + + + + + _fragmentIdOffset is the offset of the FragmentId in the binary encoding. + + + + + _flagsOffset is the offset of the byte in the binary encoding that contains the SFlag, EFlag and CFlag. + + + + + _blobLengthOffset is the offset of the BlobLength in the binary encoding. + + + + + _blobOffset is the offset of the Blob in the binary encoding. + + + + + Default Constructor + + + + + Used to construct a fragment of PSObject to be sent to remote computer. + + + + ObjectId of the fragment. + Caller should make sure this is not less than 0. + + + FragmentId within the object. + Caller should make sure this is not less than 0. + + + true if this is a EndFragment. + + + + + All fragments of the same PSObject have the same ObjectId + + + + + FragmentId starts from 0. It increases sequentially by an increment of 1. + + + + + The first fragment of a PSObject. + + + + + The last fragment of a PSObject. + + + + + Blob length. This enables scenarios where entire byte[] is + not filled for the fragment. + + + + + This is the actual data in bytes form. + + + + + This method generate a binary encoding of the FragmentedRemoteObject as follows: + ObjectId: 8 bytes as long, byte order is big-endian. this value can only be non-negative. + FragmentId: 8 bytes as long, byte order is big-endian. this value can only be non-negative. + FlagsByte: 1 byte: + 0x1 if IsStartOfFragment is true: This is called S-flag. + 0x2 if IsEndOfFragment is true: This is called the E-flag. + 0x4 if IsControl is true: This is called the C-flag. + + The other bits are reserved for future use. + Now they must be zero when sending, + and they are ignored when receiving. + BlobLength: 4 bytes as int, byte order is big-endian. this value can only be non-negative. + Blob: BlobLength number of bytes. + + 0 1 2 3 + 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | | + +-+-+-+-+-+-+-+- ObjectId +-+-+-+-+-+-+-+-+ + | | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | | + +-+-+-+-+-+-+-+- FragmentId +-+-+-+-+-+-+-+-+ + | | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + |reserved |C|E|S| + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | BlobLength | + +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | Blob ... + +-+-+-+-+-+-+-+- + + + + The binary encoded FragmentedRemoteObject to be ready to pass to WinRS Send API. + + + + + Extract the objectId from a byte array, starting at the index indicated by + startIndex parameter. + + + + + The objectId. + + + If fragmentBytes is null. + + + If startIndex is negative or fragmentBytes is not large enought to hold the entire header of + a binary encoded FragmentedRemoteObject. + + + + + Extract the FragmentId from the byte array, starting at the index indicated by + startIndex parameter. + + + + + + If fragmentBytes is null. + + + If startIndex is negative or fragmentBytes is not large enought to hold the entire header of + a binary encoded FragmentedRemoteObject. + + + + + Extract the IsStartFragment value from the byte array, starting at the index indicated by + startIndex parameter. + + + + + True is the S-flag is set in the encoding. Otherwise false. + + + If fragmentBytes is null. + + + If startIndex is negative or fragmentBytes is not large enought to hold the entire header of + a binary encoded FragmentedRemoteObject. + + + + + Extract the IsEndFragment value from the byte array, starting at the index indicated by + startIndex parameter. + + + + + True if the the E-flag is set in the encoding. Otherwise false. + + + If fragmentBytes is null. + + + If startIndex is negative or fragmentBytes is not large enought to hold the entire header of + a binary encoded FragmentedRemoteObject. + + + + + Extract the BlobLength value from the byte array, starting at the index indicated by + startIndex parameter. + + + + + The BlobLength value. + + + If fragmentBytes is null. + + + If startIndex is negative or fragmentBytes is not large enought to hold the entire header of + a binary encoded FragmentedRemoteObject. + + + + + A stream used to store serialized data. This stream holds serialized data in the + form of fragments. Every "fragment size" data will hold a blob identifying the fragment. + The blob has "ObjectId","FragmentId","Properties like Start,End","BlobLength" + + + + + Callback that is called once a fragmented data is available. + + + Data that resulted in this callback. + + + true if data represents EndFragment of an object. + + + + + Creates a stream to hold serialized data. + + + fragmentSize to be used while creating fragment boundaries. + + + + + Use this constructor carefully. This will not write data into internal + streams. Instead this will make the SerializedDataStream call the + callback whenever a fragmented data is available. It is upto the caller + to figure out what to do with the data. + + + fragmentSize to be used while creating fragment boundaries. + + + If this is not null, then callback will get notified whenever fragmented + data is available. Read() will return null in this case always. + + + + + Start using the stream exclusively (to write data). The stream can be entered only once. + If you want to Enter again, first Exit and then Enter. + This method is not thread-safe. + + + + + Notify that the stream is not used to write anymore. + This method is not thread-safe. + + + + + Writes a block of bytes to the current stream using data read from buffer. + The base MemoryStream is written to only if "FragmentSize" is reached. + + + The buffer to read data from. + + + The byte offset in buffer at which to begin writing from. + + + The maximum number of bytes to write. + + + + + Writes a byte to the current stream. + + + + + + Returns a byte[] which holds data of fragment size (or) serialized data of + one object, which ever is greater. If data is not currently available, then + the callback is registerd and called whenever the data is available. + + + callback to call once the data becomes available. + + + a byte[] holding data read from the stream + + + + + Read the currently accumulated data in queued memory streams + + + + + + + + + + + + + + + This method provides a thread safe way to get an object id. + + + An object Id in integer. + + + + + + + + + + + + + + + + + + + + Gets the length of the stream in bytes. + + + + + + + + + + This is a No-Op intentionally as there is nothing + to flush. + + + + + + + + + + + + + + + + + + + This class performs the fragmentation as well as defragmentation operations of large objects to be sent + to the other side. A large remoting PSObject will be broken into fragments. Each fragment has a ObjectId + and a FragementId. The last fragment also has an end of fragment marker. These fragments can be reassembled + on the receiving end by sequencing the fragment ids. + + + + + Constructor which initializes fragmentor with FragmentSize. + + + size of each fragment + + + + + + The method performs the fragmentation operation. + All fragments of the same object have the same ObjectId. + All fragments of the same object have the same ObjectId. + Each fragment has its own Fragment Id. Fragment Id always starts from zero (0), + and increments sequentially with an increment of 1. + The last fragment is indicated by an End of Fragment marker. + + + The object to be fragmented. Caller should make sure this is not null. + + + Caller specified dataToStore to which the fragements are added + one-by-one + + + + + The deserialization context used by this fragmentor. DeserializationContext + controls the amount of memory a deserializer can use and other things. + + + + + The size limit of the fragmented object. + + + + + TypeTable used for Serialization/Deserialization. + + + + + Serialize an PSObject into a byte array. + + + + + Converts the bytes back to PSObject. + + + The bytes to be deserialized. + + + The deserialized object. + + + If the deserialized object is null. + + + + + This enum defines the error message ids used by the resource manager to get + localized messages. + + Related error ids are organized in a pre-defined range of values. + + + + + This static class defines the resource base name used by remoting errors. + It also provides a convenience method to get the localized strings. + + + + + This method is a convenience method to retrieve the localized string. + + + This parameter holds the string in the resource file. + + + Optional parameters required by the resource string formating information. + + + The formatted localized string. + + + + + This exception is used by remoting code to indicated a data structure handler related error. + + + + + Default construtor. + + + + + This constuctor takes a localized string as the error message. + + + A localized string as an error message. + + + + + This constuctor takes a localized string as the error message, and an inner exception. + + + A localized string as an error message. + + + Inner exception. + + + + + This constructor takes an error id and optional parameters. + + + The resource string in the base resource file. + + + Optional parameters required to format the resource string. + + + + + This constuctor takes an inner exception and an error id. + + + Inner excetion. + + + The resource string in the base resource file. + + + Optional parameters required to format the resource string. + + + + + This constructor is required by serialization. + + + + + + + Set the default ErrorRecord. + + + + + This exception is used by remoting code to indicate an error condition in network operations. + + + + + This is the default constructor. + + + + + This constructor takes a localized error message. + + + A localized error message. + + + + + This constructor takes a localized message and an inner exception. + + + Localized error message. + + + Inner exception. + + + + + This constructor takes an error id and optional parameters. + + + The error id in the base resource file. + + + The resource string in the base resource file. + + + Optional parameters required to format the resource string. + + + + + This constuctor takes an inner exception and an error id. + + + Inner excetion. + + + The resource string in the base resource file. + + + Optional parameters required to format the resource string. + + + + + This constructor is required by serialization. + + + + + 1. info is null. + + + + + Serializes the exception data. + + serialization information + streaming context + + + + Set the default ErrorRecord. + + + + + The error code from native library API call. + + + + + This the message from the native transport layer. + + + + + This exception is used by PowerShell's remoting infrastructure to notify a URI redirection + exception. + + + + + This is the default constructor. + + + + + This constructor takes a localized error message. + + + A localized error message. + + + + + This constructor takes a localized message and an inner exception. + + + Localized error message. + + + Inner exception. + + + + + This constuctor takes an inner exception and an error id. + + + Inner excetion. + + + The resource string in the base resource file. + + + Optional parameters required to format the resource string. + + + + + This constructor is required by serialization. + + + + + 1. info is null. + + + + + This constructor takes an redirect URI, error id and optional parameters. + + + String specifying a redirect location. + + + The error id in the base resource file. + + + The resource string in the base resource file. + + + Optional parameters required to format the resource string. + + + + + Serializes the exception data. + + serialization information + streaming context + + + + String specifying a redirect location. + + + + + This exception is used by PowerShell Direct errors. + + + + + This constuctor takes a localized string as the error message. + + + A localized string as an error message. + + + + + Defines the different states of the operation + + + + + Start operation completed successfully + + + + + Stop operation completed successfully + + + + + class describing event args which a helper class + implementing IThrottleOperation need to throw + + + + + operation state + + + + + the original event which actually resulted in this + event being raised + + + + + Interface which needs to be implemented by a class which wants to + submit operations to the throttle manager + + Any synchronization that needs to be performed between + StartOperation and StopOperation in the class that implements this + interface should take care of handling the same. For instance, + say New-Runspace class internally uses a class A which implements + the IThrottleOperation interface. StartOperation of this + class opens a runspace asynchronously on a remote machine. Stop + operation is supposed to cancel the opening of this runspace. Any + synchronization/cleanup issues should be handled by class A. + + + + + This method should handle the actual operation whcih need to be + controlled and performed. Examples of this can be Opening remote + runspace, invoking expression in a remote runspace, etc. Once + an event is successfully recieved as a result of this function, + the handler has to ensure that it raises an OperationComplete + event with StartComplete or StopComplete for the throttle manager + to handle + + + + + This method should handle the situation when a stop signal is sent + for this operation. For instance, when trying to open a set of + remote runspaces, the user might hit ctrl-C. In which case, the + pending runspaces to be opened will actually be signalled through + this method to stop operation and return back. This method also + needs to be asynchronous. Once an event is successfully recieved + as a result of this function, the handler has to ensure that it + raises an OperationComplete event with StopComplete for the + throttle manager to handle. It is important that this function + does not raise a StartComplete which will then result in the + ThrottleComplete event not being raised by the throttle manager + + + + + Event which will be triggered when the operation is complete. It is + assumed that all the operations perfomed by StartOperation and + StopOperation are asynchronous. The submitter of operations may + subscribe to this event to know when its complete (or it can handle + the synchronization with its scheduler) and the throttle + manager will subscribe to this event to know that its complete + and to start the operation on the next item. + + + + + This Property indicates whether an operation has been stopped + + + In the initial implementation of ThrottleManager stopping + individual operations was not supported. When the support + for stopping individual operations was added, there was + the following problem - if an opertaion is not there in + the pending queue and in the startOperationQueue as well, + then the following two scenarios are possible + (a) Operation was started and start completed + (b) Operation was started and stopped and both completed + This property has been added in order to disambiguate between + these two cases. When this property is set, StopOperation + need not be called on the operation (this can be when the + operation has stop completed or stop has been called and is + pending) + + + + + Class which handles the throttling operations. This class is singleton and therefore + when used either across cmdlets or at the infrastructure level it will ensure that + there aren't more operations by way of accumalation than what is intended by design. + + This class contains a queue of items, each of which has the + + IThrottleOperation interface implemented. To begin with + THROTTLE_LIMIT number of items will be taken from the queue and the operations on + them will be executed. Subsequently, as and when operations complete, new items from + the queue will be taken and their operations executed. + + Whenever a consumer submits or adds operations, the methods will start as much + operations from the queue as permitted based on the throttle limit. Also the event + handler will start an operation once a previous event is completed. + + The queue used is a generic queue of type IThrottleOperations, as it will offer better + performance + + + Throttle limit is currently set to 50. This value may be modified later based + on a figure that we may arrive at out of experience. + + + + Allows the consumer to override the default throttle limit + + + + + Submit a list of operations that need to be throttled + + list of operations to be throttled + Once the operations are added to the queue, the method will + start operations from the queue + + + + + Add a single operation to the queue + + Operation to be added + + + + Stop throttling operations + + Calling this method will also affect other cmdlets which + could have potentially submitComplete operations for processing + + number of objects cleared from queue without being + stopped + + + + Stop the specified operation + + operation which needs to be stopped + + + + Signals that no more operations can be submitComplete + for throttling + + + + + Event raised when throttling all operations is complete + + + + + Public constructor + + + + + Handler which handles state change for the object which implements + the + interface + + sender of the event + Event information object which describes the event + which triggered this method + + + + Method used to start the operation on one item in the queue + + + + + Start operations to the limit possible from the queue + + + + + Raise the throttle manager events once the conditions are met + + + + + default throttle limit - the maximum number of operations + to be processed at a time + + + + + Maximum value that the throttle limit can be set to + + + + + All pending operations + + + + + List of items on which a StartOperation has + been called + + + + + List of items on which a StopOperation has + been called + + + + + Object used to synchronize access to the queues + + + + + Dispose method of IDisposable. Any cmdlet that uses + the throttle manager needs to call this method from its + Dipose method + + + + + Internal dispose method which does the actual dispose + operations and finalize suppressions + + If method is called from + disposing of destructor + + + + Blocks caller trying to get the value of an object of type T + until the value is set. After the set all future gets are + unblocked. + + + + + Value. + + + + + Value was set. + + + + + Value. + + + + + Constructor for AsyncObject. + + + + + Class that encapsulates the information carried by the RunspaceInitInfo PSRP message + + + + + Min Runspaces setting on the server runspace pool + + + + + Max Runspaces setting on the server runspace pool + + + + + Constructor + + + + + + + The ServerDispatchTable class. + + + + + Provides a thread-safe dictionary that maps call-ids to AsyncData objects. + When a thread tries to do a get on a hashtable key (callId) that has not been + set it is blocked. Once the key's value is set the thread is released. This is + used to synchronize server calls with their responses. + + This code needs to be thread-safe. The locking convention is that only the + internal or public methods use locks and are thread-safe. The private methods + do not use locks and are not thread-safe (unless called by the internal and + public methods). If the private methods becomes internal or public + please review the locking. + + + + + Response async objects. + + + + + Next call id. + + + + + Void call id. + + + + + Create new call id. + + + + + Get response async object. + + + + + Waits for response PSObject to be set and then returns it. Returns null + if wait was aborted. + + + + + default return value (in case the remote end did not send response). + + + + + Set response. + + + + + Abort call. + + + + + Abort calls. + + + + + Get all calls. + + + + + Abort all calls. + + + + + Executes methods; can be encoded and decoded for transmission over the + wire. + + + + + Method name. + + + + + Method id. + + + + + Parameters. + + + + + Method info. + + + + + Call id. + + + + + Call id. + + + + + Computer name to be used in messages + + + + + Constructor for RemoteHostCall. + + + + + Encode parameters. + + + + + Decode parameters. + + + + + Encode. + + + + + Decode. + + + + + Is void method. + + + + + Execute void method. + + + + + Get remote runspace to close. + + + + + My method base. + + + + + Execute non void method. + + + + + Execute non void method on object. + + + + + Get the object that this method should be invoked on. + + + + + Is set should exit. + + + + + Is set should exit or pop runspace. + + + + + This message performs various security checks on the + remote host call message. If there is a need to modify + the message or discard it for security reasons then + such modifications will be made here + + computer name to use in + warning messages + a collection of remote host calls which will + have to be executed before this host call can be + executed + + + + Provides the modified caption for the given caption + Used in ensuring that remote prompt messages are + tagged with "Windows PowerShell Credential Request" + + caption to modify + new modified caption + + + + Provides the modified message for the given one + Used in ensuring that remote prompt messages + contain a warning that they originate from a + different computer + + original message to modify + computername to include in the + message + message which contains a warning as well + + + + Creates a warning message which displays to the user a + warning stating that the remote host computer is + actually attempting to read a line as a secure string + + computer name to include + in warning + resource string to use + a constructed remote host call message + which will display the warning + + + + Creates a warning message which displays to the user a + warning stating that the remote host computer is + attempting to read the host's buffer contents and that + it was suppressed + + computer name to include + in warning + a constructed remote host call message + which will display the warning + + + + Encapsulates the method response semantics. Method responses are generated when + RemoteHostCallPacket objects are executed. They can contain both the return values of + the execution as well as exceptions that were thrown in the RemoteHostCallPacket + execution. They can be encoded and decoded for transporting over the wire. A + method response can be used to transport the result of an execution and then to + simulate the execution on the other end. + + + + + Call id. + + + + + Call id. + + + + + Method id. + + + + + Return value. + + + + + Exception. + + + + + Constructor for RemoteHostResponse. + + + + + Simulate execution. + + + + + Encode and add return value. + + + + + Decode return value. + + + + + Encode and add exception. + + + + + Decode exception. + + + + + Encode. + + + + + Decode. + + + + + The RemoteHostExceptions class. + + + + + New remote runspace does not support push runspace exception. + + + + + New decoding failed exception. + + + + + New not implemented exception. + + + + + New remote host call failed exception. + + + + + New decoding error for error record exception. + + + + + New remote host data encoding not supported exception. + + + + + New remote host data decoding not supported exception. + + + + + New unknown target class exception. + + + + + Encodes and decodes data types and exceptions for transmission across + the wire. Used for transmitting remote host method call parameters, return + values, and exceptions. The convention is that EncodeObject converts the + objects into a type that can be serialized and deserialized without losing + fidelity. For example, EncodeObject converts Version objects to string, + and converts more complex classes into property bags on PSObjects. This + guarantees that transmitting on the wire will not change the encoded + object's type. + + + + + Is known type. + + + + + Is encoding allowed for class or struct. + + + + + Encode class or struct. + + + + + Decode class or struct. + + + + + Is collection. + + + + + Encode collection. + + + + + Decode collection. + + + + + Is dictionary. + + + + + Encode dictionary. + + + + + Decode dictionary. + + + + + Encode ps object. + + + + + Decode ps object. + + + + + Encode exception. + + + + + Decode exception. + + + + + Upcast field description subclass and drop attributes. + + + + + Encode object. + + + + + Decode object. + + + + + Encode and add as property. + + + + + Decode property value. + + + + + Encode object array. + + + + + Decode object array. + + + + + Encode object with type. + + + + + Decode object with type. + + + + + Array is zero based. + + + + + Encode array. + + + + + Decode array. + + + + + Is object dictionary type. + + + + + Encode object dictionary. + + + + + Decode object dictionary. + + + + + Safely get base object. + + + + + Safely cast object. + + + + + Safely get property value. + + + + + This class contains information about the capability of one side of the connection. The client + side and the server side will have their own capabilities. These two sets of capabilities will + be used in a capability negotiation algorithm to determine if it is possible to establish a + connection between the client and the server. + + + + + Constructor for RemoteSessionCapability. + + should not be called from outside, use create methods instead + + + + + Added to enable ClrFacade.GetUninitializedObject to instantiate an uninitialized version of this class. + + + + + Create client capability. + + + + + Create server capability. + + + + + This is static property which gets Current TimeZone in byte format + by using ByteFormatter. + This is static to make client generate this only once. + + + + + Gets the TimeZone of the destination machine. This may be null + + + + + The HostDefaultDataId enum. + + + + + The HostDefaultData class. + + + + + Data. + + + + + Private constructor to force use of Create. + + + + + Indexer to provide clean access to data. + + + + + Has value. + + + + + Set value. + + + + + Get value. + + + + + Returns null if host is null or if reading RawUI fields fails; otherwise returns a valid object. + + + + + The HostInfo class. + + + + + Host default data. + + + + + Host default data. + + + + + Is host null. + + + + + Is host null. + + + + + Is host ui null. + + + + + Is host ui null. + + + + + Is host raw ui null. + + + + + Is host raw ui null. + + + + + Use runspace host. + + + + + Use runspace host. + + + + + Constructor for HostInfo. + + + + + Added to enable ClrFacade.GetUninitializedObject to instantiate an uninitialized version of this class. + + + + + Check host chain. + + + + + This is the object used by Runspace,pipeline,host to send data + to remote end. Transport layer owns breaking this into fragments + and sending to other end + + + + + Constructs a RemoteDataObject from its + individual components. + + + Destination this object is going to. + + + Payload type this object represents. + + + Runspace id this object belongs to. + + + PowerShell (pipeline) id this object belongs to. + This may be null if the payload belongs to runspace. + + + Actual payload. + + + + + Gets the target (Runspace / Pipeline / Powershell / Host) + the payload belongs to. + + + + + + + + + + + + + + + + Creates a RemoteDataObject by deserialzing . + + + + Defragmetor used to deserialize an object. + + + + + + Seriliazes the object into the stream specified. The serialization mechanism uses + UTF8 encoding to encode data. + + + + fragmentor used to serialize and fragment the object. + + + + + Serializes only the header portion of the object. ie., runspaceId, + powerShellId, destinaion and dataType. + + + place where the serialized data is stored into. + + + + + + + + + + + + + + + + + + + + + + + + + + + Shared named pipe utilities. + + + + + Create a pipe name based on process information. + E.g., "PSHost.ProcessStartTime.ProcessId.DefaultAppDomain.ProcessName" + + Process Id + Pipe name + + + + Create a pipe name based on process information. + E.g., "PSHost.ProcessStartTime.ProcessId.DefaultAppDomain.ProcessName" + + Process object + Pipe name + + + + Create a pipe name based on process Id and appdomain name information. + E.g., "PSHost.ProcessStartTime.ProcessId.DefaultAppDomain.ProcessName" + + Process Id + Name of process app domain to connect to. + Pipe name + + + + Create a pipe name based on process and appdomain name information. + E.g., "PSHost.ProcessStartTime.ProcessId.DefaultAppDomain.ProcessName" + + Process object + Name of process app domain to connect to. + Pipe name + + + + Returns the current process AppDomain name. + + AppDomain Name string + + + + Native API for Named Pipes + + + + + The size, in bytes, of this structure. Set this value to the size of the SECURITY_ATTRIBUTES structure. + + + + + A pointer to a security descriptor for the object that controls the sharing of it. + + + + + A Boolean value that specifies whether the returned handle is inherited when a new process is created. + + + + + Initializes a new instance of the SECURITY_ATTRIBUTES class + + + + + Event arguments for listener thread end event. + + + + + Exception reson for listener end event. Can be null + which indicates listener thread end is not due to an error. + + + + + True if listener should be restarted after ending. + + + + + Constructor. + + Listener end reason + Restart listener + + + + Light wrapper class for BCL NamedPipeServerStream class, that + creates the named pipe server with process named pipe name, + having correct access restrictions, and provides a listener + thread loop. + + + + + Returns the Named Pipe stream object. + + + + + Returns the Named Pipe name. + + + + + Returns true if listener is currently running. + + + + + Name of session configuration. + + + + + Accessor for the named pipe reader. + + + + + Accessor for the named pipe writer. + + + + + Returns true if object is currently disposed. + + + + + Buffer size for PSRP fragmentor. + + + + + Event raised when the named pipe server listening thread + ends. + + + + + Creates a RemoteSessionNamedPipeServer with the current process and AppDomain information. + + RemoteSessionNamedPipeServer + + + + Constructor. Creates named pipe server with provided pipe name. + + Named Pipe name + + + + Helper method to create a PowerShell transport named pipe via native API, along + with a returned .Net NamedPipeServerStream object wrapping the named pipe. + + Named pipe server name. + Named pipe namespace name. + Named pipe core name. + + NamedPipeServerStream + + + + Dispose + + + + + Starts named pipe server listening thread. When a client connects this thread + makes a callback to implement the client communication. When the thread ends + this object is disposed and a new RemoteSessionNamedPipeServer must be created + and a new listening thread started to handle subsequent client connections. + + Connection callback. + + + + Wait for client connection. + + + + + Process listening thread. + + client callback delegate + + + + Ensures the namedpipe singleton server is running and waits for a client connection. + This is a blocking call that returns after the client connection ends. + This method supports PowerShell running in "NamedPipeServerMode", which is used for + PowerShell Direct Windows Server Container connection and management. + + name of the configuration to use + + + + Creates the process named pipe server object singleton and + starts the client listening thread. + + + + + Base class for RemoteSessionNamedPipeClient and ContainerSessionNamedPipeClient. + + + + + Accessor for the named pipe reader. + + + + + Accessor for the named pipe writer. + + + + + Name of pipe. + + + + + Dispose + + + + + Connect to named pipe server. This is a blocking call until a + connection occurs or the timeout time has ellapsed. + + Connection attempt timeout in milliseconds + + + + Closes the named pipe. + + + + + Light wrapper class for BCL NamedPipeClientStream class, that + creates the named pipe name and initiates connection to + target named pipe server. + + + + + Constructor. Creates Named Pipe based on process object. + + Target process object for pipe. + AppDomain name or null for default AppDomain + + + + Constructor. Creates Named Pipe based on process Id. + + Target process Id for pipe. + AppDomain name or null for default AppDomain + + + + Constructor. Creates Named Pipe based on name argument. + + Named Pipe name + + + + Constructor. + + + + + + + + Abort connection attempt. + + + + + Helper method to open a named pipe via native APIs and return in + .Net NamedPipeClientStream wrapper object. + + + + + Light wrapper class for BCL NamedPipeClientStream class, that + creates the named pipe name and initiates connection to + target named pipe server inside Windows Server container. + + + + + Constructor. Creates Named Pipe based on process Id, app domain name and container object root path. + + Target process Id for pipe. + AppDomain name or null for default AppDomain + Container OB root. + + + + Helper method to open a named pipe via native APIs and return in + .Net NamedPipeClientStream wrapper object. + + + + + Returns the Hyper-V socket object. + + + + + Returns the network stream object. + + + + + Accessor for the Hyper-V socket reader. + + + + + Accessor for the Hyper-V socket writer. + + + + + Returns true if object is currently disposed. + + + + + Dispose + + + + + Returns the Hyper-V socket endpoint object. + + + + + Returns the Hyper-V socket object. + + + + + Returns the network stream object. + + + + + Accessor for the Hyper-V socket reader. + + + + + Accessor for the Hyper-V socket writer. + + + + + Returns true if object is currently disposed. + + + + + Dispose + + + + + Connect to Hyper-V socket server. This is a blocking call until a + connection occurs or the timeout time has ellapsed. + + The credential used for authentication + The configuration name of the PS session + Whether this is the first connection + + + + Count of commands in progress + + + + + The mediator will take actions from the StdIn stream and responds to them. + It will replace StdIn,StdOut and StdErr stream with TextWriter.Null's. This is + to make sure these streams are totally used by our Mediator. + + + + + + + + + This represents an abstraction for server transport manager. + + + + + Sends an object from the server end. The object is fragmented and each fragement is sent + separately. The call blocks until all the fragements are sent to the client. If there + is a failure sending any of the fragments WSManTransportErrorOccured event is raised. + + + + + true to immediately send data to client. + + + reported as true when host message requests are sent to client + + + + + Sends an object to the server end. The object is fragmented and each fragement is sent + separately. The call blocks until all the fragements are sent to the client. If there + is a failure sending any of the fragments WSManTransportErrorOccured event is raised. + + + + true to immediately send data to client. + + + reported as true when sending host message requests are reported true + + + + + Reports error from a thread pool thread. Thread Pool is used in order to + not block Pipeline closing. This method is generally called when the + TransportManager fails to Send data (SendDataToClient). Pipeline Execution + Thread directly calls SendDataToClient method from its execution thread, + so we cannot call Stop from the same thread (as it will result in a deadlock) + + + + + Raises the closing event. + + + + + Event that is raised when this transport manager is closing. + + + + + + + + + flush data by sending data immediately to the client. + + + reported as true when sending host message requests to client + + + reported as true when data being reported is as object boundary, i.e the corresponding fragment is an end fragment + + + + + + + + + + + + + message describing why the transport manager must be closed + + + + + Prepare the transport manager to send data (because a command + is about to start). This is used by underlying infrastructure + to send ACK to client..so client can start sending input and + other data to server. + + + + + This represents an abstraction for server session transport manager. + + + + + Server RunspacePool driver uses this method to attach to a server transport manager. + + + + + + + Server RunspacePool driver uses this method to remove association of a command transport manager + from a session transport manager. + + + + + + A container for helper functions that accomplish common client and server tasks. + + + + + A helper method to extract a base-64 encoded XML element from a specified input + buffer. The calls required are not compatible with the Managed C++ CoreCLR + mscorlib, but this operation is supported as managed C# code. + + The input buffer to search. It must be base-64 encoded XML. + The XML tag used to identify the value to extract. + The extracted tag converted from a base-64 string. + + + + Responsible for routing messages from the server, blocking the callers and + then waking them up when there is a response to their message. + + + + + Default client pipeline id. + + + + + Client runspace pool id. + + + + + Client power shell id. + + + + + Server dispatch table. + + + + + Remote host call data type. + + + + + Transport manager. + + + + + Constructor for ServerMethodExecutor. + + + + + Handle remote host response from client. + + + + + Abort all calls. + + + + + Execute void method. + + + + + Execute void method. + + + + + Execute method. + + + + + Execute method. + + + + + + By design, on the server side, each remote connection is represented by + a ServerRemoteSession object, which contains one instance of this class. + + This class holds 4 pieces of information. + 1. Client capability: This is the capability received during the negotiation process. + 2. Server capability: This comes from default parameters. + 3. Client configuration: This holds the remote session related configuration parameters that + the client sent to the server. This parameters can be changed and resent after the connection + is established. + 4. Server configuration: this holds the server sider configuration parameters. + + All these together define the connection level parameters. + + + + + The constructor instantiates a server capability object and a server configuration + using default values. + + + + + This property represents the capability that the server receives from the client. + + + + + This property is the server capability generated on the server side. + + + + + True if negotiation from client is succeeded...in which case ClienCapability + is the capability that server agreed with. + + + + + This class is designed to be the server side controller of a remote connection. + + It contains a static entry point that the PowerShell server process will get into + the server mode. At this entry point, a runspace configuration is passed in. This runspace + configuration is used to instantiate a server side runspace. + + This class controls a remote connection by using a Session data structure handler, which + in turn contains a Finite State Machine, and a transport mechanism. + + + + + + Raised when session is closed. + + + + + This constructor inistantiates a ServerRemoteSession object and + a ServerRemoteSessionDataStructureHandler object. + + + Details about the user creating this session. + + + The resource URI for which this session is being created + + + Initialization Parameters xml passed by WSMan API. This data is read from the config + xml. + + + The transport manager this session should use to send/receive data + + + + + + Creates a server remote session for the supplied + and . + + + + + Initialization Parameters xml passed by WSMan API. This data is read from the config + xml. + + + Optional configuration endpoint name for OutOfProc sessions + + + InitialSessionState provider with does + not exist on the remote server. + + + + + Used by OutOfProcessServerMediator to create a remote session. + + + + + + + + + + This indicates the remote session object is Client, Server or Listener. + + + + + This is the data dispatcher for the whole remote connection. + This dispatcher is registered with the server side input queue's InputDataReady event. + When the input queue has received data from client, it calls the InputDataReady listeners. + + This dispatcher distinguishes the negotiation packet as a special case. For all other data, + it dispatches the data through Finite State Machines DoMessageReceived handler by raising the event + MessageReceived. The FSM's DoMessageReceived handler further dispatches to the receiving + components: such as runspace or pipeline which have their own data dispatching methods. + + + This parameter is not used by the method, in this implementation. + + + This parameter contains the remote data received from client. + + + + If the parameter is null. + + + + If the parameter does not contain remote data. + + + + If the destination of the data is not for server. + + + + + Have received a public key from the other side + Import or take other action based on the state + + sender of this event, unused + event arguments which contains the + remote public key + + + + Start the key exchange process + + + + + Complete the Key exchange process + + + + + Send an encrypted session key to the client + + + + + This property returns the ServerRemoteSessionContext object created inside + this object's contructor. + + + + + This property returns the ServerRemoteSessionDataStructureHandler object created inside + this object's contructor. + + + + + Let the session clear its resources. + + + + + + ExecutesConnect. expects client capability and connect_runspacepool PSRP + messages in connectData. + If negotiation is successful and max and min runspaces in connect_runspacepool + match the assiciated runspace pool parameters, it builds up server capability + and runspace_initinfo in connectResponseData. + This is a version of Connect that executes the whole connect alogirithm in one single + hop. + This algorithm is being executed synchronously without associating with state machine. + + + + The operation is being outside the statemachine becuase of multiple reasons assiciated with design simplicity + - Support automatic disconnect and let wsman server stack take care of connection state + - The response data should not travel in transports output stream but as part of connect response + - We want this operation to be synchronous + + + + + + + + + 1. InitialSessionState cannot be null. + 2. Non existent InitialSessionState provider for the shellID + + + + + This handler method runs the negotiation algorithm. It decides if the negotiation is succesful, + or fails. + + + + This parameter contains the client negotiation capability packet. + + + + If the parameter is null. + + + + + Handle session closing event to close runspace pool drivers this sesion is hosting. + + + + + + + This handles closing of any resource used by this session. + Resources used are RunspacePoolDriver, TransportManager. + + + + + + + This is the server side remote session capability negotiation algorithm. + + + This is the client capability that the server received from client. + + + If the negotiation is on a connect (and not create) + + + The method returns true if the capability negotiation is successful. + Otherwise, it returns false. + + + 1. PowerShell server does not support the PSVersion {1} negotiated by the client. + Make sure the client is compatible with the build {2} of PowerShell. + 2. PowerShell server does not support the SerializationVersion {1} negotiated by the client. + Make sure the client is compatible with the build {2} of PowerShell. + + + + + + + + + + + + Used by Command Session to apply quotas on the command transport manager. + This method is here because ServerRemoteSession knows about InitialSessionState. + + + Command TransportManager to apply the quota on. + + + + + This class implements a Finite State Machine (FSM) to control the remote connection on the server side. + There is a similar but not identical FSM on the client side for this connection. + + The FSM's states and events are defined to be the same for both the client FSM and the server FSM. + This design allows the client and server FSM's to + be as similar as possible, so that the complexity of maintaining them is minimized. + + This FSM only controls the remote connection state. States related to runspace and pipeline are managed by runspace + pipeline themselves. + + This FSM defines an event handling matrix, which is filled by the event handlers. + The state transitions can only be performed by these event handlers, which are private + to this class. The event handling is done by a single thread, which makes this + implementation solid and thread safe. + + This implementation of the FSM does not allow the remote session to be reused for a connection + after it is been closed. This design decision is made to simplify the implementation. + However, the design can be easily modified to allow the reuse of the remote session + to reconnect after the connection is closed. + + + + + timer used for key exchange + + + + + This constructor instantiates a FSM object for the server side to control the remote connection. + It initializes the event handling matrix with event handlers. + It sets the initial state of the FSM to be Idle. + + + This is the remote session object. + + + If the parameter is null. + + + + + This is a readonly property available to all other classes. It gives the FSM state. + Other classes can query for this state. Only the FSM itself can change the state. + + + + + Helper method used by dependents to figure out if the RaiseEvent + method can be short-circuited. This will be useful in cases where + the dependent code wants to take action immediately instead of + going through state machine. + + + + + + This method is used by all classes to raise a FSM event. + The method will queue the event. The event queue will be handled in + a thread safe manner by a single dedicated thread. + + + This parameter contains the event to be raised. + + + If the parameter is null. + + + + + processes events in the queue. If there are no + more events to process, then sets eventsInProcess + variable to false. This will ensure that another + thread which raises an event can then take control + of processing the events + + + + + This is the private version of raising a FSM event. + It can only be called by the dedicated thread that processes the event queue. + It calls the event handler + in the right position of the event handling matrix. + + + The parameter contains the actual FSM event. + + + + If the parameter is null. + + + + + This is the handler for Start event of the FSM. This is the begining of everything + else. From this moment on, the FSM will proceeds step by step to eventually reach + Established state or Closed state. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for NegotiationPending event. + NegotiationPending state can be in reached in the following cases + 1. From Idle to NegotiationPending (during startup) + 2. From Negotiation(Response)Sent to NegotiationPending. + + + + This parameter contains the FSM event. + + + If the parameter is null. + + + + + This is the handler for the NegotiationReceived event. + It sets the new state to be NegotiationReceived. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + If the parameter is not NegotiationReceived event or it does not hold the + client negotiation packet. + + + + + This is the handler for NegotiationSending event. + It sets the new state to be NegotiationSending, and sends the server side + negotiation packet by queuing it on the output queue. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for NegotiationSendCompleted event. + It sets the new state to be NegotiationSent. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for the NegotiationCompleted event. + It sets the new state to be Established. It turns off the negotiation timeout timer. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for MessageReceived event. It dispatches the data to various components + that uses the data. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + If the parameter does not contain remote data. + + + + + This is the handler for ConnectFailed event. In this implementation, this should never + happen. This is because the IO channel is stdin/stdout/stderr redirection. + Therefore, the connection is a dummy operation. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + If the parameter does not contain ConnectFailed event. + + + + + This is the handler for FatalError event. It directly calls the DoClose, which + is the Close event handler. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + If the parameter does not contains FatalError event. + + + + + Handle connect event - this is raised when a new client tries to connect to an existing session + No changes to state. Calls into the session to handle any post connect operations + + + + + + + This is the handler for Close event. It closes the connection. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for CloseFailed event. + It simply force the new state to be Closed. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for CloseCompleted event. It sets the new state to be Closed. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for NegotiationFailed event. + It raises a Close event to trigger the connection to be shutdown. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for NegotiationTimeout event. + If the connection is already Established, it ignores this event. + Otherwise, it raises a Close event to trigger a close of the connection. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for SendFailed event. + This is an indication that the wire layer IO is no longer connected. So it raises + a Close event to trigger a connection shutdown. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This is the handler for ReceivedFailed event. + This is an indication that the wire layer IO is no longer connected. So it raises + a Close event to trigger a connection shutdown. + + + + This parameter contains the FSM event. + + + + If the parameter is null. + + + + + This method contains all the logic for handling the state machine + for key exchange. All the different scenarios are covered in this + + sender of this event, unused + event args + + + + Handles the timeout for key exchange + + sender of this event + + + + This method is designed to be a cleanup routine after the connection is closed. + It can also be used for graceful shutdown of the server process, which is not currently + implemented. + + + + + Set the FSM state to a new state. + + + The new state. + + + Optional parameter that can provide additional information. This is currently not used. + + + + + This abstract class defines the server side data structure handler that a remote connection has + at the remote session level. + There are two other data structure handler levels: + 1) at the runspace level, + 2) at the pipeline level. + + This session level data structure handler defines what can be done at the session level. + + + + + Constructor does no special initialization. + + + + + Makes a connect call asynchronously. + + + + + Send capability negotiation asynchronously. + + + + + This event indicates that a client's capability negotiation packet has been received. + + + + + Close the connection asynchronously. + + + Message describing why the session is closing + + + + + Event that raised when session datastructure handler is closing. + + + + + This event indicates a request for creating a new runspace pool + has been received on the server side + + + + + A reference to the Finite State Machine. + + + + + Transport manager used by this data structure handler + + + + + This method is used by the client data dispatching mechanism. + + + This parameter contains the remote data from the client. + + + + + This class is an implementation of the abstract class ServerRemoteSessionDataStructureHandler. + + + + + Constructs a ServerRemoteSession handler using the supplied transport manager. The + supplied transport manager will be used to send and receive data from the remote + client. + + + + + + + Calls the transport layer connect to make a connection to the listener. + + + + + This method sends the server side capability negotitation packet to the client. + + + + + This event indicates that the client capability negotiation packet has been received. + + + + + Event that raised when session datastructure handler is closing. + + + + + Send the encrypted session key to the client side + + encrypted session key + as a string + + + + Send request to the client for sending a public key + + + + + Raise the public key received event + + received data + This method is a hook to be called + from the transport manager + + + + This method calls the transport level call to close the connection to the listener. + + + Message describing why the session is closing + + + If the transport call fails. + + + + + This event indicates that the client has requested to create a new runspace pool + on the server side + + + + + A reference to the FSM object. + + + + + This method is used by the input queue dispatching mechanism. + It examines the data and takes appropriate actions. + + + The received client data. + + + + If the parameter is null. + + + + + The ServerRemoteHost class. + + + + + Instance id. + + + + + Remote host user interface. + + + + + Server method executor. + + + + + Client runspace pool id. + + + + + Client power shell id. + + + + + Host info. + + + + + Transport manager. + + + + + Runspace + + + + + ServerDriverRemoteHost + + + + + Constructor for ServerRemoteHost. + + + + + Server method executor. + + + + + The user interface. + + + + + Name. + + + + + Version. + + + + + Instance id. + + + + + Is runspace pushed. + + + + + Runspace. + + + + + Host info. + + + + + Allows a push runspace on this remote server host instance, regardless of + transport being used. + + + + + Set should exit. + + + + + Enter nested prompt. + + + + + Exit nested prompt. + + + + + Notify begin application. + + + + + Notify end application. + + + + + Current culture. + + + + + Current ui culture. + + + + + Push runspace. + + + + + Pop runspace. + + + + + The remote host class for the ServerRunspacePoolDriver. + + + + + True if runspace is pushed + + + + + Push runspace to use for remote command execution + + RemoteRunspace + + + + Pop runspace + + + + + Server Debuger + + + + + Pushed runspace or null + + + + + Allows a push runspace on this remote server host instance, regardless of + transport being used. + + + + + When true will propagate pop call to client after popping runspace from this + host. Used for OutOfProc remote sessions in a restricted (pushed) remote runspace, + where a pop (exit session) should occur. + + + + + The ServerRemoteHostUserInterface class. + + + + + Raw ui. + + + + + Remote host. + + + + + Server method executor. + + + + + Constructor for ServerRemoteHostUserInterface. + + + + + Raw ui. + + + + + Server remote host. + + + + + Read line. + + + + + Prompt for choice. + + + + + Prompt for choice. User can select multiple choices + + + + + + + + + + Prompt. + + + + + Write. + + + + + Write. + + + + + Write line. + + + + + Write line. + + + + + Write line. + + + + + Write error line. + + + + + Write debug line. + + + + + Write progress. + + + + + Write verbose line. + + + + + Write warning line. + + + + + Read line as secure string. + + + + + Prompt for credential. + + + + + Prompt for credential. + + + + + The ServerRemoteHostRawUserInterface class. + + + + + Remote host user interface. + + + + + Server method executor. + + + + + Host default data. + + + + + Constructor for ServerRemoteHostRawUserInterface. + + + + + Foreground color. + + + + + Background color. + + + + + Cursor position. + + + + + Window position. + + + + + Cursor size. + + + + + Buffer size. + + + + + Window size. + + + + + Window title. + + + + + Max window size. + + + + + Max physical window size. + + + + + Key available. + + + + + Read key. + + + + + Flush input buffer. + + + + + Scroll buffer contents. + + + + + Set buffer contents. + + + + + Set buffer contents. + + + + + Get buffer contents. + + + + + This class channels WSMan server specific notifications to subscribers. + One example is shutting down. + + + + + Event raised when shutting down WSMan server. + + + + + Event raised when active sessions in an endpoint are changed. + + + + + Raising shutting down WSMan server event. + + + + + Raising ActiveSessionsChanged event. + + + + + Holds the event arguments when active sessions count changed + + + + + Creates a new ActiveSessionsChangedEventArgs instance. + + + + + + ActiveSessionsCount + + + + + IMPORTANT: proxy configuration is supported for HTTPS only; for HTTP, the direct + connection to the server is used + + + + + ProxyAccessType is not specified. That means Proxy information (ProxyAccessType, ProxyAuthenticationMechanism + and ProxyCredential)is not passed to WSMan at all. + + + + + use the Internet Explorer proxy configuration for the current user. + Internet Explorer proxy settings for the current active network connection. + This option requires the user profile to be loaded, so the option can + be directly used when called within a process that is running under + an interactive user account identity; if the client application is running + under a user context different than the interactive user, the client + application has to explicitly load the user profile prior to using this option. + + + + + proxy settings configured for WinHTTP, using the ProxyCfg.exe utility + + + + + Force autodetection of proxy + + + + + do not use a proxy server - resolves all host names locally + + + + + Options for a remote PSSession + + + + + Creates a new instance of + + + + + The MaximumConnectionRedirectionCount parameter enables the implicit redirection functionality. + -1 = no limit + 0 = no redirection + + + + + If false, underlying WSMan infrastructure will compress data sent on the network. + If true, data will not be compressed. Compression improves performance by + reducing the amount of data sent on the network. Compression my require extra + memory consumption and CPU usage. In cases where available memory / CPU is less, + set this property to "true". + By default the value of this property is "false". + + + + + If true then Operating System won't load the user profile (i.e. registry keys under HKCU) on the remote server + which can result in a faster session creation time. This option won't have any effect if the remote machine has + already loaded the profile (i.e. in another session). + + + + + By default, ProxyAccessType is None, that means Proxy information (ProxyAccessType, + ProxyAuthenticationMechanism and ProxyCredential)is not passed to WSMan at all. + + + + + The following is the definition of the input parameter "ProxyAuthentication". + This parameter takes a set of authentication methods the user can select + from. The available options should be as follows: + - Negotiate: Use the default authentication (as defined by the underlying + protocol) for establishing a remote connection. + - Basic: Use basic authentication for establishing a remote connection + - Digest: Use Digest authentication for establishing a remote connection + + Default is Negotiate. + + + + + The following is the definition of the input parameter "ProxyCredential". + + + + + When connecting over HTTPS, the client does not validate that the server + certificate is signed by a trusted certificate authority (CA). Use only when + the remote computer is trusted by other means, for example, if the remote + computer is part of a network that is physically secure and isolated or the + remote computer is listed as a trusted host in WinRM configuration + + + + + Indicates that certificate common name (CN) of the server need not match the + hostname of the server. Used only in remote operations using https. This + option should only be used for trusted machines. + + + + + Indicates that certificate common name (CN) of the server need not match the + hostname of the server. Used only in remote operations using https. This + option should only be used for trusted machines + + + + + The duration for which PowerShell remoting waits before timing out + for any operation. The user would like to tweak this timeout + depending on whether he/she is connecting to a machine in the data + center or across a slow WAN. + + Default: 3*60*1000 == 3minutes + + + + + Specifies that no encryption will be used when doing remote operations over + http. Unencrypted traffix is not allowed by default and must be enabled in + the local configuration + + + + + Indicates the request is encoded in UTF16 format rather than UTF8 format; + UTF8 is the default. + + + + + Uses Service Principal Name (SPN) along with the Port number during authentication. + + + + + Determines how server in disconnected state deals with cached output + data when the cache becomes filled. + Default value is 'block mode' where command execution is blocked after + the server side data cache becomes filled. + + + + + Number of times a connection will be re-attempted when a connection fails due to network + issues. + + + + + Culture that the remote session should use + + + + + UI culture that the remote session should use + + + + + Total data (in bytes) that can be received from a remote machine + targeted towards a command. If null, then the size is unlimited. + Default is unlimited data. + + + + + Maximum size (in bytes) of a deserialized object received from a remote machine. + If null, then the size is unlimited. Default is 200MB object size. + + + + + Application arguments the server can see in + + + + + The duration for which PowerShell remoting waits before timing out on a connection to a remote machine. + Simply put, the timeout for a remote runspace creation. + The user would like to tweak this timeout depending on whether + he/she is connecting to a machine in the data center or across a slow WAN. + + Default: 3 * 60 * 1000 = 3 minutes + + + + + The duration for which PowerShell should wait before it times out on cancel operations + (close runspace or stop powershell). For instance, when the user hits ctrl-C, + New-PSSession cmdlet tries to call a stop on all remote runspaces which are in the Opening state. + The user wouldn’t mind waiting for 15 seconds, but this should be time bound and of a shorter duration. + A high timeout here like 3 minutes will give the user a feeling that the PowerShell client has hung. + + Default: 60 * 1000 = 1 minute + + + + + The duration for which a Runspace on server needs to wait before it declares the client dead and closes itself down. + This is especially important as these values may have to be configured differently for enterprise administration + and exchange scenarios. + + Default: -1 -> Use current server value for IdleTimeout. + + + + + This class is used in the server side remoting scenarios. This class + holds information about the incoming connection like: + (a) Client's TimeZone + (b) Connecting User information + (c) Connection String used by the user to connect to the server. + + + + + Serialization + + + + + + + Deserialization constructor + + + + + + + Constructs PSPrincipal using PSIdentity and a token (used to construct WindowsIdentity) + + + Connecting User Information + + + httpUrl element (from WSMAN_SENDER_DETAILS struct). + + + + + Contains information related to the user connecting to the server + + + + + Contains the TimeZone information from the client machine. + + + + + Connection string used by the client to connect to the server. This is + directly taken from WSMAN_SENDER_DETAILS struct (from wsman.h) + + + + + Application arguments (i.e. specified in New-PSSessionOptions -ApplicationArguments) + + + + + "ConfigurationName" from the sever remote session + + + + + Defines the basic functionality of a PSPrincipal object. + + + + + Gets the identity of the current user principal. + + + + + Gets the WindowsIdentity (if possible) representation of the current Identity. + PSPrincipal can represent any user for example a LiveID user, network user within + a domain etc. This property tries to convert the Identity to WindowsIdentity + using the user token supplied. + + + + + Gets the identity of the current principal. + + + + + Determines if the current principal belongs to a specified rule. + If we were able to get a WindowsIdentity then this will perform the + check using the WindowsIdentity otherwise this will return false. + + + + If we were able to get a WindowsIdentity then this will perform the + check using the WindowsIdentity otherwise this will return false. + + + + + Internal overload of IsInRole() taking a WindowsBuiltInRole enum value + + + + + Constructs PSPrincipal using PSIdentity and a WindowsIdentity + + + An instance of PSIdentity + + + An instance of WindowsIdentity, if psIdentity represents a windows user. This can be + null. + + + + + Defines the basic functionality of a PSIdentity object. + + + + + Gets the type of authentication used. + For a WSMan service autheticated user this will be one of the following: + WSMAN_DEFAULT_AUTHENTICATION + WSMAN_NO_AUTHENTICATION + WSMAN_AUTH_DIGEST + WSMAN_AUTH_NEGOTIATE + WSMAN_AUTH_BASIC + WSMAN_AUTH_KERBEROS + WSMAN_AUTH_CLIENT_CERTIFICATE + WSMAN_AUTH_LIVEID + + + + + Gets a value that indicates whether the user has been authenticated. + + + + + Gets the name of the user. + + + + + Gets the certificate details of the user if supported, null otherwise. + + + + + Constructor used to construt a PSIdentity object + + + Type of authentication used to authenticate this user. + For a WSMan service autheticated user this will be one of the following: + WSMAN_DEFAULT_AUTHENTICATION + WSMAN_NO_AUTHENTICATION + WSMAN_AUTH_DIGEST + WSMAN_AUTH_NEGOTIATE + WSMAN_AUTH_BASIC + WSMAN_AUTH_KERBEROS + WSMAN_AUTH_CLIENT_CERTIFICATE + WSMAN_AUTH_LIVEID + + + true if this user is authenticated. + + + Name of the user + + + Certificate details if Certifiate authentication is used. + + + + + Represents the certificate of a user. + + + + + Gets Subject of the certificate. + + + + + Gets the issuer name of the certificate. + + + + + Gets the issuer thumb print. + + + + + Constructor used to construt a PSCertificateDetails object + + + Subject of the certificate. + + + Issuer name of the certificate. + + + Issuer thumb print of the certificate. + + + + + Event arguments passed to TransportErrorOccured handlers. + + + + + Constructor + + + Error occurred. + + + The transport method that raised the error + + + + + Gets the error occurred. + + + + + Transport method that is reporting this error. + + + + + Robust Connection notifications. + + + + + ConnectionStatusEventArgs + + + + + CreateCompleteEventArgs + + + + + Contains implementation that is common to both client and server + transport managers + + + + + Event that is raised when a remote object is available. The event is raised + from a WSMan transport thread. Since this thread can hold on to a HTTP + connection, the event handler should compelete processing as fast as possible. + Importantly the event handler should not generate any call that results in a + user request like host.ReadLine(). + + + + + Listen to this event to observe the PowerShell guid of the process'ed object. + + + + + This is needed to deserialize objects coming from the network. + This may be null..in which case type rehydration does not happen. + At construction time we may not have typetable (server runspace + is created only when a request from the client)..so this is + a property on the base tranpsort manager to allow for setting at + a later time. + + + + + Uses the "OnDataAvailableCallback" to handle Deserialized objects + + + data to process + + + priority stream this data belongs to + + + + + + + + data to process + + + priority stream this data belongs to + + + used by the caller to supply a callback to handle deserialized object. + + + Since dataAvailableCallback is called in this method, and the handler + may be handled by 3rd party code (eventually),this may throw any exception. + + + + + + + + + The handler may be handled by 3rd party code (eventually), + this may throw any exception. + + + + + copy the DataReceived event handlers to the supplied transport Manager + + + + + + Raise the error handlers + + + + + + Crypto handler to be used for encrypting/decrypting + secure strings + + + + + A data buffer used to store data received from remote machine. + + + + + Dispose the transport and release resources. + + + + + Event that is raised when a create operation on transport has been successfully completed + The event is raised + from a WSMan transport thread. Since this thread can hold on to a HTTP + connection, the event handler should compelete processing as fast as possible. + Importantly the event handler should not generate any call that results in a + user request like host.ReadLine(). + + Errors (occurred during connection attempt) are reported through WSManTransportErrorOccured + event. + + + + + Event that is raised when a remote connection is successfully closed. The event is raised + from a WSMan transport thread. Since this thread can hold on to a HTTP + connection, the event handler should compelete processing as fast as possible. + Importantly the event handler should not generate any call that results in a + user request like host.ReadLine(). + + Errors (occurred during connection attempt) are reported through WSManTransportErrorOccured + event. + + + The eventhandler should make sure not to throw any exceptions. + + + + + Indicated successfull completion of a connect operation on transport + + Errors are reported through WSManTransportErrorOccured + event. + + + + + Indicated successfull completion of a disconnect operation on transport + + Errors are reported through WSManTransportErrorOccured + event. + + + + + Indicated successfull completion of a reconnect operation on transport + + Errors are reported through WSManTransportErrorOccured + event. + + + + + Indicates that the transport/command is ready for a disconnect operation. + + Errors are reported through WSManTransportErrorOccured event. + + + + + Event to pass Robust Connection notifications to client. + + + + + Indicates successful processing of a delay stream request on a receive operation + + this event is useful when PS wants to invoke a pipeline in disconnected mode + + + + + Gets the data collection which is used by this tranport manager to send + data to the server. + + + + + Used to log crimson messages + + + + + Raise the Connect completed handler + + + + + Raise the close completed handler + + + + + Raise the ReadyForDisconnect event. + + + + + Queue the robust connection notification event. + + Determines what kind of notification + + + + Raise the Robust Connection notification event. + + ConnectionStatusEventArgs + + + + Enqueue a deserialized object or an Exception to process in a thread pool + thread. Processing Exception in a thread pool thread is important as calling + WSManCloseShell/Command from a Receive callback results in a deadlock. + + + Deserialized Object to process in a thread-pool thread. This should be null + when is specified. + + + Data that is neither RemoteObject or Exception. This is used by Client Command + Transport manager to raise SignalCompleted callback. + + + Error containing transport exception. + + + + + Helper method to check RemoteDataObject for a host call requiring user + interaction. + + Remote data object + True if remote data object requires a user response + + + + Used by ServicePendingCallbacks to give the control to derived classes for + processing data that the base class does not understand. + + + Derived class specific data to process. For command transport manager this + should be a boolean. + + + + + The caller should make sure the call is synchronized. + + + + + Method to have transport prepare for a disconnect operation. + + + + + Method to resume post disconnect operations. + + + + + Finalizer + + + + + Creates a command transport manager. This will create a new PrioritySendDataCollection which should be used to + send data to the server. + + + Connection info to be used for creating the command. + + + Command for which transport manager is created. + + + true if the command has input. + + + + + + RunspacePool data structure handler uses this method to remove association of a command transport manager + from a session transport manager. + + + + + + Temporarily disconnect an active session + + + + + Reconnect back a temporarily disconnected session. + + + + + Redirect the transport manager to point to a new URI. + + + Redirect Uri to connect to. + + + Connection info object used for retrieving credential, auth. mechanism etc. + + + + + Used by callers to prepare the session transportmanager for a URI redirection. + This must be called only after Create callback (or Error form create) is received. + Callers must catch the close completed event and call Redirect to perform the redirection. + + + + + Reconnects a previously disconnected commandTM. Implemented by WSMan transport + Note that there is not explicit disconnect on commandTM. It is implicity disconnected + when disconnect is called on sessionTM . The TM's also dont maintain specific connection state + This is done by DSHandlers. + + + + + Used by powershell/pipeline to send a stop message to the server command + + + + + Closes the server process. + + + + + Create a transport manager for command + + + + + + + + + Kills the server process and disposes other resources + + + + + + Launch a new Process (PowerShell.exe -s) to perform remoting. This is used by *-Job cmdlets + to support background jobs without depending on WinRM (WinRM has complex requirements like + elevation to support local machine remoting) + + + + + 1. There was an error in opening the associated file. + + + + + Kills the server process and disposes other resources + + + + + + Create a Hyper-V socket connection to the target process and set up + transport reader/writer. + + + + + Create a Hyper-V socket connection to the target process and set up + transport reader/writer. + + + + + Create a named pipe connection to the target process and set up + transport reader/writer. + + + + + Aborts an existing connection attempt. + + + + + Create a named pipe connection to the target process in target container and set up + transport reader/writer. + + + + + Used by ServicePendingCallbacks to give the control to derived classes for + processing data that the base class does not understand. + + + Derived class specific data to process. For command transport manager this + should be a boolean. + + + + + WSMan TransportManager related utils + + + + + Constructs a WSManTransportErrorOccuredEventArgs instance from the supplied data + + + WSMan API handle to use to get error messages from WSMan error id(s) + + + Session Transportmanager to use to get error messages (for redirect) + + + Error structure supplied by callbacks from WSMan API + + + The transport method call that reported this error. + + + resource string that holds the message. + + + Arguments to pass to the resource + + + An instance of WSManTransportErrorOccuredEventArgs + + + + + Helper method that escapes powershell parser recognized strings like "@{" from the error message + string. This is needed to make error messages look authentic. Some WSMan error messages provide a + command line to run to fix certain issues. WSMan command line has syntax that allows use of @{}. + PowerShell parser treats them differently..and so when user cut and paste the command line in a + PowerShell console, it wont work. This escape logic works around the issue. + + + + + + + Helper method to convert a transport error code value + to a fully qualified error Id string. + + transport error code + Default FQEID + Fully qualified error Id string + + + + Class that manages a server session. This doesn't implement IDisposable. Use Close method + to clean the resources. + + + + + Max uri redirection count session variable. + + + + + Default max uri redirection count - wsman + + + + + Static constructor to initialize WSMan Client stack. + + + + + Constructor. This will create a new PrioritySendDataCollection which should be used to + send data to the server. + + + This is used for logging trace/operational crimson messages. Having this id in the logs + helps a user to map which transport is created for which runspace. + + + Connection info to use while connecting to the remote machine. + + crypto helper + session friendly name + + 1. Create Session failed with a non-zero error code. + + + + + Sets default timeout for all client operations in milliseconds. + TODO: Sync with WSMan and figure out what the default is if we + dont set. + + + + + Setting session option failed with a non-zero error code. + + + + + Sets timeout for Create operation in milliseconds. + + + + + Setting session option failed with a non-zero error code. + + + + + Sets timeout for Close operation in milliseconds + + + + + Setting session option failed with a non-zero error code. + + + + + Sets timeout for SendShellInput operation in milliseconds + + + + + Setting session option failed with a non-zero error code. + + + + + Sets timeout for Receive operation in milliseconds + + + + + Setting session option failed with a non-zero error code. + + + + + Sets timeout for Signal operation in milliseconds + + + + + Setting session option failed with a non-zero error code. + + + + + Sets a DWORD value for a WSMan Session option. + + + + + Setting session option failed with a non-zero error code. + + + + + Sets a string value for a WSMan Session option. + + + + + Setting session option failed with a non-zero error code. + + + + + Starts connecting to an existing remote session. This will result in a WSManConnectShellEx WSMan + async call. Piggy backs available data in input stream as openXml in connect SOAP. + DSHandler will push negotiation related messages through the open content + + + WSManConnectShellEx failed. + + + + + Starts connecting to remote end asynchronously. This will result in a WSManCreateShellEx WSMan + async call. By the time this call returns, we will have a valid handle, if the operation + succeeds. Make sure other methods are called only after this method returns. Thread + synchronization is left to the caller. + + + WSManCreateShellEx failed. + + + + + Closes the pending Create,Send,Receive operations and then closes the shell and release all the resources. + The caller should make sure this method is called only after calling ConnectAsync. + + + + + Adjusts for any variations in different protocol versions. Following changes are considered + - In V2, default max envelope size is 150KB while in V3 it has been changed to 500KB. + With default configuration remoting from V3 client to V2 server will break as V3 client can send upto 500KB in a single Send packet + So if server version is known to be V2, we'll downgrade the max env size to 150KB (V2's default) if the current value is 500KB (V3 default) + + server negotiated protocol version + + + + Used by callers to prepare the session transportmanager for a URI redirection. + This must be called only after Create callback (or Error form create) is received. + This will close the internal WSMan Session handle. Callers must catch the close + completed event and call Redirect to perform the redirection. + + + + + Redirect the transport manager to point to a new URI. + + + Redirect Uri to connect to. + + + Connection info object used for retrieving credential, auth. mechanism etc. + + + 1. Create Session failed with a non-zero error code. + + + + + Creates a command transport manager. This will create a new PrioritySendDataCollection which should be used to + send data to the server. + + + Connection info to be used for creating the command. + + + Command for which transport manager is created. + + + true if the command has input. + + + + + + Initializes the session. + + + Uri to connect to. + + + Connection info object used for retrieving credential, auth. mechanism etc. + + + 1. Create Session failed with a non-zero error code. + + + + + Handle transport error - calls EnqueueAndStartProcessingThread to process transport exception + in a different thread + Logic in transport callbacks should always use this to process a transport error + + + + + Log the error message in the Crimson logger and raise error handler. + + + + + + receive/send operation handles and callback handles should be released/disposed from + receive/send callback only. Releasing them after CloseOperation() may not cover all + the scenarios, as WSMan does not guarantee that a rcv/send callback is not called after + Close completed callback. + + + + + + + Call back from worker thread / queue to raise Robust Connection notification event. + + ConnectionStatusEventArgs + + + + Robust connection maximum retry time in milliseconds + + + + + Returns the WSMan's session handle that this Session transportmanager + is proxying. + + + + + Returns the WSManConnectionInfo used to make the connection. + + + + + Examine the session create error code and if the error is one where a + session create/connect retry attempt may be beneficial then do the + retry attempt. + + Error code returned from Create response + True if a session create retry has been started. + + + + Closes current session handle by calling WSManCloseSession and clears + session related resources. + + + + + Class that manages WSManAPI data. Has information like APIHandle which is created + using WSManInitialize, InputStreamSet, OutputStreamSet. + + + + + Initializes handle by calling WSManInitialize API + + + + + Dispose + + + + + A class maintaining the transport of a command for the shell. Multiple commands will have + multiple transport managers. The Transport manager manages creating / sending /receiving + data and closing (terminating) the command. + + + + + This is an internal constructor used by WSManClientSessionTransportManager. + + + connection info to be used for creating the command. + + + Shell operation handle in whose context this transport manager sends/receives + data packets. + + + The command to be sent to the remote end. + + + true if the command has input, false otherwise. + + + Session transport manager creating this command transport manager instance. + Used by Command TM to apply session specific properties + + + + + + + WSManConnectShellCommandEx failed. + + + + + + + + WSManRunShellCommandEx failed. + + + + + Restores connection on a disconnected command + + + + + Used by powershell/pipeline to send a stop message to the server command + + + + + Closes the pending Create,Send,Receive operations and then closes the shell and release all the resources. + + + + + Handle transport error - calls EnqueueAndStartProcessingThread to process transport exception + in a different thread + Logic in transport callbacks should always use this to process a transport error + + + + + Log the error message in the Crimson logger and raise error handler. + + + + + + Used by ServicePendingCallbacks to give the control to derived classes for + processing data that the base class does not understand. + + + Derived class specific data to process. For command transport manager this + should be a boolean. + + + + + receive/send operation handles and callback handles should be released/disposed from + receive/send callback only. Releasing them after CloseOperation() may not cover all + the scenarios, as WSMan does not guarantee that a rcv/send callback is not called after + Close completed callback. + + + + + + + Method to have transport prepare for a disconnect operation. + + + + + Method to resume post disconnect operations. + + + + + The WinRM service cannot process the request because the request needs to be sent + to a different machine. + Use the redirect information to send the request to a new machine. + 0x8033819B from sdk\inc\wsmerror.h + + + + + The WS-Management service cannot process the request. The resource URI is missing or + it has an incorrect format. Check the documentation or use the following command for + information on how to construct a resource URI: "winrm help uris". + + + + + The WinRM service cannon re-connect the session because the session is no longer + associated with this transportmanager object. + + + + + Sending data to a remote command failed with the following error message: The client + cannot connect to the destination specified in the request. Verify that the service on + the destination is running and is accepting requests. Consult the logs and documentation + for the WS-Management service running on the destination, most commonly IIS or WinRM. + If the destination is the WinRM service, run the following command on the destination to + analyze and configure the WinRM service: + + + + + Sending data to a remote command failed with the following error message: The WinRM client + cannot complete the operation within the time specified. Check if the machine name is valid + and is reachable over the network and firewall exception for Windows Remote Management service + is enabled. + + + + + A struct holding marshalled data (IntPtr). This is + created to supply IDisposable pattern to safely + release the unmanaged pointer. + + + + + Constructs a MarshalledObject with the supplied + ptr. + + + + + + Gets the unmanaged ptr. + + + + + Creates a MarshalledObject for the specified object. + + + Must be a value type. + + + MarshalledObject + + + + Dispose the unmanaged IntPtr. + + + + + Implicit cast to IntPtr + + + + + + + Different Authentication Mechanisms supported by WSMan. + TODO: By the look of it, this appears like a Flags enum. + Need to confirm the behavior with WSMan + + + Please keep in sync with WSManAuthenticationMechanism + from C:\e\win7_powershell\admin\monad\nttargets\assemblies\logging\ETW\Manifests\Microsoft-Windows-PowerShell-Instrumentation.man + + + + + Use the default authentication + + + + + Use no authentication for a remote operation + + + + + Use digest authentication for a remote operation + + + + + Use negotiate authentication for a remote operation (may use kerboros or ntlm) + + + + + Use basic authentication for a remote operation + + + + + Use kerberos authentication for a remote operation + + + + + Use client certificate authentication for a remote operation + + + + + Use CredSSP authentication for a remote operation + + + + + This is used to represent _WSMAN_AUTHENTICATION_CREDENTIALS + native structure. _WSMAN_AUTHENTICATION_CREDENTIALS has a union + member which cannot be easily represented in managed code. + So created an interface and each union member is represented + with a different structure. + + + + + Used to supply _WSMAN_USERNAME_PASSWORD_CREDS type credentials for + WSManCreateSession. + + + + + + + + + + + + + + + + + + + + making password secure. + + + + + Default constructor + + + + + Constructs an WSManUserNameAuthenticationCredentials object. + It is upto the caller to verify if + and are valid. This API wont complain + if they are Empty or Null. + + + user name. + + + password. + + + can be 0 (the user did not specify an authentication mechanism, + WSMan client will choose between Kerberos and Negotiate only); + if it is not 0, it must be one of the values from + WSManAuthenticationMechanism enumeration. + + + + + gets a structure represenation (used for marshalling) + + + + + Marshalled Data + + + + + + Dispose of the resources + + + + + + + + + + + + + + + + + + + + + + + + + + This is provided for padding as underlying WSMan's implementation + uses a union, we need to pad up unused fields. + + + + + Constructs an WSManCertificateThumbprintCredentials object. + It is upto the caller to verify if + is valid. This API wont complain if it is Empty or Null. + + + + + + Marshalled Data + + + + + + Dispose of the resources + + + + + + Enum representing native WSManSessionOption enum. + + + + + int - default timeout in ms that applies to all operations on the client side + + + + + int - Robust connection maximum retry time in minutes. + + + + + int - timeout in ms for WSManCreateShellEx operations + + + + + int - timeout in ms for WSManReceiveShellOutputEx operations + + + + + int - timeout in ms for WSManSendShellInputEx operations + + + + + int - timeout in ms for WSManSignalShellEx operations + + + + + int - timeout in ms for WSManCloseShellOperationEx operations + + + + + int - 1 to not validate the CA on the server certificate; 0 - default + + + + + int - 1 to not validate the CN on the server certificate; 0 - default + + + + + int - 1 to not encrypt the messages; 0 - default + + + + + int - 1 Send all network packets for remote operatons in UTF16; 0 - default is UTF8 + + + + + int - 1 When using negotiate, include port number in the connection SPN; 0 - default + + + + + int - Used when not talking to the main OS on a machine but, for instance, a BMC + 1 Identify this machine to the server by including the MachineID header; 0 - default + + + + + int -1 Enables host process to be created with interactive token. + + + + + string - RFC 3066 language code + + + + + string - RFC 3066 language code + + + + + int - max SOAP envelope size (kb) - default 150kb from winrm config + (see 'winrm help config' for more details); the client SOAP packet size cannot surpass + this value; this value will be also sent to the server in the SOAP request as a + MaxEnvelopeSize header; the server will use min(MaxEnvelopeSizeKb from server configuration, + MaxEnvelopeSize value from SOAP). + + + + + int (read only) - max data size (kb) provided by the client, guaranteed by + the winrm client implementation to fit into one SOAP packet; this is an + approximate value calculated based on the WSMAN_OPTION_MAX_ENVELOPE_SIZE_KB (default 150kb), + the maximum possible size of the SOAP headers and the overhead of the base64 + encoding which is specific to WSManSendShellInput API; this option can be used + with WSManGetSessionOptionAsDword API; it cannot be used with WSManSetSessionOption API. + + + + + string - + + + + + DWORD - 1 to not validate the revocation status on the server certificate; 0 - default + + + + + DWORD - 1 to allow default credentials for Negotiate (this is for SSL only); 0 - default + + + + + DWORD - When using just a machine name in the connection string use an SSL connection. + 0 means HTTP, 1 means HTTPS. Default is 0. + + + + + Enum representing WSMan Shell specific options + + + + + Turn off compression for Send/Receive operations. By default compression is + turned on, but if communicating with a down-level box it may be necessary to + do this. Other reasons for turning it off is due to the extra memory consumption + and CPU utilization that is used as a result of compression. + + + + + Enable the service to drop operation output when running disconnected + + + + + Enable the service to block operation progress when output buffers are full + + + + + Enable receive call to not immediately retrieve results. Only applicable for Receive calls on commands + + + + + types of suppored WSMan data. + PowerShell uses only Text and DWORD (in some places). + + + + + Used to supply WSMAN_DATA_BINARY/WSMAN_DATA_TEXT type in place of _WSMAN_DATA. + + + + + Constructs a WSMAN_DATA_BINARY object. This is used to send + data to remote end. + + + + + + Constructs a WSMAN_DATA_TEXT object. This is used to send data + to remote end. + + + + + + Finalizer + + Note: Do not depend on the finalizer! This object should be + properly disposed of when no longer needed via a direct call + to Dispose(). + + + + + Gets the type of data. + + + + + Gets the buffer lenfth of data. + + + + + Free unmanaged resources. All users of this class should call Dispose rather than + depending on the finalizer to clean it up. + + + + + implict IntPtr conversion + + + + + + + Gets the type of data. + + + + + Gets the buffer length of data. + + + + + Converts the unmanaged structure to a managed class object. + + + + + + + Converts the unmanaged pointer to a managed class object. + + + + + + + Used to supply a DWORD data in place of _WSMAN_DATA. + + + + + Constructs a WSMAN_DATA_DWORD object. + + + + + + Creates an unmanaged ptr which holds the class data. + This unmanaged ptr can be used with WSMan native API. + + + + + + This struct is created to honor struct boundaries between + x86,amd64 and ia64. WSMan defines a generic WSMAN_DATA + structure that addresses DWORD, binary, text data. + + + + + WSMan allows multiple streams within a shell but powershell is + using only 1 stream for input and 1 stream for output to allow + sequencing of data. Because of this the following structure will + have only one string to hold stream information. + + + + + Constructor + + + + + + Free resources. + + + + + Implicit cast to IntPtr + + + + + + + Converts the unmanaged pointer to a managed class object. + + + + + + + Managed to Unmanaged: Option struct used to pass optional information with WSManCreateShellEx . + Unmanaged to Managed: Included in WSManPluginRequest. + + + + + Underlying type = PCWSTR + + + + + Underlying type = PCWSTR + + + + + Underlying type = BOOL + + + + + Unmanaged to Managed: WSMAN_OPERATION_INFO includes the struct directly, so this cannot be made internal to WsmanOptionSet. + + + + + Pointer to an array of WSManOption objects + + + + + Option set struct used to pass optional infromation + with WSManCreateShellEx + + + + + Options to construct this OptionSet with. + + + + + + + + + + + Implicit IntPtr cast. + + + + + + + Converts the unmanaged pointer to a managed class object. + + + + + + + Converts the unmanaged structure to a managed class object. + + + + + + + + + + + + Free resources. + + + + + Implicit cast to IntPtr + + + + + + + Since this is a structure, it must be non-null. This differs in behavior from all the other UnMarshals + that are classes since they can be null. + TODO: Do I need to worry about intermediate null characters in the arguments? The managed to unmanaged does! + + + + + + + new idletimeout for the server shell that overrides the original idletimeout specified in WSManCreateShell + + + + + Disposes the object. + + + + + implicit IntPtr. + + + + + + + PowerShell always uses one stream. So no need to expand this. + Maps to WSManStreamIDSet. + + + + + PowerShell always uses one stream. So no need to expand this. + Maps to WSManStreamIDSet. + + + + + Idle timeout + + + + + working directory of the shell. + + + + + Environment variables available to the shell. + Maps to WSManEnvironmentVariableSet. + + + + + Environment variables available to the shell. + + + + + Managed to unmanaged representation of WSMAN_SHELL_STARTUP_INFO. + It converts managed values into an unmanaged compatible WSManShellStartupInfoStruct that + is marshaled into unmanaged memory. + + + + + Creates a startup info with 1 startup option. + The startup option is intended to specify the version. + + + + + + + + + + + + + Disposes the object. + + + + + implicit IntPtr. + + + + + + + Unmanaged to managed representation of WSMAN_SHELL_STARTUP_INFO. + It unmarshals the unmanaged struct into this object for use by managed code. + + + + + Converts the unmanaged pointer to a managed class object. + + + + + + + Managed representation of WSMAN_ENVIRONMENT_VARIABLE_SET. + It wraps WSManEnvironmentVariableSetInternal and UnMarshals the unmanaged + data into the object. + + + + + Converts the unmanaged pointer to a managed class object. + + + + + + + Proxy Info used with WSManCreateSession + + + + + + + + + + + + implicit IntPtr + + + + + + + flags used by all callback functions: WSMAN_COMPLETION_FUNCTION, + WSMAN_SUBSCRIPTION_COMPLETION_FUNCTION and WSMAN_SHELL_COMPLETION_FUNCTION + + + + + Completion function used by all Shell functions. Returns error->code != 0 upon error; + use error->errorDetail structure for extended error informations; the callback is + called for each shell operation; after a WSManReceiveShellOutput operation is initiated, + the callback is called for each output stream element or if error; the underlying + implementation handles the polling of stream data from the command or shell. + If WSMAN_COMMAND_STATE_DONE state is received, no more streams will be received from the command, + so the command can be closed using WSManCloseShellOperationEx(command). + If error->code != 0, the result is guaranteed to be NULL. The error and result objects are + allocated and owned by the WSMan client stack; they are valid during the callback only; the user + has to synchronously copy the data in the callback. This callback function will use the current + access token, whether it is a process or impersonation token. + + + user supplied operation context. + + + one or more flags from WSManCallbackFlags + + + error allocated and owned by the winrm stack; valid in the callback only; + + + shell handle associated with the user context + + + command handle associated with the user context + + + operation handle associated with the user context + + + output data from command/shell; allocated internally and owned by the winrm stack. + valid only within this function. + See WSManReceiveDataResult. + + + + + Struct which holds reference to the callback(delegate) passed to WSMan + API + + + + + Used in different WSMan functions to supply async callback. + + + + + Used in the shell completion function delegate to refer to error. + + + + + extended error description from the fault; + + + + + language for error description (RFC 3066 language code); it can be NULL + + + + + machine id; it can be NULL + + + + + Constructs a WSManError from the unmanaged pointer. + This involves copying data from unmanaged memory to managed heap. + + + Pointer to unmanaged data. + + + + + + + Used in the shell compeletion function delegate to refer to the data. + + + + + The actual data. + + + + + Stream the data belongs to + + + + + Constructs a WSManReceiveDataResult from the unmanaged pointer. + This involves copying data from unmanaged memory to managed heap. + Currently PowerShell supports only text data on the wire, so this + method asserst if the data is not text. + + + Pointer to unmanaged data. + + + + + + + This is the managed representation of the WSMAN_PLUGIN_REQUEST struct. + + + + + Unmarshaled WSMAN_SENDER_DETAILS struct + + + + + Unmarshaled WSMAN_OPERATION_INFO struct + + + + + Kept around to allow direct access to shutdownNotification and its handle. + + + + + Volatile value that should be read directly from its unmanaged location. + TODO: Does "volatile" still apply when accessing it in managed code. + + + + + Left untouched in unmanaged memory because it is passed directly to + RegisterWaitForSingleObject(). + + + + + Copy of the unmanagedData value used to create the structure. + + + + + Converts the unmanaged pointer to a managed class object. + + + + + + + Representation of WSMAN_PLUGIN_REQUEST + + + + + WSManSenderDetails + + + + + WSManOperationInfo + + + + + Converts the unmanaged pointer to a managed class object. + + + + + + + Managed represenation of WSMAN_SENDER_DETAILS + + + + + WSManCertificateDetails + + + + + Converts the unmanaged pointer to a managed class object. + + + + + + + Managed representation of WSMAN_CERTIFICATE_DETAILS + + + + + Converts the unmanaged pointer to a managed class object. + + + + + + + Managed representation of WSMAN_OPERATION_INFO. + selectorSet and optionSet are handled differently because they are structs that contain pointers to arrays of structs. + Most other data structures in the API point to structures using IntPtr rather than including the actual structure. + + + + + Managed representation of WSMAN_FRAGMENT + + + + + Managed representation of WSMAN_FILTER + + + + + Converts the unmanaged pointer to a managed class object. + + + + + + + Managed representation of WSMAN_SELECTOR_SET + + + + + Array of WSManKeyStruct structures. + + + + + Managed representation of WSMAN_OPTION_SET + + + + + This API is used to initialize the WinRM client; + It can be used by different clients on the same process, ie svchost.exe. + Returns a nonzero error code upon failure. + + + + + + + + + + + This API deinitializes the Winrm client stack; all operations will + finish before this API will return; this is a sync call; + it is highly recommended that all operations are explictly cancelled + and all sessions are closed before calling this API + Returns non zero error code upon failure. + + + + + + + + Creates a session which can be used to perform subsequent operations + Returns a non zero error code upon failure. + + + + if NULL, then connection will default to 127.0.0.1 + + + + can be null. + + + + + + + + + Frees memory of session and closes all related operations before returning; + this is sync call it is recommended that all pending operations are either + completed or cancelled before calling this API. Returns a non zero error + code upon failure + + + + + + + WSManSetSessionOption API - set session options + Returns a non zero error code upon failure + + + + + An int (DWORD) data. + + + + + + WSManGetSessionOptionAsDword API - get a session option. Returns a non + zero error code upon failure + + + + + An int (DWORD) data. + + + + + + Function that retrieves a WSMan session option as string. Thread.CurrentUICulture + will be used as the language code to get the error message in. + + + session option to get + + + + + Creates a shell on the remote end. + + + Session in which the shell is created. + + + + + The resource Uri to use to create the shell. + + + + startup information to be passed to the shell. + + + Options to be passed with CreateShell + + + any content that is used by the remote shell to startup. + + + callback to notify when the create operation completes. + + + An out parameter referening a WSMan shell operation handle + for this shell. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Starts a command on the remote end. + + + Shell handle in which the command is created and run. + + + + + command line for the command. + + + arguments for the command. + + + options. + + + callback to notify when the operation completes. + + + An out parameter referening a WSMan shell operation handle + for this command. + + + + + Registers a callback with WSMan to receive output from the remote end. + If commandOperationHandle is null, then the receive callback is registered + for shell. It is enough to register the callback only once. WSMan will + keep on calling this callback as and when it has data for a particular + command + shell. There will be only 1 callback active per command or per shell. + So if there are multiple commands active, then there can be 1 callback active + for each of them. + TODO: How to unregister the callback + + + Shell Operation Handle. + + + Command Operation Handle. If null, the receive request corresponds + to the shell. + + + + + callback which receives the data asynchronoulsy. + + + handle to use to cancel the operation. + + + + + Send data to the remote end. + + + Shell Operation Handle. + + + Command Operation Handle. If null, the send request corresponds + to the shell. + + + + + + callback to notify when the operation completes. + + + handle to use to cancel the operation. + + + + + Closes a shell or a command; if the callback associated with the operation + is pending and have not completed when WSManCloseShellOperationEx is called, + the function waits for the callback to finish; If the operation was not finished, + the operation is cancelled and the operation callback is called with + WSMAN_ERROR_OPERATION_ABORTED error; then the WSManCloseShellOperationEx callback + is called with WSMAN_FLAG_CALLBACK_END_OF_OPERATION flag as result of this operation + + + Shell handle to Close. + + + + callback to notify when the operation completes. + + + + + Closes a command (signals the termination of a command); the WSManCloseCommand callback + is called with WSMAN_FLAG_CALLBACK_END_OF_OPERATION flag as result of this operation + + + Command handle to Close. + + + + callback to notify when the operation completes. + + + + + Sends a signal. If is null, then the signal will + be sent to shell. + + + + + + + + + + + Closes an asynchronous operation; if the callback associated with the operation + is pending and have not completed when WSManCloseOperation is called, then + the function marks the operation for deletion and returns; If the callback was not called, + the operation is cancelled and the operation callback is called with + WSMAN_ERROR_OPERATION_ABORTED error; the operation handle is freed in all cases + after the callback returns. + + + + + + + + Function that retrieves WSMan error messages with a particular error code. Thread.CurrentUICulture + will be used as the language code to get the error message in. + + + + + + + + Function that retrieves WSMan error messages with a particular error code and a language code + + + The handle returned by WSManInitialize API call. It cannot be NULL. + + + Reserved for future use. It must be 0. + + + Defines the RFC 3066 language code name that should be used to localize the error. It can be NULL. + if not specified, the thread's UI language will be used. + + + Represents the error code for the requested error message. This error code can be a hexadecimal or + decimal component from WSManagement component, WinHttp component or other Windows operating system + components. + + + Represents the size of the output message buffer in characters, including the NULL terminator. + If 0, then the "message" parameter must be NULL; in this case the function will return + ERROR_INSUFFICIENT_BUFFER error and the "messageLengthUsed" parameter will be set to the number + of characters needed, including NULL terminator. + + + Represents the output buffer to store the message in. It must be allocated/deallocated by the client. + The buffer must be big enough to store the message plus the NULL terminator otherwise an + ERROR_INSUFFICIENT_BUFFER error will be returned and the "messageLengthUsed" parameter will be set + to the number of characters needed, including NULL terminator. If NULL, then the "messageLength" parameter + must be NULL; in this case the function will return ERROR_INSUFFICIENT_BUFFER error and the "messageLengthUsed" + parameter will be set to the number of characters needed, including NULL terminator. + + + Represents the effective number of characters written to the output buffer, including the NULL terminator. + It cannot be NULL. If both "messageLength" and "message" parameters are 0, the function will return ERROR_INSUFFICIENT_BUFFER + and "messageLengthUsed" parameter will be set to the number of characters needed, including NULL terminator + + + + + Gets operational information for items such as time-outs and data restrictions that + are associated with the operation. + + Specifies the resource URI, options, locale, shutdown flag, and handle for the request. + Specifies the options that are available for retrieval. + Specifies the result object (WSMAN_DATA). + + + + + Reports the completion of an operation by all operation entry points except for the + WSManPluginStartup and WSManPluginShutdown methods. + + Specifies the resource URI, options, locale, shutdown flag, and handle for the request. + + Reports any failure in the operation. Terminates on non-NO_ERROR status. + XML document containing extra error information. + + + + + No more data on this stream. Only valid when a stream is specified. + + + + + Send the data as soon as possible. Normally data is held onto in + order to maximise the size of the response packet. This should + only be used if a request/response style of data is needed between + the send and receive data streams. + + + + + Data reported is at a boundary. Plugins usually serialize and fragment + output data objects and push them along the receive byte stream. + If the current data chunk being reported is an end fragment of the + data object current processed, plugins would set this flag. + + + + + Reports results for the WSMAN_PLUGIN_RECEIVE plug-in call and is used by most shell + plug-ins that return results. After all of the data is received, the + WSManPluginOperationComplete method must be called. + + Specifies the resource URI, options, locale, shutdown flag, and handle for the request. + + Specifies the stream that the data is associated with. + A pointer to a WSMAN_DATA structure that specifies the result object that is returned to the client. + Specifies the state of the command. It must be set to a value specified by the plugin. + Only set when the commandState is terminating. + + + + + Reports shell and command context back to the Windows Remote Management (WinRM) + infrastructure so that further operations can be performed against the shell and/or + command. This method is called only for WSManPluginShell and WSManPluginCommand plug-in + entry points. + + Specifies the resource URI, options, locale, shutdown flag, and handle for the request. + + Defines the value to pass into all future shell and command operations. Represents either the shell or the command. + + + + + Interface to enable stubbing of the WSManNativeApi PInvoke calls for + unit testing. + Note: It is implemented as a class to avoid exposing it outside the module + + + + + Concrete implementation of the PInvoke facade for use in the production code. + + + + + This struct is used to represent contents from configuration xml. The + XML is passed to plugins by WSMan API. + This helper does not validate XML content as it is already validated + by WSMan. + + + + + Using optionName and optionValue updates the current object + + + + + 1. "optionName" is not valid in "InitializationParameters" section. + 2. "startupscript" must specify a PowerShell script file that ends with extension ".ps1". + + + + + Checks if the originalValue is empty. If not throws an exception + + + + + 1. "optionName" is already defined + + + + + Converts the value specified by to int. + Multiplies the value by 1MB (1024*1024) to get the number in bytes. + + + + If value is specified, specified value as int . otherwise null. + + + + + Creates the struct from initialization parameters xml. + + + Initialization Parameters xml passed by WSMan API. This data is read from the config + xml and is in the following format: + + + + 1. "optionName" is already defined + + + + + + + + + 1. Unable to load type "{0}" specified in "InitializationParameters" section. + + + + + InitialSessionStateProvider is used by 3rd parties to provide shell configurtion + on the remote server. + + + + + Tracer for Server Remote session + + + + + Derived classes must override this to supply an InitialSesionState + to be used to construct a Runspace for the user + + + User Identity for which this information is requested + + + + + + + + + + + + + + + Maximum size (in bytes) of a deserialized object received from a remote machine. + If null, then the size is unlimited. Default is 10MB. + + + User Identity for which this information is requested + + + + + + Total data (in bytes) that can be received from a remote machine + targeted towards a command. If null, then the size is unlimited. + Default is 50MB. + + + User Identity for which this information is requested + + + + + + Derived classes can override this method to provide application private data + that is going to be sent to the client and exposed via + , + and + + + + User Identity for which this information is requested + + Application private data or null + + + + Disose this configuration object. This will be called when a Runspace/RunspacePool + created using InitialSessionState from this object is Closed. + + + + + + + + + + + + + + + Initialization Parameters xml passed by WSMan API. This data is read from the config + xml and is in the following format: + + + + 1. Non existent InitialSessionState provider for the shellID + + + + + + + + shellId for which the assembly is getting loaded + + + + + type which is supplying the configuration. + + + + + Type instance representing the EndPointConfiguration to load. + This Type can be instantiated when needed. + + + + + Sets the application's current working directory to and + loads the assembly . Once the assembly is loaded, the application's + current working directory is set back to the orginal value. + + + + + + + + Read value from the property for registry + as string. + + + Registry key from which the value is read. + Caller should make sure this is not null. + + + Name of the property. + Caller should make sure this is not null. + + + True, if the property should exist. + False, otherwise. + + + Value of the property. + + + + + + + + + Provides Default InitialSessionState. + + + + + + + + + + + + Specifies type of initial session state to use. Valid values are Empty and Default. + + + + + Empty session state + + + + + Restricted remote server + + + + + Default session state + + + + + Configuration type entry + + + + + + + + + + + + Configuration file constants + + + + + Checks if the given key is a valid key + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Verifies a string type + + + + + + + + + + Verifies a string array type + + + + + + + + + + Verifies that an array contains only string or hashtable elements + + + + + + + + + + DISC utilities + + + + + !! NOTE that this list MUST be updated when new capability session configuration properties are added. + + + + + Create an ExternalScriptInfo object from a file path. + + execution context + The path to the file + The base name of the script + The ExternalScriptInfo object. + + + + Loads the configuration file into a hashtable + + execution context + the ExternalScriptInfo object + configuration hashtable + + + + Verifies the configuration hashtable + + configuration hashtable + + + true if valid, false otherwise + + + + + + + + + + + + + + + + + + + + + Checks if all paths are absolute paths + + + + + + + + Checks if a path is an absolute path + + + + + + + + + Validates Role Definition hash entries + + RoleDefinitions = @{ + 'Everyone' = @{ + 'RoIeCapabilities' = 'Basic' }; + 'Administrators' = @{ + 'VisibleCmdlets' = 'Get-Process','Get-Location'; 'VisibleFunctions = 'TabExpansion2' } } + + + + + + Creates an initial session state based on the configuration language for PSSC files + + + + + Gets the configuration hashtable that results from parsing the specified configuration file + + + + + Creates a new instance of a Declarative Initial Session State Configuration + + The path to the .pssc file representing the initial session state + + The verifier that PowerShell should call to determine if groups in the Role entry apply to the + target session. If you have a WindowsPrincipal for a user, for example, create a Function that + checks windowsPrincipal.IsInRole(). + + + + + Creates an initial session state from a configuration file (DISC) + + + + + + + Creates an alias entry + + + + + Creates a function entry + + + + + + Creates a variable entry + + + + + Applies the command (cmdlet/function/alias) visibility settings to the + + + + + + + Attempts to get a value from a hashtable + + + + + + + + Attempts to get a hastable array from an object + + + + + + + Attemps to get a string array from a hashtable + + + + + + + + + + + + + + + + + + + + + + + + + + Checks if the originalValue is empty. If not throws an exception + + + + + 1. "optionName" is already defined + + + + + Using optionName and optionValue updates the current object + + + + + 1. "optionName" is not valid in "InitializationParameters" section. + 2. "startupscript" must specify a PowerShell script file that ends with extension ".ps1". + + + + + Common method to create a packet that contains only a PS Guid + with element name changing + + + + + + + + Process's data. Data should be a valid XML. + + + + + 1. Expected only two attributes with names "{0}" and "{1}" in "{2}" element. + 2. Not enough data available to process "{0}" element. + 3. Unknown node "{0}" in "{1}" element. Only "{2}" is expected in "{1}" element. + + + + + Process an XmlElement. The element name must be one of the following: + "Data" + + + + + 1. Expected only two attributes with names "{0}" and "{1}" in "{2}" element. + 2. Not enough data available to process "{0}" element. + 3. Unknown node "{0}" in "{1}" element. Only "{2}" is expected in "{1}" element. + + + + + A wrapper around TextWriter to allow for synchronized writing to a stream. + Synchronization is required to avoid collision when multiple TransportManager's + write data at the same time to the same writer + + + + + Constructs the wrapper + + + + + + Calls writer.WriteLine() with data. + + + + + + Stops the writer from writing anything to the stream. + This is used by session transport manager when the server + process is exited but the session data structure handlers + are not notified yet. So while the data structure handler + is disposing we should not let anyone use the stream. + + + + + + + + + + This indicate that the data will be sent without priority consideration. + Large data objects will be fragmented so that each fragmented piece can + fit into one message. + + + + + PromptReponse may be sent with or without priority considerations. + Large data objects will be fragmented so that each fragmented piece can + fit into one message. + + + + + DataStructure used by different remoting protocol / + DataStructures to pass data to transport manager. + This class holds the responsibility of fragmenting. + This allows to fragment an object only once and + send the fragments to various machines thus saving + fragmentation time. + + + + + Callback that is called once a fragmented data is available to send. + + + Fragemented object that can be sent to the remote end. + + + Priority stream to which belongs to. + + + + + Constructs a PrioritySendDataCollection object. + + + + + Adds data to this collection. The data is fragmented in this method + before being stored into the collection. So the calling thread + will get affected, if it tries to add a huge object. + + + + data to be added to the collection. Caller should make sure this is not + null. + + + Priority of the data. + + + + + Adds data to this collection. The data is fragmented in this method + before being stored into the collection. So the calling thread + will get affected, if it tries to add a huge object. + + The data is added with Default priority. + + + + data to be added to the collection. Caller should make sure this is not + null. + + + + + Clears fragmented objects stored so far in this collection. + + + + + Gets the fragment or if no fragment is available registers the callback which + gets called once a fragment is available. These 2 steps are performed in a + synchronized way. + + While getting a fragment the following algorithm is used: + 1. If this is the first time or if the last fragement read is an EndFragment, + then a new set of fragments is chosen based on the implicit priority. + PromptResponse is higher in priority order than default. + 2. If last fragment read is not an EndFragment, then next fragment is chosen from + the priority collection as the last fragment. This will ensure fragments + are sent in order. + + + Callback to call once data is available. (This will be used if no data is currently + available). + + + Priority stream to which the returned object belongs to, if any. + If the call does not return any data, the value of this "out" parameter + is undefined. + + + A FragementRemoteObject if available, otherwise null. + + + + + DataStructure used by remoting transport layer to store + data being received from the wire for a particular priority + stream. + + + + + Callback that is called once a deserialized object is available. + + + Deserialized object that can be processed. + + + + + + + + Defragmentor used to deserialize an object. + + + True if a client transport manager created this collection. + This is used to generate custom messages for server and client. + + + + + Limits the deserialized object size received from a remote machine. + + + + + This might be needed only for ServerCommandTransportManager case + where the command is run in the same thread that runs ProcessRawData + (to avoid thread context switch). By default this class supports + only one thread in ProcessRawData. + + + + + Prepares the collection for a stream connect + When reconneting from same client, its possible that fragment stream get interrupted if server is dropping data + When connecting from a new client, its possible to get trailing fragments of a previously partially transmitted object + Logic based on this flag, ensures such offsync/trailing fragments get ignored until the next full object starts flowing + + + + + Process data coming from the transport. This method analyses the data + and if an object can be created, it creates one and calls the + with the deserialized object. This method + does not assume all fragments to be available. So if not enough fragments are + available it will simply return.. + + + Data to process. + + + Callback to call once a complete deserialized object is available. + + + Defragmented Object if any, otherwise null. + + + 1. Fragmet Ids not in sequence + 2. Object Ids does not match + 3. The current deserialized object size of the received data exceeded + allowed maximum object size. The current deserialized object size is {0}. + Allowed maximum object size is {1}. + + + Might throw other exceptions as the deserialized object is handled here. + + + + + Resets the store(s) holding received data. + + + + + Dispose and release resources. + + + + + DataStructure used by different remoting protocol / + DataStructures to receive data from transport manager. + This class holds the responsibility of defragmenting and + deserializing. + + + + + Construct a priority recieve data collection + + Defragmentor used to deserialize an object. + + True if a client transport manager created this collection. + This is used to generate custom messages for server and client. + + + + + Limits the total data received from a remote machine. + + + + + Limits the deserialized object size received from a remote machine. + + + + + Prepares receive data streams for a reconnection + + + + + This might be needed only for ServerCommandTransportManager case + where the command is run in the same thread that runs ProcessRawData + (to avoid thread context switch). By default this class supports + only one thread in ProcessRawData. + + + + + Process data coming from the transport. This method analyses the data + and if an object can be created, it creates one and calls the + with the deserialized object. This method + does not assume all fragments to be available. So if not enough fragments are + available it will simply return.. + + + Data to process. + + + Priorty stream this data belongs to. + + + Callback to call once a complete deserialized object is available. + + + Defragmented Object if any, otherwise null. + + + 1. Fragmet Ids not in sequence + 2. Object Ids does not match + 3. The current deserialized object size of the received data exceeded + allowed maximum object size. The current deserialized object size is {0}. + Allowed maximum object size is {1}. + 4.The total data received from the remote machine exceeded allowed maximum. + The total data received from remote machine is {0}. Allowed maximum is {1}. + + + Might throw other exceptions as the deserialized object is handled here. + + + + + Dispose and release resources. + + + + + Consolidation of constants for uniformity. + + + + + Definitions of HRESULT error codes that are passed to the client. + 0x8054.... means that it is a PowerShell HRESULT. The PowerShell facility + is 84 (0x54). + + + + + class that holds plugin + shell context information used to handle + shutdown notifications. + + Explicit destruction and release of the IntPtrs is not required because + their lifetime is managed by WinRM. + + + + + Represents the logical grouping of all actions required to handle the + lifecycle of shell sessions through the WinRM plugin. + + + + + Enables dependency injection after the static constructor is called. + This may be overridden in unit tests to enable different behavoir. + It is static because static instances of this class use the facade. Otherwise, + it would be passed in via a parameterized constructor. + + + + + static constructor to listen to unhandled exceptions + from the AppDomain and log the errors + Note: It is not necessary to instantiate IWSManNativeApi here because it is not used. + + + + + Create a new shell in the plugin context. + + + + + + + + + + + This gets called on a thread pool thread once Shutdown wait handle is notified. + + + + + + adds shell session to activeShellSessions store and returns the id + at which the session is added. + + + + + + Retrieves a WSManPluginShellSession if matched. + + Shell context (WSManPluginRequest.unmanagedHandle) + null WSManPluginShellSession if not matched. The object if matched. + + + + Removes a WSManPluginShellSession from tracking. + + IntPtr of a WSManPluginRequest structure. + + + + Triggers a shell close from an event handler. + + Shell context + + + + + Helper function to validate incoming values + + + + + + + + + Create a new command in the shell context. + + + + + + + + + + + Connect + + + + + + + + + + Send data to the shell / command specified. + + + + + + + + + + + unlock the shell / command specified so that the shell / command + starts sending data to the client. + + + + + + + + + + + used to create PSPrincipal object from senderDetails struct. + + + + + + + Helper method to retrieve the WSMan client token from the __WINRM_RUNAS_CLIENT_TOKEN__ + environment variable, which is set in the WSMan layer for Virtual or RunAs accounts. + + ClientToken IntPtr + + + + Was private. Made protected internal for easier testing + + + + + + + Verifies that the protocol version is in the correct syntax and supported. + + + + + + + + static func to take care of unmanaged to managed transitions. + + + + + + + + + + + Close the operation specified by the supplied context. + + + + + + performs deinitialization during shutdown. + + + + + + report operation complete to WSMan and supply a reason (if any) + + + + + + + extract message from exception (if any) and report operation complete with it to WSMan + + + + + + + Sets thread properties like UI Culture, Culture etc..This is needed as code is transitioning from + unmanaged heap to managed heap...and thread properties are not set correctly during this + transition. + Currently WSMan provider supplies only UI Culture related data..so only UI Cutlure is set. + + + + + + Handle any unhandled exceptions that get raised in the AppDomain + This will log the exception into Crimson logs. + + + + + + + Alternate wrapper for WSManPluginOperationComplete. TODO: Needed? I could easily use the handle instead and get rid of this? It is only for easier refactoring... + + + + Pre-formatted localized string + + + + + Wrapper for WSManPluginOperationComplete. It performs validation prior to making the call. + + + + + + + Wrapper for WSManPluginOperationComplete. It performs validation prior to making the call. + + + + + + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PCWSTR + WSMAN_SHELL_STARTUP_INFO* + WSMAN_DATA* + + + + + + PVOID + PVOID + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PVOID + PVOID optional + WSMAN_DATA* optional + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PVOID + PCWSTR + WSMAN_COMMAND_ARG_SET* + + + + + + PVOID + PVOID + PVOID + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PVOID + PVOID + PCWSTR + WSMAN_DATA* + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PVOID + PVOID optional + WSMAN_STREAM_ID_SET* optional + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PVOID + PVOID optional + PCWSTR + + + + Callback that handles shell shutdown notification events. + + + + + + + + + PVOID + + + + + + + + + GC handle which prevents garbage collector from collecting this delegate. + + + + + Initializes the delegate struct for later use + + + + + Internal implementation of Dispose pattern callable by consumers. + + + + + Protected implementation of Dispose pattern. + + + + + + Use C# destructor syntax for finalization code. + This destructor will run only if the Dispose method + does not get called. + It gives your base class the opportunity to finalize. + Do not provide destructors in types derived from this class. + + + + + Creates delegates and populates the managed version of the + structure that will be passed to unmanaged callers. + + + + + + + + + + Structure definition to match the native one. + NOTE: The layout of this structure must be IDENTICAL between here and WSManPluginEntryDelegates in pwrshplugin.h! + + + + + wsManPluginShutdownPluginCallbackNative + + + + + WSManPluginShellCallbackNative + + + + + WSManPluginReleaseShellContextCallbackNative + + + + + WSManPluginCommandCallbackNative + + + + + WSManPluginReleaseCommandContextCallbackNative + + + + + WSManPluginSendCallbackNative + + + + + WSManPluginReceiveCallbackNative + + + + + WSManPluginSignalCallbackNative + + + + + WSManPluginConnectCallbackNative + + + + + Class containing the public static managed entry functions that are callable from outside + the module. + + + + + Constructor is private because it only contains static members and properties. + + + + + Immutable container that holds the delegates and their unmanaged pointers. + + + + + Called only once after the assembly is loaded..This is used to perform + various initializations. + + IntPtr to WSManPluginEntryDelegates.WSManPluginEntryDelegatesInternal + 0 = Success, 1 = Failure + + + + Called only once during shutdown. This is used to perform various deinitializations. + + PVOID + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PVOID + PVOID optional + WSMAN_DATA* optional + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PCWSTR + WSMAN_SHELL_STARTUP_INFO* + WSMAN_DATA* + + + + + + PVOID + PVOID + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PVOID + PCWSTR + WSMAN_COMMAND_ARG_SET* optional + + + + + + PVOID + PVOID + PVOID + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PVOID + PVOID + PCWSTR + WSMAN_DATA* + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PVOID + PVOID optional + WSMAN_STREAM_ID_SET* optional + + + + + + PVOID + WSMAN_PLUGIN_REQUEST* + DWORD + PVOID + PVOID optional + PCWSTR + + + + Callback used to register with thread pool to notify when a plugin operation shutsdown. + Conforms to: + public delegate void WaitOrTimerCallback( Object state, bool timedOut ) + + PVOID + BOOLEAN + + + + + This is a thin wrapper around WSManPluginManagedEntryWrapper.InitPlugin() + so that it can be called from native COM code in a non-static context. + + This was done to get around an FXCop error: AvoidStaticMembersInComVisibleTypes. + + + + + Internal implementation of Dispose pattern callable by consumers. + + + + + Protected implementation of Dispose pattern. + + + + + + Use C# destructor syntax for finalization code. + This destructor will run only if the Dispose method + does not get called. + It gives your base class the opportunity to finalize. + Do not provide destructors in types derived from this class. + + + + + Matches signature for WSManPluginManagedEntryWrapper.InitPlugin + + + + + + + Prevents the delegate object from being garbage collected so it can be passed to the native code. + + + + + Entry point for native code that cannot call static methods. + + A function pointer for the static entry point for the WSManPlugin initialization function. + + + + Abstract class that defines common functionality for WinRM Plugin API Server Sessions + + + + + Dispose(bool disposing) executes in two distinct scenarios. + If disposing equals true, the method has been called directly + or indirectly by a user's code. Managed and unmanaged resources + can be disposed. + If disposing equals false, the method has been called by the + runtime from inside the finalizer and you should not reference + other objects. Only unmanaged resources can be disposed. + + True when called from Dispose(), False when called from Finalize(). + + + + Use C# destructor syntax for finalization code. + This destructor will run only if the Dispose method + does not get called. + It gives your base class the opportunity to finalize. + Do not provide destructors in types derived from this class. + + + + + Report session context to WSMan..this will let WSMan send ACK to + client and client can send data. + + + + + Added to provide derived classes with the ability to send event notifications. + + + + + + + + + + + + Main Routine for Connect on a Shell. + Calls in server remotesessions ExecuteConnect to run the Connect algorithm + This call is synchronous. i.e WSManOperationComplete will be called before the routine completes + + + + + + + + + + + + + + Main routine for connect on a command/pipeline.. Currently NO-OP + will be enhanced later to support intelligent connect... like ending input streams on pipelines + that are still waiting for input data + + + + + + + + + + true if the method is called from RegisterWaitForSingleObject + callback. This boolean is used to decide whether to UnregisterWait or + UnregisterWaitEx + + + + + used by powershell DS handler. notifies transport that powershell is back to running state + no payload + + + + + if flush is true, data will be sent immediately to the client. This is accomplished + by using WSMAN_FLAG_RECEIVE_FLUSH flag provided by WSMan API. + + + + + + + + + + + + + + + + Defines type which has information about RunspacePoolState + and exception associated with that state + + This class is created so that a state change along + with its reason can be transported from the server to the + client in case of RemoteRunspacePool + + + + State of the runspace pool when this event occured + + + + + Exception associated with that state + + + + + Constructor for creating the state info + + state + exception that resulted in this + state change. Can be null + + + + This is queue of all the state change event which have occured for + this pipeline. RaisePipelineStateEvents raises event for each + item in this queue. We don't raise the event with in SetPipelineState + because often SetPipelineState is called with in a lock. + Raising event in lock introduces chances of deadlock in GUI applications. + + + + + Is method executor stream enabled. + + + + + Method executor stream. + + + + + Private constructor that does most of the work constructing a remote pipeline object. + + RemoteRunspace object + AddToHistory + IsNested + + + + Constructs a remote pipeline for the specified runspace and + specified command + + runspace in which to create the pipeline + command as a string, to be used in pipeline creation + whether to add the command to the runspaces history + whether this pipeline is nested + + + + Constructs a remote pipeline object associated with a remote running + command but in a disconnected state. + + Remote runspace associated with running command. + + + + Creates a cloned pipeline from the specified one + + pipeline to clone from + This constructor is private because this will + only be called from the copy method + + + + override for creating a copy of pipeline + + + Pipeline object which is copy of this pipeline + + + + + Access the runspace this pipeline is created on. + + + + + This internal method doesn't do the _disposed check. + + + + + + Is this pipeline nested + + + + + internal method to set the value of IsNested. This is called + by serializer + + + + + internal method to set the value of IsSteppable. This is called + during DoConcurrentCheck + + + + + Info about current state of the pipeline. + + + This value indicates the state of the pipeline after the change. + + + + + Access the input writer for this pipeline. + + + + + Access the output reader for this pipeline. + + + + + Access the error output reader for this pipeline. + + + This is the non-terminating error stream from the command. + In this release, the objects read from this PipelineReader + are PSObjects wrapping ErrorRecords. + + + + + String which is added in the history + + This needs to be internal so that it can be replaced + by invoke-cmd to place correct string in history. + + + + Whether the pipeline needs to be added to history of the runspace + + + + + Stream for providing input to PipelineProcessor. Host will write on + ObjectWriter of this stream. PipelineProcessor will read from + ObjectReader of this stream. + + + + + Invoke the pipeline asynchronously + + + Results are returned through the reader. + + + + + Invokes a remote command and immediately disconnects if + transport layer supports it. + + + + + Invoke the pipeline, synchronously, returning the results as an + array of objects. + + an array of input objects to pass to the pipeline. + Array may be empty but may not be null + An array of zero or more result objects + Caller of synchronous exectute should not close + input objectWriter. Synchronous invoke will always close the input + objectWriter. + + On Synchronous Invoke if output is throttled and no one is reading from + output pipe, Execution will block after buffer is full. + + + + + Connects synchronously to a running command on a remote server. + The pipeline object must be in the disconnected state. + + A collection of result objects. + + + + Connects asynchronously to a running command on a remote server. + + + + + Stop the pipeline synchronously + + + + + Stop the pipeline asynchronously. + This method calls the BeginStop on the underlying + powershell and so any exception will be + thrown on the same thread. + + + + + Verifies if the pipeline is in a state where it can be stopped + + + + + Event raised when Pipeline's state changes. + + + + + Disposes the pipeline + + true, when called on Dipose() + + + + Sets the new execution state. + + the new state + + An exception indicating that state change is the result of an error, + otherwise; null. + + + Sets the internal execution state information member variable. It + also adds PipelineStateInfo to a queue. RaisePipelineStateEvents + raises event for each item in this queue. + + + + + Raises events for changes in execution state. + + + + + Initializes the underlying PowerShell object after verifying + if the pipeline is in a state where it can be invoked. + If invokeAndDisconnect is true then the remote PowerShell + command will be immediately disconnected after it begins + running. + + true if called from a sync call + Invoke and Disconnect + + + + Initializes the underlying PowerShell object after verifying that it is + in a state where it can connect to the remote command. + + + + + + Handle host call received + + sender of this event, unused + arguments describing the host call to invoke + + + + Does the cleanup necessary on pipeline completion + + + + + ManualResetEvent which is signaled when pipeline execution is + completed/failed/stoped. + + + + + Is method executor stream enabled. + + + + + Method executor stream. + + + + + Check if anyother pipeline is executing. + In case of nested pipeline, checks that it is called + from currently executing pipeline's thread. + + True if method is called from Invoke, false + if called from InvokeAsync + + 1) A pipeline is already executing. Pipeline cannot execute + concurrently. + 2) InvokeAsync is called on nested pipeline. Nested pipeline + cannot be executed Asynchronously. + 3) Attempt is made to invoke a nested pipeline directly. Nested + pipeline must be invoked from a running pipeline. + + + + + The underlying powershell object on which this remote pipeline + is created + + + + + Sets the history string to the specified string + + new history string to set to + + + + Blocks data arriving from remote session. + + + + + Resumes data arrive from remote session. + + + + + Blocking call that waits until the current remote data + queue is empty. + + + + + Remote runspace which will be created on the client side. This + runspace is wrapped on a RunspacePool(1). + + + + + This is queue of all the state change event which have occured for + this runspace. RaiseRunspaceStateEvents raises event for each + item in this queue. We don't raise events from with SetRunspaceState + because SetRunspaceState is often called from with in the a lock. + Raising event with in a lock introduces chances of deadlock in GUI + applications. + + + + + In RemoteRunspace, it is required to invoke pipeline + as part of open call (i.e. while state is Opening). + If this property is true, runspace state check is + not performed in AddToRunningPipelineList call. + + + + + In RemoteRunspace, it is required to invoke pipeline + as part of open call (i.e. while state is Opening). + If this property is true, runspace state check is + not performed in AddToRunningPipelineList call. + + + + + Temporary place to remember whether to close this runspace on pop or not. + Used by Start-PSSession. + + + + + Construct a remote runspace based on the connection information + and the specified host + + + The TypeTable to use while deserializing/serializing remote objects. + TypeTable has the following information used by serializer: + 1. SerializationMethod + 2. SerailizationDepth + 3. SpecificSerializationProperties + TypeTable has the following inforamtion used by deserializer: + 1. TargetTypeForDeserializaiton + 2. TypeConverter + + connection information which identifies + the remote computer + host on the client + + Friendly name for remote runspace session. + Id for remote runspace. + Application arguments the server can see in + + + + + Constructs a RemoteRunspace object based on the passed in RunspacePool object, + with a starting state of Disconnected. + + + + + + Helper function to set event handlers. + + + + + runspaceConfiguration information for this runspace + + + + + initialsessionstate information for this runspace + + + + + Manager for JobSourceAdapters registered in this runspace. + + + + + Return version of this runspace + + + + + PS Version running on server. + + + + + Retrieve information about current state of the runspace + + + + + This property determines whether a new thread is create for each invocation + + + Any updates to the value of this property must be done before the Runspace is opened + + + An attempt to change this property was made after opening the Runspace + + + The thread options cannot be changed to the requested value + + + + + Gets the current availability of the Runspace + + + + + Event raised when RunspaceState changes. + + + + + Event raised when the availability of the Runspace changes. + + + + + Returns true if there are any subscribers to the AvailabilityChanged event + + + + + Raises the AvailabilityChanged event + + + + + Connection information to this runspace + + + + + ConnectionInfo originally supplied by the user + + + + + Gets the event manager + + + + + Gets the execution context for this runspace + + + + + Returns true if the internal host is in a nested prompt + + + + + Gets the client remote session associated with this + runspace + + This member is actually not required + for the product code. However, there are + existing transport manager tests which depend on + the same. Once transport manager is modified, + this needs to be removed + + + + Gets command information on a currently running remote command. + If no command is running then null is returned. + + + + + Gets friendly name for the remote PSSession. + + + + + Gets the Id value for the remote PSSession. + + + + + Returns true if Runspace supports disconnect. + + + + + Returns true if Runspace can be connected. + + + + + This is used to indicate a special loopback remote session used for JEA restrictions. + + + + + Debugger + + + + + Open the runspace Asynchronously. + + + RunspaceState is not BeforeOpen + + + + + Open the runspace synchronously. + + + RunspaceState is not BeforeOpen + + + + + Close the runspace Asynchronously. + + + + + Close the runspace synchronously. + + + Attempts to execute pipelines after a call to close will fail. + + + + + Dispose this runspace + + true if called from Dispose + + + + Resets the runspace state to allow for fast reuse. Not all of the runspace + elements are reset. The goal is to minimize the chance of the user taking + accidental dependencies on prior runspace state. + + + Thrown when runspace is not in proper state or avaialablity or if the + reset operation fails in the remote session. + + + + + Queries the server for disconnected runspaces and creates an array of runspace + objects associated with each disconnected runspace on the server. Each + runspace object in the returned array is in the Disconnected state and can be + connected to the server by calling the Connect() method on the runspace. + + Connection object for the target server. + Client host object. + TypeTable object. + Array of Runspace objects each in the Disconnected state. + + + + Creates a single disconnected remote Runspace object based on connection information and + session / command identifiers. + + Connection object for target machine + Session Id to connect to + Optional command Id to connect to + Optional PSHost + Optional TypeTable + Disconnect remote Runspace object + + + + Disconnects the runspace synchronously. + + + Disconnects the remote runspace and any running command from the server + machine. Any data generated by the running command on the server is + cached on the server machine. This runspace object goes to the disconnected + state. This object can be reconnected to the server by calling the + Connect() method. + If the remote runspace on the server remains disconnected for the IdleTimeout + value (as defined in the WSManConnectionInfo object) then it is closed and + torn down on the server. + + + RunspaceState is not Opened. + + + + + Disconnects the runspace asynchronously. + + + Disconnects the remote runspace and any running command from the server + machine. Any data generated by the running command on the server is + cached on the server machine. This runspace object goes to the disconnected + state. This object can be reconnected to the server by calling the + Connect() method. + If the remote runspace on the server remains disconnected for the IdleTimeout + value (as defined in the WSManConnectionInfo object) then it is closed and + torn down on the server. + + + RunspaceState is not Opened. + + + + + Connects the runspace to its remote counterpart synchronously. + + + Connects the runspace object to its corresponding runspace on the target + server machine. The target server machine is identified by the connection + object passed in during construction. The remote runspace is identified + by the internal runspace Guid value. + + + RunspaceState is not Disconnected. + + + + + Connects a runspace to its remote counterpart asynchronously. + + + Connects the runspace object to its corresponding runspace on the target + server machine. The target server machine is identified by the connection + object passed in during construction. The remote runspace is identified + by the internal runspace Guid value. + + + RunspaceState is not Disconnected. + + + + + Creates a PipeLine object in the disconnected state for the currently disconnected + remote running command associated with this runspace. + + Pipeline object in disconnected state. + + + + Creates a PowerShell object in the disconnected state for the currently disconnected + remote running command associated with this runspace. + + PowerShell object in disconnected state. + + + + Returns Runspace capabilities. + + RunspaceCapability + + + + Update the pool disconnect options so that any changes will be + passed to the server during the disconnect/connect operations. + + + + + Remote DebuggerStop event. + + + + + Remote BreakpointUpdated event. + + + + + Create an empty pipeline + + An empty pipeline + + + + Createa a pipeline froma command string + + A valid command string + + A pipline pre-filled with Commands specified in commandString. + + + command is null + + + + + Create a pipeline from a command string. + + A valid command string + if true command is added to history + + A pipline pre-filled with Commands specified in commandString. + + + command is null + + + + + Creates a nested pipeline. + + + Nested pipelines are needed for nested prompt scenario. Nested + prompt requires that we execute new pipelines( child pipelines) + while current pipeline (lets call it parent pipeline) is blocked. + + Not supported in remoting + scenarios + + + + Creates a nested pipeline. + + A valid command string + if true command is added to history + + A pipline pre-filled with Commands specified in commandString. + + Not supported in remoting + scenarios + + + + Add the pipeline to list of pipelines in execution. + + Pipeline to add to the + list of pipelines in execution + + + Thrown if the runspace is not in the Opened state. + . + + + Thrown if + is null. + + + + + Remove the pipeline from list of pipelines in execution. + + Pipeline to remove from the + list of pipelines in execution + + + Thrown if is null. + + + + + Check to see, if there is any other pipeline running in this + runspace. If not, then add this to the list of pipelines + + pipeline to check and add + whether this is being called from + a synchronous method call + + + + Returns SessionState proxy object. + + + + + + Set debug mode on remote session based on the interactive host + setting, if available. + + + + + Asserts if the current state of the runspace is BeforeOpen + + + + + Set the new runspace state. + + the new state + An exception indicating the state change is the + result of an error, otherwise; null. + + Previous runspace state + + Sets the internal runspace state information member variable. It also + adds RunspaceStateInfo to a queue. + RaiseRunspaceStateEvents raises event for each item in this queue. + + + + + Raises events for changes in runspace state. + + + + + Creates a pipeline + + + + + + + + + Waits till all the pipelines running in the runspace have + finished execution. + + + + + Gets the currently executing pipeline. + + Internal because it is needed by invoke-history + + + + Handles any host calls received from the server + + sender of this information, unused + arguments describing this event, contains + a RemoteHostCall object + + + + When the client remote session reports a URI redirection, this method will report the + message to the user as a Warning using Host method calls. + + + + + + + Forward the events from the runspace pool to the current instance + + + + + The session has been successfully created. + + + + + + + Updates runspace DisconnectedOn/ExpiresOn based on RS Pool connectionInfo. + + + + + Determines if another Invoke-Command is executing + in this runspace in the currently running local pipeline + ahead on the specified invoke-command + + current invoke-command + instance + local pipeline id + true, if another invoke-command is running + before, false otherwise + + + + Keeps track of the current invoke command executing + within the current local pipline + + reference to invoke command + which is currently being processed + the local pipeline id + + + + Clears the current invoke-command reference stored within + this remote runspace + + + + + Aborts any current Opening process. If runspace is not opening then this has no effect. + This is currently *only* for named pipe connections where a connection + to a process is limited to a single client. + + + + + The runspace pool that this remote runspace wraps + + + + + EventHandler used to report connecion URI redirections to the application + + + + + Private data to be used by applications built on top of PowerShell. + + Remote runspace gets its application private data from the server (when creating the remote runspace pool) + - calling this method on a remote runspace will block until the data is received from the server. + + Runspaces that are part of a inherit application private data from the pool. + + + + + RemoteDebugger + + + + + RemoteDebuggerStopEvent + + + + + RemoteDebuggerBreakpointUpdatedEvent + + + + + Constructor + + Associated remote runspace + + + + Process debugger command. + + Debugger PSCommand + Output + DebuggerCommandResults + + + + StopProcessCommand + + + + + SetDebuggerAction + + DebuggerResumeAction + + + + GetDebuggerStopped + + DebuggerStopEventArgs + + + + SetDebugMode + + + + + + Sets debugger stepping mode. + + True if stepping is to be enabled + + + + True when debugger is active with breakpoints. + + + + + True when debugger is stopped at a breakpoint. + + + + + InternalProcessCommand + + + + + + + + IsRemote + + + + + Sets how the debugger deals with breakpoint events that are not handled. + Ignore - This is the default behavior and ignores any breakpoint event + if there is no handler. Releases any preserved event. + Wait - This mode preserves a breakpoint event until a handler is + subscribed. + + + + + Dispose + + + + + Internal method that checks the debug state of + the remote session and raises the DebuggerStop event + if debugger is in stopped state. + This is used internally to help clients get back to + debug state when reconnecting to remote session in debug state. + + + + + IsRemoteDebug + + + + + Sets client debug info state based on server info. + + Debug mode + Currently in breakpoint + Breakpoint count + Break All setting + UnhandledBreakpointMode + Server PowerShell version + + + + If a command is stopped while in debug stopped state and it + is the only command running then server is no longer debug stopped. + + + + + Gets breakpoint information from the target machine and passes that information + on through the BreakpointUpdated event. + + + + + IsDebuggerSteppingEnabled + + + + + Set a variable in session state. + + + + The name of the item to set. + + + + The new value of the item being set. + + + + name is null + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get a variable out of session state. + + + + name of variable to look up + + + + The value of the specified variable. + + + + name is null + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the list of applications out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the list of scripts out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the APIs to access drives out of session state + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get/Set the language mode out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the module info out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the APIs to access paths and locations out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the APIs to access a provider out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the APIs to access variables out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Get the APIs to build script blocks and execute script out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Gets the instance of the provider interface APIs out of session state. + + + + Runspace is not open. + + + + Another SessionStateProxy call or another pipeline is in progress. + + + + + Enumeration for job status values. Indicates the status + of the result object + + + + + Execution of command in job not started + + + + + execution of command in progress + + + + + execution of command completed in all + computernames/runspaces + + + + + An error was encountered when trying to executed + command in one or more computernames/runspaces + + + + + Command execution is cancelled (stopped) in one or more + computernames/runspaces. + + + + + Command execution is blocked (on user input host calls etc) + + + + + The job has been suspended + + + + + The job is a remote job and has been disconnected from the server. + + + + + Suspend is in progress + + + + + Stop is in progress + + + + + Script execution is halted in a debugger stop. + + + + + Defines exception which is thrown when state of the PSJob is different + from the expected state. + + + + + Creates a new instance of InvalidPSJobStateException class. + + + + + Creates a new instance of InvalidPSJobStateException class. + + + The error message that explains the reason for the exception. + + + + + Creates a new instance of InvalidPSJobStateException class. + + + The error message that explains the reason for the exception. + + + The exception that is the cause of the current exception. + + + + + Creates a new instance of InvalidJobStateException class. + + + The Job State at the time of the error. + + + An additional message that gives more information about the error. Used + for context after a generalized error message. + + + + + Initializes a new instance of the InvalidPSJobStateException and defines value of + CurrentState. + + Current state of powershell + + + + Initializes a new instance of the InvalidPSJobStateException + class with serialized data. + + + The that holds the serialized object + data about the exception being thrown. + + + The that contains contextual information + about the source or destination. + + + + + Gets CurrentState of the Job + + + + + State of job when exception was thrown. + + + + + Type which has information about JobState and Exception + ,if any, associated with JobState + + + + + Constructor for state changes not resulting from an error. + + Execution state + + + + Constructor for state changes with an optional error. + + The new state. + A non-null exception if the state change was + caused by an error,otherwise; null. + + + + + Copy constructor to support cloning + + source information + + ArgumentNullException when is null. + + + + + The state of the job. + + + This value indicates the state of the job . + + + + + The reason for the state change, if caused by an error. + + + The value of this property is non-null if the state + changed due to an error. Otherwise, the value of this + property is null. + + + + + override for ToString() + + + + + + Clones this object + + Cloned object + + + + The current execution state + + + + + Non-null exception if the execution state change was due to an error. + + + + + Event arguments passed to JobStateEvent handlers + event. + + + + + Constructor of JobStateEventArgs + + The current state of the job. + + + + Constructor of JobStateEventArgs + + The current state of the job. + The previous state of the job. + + + + Info about the current state of the job. + + + + + Info about the previous state of the job. + + + + + Info about the current state of the job + + + + + Info about the previous state of the job + + + + + Object that must be created by PowerShell to allow reuse of an ID for a job. + Also allows setting of the Instance Id so that jobs may be recreated. + + + + + Interface to expose a job debugger. + + + + + Job Debugger + + + + + True if job is running asynchronously. + + + + + Represents a command running in background. A job object can internally + contain many child job objects. + + + + + Default constructor + + + + + Creates an instance of this class + + Command invoked by this job object + + + + Creates an instance of this class + + Command invoked by this job object + Friendly name for the job object + + + + Creates an instance of this class + + Command invoked by this job object + Friendly name for the job object + Child jobs of this job object + + + + Creates an instance of this class + + Command invoked by this job object + Friendly name for the job object + Id and InstanceId pair to be used for this job object + The JobIdentifier is a token that must be issued by PowerShell to allow + reuse of the Id. This is the only way to set either Id or instance Id. + + + + Creates an instance of this class + + Command invoked by this job object + Friendly name for the job object + InstanceId to be used for this job object + The InstanceId may need to be set to maintain job identity across + instances of the process. + + + + Static variable which is incremented to generate id + + + + + Command Invoked by this Job + + + + + Status of the command execution. + + + + + Wait Handle which is signaled when job is finished. + This is set when state of the job is set to Completed, + Stopped or Failied. + + + + + unique identifier for this job + + + + + Short identifier for this result which will be + recycled and used within a process + + + + + Name for identifying this job object + + + + + List of child jobs contained within this job + + + + + Success status of the command execution. + + + + + Indicates that more data is available in this + result object for reading. + + + + + Time job was started. + + + + + Time job stopped. + + + + + Job type name. + + + + + Result objects from this job. If this object is not a + leaf node (with no children), then this will + aggregate the results from all child jobs + + + + + Indicates if a particular Job type uses the + internal results collection + + + + + Suppresses forwarding of job output into a cmdlet (like Receive-Job). + This flag modifies functionality of method, so that it doesnt add output-processing to collection. + + + + + Allows propagating of terminating exceptions from remote "throw" statement + (normally / by default all remote errors are transformed into non-terminating errors + + + + + This method is introduce for delaying the loading of streams + for a particular job. + + + + + Unloads job streams information. Enables jobs to + clear stream information from memory + + + + + Load the required job streams + + + + + Unload the required job streams + + + + + Gets or sets the output buffer. Output of job is written + into this buffer. + + + Cannot set to a null value. + + + Object is disposed. + + + + + Gets or sets the error buffer. Errors of job are written + into this buffer. + + + Cannot set to a null value. + + + Object is disposed. + + + + + Gets or sets the progress buffer. Progress of job is written + into this buffer. + + + Cannot set to a null value. + + + Object is disposed. + + + + + Gets or sets the verbose buffer. Verbose output of job is written to + this stream. + + + Object is disposed. + + + + + Gets or sets the debug buffer. Debug output of Job is written + to this buffer. + + Cannot set to a null value. + + + + Object is disposed. + + + + + Gets or sets the warning buffer. Warnings of job are written to + this buffer + + + Cannot set to a null value. + + + Object is disposed. + + + + + Gets or sets the information buffer. Information records of job are written to + this buffer + + + Cannot set to a null value. + + + Object is disposed. + + + + + Indicates a location where this job is running + + + + + Returns boolean indicating whether the underlying + transport for the job (or child jobs) supports + connect/disconnect semantics. + + + + + Returns runspaces associated with the Job, including + child jobs. + + IEnumerable of RemoteRunspaces + + + + Event raised when state of the job changes + + + + + Sets Job State. + + + New State of Job + + + + + Sets Job State. + + + New State of Job + + + Reason associated with the state. + + + + + Stop this job object. If job contains child job, this should + stop child job objects also. + + + + + Returns the items in results collection + after clearing up all the internal + structures + + collection of stream objects + + + + Helper function to check if job is finished + + + + + + + Checks if the current instance can accept changes like + changing one of the properties like Output, Error etc. + If changes are not allowed, throws an exception. + + + Powershell instance cannot be changed in its + current state. + + + Object is disposed. + + + + + Automatically generate a job name if the user + does not supply one + + auto generated job name + Since the user can script/program against the + job name, the auto generated name will not be + localizable + + + + Checks if the current powershell instance is disposed. + If disposed, throws ObjectDisposedException. + + + Object is disposed. + + + + + A helper method to close all the streams. + + + + + Gets the job for the specified location + + location to filter on + collection of jobs + + + + Dispose all managed resources. This will suppress finalizer on the object from getting called by + calling System.GC.SuppressFinalize(this). + + + + + Release all the resources. + + + if true, release all the managed objects. + + + + + MonitorOutputProcessing + + + + + Top level job object for remoting. This contains multiple child job + objects. Each child job object invokes command on one remote machine. + + + Not removing the prefix "PS" as this signifies powershell specific remoting job + + + + + Internal constructor for initializing PSRemotingJob using + computer names + + names of computers for + which the job object is being created + list of helper objects + corresponding to the computer names + + remote command corresponding to this + job object + a friendly name for the job object + + + + + Internal constructor for initializing job using + PSSession objects + + array of runspace info + objects on which the remote command is executed + List of helper objects for the + runspaces + remote command corresponding to this + job object + a friendly name for the job object + + + + + Internal constructor for initializing PSRemotingJob using + computer names + + names of computers for + which the result object is being created + list of helper objects + corresponding to the computer names + + remote command corresponding to this + result object + Throttle limit to use + a friendly name for the job object + + + + Internal constructor for initializing job using + PSSession objects + + array of runspace info + objects on which the remote command is executed + List of helper objects for the + runspaces + remote command corresponding to this + result object + throttle limit to use + + + + + Creates a job object and child jobs for each disconnected pipeline/runspace + provided in the list of ExecutionCmdletHelperRunspace items. The runspace + object must have a remote running command that can be connected to. + Use Connect() method to transition to the connected state. + + List of DisconnectedJobOperation objects with disconnected pipelines. + Throttle limit value. + Job name. + Aggregate results. + + + + Default constructor + + + + + Initialization common to both constructors + + + + + Get entity result for the specified computer + + computername for which entity + result is required + entity result + + + + Get entity result for the specified runspace + + runspace for which entity + result is required + entity result + + + + Get entity result for the specified helper object + + helper for which entity + result is required + entity result + + + + Connect all child jobs if they are in a disconnected state. + + + + + Connect a single child job associated with the provided runspace. + + Runspace instance id for child job. + + + + Simple throttle operation class for connecting jobs. + + + + + Finds the disconnected child job associated with this runspace and returns + the PowerShell object that is remotely executing the command. + + Runspace instance Id. + Associated PowerShell object. + + + + Helper method to find a disconnected child job associated with + a given runspace. + + Runspace Id. + PSRemotingChildJob object. + + + + Internal method to stop a job without first connecting it if it is in + a disconnected state. This supports Receive-PSSession where it abandons + a currently running/disconnected job when user selects -OutTarget Host. + + + + + indicates if more data is available + + + This has more data if any of the child jobs have more data. + + + + + Stop Job + + + + + Message indicating status of the job + + + + + used by Invoke-Command cmdlet to show/hide computername property value. + Format and Output has capability to understand RemoteObjects and this property lets + Format and Output decide whether to show/hide computername. + Default is true. + + + + + Checks the status of remote command execution + + + + + Handles the StateChanged event from each of the child job objects + + + + + + + Updates the parent job state based on state of all child jobs. + + New child job state. + Previous child job state. + + + + Release all the resources. + + + if true, release all the managed objects. + + + + + Computers on which this job is running + + + + + Returns boolean indicating whether the underlying + transport for the job (or child jobs) supports + connect/disconnect semantics. + + + + + Returns runspaces associated with the Job, including + child jobs. + + IEnumerable of RemoteRunspaces + + + + Handles JobUnblocked event from a child job and decrements + count of blocked child jobs. When count reaches 0, sets the + state of the parent job to running + + sender of this event, unused + event arguments, should be empty in this + case + + + + Simple throttle operation class for PSRemoting jobs created in the + disconnected state. + + + + + Class for RemotingChildJob object. This job object invokes command + on one remote machine. + + + TODO: I am not sure whether to change this internal to just RemotingChildJob. + + + Not removing the prefix "PS" as this signifies powershell specific remoting job + + + + + Creates an instance of PSRemotingChildJob + + command invoked by this job object + + + + + + + Constructs a disconnected child job that is able to connect to a remote + runspace/command on a server. The ExecutionCmdletHelperRunspace must + contain a remote pipeline object in a disconnected state. In addition + the pipeline runspace must be associated with a valid running remote + command that can be connected to. + + ExecutionCmdletHelper object containing runspace and pipeline objects. + ThrottleManger object. + Aggregate results. + + + + Default constructor + + + + + Connects the remote pipeline that this job represents. + + + + + Removes job data aggregation callbacks. Used for jobs + stopped in debugger so that debugger can access data. + + + + + Stops the job + + + + + Status Message associated with the Job + + + + + Indicates if there is more data available in + this Job + + + + + Returns the computer on which this command is + running + + + + + + + + + + helper associated with this entity + + + + + used by Invoke-Command cmdlet to show/hide computername property value. + Format and Output has capability to understand RemoteObjects and this property lets + Format and Output decide whether to show/hide computername. + Default is true. + + + + + Property that indicates this disconnected child job was + previously in the Blocked state. + + + + + Returns boolean indicating whether the underlying + transport for the job (or child jobs) supports + connect/disconnect semantics. + + + + + Job Debugger + + + + + True if job is synchronous and can be debugged. + + + + + Handler which will handle output ready events of the + pipeline. The output objects are queued on to the + internal stream + + the pipeline reader which raised + this event + information describing the ready event + + + + Handler which will handle error ready events of the + pipeline. The error records are queued on to the + internal stream + + the pipeline reader which raised + this event + information describing the ready event + + + + When the client remote session reports a URI redirection, this method will report the + message to the user as a Warning using Host method calls. + + + + + + + Used to detect an Invoke-Command running command breakpoint hit. + In this case disconnect the runspace so that a debugger can be + attached later by the user. + + + + + + + Handle method executor stream events. + + The sender. + The event args. + + + + Handle changes in pipeline states + + + + + + + Handle a throttle complete event + + sender of this event + not used in this method + + + + Handle the operation complete event + + sender of this event + operation complete event args + + + + This method marks the completion state for Job. Also if job failed, it processes the + reason of failure. + + + + + This is the pretty formated error record associated with the reason of failure. + + + + + This is the pretty formated error record associated with the reason of failure. + This is set if Job state is Failed and Reason has a exception. + + + + + Process the exceptions to decide reason for job failure + + + + + + + + Release all the resources. + + + if true, release all the managed objects. + + + + + Cleanup after state changes to finished + + + + + Aggregates results from the pipeline associated + with the specified helper + + helper whose pipeline results + need to be aggregated + + + + If the pipeline is not null, returns the pipeline's PowerShell + If it is null, then returns the PowerShell with the specified + instance Id. + + remote pipeline + instance as described in event args + PowerShell instance + + + + When a debug message is raised in the underlying PowerShell + add it to the jobs debug stream + + unused + arguments describing this event + + + + When a verbose message is raised in the underlying PowerShell + add it to the jobs verbose stream + + unused + arguments describing this event + + + + When a warning message is raised in the underlying PowerShell + add it to the jobs warning stream + + unused + arguments describing this event + + + + When a progress message is raised in the underlying PowerShell + add it to the jobs progress tream + + unused + arguments describing this event + + + + When a Information message is raised in the underlying PowerShell + add it to the jobs Information stream + + unused + arguments describing this event + + + + Stops collecting results from the pipeline associated with + the specified helper + + helper class whose pipeline results + aggregation has to be stopped + + + + Removes aggregate callbacks from pipeline so that a new job object can + be created and can add its own callbacks. + This is to support Invoke-Command auto-disconnect where a new PSRemoting + job must be created to pass back to user for connection. + + helper class + + + + register for throttle complete from the specified + throttlemanager + + + + + + unregister for throttle complete from the specified + throttle manager + + + + + + Determine the current state of the job based on the underlying + pipeline state and set the state accordingly + + + + + + Set the state of the current job from blocked to + running and raise an event indicating to this + parent job that this job is unblocked + + + + + Returns the PowerShell for the specified instance id + + instance id of powershell + powershell instance + + + + Returns the PowerShell object associated with this remote child job. + + PowerShell object. + + + + Monitor runspace availability and if it goes to RemoteDebug then set + job state to Debug. Set back to Running when availability goes back to + Busy (indicating the script/command is running again). + + Runspace + RunspaceAvailabilityEventArgs + + + + Event raised by this job to indicate to its parent that + its now unblocked by the user + + + + + This is a debugger wrapper class used to allow debugging of + remoting jobs that implement the IJobDebugger interface. + + + + + Constructor + + Debugger to wrap. + Remote runspace. + Name of associated job. + + + + Evaluates provided command either as a debugger specific command + or a PowerShell command. + + PowerShell command + Output + DebuggerCommandResults + + + + Sets the debugger resume action. + + DebuggerResumeAction + + + + Stops a running command. + + + + + Returns current debugger stop event arguments if debugger is in + debug stop state. Otherwise returns null. + + DebuggerStopEventArgs + + + + Sets the parent debugger, breakpoints, function source and other + debugging context information. + + Parent debugger + List of breakpoints + Debugger mode + PowerShell host + Current path + Function to source map + + + + Sets the parent debugger and breakpoints. + + Parent debugger + List of breakpoints + Debugger mode + host + Current path + + + + Sets the debugger mode. + + + + + Returns IEnumerable of CallStackFrame objects. + + + + + + Sets debugger stepping mode. + + True if stepping is to be enabled + + + + CheckStateAndRaiseStopEvent + + + + + True when debugger is stopped at a breakpoint. + + + + + This job is used for running as a job the results from multiple + pipelines. This is used in synchronouse Invoke-Expression execution + + + TODO: I am not sure whether to change this internal to just InvokeExpressionSyncJob. + + + Not removing the prefix "PS" as this signifies powershell specific remoting job + + + + + Construct an invoke-expression sync job + + list of operations to use + throttle manager to use for + this job + + + + Clean up once job is finished + + + + + release all resources + + true if called by Dispose() + + + + Handles operation complete from the operations. Adds an error record + to results whenever an error is encountered + + sender of this event + arguments describing this event, unused + + + + Handle changes in pipeline states + + + + + + + Checks for a condition where all pipelines are either finished + or disconnected and at least one pipeline is disconnected. + In this case the Job state is set to Disconnected. + + + + + Used to stop all operations + + + + + This method marks the completion state for Job. Also if job failed, it processes the + reason of failure. + + + + + Returns the PowerShell instance for the specified id + + instance id of PowerShell + PowerShell instance + + + + Used to unregister URI Redirection handler. + + + + + + + Submits the operations created in the constructor for invocation. + + + + + Determines if the job is in a terminal state + + true, if job in terminal state + false otherwise + + + + Returns a collection of all powershells for this job. + + Collection of PowerShell objects. + + + + Returns a disconnected remoting job object that contains all + remote pipelines/runspaces that are in the Disconnected state. + + + + + + New base class for a job that provides extended state + management functionality on the job. Since the existing + Job class is an abstract class and there are existing + implementations of the same, it is required to have a + new class that will have the extended functionality. This + is to ensure that backwards compatibility is maintained + + However, this class will derive from the existing Job + class. The option of deprecating the existing class was + considered as well. In order to maintain backwards + compatibility of PowerShell job cmdlets they will have + to work with the old interface and hence deprecating + the Job class did not add any benefit rather than + deriving from the same + + The following are some of the notes about + why the asynchronous operations are provided this way + in this class. There are two possible options in which + asynchornous support can be provided: + 1. Classical pattern (Begin and End) + 2. Event based pattern + + Although the PowerShell API uses the classical pattern + and we would like the Job API and PowerShell API to be + as close as possible, the classical pattern is inherently + complex to use. + + + + These are the parameters that can be used by a job + implementation when they want to specify parameters + to start a job + + + + + Object that will be used for thread synchronization + + + + + Parameters to be used to start a job. + This is a property because CommandParameterCollection + does not have a public constructor. Hence the + infrastructure creates an instance and provides + it for the implementations to use + + + + + + + + + + Default no argument constructor + + + + + Constructor which will initialize the job + with the associated command string + + string representation + of the command the job is running + + + + Creates an instance of this class + + Command invoked by this job object + Friendly name for the job object + + + + Creates an instance of this class + + Command invoked by this job object + Friendly name for the job object + Child jobs of this job object + + + + Creates an instance of this class + + Command invoked by this job object + Friendly name for the job object + JobIdentifier token used to assign Id and InstanceId + + + + Creates an instance of this class + + Command string + Friendly name for the job + Instance ID to allow job identification across sessions. + + + + There is an internal method in Job which is not made + public. In order to make this available to someone + implementing a job it has to be added here. If the + original method is made public it has changes of + colliding with some implementation which may have + added that method + + state of the job + exception associated with the + job entering this state + + + + start a job. The job will be started with the parameters + specified in StartParameters + + It is redudant to have a method named StartJob + on a job class. However, this is done so as to avoid + an FxCop violation "CA1716:IdentifiersShouldNotMatchKeywords" + Stop and Resume are reserved keyworks in C# and hence cannot + be used as method names. Therefore to be consistent it has + been decided to use *Job in the name of the methods + + + + Start a job asynchronously + + + + + Event to be raise when the start job activity is completed. + This event should not be raised for + synchronous operation + + + + + Method which can be extended or called by derived + classes to raise the event when start of + the job is completed + + arguments describing + an exception that is associated with the event + + + + Method which can be extended or called by derived + classes to raise the event when stopping a + job is completed + + argument describing + an exception that is associated with the event + + + + Method which can be exteded or called by derived + classes to raise the event when suspending a + job is completed + + argument describing + an exception that is associated with the event + + + + Method which can be extended or called by derived + classes to raise the event when resuming a + suspended job is completed + + argument describing + an exception that is associated with the event + + + + Method which can be extended or called by derived + classes to raise the event when unblocking a + blocked job is completed + + argument describing + an exception that is associated with the event + + + + Raises the appropriate event based on the operation + and the associated event arguments + + operation for which the event + needs to be raised + + + + + Stop a job asynchronously + + + + + Event to be raised when the asynchronous stopping of a job + is completed.This event should not be raised for + synchronous operation + + + + + Suspend a job + + + + + Asynchronously suspend a job + + + + + This event should be raised whenever the asynchronous suspend of + a job is completed. This event should not be raised for + synchronous operation + + + + + Resume a suspended job + + + + + Resume a suspended job asynchronously. + + + + + This event should be raised whenever the asynchronous resume of + a suspended job is completed. This event should not be raised for + synchronous operation + + + + + Unblock a blocked job + + + + + Unblock a blocked job asynchronously + + + + + StopJob + + + + + + + StopJobAsync + + + + + + + SuspendJob + + + + + + + SuspendJobAsync + + + + + + + This event should be raised whenever the asynchronous unblock + of a blocked job is completed. This event should not be raised for + synchronous operation + + + + + Specifies the various thread options that can be used + for the ThreadBasedJob + + + + + Use the default behavior, which is to use a + ThreadPoolThread + + + + + Use a thread pool thread + + + + + Create a new thread everything and reuse + + + + + Top level container job + + + + + Create a container parent job with the + specified command string and name + + command string + friendly name for display + + + + Create a container parent job with the + specified command string + + Command string + + + + Create a container parent job with the + specified command string + + Command string + Friendly name for the job + JobIdentifier token that allows reuse of an Id and Instance Id + + + + Create a container parent job with the + specified command string + + Command string + Friendly name for the job + Instance ID to allow job identification across sessions. + + + + Create a container parent job with the + specified command string + + Command string + Friendly name for the job + JobIdentifier token that allows reuse of an Id and Instance Id + Job type name + + + + Create a container parent job with the + specified command string + + Command string + Friendly name for the job + Instance ID to allow job identification across sessions. + Job type name + + + + Create a container parent job with the specified command, name, + job type strings. + + Command string + Friendly name for the job + Job type name + + + + Add a child job to the parent job + + child job to add + Thrown if the job is disposed. + Thrown if child being added is null. + + + + indicates if more data is available + + + This has more data if any of the child jobs have more data. + + + + + Message indicating status of the job + + + + + Starts all jobs. + + Thrown if job is disposed. + + + + Starts all child jobs asynchronously. + When all child jobs are started, StartJobCompleted event is raised. + + + + + Resume all jobs. + + Thrown if job is disposed. + + + + Resume all jobs asynchronously. + + + + + Suspends all jobs. + + Thrown if job is disposed. + + + + Suspends all jobs forcefully. + + Force flag for suspending forcefully. + Reason for doing forceful suspend. + + + + Suspends all jobs asynchronously. + When all jobs have been suspended, SuspendJobCompleted is raised. + + + + + Suspends all jobs asynchronously with force flag. + When all jobs have been suspended, SuspendJobCompleted is raised. + + Force flag for suspending forcefully. + Reason for doing forceful suspend. + + + + Stop all child jobs. + + + + + Stops all child jobs asynchronously. + Once all child jobs are stopped, StopJobCompleted event is raised. + + + + + StopJob + + + + + + + StopJobAsync + + + + + + + Unblock all child jobs. + + Thrown if job is disposed. + + + + Unblock all child jobs asynchronously. + Once all child jobs are unblocked, UnblockJobCompleted event is raised. + + + + + Internal synchronous SuspendJob, calls appropriate version if Force is specified. + + + + + + + Internal SuspendJobAsync. Calls appropriate method if Force is specified + + + + + + + StopJob + + + + + + + StopJobAsync + + + + + + + Handles the StateChanged event from each of the child job objects + + + + + + + Handles the StateChanged event from each of the child job objects + + + + + + + + + + + + true if the job state needs to be modified, false otherwise + + + + Release all the resources. + + + if true, release all the managed objects. + + + + + Computers on which this job is running + + + + + Container exception for jobs that can map errors and exceptions + to specific lines in their input. + + + + + Creates a new JobFailedException + + + + + Creates a new JobFailedException + + The message of the exception + + + + Creates a new JobFailedException + + The message of the exception + The actual exception that caused this error. + + + + Creates a new JobFailedException + + The actual exception that caused this error. + A ScriptExtent that describes where this error originated from. + + + + Class constructor + + serialization info + streaming context + + + + The actual exception that caused this error. + + + + + The user-focused location from where this error originated. + + + + + Gets the information for serialization + + The standard SerializationInfo + The standard StreaminContext + + + + Returns the reason for this exception + + + + + Contains the definition of a job which is defined in a + job store + + The actual implementation of this class will + happen in M2 + + + + A friendly Name for this definition + + + + + The type that derives from JobSourceAdapter + that contains the logic for invocation and + management of this type of job. + + + + + Module name for the module contianing + the source adapter implementation. + + + + + Job source adapter type name. + + + + + Name of the job that needs to be loaded + from the specified module + + + + + Unique Guid for this job definition + + + + + Save this definition to the specified + file on disk + + stream to save to + + + + Load this definition from the specified + file on disk + + + + + + Returns information about this job like + name, definition, parameters etc + + + + + Public constructor for testing. + + Type of adapter to use to create a job. + the command string. + the job name. + + + + + + + + + + + + + + + + + + Class that helps define the parameters to + be passed to a job so that the job can be + instantiated without having to specify + the parameters explicitly. Helps in + passivating job parameters to disk + + This class is not required if + CommandParameterCollection adds a public + constructor.The actual implementation of + this class will happen in M2 + + + + Friendly name associated with this specification + + + + + Command string to execute. + + + + + Definition associated with the job + + + + + Parameters associated with this specification + + + + + Unique identifies for this specification + + + + + Save this specification to a file + + stream to save to + + + + Load this specification from a file + + stream to load from + + + + Constructor. + + + + + Create a new job definition with a single set of parameters. + + The job definition + The parameter collection to use + + + + Create a new job definition with a multiple sets of parameters. This allows + different parameters for different machines. + + The job definition + Collection of sets of parameters to use for the child jobs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Utility function to turn a dictionary of name/value pairs into a parameter collection + + The dictionary to convert + The converted collection + + + + Abstract class for a job store which will + contain the jobs of a specific type. + + + + + Name for this store + + + + + Get a token that allows for construction of a job with a previously assigned + Id and InstanceId. This is only possible if this JobSourceAdapter is the + creator of the original job. + The original job must have been saved using "SaveJobIdForReconstruction" + + Instance Id of the job to recreate + JobIdentifier to be used in job construction + + + + Saves the Id information for a job so that it can be constructed at a later time. + This will only allow this job source adapter type to recreate the job. + + The job whose id information to store. + Recurse to save child job Ids. + + + + Create a new job with the specified definition + + job definition to use + job object + + + + Creates a new job with the definition as specified by + the provided definition name and path. If path is null + then a default location will be used to find the job + definition by name. + + Job definition name + Job definition file path + Job2 object + + + + Create a new job with the specified JobSpecification + + specification + job object + + + + Get the list of jobs that are currently available in this + store + + collection of job objects + + + + Get list of jobs that matches the specified names + + names to match, can support + wildcard if the store supports + + collection of jobs that match the specified + criteria + + + + Get list of jobs that run the specified command + + command to match + + collection of jobs that match the specified + criteria + + + + Get list of jobs that has the specified id + + Guid to match + + job with the specified guid + + + + Get job that has specific session id + + Id to match + + Job with the specified id + + + + Get list of jobs that are in the specified state + + state to match + + collection of jobs with the specified + state + + + + Get list of jobs based on the adapter specific + filter parameters + + dictionary containing name value + pairs for adapter specific filters + + collection of jobs that match the + specified criteria + + + + Remove a job from the store + + job object to remove + + + + Saves the job to a persisted store. + + Job2 type job to persist + + + + Class that will serve as the API for hosting and executing + workflows in PowerShell. This class will have a behavior + similar to how the Runspace and PowerShell APIs behave in + the remoting scenario. The objects on the client side act + as proxies to the real objects on the server + + + + + Internal constructor + + the command to execute + + + + Success status of the command execution. + + + + + Indicates that more data is available in this + result object for reading. + + + + + This is the location string from the remote job. + + + + + start a job. The job will be started with the parameters + specified in StartParameters + + Thrown if the job + is already running, if there is no runspace or runspace pool + assigned. + Thrown if the job is + otherwise started, finished, or suspended. + Thrown if job is + disposed. + + + + Start a job asynchronously + + When a job is started all the data in the + job streams from a previous invocation will be cleared + + + + Stop a job synchronously. In order to be consistent, this method + should be used in place of StopJob which was introduced in the + v2 Job API + + Thrown if job is blocked. + Thrown if job is disposed. + + + + Stop a job asynchronously + + + + + StopJob + + + + + + + StopJobAsync + + + + + + + Suspend a job + + Throws if the job is not in + a running or suspended state. + Thrown if job is + disposed. + + + + Asynchronously suspend a job + + + + + SuspendJob + + + + + + + SuspendJobAsync + + + + + + + Resume a suspended job + + Throws if the job + is not in a suspended or running state. + Thrown if job is + disposed. + + + + Resume a suspended job asynchronously. + + + + + Unblock a blocked job + + Unblock job is not supported on PSJobProxy. + + + + Unblock a blocked job asynchronously + + + + + Start execution of the workflow with the + specified input. This input will serve as + input to the underlying pipeline + + collection of input + objects + + + + Start execution of the job with the + specified input. This input will serve as + input to the underlying pipeline + + + Not sure if this method is needed. This has + been added just to be in sync with the PowerShell + APIs + + + + Start execution of the workflow with the + specified input. This input will serve as + input to the underlying pipeline. + Because the number of child jobs is unknown before starting + the job, delegates may be indicated to ensure that no events will be missed + after the child job is created if data begins streaming back immediately. + + delegate used to subscribe to data added events on the child jobs + delegate used to subscribe to state changed events on the child jobs + collection of input + objects + + + + Start asynchronous execution of the workflow with the + specified input. This input will serve as + input to the underlying pipeline. + Because the number of child jobs is unknown before starting + the job, delegates may be indicated to ensure that no events will be missed + after the child job is created if data begins streaming back immediately. + + delegate used to subscribe to data added events on the child jobs + delegate used to subscribe to state changed events on the child jobs + collection of input + objects + + + + Removes the job. + If remoteJob is true, the job output that has been transferred to this + client object will be preserved. + + Indicates whether the remove operation should + be applied to the remote or local job. + Force will stop the job on the server before + attempting removal. Default value is false. + Thrown if the job is not in + a completed state. + + + + Removes the job. + If remoteJob is true, the job output that has been transferred to this + client object will be preserved. + + Indicates whether the remove operation should + be applied to the remote or local job. + Thrown if the job is not in + a completed state. + + + + Removes the job on the remote server. + The job output that has been transferred to this client object will be + preserved. + + Indicates whether the remove operation should + be applied to the remote or local job. + Force will stop the job on the server before + attempting removal. + + + + Removes the job on the remote server. + The job output that has been transferred to this client object will be + preserved. + + Indicates whether the remove operation should + be applied to the remote or local job. + + + + This event should be raised whenever the asynchronous removal of + a server side job is completed. + + + + + Method to raise the event when removing a + server side job is completed + + argument describing + an exception that is associated with the event + + + + If set, the remote job will be removed when it has been completed and the data has been received. + This can only be set prior to a job being started. + + + + + The instance ID of the remote job that this proxy interacts with. + + + + + Runspace in which this job will be executed + + At any point of time only a runspace or a + runspacepool may be specified + + + + RunspacePool in which this job will be executed + + + + + Queries the runspace for jobs and constructs a collection of job proxies to interact with them. + + Runspace containing the jobs to base the proxy on. + Hashtable to use for the Get-Job -filter command. + Handler to subscribe to any child job data added events. + Handler to subscribe to any child job state changed events. + A collection of job proxies that represent the jobs collected based on the filter. + + + + Queries the runspace for jobs and constructs a collection of job proxies to interact with them. + + Runspace containing the jobs to base the proxy on. + Hashtable to use for the Get-Job -filter command. + If true, the data streaming will start immediately. If false, + the user must call "ReceiveJob()" to start data streaming. + A collection of job proxies that represent the jobs collected based on the filter. + + + + Queries the runspace for jobs and constructs a collection of job proxies to interact with them. + + Runspace containing the jobs to base the proxy on. + Hashtable to use for the Get-Job -filter command. + A collection of job proxies that represent the jobs collected based on the filter. + + + + Queries the runspace for jobs and constructs a collection of job proxies to interact with them. + + Runspace containing the jobs to base the proxy on. + A collection of job proxies that represent the jobs collected based on the filter. + + + + Queries the runspace for jobs and constructs a collection of job proxies to interact with them. + + RunspacePool containing the jobs to base the proxy on. + Hashtable to use for the Get-Job -filter command. + Handler to subscribe to any child job data added events. + Handler to subscribe to any child job state changed events. + A collection of job proxies that represent the jobs collected based on the filter. + + + + Queries the runspace for jobs and constructs a collection of job proxies to interact with them. + + RunspacePool containing the jobs to base the proxy on. + Hashtable to use for the Get-Job -filter command. + If true, the data streaming will start immediately. If false, + the user must call "ReceiveJob()" to start data streaming. + A collection of job proxies that represent the jobs collected based on the filter. + + + + Queries the runspace for jobs and constructs a collection of job proxies to interact with them. + + RunspacePool containing the jobs to base the proxy on. + Hashtable to use for the Get-Job -filter command. + A collection of job proxies that represent the jobs collected based on the filter. + + + + Queries the runspace for jobs and constructs a collection of job proxies to interact with them. + + RunspacePool containing the jobs to base the proxy on. + A collection of job proxies that represent the jobs collected based on the filter. + + + + Will begin streaming data for a job object created by the "create" method that is in a not started state. + + + + + Will begin streaming data for a job object created by the "create" method that is in a not started state. + + delegate used to subscribe to data added events on the child jobs + delegate used to subscribe to state changed events on the child jobs + + + + Helper to do error checking for getting a property of type T from a PSobject. + + + + + + + + + + Checks if there is more data in the specified collection + + Type of the collection + collection to check + true if the collection has more data + + + + Worker method which starts the job + + + + + Worker method which stops the job + + + + + Worker method which suspends the job + + + + + Worker method to resume the job + + + + + Worker method to remove the remote job object + + state information indicates the "force" parameter + + + + Assigns either a runspace or runspacepool to the specified powershell + instance + + powershell instance to which the set has to + happen + + + + Event handler for InvocationStateChanged on the powershell + object running receive-job + + sender of this event + argument describing this event + + + + Assigns job properties and creates child job tree. + + Deserialized job object representing the remote job for this proxy. + + + + Check if changes to the jobs properties can be accepted + + + + + Assert if the object is not yet disposed and if so + throw an ObjectDisposedException + + Thrown if + the object has already been disposed + Method is not thread-safe. Caller has to + ensure thread safety + + + + Dispose all managed resources + + true when being disposed + + + + Job class used for children of PSJobProxy jobs. + + + + + Method to raise the event when this job has data added. + + argument describing + an exception that is associated with the event + + + + Dispose + + + + + + Not supported + + + + + Not supported + + + + + StopJob + + + + + + + Not supported + + + + + StopJobAsync + + + + + + + Not supported + + + + + Not supported + + + + + SuspendJob + + + + + + + SuspendJobAsync + + + + + + + Not supported + + + + + Not supported + + + + + Not supported + + + + + Not supported + + + + + Not supported + + + + + This event will be raised whenever data has been added to one of the job object's + 6 collections. The event arguments include the job itself, the data type, indicating + which collection has data added, and the index. + + + + + Status message + + + + + Indicates the job has or can have more data on one or more data collection + + + + + The location of the job + + + + + Event arguments that indicate data has been added to a child job. + + + + + Constructor + + The job that contains the data that is added. + The type of data that this event is raised for. + + Index at which the data is added. + + + + + The job that contains the PSDataCollection which is the sender. + + + + + Identifies the type of the sending collection as one of the six collections + associated with a job. + If data type = output, sender is PSDataCollection of PSObject, Error is of ErrorRecord, etc. + + + + + Index at which the data is added. + + + + + Job data is added to one of these streams. Each + type of data implies a different type of object. + + + + + PSObject + + + + + PSObject + + + + + ErrorRecord + + + + + WarningRecord + + + + + VerboseRecord + + + + + DebugRecord + + + + + ProgressRecord + + + + + InformationRecord + + + + + Define all the output streams and one input stream for a workflow. + + + + + Input stream for incoming objects. + + + + + Output stream for returned objects. + + + + + Error stream for error messages. + + + + + Warning stream for warning messages. + + + + + Progress stream for progress messages. + + + + + Verbose stream for verbose messages. + + + + + Debug stream for debug messages. + + + + + Information stream for Information messages. + + + + + If the object is already disposed or not. + + + + + Private object for thread-safe exection. + + + + + Default constructor. + + + + + Default constructor. + + + + + Disope implementation. + + + + + Protected virtual implementation of Dispose. + + + + + + Gets input stream. + + + + + Gets output stream. + + + + + Gets error stream. + + + + + Gets warning stream. + + + + + Gets progress stream. + + + + + Gets verbose stream. + + + + + Get debug stream. + + + + + Gets Information stream. + + + + + Marking all the streams as completed so that no further data can be added and + jobs will know that there is no more data coming in. + + + + + Manager for JobSourceAdapters for invocation and management of specific Job types. + + + + + Collection of registered JobSourceAdapters. + + + + + Collection of job IDs that are valid for reuse. + + + + + Creates a JobManager instance. + + + + + Returns true if the type is already registered. + + Type to check. + Whether the type is registered already. + + + + Adds a new JobSourceAdapter to the JobManager instance. + After addition, creating a NewJob with a JobDefinition + indicating the JobSourceAdapter derivative type will function. + + The derivative JobSourceAdapter type to + register. + Throws when there is no public + default constructor on the type. + + + + Returns a token that allows a job to be constructed with a specific id and instanceId. + The original job must have been saved using "SaveJobIdForReconstruction" in the JobSourceAdapter + + The instance id desired. + The requesting type name for JobSourceAdapter implementation. + Token for job creation. + + + + Saves the Id information for a job so that it can be constructed at a later time by a JobSourceAdapter + with the same type. + + The instance id to save. + The session specific id to save. + The type name for the JobSourceAdapter implementation doing the save. + + + + Creates a new job of the appropriate type given by JobDefinition passed in. + + JobDefiniton defining the command. + Job2 object of the appropriate type specified by the definition. + If JobSourceAdapter type specified + in definition is not registered. + JobSourceAdapter implementation exception thrown on error. + + + + + Creates a new job of the appropriate type given by JobDefinition passed in. + + JobInvocationInfo defining the command. + Job2 object of the appropriate type specified by the definition. + If JobSourceAdapter type specified + in definition is not registered. + JobSourceAdapter implementation exception thrown on error. + + + + + Saves the job to a persisted store. + + Job2 type job to persist + Job definition containing source adapter information + + + + Helper method, finds source adapter if registered, otherwise throws + an InvalidOperationException. + + The name of the JobSourceAdapter derivative desired. + The JobSourceAdapter instance. + If JobSourceAdapter type specified + is not found. + + + + Helper method to find and return the job source adapter if currently loaded or + otherwise load the associated module and the requested source adapter. + + JobDefinition supplies the JobSourceAdapter information. + JobSourceAdapter + + + + Get list of all jobs. + + Cmdlet requesting this, for error processing. + + + job source adapter type names + Collection of jobs. + If cmdlet parameter is null, throws exception on error from + JobSourceAdapter implementation. + + + + Get list of jobs that matches the specified names. + + Names to match, can support + wildcard if the store supports. + Cmdlet requesting this, for error processing. + + + + job source adapter type names + Collection of jobs that match the specified + criteria. + If cmdlet parameter is null, throws exception on error from + JobSourceAdapter implementation. + + + + Get list of jobs that run the specified command. + + Command to match. + Cmdlet requesting this, for error processing. + + + + job source adapter type names + Collection of jobs that match the specified + criteria. + If cmdlet parameter is null, throws exception on error from + JobSourceAdapter implementation. + + + + Get list of jobs that are in the specified state. + + State to match. + Cmdlet requesting this, for error processing. + + + + job source adapter type names + Collection of jobs with the specified + state. + If cmdlet parameter is null, throws exception on error from + JobSourceAdapter implementation. + + + + Get list of jobs based on the adapter specific + filter parameters. + + Dictionary containing name value + pairs for adapter specific filters. + Cmdlet requesting this, for error processing. + + + + Collection of jobs that match the + specified criteria. + If cmdlet parameter is null, throws exception on error from + JobSourceAdapter implementation. + + + + Get a filtered list of jobs based on adapter name. + + job id + adapter name + + + + + Get a filtered list of jobs based on filter type. + + Object to use for filtering. + Type of filter, specifies which "get" from + JobSourceAdapter to call, and dictates the type for filter. + Cmdlet requesting this, for error processing. + + + + job source adapter type names + Filtered list of jobs. + If cmdlet parameter is null, throws exception on error from + JobSourceAdapter implementation. + + + + Compare sourceAdapter name with the provided source adapter type + name list. + + + + + + + + Gets a filtered list of jobs from the given JobSourceAdapter. + + JobSourceAdapter to query. + Filter object. + Filter type. + + List of jobs from sourceAdapter filtered on filterType. + Throws exception on error from JobSourceAdapter + implementation. + + + + Get job specified by the session specific id provided. + + Session specific job id. + Cmdlet requesting this, for error processing. + + + + Job that match the specified criteria. + If cmdlet parameter is null, throws exception on error from + JobSourceAdapter implementation. + + + + Get job that has the specified id. + + Guid to match. + Cmdlet requesting this, for error processing. + + + + Job with the specified guid. + If cmdlet parameter is null, throws exception on error from + JobSourceAdapter implementation. + + + + Gets or creates a Job2 object with the given definition name, path + and definition type if specified, that can be run via the StartJob() + method. + + Job definition name. + Job definition file path. + JobSourceAdapter type that contains the job definition. + Cmdlet making call. + Whether to write jobsourceadapter errors. + List of matching Job2 objects + + + + Returns a List of adapter names currently loaded. + + Adapter names to filter on + List of names + + + + Remove a job from the appropriate store. + + Session specific Job ID to remove. + + + + + + Remove a job from the appropriate store. + + Job object to remove. + + + If true, will throw all JobSourceAdapter exceptions to caller. + This is needed if RemoveJob is being called from an event handler in Receive-Job. + True if job is found. + + + + Filters available for GetJob, used internally to centralize Exception handling. + + + + + Use no filter. + + + + + Filter on command (string). + + + + + Filter on custom dictionary (dictionary(string, object)). + + + + + Filter on name (string). + + + + + Filter on job state (JobState). + + + + + A job that can throttle execution of child jobs + + + + + Releases resources associated with this object + + + + + Flags of child jobs of a + + + + + Child job doesn't have any special properties + + + + + Child job can call method + or + or + method + of the instance it belongs to. + + + + + Creates a new object. + + Command invoked by this job object + Friendly name for the job object + Name describing job type. + + The maximum number of child jobs that can be running at any given point in time. + Passing 0 requests to turn off throttling (i.e. allow unlimited number of child jobs to run) + + + true if this is used from a cmdlet invoked without -AsJob switch. + false if this is used from a cmdlet invoked with -AsJob switch. + + If is true, then + memory can be managed more aggressively (for example ChildJobs can be discarded as soon as they complete) + because the is not exposed to the end user. + + + + + Adds and starts a child job. + + Child job to add + Flags of the child job + action to run after enqueuing the job + + Thrown when the child job is not in the state. + (because this can lead to race conditions - the child job can finish before the parent job has a chance to register for child job events) + + + + + Notifies this object that no more child jobs will be added. + + + + + Stop this job object and all the . + + + + + Indicates if job has more data available. + true if any of the child jobs have more data OR if have not been called yet; + false otherwise + + + + + Comma-separated list of locations of . + + + + + Status message associated with the Job + + + + + This is the base class from which other classes should derive. + This class defines the options for the specified configuration type. + + + + + Returns a xml formatted data that represents the options + + + + + + Returns a new instance constructed from privateData string. + + + + + + Copies values from updated. Only non default values are copies. + + + + + + This the abstract class that defines the options for underlying transport layer. + + + + + Returns all the non-quota options set in this object in a format of xml attributes. + + + + + + Returns all the non-quota options set in this object in a name-value pair (hashtable). + + + + + + Returns all the quota related options set in this object in a format of xml attributes. + + + + + + Returns all the quota related options in the form of a hashtable. + + + + + + Sets all the values to default values. + If keepAssigned is true only those values are set + which are unassigned. + + + + + + + Clone from IClonable + + + + + This abstract class is designed to provide InstandId and self identification for + client and server remote session classes. + + + + + This is the unique id of a remote session object. + + + + + This indicates the remote session object is Client, Server or Listener. + + + + + Data from network converted to type RemoteSessionCapability. + + + + + Actual data received from the network. + + + + + This event arg is designed to contain generic data received from the other side of the connection. + It can be used for both the client side and for the server side. + + + + + Received data. + + + + + This event arg contains data received and is used to pass information + from a data structure handler to its object + + type of data that's associated + + + + The data contained within this event + + + + + This defines the various states a remote connection can be in. + + + + + Undefined state + + + + + This is the state a connect start with. When a connection is closed, + the connection will eventually come back to this Idle state. + + + + + + A connection operation has been initiated. + + + + + A connection operation has completed successfully. + + + + + The capability negotiation message is in the process being sent on a create operation + + + + + The capability negotiation message is in the process being sent on a connect operation + + + + + The capability negotiation message is sent successfully from a sender point of view. + + + + + A capability negotiation message is received. + + + + + Used by server to wait for negotation from client. + + + + + The connection is in the progress of getting closed. + + + + + The connection is closed completely. + + + + + The capability negotiation has been successfully completed. + + + + + Have sent a public key to the remote end, + awaiting a response + + Applicable only to client + + + + Have received a public key from the remote + end, need to send a response + + Applicable only to server + + + + for Server - Have sent a request to the remote end to + send a public key + for Cleint - have received a PK request from server + + Applicable to both cleint and server + + + + Key exchange complete. This can mean + (a) Sent an encrypted session key to the + remote end in response to receiving + a public key - this is for the server + (b) Received an encrypted session key from + remote end after sending a public key - + this is for the client + + + + + + + + + + + + + + + + + + + + A disconnect operation initiated by the WinRM robust connection + layer and *not* by the user. + + + + + Number of states + + + + + This defines the internal events that the finite state machine for the connection + uses to take action and perform state transitions. + + + + + This is a wrapper class for RemoteSessionState. + + + + + State of the connection + + + + + If the connection is closed, this provides reason why it had happened. + + + + + + This is the event arg that contains the state information. + + + + + State information about the connection. + + + + + Defines the various types of remoting behaviour that a cmdlet may + desire when used in a context that supports ambient / automatic remoting. + + + + + In the presence of ambient remoting, this command should + still be run locally. + + + + + In the presence of ambient remoting, this command should + be run on the target computer using PowerShell Remoting. + + + + + In the presence of ambient remoting, this command supports + its own form of remoting which can be used instead to target + the remote computer. + + + + + In the presence of ambient remoting, the command assumes + all responsibility for targetting the remote computer; + PowerShell Remoting is not supported. + + + + + Controls or overrides the remoting behavior, during invocation, of a + command that supports ambient remoting. + + + + + In the presence of ambient remoting, run this command locally. + + + + + In the presence of ambient remoting, run this command on the target + computer using PowerShell Remoting. + + + + + In the presence of ambient remoting, and a command that declares + 'SupportedByCommand' remoting capability, run this command on the + target computer using the command's custom remoting facilities. + + + + + Constants used by hosts in remoting. + + + + + String constants used for names of properties that are for storing + remoting message fields in a PSObject property bag. + + + + + This is the PSv2 function for tab expansion. It's only for legacy purpose - used in + an interactive remote session from a win7 machine to a win8 machine (or later). + + + + + Name of property when Exception is serialized as error record + + + + + Property used for encoding state of pipeline when serializing PipelineStateInfo + + + + + Property used for encoding state of runspace when serializing RunspaceStateInfo + + + + + Properties used for serialization of PSEventArgs + + + + + The destination of the remote message. + + + + + The layer the remoting message is being communicated between. + + + Please keep in sync with RemotingTargetInterface from + C:\e\win7_powershell\admin\monad\nttargets\assemblies\logging\ETW\Manifests\Microsoft-Windows-PowerShell-Instrumentation.man + + + + + The type of the remoting message. + + + Please keep in sync with RemotingDataType from + C:\e\win7_powershell\admin\monad\nttargets\assemblies\logging\ETW\Manifests\Microsoft-Windows-PowerShell-Instrumentation.man + + + + + This data type is used when an Exception derived from IContainsErrorRecord + is caught on server and is sent to client. This exception gets + serialized as an error record. On the client this data type is deserialized in + to an ErrorRecord. + + ErrorRecord on the client has an instance of RemoteException as exception. + + + + + Converts C# types to PSObject properties for embedding in PSObjects transported across the wire. + + + + + This method generates a Remoting data structure handler message for + creating a RunspacePool on the server + + id of the clientRunspacePool + minRunspaces for the RunspacePool + to be created at the server + maxRunspaces for the RunspacePool + to be created at the server + local runspace pool + host for the runspacepool at the client end + from this host, information will be extracted and sent to + server + + Application arguments the server can see in + + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | S | Session | CRPID | 0 | CreateRuns | minRunspaces, | InvalidDataType | + | | | | | pacePool | maxRunspaces, | | + | | | | | | threadOptions, | | + | | | | | | apartmentState,| | + | | | | | | hostInfo | | + | | | | | | appParameters | | + -------------------------------------------------------------------------------------- + + + + + + This method generates a Remoting data structure handler message for + creating a RunspacePool on the server + + id of the clientRunspacePool + minRunspaces for the RunspacePool + to be created at the server + maxRunspaces for the RunspacePool + to be created at the server + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | S | Runspace | CRPID | 0 | ConnectRun | minRunspaces, | InvalidDataType | + | | | | | spacePool | maxRunspaces, | | + | | | | | | | | + -------------------------------------------------------------------------------------- + + + + + + Generates a response message to ConnectRunspace that includes + sufficient information to construction client RunspacePool state + + id of the clientRunspacePool + minRunspaces for the RunspacePool + to be created at the server + maxRunspaces for the RunspacePool + to be created at the server + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | C | Runspace | CRPID | 0 | RunspacePo | minRunspaces, | InvalidDataType | + | | | | | olInitData | maxRunspaces, | | + | | | | | | | | + -------------------------------------------------------------------------------------- + + + + + + This method generates a Remoting data structure handler message for + modifying the maxrunspaces of the specified runspace pool on the server + + id of the clientRunspacePool + new value of maxRunspaces for the + specified RunspacePool + call id of the call at client + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | S | Runspace | CRPID | 0 | SetMax | maxRunspaces | InvalidDataType | + | | Pool | | | Runspaces | | | + | | | | | | | | + -------------------------------------------------------------------------------------- + + + + This method generates a Remoting data structure handler message for + modifying the maxrunspaces of the specified runspace pool on the server + + id of the clientRunspacePool + new value of minRunspaces for the + specified RunspacePool + call id of the call at client + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | S | Runspace | CRPID | 0 | SetMin | minRunspaces | InvalidDataType | + | | Pool | | | Runspaces | | | + | | | | | | | | + -------------------------------------------------------------------------------------- + + + + This method generates a Remoting data structure handler message for + that contains a repsonse to SetMaxRunspaces or SetMinRunspaces + + id of the clientRunspacePool + call id of the call at client + response to the call + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | S | Runspace | CRPID | 0 | SetMax | maxRunspaces | InvalidDataType | + | | Pool | | | Runspaces | | | + | | | | | | | | + -------------------------------------------------------------------------------------- + + + + This method generates a Remoting data structure handler message for + getting the available runspaces on the server + + guid of the runspace pool on which + this needs to be queried + call id of the call at the client + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------- + | D | TI | RPID | PID | Data | Type | + --------------------------------------------------------------------------- + | S | Runspace | CRPID | 0 | null |GetAvailalbeRunspaces | + | | Pool | | | | | + -------------------------------------------------------------------------- + + + + This method generates a remoting data structure handler message for + transfering a roles public key to the other side + + runspace pool id + public key to send across + destination that this message is + targetted to + data strucutre message + The message format is as under for this message + -------------------------------------------------------------------------- + | D | TI | RPID | PID | Data | Type | + --------------------------------------------------------------------------- + | S | Runspace | CRPID | 0 | public | PublicKey | + | | Pool | | | key | | + -------------------------------------------------------------------------- + + + + This method generates a remoting data structure handler message for + requesting a public key from the client to the server + + runspace pool id + data strucutre message + The message format is as under for this message + -------------------------------------------------------------------------- + | D | TI | RPID | PID | Data | Type | + --------------------------------------------------------------------------- + | S | Runspace | CRPID | 0 | | PublicKeyRequest | + | | Pool | | | | | + -------------------------------------------------------------------------- + + + + This method generates a remoting data structure handler message for + sending an encrypted session key to the client + + runspace pool id + encrypted session key + data strucutre message + The message format is as under for this message + -------------------------------------------------------------------------- + | D | TI | RPID | PID | Data | Type | + --------------------------------------------------------------------------- + | S | Runspace | CRPID | 0 | encrypted | EncryptedSessionKey | + | | Pool | | | session key | | + -------------------------------------------------------------------------- + + + + This methods generates a Remoting data structure handler message for + creating a command discovery pipeline on the server + + The client remote powershell from which the + message needs to be generated. + The data is extracted from parameters of the first command named "Get-Command". + + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + ------------------------------------------------------------------------- + | D | TI | RPID | PID | Data | Type | + -------------------------------------------------------------------------- + | S | Runspace | CRPID | CPID | name, | GetCommandMetadata | + | | Pool | | | commandType, | | + | | | | | module,FQM, | | + | | | | | argumentList | | + -------------------------------------------------------------------------- + + + + + This methods generates a Remoting data structure handler message for + creating a PowerShell on the server + + The client remote powershell from which the + create powershell message needs to be generated + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + ------------------------------------------------------------------------- + | D | TI | RPID | PID | Data | Type | + -------------------------------------------------------------------------- + | S | Runspace | CRPID | CPID | serialized | CreatePowerShell | + | | Pool | | | powershell, | | + | | | | | noInput, | | + | | | | | hostInfo, | | + | | | | | invocationset | | + | | | | | tings, stream | | + | | | | | options | | + -------------------------------------------------------------------------- + + + + + This method creates a remoting data structure handler message for transporting + application private data from server to client + + id of the client RunspacePool + application private data + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | C | Runspace | CRPID | -1 | Data | appl. private | PSPrimitive | + | | Pool | | | | data | Dictionary| + -------------------------------------------------------------------------------------- + + + + This method creates a remoting data structure handler message for transporting a state + information from server to client + + id of the client RunspacePool + State information object + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | C | Runspace | CRPID | -1 | Data | RunspacePool | RunspacePoolState | + | | Pool | | | | StateInfo | Info | + -------------------------------------------------------------------------------------- + + + + This method creates a remoting data structure handler message for transporting a PowerShell + event from server to client + + id of the client RunspacePool + PowerShell event + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | C | Runspace | CRPID | -1 | Data | RunspacePool | PSEventArgs | + | | Pool | | | | StateInfo | | + -------------------------------------------------------------------------------------- + + + + This method creates a remoting data structure handler message to instruct the server to reset + the single runspace on the server. + + + Caller Id + Data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------------- + | S | Runspace | CRPID | -1 | Reset server | None | ResetRunspaceState | + | | Pool | | | runspace state | | | + --------------------------------------------------------------------------------------------- + + + + Returns the PS remoting protocol version associated with the provided + + RunspacePool + PS remoting protocol version + + + + This method creates a remoting data structure handler message for sending a powershell + input data from the client to the server + + input data to send + client runspace pool id + client powershell id + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | S |PowerShell | CRPID | CPID | Data | intput data | PowerShellInput | + | | | | | | | | + -------------------------------------------------------------------------------------- + + + + This method creates a remoting data structure handler message for signalling + end of input data for powershell + + client runspace pool id + client powershell id + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | S |PowerShell | CRPID | CPID | Data | bool. | PowerShellInputEnd | + | | | | | | TrueString | | + -------------------------------------------------------------------------------------- + + + + This method creates a remoting data structure handler message for transporting a + powershell output data from server to client + + data to be sent + id of client powershell + to which this information need to be delivered + id of client runspacepool + associated with this powershell + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | C |PowerShell | CRPID | CPID | Data | data to send | PowerShellOutput | + | | | | | | | | + -------------------------------------------------------------------------------------- + + + + This method creates a remoting data structure handler message for transporting a + powershell informational message (debug/verbose/warning/progress)from + server to client + + data to be sent + id of client powershell + to which this information need to be delivered + id of client runspacepool + associated with this powershell + data type of this informational + message + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | C |PowerShell | CRPID | CPID | Data | data to send | DataType - debug, | + | | | | | | | verbose, warning | + -------------------------------------------------------------------------------------- + + + + This method creates a remoting data structure handler message for transporting a + powershell progress message from + server to client + + progress record to send + id of client powershell + to which this information need to be delivered + id of client runspacepool + associated with this powershell + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | C |PowerShell | CRPID | CPID | Data | progress | PowerShellProgress | + | | | | | | message | | + -------------------------------------------------------------------------------------- + + + + This method creates a remoting data structure handler message for transporting a + powershell information stream message from + server to client + + information record to send + id of client powershell + to which this information need to be delivered + id of client runspacepool + associated with this powershell + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + ----------------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + ----------------------------------------------------------------------------------------------- + | C |PowerShell | CRPID | CPID | Data | information | PowerShellInformationStream | + | | | | | | message | | + ----------------------------------------------------------------------------------------------- + + + + This method creates a remoting data structure handler message for transporting a + powershell error record from server to client + + error record to be sent + id of client powershell + to which this information need to be delivered + id of client runspacepool + associated with this powershell + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | C |PowerShell | CRPID | CPID | Data | error record | PowerShellError | + | | | | | | to send | | + -------------------------------------------------------------------------------------- + + + + This method creates a remoting data structure handler message for transporting a + powershell state information from server to client + + state information object + id of client powershell + to which this information need to be delivered + id of client runspacepool + associated with this powershell + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | C |PowerShell | CRPID | CPID | Data | PSInvocation | PowerShellStateInfo | + | | | | | | StateInfo | | + -------------------------------------------------------------------------------------- + + + + Gets the error record from exception of type IContainsErrorRecord. + + + + ErrorRecord if exception is of type IContainsErrorRecord + Null if if exception is not of type IContainsErrorRecord + + + + + Gets a Note Property for the exception. + + + ErrorId to use if exception is not of type IContainsErrorRecord + ErrorCategory to use if exception is not of type IContainsErrorRecord + + + + + This method creates a remoting data structure handler message for transporting a session + capability message. Should be used by client. + + RemoteSession capability object to encode + + data structure handler message encoded as RemoteDataObject + The message format is as under for this message + -------------------------------------------------------------------------------------- + | D | TI | RPID | PID | Action | Data | Type | + -------------------------------------------------------------------------------------- + | C | Session | RPID | Empty | Data | session | SessionCapability | + | / | | | | | capability | | + | S | | | | | | | + -------------------------------------------------------------------------------------- + + + + Converts fields of PSObjects containing remoting messages to C# types. + + + + + decode and obtain the RunspacePool state info from the + data object specified + + data object to decode + RunspacePoolStateInfo + + + + decode and obtain the application private data from the + data object specified + + data object to decode + application private data + + + + Gets the public key from the encoded message + + data object to decode + public key as string + + + + Gets the encrypted session key from the encoded message + + data object to decode + encrypted session key as string + + + + decode and obtain the RunspacePool state info from the + data object specified + + data object to decode + RunspacePoolStateInfo + + + + decode and obtain the minimum runspaces to create in the + runspace pool from the data object specified + + data object to decode + minimum runspaces + + + + decode and obtain the maximum runspaces to create in the + runspace pool from the data object specified + + data object to decode + maximum runspaces + + + + decode and obtain the thread options for the runspaces in the + runspace pool from the data object specified + + data object to decode + thread options + + + + Generates RunspacePoolInitInfo object from a recevied PSObject + + data object to decode + RunspacePoolInitInfo generated + + + + decode and obtain the thread options for the runspaces in the + runspace pool from the data object specified + + data object to decode + thread options + + + + decode and obtain the host info for the host + associated with the runspace pool + + dataAsPSObject object to decode + host information + + + + Gets the exception if any from the serializaed state info object + + + + + + + Get the exception from serialized error record + + + + + + + Gets the output from the message + + object to decode + output object + the current implementation does nothing, + however this method is there in place as the + packaging of output data may change in the future + + + + Gets the PSInvocationStateInfo from the data + + object to decode + PSInvocationInfo + + + + Gets the ErrorRecord from the message + + data to decode + error record + + + + Gets the WarningRecord from the message + + + + + Gets the VerboseRecord from the message + + + + + Gets the DebugRecord from the message + + + + + Gets the ProgressRecord from the message + + + + + Gets the InformationRecord from the message + + + + + Gets the PowerShell object from the specified data + + data to decode + Deserialized PowerShell object + + + + Gets the PowerShell object from the specified data + + data to decode + Deserialized PowerShell object + + + + Gets the NoInput setting from the specified data + + data to decode + true if there is no pipeline input; false otherwise + + + + Gets the AddToHistory setting from the specified data + + data to decode + true if there is addToHistory data; false otherwise + + + + Gets the IsNested setting from the specified data + + data to decode + true if there is IsNested data; false otherwise + + + + Gets the invocation settings information from the message + + + + + + + Gets the stream options from the message + + + + + + + Decodes a RemoteSessionCapability object + + data to decode + RemoteSessionCapability object + + + + Checks if the server supports batch invocation + + runspace instance + true if batch invocation is supported, false if not + + + + Execution context used for stepping + + + + + This class wraps a RunspacePoolInternal object. It is used to function + as a server side runspacepool + + + + + Default constructor for creating ServerSteppablePipelineDriver...Used by server to concurrently + run 2 pipelines. + + decoded powershell object + whether there is input for this powershell + the client powershell id + the client runspacepool id + runspace pool driver + which is creating this powershell driver + apartment state for this powershell + host info using which the host for + this powershell will be constructed + serialization options for the streams in this powershell + + true if the command is to be added to history list of the runspace. false, otherwise. + + + If not null, this Runspace will be used to invoke Powershell. + If null, the RunspacePool pointed by will be used. + + + Steppable pipeline event subscriber + + input collection of the PowerShell pipeline + + + + Local PowerShell instance + + + + + Instance id by which this powershell driver is + identified. This is the same as the id of the + powershell on the client side + + + + + Server remote host + + + + + Serialization options for the streams in this powershell + + + + + Id of the runspace pool driver which created + this object. This is the same as the id of + the runspace pool at the client side which + is associated with the powershell on the + client side + + + + + ServerPowerShellDataStructureHandler associated with this + powershell driver + + + + + Pipeline invocation state + + + + + Checks if the steppable pipeline has input + + + + + Steppablepipeline object + + + + + Synchronization object + + + + + Processing input + + + + + Input enumerator + + + + + Input collection + + + + + Is the pipeline pulsed + + + + + Total objects processed + + + + + Starts the exectution + + + + + Close the input collection of the local powershell + + sender of this event, unused + arguments describing this event + + + + Handle a host message response received + + sender of this event, unused + arguments describing this event + + + + Stop the local powershell + + sender of this event, unused + unused + + + + Add input to the local powershell's input collection + + sender of this event, unused + arguments describing this event + + + + Checks if there is any pending input that needs processing. If so, triggers RunProcessRecord + event. The pipeline execution thread catches this and calls us back when the pipeline is + suspended. + + + + + + Performs the stop operation + + + + + Changes state and sends message to the client as needed. + + + + + + + Event handler argument + + + + + Steppable pipeline driver event handler class + + + + + Handles the start pipeline event, this is called by the event manager + + + + + + + Handles process record event + + + + + + + Fires the start event + + steppable pipeline driver + + + + Fires the process record event + + steppable pipeline driver + + + + Interface exposing driver single thread invoke enter/exit + nested pipeline. + + + + + This class wraps a RunspacePoolInternal object. It is used to function + as a server side runspacepool + + + + + Event that get raised when the RunspacePool is closed. + + + + + Creates the runspace pool driver + + client runspace pool id to associate + transport manager associated with this + runspace pool driver + maximum runspaces to open + minimum runspaces to open + threading options for the runspaces in the pool + apartment state for the runspaces in the pool + host information about client side host + + Contains: + 1. Script to run after a RunspacePool/Runspace is created in this session. + For RunspacePool case, every newly created Runspace (in the pool) will run + this script. + 2. ThreadOptions for RunspacePool/Runspace + 3. ThreadApartment for RunspacePool/Runspace + + configuration of the runspace + application private data + True if the driver is being created by an administrator + server capability reported to the client during negotiation (not the actual capability) + Client PowerShell version. + Optional endpoint configuration name to create a pushed configured runspace. + + + + data structure handler for communicating with client + + + + + The server host associated with the runspace pool. + + + + + the client runspacepool id + + + + + The local runspace pool associated with + this driver + + + + + Start the RunspacePoolDriver. This will open the + underlying RunspacePool. + + + + + Send applicaiton private data to client + will be called during runspace creation + and each time a new client connects to the server session + + + + + Dispose the runspace pool driver and release all its resources + + + + + This method blocks the current thread execution and starts a + new Invoker pump that will handle invoking client side nested commands. + This method returns after ExitNestedPipeline is called. + + + + + Removes current nested command Invoker pump and allows parent command + to continue running. + + + + + If script execution is currently in debugger stopped mode, this will + release the debugger and terminate script execution, or if processing + a debug command will stop the debug command. + This is used to implement the remote stop signal and ensures a command + will stop even when in debug stop mode. + + + + + RunspaceCreated eventhandler. This is used to set TypeTable for TransportManager. + TransportManager needs TypeTable for Serializing/Deserializing objects. + + + + + + + Invokes a script + + + + + + + + Invokes a PowerShell instance + + + + + + + + Raised by RunspacePool whenever a new runspace is created. This is used + by the driver to run startup script as well as set personal folder + as the current working directory. + + + + Runspace that was created by the RunspacePool. + + + + + handler to the runspace pool state changed events + + sender of this events + arguments which describe the + RunspacePool's StateChanged event + + + + handler to the runspace pool psevents + + + + + Handle the invocation of powershell + + sender of this event, unused + arguments describing this event + + + + Handle the invocation of command discovery pipeline + + sender of this event, unused + arguments describing this event + + + + Handles host responses + + sender of this event, unused + arguments describing this event + + + + Sets the maximum runspace of the runspace pool and sends a response back + + sender of this event, unused + contains information about the new maxRunspaces + and the callId at the client + + + + Sets the minimum runspace of the runspace pool and sends a response back + + sender of this event, unused + contains information about the new minRunspaces + and the callId at the client + + + + Gets the available runspaces from the server and sends it across + to the client + + sender of this event, unused + contains information on the callid + + + + Forces a state reset on a single runspace runspace pool. + + + + + + + Resets the single runspace in the runspace pool. + + + + + + Starts the PowerShell command on the currently pushed Runspace + + PowerShell command or script + PowerShell command to run after first completes + PowerShell Id + RunspacePool Id + Host Info + Remote stream options + False when input is provided + Add to history + + + + Debugger command pre processing result type. + + + + + No debugger pre-processing + + + + + This is a valid debugger command but was not processed because + the debugger state was not correct. + + + + + GetDebuggerStopArgs + + + + + SetDebuggerAction + + + + + SetDebugMode + + + + + SetDebuggerStepMode + + + + + SetPreserveUnhandledBreakpointMode + + + + + Pre-processor for debugger commands. + Parses special debugger commands and converts to equivalent script for remote execution as needed. + + PSCommand + True if debugger is active. + True if active debugger is pushed and is a remote debugger. + Command argument. + PreProcessCommandResult type if preprocessing occurred. + + + + Helper class to run ServerPowerShellDriver objects on a single thread. This is + needed to support nested pipeline execution and remote debugging. + + + + + Constructor + + + + + IsActive + + + + + True if thread is ready to invoke a PowerShell driver. + + + + + Submit a driver object to be invoked. + + ServerPowerShellDriver + + + + Blocking call that creates a new pump object and pumps + driver invokes until stopped via a PopInvoker call. + + + + + Stops the current driver invoker and restores the previous + invoker object on the stack, if any, to handle driver invocations. + + + + + Class that queues and invokes ServerPowerShellDriver objects + in sequence. + + + + + This class wraps the script debugger for a ServerRunspacePoolDriver runspace. + + + + + Constructor. + + + + + + + + True when debugger is stopped at a breakpoint. + + + + + Exits debugger mode with the provided resume action. + + DebuggerResumeAction + + + + Returns debugger stop event args if in debugger stop state. + + DebuggerStopEventArgs + + + + ProcessCommand + + Command + Output + + + + + StopProcessCommand + + + + + SetDebugMode + + + + + + True when debugger is active with breakpoints. + + + + + Sets debugger stepping mode. + + True if stepping is to be enabled + + + + InternalProcessCommand + + + + + + + + Sets up debugger to debug provided job or its child jobs. + + + Job object that is either a debuggable job or a container + of debuggable child jobs. + + + + + Removes job from debugger job list and pops its + debugger from the active debugger stack. + + Job + + + + Sets up debugger to debug provided Runspace in a nested debug session. + + Runspace to debug + + + + Removes the provided Runspace from the nested "active" debugger state. + + Runspace + + + + IsPushed + + + + + IsRemote + + + + + IsDebuggerSteppingEnabled + + + + + UnhandledBreakpointMode + + + + + IsPendingDebugStopEvent + + + + + ReleaseSavedDebugStop + + + + + Returns IEnumerable of CallStackFrame objects. + + + + + + Dispose + + + + + Add Debugger suspend execution callback. + + + + + Remove the suspend execution callback. + + + + + Handler for debugger events + + + + + HandleBreakpointUpdated + + + + + + + Sends a DebuggerStop event to the client and enters a nested pipeline. + + + + + Blocks DebugerStop event thread until exit debug mode is + received from the client. + + + + + Exits the server side nested pipeline. + + + + + HandleStopSignal + + True if stop signal is handled. + + + + When true, this debugger is being used for local debugging (not remote debugging) + via the Debug-Runspace cmdlet. + + + + + This class wraps a PowerShell object. It is used to function + as a server side powershell + + + + + Default constructor for creating ServerPowerShellDrivers + + decoded powershell object + extra pipeline to be run after completes + whether there is input for this powershell + the client powershell id + the client runspacepool id + runspace pool driver + which is creating this powershell driver + apartment state for this powershell + host info using which the host for + this powershell will be constructed + serialization options for the streams in this powershell + + true if the command is to be added to history list of the runspace. false, otherwise. + + + If not null, this Runspace will be used to invoke Powershell. + If null, the RunspacePool pointed by will be used. + + + + + Default constructor for creating ServerPowerShellDrivers + + decoded powershell object + extra pipeline to be run after completes + whether there is input for this powershell + the client powershell id + the client runspacepool id + runspace pool driver + which is creating this powershell driver + apartment state for this powershell + host info using which the host for + this powershell will be constructed + serialization options for the streams in this powershell + + true if the command is to be added to history list of the runspace. false, otherwise. + + + If not null, this Runspace will be used to invoke Powershell. + If null, the RunspacePool pointed by will be used. + + + If not null, this is used as another source of output sent to the client. + + + + + Input collection sync object + + + + + Local PowerShell instance + + + + + Instance id by which this powershell driver is + identified. This is the same as the id of the + powershell on the client side + + + + + Serialization options for the streams in this powershell + + + + + Id of the runspace pool driver which created + this object. This is the same as the id of + the runspace pool at the client side which + is associated with the powershell on the + client side + + + + + ServerPowerShellDataStructureHandler associated with this + powershell driver + + + + + invokes the powershell asynchronously + + + + + Runs no command but allows the PowerShell object on the client + to complete. This is used for running "virtual" remote debug + commands that sets debugger state but doesn't run any command + on the server runspace. + + + + + Invokes the Main PowerShell object synchronously. + + + + + Handle state changed information from PowerShell + and send it to the client + + sender of this event + arguments describing state changed + information for this powershell + + + + Handles DataAdded event from the Output of the powershell + + sender of this information + arguments describing this event + + + + Handles DataAdded event from Error of the PowerShell + + sender of this event + arguments describing this event + + + + Handles DataAdded event from Progress of PowerShell + + sender of this information, unused + arguments describing this event + + + + Handles DataAdded event from Warning of PowerShell + + sender of this information, unused + arguments describing this event + + + + Handles DataAdded from Verbose of PowerShell + + sender of this information, unused + sender of this information + + + + Handles DataAdded from Debug of PowerShell + + sender of this information, unused + sender of this information + + + + Handles DataAdded from Information of PowerShell + + sender of this information, unused + sender of this information + + + + Send the remaining output and error information to + client + + This method should be called before + sending the state information. The client will + remove the association between a powershell and + runspace pool if it recieves any of the terminal + states. Hence all the remaining data should be + sent before this happens. Else the data will be + discarded + + + + Stop the local powershell + + sender of this event, unused + unused + + + + Add input to the local powershell's input collection + + sender of this event, unused + arguments describing this event + + + + Close the input collection of the local powershell + + sender of this event, unused + arguments describing this event + + + + Handle a host message response received + + sender of this event, unused + arguments describing this event + + + + Handles the PSDataCollection idle event + + + + + + + Handles all data structure handler communication with the client + runspace pool + + + + + Constructor which takes a server runspace pool driver and + creates an associated ServerRunspacePoolDataStructureHandler + + + + + + + Send a message with application private data to the client + + applicationPrivateData to send + server capability negotiated during initial exchange of remoting messages / session capabilities of client and server + + + + Send a message with the RunspacePoolStateInfo to the client + + state info to send + + + + Send a message with the PSEventArgs to the client + + event to send + + + + called when session is connected from a new client + call into the sessionconnect handlers for each associated powershell dshandler + + + + + Process the data received from the runspace pool on + the server + + data received + + + + Creates a powershell data structure handler from this runspace pool + + powershell instance id + runspace pool id + remote stream options + local PowerShell object + ServerPowerShellDataStructureHandler + + + + Returns the currently active PowerShell datastructure handler. + + + ServerPowerShellDataStructureHandler if one is present, null otherwise. + + + + + dispatch the message to the associated powershell data structure handler + + message to dispatch + + + + Send the specified response to the client. The client call will + be blocked on the same + + call id on the client + response to send + + + + TypeTable used for Serialization/Deserialization. + + + + + This event is raised whenever there is a request from the + client to create a powershell on the server and invoke it + + + + + This event is raised whenever there is a request from the + client to run command discovery pipeline + + + + + This event is raised when a host call response is received + + + + + This event is raised when there is a request to modify the + maximum runspaces in the runspace pool + + + + + This event is raised when there is a request to modify the + minimum runspaces in the runspace pool + + + + + This event is raised when there is a request to get the + available runspaces in the runspace pool + + + + + This event is raised when the client requests the runspace state + to be reset. + + + + + Send the data specified as a RemoteDataObject asynchronously + to the runspace pool on the remote session + + data to send + This overload takes a RemoteDataObject and should + be the one thats used to send data from within this + data structure handler class + + + + Get the associated powershell data structure handler for the specified + powershell id + + powershell id for the + powershell data structure handler + ServerPowerShellDataStructureHandler + + + + Remove the association of the powershell from the runspace pool + + sender of this event + unused + + + + Handles all PowerShell data structure handler communication + with the client side PowerShell + + + + + Default constructor for creating ServerPowerShellDataStructureHandler + instance + + powershell instance id + runspace pool id + remote stream options + transport manager + local powershell object + + + + Prepare transport manager to send data to client. + + + + + Send the state information to the client + + state information to be + sent to the client + + + + Send the output data to the client + + data to send + + + + Send the error record to client + + error record to send + + + + Send the specified warning record to client + + warning record + + + + Send the specified debug record to client + + debug record + + + + Send the specified verbose record to client + + warning record + + + + Send the specified progress record to client + + progress record + + + + Send the specified information record to client + + information record + + + + called when session is connected from a new client + calls into observers of this event. + observers include corrensponding driver that shutsdown + input stream is present + + + + + Process the data received from the powershell on + the client + + data received + + + + Raise a remove association event. This is raised + when the powershell has gone into a terminal state + and the runspace pool need not maintain any further + associations + + + + + Creates a ServerRemoteHost which is associated with this powershell. + + Host information about the host associated + PowerShell object on the client. + Host associated with the RunspacePool + on the server. + A new ServerRemoteHost for the PowerShell. + + + + this event is raised when the state of associated + powershell is terminal and the runspace pool has + to detach the association + + + + + this event is raised when the a message to stop the + powershell is received from the client + + + + + This event is raised when an input object is received + from the client + + + + + This event is raised when end of input is received from + the client + + + + + raised when server session is connected from a new client + + + + + This event is raised when a host response is received + + + + + client powershell id + + + + + Runspace used to invoke PowerShell, this is used by the steppable + pipeline driver. + + + + + Send the data specified as a RemoteDataObject asynchronously + to the runspace pool on the remote session + + data to send + This overload takes a RemoteDataObject and should + be the one thats used to send data from within this + data structure handler class + + + + Handle transport manager's closing event. + + + + + + + Repository of remote runspaces available in a local runspace + + + + + Collection of runspaces available + + + + + Internal constructor + + + + + Gets a key for the specified item + + + + + + + Adds the PSSession item to the repository if it doesn't already + exist or replaces the existing one. + + PSSession object. + + + + class which has list of job objects currently active in the system. + + + + + Add an item to the repository + + object to add + + + + Remove the specified item from the repository + + object to remove + + + + + + + + + + Get a key for the specified item + + item for which the key is required + returns a key + + + + internal constructor + + + + + Creates a repository with the specified values + + + + + Gets the specified Item + + + + + + + Gets the Repository dictionary. + + + + + class which has list of job objects currently active in the system. + + + + + Returns the list of available job objects + + + + + Returns the Job whose InstanceId matches the parameter. + + + The matching Job. Null if no match is found. + + + + + internal constructor + + + + + Returns the instance id of the job as key + + job for which a key is required + returns jobs guid + + + + LogContext is the class to keep track of context information for each + event to be logged. + + LogContext info is collected by Msh Log Engine and passed on to log provider + interface. + + + + + + Name of the host. + + + + + + Name of the host application. + + + + + + Version of the host. + + + + + + Id of the host that is hosting current monad engine. + + + + + + Version of monad engine. + + + + + + Id for currently running runspace + + + + + + PipelineId of current running pipeline + + + + + + Command text that is typed in from commandline + + + + + + Type of the command, which can be Alias, CommandLet, Script, Application, etc. + + The value of this property is a usually coversion of CommandTypes enum into a string. + + + + + + + + + + + Script file name if current command is executed as a result of script run. + + + + + + + + + + + Path to the command executable file. + + + + + + + + + + + Extension for the command executable file. + + + + + + + + + + + Sequence Id for the event to be logged. + + + + + + + + + + + Current user. + + + + + + The user connected to the machine, if being done with + PowerShell remoting. + + + + + + + + + + Event happening time + + + + + + + + + + + This property should be filled in when logging api is called directly + with LogContext (when ExecutionContext is not available). + + + + + Execution context is necessary for GetVariableValue + + + + + Monad Logging in general is a two layer architecture. At the upper layer are the + Msh Log Engine and Logging Api. At the lower layer is the Provider Interface + and Log Providers. This architecture is adopted to achieve independency between + Monad logging and logging details of different logging technology. + + This file implements the lower layer of the Monad Logging architecture. + Upper layer of Msh Log architecture is implemented in MshLog.cs file. + + This class defines the provider interface to be implemented by each providers. + + Provider Interface. + + Corresponding to 5 categories of logging api interface, provider interface provides + functions for logging + a. EngineHealthEvent + b. EngineLifecycleEvent + c. CommandLifecycleEvent + d. ProviderLifecycleEvent + e. SettingsEvent + + + + + + constructor + + + + + + Provider interface function for logging health event + + + + + + + + + + Provider interface function for logging engine lifecycle event + + + + + + + + + Provider interface function for logging command health event + + + + + + + Provider interface function for logging command lifecycle event + + + + + + + + Provider interface function for logging pipeline execution detail. + + + + + + + Provider interface function for logging provider health event + + + + + + + + + Provider interface function for logging provider lifecycle event + + + + + + + + + Provider interface function for logging settings event + + + + + + + + + + True if the log provider needs to use logging variables + + + + + + + + + + constructor + + + + + + DummyLogProvider does nothing to Logging EngineHealthEvent + + + + + + + + + + DummyLogProvider does nothing to Logging EngineLifecycleEvent + + + + + + + + + Provider interface function for logging command health event + + + + + + + + DummyLogProvider does nothing to Logging CommandLifecycleEvent + + + + + + + + DummyLogProvider does nothing to Logging PipelineExecutionDetailEvent. + + + + + + + Provider interface function for logging provider health event + + + + + + + + + DummyLogProvider does nothing to Logging ProviderLifecycleEvent + + + + + + + + + DummyLogProvider does nothing to Logging SettingsEvent + + + + + + + + + + + Monad Logging in general is a two layer architecture. At the upper layer are the + Msh Log Engine and Logging Api. At the lower layer is the Provider Interface + and Log Providers. This architecture is adopted to achieve independency between + Monad logging and logging details of different logging technology. + + This file implements the upper layer of the Monad Logging architecture. + Lower layer of Msh Log architecture is implemented in LogProvider.cs file. + + Logging Api is made up of following five sets + 1. Engine Health Event + 2. Engine Lifecycle Event + 3. Command Lifecycle Event + 4. Provider Lifecycle Event + 5. Settings Event + + Msh Log Engine provides features in following areas, + 1. Loading and managing logging providers. Based on some "Provider Catalog", engine will try to + load providers. First provider that is sucessfully loaded will be used for low level logging. + If no providers can be loaded, a dummy provider will be used, which will essentially do nothing. + 2. Implementation of logging api functions. These api functions is implemented by calling corresponding + functions in provider interface. + 3. Sequence Id Generation. Unique id are generated in this class. These id's will be attached to events. + 4. Monad engine state management. Engine state is stored in ExecutionContext class but managed here. + Later on, this feature may be moved to engine itself (where it should belongs to) when sophisticated + engine state model is established. + 5. Logging policy support. Events are logged or not logged based on logging policy settings (which is stored + in session state of the engine. + + MshLog class is defined as a static class. This essentially make the logging api to be a static api. + + We want to provide sufficient synchronization for static functions calls. + This is not needed for now because of following two reasons, + a. Currently, only one monad engine can be running in one process. So logically only one + event will be log at a time. + b. Even in the case of multiple events are logged, underlining logging media should + provide synchronization. + + + + + A static dictionary to keep track of log providers for different shellId's. + + The value of this dictionary is never empty. A value of type DummyProvider means + no logging. + + + + + Static constructor + + + + + Currently initialization is done in following sequence + a. Try to load CrimsonLogProvider (in the case of Longhorn) + b. If a fails, use the DummyLogProvider instead. (in low-level OS) + + In the longer turn, we may need to use a "Provider Catalog" for + log provider loading. + + + + + + + + Get Log Provider based on Execution Context + + + + + + + + Get Log Provider based on Log Context + + + + + + + + Create a log provider based on a shell Id. + + + + + + + This will set the current log provider to be dummy log. + + + + + + + LogEngineHealthEvent: Log an engine health event. If engine state is changed, a engine + lifecycle event will be logged also. + + This is the basic form of EngineHealthEvent logging api, in which all paramters are provided. + + Variant form of this function is defined below, which will make parameters additionalInfo + and newEngineState optional. + + Execution context for the engine that is running + EventId for the event to be logged + Exception associated with this event + Severity of this event + Additional information for this event + New engine state + + + + This is a variation of LogEngineHealthEvent api to make additionalInfo and newEngineState + optional + + + + + + + + + This is a variation of LogEngineHealthEvent api to make eventid, additionalInfo and newEngineState + optional. + + A default event id for engine health event will be used. + + + + + + + + This is a variation of LogEngineHealthEvent api to make newEngineState + optional + + + + + + + + + + This is a variation of LogEngineHealthEvent api to make additionalInfo + optional + + + + + + + + + + LogEngineHealthEvent: This is an API for logging engine health event while execution context + is not available. In this case, caller of this API will directly construct LogContext + instance. + + This API is currently used only by runspace before engine start. + + logContext to be + EventId for the event to be logged + Exception associated with this event + Additional information for this event + + + + LogEngineLifecycleEvent: Log an engine lifecycle event. + + This is the basic form of EngineLifecycleEvent logging api, in which all paramters are provided. + + Variant form of this function is defined below, which will make parameter additionalInfo + optional. + + execution context for current engine instance + new engine state + invocationInfo for current command that is running + + + + This is a variation of basic LogEngineLifeCycleEvent api which makes invocationInfo + optional. + + + + + + + LogProviderHealthEvent: Log a command health event. + + + Execution context for the engine that is running + Exception associated with this event + Severity of this event + + + + LogCommandLifecycleEvent: Log a command lifecyle event. + + This is the only form of CommandLifecycleEvent logging api. + + Execution Context for the current running engine + new command state + invocation data for current command that is running + + + + LogCommandLifecycleEvent: Log a command lifecyle event. + + This is a form of CommandLifecycleEvent which takes a commandName instead + of invocationInfo. It is likely that invocationInfo is not available if + the command failed security check. + + Execution Context for the current running engine + new command state + current command that is running + + + + LogPipelineExecutionDetailEvent: Log a pipeline execution detail event. + + + Execution Context for the current running engine + detail to be logged for this pipeline execution detail + invocation data for current command that is running + + + + LogPipelineExecutionDetailEvent: Log a pipeline execution detail event. + + This is a form of PipelineExecutionDetailEvent which takes a scriptName and commandLine + instead of invocationInfo. This will save the need to fill in the commandName for + this event. + + Execution Context for the current running engine + detail to be logged for this pipeline execution detail + script that is currently running + command line that is currently running + + + + LogProviderHealthEvent: Log a Provider health event. + + + Execution context for the engine that is running + Name of the provider + Exception associated with this event + Severity of this event + + + + LogProviderLifecycleEvent: Log a provider lifecyle event. + + This is the only form of ProviderLifecycleEvent logging api. + + Execution Context for current engine that is running + Provider name + New provider state + + + + LogSettingsEvent: Log a settings event + + This is the basic form of LoggingSettingsEvent API. Variation of this function defined + below will make parameter invocationInfo optional. + + Execution context for current running engine + Variable name + New value for the variable + Previous value for the variable + Invocation data for the command that is currently running + + + + This is a variation of basic LogSettingsEvent to make "invocationInfo" optional. + + + + + + + + + Get current engine state for the engine instance corresponding to executionContext + passed in. + + Engine state is stored in ExecutionContext. + + + + + + + Set current engine state for the engine instance corresponding to executionContext + passed in. + + Engine state is stored in ExecutionContext. + + + + + + + Generate LogContext structure based on executionContext and invocationInfo passed in. + + LogContext structure is used in log provider interface. + + + + + + + + Generate LogContext structure based on executionContext and invocationInfo passed in. + + LogContext structure is used in log provider interface. + + + + + + + + + NeedToLogEngineHealthEvent: check whether logging engine health event is necessary. + Whether to log engine event is controled by session variable "LogEngineHealthEvent" + The default value for this is true (?). + Reading a session variable from execution context for + every single logging call may be expensive. We may need to use a different + approach for this: + a. ExecutionContext will cache the value for variable "LogEngineHealthEvent" + b. If this variable is changed, a notification function will change the cached + value in engine correspondently. + This applies to other logging preference variable also. + + + + + + + + NeedToLogEngineLifecycleEvent: check whether logging engine lifecycle event is necessary. + Whether to log engine lifecycle event is controled by session variable "LogEngineLifecycleEvent" + The default value for this is false (?). + + + + + + + + NeedToLogCommandHealthEvent: check whether logging command health event is necessary. + Whether to log command health event is controled by session variable "LogCommandHealthEvent" + The default value for this is false (?). + + + + + + + + NeedToLogCommandLifecycleEvent: check whether logging command event is necessary. + Whether to log command lifecycle event is controled by session variable "LogCommandLifecycleEvent" + The default value for this is false (?). + + + + + + + + NeedToLogPipelineExecutionDetailEvent: check whether logging pipeline execution detail event is necessary. + + Whether to log command lifecycle event is controled by PSSnapin set up. + + Should we use session variable "LogPipelineExecutionEvent" to control this also? + + Currently we return true always since pipeline processor already check for whether to log + logic from PSSnapin already. This may need to be changed. + + + + + + + + NeedToLogProviderHealthEvent: check whether logging Provider health event is necessary. + Whether to log Provider health event is controled by session variable "LogProviderHealthEvent" + The default value for this is true. + + + + + + + + NeedToLogProviderLifecycleEvent: check whether logging Provider lifecycle event is necessary. + Whether to log Provider lifecycle event is controled by session variable "LogProviderLifecycleEvent" + The default value for this is true. + + + + + + + + NeedToLogSettingsEvent: check whether logging settings event is necessary. + Whether to log settings event is controled by session variable "LogSettingsEvent" + The default value for this is false (?). + + + + + + + + generate next sequence id to be attached to current event. + + + + + + Log context cache + + + + + Severity of the event + + + + + Undefined severity. + + + + + Critical event causing engine not to work. + + + + + Error causing engine partially work. + + + + + Problem that may not cause an immediate problem. + + + + + Informational. + + + + + enum for command states + + + + + + + + + + + + + + + + + + + + enum for provider states + + + + + + + + + + + + + + + EventLogLogProvider is a class to implement Msh Provider interface using EventLog technology. + + EventLogLogProvider will be the provider to use if Monad is running in early windows releases + from 2000 to 2003. + + EventLogLogProvider will be packaged in the same dll as Msh Log Engine since EventLog should + always be available. + + + + + + Constructor. + + + + + + This represent a handle to EventLog + + + + + Log engine health event + + + + + + + + + Log engine lifecycle event + + + + + + + + Get engine lifecyle event id based on engine state + + + + + + + Provider interface function for logging command health event + + + + + + + + Log command life cycle event. + + + + + + + Get command lifecycle event id based on command state + + + + + + + Log pipeline execution detail event. + + This may end of logging more than one event if the detail string is too long to be fit in 64K. + + + + + + + Log one pipeline execution detail event. Detail message is already chopped up so that it will + fit in 64K. + + + + + + + + + Provider interface function for logging provider health event + + + + + + + + + Log provider lifecycle event. + + + + + + + + Get provider lifecycle event id based on provider state. + + + + + + + Log settings event. + + + + + + + + + This is the helper function for logging an event with localizable message + to event log. It will trace all exception thrown by eventlog. + + + + + + + Fill event arguments with logContext info. + + In EventLog Api, arguments are passed in as an array of objects. + + An ArrayList to contain the event arguments + The log context containing the info to fill in + + + + Fill event arguments with additionalInfo stored in a string dictionary. + + An arraylist to contain the event arguments + A string dictionary to fill in + + + + Serves as the base class for Validate attributes that validate parameter arguments. + + + Argument validation attributes can be attached to + and + parameters to ensure that the Cmdlet or CmdletProvider will not + be invoked with invalid values of the parameter. Existing + validation attributes include , + , + , + , + , + , + , and + . + + PSSnapins wishing to create custom argument validation attributes + should derive from + + and override the + + abstract method, after which they can apply the + attribute to their parameters. + + validates the argument + as a whole. If the argument value is potentially an enumeration, + you can derive from + which will take care of unrolling the enumeration + and validate each element individually. + + It is also recommended to override + to return a readable string + similar to the attribute declaration, for example + "[ValidateRangeAttribute(5,10)]". + + If this attribute is applied to a string parameter, the string command argument will be validated. + If this attribute is applied to a string[] parameter, the string[] command argument will be validated. + + + + + + + + + + + + + + Overridden by subclasses to implement the validation of the parameter arguments + + argument value to validate + + The engine APIs for the context under which the prerequisite is being + evaluated. + + + Validate that the value of is valid, + and throw + if it is invalid. + + should be thrown for any validation failure + + + + Method that the command processor calls for data validate processing + + object to validate + + The engine APIs for the context under which the prerequisite is being + evaluated. + + + bool true if the validate succeeded + + Whenever any exception occurs during data validate. + All the system exceptions are wrapped in ValidationMetadataException + + for invalid arguments + + + + Initializes a new instance of a class derived from ValidateArgumentsAttribute + + + + + A variant of which + unrolls enumeration values and validates each element + individually. + + + is like + , except that if + the argument value is an enumeration, + will unroll + the enumeration and validate each item individually. + + Existing enumerated validation attributes include + , + , + , and + . + + PSSnapins wishing to create custom enumerated argument validation attributes + should derive from + + and override the + + abstract method, after which they can apply the + attribute to their parameters. + + It is also recommended to override + to return a readable string + similar to the attribute declaration, for example + "[ValidateRangeAttribute(5,10)]". + + If this attribute is applied to a string parameter, the string command argument will be validated. + If this attribute is applied to a string[] parameter, each string command argument will be validated. + + + + + + + + + + Initializes a new instance of a class derived from ValidateEnumeratedArgumentsAttribute + + + + + Overridden by subclasses to implement the validation of each parameter argument + + + Validate that the value of + is valid, and throw + + if it is invalid. + + one of the parameter arguments + should be thrown for any validation failure + + + + Calls ValidateElement in each element in the enumeration argument value. + + object to validate + + The engine APIs for the context under which the prerequisite is being + evaluated. + + + PSSnapins should override instead. + + should be thrown for any validation failure + + + + To specify RunAs behavior for the class + /// + + + Default is same as optional. + + + + PsDscRunAsCredential can not be used for this DSC Resource + + + + + PsDscRunAsCredential is mandatory for resource + + + + + PsDscRunAsCredential can or can not be specified + + + + + Indicates the class defines a DSC resource. + + + + + To specify RunAs Behavior for the resource. + + + + + When specified on a property or field of a DSC Resource, the property + can or must be specified in a configuration, unless it is marked + , in which case it is + returned by the Get() method of the resource. + + + + + Indicates the property is a required key property for a DSC resource. + + + + + Indicates the property is a required property for a DSC resource. + + + + + Indicates the property is not a parameter to the DSC resource, but the + property will contain a value after the Get() method of the resource is called. + + + + + Indication the configuration is for local configuration manager, also known as meta configuration. + + + + + Contains information about a cmdlet's metadata. + + + + + Gets and sets the cmdlet default parameter set + + + + + Gets and sets a Boolean value that indicates the Cmdlet supports ShouldProcess. By default + the value is false, meaning the cmdlet doesn't support ShouldProcess. + + + + + Gets and sets a Boolean value that indicates the Cmdlet supports Paging. By default + the value is false, meaning the cmdlet doesn't support Paging. + + + + + Gets and sets a Boolean value that indicates the Cmdlet supports Transactions. By default + the value is false, meaning the cmdlet doesn't support Transactions. + + + + + Gets and sets a ConfirmImpact value that indicates + the "destructiveness" of the operation and when it + should be confirmed. This should only be used when + SupportsShouldProcess is specified. + + + + + Gets and sets a HelpUri value that indicates + the location of online help. This is used by + Get-Help to retrieve help content when -Online + is specified. + + + + + Gets and sets the RemotingBehavior value that declares how this cmdlet should interact + with ambient remoting. + + + + + Identifies a class as a cmdlet and specifies the verb and noun identifying this cmdlet. + + + + + Gets the cmdlet noun + + + + + Gets the cmdlet verb + + + + + Initializes a new instance of the CmdletAttribute class + + verb for the command + noun for the command + for invalid arguments + + + + Identifies PowerShell script code as behaving like a cmdlet and hence uses + cmdlet parameter binding instead of script parameter binding. + + + + + When true, the script will auto-generate appropriate parameter metadata to support positional + parameters if the script hasn't already specified multiple parameter sets or specified positions + explicitly via the . + + + + + OutputTypeAttribute is used to specify the type of objects output by a cmdlet + or script. + + + + + Construct the attribute from a System.Type + + + + + Construct the attribute from a type name. + + + + + Construct the attribute from an array of System.Type + + The types output by the cmdlet + + + + Construct the attribute from an array of names of types. + + The types output by the cmdlet + + + + The types specified by the attribute. + + + + + Attributes implemented by a provider can use: + + [OutputType(ProviderCmdlet='cmdlet', typeof(...))] + + To specify the provider specific objects returned for a given cmdlet. + + + + + The list of parameter sets this OutputType specifies. + + + + + This attribute is used on a dynamic assembly to mark it as one that is used to implement + a set of classes defined in a PowerShell script. + + + + + Declares an alternative name for a parameter + + + + + Gets the alias names passed to the constructor + + + + + Initiailizes a new instance of the AliasAttribute class + + The name for this alias + for invalid arguments + + + + Identifies parameters to Cmdlets + + + + + ParameterSetName refering to all ParameterSets + + + + + Initializes a new instance of the ParameterAttribute class + + + + + Gets and sets the parameter position. If not set, the parameter is named. + + + + + Gets and sets the name of the parameter set this parameter belongs to. When + it is not specified ParameterAttribute.AllParameterSets is assumed. + + + + + Gets and sets a flag specifying if this parameter is Mandatory. When + it is not specified, false is assumed and the parameter is considered optional. + + + + + Gets and sets a flag that specifies that this parameter can take values + from the incoming pipeline object. When it is not specified, false is assumed. + + + + + Gets and sets a flag that specifies that this parameter can take values from a property + in the incoming pipeline object with the same name as the parameter. When it + is not specified, false is assumed. + + + + + Gets and sets a flag that specifies that the remaining command line parameters + should be associated with this parameter in the form of an array. When it + is not specified, false is assumed. + + + + + Gets and sets a short description for this parameter, suitable for presentation as a tool tip. + + for a null or empty value when setting + + + + Gets and sets the base name of the resource for a help message. When this field is speicifed, + HelpMessageResourceId must also be specified. + + for a null or empty value when setting + + + + Gets and sets the Id of the resource for a help message. When this field is speicifed, + HelpMessageBaseName must also be specified. + + for a null or empty value when setting + + + + Indicates that this parameter should not be shown to the user in this like intellisense + This is primarily to be used in functions that are implementing the logic for dynamic keywords. + + + + + Specifies PSTypeName of a cmdlet or function parameter. + + + This attribute is used to restrict the type name of the parameter, when the type goes beyond the .NET type system. + For example one could say: [PSTypeName("System.Management.ManagementObject#root\cimv2\Win32_Process")] + to only allow Win32_Process objects to be bound to the parameter. + + + + + + + + + + Creates a new PSTypeNameAttribute + + + + + + Specifies that a parameter supports wildcards. + + + + + Specify a default value and/or help comment for a command parameter. This attribute + does not have any semantic meaning, it is simply an aid to tools to make it simpler + to know the true default value of a command parameter (which may or may not have + any correlation with, e.g., the backing store of the Parameter's property or field. + + + + + Specify the default value of a command parameter. The PowerShell engine does not + use this value in any way, it exists for other tools that want to reflect on cmdlets. + + + + + Specify the help string for the default value of a command parameter. + + + + + Specify that the member is hidden for the purposes of cmdlets like Get-Member and + that the member is not displayed by default by Format-* cmdlets. + + + + + Validates that the length of each parameter argument's Length falls in the range + specified by MinLength and MaxLength + + + + + Gets the attribute's minimum length + + + + + Gets the attribute's maximum length + + + + + Validates that the length of each parameter argument's Length falls in the range + specified by MinLength and MaxLength + + object to validate + if is not a string + with length between minLength and maxLength + for invalid arguments + + + + Initializes a new instance of the ValidateLengthAttribute class + + Minimum required length + Maximum required length + for invalid arguments + if maxLength is less than minLength + + + + Validates that each parameter argument falls in the range + specified by MinRange and MaxRange + + + + + Gets the attribute's minimum range + + + + + Gets the attribute's maximum range + + + + + The range values and the value to validate will all be converted to the promoted type. + If minRange and maxRange are the same type, + + + + + Validates that each parameter argument falls in the range + specified by MinRange and MaxRange + + object to validate + + Thrown if the object to be validated does not implement IComparable, + if the element type is not the same of MinRange, MaxRange, + or if the element is not between MinRange and MaxRange. + + + + + Initializes a new instance of the ValidateRangeAttribute class + + Minimum value of the range allowed. + Maximum value of the range allowed. + for invalid arguments + + if maxRange has a differnet type than minRange + if maxRange is smaller than minRange + if maxRange, minRange are not IComparable + + + + + Validates that each parameter argument matches the RegexPattern + + + + + Gets the Regex pattern to be used in the validation + + + + + Gets or sets the Regex options to be used in the validation + + + + + Validates that each parameter argument matches the RegexPattern + + object to validate + if is not a string + that matches the pattern + and for invalid arguments + + + + Initializes a new instance of the ValidatePatternAttribute class + + Pattern string to match + for invalid arguments + + + + Class for validating against a script block. + + + + + Gets the scriptblock to be used in the validation + + + + + Validates that each parameter argument matches the scriptblock + + object to validate + if is invalid + + + + Initializes a new instance of the ValidateScriptBlockAttribute class + + Scriptblock to match + for invalid arguments + + + + Validates that the parameter argument count is in the specified range + + + + + Gets the minimum length of this attribute + + + + + Gets the maximum length of this attribute + + + + + Validates that the parameter argument count is in the specified range + + Object to validate + + The engine APIs for the context under which the validation is being + evaluated. + + + if the element is none of ICollection, IEnumerable, IList, IEnumerator + if the element's lenght is not between MinLength and MAxLEngth + + + + + Initializes a new instance of the ValidateCountAttribute class + + Minimum number of values required + Maximum number of values required + for invalid arguments + + if minLength is greater than maxLength + + + + + Validates that each parameter argument is present in a specified set + + + + + Gets a flag specifying if we should ignore the case when performing string comparison. The + default is true. + + + + + Gets the values in the set + + + + + Validates that each parameter argument is present in the specified set + + Object to validate + + if element is not in the set + for invalid argument + + + + + Initializes a new instance of the ValidateSetAttribute class + + list of valid values + for null arguments + for invalid arguments + + + + Validates that each parameter argument is Trusted data + + + + + Validates that the parameter argument is not untrusted + + Object to validate + + The engine APIs for the context under which the validation is being + evaluated. + + + if the argument is untrusted. + + + + + Allows a NULL as the argument to a mandatory parameter + + + + + Initializes a new instance of the AllowNullAttribute class + + + + + Allows an empty string as the argument to a mandatory string parameter + + + + + Initializes a new instance of the AllowEmptyStringAttribute class + + + + + Allows an empty collection as the argument to a mandatory collection parameter + + + + + Initializes a new instance of the AllowEmptyCollectionAttribute class + + + + + Validates that the path has an approved root drive + + + + + Initializes a new instance of the ValidateDrivePath class + + List of approved root drives for path + + + + Validates path argument + + Object to validate + Engine intrinsics + + + + Validates that the path parameter is a User drive + + + + + Initializes a new instance of the ValidateUserDrivePathAttribute class + + + + + Validates that the parameters's argument is not null + + + + + Verifies the argument is not null and if it is a collection, that each + element in the collection is not null. + If the argument is a collection then each element is validated. + + + The arguments to verify. + + + The engine APIs for the context under which the validation is being + evaluated. + + + true if the argument is valid. + + + if element is null or a collection with a null element + + + + + Validates that the parameters's argument is not null, is not + an empty string, and is not an empty collection. + + + + + Validates that the parameters's argument is not null, is not + an empty string, and is not an empty collection. If arguments + is a collection, each argument is verified. + + + The arguments to verify. + + + The engine APIs for the context under which the validation is being + evaluated. + + + if the arguments are not valid + + + + + Serves as the base class for attributes that perform argument transformation. + + + Argument transformation attributes can be attached to + and + parameters to automatically transform the argument value in + some fashion. The transformation might change the object, + convert the type, or even load a file or AD object based on + the name. + Existing argument transformation attributes include + . + + PSSnapins wishing to create custom argument transformation attributes + should derive from + + and override the + + abstract method, after which they can apply the + attribute to their parameters. + + It is also recommended to override + to return a readable string + similar to the attribute declaration, for example + "[ValidateRangeAttribute(5,10)]". + + If multiple transformations are defined on a parameter, + they will be invoked in series, each getting the output + of the previous transformation. + + + + + + Initializes a new instance of the ArgumentTransformationAttribute class + + + + + Method that will be overridden by the subclasses to transform the inputData parameter + argument into some other object that will be used for the parameter's value. + + + The engine APIs for the context under which the transformation is being + made. + + parameter argument to mutate + mutated object(s) + + Return the transformed value of . + Throw + if the value of is invalid, + and throw + for other recoverable errors. + + should be thrown for invalid arguments + should be thrown for any problems during transformation + + + + Transform inputData and track the flow of untrusted object. + NOTE: All internal handling of ArgumentTransformationAttribute should use this method to track the trustworthiness of + the data input source by default. + + + The default value for is True. + You should stick to the default value for this parameter in most cases so that data input source is tracked during the transformation. + The only acceptable exception is when this method is used in Compiler or Binder where you can generate extra code to track input source + when it's necessary. This is to minimize the overhead when tracking is not needed. + + + + + The property is only checked when: + a) The parameter is not mandatory + b) The argument is null + + + + + Defines session capabilities provided by a PowerShell session + + + + + + + Session with capabilities can be made available on a server + that wants to provide a full user experience to PowerShell clients. + Clients connecting to the server will be able to use implicit remoting + (Import-PSSession, Export-PSSession) as well as interactive remoting (Enter-PSSession, Exit-PSSession). + + + + + Session with capabibilities can be made available on + a server that wants to provide workflow hosting capabilities in the + specified end points. All jobs commands as well as commands for + implicit remoting and interactive remoting will be made available + + + + + Include language capabilities + + + + + This class represents the compiled metadata for a command type. + + + + + Constructs a CommandMetada object for the given CLS complaint type + . + + + CLS complaint type to inspect for Cmdlet metadata. + + + commandType is null. + + + If a parameter defines the same parameter-set name multiple times. + If the attributes could not be read from a property or field. + + + + + Construct a CommandMetadata object for the given commandInfo + + + The commandInfo object to construct CommandMetadata for + + + commandInfo is null. + + + If the commandInfo is an alias to an unknown command, or if the commandInfo + is an unsupported command type. + + + + + Construct a CommandMetadata object for the given commandInfo + + + The commandInfo object to construct CommandMetadata for + + + Should common parameters be included in the metadata? + + + commandInfo is null. + + + If the commandInfo is an alias to an unknown command, or if the commandInfo + is an unsupported command type. + + + + + Construct a CommandMetadata object for a script file. + + The path to the script file. + + + + A copy constructor that creates a deep copy of the CommandMetadata object. + Instances of Attribute and Type classes are copied by reference. + + object to copy + + + + Constructor used by implicit remoting + + + + + Gets the metdata for the specified cmdlet from the cache or creates + a new instance if its not in the cache. + + + + The name of the command that this metadata represents. + + + + The cmdlet to get the metadata for. + + + + The current engine context. + + + + The CommandMetadata for the specified cmdlet. + + + + If is null or empty. + + + + If is null. + + + + If more than int.MaxValue parameter-sets are defined for the command. + + + + If a parameter defines the same parameter-set name multiple times. + If the attributes could not be read from a property or field. + + + + + + Constructs an instance of CommandMetadata using reflection against a bindable object + + + + The name of the command that this metadata represents. + + + + An instance of an object type that can be used to bind MSH parameters. A type is + considered bindable if it has at least one field and/or property that is decorated + with the ParameterAttribute. + + + + The current engine context. If null, the command and type metadata will be generated + and will not be cached. + + + + If is null. + + + + If more than int.MaxValue parameter-sets are defined for the command. + + + + If a parameter defines the same parameter-set name multiple times. + If the attributes could not be read from a property or field. + + + + + + Constructor for creating command metadata from a script block. + + + + + + Unlike cmdlet based on a C# type where cmdlet metadata and parameter + metadata is created through reflecting the implementation type, script + cmdlet has different way for constructing metadata. + + 1. Metadata for cmdlet itself comes from cmdlet statement, which + is parsed into CmdletDeclarationNode and then converted into + a CmdletAttribute object. + 2. Metadata for parameter comes from parameter declaration statement, + which is parsed into parameter nodes with parameter annotations. + Information in ParameterNodes is eventually transformed into a + dictionary of RuntimeDefinedParameters. + + By the time this constructor is called, information about CmdletAttribute + and RuntimeDefinedParameters for the script block has been setup with + the scriptblock object. + + + + + + Gets the name of the command this metadata represents + + + + + The Type which this CommandMetadata represents. + + + + + Gets/Sets the default parameter set name + + + + + True if the cmdlet declared that it supports ShouldProcess, false otherwise. + + + + + + True if the cmdlet declared that it supports Paging, false otherwise. + + + + + + When true, the command will auto-generate appropriate parameter metadata to support positional + parameters if the script hasn't already specified multiple parameter sets or specified positions + explicitly via the . + + + + + True if the cmdlet declared that it supports transactions, false otherwise. + + + + + + Related link URI for Get-Help -Online + + + + + The remoting capabilities of this cmdlet, when exposed in a context + with ambient remoting. + + + + + Indicates the "destructiveness" of the command operation and + when it should be confirmed. This is only effective when + the command calls ShouldProcess, which should only occur when + SupportsShouldProcess is specified. + + + + + + Gets the parameter data for this command + + + + + Gets or sets the obsolete attribute on the command + + + + + + Gets the merged metadata for the command including cmdlet declared parameters, + common parameters, and (optionally) ShouldProcess and Transactions parameters + + + + + + True if the cmdlet implements dynamic parameters, or false otherwise + + + + + + Gets the bit in the parameter set map for the default parameter set. + + + + + + A collection of attributes that were declared at the cmdlet level but were not + recognized by the engine. + + + + + Constructs the command metadata by using reflection against the + CLR type. + + + + If more than int.MaxValue parameter-sets are defined for the command. + + + + + + Extracts the cmdlet data from the CmdletAttribute + + + + The CmdletAttribute to process + + + + If is null. + + + + If more than int.MaxValue parameter-sets are defined for the command. + + + + + + Merges parameter metadata from different sources: those that are coming from Type, + CommonParameters, should process etc. + + + + + true if metadata info about Verbose,Debug etc needs to be generated. + false otherwise. + + + + + Gets the ScriptCmdlet in string format + + + + + + Returns a dictionary from a command name to describing + how that command can be restricted to limit attack surface while still being usable + by features included in . + + For example the implicit remoting feature + (included in ) + doesn't use all parameters of Get-Help + and uses only a limited set of argument values for the parameters it does use. + + can be passed to method to generate + a body of a proxy function that forwards calls to the actual cmdlet, while exposing only the parameters + listed in . Exposing only the restricted proxy function while making + the actual cmdlet and its aliases private can help in reducing attack surface of the remoting server. + + + + + + + The command metadata cache. This is separate from the parameterMetadata cache + because it is specific to cmdlets. + + + + + This class contains strings required for serialization + + + + + Element tag for root node + + + + + Element tag for PSObject + + + + + Element tag for properties + + + + + TypeNames tag + + + + + Tag for type item in typeanmes + + + + + TypeName reference + + + + + Memberset + + + + + Individual notes + + + + + Tag for ToString value + + + + + Element tag used for IEnumerables. + + + + + Element tag used for Dictionary + + + + + Element tag used for Dictionary entry + + + + + Value of name attribute for dictionary key part in dictnary entry + + + + + Value of name attribute for dictionary value part in dictnary entry + + + + + Element tag used for Stack + + + + + Element tag used for Queue + + + + + Element tag used for List + + + + + Element tag for char property. + + This property is used for System.Char type + + + + Element tag for guid property. + + This property is used for System.Guid type + + + + Element tag for boolean property. + + This property is used for System.Boolean type + + + + Element tag for unsignedByte property. + + This property is used for System.Byte type + + + + Element tag for dateTime property. + + This property is used for System.DateTime type + + + + Element tag for decimal property. + + This property is used for System.Decimal type + + + + Element tag for double property. + + This property is used for System.Double type + + + + Element tag for duration property. + + This property is used for System.TimeSpan type + + + + Element tag for float property. + + This property is used for System.Single type + + + + Element tag for int property. + + This property is used for System.Int32 type + + + + Element tag for long property. + + This property is used for System.Int64 type + + + + Element tag for byte property. + + This property is used for System.SByte type + + + + Element tag for short property. + + This property is used for System.Int16 type + + + + Element tag for base64Binary property. + + This property is used for System.IO.Stream type + + + + Element tag for scriptblock property. + + This property is used for System.Management.Automation.ScriptBlock type + + + + Element tag for string property. + + This property is used for System.String type + + + + Element tag for secure string property + + This property is used for System.Security.SecureString type + + + + Element tag for unsignedShort property. + + This property is used for System.UInt16 Stream type + + + + Element tag for unsignedInt property. + + This property is used for System.UInt32 type + + + + Element tag for unsignedLong property. + + This property is used for System.Long type + + + + Element tag for anyUri property. + + This property is used for System.Uri type + + + + Element tag for Version property + + + + + Element tag for XmlDocument + + + + + Element tag for property whose value is null + + + + + Element tag for PSObjectReference property. + + This property is used for a reference to a property bag + + + + String for reference id attribute + + + + + String for name attribute + + + + + String for version attribute + + + + + String for stream attribute + + + + + Monad namespace + + + + + Prefix string for monad namespace + + + + + shell environment variable + + + + + environment variable that will define the default + application name for the connection uri + + + + + helper fns + + + + + The existence of the following registry confirms that the host machine is a WinPE + HKLM\System\CurrentControlSet\Control\MiniNT + + + + + Allowed PowerShell Editions + + + + + helper fn to check byte[] arg for null. + + + arg to check + name of the arg + + Does not return a value + + + + helper fn to check arg for empty or null. + Throws ArgumentNullException on either condition. + + + arg to check + name of the arg + + Does not return a value + + + + helper fn to check arg for null. + Throws ArgumentNullException on either condition. + + + arg to check + name of the arg + + Does not return a value + + + + helper fn to check arg for null. + + + arg to check + name of the arg + + Does not return a value + + + + Gets TypeTable by querying the ExecutionContext stored in + Thread-Local-Storage. This will return null if ExecutionContext + is not available. + + + + + + Gets the application base for current monad version + + + applicationbase path for current monad version installation + + + if caller doesn't have permission to read the key + + + + + Checks if the filePath represents a file under product folder + ie., PowerShell ApplicationBase or $env:windir\system32 or + $env:windir\syswow64. + + + true: if the filePath is under product folder + false: otherwise + + + + + Checks if the current process is using WOW + + + + + Checks if host machine is WinPE + + + + + returns current major version of monad ( that is running ) in a string + format. + + string + + Cannot return a Version object as minor number is a requirement for + version object. + + + + + Coverts a string to version format. + If the string is of the format x (ie., no dots), then ".0" is appended + to the string. + Version.TryParse will be used to convert the string to a Version + object. + + string representing version + A Version Object. + + + + Checks whether current monad session supports version specified + by ver. + + Version to check + true if supported, false otherwise + + + + Checks whether current monad session supports version specified + by checkVersion. + + Version to check + true if supported, false otherwise + + + + Checks whether current monad session supports edition specified + by checkEdition. + + Edition to check + true if supported, false otherwise + + + + Checks whether the specified edition values is allowed. + + Edition value to check + true if allowed, false otherwise + + + + Checks whether current monad session supports NetFrameworkVersion specified + by checkVersion. The specified version is treated as the the minimum required + version of .NET framework. + + Version to check + true if version to check is higher than the known highest version + true if supported, false otherwise + + + + String representing the Default shellID. + + + + + String used to control directory location for PowerShell + + + Profile uses this to control profile loading. + + + + + The name of the subdirectory that contains packages. + + + + + The partial path to the DSC module directory + + + + + Scheduled job module name. + + + + + Returns modules (either loaded or in available) that match pattern . + Uses Get-Module -ListAvailable cmdlet. + + + + + List of PSModuleInfo's or Null. + + + + + Returns modules (either loaded or in available) that match FullyQualifiedName . + Uses Get-Module -ListAvailable cmdlet. + + + + + List of PSModuleInfo's or Null. + + + + + If a mutex is abandoned, in our case, it is ok to proceed + + The mutex to wait on. If it is null, a new one will be created + The initializer to use to recreate the mutex. + A working mutex. If the mutex was abandoned, a new one is created to replace it + + + + Queues a CLR worker thread with impersonation of provided Windows identity. + + Windows identity to impersonate or null. + Thread procedure for thread. + Optional state for thread procedure. + + + + If the command name is fully qualified then it is split into its component parts + E.g., moduleName\commandName + + + + Command name and as appropriate Module name in out parameter + + + + EnforceSystemLockDownLanguageMode + FullLangauge -> ConstrainedLanguage + RestrictedLanguage -> NoLanguage + ConstrainedLanguage -> ConstrainedLanguage + NoLanguage -> NoLanguage + + ExecutionContext + Previous language mode or null for no language mode change + + + + Provides enumerated values to use to set wildcard pattern + matching options. + + + + + Indicates that no special processing is required. + + + + + Specifies that the wildcard pattern is compiled to an assembly. + This yields faster execution but increases startup time. + + + + + Specifies case-insensitive matching. + + + + + Specifies culture-invariant matching. + + + + + Represents a wildcard pattern. + + + + + wildcard pattern converted to regex pattern. + + + + + Initializes and instance of the WildcardPattern class + for the specified wildcard pattern. + + The wildcard pattern to match + The constructed WildcardPattern object + if wildCardType == None, the pattern does not have wild cards + + + + Initializes an instance of the WildcardPattern class for + the specified wildcard pattern expression, with options + that modify the pattern. + + The wildcard pattern to match. + Wildcard options + The constructed WildcardPattern object + if wildCardType == None, the pattern does not have wild cards + + + + Create a new WildcardPattern, or return an already created one. + + The pattern + + + + + + Instantiate internal regex member if not already done. + + + true on success, false otherwise + + + + + + + Indicates whether the wildcard pattern specified in the WildcardPattern + constructor finds a match in the input string. + + The string to search for a match. + true if the wildcard pattern finds a match; otherwise, false + + + + Escape special chars, except for those specified in , in a string by replacing them with their escape codes. + + The input string containing the text to convert. + Array of characters that not to escape + + A string of characters with any metacharacters, except for those specified in , converted to their escaped form. + + + + + Escape special chars in a string by replacing them with their escape codes. + + The input string containing the text to convert. + + A string of characters with any metacharacters converted to their escaped form. + + + + + Checks to see if the given string has any wild card characters in it. + + + String which needs to be checked for the presence of wildcard chars + + true if the string has wild card chars, false otherwise. + + Currently { '*', '?', '[' } are considered wild card chars and + '`' is the escape character. + + + + + Unescapes any escaped characters in the input string. + + + The input string containing the text to convert. + + + A string of characters with any escaped characters + converted to their unescaped form. + + + If is null. + + + + + Converts this wildcard to a string that can be used as a right-hand-side operand of the LIKE operator of WQL. + For example: "a*" will be converted to "a%". + + + + + + Thrown when a wildcard pattern is invalid. + + + + + Constructor for class WildcardPatternException that takes + an ErrorRecord to use in constructing this exception. + + This is the recommended constructor to use for this exception. + + ErrorRecord object containing additional information about the error condition. + + constructed object + + + + Constructs an instance of the WildcardPatternException object. + + + + + Constructs an instance of the WildcardPatternException object taking + a message parameter to use in cnstructing the exception. + + The string to use as the exception message + + + + Constructor for class WildcardPatternException that takes both a message to use + and an inner exception to include in this object. + + The exception message to use + The innerException object to encapsulate. + + + + Constructor for class WildcardPatternException for serialization. + + serialization information + streaming context + + + + A base class for parsers of patterns. + + + + + Called from method to indicate + the beginning of the wildcard pattern. + Default implementation simply returns. + + + object that includes both + the text of the pattern () + and the pattern options () + + + + + Called from method to indicate that the next + part of the pattern should match + a literal character . + + + + + Called from method to indicate that the next + part of the pattern should match + any string, including an empty string. + + + + + Called from method to indicate that the next + part of the pattern should match + any single character. + + + + + Called from method to indicate the end of the wildcard pattern. + Default implementation simply returns. + + + + + Called from method to indicate + the beginning of a bracket expression. + + + Bracket expressions of are + a greatly simplified version of bracket expressions of POSIX wildcards + (http://www.opengroup.org/onlinepubs/9699919799/functions/fnmatch.html). + Only literal characters and character ranges are supported. + Negation (with either '!' or '^' characters), + character classes ([:alpha:]) + and other advanced features are not supported. + + + + + Called from method to indicate that the bracket expression + should include a literal character . + + + + + Called from method to indicate that the bracket expression + should include all characters from character range + starting at + and ending at + + + + + Called from method to indicate the end of a bracket expression. + + + + + PowerShell v1 and v2 treats all characters inside + as literal characters, + except '-' sign which denotes a range. In particular it means that + '^', '[', ']' are escaped within the bracket expression and don't + have their regex-y meaning. + + + + + + This method should be kept "internal" + + + + + Parses , calling appropriate overloads + in + + Pattern to parse + Parser to call back + + + + Convert a string with wild cards into its equivalent regex + + + A list of glob patterns and their equivalent regexes + + glob pattern regex + ------------- ------- + *foo* foo + foo ^foo$ + foo*bar ^foo.*bar$ + foo`*bar ^foo\*bar$ + + for a more cases see the unit-test file RegexTest.cs + + + + + Parses a into a + + Wildcard pattern to parse + Regular expression equivalent to + + + + Translates a into a DOS wildcard + + + + + Converts into a DOS wildcard + + + + + This class provides public functionality for serializing a PSObject + + + + + Serializes an object into PowerShell CliXml + + The input object to serialize. Serializes to a default depth of 1 + The serialized object, as CliXml + + + + Serializes an object into PowerShell CliXml + + The input object to serialize + The depth of the members to serialize + The serialized object, as CliXml + + + + Deserializes PowerShell CliXml into an object. + + The CliXml the represents the object to deserialize. + An object that represents the serialized content + + + + Deserializes PowerShell CliXml into a list of objects. + + The CliXml the represents the object to deserialize. + An object array represents the serialized content + + + + Default depth of serialization + + + + + This class provides functionality for serializing a PSObject + + + + + Creates a Serializer using default serialization context + + writer to be used for serialization + + + + Creates a Serializer using specified serialization context + + writer to be used for serialization + depth of serialization + + if true then types.ps1xml can override depth + for a particular types (using SerializationDepth property) + + + + + Creates a Serializer using specified serialization context + + writer to be used for serialization + serialization context + + + + Used by Remoting infrastructure. This TypeTable instance + will be used by Serializer if ExecutionContext is not + avaliable (to get the ExecutionContext's TypeTable) + + + + + Serializes the object + + object to be serialized + + Please note that this method shouldn't throw any exceptions. + If it throws - please open a bug. + + + + + Serializes passed in object + + + object to be serialized + + + Stream to which this object belong. Ex: Output, Error etc. + + + Please note that this method shouldn't throw any exceptions. + If it throws - please open a bug. + + + + + Write the end of root element + + + + + Limits the total data processed by the deserialization context. Deserialization context + is used by PriorityReceivedDataCollection (remoting) to process incoming data from the + remote end. A value of Null means that the max memory is unlimited. + + + + + Logs that memory used by deserialized objects is not related to the size of input xml. + Used mainly to account for memory usage of cloned TypeNames when calculating memory quota usage. + + + + + + This class provides functionality for deserializing a PSObject + + + + + Creates a Deserializer using default deserialization context + + reader to be used for deserialization + + Thrown when the xml is in an incorrect format + + + + + Creates a Deserializer using specified serialization context + + reader to be used for deserialization + serialization context + + Thrown when the xml is in an incorrect format + + + + + Used by Remoting infrastructure. This TypeTable instance + will be used by Deserializer if ExecutionContext is not + avaliable (to get the ExecutionContext's TypeTable) + + + + + Read the root element tag and set the cursor to start tag of + first object. + + + + + Deserializes next object. + + + Thrown when the xml is in an incorrect format + + + + + Deserializes next object. + + stream the object belongs to (i.e. "Error", "Output", etc.) + + Thrown when the xml is in an incorrect format + + + + + Adds "Deserialized." prefix to passed in argument if not already present + + + + + + Checks if an object is either a live or deserialized instance of class or one of its subclasses. + + + + true if is either a live or deserialized instance of class or one of its subclasses; false otherwise + + + + Checks if an object is a deserialized instance of class or one of its subclasses. + + + + true if is a deserialized instance of class or one of its subclasses; false otherwise + + + + Gets a new collection of typenames without "Deserialization." prefix + in the typename. This will allow to map type info/format info of the orignal type + for deserialized objects. + + + + Null if no type with "Deserialized." prefix is found. + Otherwise with the prefix removed if any. + + + + + Used to prefix a typename for deserialization. + + + + + Types of known type container supported by monad + + + + + This internal helper class provides methods for serializing mshObject. + + + + + Xml writer to be used + + + + + Serialization context + + + + Used by Remoting infrastructure. This TypeTable instance + will be used by Serializer if ExecutionContext is not + avaliable (to get the ExecutionContext's TypeTable) + + + + Depth below top level - used to prevent infinitely deep serialization + (without this protection it would be possible i.e. with SerializationDepth and recursion) + + + + + Used by Remoting infrastructure. This TypeTable instance + will be used by Serializer if ExecutionContext is not + avaliable (to get the ExecutionContext's TypeTable) + + + + + Writes the start of root element + + + + + Writes the end of root element + + + + + Called from a separate thread will stop the serialization process + + + + + This writes one object. + + + source to be serialized. + + + Stream to which source belongs + + + + + Serializes Primitive Known Types. + + + true if source is handled, else false. + + + + + Handles primitive known type by first converting it to a PSObject.In W8, extended + property data is stored external to PSObject. By coverting to PSObject, we will + be able to retrieve and serialize the extended properties. This is tracked by + Win8: 414042 + + + + + + + + + + + + + + + + + + + Serializes PSObject whose base objects are of primitive known type + + + + + + + true if source is handled, else false. + + + + + Writes PSObject Reference Element + + + + + Serializes an PSObject whose baseobject is of primitive type. + + + source from which notes are written + + + primitive object which is written as base object. In most cases it + is same source.ImmediateBaseObject. When PSObject is serialized as string, + it can be different. for more info. + + + TypeSerializationInfo for the primitive. + + + + + + + + Serializes an PSObject whose baseobject is of primitive type + and which has notes. + + + source from which notes are written + + + primitive object which is written as base object. In most cases it + is same source.ImmediateBaseObject. When PSObject is serialized as string, + it can be different. for more info. + + + + + TypeSerializationInfo for the primitive. + + + + + + + + Writes start element, attributes and typeNames for PSObject. + + + + + + if true, TypeName information is written, else not. + if not null then ToString information is written + + + + Returns true if PSObject has notes. + + + + + + + + Serialize member set. This method serializes without writing + enclosing tags and attributes. + + + enumerable containing members + + + + if this is true, write an enclosing "" tag. + + + + + + Serializes MemberSet. + + + + + Serializes properties of PSObject + + + + + Serializes properties from collection + + + Collection of properties to serialize + + + Name for enclosing element tag + + + depth to which each property should be + serialized + + + + + Serializes IEnumerable + + + enumerable which is serialized + + + + + + + + Serializes IDictionary + + dictionary which is serialized + + + + + + Gets the string from PSObject using the information from + types.ps1xml. + This string is used for serializing the PSObject at depth 0 + or when pso.SerializationMethod == SerializationMethod.String. + + + + PSObject to be converted to string + + + + string value to use for serializing this PSObject. + + + + + Reads the information the PSObject + and returns true if this object should be serialized as + string + + PSObject to be serialized + true if the object needs to be serialized as a string + + + + compute the serialization depth for an PSObject instance subtree + + PSObject whose serialization depth has to be computed + current depth + + + + + Writes null + + + + + + + Writes raw string as item or property in Monad namespace + + The serializer to which the object is serialized. + name of the stream to write. Do not write if null. + name of property. Pass null for item + string to write + serialization information + + + + Writes an item or property in Monad namespace + + The serializer to which the object is serialized. + + name of property. Pass null for item + object to be written + serialization information about source + + + + Writes DateTime as item or property + + The serializer to which the object is serialized. + + name of property. pass null for item + DateTime to write + serialization information about source + + + + Writes Version + + The serializer to which the object is serialized. + + name of property. pass null for item + Version to write + serialization information about source + + + + Serialize scriptblock as item or property + + The serializer to which the object is serialized. + + name of property. pass null for item + scriptblock to write + serialization information about source + + + + Serialize URI as item or property + + The serializer to which the object is serialized. + + name of property. pass null for item + URI to write + serialization information about source + + + + Serialize string as item or property + + The serializer to which the object is serialized. + + name of property. pass null for item + string to write + serialization information about source + + + + Writes Double as item or property + + The serializer to which the object is serialized. + + name of property. pass null for item + Double to write + serialization information about source + + + + Writes Char as item or property + + The serializer to which the object is serialized. + + name of property. pass null for item + Char to write + serialization information about source + + + + Writes Boolean as item or property + + The serializer to which the object is serialized. + + name of property. pass null for item + Boolean to write + serialization information about source + + + + Writes Single as item or property + + The serializer to which the object is serialized. + + name of property. pass null for item + single to write + serialization information about source + + + + Writes TimeSpan as item or property + + The serializer to which the object is serialized. + + name of property. pass null for item + DateTime to write + serialization information about source + + + + Writes Single as item or property + + The serializer to which the object is serialized. + + name of property. pass null for item + bytearray to write + serialization information about source + + + + Writes start element in Monad namespace + + tag of element + + + + Writes attribute in monad namespace + + name of attribute + value of attribute + + + + Encodes the string to escape characters which would make XmlWriter.WriteString throw an exception. + + string to encode + encoded string + + Output from this method can be reverted using XmlConvert.DecodeName method + (or InternalDeserializer.DecodeString). + This method has been introduced to produce shorter output than XmlConvert.EncodeName + (which escapes everything that can't be part of an xml name - whitespace, punctuation). + + This method has been split into 2 parts to optimize its performance: + 1) part1 (this method) checks if there are any encodable characters and + if there aren't it simply (and efficiently) returns the original string + 2) part2 (EncodeString(string, int)) picks up when part1 detects the first encodable + character. It avoids looking at the characters already verified by part1 + and copies those already verified characters and then starts encoding + the rest of the string. + + + + + This is the real workhorse that encodes strings. + See for more information. + + string to encode + indexOfFirstEncodableCharacter + encoded string + + + + Writes element string in monad namespace + + + + + + + This internal class provides methods for de-serializing mshObject. + + + + + XmlReader from which object is deserialized + + + + + Deserialization context + + + + Used by Remoting infrastructure. This TypeTable instance + will be used by Serializer if ExecutionContext is not + avaliable (to get the ExecutionContext's TypeTable) + + + + If true, unknowntags are allowed inside PSObject + + + + + Depth below top level - used to prevent stack overflow during deserialization + + + + + Version declared by the clixml being read + + + + + + + + + + + + Used by Remoting infrastructure. This TypeTable instance + will be used by Deserializer if ExecutionContext is not + avaliable (to get the ExecutionContext's TypeTable) + + + + + Validates the version for correctness. Also validates that deserializer + can deserialize this version. + + + version in string format + + + + + Called from a separate thread will stop the serialization process + + + + + Reads one object. At this point reader should be positioned + at the start tag of object. + + + Deserialized Object. + + + + + This function reads the refId attribute and creates a + mshObject for that attribute + + mshObject which is created for refId + + + + Read type names + + + PSObject to which TypeNames are added + + + + + Read properties + + + + + Read memberset. + + + collection to which members are added + + + + + read note + + + + + + Read List Containers + + + + + + Deserialize Dictionary + + + + + + + + + + + + + + + + + + Check if LocalName of next element is "tag" + + + + + + + Read start element in monad namespace + + element tag to read + true if not an empty element else false + + + + Skips an element and all its child elements. + Moves cursor to next content Node. + + + + + Reads Primary known type + + + + + + + Helper function for building XmlException + + + resource String + + + + params for format string obtained from resourceId + + + + + Helper class for generating reference id. + + + + + Get new reference id. + + New reference id + + + + Seed is incremented by one after each reference generation + + + + + Assigns a RefId to the given object + + object to assign a RefId to + RefId assigned to the object + + + + Gets a RefId already assigned for the given object or null if there is no associated ref id + + + + + + + A delegate for serializing known type + + + + + A delegate for deserializing known type + + + + + This class contains serialization information about a type. + + + + + Constructor + + Type for which this entry is created + ItemTag for the type + PropertyTag for the type + TypeSerializerDelegate for serializing the type + TypeDeserializerDelegate for deserializing the type + + + + Get the type for which this TypeSerializationInfo is created. + + + + + Get the item tag for this type + + + + + Get the Property tag for this type + + + + + Gets the delegate to serialize this type + + + + + Gets the delegate to deserialize this type + + + + + Type for which this entry is created + + + + + ItemTag for the type + + + + + PropertyTag for the type + + + + + TypeSerializerDelegate for serializing the type + + + + + TypeDeserializerDelegate for deserializing the type + + + + + A class for identifying types which are treated as KnownType by Monad. + A KnownType is guranteed to be available on machine on which monad is + running. + + + + + Static constructor + + + + + Gets the type serialization information about a type + + Type for which information is retrieved + TypeSerializationInfo for the type, null if it doesn't exist + + + + Get TypeSerializationInfo using ItemTag as key + + ItemTag for which TypeSerializationInfo is to be fetched + TypeSerializationInfo entry, null if no entry exist for the tag + + + + Array of known types. + + + + + Hashtable of knowntypes. + Key is Type.FullName and value is Type object. + + + + + Hashtable of knowntypes. Key is ItemTag + + + + + This class contains helper routined for serialization/deserialization + + + + + Extracts the value of a note property from a PSObject; returns null if the property does not exist + + + + + Returns the BaseObject of a note property encoded as a PSObject; returns null if the property does not exist + + + + + Checks if source is known container type and returns appropriate + information + + + + + + + + + Checks if derived is of type baseType or a type derived from baseType + + + + + + + + Gets the "ToString" from PSObject. + + + + PSObject to be converted to string + + + + "ToString" value + + + + + A dictionary from object to T where + 1) keys are objects, + 2) keys use reference equality, + 3) dictionary keeps only weak references to keys + + type of dictionary values + + + + is a that is limited to + 1) case-insensitive strings as keys and + 2) values that can be serialized and deserialized during PowerShell remoting handshake + (in major-version compatible versions of PowerShell remoting) + + + + + Initializes a new empty instance of the class + + + + + Initializes a new instance of the class with contents + copied from the hashtable. + + hashtable to copy into the new instance of + + This constructor will throw if the hashtable contains keys that are not a strings + or values that are not one of primitive types that will work during PowerShell remoting handshake. + + + + + Support for .NET serialization + + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + This method will throw if the is not a string and the + is not one of primitive types that will work during PowerShell remoting handshake. + Use of strongly-typed overloads of this method is suggested if throwing an exception is not acceptable. + + + + + Gets or sets the value associated with the specified key. + + The key whose value to get or set + The value associated with the specified key. + + If the specified key is not found, attempting to get it returns null + and attempting to set it creates a new element using the specified key. + + + The setter will throw if the is not a string and the value + is not one of primitive types that will work during PowerShell remoting handshake. + Use of strongly-typed overloads of Add method is suggested if throwing an exception is not acceptable. + + + + + Gets or sets the value associated with the specified key. + + The key whose value to get or set + The value associated with the specified key. + + If the specified key is not found, attempting to get it returns null + and attempting to set it creates a new element using the specified key. + + + The setter will throw if the value + is not one of primitive types that will work during PowerShell remoting handshake. + Use of strongly-typed overloads of Add method is suggested if throwing an exception is not acceptable. + + + + + Creates a new instance by doing a shallow copy of the current instance. + + + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + Adds an element with the specified key and value into the Hashtable + + The key of the element to add + The value of the element to add + + + + If originalHash contains PSVersionTable, then just returns the Cloned copy of + the original hash. Othewise, creates a clone copy and add PSVersionInfo.GetPSVersionTable + to the clone and returns. + + + + + + + Tries to get a value that might be present in a chain of nested PSPrimitiveDictionaries. + For example to get $sessionInfo.ApplicationPrivateData.ImplicitRemoting.Hash you could call + TryPathGet<string>($sessionInfo.ApplicationPrivateData, out myHash, "ImplicitRemoting", "Hash"). + + Expected type of the value + The root dictionary + + A chain of keys leading from the root dictionary () to the value + true if the value was found and was of the correct type; false otherwise + + + + Defines a drive that exposes a provider path to the user. + + + + A cmdlet provider may want to derive from this class to provide their + own public members or to cache information related to the drive. For instance, + if a drive is a connection to a remote machine and making that connection + is expensive, then the provider may want keep a handle to the connection as + a member of their derived class and use it when + the provider is invoked. + + + + + An instance of the PSTraceSource class used for trace output + using "SessionState" as the category. + This is the same category as the SessionState tracer class. + + + + + Gets or sets the current working directory for the drive. + + + + + The current working directory for the virtual drive + as a relative path from Root + + + + + Gets the name of the drive + + + + + The name of the virtual drive + + + + + Gets the name of the provider that root path + of the drive represents. + + + + + The provider information for the provider that implements + the functionality for the drive. + + + + + Gets the root path of the drive. + + + + + Sets the root of the drive. + + + + The root path to set for the drive. + + + + This method can only be called during drive + creation. A NotSupportedException if this method + is called outside of drive creation. + + + + If is null. + + + + If this method gets called any other time except + during drive creation. + + + + + + The root of the virtual drive + + + + + Gets or sets the description for the drive. + + + + + The description for this virtual drive + + + + + When supported by provider this specifies a maximum drive size. + + + + + Gets the credential to use with the drive. + + + + + The user name to use with this drive. + + + + + Determines if the root of the drive can + be modified during drive creation through + the SetRoot method. + + + + True if the drive is being created and the + root can be modified through the SetRoot method. + False otherwise. + + + + + + This flag is used to determine if we should allow + the drive root to be changed through the SetRoot + method. + + + + + True if the drive was automounted by the system, + false otherwise. + + + + + + True if the drive was automounted by the system, + and then manually removed by the user. + + + + + + Gets or sets the Persist Switch parameter. + If this switch parmter is set then the created PSDrive + would be persisted across PowerShell sessions. + + + + + Get or sets the value indicating if the created drive is a network drive. + + + + + Gets or sets the UNC path of the drive. This property would be populated only + if the cereated PSDrive is targeting a network drive or else this property + would be null. + + + + + Constructs a new instance of the PSDriveInfo using another PSDriveInfo + as a template. + + + + An existing PSDriveInfo object that should be copied to this instance. + + + + A protected constructor that derived classes can call with an instance + of this class. This allows for easy creation of derived PSDriveInfo objects + which can be created in CmdletProvider's NewDrive method using the PSDriveInfo + that is passed in. + + + + If is null. + + + + + Constructs a drive that maps an MSH Path in + the shell to a Cmdlet Provider. + + + + The name of the drive. + + + + The name of the provider which implements the functionality + for the root path of the drive. + + + + The root path of the drive. For example, the root of a + drive in the file system can be c:\windows\system32 + + + + The description for the drive. + + + + The credentials under which all operations on the drive should occur. + If null, the current user credential is used. + + + + ArgumentNullException - if , + , or + is null. + + + + + Constructs a drive that maps an MSH Path in + the shell to a Cmdlet Provider. + + + + The name of the drive. + + + + The name of the provider which implements the functionality + for the root path of the drive. + + + + The root path of the drive. For example, the root of a + drive in the file system can be c:\windows\system32 + + + + The description for the drive. + + + + The credentials under which all operations on the drive should occur. + If null, the current user credential is used. + + + The network path of the drive. This field would be populted only if PSDriveInfo + is targeting the network drive or else this filed is null for local drives. + + + + ArgumentNullException - if , + , or + is null. + + + + + Constructs a drive that maps an MSH Path in + the shell to a Cmdlet Provider. + + + + The name of the drive. + + + + The name of the provider which implements the functionality + for the root path of the drive. + + + + The root path of the drive. For example, the root of a + drive in the file system can be c:\windows\system32 + + + + The description for the drive. + + + + The credentials under which all operations on the drive should occur. + If null, the current user credential is used. + + + It indicates if the the created PSDrive would be + persisted across PowerShell sessions. + + + + ArgumentNullException - if , + , or + is null. + + + + + Gets the name of the drive as a string. + + + + Returns a String that is that name of the drive. + + + + + Gets or sets the hidden property. The hidden property + determines if the drive should be hidden from the user. + + + + True if the drive should be hidden from the user, false + otherwise. + + + + + + Determines if the drive should be hidden from the user. + + + + + Sets the name of the drive to a new name. + + + + The new name for the drive. + + + + This must be internal so that we allow the renaming of drives + via the Core Command API but not through a reference to the + drive object. More goes in to renaming a drive than just modifying + the name in this class. + + + + If is null or empty. + + + + + + Sets the provider of the drive to a new provider. + + + + The new provider for the drive. + + + + This must be internal so that we allow the renaming of providers. + All drives must be associated with the new provider name and can + be changed using the Core Command API but not through a reference to the + drive object. More goes in to renaming a provider than just modifying + the provider in this class. + + + + If is null. + + + + + + Traces the virtual drive + + + + + Compares this instance to the specified drive. + + + + A PSDriveInfo object to compare. + + + + A signed number indicating the relative values of this instance and object specified. + Return Value: Less than zero Meaning: This instance is less than object. + Return Value: Zero Meaning: This instance is equal to object. + Return Value: Greater than zero Meaning: This instance is greater than object or object is a null reference. + + + + + Compares this instance to the specified object. The object must be a PSDriveInfo. + + + + An object to compare. + + + + A signed number indicating the relative values of this + instance and object specified. + + + + If is not a PSDriveInfo instance. + + + + + Compares this instance to the specified object. + + + + An object to compare. + + + + True if the drive names are equal, false otherwise. + + + + + Compares this instance to the specified object. + + + + An object to compare. + + + + True if the drive names are equal, false otherwise. + + + + + Equality operator for the drive determines if the drives + are equal by having the same name. + + + + The first object to compare to the second. + + + + The second object to compare to the first. + + + + True if the objects are PSDriveInfo objects and have the same name, + false otherwise. + + + + + Inequality operator for the drive determines if the drives + are not equal by using the drive name. + + + + The first object to compare to the second. + + + + The second object to compare to the first. + + + + True if the PSDriveInfo objects do not have the same name, + false otherwise. + + + + + Compares the specified drives to determine if drive1 is less than + drive2. + + + + The drive to determine if it is less than the other drive. + + + + The drive to compare drive1 against. + + + + True if the lexical comparison of drive1's name is less than drive2's name. + + + + + Compares the specified drives to determine if drive1 is greater than + drive2. + + + + The drive to determine if it is greater than the other drive. + + + + The drive to compare drive1 against. + + + + True if the lexical comparison of drive1's name is greater than drive2's name. + + + + + Gets the hash code for this instance. + + + The result of base.GetHashCode() + + + + + Information about a loaded Cmdlet Provider + + + + A cmdlet provider may want to derive from this class to provide their + own public members to expose to the user or to cache information related to the provider. + + + + + Gets the System.Type of the class that implements the provider. + + + + + Gets the help file path for the provider. + + + + + The instance of session state the provider belongs to. + + + + + Gets the name of the provider. + + + + + Gets the full name of the provider including the pssnapin name if available + + + + + + Gets the Snap-in in which the provider is implemented. + + + + + Gets the pssnapin name that the provider is implemented in. + + + + + + Get the name of the module exporting this provider. + + + + + Gets the module the defined this provider. + + + + + Gets or sets the description for the provider + + + + + Gets the capabilies that are implemented by the provider. + + + + + Gets or sets the home for the provider. + + + + The location can be either a fully qualified provider path + or an Msh path. This is the location that is substituted for the ~. + + + + + Gets an enumeration of drives that are available for + this provider. + + + + + A hidden drive for the provider that is used for setting + the location to a provider-qualified path. + + + + + Gets the hidden drive for the provider that is used + for setting a location to a provider-qualified path. + + + + + + Gets the string representation of the instance which is the name of the provider. + + + + The name of the provider. If single-shell, the name is pssnapin-qualified. If custom-shell, + the name is just the provider name. + + + + + Constructs an instance of the class using an existing reference + as a template. + + + + The provider information to copy to this instance. + + + + This constructor should be used by derived types to easily copying + the base class members from an existing ProviderInfo. + This is designed for use by a + during calls to their method. + + + + If is null. + + + + + Constructor for the ProviderInfo class. + + + + The instance of session state that the provider is being added to. + + + + The type that implements the provider + + + + The name of the provider. + + + + The help file for the provider. + + + + The Snap-In name for the provider. + + + + If is null or empty. + + + + If is null. + + + + If is null. + + + + + + Constructor for the ProviderInfo class. + + + + The instance of session state that the provider is being added to. + + + + The type that implements the provider + + + + The alternate name to use for the provider instead of the one specified + in the .cmdletprovider file. + + + + The description of the provider. + + + + The home path for the provider. This must be an MSH path. + + + + The help file for the provider. + + + + The Snap-In for the provider. + + + + If or is null. + + + + If is null or empty. + + + + + + Determines if the passed in name is either the fully-qualified pssnapin name or + short name of the provider. + + + + The name to compare with the provider name. + + + + True if the name is the fully-qualified pssnapin name or the short name of the provider. + + + + + + Creates an instance of the provider + + + + An instance of the provider or null if one could not be created. + + + + If an instance of the provider could not be created because the + type could not be found in the assembly. + + + + + + Get the output types specified on this provider for the cmdlet requested. + + + + + The base class for Cmdlet providers that expose a single level of items. + + + + The ContainerCmdletProvider class is base class that a provider derives from + to implement methods that allow + the use of a set of core commands against the objects that the provider + gives access to. By deriving from this class users can take advantage of + all the features of the as well as + globbing and the following commands when targetting this provider: + get-childitem + rename-item + new-item + remove-item + set-location + push-location + pop-location + get-location -stack + + + + + Internal wrapper for the GetChildItems protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path (or name in a flat namespace) to the item from which to retrieve the children. + + + + True if all children in a subtree should be retrieved, false if only a single + level of children should be retrieved. This parameter should only be true for + the NavigationCmdletProvider derived class. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + The context under which this method is being called. + + + + Nothing is returned, but all children should be written to the Write*Object or + Write*Objects method. + + + + + + Gives the provider to attach additional parameters to + the get-childitem cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + True if all children in a subtree should be retrieved, false if only a single + level of children should be retrieved. This parameter should only be true for + the NavigationCmdletProvider derived class. + + + + The context under which this method is being called. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + + Internal wrapper for the GetChildNames protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item from which to retrieve the child names. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + The context under which this method is being called. + + + + Nothing is returned, but all names should be written to the Write*Object or + Write*Objects method. + + + + The child names are the leaf portion of the path. Example, for the file system + the name for the path c:\windows\system32\foo.dll would be foo.dll or for + the directory c:\windows\system32 would be system32. For Active Directory the + child names would be RDN values of the child objects of the container. + + + + + + Gets a new provider-specific path and filter (if any) that corresponds to the given + path. + + + + The path to the item. Unlike most other provider APIs, this path is likely to + contain PowerShell wildcards. + + + The provider-specific filter currently applied. + + + The new path to the item. + + + The new filter. + + + The context under which this method is being called. + + + + True if the path or filter were altered. False otherwise. + + + + Providers override this method if they support a native filteing syntax that + can offer performance improvements over wildcard matching done by the PowerShell + engine. + If the provider can handle a portion (or all) of the PowerShell wildcard with + semantics equivalent to the PowerShell wildcard, it may adjust the path to exclude + the PowerShell wildcard. + If the provider can augment the PowerShell wildcard with an approximate filter (but + not replace it entirely,) it may simply return a filter without modifying the path. + In this situation, PowerShell's wildcarding will still be applied to a smaller result + set, resulting in improved performance. + + The default implementation of this method leaves both Path and Filter unmodified. + + + + + Gives the provider to attach additional parameters to + the get-childitem -name cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The context under which this method is being called. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + + Internal wrapper for the RenameItem protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item to rename. + + + + The name to which the item should be renamed. This name should always be + relative to the parent container. + + + + The context under which this method is being called. + + + + Nothing is returned, but all renamed items should be written to the Write*Object or + Write*Objects. + + + + + + Gives the provider to attach additional parameters to + the rename-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name to which the item should be renamed. This name should always be + relative to the parent container. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the New protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item to create. + + + + The provider defined type of the item to create. + + + + This is a provider specific type that the provider can use to create a new + instance of an item at the specified path. + + + + The context under which this method is being called. + + + + Nothing is returned, but all new items should be written to the Write*Object or + Write*Objects. + + + + + + Gives the provider to attach additional parameters to + the new-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The provider defined type of the item to create. + + + + This is a provider specific type that the provider can use to create a new + instance of an item at the specified path. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the Remove protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item to remove. + + + + True if all children in a subtree should be removed, false if only a single + level of children should be removed. This parameter should only be true for + NavigationCmdletProvider and its derived classes. + + + + The context under which this method is being called. + + + + + + Gives the provider to attach additional parameters to + the remove-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + True if all children in a subtree should be removed, false if only a single + level of children should be removed. This parameter should only be true for + NavigationCmdletProvider and its derived classes. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the HasChildItems protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item to see if it has children. + + + + The context under which this method is being called. + + + + True if the item has children, false otherwise. + + + + For implementers of ContainerCmdletProvider classes and those derived from it, + if a null or empty path is passed, + the provider should consider any items in the data store to be children + and return true. + + + + + + Internal wrapper for the Copy protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path of the item to copy. + + + + The path of the item to copy to. + + + + Tells the provider to recurse sub-containers when copying. + + + + The context under which this method is being called. + + + + Nothing. All objects that are copied should be written to the Write*Object or + Write*Objects methods. + + + + + + Gives the provider to attach additional parameters to + the copy-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The path of the item to copy to. + + + + Tells the provider to recurse sub-containers when copying. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Gets the children of the item at the specified path. + + + + The path (or name in a flat namespace) to the item from which to retrieve the children. + + + + True if all children in a subtree should be retrieved, false if only a single + level of children should be retrieved. This parameter should only be true for + the NavigationCmdletProvider derived class. + + + + Nothing is returned, but all objects should be written to the WriteItemObject method. + + + + Providers override this method to give the user access to the provider objects using + the get-childitem cmdlets. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not write objects that are generally hidden from + the user unless the Force property is set to true. For instance, the FileSystem provider should + not call WriteItemObject for hidden or system files unless the Force property is set to true. + + The provider implementation is responsible for preventing infinite recursion when there are + circular links and the like. An appropriate terminating exception should be thrown if this + situation occurs. + + The default implementation of this method throws an . + + + + + Gets the children of the item at the specified path. + + + + The path (or name in a flat namespace) to the item from which to retrieve the children. + + + + True if all children in a subtree should be retrieved, false if only a single + level of children should be retrieved. This parameter should only be true for + the NavigationCmdletProvider derived class. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + Nothing is returned, but all objects should be written to the WriteItemObject method. + + + + Providers override this method to give the user access to the provider objects using + the get-childitem cmdlets. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not write objects that are generally hidden from + the user unless the Force property is set to true. For instance, the FileSystem provider should + not call WriteItemObject for hidden or system files unless the Force property is set to true. + + The provider implementation is responsible for preventing infinite recursion when there are + circular links and the like. An appropriate terminating exception should be thrown if this + situation occurs. + + The default implementation of this method throws an . + + + + + Gives the provider an opportunity to attach additional parameters to + the get-childitem cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + True if all children in a subtree should be retrieved, false if only a single + level of children should be retrieved. This parameter should only be true for + the NavigationCmdletProvider derived class. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Gets names of the children of the specified path. + + + + The path to the item from which to retrieve the child names. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + Nothing is returned, but all objects should be written to the WriteItemObject method. + + + + Providers override this method to give the user access to the provider objects using + the get-childitem -name cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. The exception to this + is if is true, then any child name for a container should + be returned even if it doesn't match the Filter, Include, or Exclude. + + By default overrides of this method should not write the names of objects that are generally hidden from + the user unless the Force property is set to true. For instance, the FileSystem provider should + not call WriteItemObject for hidden or system files unless the Force property is set to true. + + The provider implementation is responsible for preventing infinite recursion when there are + circular links and the like. An appropriate terminating exception should be thrown if this + situation occurs. + + The default implementation of this method throws an . + + + + + Gets a new provider-specific path and filter (if any) that corresponds to the given + path. + + + + The path to the item. Unlike most other provider APIs, this path is likely to + contain PowerShell wildcards. + + + The provider-specific filter currently applied. + + + The new path to the item. + + + The new filter. + + + + True if the path or filter were altered. False otherwise. + + + + Providers override this method if they support a native filteing syntax that + can offer performance improvements over wildcard matching done by the PowerShell + engine. + If the provider can handle a portion (or all) of the PowerShell wildcard with + semantics equivalent to the PowerShell wildcard, it may adjust the path to exclude + the PowerShell wildcard. + If the provider can augment the PowerShell wildcard with an approximate filter (but + not replace it entirely,) it may simply return a filter without modifying the path. + In this situation, PowerShell's wildcarding will still be applied to a smaller result + set, resulting in improved performance. + + The default implementation of this method leaves both Path and Filter unmodified. + + PowerShell wildcarding semantics are handled by the System.Management.Automation.Wildcardpattern + class. + + + + + Gives the provider an opportunity to attach additional parameters to + the get-childitem -name cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Renames the item at the specified path to the new name provided. + + + + The path to the item to rename. + + + + The name to which the item should be renamed. This name should always be + relative to the parent container. + + + + Nothing is returned, but the renamed items should be written to the WriteItemObject method. + + + + Providers override this method to give the user the ability to rename provider objects using + the rename-item cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not allow renaming objects that are generally hidden from + the user unless the Force property is set to true. For instance, the FileSystem provider should + not allow renaming of a hidden or system file unless the Force property is set to true. + + This method is intended for the modification of the item's name only and not for Move operations. + An error should be written to if the + parameter contains path separators or would cause the item to change its parent location. + + The default implementation of this method throws an . + + + + + Gives the provider an opportunity to attach additional parameters to + the rename-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name to which the item should be renamed. This name should always be + relative to the parent container. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Creates a new item at the specified path. + + + + The path to the item to create. + + + + The provider defined type for the object to create. + + + + This is a provider specific type that the provider can use to create a new + instance of an item at the specified path. + + + + Nothing is returned, but the renamed items should be written to the WriteItemObject method. + + + + Providers override this method to give the user the ability to create new provider objects using + the new-item cmdlet. + + The parameter is a provider specific string that the user specifies to tell + the provider what type of object to create. For instance, in the FileSystem provider the + parameter can take a value of "file" or "directory". The comparison of this string should be + case-insensitive and you should also allow for least ambiguous matches. So if the provider allows + for the types "file" and "directory", only the first letter is required to disambiguate. + If refers to a type the provider cannot create, the provider should produce + an with a message indicating the types the provider can create. + + The parameter can be any type of object that the provider can use + to create the item. It is recommended that the provider accept at a minimum strings, and an instance + of the type of object that would be returned from GetItem() for this path. + can be used to convert some types to the desired type. + + The default implementation of this method throws an . + + + + + Gives the provider an opportunity to attach additional parameters to + the new-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The provider defined type of the item to create. + + + + This is a provider specific type that the provider can use to create a new + instance of an item at the specified path. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Removes (deletes) the item at the specified path + + + + The path to the item to remove. + + + + True if all children in a subtree should be removed, false if only a single + level of children should be removed. This parameter should only be true for + NavigationCmdletProvider and its derived classes. + + + + Nothing should be returned or written from this method. + + + + Providers override this method to allow the user the ability to remove provider objects using + the remove-item cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not remove objects that are generally hidden from + the user unless the Force property is set to true. For instance, the FileSystem provider should + not remove a hidden or system file unless the Force property is set to true. + + The provider implementation is responsible for preventing infinite recursion when there are + circular links and the like. An appropriate terminating exception should be thrown if this + situation occurs. + + The default implementation of this method throws an . + + + + + Gives the provider an opportunity to attach additional parameters to + the remove-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + True if all children in a subtree should be removed, false if only a single + level of children should be removed. This parameter should only be true for + NavigationCmdletProvider and its derived classes. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Determines if the item at the specified path has children. + + + + The path to the item to see if it has children. + + + + True if the item has children, false otherwise. + + + + Nothing is returned, but all objects should be written to the WriteItemObject method. + + + + Providers override this method to give the provider infrastructure the ability to determine + if a particular provider object has children without having to retrieve all the child items. + + For implementers of classes and those derived from it, + if a null or empty path is passed, + the provider should consider any items in the data store to be children + and return true. + + The default implementation of this method throws an . + + + + + Copies an item at the specified path to an item at the . + + + + The path of the item to copy. + + + + The path of the item to copy to. + + + + Tells the provider to recurse sub-containers when copying. + + + + + Nothing is returned, but all the objects that were copied should be written to the WriteItemObject method. + + + + Providers override this method to give the user the ability to copy provider objects using + the copy-item cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path and items being copied + meets those requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not copy objects over existing items unless the Force + property is set to true. For instance, the FileSystem provider should not copy c:\temp\foo.txt over + c:\bar.txt if c:\bar.txt already exists unless the Force parameter is true. + + If exists and is a container then Force isn't required and + should be copied into the container as a child. + + If is true, the provider implementation is responsible for + preventing infinite recursion when there are circular links and the like. An appropriate + terminating exception should be thrown if this situation occurs. + + The default implementation of this method throws an . + + + + + Gives the provider an opportunity to attach additional parameters to + the copy-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The path of the item to copy to. + + + + Tells the provider to recurse sub-containers when copying. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + The base class for Cmdlet providers that can be exposed through MSH drives. + + + + Although it is possible to derive from this base class to implement a Cmdlet Provider, in most + cases one should derive from , + , or + + + + + + Internal wrapper for the NewDrive protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The PSDriveInfo object the represents the drive to be mounted. + + + + The context under which this method is being called. + + + + The drive that was returned from the protected NewDrive method. + + + + + + Gives the provider to attach additional parameters to + the New-PSDrive cmdlet. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the RemoveDrive protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The PSDriveInfo object the represents the mounted drive. + + + + The context under which this method is being called. + + + + The drive that was returned from the protected RemoveDrive method. + + + + + + Internal wrapper for the InitializeDefaultDrives protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The context under which this method is being called. + + + + An array of drives returned from the protected InitializeDefaultDrives method. + + + + + + Gives the provider an opportunity to validate the drive + that is being added. It also allows the provider to modify parts + of the PSDriveInfo object. This may be done for performance or + reliability reasons or to provide extra data to all calls using + the Drive. + + + + The proposed new drive. + + + + The new drive that is to be added to the MSH namespace. This + can either be the same object that + was passed in or a modified version of it. + + The default implementation returns the drive that was passed. + + + + This method gives the provider an opportunity to associate + provider specific data with a drive. This is done by deriving + a new class from + and adding any properties, methods, or fields that are necessary. + When this method gets called, the override should create an instance + of the derived PSDriveInfo using the passed in PSDriveInfo. The derived + PSDriveInfo should then be returned. Each subsequent call into the provider + that uses this drive will have access to the derived PSDriveInfo via the + PSDriveInfo property provided by the base class. + + Any failures should be sent to the + method and null should be returned. + + + + + Gives the provider an opportunity to attach additional parameters to + the New-PSDrive cmdlet. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Gives the provider an opportunity to clean up any provider specific data + for the drive that is going to be removed. + + + + The Drive object the represents the mounted drive. + + + + If the drive can be removed it should return the drive that was passed + in. If the drive cannot be removed, null should be returned or an exception + should be thrown. + + The default implementation returns the drive that was passed. + + + + A provider should override this method to free any resources that may be associated with + the drive being removed. + + + + + Gives the provider the ability to map drives after initialization. + + + + A collection of the drives the provider wants to be added to the session upon initialization. + + The default implementation returns an empty collection. + + + + After the Start method is called on a provider, the InitializeDefaultDrives + method is called. This is an opportunity for the provider to + mount drives that are important to it. For instance, the Active Directory + provider might mount a drive for the defaultNamingContext if the + machine is joined to a domain. + + All providers should mount a root drive to help the user with discoverability. + This root drive might contain a listing of a set of locations that would be + interesting as roots for other mounted drives. For instance, the Active + Directory provider my create a drive that lists the naming contexts found + in the namingContext attributes on the RootDSE. This will help users + discover interesting mount points for other drives. + + + + + An interface that can be implemented on a Cmdlet provider to expose an item's + content. + + + + An IContentCmdletProvider provider implements a set of methods that allows + the use of a set of core commands against the data store that the provider + gives access to. By implementing this interface users can take advantage + the commands that expose the contents of an item. + get-content + set-content + clear-content + + This interface should only be implemented on derived classes of + , , + , or . + + A namespace provider should implemented this interface if items in the + namespace have content the provide wishes to expose. + + + + + Gets the content reader for the item at the specified path. + + + + The path to the item to get the content reader for. + + + + Overrides of this method should return an + for the item specified by the path. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not return a content reader for objects + that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + + + + Gives the provider an opportunity to attach additional parameters to the + get-content cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Gets the content writer for the item at the specified path. + + + + The path to the item to get the content writer for. + + + + An IContentWriter for the item at the specified path. + + + + Overrides of this method should return an + for the item specified by the path. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not return a content writer for objects + that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + + + + Gives the provider an opportunity to attach additional parameters to the + set-content and add-content cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Clears the content from the specified item. + + + + The path to the item to clear the content from. + + + + Overrides of this method should remove any content from the object but + not remove (delete) the object itself. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not clear or write objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + + + + Gives the provider an opportunity to attach additional parameters to the + clear-content cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + A Cmdlet provider that implements the IContentCmdletProvider interface must provide an + object that implements this interface when GetContentReader() is called. + + The interface allows for reading content from an item. + + + + + Reads the content from the item. + + + + The number of "blocks" of data to be read from the item. + + + + An array of the blocks of data read from the item. + + + + A "block" of content is provider specific. For the file system + a "block" may be considered a line of text, a byte, a character, or delimited string. + + The implementation of this method should break the content down into meaningful blocks + that the user may want to manipulate individually. The number of blocks to return is + indicated by the parameter. + + + + + Moves the current "block" to be read to a position relative to a place + in the reader. + + + + An offset of the number of blocks to seek from the origin. + + + + The place in the stream to start the seek from. + + + + The implemenation of this method moves the content reader + number of blocks from the specified . See + for a description of what a block is. + + + + + Closes the reader. Further reads should fail if the reader + has been closed. + + + + The implementation of this method should close any resources held open by the + reader. + + + + + A Cmdlet provider that implements the IContentCmdletProvider interface must provide an + object that implements this interface when GetContentWriter() is called. + + The interface allows for writing content to an item. + + + + + Writes content to the item. + + + + An array of content "blocks" to be written to the item. + + + + The blocks of content that were successfully written to the item. + + + + A "block" of content is provider specific. For the file system + a "block" may be considered a byte, a character, or delimited string. + + The implementation of this method should treat each element in the + parameter as a block. Each additional + call to this method should append any new values to the content + writer's current location until is called. + + + + + Moves the current "block" to be written to a position relative to a place + in the writer. + + + + An offset of the number of blocks to seek from the origin. + + + + The place in the stream to start the seek from. + + + + The implemenation of this method moves the content writer + number of blocks from the specified . See + for a description of what a block is. + + + + + Closes the writer. Further writes should fail if the writer + has been closed. + + + + The implementation of this method should close any resources held open by the + writer. + + + + + An interface that can be implemented on a Cmdlet provider to expose the dynamic + manipulation of properties. + + + + An IDynamicPropertyCmdletProvider provider implements a set of methods that allows + the use of a set of core commands against the data store that the provider + gives access to. By implementing this interface users can take advantage + the commands that expose the creation and deletion of properties on an item. + rename-itemproperty + remove-itemproperty + new-itemproperty + etc. + This interface should only be implemented on derived classes of + , , + , or . + + A Cmdlet provider should implemented this interface if items in the + namespace have dynamic properties the provide wishes to expose. + + + + + Creates a new property on the specified item. + + + + The path to the item on which the new property should be created. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + Nothing. The new property that was created should be passed to the WritePropertyObject method. + + + + Providers override this method to give the user the ability to add properties to provider objects + using the new-itemproperty cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not create new properties on objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + + + + Gives the provider an opportunity to attach additional parameters to the + new-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Removes a property on the item specified by the path. + + + + The path to the item on which the property should be removed. + + + + The name of the property to be removed. + + + + Nothing. + + + + Providers override this method to give the user the ability to remove properties from provider objects + using the remove-itemproperty cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not remove properties on objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + + + + Gives the provider an opportunity to attach additional parameters to the + remove-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property that should be removed. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Renames a property of the item at the specified path + + + + The path to the item on which to rename the property. + + + + The property to rename. + + + + The new name of the property. + + + + Nothing. The new property that was renamed should be passed to the WritePropertyObject method. + + + + Providers override this method to give the user the ability to rename properties of provider objects + using the rename-itemproperty cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not rename properties on objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + + + + + Gives the provider an opportunity to attach additional parameters to the + rename-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The property to rename. + + + + The new name of the property. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Copies a property of the item at the specified path to a new property on the + destination item. + + + + The path to the item on which to copy the property. + + + + The name of the property to copy. + + + + The path to the item on which to copy the property to. + + + + The destination property to copy to. + + + + Nothing. The new property that was copied to should be passed to the WritePropertyObject method. + + + + Providers override this method to give the user the ability to copy properties of provider objects + using the copy-itemproperty cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not copy properties from or to objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + + + + Gives the provider an opportunity to attach additional parameters to the + copy-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property to copy. + + + + The path to the item on which to copy the property to. + + + + The destination property to copy to. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Moves a property on an item specified by the path. + + + + The path to the item on which to move the property. + + + + The name of the property to move. + + + + The path to the item on which to move the property to. + + + + The destination property to move to. + + + + Nothing. The new property that was created should be passed to the WritePropertyObject method. + + + + Providers override this method to give the user the ability to move properties from one provider object + to another using the move-itemproperty cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not move properties on or to objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + + + + Gives the provider an opportunity to attach additional parameters to the + move-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property to copy. + + + + The path to the item on which to copy the property to. + + + + The destination property to copy to. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Provides an interface that allows simplified interaction + with namespaces that support security descriptors. The methods + on this interface allow a common set of commands to manage the security + on any namespace that supports this interface. + This interface should only be implemented on derived classes of + , , + , or . + + + + A namespace provider should implement this interface if items in the + namespace are protected by Security Descriptors. + + + + + + Gets the security descriptor for the item at the specified path. + + + + The path of the item to from which to retrieve the security descriptor. + + + + The sections of the security descriptor to retrieve, if your provider + supports them. + + + + Nothing. Write the security descriptor to the context's pipeline for + the item specifed by the path using the WriteSecurityDescriptorObject + method. + + + + + Sets the security descriptor for the item at the specified path. + + + + The path of the item to for which to set the security descriptor. + + + + The new security descriptor for the item. This should replace the + previously existing security descriptor. + + + + Nothing. After setting the security descriptor to the value passed in, + write the new security descriptor to the context's pipeline for the + item specifed by the path using the WriteSecurityDescriptorObject method. + + + + + + Creates a new empty security descriptor of the same type as + the item specified by the path. For example, if "path" points + to a file system directory, the descriptor returned will be + of type DirectorySecurity. + + + + Path of the item to use to determine the type of resulting + SecurityDescriptor. + + + + The sections of the security descriptor to create. + + + + A new ObjectSecurity object of the same type as + the item specified by the path. + + + + + Creates a new empty security descriptor of the specified type. + This method is used as a convenience function for consumers of + your provider. + + + + The type of Security Descriptor to create. Your provider should + understand a string representation for each of the types of + SecurityDescriptors that it supports. For example, the File System + provider performs a case-insensitive comparison against "file" for a + FileSecurity descriptor, and "directory" or "container" for a + DirectorySecurity descriptor. + + + + The sections of the security descriptor to create. + + + + A new ObjectSecurity object of the specified type. + + + + + An interface that can be implemented by a Cmdlet provider to expose properties of an item. + + + + An IPropertyCmdletProvider provider implements a set of methods that allows + the use of a set of core commands against the data store that the provider + gives access to. By implementing this interface users can take advantage + the commands that expose the contents of an item. + get-itemproperty + set-itemproperty + etc. + This interface should only be implemented on derived classes of + , , + , or . + + A namespace provider should implemented this interface if items in the + namespace have properties the provide wishes to expose. + + + + + Gets the properties of the item specified by the path. + + + + The path to the item to retrieve properties from. + + + + A list of properties that should be retrieved. If this parameter is null + or empty, all properties should be retrieved. + + + + Nothing. The property that was retrieved should be passed to the WritePropertyObject method. + + + + Providers override this method to give the user the ability to add properties to provider objects + using the get-itemproperty cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not retrieve properties from objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + An can be used as a property bag for the + properties that need to be returned if the contains + multiple properties to write. + + + + + Gives the provider an opportunity to attach additional parameters to the + get-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + A list of properties that should be retrieved. If this parameter is null + or empty, all properties should be retrieved. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Sets the specified properties of the item at the specified path. + + + + The path to the item to set the properties on. + + + + A PSObject which contains a collection of the name, type, value + of the properties to be set. + + + + Nothing. The property that was set should be passed to the WritePropertyObject method. + + + + Providers override this method to give the user the ability to set the value of provider object properties + using the set-itemproperty cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not retrieve properties from objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + An can be used as a property bag for the + properties that need to be returned if the contains + multiple properties to write. + + is a property bag containing the properties that should be set. + See for more information. + + + + + Gives the provider an opportunity to attach additional parameters to the + get-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + A PSObject which contains a collection of the name, type, value + of the properties to be set. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Clears a property of the item at the specified path. + + + + The path to the item on which to clear the property. + + + + The name of the property to clear. + + + + Nothing. The property that was cleared should be passed to the WritePropertyObject method. + + + + Providers override this method to give the user the ability to clear the value of provider object properties + using the clear-itemproperty cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not clear properties from objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + An can be used as a property bag for the + properties that need to be returned if the contains + multiple properties to write. + + + + + Gives the provider an opportunity to attach additional parameters to the + clear-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property to clear. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + The base class for Cmdlet providers that expose an item as an MSH path. + + + + The ItemCmdletProvider class is a base class that a provider derives from to + inherit a set of methods that allows the Monad engine + to provide a core set of commands for getting and setting of data on one or + more items. A provider should derive from this class if they want + to take advantage of the item core commands that are + already implemented by the Monad engine. This allows users to have common + commands and semantics across multiple providers. + + + + + Internal wrapper for the GetItem protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item to retrieve. + + + + The context under which this method is being called. + + + + Nothing is returned, but all objects should be written to the WriteObject method. + + + + + + Gives the provider to attach additional parameters to + the get-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The context under which this method is being called. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + + Internal wrapper for the SetItem protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item to set. + + + + The value of the item specified by the path. + + + + The context under which this method is being called. + + + + The item that was set at the specified path. + + + + + + Gives the provider to attach additional parameters to + the set-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The value of the item specified by the path. + + + + The context under which this method is being called. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + + Internal wrapper for the ClearItem protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item to clear. + + + + The context under which this method is being called. + + + + + + Gives the provider to attach additional parameters to + the clear-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The context under which this method is being called. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + + Internal wrapper for the InvokeDefaultAction protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item to perform the default action on. + + + + The context under which this method is being called. + + + + + + Gives the provider to attach additional parameters to + the invoke-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The context under which this method is being called. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + + Internal wrapper for the Exists protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item to see if it exists. + + + + The context under which this method is being called. + + + + True if the item exists, false otherwise. + + + + + + Gives the provider to attach additional parameters to + the test-path cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The context under which this method is being called. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + + Internal wrapper for the IsValidPath protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to check for validity. + + + + The context under which this method is being called. + + + + True if the path is syntactically and semantically valid for the provider, or + false otherwise. + + + + This test should not verify the existance of the item at the path. It should + only perform syntactic and semantic validation of the path. For instance, for + the file system provider, that path should be canonicalized, syntactically verified, + and ensure that the path does not refer to a device. + + + + + + Internal wrapper for the ExpandPath protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. Only called for providers that declare + the ExpandWildcards capability. + + + + The path to expand. Expansion must be consistent with the wildcarding + rules of PowerShell's WildcardPattern class. + + + + The context under which this method is being called. + + + + A list of provider paths that this path expands to. They must all exist. + + + + + + Gets the item at the specified path. + + + + The path to the item to retrieve. + + + + Nothing is returned, but all objects should be written to the WriteItemObject method. + + + + Providers override this method to give the user access to the provider objects using + the get-item and get-childitem cmdlets. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not write objects that are generally hidden from + the user unless the Force property is set to true. For instance, the FileSystem provider should + not call WriteItemObject for hidden or system files unless the Force property is set to true. + + The default implementation of this method throws an . + + + + + Gives the provider an opportunity to attach additional parameters to + the get-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Sets the item specified by the path. + + + + The path to the item to set. + + + + The value of the item specified by the path. + + + + Nothing. The item that was set should be passed to the WriteItemObject method. + + + + Providers override this method to give the user the ability to modify provider objects using + the set-item cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not set or write objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + The default implementation of this method throws an . + + + + + Gives the provider an opportunity to attach additional parameters to + the set-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The value of the item specified by the path. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Clears the item specified by the path. + + + + The path to the item to clear. + + + + Nothing. The item that was cleared should be passed to the WriteItemObject method. + + + + Providers override this method to give the user the ability to clear provider objects using + the clear-item cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not clear or write objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + The default implementation of this method throws an . + + + + + Gives the provider an opportunity to attach additional parameters to + the clear-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Invokes the default action on the specified item. + + + + The path to the item to perform the default action on. + + + + Nothing. The item that was set should be passed to the WriteItemObject method. + + + + The default implemenation does nothing. + + Providers override this method to give the user the ability to invoke provider objects using + the invoke-item cmdlet. Think of the invocation as a double click in the Windows Shell. This + method provides a default action based on the path that was passed. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not invoke objects that are generally hidden from + the user unless the Force property is set to true. An error should be sent to the WriteError method if + the path represents an item that is hidden from the user and Force is set to false. + + + + + Gives the provider an opportunity to attach additional parameters to + the invoke-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Determines if an item exists at the specified path. + + + + The path to the item to see if it exists. + + + + True if the item exists, false otherwise. + + + + Nothing. The item that was set should be passed to the WriteItemObject method. + + + + Providers override this method to give the user the ability to check for the existence of provider objects using + the set-item cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + The implemenation of this method should take into account any form of access to the object that may + make it visible to the user. For instance, if a user has write access to a file in the file system + provider bug not read access, the file still exists and the method should return true. Sometimes this + may require checking the parent to see if the child can be enumerated. + + The default implementation of this method throws an . + + + + + Gives the provider an opportunity to attach additional parameters to + the test-path cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Providers must override this method to verify the syntax and semantics + of their paths. + + + + The path to check for validity. + + + + True if the path is syntactically and semantically valid for the provider, or + false otherwise. + + + + This test should not verify the existance of the item at the path. It should + only perform syntactic and semantic validation of the path. For instance, for + the file system provider, that path should be canonicalized, syntactically verified, + and ensure that the path does not refer to a device. + + + + + Expand a provider path that contains wildcards to a list of provider + paths that the path represents.Only called for providers that declare + the ExpandWildcards capability. + + + + The path to expand. Expansion must be consistent with the wildcarding + rules of PowerShell's WildcardPattern class. + + + + A list of provider paths that this path expands to. They must all exist. + + + + + + The base class for a Cmdlet provider that expose a hierarchy of items and containers. + + + + The NavigationCmdletProvider class is a base class that provider can derive from + to implement a set of methods that allow + the use of a set of core commands against the data store that the provider + gives access to. By implementing this interface users can take advantage + the recursive commands, nested containers, and relative paths. + + + + + Internal wrapper for the MakePath protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The parent segment of a path to be joined with the child. + + + + The child segment of a path to be joined with the parent. + + + + The context under which this method is being called. + + + + A string that represents the parent and child segments of the path + joined by a path separator. + + + + This method should use lexical joining of two path segments with a path + separator character. It should not validate the path as a legal fully + qualified path in the provider namespace as each parameter could be only + partial segments of a path and joined they may not generate a fully + qualified path. + Example: the file system provider may get "windows\system32" as the parent + parameter and "foo.dll" as the child parameter. The method should join these + with the "\" separator and return "windows\system32\foo.dll". Note that + the returned path is not a fully qualified file system path. + + Also beware that the path segments may contain characters that are illegal + in the provider namespace. These characters are most likely being used + for globbing and should not be removed by the implementation of this method. + + + + + + Internal wrapper for the GetParentPath protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + A fully qualified provider specific path to an item. The item may or + may not exist. + + + + The fully qualified path to the root of a drive. This parameter may be null + or empty if a mounted drive is not in use for this operation. If this parameter + is not null or empty the result of the method should not be a path to a container + that is a parent or in a different tree than the root. + + + + The context under which this method is being called. + + + + The path of the parent of the path parameter. + + + + This should be a lexical splitting of the path on the path separator character + for the provider namespace. For example, the file system provider should look + for the last "\" and return everything to the left of the "\". + + + + + + Internal wrapper for the NormalizeRelativePath method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + A fully qualified provider specific path to an item. The item should exist + or the provider should write out an error. + + + + The path that the return value should be relative to. + + + + The context under which this method is being called. + + + + A normalized path that is relative to the basePath that was passed. The + provider should parse the path parameter, normalize the path, and then + return the normalized path relative to the basePath. + + + + This method does not have to be purely syntactical parsing of the path. It + is encouraged that the provider actually use the path to lookup in its store + and create a relative path that matches the casing, and standardized path syntax. + + + + + + Internal wrapper for the GetChildName protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The fully qualified path to the item + + + + The leaf element in the path. + + + + The context under which this method is being called. + + + + This should be implemented as a split on the path separator. The characters + in the fullPath may not be legal characters in the namespace but may be + used in globing or regular expression matching. The provider should not error + unless there are no path separators in the fully qualified path. + + + + + + Internal wrapper for the IsItemContainer protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item to determine if it is a container. + + + + The context under which this method is being called. + + + + true if the item specified by path is a container, false otherwise. + + + + + + Internal wrapper for the MoveItem protected method. It is called instead + of the protected method that is overridden by derived classes so that the + context of the command can be set. + + + + The path to the item to be moved. + + + + The path of the destination container. + + + + The context under which this method is being called. + + + + Nothing. All objects that are moved should be written to the WriteObject method. + + + + + + Gives the provider to attach additional parameters to + the move-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The path of the destination container. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Joins two strings with a path a provider specific path separator. + + + + The parent segment of a path to be joined with the child. + + + + The child segment of a path to be joined with the parent. + + + + A string that represents the parent and child segments of the path + joined by a path separator. + + + + This method should use lexical joining of two path segments with a path + separator character. It should not validate the path as a legal fully + qualified path in the provider namespace as each parameter could be only + partial segments of a path and joined they may not generate a fully + qualified path. + Example: the file system provider may get "windows\system32" as the parent + parameter and "foo.dll" as the child parameter. The method should join these + with the "\" separator and return "windows\system32\foo.dll". Note that + the returned path is not a fully qualified file system path. + + Also beware that the path segments may contain characters that are illegal + in the provider namespace. These characters are most likely being used + for globbing and should not be removed by the implementation of this method. + + + + + Joins two strings with a path a provider specific path separator. + + + + The parent segment of a path to be joined with the child. + + + + The child segment of a path to be joined with the parent. + + + + Indicate that the is the name of a child item that's guaranteed to exist + + + + If the is True, then we don't normalize the child path, and would do + some checks to decide whether to normalize the parent path. + + + + + + + Removes the child segment of a path and returns the remaining parent + portion. + + + + A fully qualified provider specific path to an item. The item may or + may not exist. + + + + The fully qualified path to the root of a drive. This parameter may be null + or empty if a mounted drive is not in use for this operation. If this parameter + is not null or empty the result of the method should not be a path to a container + that is a parent or in a different tree than the root. + + + + The path of the parent of the path parameter. + + + + This should be a lexical splitting of the path on the path separator character + for the provider namespace. For example, the file system provider should look + for the last "\" and return everything to the left of the "\". + + + + + Normalizes the path that was passed in and returns the normalized path + as a relative path to the basePath that was passed. + + + + A fully qualified provider specific path to an item. The item should exist + or the provider should write out an error. + + + + The path that the return value should be relative to. + + + + A normalized path that is relative to the basePath that was passed. The + provider should parse the path parameter, normalize the path, and then + return the normalized path relative to the basePath. + + + + This method does not have to be purely syntactical parsing of the path. It + is encouraged that the provider actually use the path to lookup in its store + and create a relative path that matches the casing, and standardized path syntax. + + Note, the base class implemenation uses GetParentPath, GetChildName, and MakePath + to normalize the path and then make it relative to basePath. All string comparisons + are done using StringComparison.InvariantCultureIngoreCase. + + + + + Get the common base path of two paths + + One path + Another path + + + + Gets the name of the leaf element in the specified path. + + + + The fully qualified path to the item + + + + The leaf element in the path. + + + + This should be implemented as a split on the path separator. The characters + in the fullPath may not be legal characters in the namespace but may be + used in globing or regular expression matching. The provider should not error + unless there are no path separators in the fully qualified path. + + + + + Determines if the item specified by the path is a container. + + + + The path to the item to determine if it is a container. + + + + true if the item specified by path is a container, false otherwise. + + + + Providers override this method to give the user the ability to check + to see if a provider object is a container using the test-path -container cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path passed meets those + requirements by accessing the appropriate property from the base class. + + The default implementation of this method throws an . + + + + + Moves the item specified by path to the specified destination. + + + + The path to the item to be moved. + + + + The path of the destination container. + + + + Nothing is returned, but all the objects that were moved should be written to the WriteItemObject method. + + + + Providers override this method to give the user the ability to move provider objects using + the move-item cmdlet. + + Providers that declare + of ExpandWildcards, Filter, Include, or Exclude should ensure that the path and items being moved + meets those requirements by accessing the appropriate property from the base class. + + By default overrides of this method should not move objects over existing items unless the Force + property is set to true. For instance, the FileSystem provider should not move c:\temp\foo.txt over + c:\bar.txt if c:\bar.txt already exists unless the Force parameter is true. + + If exists and is a container then Force isn't required and + should be moved into the container as a child. + + The default implementation of this method throws an . + + + + + Gives the provider an opportunity to attach additional parameters to + the move-item cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The path of the destination container. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + When a path contains both forward slash and backslash, we may introduce some errors by + normalizing the path. This method does some smart checks to reduce the chances of making + those errors. + + + + The path to normalize + + + + Normalized path or the original path + + + + + Test if the path is an absolute path + + + + + + + Tokenizes the specified path onto a stack + + + + The path to tokenize. + + + + The base part of the path that should not be tokenized. + + + + A stack containing the tokenized path with leaf elements on the bottom + of the stack and the most ancestoral parent at the top. + + + + + + Given the tokenized path, the relative pathing elements are removed. + + + + A stack containing path elements where the leaf most element is at + the bottom of the stack and the most ancestoral parent is on the top. + Generally this stack comes from TokenizePathToStack(). + + + + The path being normalized. Just used for error reporting. + + + + The base path to make the path relative to. Just used for error reporting. + + + + Determines whether to throw an exception on non-existing paths. + + + + A stack in reverse order with the path elements normalized and all relative + pathing tokens removed. + + + + + + Pops each leaf element of the stack and uses MakePath to generate the relative path + + + + The stack containing the leaf elements of the path. + + + + A path that is made up of the leaf elements on the given stack. + + + + The elements on the stack start from the leaf element followed by its parent + followed by its parent, etc. Each following element on the stack is the parent + of the one before it. + + + + + + This interface needs to be implemented by providers that want users to see + provider-specific help. + + + + + Called by the help system to get provider-specific help from the provider. + + + Name of command that the help is requested for. + + + Full path to the current location of the user or the full path to + the location of the property that the user needs help about. + + + The MAML help XML that should be presented to the user. + + + + + The base class for Cmdlet provider. + + + + Although it is possible to derive from this base class to implement a Cmdlet Provider, in most + cases one should derive from , + , or + + + + Defines the base class for all of the classes the provide implementations for a particular + data store or item for the MSH core commands. + + + + + The context under which the provider is running. This will change between each + invocation of a method in this class or derived classes. + + + + + The information that the Monad engine stores on behalf of the provider. + + + + + An instance of the PSTraceSource class used for trace output + using "CmdletProviderClasses" as the category. + + + + + Sets the provider information that is stored in the Monad engine into the + provider base class. + + + + The provider information that is stored by the Monad engine. + + + + If is null. + + + + + + Checks whether the filter of the provider is set. + Can be overriden by derived class when additional filters are defined. + + + Whether the filter of the provider is set. + + + + + Gets or sets the context for the running command. + + + + On set, if the context contains credentials and the provider + doesn't support credentials, or if the context contains a filter + parameter and the provider does not support filters. + + + + + + Called when the provider is first initialized. It sets the context + of the call and then calls the derived providers Start method. + + + + The information about the provider. + + + + The context under which this method is being called. + + + + + + Gets an object that defines the additional parameters for the Start implementation + for a provider. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Called when the provider is being removed. It sets the context + of the call and then calls the derived providers Stop method. + + + + The context under which this method is being called. + + + + + + + + + Internal wrapper for the GetProperty protected method. This method will + only be called if the provider implements the IPropertyCmdletProvider interface. + + + + The path to the item to retrieve properties from. + + + + A list of properties that should be retrieved. If this parameter is null + or empty, all properties should be retrieved. + + + + The context under which this method is being called. + + + + + + Gives the provider a chance to attach additional parameters to + the get-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + A list of properties that should be retrieved. If this parameter is null + or empty, all properties should be retrieved. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the SetProperty protected method. This method will + only be called if the provider implements the IPropertyCmdletProvider interface. + + + + The path to the item to set the properties on. + + + + A PSObject which contains a collection of the name, type, value + of the properties to be set. + + + + The context under which this method is being called. + + + + + + Gives the provider a chance to attach additional parameters to + the set-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + A PSObject which contains a collection of the name, type, value + of the properties to be set. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the ClearProperty protected method. This method will + only be called if the provider implements the IPropertyCmdletProvider interface. + + + + The path to the item from which the property should be cleared. + + + + The name of the property that should be cleared. + + + + The context under which this method is being called. + + + + Implement this method when you are providing access to a data store + that allows dynamic clearing of properties. + + + + + + Gives the provider a chance to attach additional parameters to + the clear-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + A list of properties that should be cleared. If this parameter is null + or empty, all properties should be cleared. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the NewProperty protected method. This method will + only be called if the provider implements the IDynamicPropertyCmdletProvider interface. + + + + The path to the item on which the new property should be created. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + The context under which this method is being called. + + + + Implement this method when you are providing access to a data store + that allows dynamic creation of properties. + + + + + + Gives the provider a chance to attach additional parameters to + the new-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the RemoveProperty protected method. This method will + only be called if the provider implements the IDynamicPropertyCmdletProvider interface. + + + + The path to the item on which the property should be removed. + + + + The name of the property to be removed + + + + The context under which this method is being called. + + + + Implement this method when you are providing access to a data store + that allows dynamic removal of properties. + + + + + + Gives the provider a chance to attach additional parameters to + the remove-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property that should be removed. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the RenameProperty protected method. This method will + only be called if the provider implements the IDynamicPropertyCmdletProvider interface. + + + + The path to the item on which the property should be renamed. + + + + The name of the property that should be renamed. + + + + The new name for the property. + + + + The context under which this method is being called. + + + + Implement this method when you are providing access to a data store + that allows dynamic renaming of properties. + + + + + + Gives the provider a chance to attach additional parameters to + the rename-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property that should be renamed. + + + + The name of the property to rename it to. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the CopyProperty protected method. This method will + only be called if the provider implements the IDynamicPropertyCmdletProvider interface. + + + + The path to the item from which the property should be copied. + + + + The name of the property that should be copied. + + + + The path to the item to which the property should be copied. + + + + The name of the property that should be copied to. + + + + The context under which this method is being called. + + + + Implement this method when you are providing access to a data store + that allows dynamic copying of properties. + + + + + + Gives the provider a chance to attach additional parameters to + the copy-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property that should be copied. + + + + The path to the item to which the property should be copied. + + + + The name of the property that should be copied to. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the MoveProperty protected method. This method will + only be called if the provider implements the IDynamicPropertyCmdletProvider interface. + + + + The path to the item from which the property should be moved. + + + + The name of the property that should be moved. + + + + The path to the item to which the property should be moved. + + + + The name of the property that should be moved to. + + + + The context under which this method is being called. + + + + Implement this method when you are providing access to a data store + that allows dynamic moving of properties. + + + + + + Gives the provider a chance to attach additional parameters to + the move-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property that should be copied. + + + + The path to the item to which the property should be copied. + + + + The name of the property that should be copied to. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the GetContentReader protected method. This method will + only be called if the provider implements the IContentCmdletProvider interface. + + + + The path to the item to retrieve content from. + + + + The context under which this method is being called. + + + + An instance of the IContentReader for the specified path. + + + + + + Gives the provider a chance to attach additional parameters to + the get-content cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the GetContentWriter protected method. This method will + only be called if the provider implements the IContentCmdletProvider interface. + + + + The path to the item to set content on. + + + + The context under which this method is being called. + + + + An instance of the IContentWriter for the specified path. + + + + + + Gives the provider a chance to attach additional parameters to + the add-content and set-content cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Internal wrapper for the ClearContent protected method. This method will + only be called if the provider implements the IContentCmdletProvider interface. + + + + The path to the item to clear the content from. + + + + The context under which this method is being called. + + + + + + Gives the provider a chance to attach additional parameters to + the clear-content cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + + Gives the provider the opportunity to initialize itself. + + + + The information about the provider that is being started. + + + + The default implementation returns the ProviderInfo instance that + was passed. + + To have session state maintain persisted data on behalf of the provider, + the provider should derive from + and add any properties or + methods for the data it wishes to persist. When Start gets called the + provider should construct an instance of its derived ProviderInfo using the + providerInfo that is passed in and return that new instance. + + + + + Gets an object that defines the additional parameters for the Start implementation + for a provider. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Called by session state when the provider is being removed. + + + + A provider should override this method to free up any resources that the provider + was using. + + The default implementation does nothing. + + + + + Indicates whether stop has been requested on this provider. + + + + + Gets the instance of session state for the current runspace. + + + + + Gets the instance of the provider interface APIs for the current runspace. + + + + + Gets the instance of the command invocation APIs for the current runspace. + + + + + Gets the credentials under which the operation should run. + + + + + The information about the provider that is stored in the runspace + on behalf of the provider. + + + + If a derived type of ProviderInfo was returned from the Start method, it + will be set here in all subsequent calls to the provider. + + + + + The drive information associated with the context of the current operation. + + + + + The dynamic parameters object populated with the values as specified + by the user. + + + + + Gets the force property. + + + + Gives the provider guidance on how vigorous it should be about performing + the operation. If true, the provider should do everything possible to perform + the operation. If false, the provider should attempt the operation but allow + even simple errors to terminate the operation. + For example, if the user tries to copy a file to a path that already exists and + the destination is read-only, if force is true, the provider should copy over + the existing read-only file. If force is false, the provider should write an error. + + + + + Gets the provider specific filter that was supplied by the caller. + + + + + Gets the include wildcard patterns which is used to determine which items + will be included when taking an action. + + + + + Gets the exclude wildcard patterns which is used to determine which items + will be excluded when taking an action. + + + + + Gets the host interaction APIs. + + + + + Gets the resource string corresponding to baseName and + resourceId from the current assembly. You should override + this if you require a different behavior. + + + + the base resource name + + + + the resource id + + + + the resource string corresponding to baseName and resourceId + + + + When overriding this method, the resource string for the specified + resource should be retrieved from a localized resource assembly. + + + + + + + + + + + + + + + + + + + + + + + + + + Returns true if a transaction is available and active. + + + + + Gets an object that surfaces the current PowerShell transaction. + When this object is disposed, PowerShell resets the active transaction + + + + + + + + + + + + + + + + + + + + + + + Converts the incoming object to a PSObject and then adds extra + data as notes. Then it writes the shell object to the context. + + + + The item being written out. + + + + The path of the item being written out. + + + + True if the item is a container, false otherwise. + + + + + + Converts the incoming object to a PSObject and then adds extra + data as notes. Then it writes the shell object to the context. + + + + The item being written out. + + + + The path of the item being written out. + + + + + + Wraps the item in a PSObject and attaches some notes to the + object that deal with path information. + + + + The item to be wrapped. + + + + The path to the item. + + + + A PSObject that wraps the item and has path information attached + as notes. + + + + if is null. + + + + + + Writes an item to the output as a PSObject with extra data attached + as notes. + + + + The item to be written. + + + + The path of the item being written. + + + + True if the item is a container, false otherwise. + + + + + + + Writes a property object to the output as a PSObject with extra data attached + as notes. + + + + The properties to be written. + + + + The path of the item being written. + + + + + + + Writes a Security Descriptor object to the output as a PSObject with extra data attached + as notes. + + + + The Security Descriptor to be written. + + + + The path of the item from which the Security Descriptor was retrieved. + + + + + + + + + + Internal wrapper for the GetSecurityDescriptor protected method. This method will + only be called if the provider implements the ISecurityDescriptorCmdletProvider interface. + + + + The path to the item to retrieve the security descriptor from. + + + + Specifies the parts of a security descriptor to retrieve. + + + + The context under which this method is being called. + + + + Nothing. An instance of an object that represents the security descriptor + for the item specifed by the path should be written to the context. + + + + + + Internal wrapper for the SetSecurityDescriptor protected method. This method will + only be called if the provider implements the ISecurityDescriptorCmdletProvider interface. + + + + The path to the item to set the new security descriptor on. + + + + The new security descriptor for the item. + + + + The context under which this method is being called. + + + + Nothing. The security descriptor object that was set should be written + to the context. + + + + + + Declares a class as a Cmdlet provider. + + + + The class must be derived from System.Management.Automation.Provider.CmdletProvider to + be recognized by the runspace. + + + + + Constructor for the attribute. + + + + The provider name. + + + + An enumeration of the capabilities that the provider implements beyond the + default capabilities that are required. + + + + If is null or empty. + + + + If contains any of the following characters: \ [ ] ? * : + + + + + Gets the name of the provider. + + + + + Gets the flags that represent the capabilities of the provider. + + + + + This enumeration defines the capabilities that the provider implements. + + + + + The provider does not add any additional capabilities beyond what the + Monad engine provides. + + + + + The provider does the inclusion filtering for those commands that take an Include + parameter. The Monad engine should not try to do the filtering on behalf of this + provider. + + + + Note, the provider should make every effort to filter in a way that is consistent + with the Monad engine. This option is allowed because in many cases the provider + can be much more efficient at filtering. + + + + + The provider does the exclusion filtering for those commands that take an Exclude + parameter. The Monad engine should not try to do the filtering on behalf of this + provider. + + + + Note, the provider should make every effort to filter in a way that is consistent + with the Monad engine. This option is allowed because in many cases the provider + can be much more efficient at filtering. + + + + + The provider can take a provider specific filter string. + + + + When this attribute is specified a provider specific filter can be passed from + the Core Commands to the provider. This filter string is not interpretted in any + way by the Monad engine. + + + + + The provider does the wildcard matching for those commands that allow for it. The Monad + engine should not try to do the wildcard matching on behalf of the provider when this + flag is set. + + + + Note, the provider should make every effort to do the wildcard matching in a way that is consistent + with the Monad engine. This option is allowed because in many cases wildcard matching + cannot occur via the path name or because the provider can do the matching in a much more + efficient manner. + + + + + The provider supports ShouldProcess. When this capability is specified, the + -Whatif and -Confirm parameters become available to the user when using + this provider + + + + + The provider supports credentials. When this capability is specified and + the user passes credentials to the core cmdlets, those credentials will + be passed to the provider. If the provider doesn't specify this capability + and the user passes credentials, an exception is thrown. + + + + + The provider supports transactions. When this capability is specified, PowerShell + lets the provider participate in the current PowerShell transaction. + The provider does not support this capability and the user attempts to apply a + transaction to it, an exception is thrown. + + + + + The context of the core command that is being run. This + includes data like the user name and password, as well + as callbacks for streaming output, prompting, and progress. + + This allows the providers to be called in a variety of situations. + The most common will be from the core cmdlets themselves but they + can also be called programmatically either by having the results + accumulated or by providing delgates for the various streams. + + NOTE: USER Feedback mechanism are only enabled for the CoreCmdlet + case. This is because we have not seen a use-case for them in the + other scenarios. + + + + + An instance of the PSTraceSource class used for trace output + using "CmdletProviderContext" as the category. + + + + + Constructs the context under which the core command providers + operate. + + + + The context of the engine. + + + + If is null. + + + + + + Constructs the context under which the core command providers + operate. + + + + The context of the engine. + + + + The origin of the caller of this API + + + + If is null. + + + + + + Constructs the context under which the core command providers + operate. + + + + The command object that is running. + + + + The credentials the core command provider should use. + + + + The drive under which this context should operate. + + + + If is null. + + + + If contains a null Host or Context reference. + + + + + + Constructs the context under which the core command providers + operate. + + + + The command object that is running. + + + + The credentials the core command provider should use. + + + + If is null. + + + + If contains a null Host or Context reference. + + + + + + Constructs the context under which the core command providers + operate. + + + + The command object that is running. + + + + If is null. + + + + If contains a null Host or Context reference. + + + + + + Constructs the context under which the core command providers + operate using an existing context. + + + + A CmdletProviderContext instance to copy the filters, ExecutionContext, + Credentials, Drive, and Force options from. + + + + If is null. + + + + + + If the constructor that takes a context to copy is + called, this will be set to the context being copied. + + + + + The execution context of the engine. + + + + + The credentials under which the operation should run. + + + + + The drive under which this context is operating. + + + + + The force parameter gives guidance to providers on how vigorously they + should try to perform an operation. + + + + + + The provider specific filter used to determine which items to act upon. + + + + + A glob string used to include items upon which to act. + + + + + A glob string used to exclude items upon which to act. + + + + + A flag that determines if the provider should glob the paths or not + + + + + The command which defines the context. This should not be + made visible to anyone and should only be set through the + constructor. + + + + + This makes the origin of the provider request visible to the internals + + + + + This defines the default behavior for the WriteObject method. + If it is true, a call to either of these + methods will result in an immediate call to the command + WriteObject(s) method, or to the write(s)ObjectDelegate if + one has been supplied. + If it is false, the objects will be accumulated until the + GetObjects method is called. + + + + + This defines the default behavior for the WriteError method. + If it is true, a call to this method will result in an immediate call + to the command WriteError method, or to the writeErrorDelegate if + one has been supplied. + If it is false, the objects will be accumulated until the + GetErrorObjects method is called. + + + + + A collection in which objects that are written using the WriteObject(s) + methods are accumulated if is false. + + + + + A collection in which objects that are written using the WriteError + method are accumulated if is false. + + + + + The instance of the provider that is currently executing in this context. + + + + + The dynamic parameters for the provider that is currently executing in this context. + + + + + Gets the execution context of the engine + + + + + + Gets or sets the provider instance for the current + execution context. + + + + + + Copies the include, exclude, and provider filters from + the specified context to this context. + + + + The context to copy the filters from. + + + + + + Gets or sets the dynamic parameters for the context + + + + + + Returns MyInvocation from the underlying cmdlet + + + + + Determines if the Write* calls should be passed through to the command + instance if there is one. The default value is true. + + + + + + The drive associated with this context. + + + + If is null on set. + + + + + + Gets the user name under which the operation should run. + + + + + Gets the flag that determines if the command requested a transaction. + + + + + Returns true if a transaction is available and active. + + + + + Gets an object that surfaces the current PowerShell transaction. + When this object is disposed, PowerShell resets the active transaction + + + + + Gets or sets the Force property that is passed to providers. + + + + + + The provider specific filter that should be used when determining + which items an action should take place on. + + + + + + A glob string that signifies which items should be included when determining + which items the action should occur on. + + + + + + A glob string that signifies which items should be excluded when determining + which items the action should occur on. + + + + + + Gets or sets the property that tells providers (that + declare their own wildcard support) to suppress wildcard + expansion. This is set when the user specifies the + -LiteralPath parameter to one of the core commands. + + + + + + Confirm the operation with the user + + + Name of the target resource being acted upon + + true iff the action should be performed + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. The pipeline failure will be + ActionPreferenceStopException. + Also, this occurs if the pipeline was already stopped. + + + + + Confirm the operation with the user + + + Name of the target resource being acted upon + + What action was being performed + true iff the action should be performed + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. The pipeline failure will be + ActionPreferenceStopException. + Also, this occurs if the pipeline was already stopped. + + + + + Confirm the operation with the user + + + This should contain a textual description of the action to be + performed. This is what will be displayed to the user for + ActionPreference.Continue. + + + This should contain a textual query of whether the action + should be performed, usually in the form of a question. + This is what will be displayed to the user for + ActionPreference.Inquire. + + + This is the caption of the window which may be displayed + if the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + true iff the action should be performed + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. The pipeline failure will be + ActionPreferenceStopException. + Also, this occurs if the pipeline was already stopped. + + + + + Confirm the operation with the user + + + This should contain a textual description of the action to be + performed. This is what will be displayed to the user for + ActionPreference.Continue. + + + This should contain a textual query of whether the action + should be performed, usually in the form of a question. + This is what will be displayed to the user for + ActionPreference.Inquire. + + + This is the caption of the window which may be displayed + if the user is prompted whether or not to perform the action. + It may be displayed by some hosts, but not all. + + + Indicates the reason(s) why ShouldProcess returned what it returned. + Only the reasons enumerated in + + are returned. + + true iff the action should be performed + + The ActionPreference.Stop or ActionPreference.Inquire policy + triggered a terminating error. The pipeline failure will be + ActionPreferenceStopException. + Also, this occurs if the pipeline was already stopped. + + + + + Ask the user whether to continue/stop or break to a subshell + + + + Message to display to the user. This routine will append + the text "Continue" to ensure that people know what question + they are answering. + + + + Dialog caption if the host uses a dialog. + + + + True if the user wants to continue, false if not. + + + + + + Ask the user whether to continue/stop or break to a subshell + + + + Message to display to the user. This routine will append + the text "Continue" to ensure that people know what question + they are answering. + + + + Dialog caption if the host uses a dialog. + + + + Indicates whether the user selected YesToAll + + + + Indicates whether the user selected NoToAll + + + + True if the user wants to continue, false if not. + + + + + + Writes the object to the Verbose pipe. + + + + The string that needs to be written. + + + + + + Writes the object to the Warning pipe. + + + + The string that needs to be written. + + + + + + Writes a debug string. + + + + The String that needs to be written. + + + + + + Sets the filters that are used within this context. + + + + The include filters which determines which items are included in + operations within this context. + + + + The exclude filters which determines which items are excluded from + operations within this context. + + + + The provider specific filter for the operation. + + + + + + Gets an array of the objects that have been accumulated + and the clears the collection. + + + + An object array of the objects that have been accumulated + through the WriteObject method. + + + + + + Gets an array of the error objects that have been accumulated + and the clears the collection. + + + + An object array of the objects that have been accumulated + through the WriteError method. + + + + + + If there are any errors accumulated, the first error is thrown. + + + + If a CmdletProvider wrote any exceptions to the error pipeline, it is + wrapped and then thrown. + + + + + + If there are any errors accumulated, the first error is thrown. + + + + If true, the error will be wrapped in a ProviderInvocationException before + being thrown. If false, the error will be thrown as is. + + + + If is true, the + first exception that was written to the error pipeline by a CmdletProvider + is wrapped and thrown. + + + + If is false, + the first exception that was written to the error pipeline by a CmdletProvider + is thrown. + + + + + + Writes all the accumulated errors to the specified context using WriteError + + + + The context to write the errors to. + + + + If is null. + + + + + + Writes an object to the output. + + + + The object to be written. + + + + If streaming is on and the writeObjectHandler was specified then the object + gets written to the writeObjectHandler. If streaming is on and the writeObjectHandler + was not specified and the command object was specified, the object gets written to + the WriteObject method of the command object. + If streaming is off the object gets written to an accumulator collection. The collection + of written object can be retrieved using the AccumulatedObjects method. + + + + The CmdletProvider could not stream the results because no + cmdlet was specified to stream the output through. + + + + If the pipeline has been signaled for stopping but + the provider calls this method. + + + + + + Writes the error to the pipeline or accumulates the error in an internal + buffer. + + + + The error record to write to the pipeline or the internal buffer. + + + + The CmdletProvider could not stream the error because no + cmdlet was specified to stream the output through. + + + + If the pipeline has been signaled for stopping but + the provider calls this method. + + + + + + If the error pipeline hasn't been supplied a delegate or a command then this method + will determine if any errors have accumulated. + + + + True if the errors are being accumulated and some errors have been accumulated. False otherwise. + + + + + + Call this on a separate thread when a provider is using + this context to do work. This method will call the StopProcessing + method of the provider. + + + + + + The list of contexts to which the StopProcessing calls + should be referred. + + + + + + Implements the interfaces used by navigation commands to work with + the virtual drive system. + + + + + An instance of the PSTraceSource class used for trace output + using "LocationGlobber" as the category. + + + + + User level tracing for path resolution. + + + + + Constructs an instance of the LocationGlobber from the current SessionState + + + + The instance of session state on which this location globber acts. + + + + If is null. + + + + + + Converts a PowerShell path containing glob characters to PowerShell paths that match + the glob string. + + + + A PowerShell path containing glob characters. + + + + If true, a ItemNotFoundException will not be thrown for non-existing + paths. Instead an appropriate path will be returned as if it did exist. + + + + The provider instance used to resolve the path. + + + + The PowerShell paths that match the glob string. + + + + If is null. + + + + If is a provider-qualified path + and the specified provider does not exist. + + + + If the provider throws an exception when its MakePath gets + called. + + + + If the provider does not support multiple items. + + + + If the home location for the provider is not set and + starts with a "~". + + + + If does not contain glob characters and + could not be found. + + + + + + Converts a PowerShell path containing glob characters to PowerShell paths that match + the glob string. + + + + A PowerShell path containing glob characters. + + + + If true, a ItemNotFoundException will not be thrown for non-existing + paths. Instead an appropriate path will be returned as if it did exist. + + + + The context under which the command is running. + + + + The instance of the provider used to resolve the path. + + + + The PowerShell paths that match the glob string. + + + + If or is null. + + + + If is a provider-qualified path + and the specified provider does not exist. + + + + If the provider throws an exception when its MakePath gets + called. + + + + If the provider does not support multiple items. + + + + If the home location for the provider is not set and + starts with a "~". + + + + If does not contain glob characters and + could not be found. + + + + If has been signaled for + StopProcessing. + + + + + + Converts a PowerShell path containing glob characters to the provider + specific paths matching the glob strings. + + + + A PowerShell path containing glob characters. + + + + If true, a ItemNotFoundException will not be thrown for non-existing + paths. Instead an appropriate path will be returned as if it did exist. + + + + Returns the information of the provider that was used to do the globbing. + + + + The instance of the provider used to resolve the path. + + + + An array of provider specific paths that matched the PowerShell glob path. + + + + If is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider associated with the threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + If does not contain glob characters and + could not be found. + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Converts a PowerShell path containing glob characters to the provider + specific paths matching the glob strings. + + + + A PowerShell path containing glob characters. + + + + If true, a ItemNotFoundException will not be thrown for non-existing + paths. Instead an appropriate path will be returned as if it did exist. + + + + The context under which the command is running. + + + + Returns the information of the provider that was used to do the globbing. + + + + The instance of the provider used to resolve the path. + + + + An array of provider specific paths that matched the PowerShell glob path. + + + + If or is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider associated with the threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + If does not contain glob characters and + could not be found. + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Given a provider specific path that contains glob characters, this method + will perform the globbing using the specified provider and return the + matching provider specific paths. + + + + The path containing the glob characters to resolve. + + + + If true, a ItemNotFoundException will not be thrown for non-existing + paths. Instead an appropriate path will be returned as if it did exist. + + + + The ID of the provider to use to do the resolution. + + + + The instance of the provider that was used to resolve the path. + + + + An array of provider specific paths that match the glob path. + + + + If is null. + + + + If references a provider that does not exist. + + + + If the references a provider that is not + a ContainerCmdletProvider. + + + + If the provider used to build the path threw an exception. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If does not contain glob characters and + could not be found. + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Given a provider specific path that contains glob characters, this method + will perform the globbing using the specified provider and return the + matching provider specific paths. + + + + The path containing the glob characters to resolve. The path must be in the + form providerId::providerPath. + + + + If true, a ItemNotFoundException will not be thrown for non-existing + paths. Instead an appropriate path will be returned as if it did exist. + + + + The provider identifier for the provider to use to do the globbing. + + + + The context under which the command is occurring. + + + + An instance of the provider that was used to perform the globbing. + + + + An array of provider specific paths that match the glob path. + + + + If , , or + is null. + + + + If references a provider that does not exist. + + + + If the references a provider that is not + a ContainerCmdletProvider. + + + + If the provider used to build the path threw an exception. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Gets a provider specific path when given an Msh path without resolving the + glob characters. + + + + An Msh path. + + + + A provider specifc path that the Msh path represents. + + + + If is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider specified by threw an + exception. + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Gets a provider specific path when given an Msh path without resolving the + glob characters. + + + + An Msh path. + + + + The information of the provider that was used to resolve the path. + + + + A provider specifc path that the Msh path represents. + + + + If is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider specified by threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Gets a provider specific path when given an Msh path without resolving the + glob characters. + + + + An Msh path. + + + + The context of the command. + + + + A provider specifc path that the Msh path represents. + + + + If is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider specified by threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Returns a provider specific path for given PowerShell path. + + + + Either a PowerShell path or a provider path in the form providerId::providerPath + + + + The command context under which this operation is occurring. + + + + This parameter is filled with the provider information for the given path. + + + + This parameter is filled with the PowerShell drive that represents the given path. If a + provider path is given drive will be null. + + + + The provider specific path generated from the given path. + + + + If or is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider specified by threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + + + Returns a provider specific path for given PowerShell path. + + Path to resolve + Cmdlet contet + When true bypass trust check + Provider + Drive + + + + + Determines if the specified path is a provider. This is done by looking for + two colons in a row. Anything before the colons is considered the provider ID, + and everything after is considered a namespace specific path. + + + + The path to check to see if it is a provider path. + + + + True if the path is a provider path, false otherwise. + + + + If is null. + + + + + + Determines if the specified path is a provider. This is done by looking for + two colons in a row. Anything before the colons is considered the provider ID, + and everything after is considered a namespace specific path. + + + + The path to check to see if it is a provider path. + + + + The name of the provider if the path is a provider qualified path. + + + + True if the path is a provider path, false otherwise. + + + + If is null. + + + + + + Determines if the given path is relative or absolute + + + + The path used in the determination + + + + true if the path is an absolute path, false otherwise. + + + + If is null. + + + + + + Determines if the given path is relative or absolute + + + + The path used in the determination + + + + If the path is absolute, this out parameter will be the + drive name of the drive that is referenced. + + + + true if the path is an absolute path, false otherwise. + + + + + + The instance of session state on which this globber acts. + + + + + Removs the back tick "`" from any of the glob characters in the path. + + + + The path to remove the glob escaping from. + + + + The path with the glob characters unescaped. + + + + If is null. + + + + + + Determines if the given drive name is a "special" name defined + by the shell. For instance, "default", "current", "global", and "scope[##]" are scopes + for variables and are considered shell virtual drives. + + + + The name of the drive to check to see if it is a shell virtual drive. + + + + This out parameter is filled with the scope that the drive name represents. + It will be null if the driveName does not represent a scope. + + + + true, if the drive name is a shell virtual drive like "Default" or "global", + false otherwise. + + + + If is null. + + + + The comparison is done using a case-insensitive comparison using the + Invariant culture. + + This is internal so that it is accessible to SessionState. + + + + If is null. + + + + + + Gets a provider specific path that represents the specified path and is relative + to the root of the PowerShell drive. + + + + Can be a relative or absolute path. + + + + The context which the core command is running. + + + + Escape the wildcards in the current location. Use when this path will be + passed through globbing. + + + + This out parameter returns the drive that was specified + by the . If is + an absolute path this value may be something other than + the current working drive. + + If the path refers to a non-existent drive, this parameter is set to null, and an exception is thrown. + + + + + The provider instance that was used. + + + + A provider specific relative path to the root of the drive. + + + + The path is parsed to determine if it is a relative path to the + current working drive or if it is an absolute path. If + it is a relative path the provider specific path is generated using the current + working directory, the drive root, and the path specified. + If the path is an absolute path the provider specific path is generated by stripping + of anything before the : and using that to find the appropriate + drive. The provider specific path is then generated the same as the + relative path using the specified drive instead of the + current working drive. + + This is internal so that it can be called from SessionState + + + + If is null. + + + + If the refers to a drive that could not be found. + + + + If the provider specified by threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + If the provider is not a NavigationCmdletProvider. + + + + If has been signaled for + StopProcessing. + + + + + + Builds a provider specific path from the current working + directory using the specified relative path + + + + The drive to generate the provider specific path from. + + + + The relative path to add to the absolute path in the drive. + + + + Escape the wildcards in the current location. Use when this path will be + passed through globbing. + + + + An instance of the provider to use if MakePath or GetParentPath + need to be called. + + + + The context which the core command is running. + + + + A string with the joined current working path and relative + path. + + + + If or is null. + + + + If the provider specified by threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + If the provider is not a NavigationCmdletProvider. + + + + If has been signaled for + StopProcessing. + + + + + + Uses the drive and a relative working path to construct + a string which has a fully qualified provider specific path + + + + The drive to use as the root of the path. + + + + The relative working directory to the specified drive. + + + + The context which the core command is running. + + + + A string which is contains the fully qualified path in provider + specific form. + + + + If or is null. + + + + If the provider throws an exception when its MakePath gets + called. + + + + + + Parses the provider-qualified path into the provider name and + the provider-internal path. + + + + The provider-qualified path to parse. + + + + The name of the provider specified by the path is returned through + this out parameter. + + + + The provider-internal path. + + + + If is null. + + + + If is not in the correct format. + + + + + + Given a provider specific path that contains glob characters, this method + will perform the globbing using the specified provider and return the + matching provider specific paths. + + + + The path containing the glob characters to resolve. + + + + If true, a ItemNotFoundException will not be thrown for non-existing + paths. Instead an appropriate path will be returned as if it did exist. + + + + The provider that will be used to glob the . + + + + The context under which the command is occurring. + + + + An array of provider specific paths that match the glob path and + filter (if supplied via the context). + + + + This method is internal because we don't want to expose the + provider instances outside the engine. + + + + If , , or + is null. + + + + If the provider used to build the path threw an exception. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If has been signaled for + StopProcessing. + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Determines if the specified path contains any globing characters. These + characters are defined as '?' and '*'. + + + + The path to search for globing characters. + + + + True if the path contains any of the globing characters, false otherwise. + + + + If is null. + + + + + + Determines if the path and context are such that we need to run through + the globbing algorithm. + + + + The path to check for glob characters. + + + + The context to check for filter, include, or exclude expressions. + + + + True if globbing should be performed (the path has glob characters, or the context + has either a an include, or an exclude expression). False otherwise. + + + + + + Generates an array of provider specific paths from the single provider specific + path using globing rules. + + + + A path that may or may not contain globing characters. + + + + If true, a ItemNotFoundException will not be thrown for non-existing + paths. Instead an appropriate path will be returned as if it did exist. + + + + The drive that the path is relative to. + + + + The provider that implements the namespace for the path that we are globing over. + + + + The context the provider uses when performing the operation. + + + + An array of path strings that match the globing rules applied to the path parameter. + + + + First the path is checked to see if it contains any globing characters ('?' or '*'). + If it doesn't then the path is returned as the only element in the array. + If it does, GetParentPath and GetLeafPathName is called on the path and each element + is stored until the path doesn't contain any globing characters. At that point + GetChildNames() is called on the provider with the last parent path that doesn't + contain a globing character. All the results are then matched against leaf element + of that parent path (which did contain a glob character). We then walk out of the + recursion and apply the same procedure to each leaf element that contained globing + characters. + + The procedure above allows us to match globing strings in multiple sub-containers + in the namespace without having to have knowledge of the namespace paths, or + their syntax. + + Example: + dir c:\foo\*\bar\*a??.cs + + Calling this method for the path above would return all files that end in 'a' and + any other two characters followed by ".cs" in all the subdirectories of + foo that have a bar subdirectory. + + + + + If , , or + is null. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider associated with the threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + If does not contain glob characters and + could not be found. + + + + If has been signaled for + StopProcessing. + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Gets either a drive-qualified or provider-qualified path based on the drive + information. + + + + The path to create a qualified path from. + + + + The drive used to qualify the path. + + + + Either a drive-qualified or provider-qualified Msh path. + + + + The drive's Hidden property is used to determine if the path returned + should be provider (hidden=true) or drive (hidden=false) qualified. + + + + If or is null. + + + + + + Removes the provider or drive qualifier from a Msh path. + + + + The path to remove the qualifier from. + + + + The drive information used to determine if a provider qualifier + or drive qualifier should be removed from the path. + + + + The path with the Msh qualifier removed. + + + + + + Given an Msh relative or absolute path, returns a drive-qualified absolute path. + No globbing or relative path character expansion is done. + + + + The path to get the drive qualified path from. + + + + The drive the path should be qualified with. + + + + A drive-qualified absolute Msh path. + + + + If or is null. + + + + + + Removes the drive qualifier from a drive qualified MSH path + + + + The path to remove the drive qualifier from. + + + + The path without the drive qualifier. + + + + + + Given an Msh path, returns a provider-qualified path. + No globbing or relative path character expansion is done. + + + + The path to get the drive qualified path from. + + + + The provider the path should be qualified with. + + + + A drive-qualified absolute Msh path. + + + + If or is null. + + + + + + Removes the provider qualifier from a provider-qualified MSH path + + + + The path to remove the provider qualifier from. + + + + The path without the provider qualifier. + + + + + + Generates a collection of containers and/or leaves that are children of the containers + in the currentDirs parameter and match the glob expression in the + parameter. + + + + A collection of paths that should be searched for leaves that match the + expression. + + + + The drive the Msh path is relative to. + + + + A single element of a path that may or may not contain a glob expression. This parameter + is used to search the containers in for children that + match the glob expression. + + + + True if the is the last element to glob over. If false, we + need to get all container names from the provider even if they don't match the filter. + + + + The provider associated with the paths that are being passed in the + and parameters. + The provider must derive from ContainerCmdletProvider or NavigationCmdletProvider + in order to get globbing. + + + + The context the provider uses when performing the operation. + + + + A collection of fully qualified namespace paths whose leaf element matches the + expression. + + + + If or + is null. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider associated with the threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + If has been signaled for + StopProcessing. + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Generates an array of provider specific paths from the single provider specific + path using globing rules. + + + + A path that may or may not contain globing characters. + + + + If true, a ItemNotFoundException will not be thrown for non-existing + paths. Instead an appropriate path will be returned as if it did exist. + + + + The provider that implements the namespace for the path that we are globing over. + + + + The context the provider uses when performing the operation. + + + + An array of path strings that match the globing rules applied to the path parameter. + + + + First the path is checked to see if it contains any globing characters ('?' or '*'). + If it doesn't then the path is returned as the only element in the array. + If it does, GetParentPath and GetLeafPathName is called on the path and each element + is stored until the path doesn't contain any globing characters. At that point + GetChildPathNames() is called on the provider with the last parent path that doesn't + contain a globing character. All the results are then matched against leaf element + of that parent path (which did contain a glob character). We then walk out of the + recursion and apply the same procedure to each leaf element that contained globing + characters. + + The procedure above allows us to match globing strings in multiple sub-containers + in the namespace without having to have knowledge of the namespace paths, or + their syntax. + + Example: + dir c:\foo\*\bar\*a??.cs + + Calling this method for the path above would return all files that end in 'a' and + any other two characters followed by ".cs" in all the subdirectories of + foo that have a bar subdirectory. + + + + + If or is null. + + + + + If the provider used to build the path threw an exception. + + + + If the starts with "~" and the home location is not set for + the provider. + or if the provider is implemented in such a way as to cause the globber to go + into an infinite loop. + + + + If has been signaled for + StopProcessing. + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Generates a collection of containers and/or leaves that are children of the containers + in the currentDirs parameter and match the glob expression in the + parameter. + + + + A collection of paths that should be searched for leaves that match the + expression. + + + + A single element of a path that may or may not contain a glob expression. This parameter + is used to search the containers in for children that + match the glob expression. + + + + True if the is the last element to glob over. If false, we + need to get all container names from the provider even if they don't match the filter. + + + + The provider associated with the paths that are being passed in the + and parameters. + The provider must derive from ContainerCmdletProvider or NavigationCmdletProvider + in order to get globbing. + + + + The context the provider uses when performing the operation. + + + + A collection of fully qualified namespace paths whose leaf element matches the + expression. + + + + If or + is null. + + + + If the provider used to build the path threw an exception. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If has been signaled for + StopProcessing. + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Gets the child names in the specified path by using the provider + + + + The path of the directory to get the child names from. If this is an Msh Path, + dirIsProviderPath must be false, If this is a provider-internal path, + dirIsProviderPath must be true. + + + + The element that we are ultimately looking for. Used to set filters on the context + if desired. + + + + Determines if the GetChildNames call should get all containers even if they don't + match the filter. + + + + The context to be used for the command. The context is copied to a new context, the + results are accumulated and then returned. + + + + Specifies whether the dir parameter is a provider-internal path (true) or Msh Path (false). + + + + The drive to use to qualify the Msh path if dirIsProviderPath is false. + + + + The provider to use to get the child names. + + + + Returns the modified dir path. If dirIsProviderPath is true, this is the unescaped dir path. + If dirIsProviderPath is false, this is the unescaped resolved provider path. + + + + A collection of PSObjects whose BaseObject is a string that contains the name of the child. + + + + If or is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider associated with the threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + If has been signaled for + StopProcessing. + + + + Any exception can be thrown by the provider that is called to build + the provider path. + + + + + + Determines if the specified PSObject contains a string that matches the specified + wildcard patterns. + + + + The PSObject that contains the child names. + + + + The glob matcher. + + + + The include matcher wildcard patterns. + + + + The exclude matcher wildcard patterns. + + + + The name of the child which was extracted from the childObject and used for the matches. + + + + True if the string in the childObject matches the stringMatcher and includeMatcher wildcard patterns, + and does not match the exclude wildcard patterns. False otherwise. + + + + + + Converts a back tick '`' escape into back slash escape for + all occurrences in the string. + + + + A string that may or may not have back ticks as escape characters. + + + + A string that has the back ticks replaced with back slashes except + in the case where there are two back ticks in a row. In that case a single + back tick is returned. + + + + The following rules apply to the conversion: + 1. All \ characters are expanded to be \\ + 2. Any ` not followed by a ` is converted to a \ + 3. Any ` that is followed by a ` collapses the two into a single ` + 4. Any other character is immediately appended to the result. + + + + + If is null. + + + + + + Determines if the path is relative to a provider home based on + the ~ character. + + + + The path to determine if it is a home path. + + + + True if the path contains a ~ at the beginning of the path or immediately + following a provider designator ("provider::") + + + + Is is null. + + + + + + Determines if the specified path looks like a remote path. (starts with + // or \\. + + + + The path to check to determine if it is a remote path. + + + + True if the path starts with // or \\, or false otherwise. + + + + If is null. + + + + + + Generates the path for the home location for a provider when given a + path starting with ~ or "provider:~" followed by a relative path. + + + + The path to generate into a home path. + + + + The path representing the path to the home location for a provider. This + may be either a fully qualified provider path or a PowerShell path. + + + + If is null. + + + + If is a provider-qualified path + and the specified provider does not exist. + + + + If the provider throws an exception when its MakePath gets + called. + + + + If the provider does not support multiple items. + + + + If the home location for the provider is not set and + starts with a "~". + + + + + + An object that represents a path. + + + + + Gets the drive that contains the path. + + + + + Gets the provider that contains the path. + + + + + This is the internal mechanism to get the hidden drive. + + + + The drive associated with this PathInfo. + + + + + + Gets the provider internal path for the PSPath that this PathInfo represents. + + + + The provider encountered an error when resolving the path. + + + + The path was a home relative path but the home path was not + set for the provider. + + + + + Gets the MSH path that this object represents. + + + + + Gets a string representing the MSH path. + + + + A string representing the MSH path. + + + + + The constructor of the PathInfo object. + + + + The drive that contains the path + + + + The provider that contains the path. + + + + The path this object represents. + + + + The session state associated with the drive, provider, and path information. + + + + If , , + , or is null. + + + + + + An object that represents a stack of paths. + + + + + Constructor for the PathInfoStack class. + + + + The name of the stack. + + + + A stack object containing PathInfo objects + + + + If is null. + + + + If is null or empty. + + + + + + Gets the name of the stack + + + + + Define the various unicode special characters that + the parser has to deal with. + + + + + Canonicalize the quote charater - map all of the aliases for " or ' + into their ascii equivalent. + + The character to map + The mapped character. + + + + FlowControlException, base class for flow control exceptions. + + + + + LoopFlowException, base class for loop control exceptions. + + + + + Label, indicates nested loop level affected by exception. + No label means most nested loop is affected. + + + + + Flow control BreakException. + + + + + Flow control ContinueException + + + + + Implements the exit keyword. + + + + + Argument + + + + + Used by InternalHost.ExitNestedPrompt() to pop out of an interpreter level... + + + + + Used by the debugger to terminate the execution of the current command. + + + + + Used by Select-Object cmdlet to stop all the upstream cmdlets, but continue + executing downstream cmdlets. The semantics of stopping is intended to mimic + a user pressing Ctrl-C [but which only affects upstream cmdlets]. + + + + + A enum corresponding to the options on the -split operator. + + + + + Use simple string comparison when evaluting the delimiter. + Cannot be used with RegexMatch. + + + + + Use regular expression matching to evaluate the delimiter. + This is the default behavior. Cannot be used with SimpleMatch. + + + + + CultureInvariant: Ignores cultural differences in language when evaluting the delimiter. + Valid only with RegexMatch. + + + + + Ignores unescaped whitespace and comments marked with #. + Valid only with RegexMatch. + + + + + Regex multiline mode, which recognizes the start and end of lines, + as well as the start and end of strings. + Valid only with RegexMatch. + Singleline is the default. + + + + + Regex Singleline mode, which recognizes only the start and end of strings. + Valid only with RegexMatch. + Singleline is the default. + + + + + Forces case-insensitive matching, even if -cSplit is specified. + + + + + Ignores non-named match groups, so that only explicit capture groups + are returned in the result list. + + + + + A static class holding various operations specific to the msh interpreter such as + various math operations, ToString() and a routine to extract the base object from an + PSObject in a canonical fashion. + + + + + Construct the various caching structures used by the runtime routines... + + + + + Convert an object into an int, avoiding boxing small integers... + + The int to convert + The reference equivalent + + + + A helper routine that turns the argument object into an + integer. It handles PSObject and conversions. + + + The position to use for error reporting. + + The result could not be represented as an integer + + + + This is a helper function for converting an object to a particular type. + + It will throw exception with information about token representing the object. + + + + + private method used to call the op_* operations for the math operators + + left operand + right operand + name of the operation method to perform + The position to use for error reporting. + the string to use in error messages representing the op + The result of the operation + An error occurred performing the operation, see inner exception + + + + Implementation of the PowerShell unary -join operator... + + The execution context to use + The position to use for error reporting. + left operand + The result of the operator + + + + Implementation of the PowerShell binary -join operator + + The execution context to use + The position to use for error reporting. + left operand + right operand + The result of the operator + + + + The implementation of the PowerShell -replace operator.... + + The execution context in which to evaluate the expression + The position to use for error reporting. + The object on which to replace the values + The replacement description. + True for -ireplace/-replace, false for -creplace + The result of the operator + + + + Implementation of the PowerShell type operators... + + The execution context to use + The position to use for error reporting. + left operand + right operand + The result of the operator + + + + Implementation of the PowerShell type operators... + + The execution context to use + The position to use for error reporting. + left operand + right operand + The result of the operator + + + + Implementation of the PowerShell -like operator + + The execution context to use + The position to use for error reporting. + left operand + right operand + the operator + The result of the operator + + + + Implementation of the PowerShell -match operator + + The execution context to use + The position to use for error reporting. + left operand + right operand + ignore case? + true for -notmatch, false for -match + The result of the operator + + + + Implementation of the PowerShell -contains/-notcontains operators (and case sensitive variants) + + The execution context to use + The position to use for error reporting. + left operand + right operand + ignore case? + true for -contains, false for -notcontains + The result of the operator + + + + Cache regular expressions... + + The string to find the pattern for + The options used to create the regex... + A case-insensitive Regex... + + + + A routine used to advance an enumerator and catch errors that might occur + performing the operation + + The execution context used to see if the pipeline is stopping + The position to use for error reporting. + THe enumerator to advance. + An error occurred moving to the next element in the enumeration + True if the move succeeded + + + + Wrapper caller for enumerator.MoveNext - handles and republishes errors... + + The position to use for error reporting. + The enumerator to read from + + + + + Retrieves the obj's type full name + + the object we want to retrieve the type's full name from + The obj's type full name + + + + Launch a method on an object. This will handle .NET native methods, COM + methods and ScriptBlock notes. Native methods currently take precidence over notes... + + The position to use for error reporting. + The object to call the method on. It shouldn't be an msh object + The name of the method to call + Invocation constraints + The arguments to pass to the method. + Set to true if you want to call a static method. + If not automation null, then this must be a settable propery + Wraps the exception returned from the method call + The maximum scope depth would be exceeded + Internal exception from a flow control statement + + + + + This is a simple enumerator class that just enumerates of a range of numbers. It's used in enumerating + elements when the range operator .. is used. + + + + + Create a new instance of an interpreter exception + + The target object for this exception. + Type of exception to build + The position to use for error reporting. + + ResourceID to look up template message, and also ErrorID + + + Resource string that holds the error message + + Insertion parameters to message + A new instance of the specified exception type + + + + Create a new instance of an interpreter exception + + The object associated with the problem + Type of exception to build + The position to use for error reporting. + + ResourceID to look up template message, and also ErrorID + + + Resource string which holds the error message + + inner exception + Insertion parameters to message + New instance of an interpreter exception + + + + Create a new instance of an interpreter exception + + Type of exception to build + The position to use for error reporting. + Message + ErrorID + inner exception + New instance of ParseException + + + + An object representing a pre-compiled block of powershell script. + + + + This class track a block of script in a compiled form. It is also + used for direct invocation of the script block. + + 1. Overview + + Script block comes in two forms, + + a. Full form (cmdlet form) + + This comes in following format + + { + begin + { + statementlist; + } + process + { + statementlist; + } + end + { + statementlist; + } + } + + This form is used for running the script in a pipeline like + a cmdlet. + + b. Simple form + + This comes in following format + + { + statementlist; + } + + 2. Script block execution + + For the full form (or cmdlet form) of script block, the script + block itself is part of a pipeline. Its execution is handled through + ScriptCommandProcessor, which involves execution of begin/process/end + blocks like a cmdlet. If a scriptblock in simple form is used in + a pipeline, its execution is done through ScriptCommandProcessor + also, with some of begin/process/end blocks default to be empty. + + A script block in simple form can be directly invoked (outside + of a pipeline context). For example, + + {"text"}.Invoke() + + A scriptblock can be directly invoked internally or externally through + runspace API. + + This class will handle the logic for direct invocation of script blocks. + + + + + + Create a script block object based on a script string to be parsed immediately. + + Engine context for this script block + The string to compile. + + + + Create a script block based on a script to be parsed when execution + context is provided. + + The string to compile. + + + + Returns a new scriptblock bound to a module. Any local variables in the + callers context will be copied into the module. + + + + + + Returns PowerShell object representing the pipeline contained in this ScriptBlock + + + Some ScriptBlocks are too complicated to be converted into a PowerShell object. + For those ScriptBlocks a is thrown. + + ScriptBlock cannot be converted into a PowerShell object if + - It contains more than one statement + - It references variables undeclared in param(...) block + - It uses redirection to a file + - It uses dot sourcing + - Command names can't be resolved (i.e. if an element of a pipeline is another scriptblock) + + Declaration of variables in a param(...) block is enforced, + because undeclared variables are assumed to be variables from a remoting server. + Since we need to fully evaluate parameters of commands of a PowerShell object's + we reject all variables references that refer to a variable from a remoting server. + + + arguments for the ScriptBlock (providing values for variables used within the ScriptBlock); + can be null + + + PowerShell object representing the pipeline contained in this ScriptBlock + + + Thrown when this ScriptBlock cannot be expressed as a PowerShell object. + For example thrown when there is more than one statement, if there + are undeclared variables, if redirection to a file is used. + + + Thrown when evaluation of command arguments results in an exception. + Might depend on the value of $errorActionPreference variable. + For example trying to translate the following ScriptBlock will result in this exception: + $errorActionPreference = "stop"; $sb = { get-foo $( throw ) }; $sb.GetPowerShell() + + + Thrown when there is no ExecutionContext associated with this ScriptBlock object. + + + + + Returns PowerShell object representing the pipeline contained in this ScriptBlock, + similar to the GetPowerShell() method. If the 'isTrustedInput' flag parameter is set + to True, then the GetPowerShell() implementation supports extended conversion operations + (such as replacing variable values with their current values) that might otherwise + be unsafe if applied to untrusted input. + + + Specifies whether the scriptblock being converted comes from a trusted source. + The default is False. + + + arguments for the ScriptBlock (providing values for variables used within the ScriptBlock); + can be null + + + + + Returns PowerShell object representing the pipeline contained in this ScriptBlock, using variables + supplied in the dictionary. + + + variables to be supplied as context to the ScriptBlock (providing values for variables explicitly + requested by the 'using:' prefix. + + + arguments for the ScriptBlock (providing values for variables used within the ScriptBlock); + can be null + + + PowerShell object representing the pipeline contained in this ScriptBlock + + + Thrown when this ScriptBlock cannot be expressed as a PowerShell object. + For example thrown when there is more than one statement, if there + are undeclared variables, if redirection to a file is used. + + + Thrown when evaluation of command arguments results in an exception. + Might depend on the value of $errorActionPreference variable. + For example trying to translate the following ScriptBlock will result in this exception: + $errorActionPreference = "stop"; $sb = { get-foo $( throw ) }; $sb.GetPowerShell() + + + Thrown when there is no ExecutionContext associated with this ScriptBlock object and no + variables are supplied. + + + + + Returns PowerShell object representing the pipeline contained in this ScriptBlock, using variables + supplied in the dictionary. + + + variables to be supplied as context to the ScriptBlock (providing values for variables explicitly + requested by the 'using:' prefix. + + + key-value pairs from the variables that actually get used by the 'using:' prefix variables + + + arguments for the ScriptBlock (providing values for variables used within the ScriptBlock); + can be null + + + PowerShell object representing the pipeline contained in this ScriptBlock + + + Thrown when this ScriptBlock cannot be expressed as a PowerShell object. + For example thrown when there is more than one statement, if there + are undeclared variables, if redirection to a file is used. + + + Thrown when evaluation of command arguments results in an exception. + Might depend on the value of $errorActionPreference variable. + For example trying to translate the following ScriptBlock will result in this exception: + $errorActionPreference = "stop"; $sb = { get-foo $( throw ) }; $sb.GetPowerShell() + + + Thrown when there is no ExecutionContext associated with this ScriptBlock object and no + variables are supplied. + + + + + Returns PowerShell object representing the pipeline contained in this ScriptBlock, using variables + supplied in the dictionary. + + + variables to be supplied as context to the ScriptBlock (providing values for variables explicitly + requested by the 'using:' prefix. + + + key-value pairs from the variables that actually get used by the 'using:' prefix variables + + + arguments for the ScriptBlock (providing values for variables used within the ScriptBlock); + can be null + + + Specifies whether the scriptblock being converted comes from a trusted source. + The default is False. + + + PowerShell object representing the pipeline contained in this ScriptBlock + + + Thrown when this ScriptBlock cannot be expressed as a PowerShell object. + For example thrown when there is more than one statement, if there + are undeclared variables, if redirection to a file is used. + + + Thrown when evaluation of command arguments results in an exception. + Might depend on the value of $errorActionPreference variable. + For example trying to translate the following ScriptBlock will result in this exception: + $errorActionPreference = "stop"; $sb = { get-foo $( throw ) }; $sb.GetPowerShell() + + + Thrown when there is no ExecutionContext associated with this ScriptBlock object and no + variables are supplied. + + + + + Get a steppable pipeline object. + + A steppable pipeline object + + + + Get a steppable pipeline object. + + A steppable pipeline object + + + + Get a steppable pipeline object. + + A steppable pipeline object + + + + Execute this node with the specified arguments. The arguments show + up in the script as $args with $_ being the first argument. + + + The arguments to this script. + The object(s) generated during the execution of + the script block returned as a collection of PSObjects + Thrown if the maximum scope depth has been exceeded + Thrown if a script runtime exceptionexception occurred + An internal (non-public) exception from a flow control statement + + + + A method that allows a scriptblock to be invoked with additional context in the form of a + set of local functions and variables to be defined in the scriptblock's scope. The list of + variables may include the special variables $input, $_ and $this. + + This overload of the function takes a hashtable and converts it to the + required dictionary which makes the API easier to use from within a PowerShell script. + + A dictionary of functions to define + A list of variables to define + The arguments to the actual scriptblock + + + + + A method that allows a scriptblock to be invoked with additional context in the form of a + set of local functions and variables to be defined in the scriptblock's scope. The list of + variables may include the special variables $input, $_ and $this. + + A dictionary of functions to define + A list of variables to define + The arguments to the actual scriptblock + + + + + Execute this node with the specified arguments. The arguments show + up in the script as $args. This overload return the raw (unwrapped) result + so it can be more efficient. + + The arguments to pass to this scriptblock. + The object(s) generated during the execution of the + script block. They may or may not be wrapped in PSObject. It's up to the caller to check. + Thrown if the maximum scope depth has been exceeded + Thrown if a script runtime exceptionexception occurred + An internal (non-public) exception from a flow control statement + + + + Return all attributes on a script block. + + + + + The script file that defined this script block... + + + + + Get/set whether this scriptblock is a filter. + + + + + Get/set whether this scriptblock is a Configuration. + + + + + Get the PSModuleInfo object for the module that defined this + scriptblock. + + + + + Return the PSToken object for this function definition... + + + + + This is a helper function to process script invocation result. + + + This does normal array reduction in the case of a one-element array. + + + + + The internal session state object associated with this scriptblock... + + + + + The session state instance that should be used when evaluating + this scriptblock. + + + + + Get the delegate method as a call back. + + + + + Returns the current execution context from TLS, or raises an exception if it is null. + + An attempt was made to use the scriptblock outside the engine + + + + Execute this node with the specified arguments. The arguments show + up in the script as $args with $_ being the first argument. + + + + The value of the $_ variable for the script block. If AutomationNull.Value, + the $_ variable is not created. + + + + The value of the $input variable for the script block. If AutomationNull.Value, + the $input variable is not created. + + + The arguments to this script. + The object(s) generated during the execution of + the script block returned as a collection of PSObjects + The maximum scope depth would be exceeded + A script exception occurred + Internal exception from a flow control statement + + + + This is a helper function to wrap script execution results + in PSObjects. + + + + + + + Execute this node with the specified arguments. The arguments show + up in the script as $args with $_ being the first argument. + + + + + + The value of the $_ variable for the script block. If AutomationNull.Value, + the $_ variable is not created. + + + The value of the $input variable for the script block. If AutomationNull.Value, + the $input variable is not created. + + + The arguments to this script. + + The object(s) generated during the execution of + the script block returned as a collection of PSObjects + The maximum scope depth would be exceeded + A script exception occurred + Internal exception from a flow control statement + + + + Handles OnScriptBlockInvoke event, this is called by the event manager + + + + + Protected constructor to support ISerializable. + + + + + Clears the cached scriptblocks + + + + + Returns the text of the script block. The return value might not match the original text exactly. + + + + + Returns the text of the script block with the handling of $using expressions. + + + + + Support for . + + + + + DebuggerHidden + + + + + The unique ID of this script block. + + + + + Check the script block to see if it uses any language constructs not allowed in restricted language mode. + + The commands that are allowed. + + The variables allowed in this scriptblock. If this is null, then the default variable set + will be allowed. If it is an empty list, no variables will be allowed. If it is "*" then + any variable will be allowed. + + The environment variables that are allowed. + + + + Returns the AST corresponding to the script block. + + + + + A steppable pipeline wrapper object... + + + + + Begin execution of a steppable pipeline. This overload doesn't reroute output and error pipes. + + true if you plan to write input into this pipe; false otherwise + + + + Begin execution of a steppable pipeline, using the command running currently in the specified context to figure + out how to route the output and errors. + + true if you plan to write input into this pipe; false otherwise + context used to figure out how to route the output and errors. + + + + Begin execution of a steppable pipeline, using the calling command to figure + out how to route the output and errors. This is the most effective + way to start stepping. + + The command you're calling this from (i.e. instance of PSCmdlet or value of $PSCmdlet variable) + + + + Process a single input object. + + The object to process + a collection of 0 or more result objects + + + + Process a single PSObject. This overload exists to deal with the fact + that the PowerShell runtime will PSBase an object before passing it to + a .NET API call with argument type object. + + The input object to process + + + + + Process with no input. This is used in the case where + Begin() was called with $false so we won't send any + input to be processed. + + The result of the execution + + + + End the execution of this steppable pipeline. This will + complete the execution and dispose the results. + + + + + IDisposable implementation + When this object is disposed, the contained pipeline should also be disposed. + + + + + Finalizer for class SteppablePipeline + + + + + Defines the exception thrown when conversion from ScriptBlock to PowerShell is forbidden + (i.e. when the script block has undeclared variables or more than one statement) + + + + + Initializes a new instance of ScriptBlockToPowerShellNotSupportedException + with the message set to typeof(ScriptBlockToPowerShellNotSupportedException).FullName + + + + + Initializes a new instance of ScriptBlockToPowerShellNotSupportedException setting the message + + the exception's message + + + + Initializes a new instance of ScriptBlockToPowerShellNotSupportedException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Recommended constructor for the class + + String that uniquelly identifies each thrown Exception + The inner exception + The error message + Arguments to the resource string + + + + Initializes a new instance of ScriptBlockToPowerShellNotSupportedException with serialization parameters + + serialization information + streaming context + + + + Defines Event arguments passed to OnScriptBlockInvocationEventHandler + + + + + Constructs ScriptBlockInvocationEventArgs + + The scriptblock to invoke + + /// + + + The value of the $_ variable for the script block. If AutomationNull.Value, + the $_ variable is not created. + + + The value of the $input variable for the script block. If AutomationNull.Value, + the $input variable is not created. + + + The output pipe which has the results of the invocation + + The information about current state of the runspace. + The arguments to this script. + scriptBlock is null + + + + + Holds the exception thrown during scriptblock invocation. + + + + + PSParser class + + + This is a class providing the interface for parsing a script into a collection of + tokens, which primarily can be used for syntax colorization. + + Classes provided for syntax colorization includes, + + 1. PSParser: this class provides the main interface to be used. + 2. PSToken: this class provides a public representation of powershell tokens. + 3. PSParseError: this class provides a public representation of syntax errors. + + These three classes are provided for exposing interfaces only. They + should not be used in PowerShell engine code. + + + + + + Constructor + + + This constructor is made private intentionally. The only way to create an instance + of PSParser object is from PSParser pool maintained in this class. + + + + + Return collection of tokens generated for recent parsing task. + + + + + Return collection of errors happened for recent parsing task. + + + + + Parse a script into a collection of tokens. + + script to parse + errors happened during parsing + collection of tokens generated during parsing + + Although this API returns most parse-time exceptions in the errors + collection, there are some scenarios where resource limits will result + in an exception being thrown by this API. This allows the caller to + distinguish between a successful parse with errors and a failed parse. + All exceptions thrown will be derived from System.Mnagement.Automation.RuntimeException + but may contain an inner exception that describes the real issue. + + + + + Parse a script into a collection of tokens. + + script to parse, as an array of lines + errors happened during parsing + collection of tokens generated during parsing + + Although this API returns most parse-time exceptions in the errors + collection, there are some scenarios where resource limits will result + in an exception being thrown by this API. This allows the caller to + distinguish between a successful parse with errors and a failed parse. + All exceptions thrown will be derived from System.Mnagement.Automation.RuntimeException + but may contain an inner exception that describes the real issue. + + + + + This is public class for representing a powershell token. + + + There is already an internal class Token for representing the token. + + This class wraps the internal Token class for providing limited information + to syntax editor. + + + + + Resulting text for the token. + + + The text here represents the content of token. It can be the same as + the text chunk within script resulting into this token, but usually is not + the case. + + For example, -name in following command result into a parameter token. + + get-process -name foo + + Text property in this case is 'name' instead of '-name'. + + + + + Map a V3 token to a V2 PSTokenType + + The V3 token + The V2 PSTokenType + + + + Token type. + + + + + Offset of token start in script buffer. + + + + + Offset of token end in script buffer. + + + + + Line number of token start. + + + StartLine, StartColumn, EndLine, and EndColumn are 1-based, + i.e., first line has a line number 1 and first character in + a line has column number 1. + + + + + Position of token start in start line. + + + + + Line number of token end. + + + + + Position of token end in end line. + + + + + PowerShell token types. + + + + + Unknown token + + + + + + + Command + + + For example, 'get-process' in + + get-process -name foo + + + + + + Command Parameter + + + For example, '-name' in + + get-process -name foo + + + + + + Command Argument + + + For example, 'foo' in + + get-process -name foo + + + + + + Number + + + For example, 12 in + + $a=12 + + + + + + String + + + For example, "12" in + + $a="12" + + + + + + Variable + + + For example, $a in + + $a="12" + + + + + + Property name or method name + + + For example, Name in + + $a.Name + + + + + + Loop label + + + For example, :loop in + + :loop + foreach($a in $b) + { + $a + } + + + + + + Attributes + + + For example, Mandatory in + + param([Mandatory] $a) + + + + + + Types + + + For example, [string] in + + $a = [string] 12 + + + + + + Operators + + + For example, + in + + $a = 1 + 2 + + + + + + Group Starter + + + For example, { in + + if ($a -gt 4) + { + $a++; + } + + + + + + Group Ender + + + For example, } in + + if ($a -gt 4) + { + $a++; + } + + + + + + Keyword + + + For example, if in + + if ($a -gt 4) + { + $a++; + } + + + + + + Comment + + + For example, #here in + + #here + if ($a -gt 4) + { + $a++; + } + + + + + + Statement separator. This is ';' + + + For example, ; in + + #here + if ($a -gt 4) + { + $a++; + } + + + + + + New line. This is '\n' + + + For example, \n in + + #here + if ($a -gt 4) + { + $a++; + } + + + + + + Line continuation + + + For example, ` in + + get-command -name ` + foo + + + + + + Position token + + + Position token are bogus tokens generated for identifying a location + in the script. + + + + + This is a class that represents a syntax error from parsing. + + + + + The token that indicates the error location. + + + This can either be the real token at which place the error happens or a position + token indicating the location where error happens. + + + + + Error message. + + + + + A class to the core types in PowerShell. + + + + + A class to view and modify the type accelerators used by the PowerShell engine. Builtin + type accelerators are read only, but user defined type accerators may be added. + + + + + Add a type accelerator. + + The type accelerator name. + The type of the type accelerator. + + + + Remove a type accelerator. + + True if the accelerator was removed, false otherwise. + The accelerator to remove. + + + + This property is useful to tools that need to know what + type accelerators are available (e.g. to allow for autocompletion.) + + + The returned dictionary should be treated as read only. Changes made + to the dictionary will not affect PowerShell scripts in any way. Use + and + to + affect the type resolutin in PowerShell scripts. + + + + + Returns a script block that corresponds to the version deserialized + + The streaming context for this instance + A script block that corresponds to the version deserialized + + + + Implements the ISerializable contract for serializing a scriptblock + + Serialization information for this instance + The streaming context for this instance + + + + IDisposable implementation + When the command is complete, release the associated scope + and other members + + + + + Converts a ScriptBlock to a PowerShell object by traversing the + given Ast. + + + + + Get using values in the dictionary form. + + + + + Get using values in the array form. + + + + + Collect values for UsingExpressions, in the form of a dictionary and an array. + - The dictionary form is used when the remote server is PSv5 and later version for handling UsingExpression in Invoke-Command/Start-Job + - The array form is used when the remote server is PSv3 and PSv4 for handling UsingExpression in Invoke-Command + + + We still keep the array-form using values because we want to avoid any breaking changes when running Invoke-Command + targeting PSv3 or PSv4 remote end -- if UsingExpressions are all in the same scope, then we still pass an array of using + values to the remote end; otherwise, we will handle UsingExpression as if the remote end is PSv2. + + + A tuple of the dictionary-form and the array-form using values. + If the array-form using value is null, then there are UsingExpressions used in different scopes. + + + + + Check if the given UsingExpression is in a different scope from the previous UsingExpression that we analyzed. + + + Note that the value of is retrieved by calling 'UsingExpressionAstSearcher.FindAllUsingExpressionExceptForWorkflow'. + So is guaranteed not inside a workflow. + + The UsingExpression to analyze + The top level Ast, should be either ScriptBlockAst or FunctionDefinitionAst + The ScriptBlockAst that represents the scope of the previously analyzed UsingExpressions + + + + Sets the value at the given index for a tuple of the given size. This set supports + walking through nested tuples to get the correct final index. + + + + + Gets the value at the given index for a tuple of the given size. This get + supports walking through nested tuples to get the correct final index. + + + + + Gets the unbound generic Tuple type which has at lease size slots or null if a large enough tuple is not available. + + + + + Creates a generic tuple with the specified types. + + If the number of slots fits within the maximum tuple size then we simply + create a single tuple. If it's greater then we create nested tuples + (e.g. a Tuple`2 which contains a Tuple`128 and a Tuple`8 if we had a size of 136). + + + + + Gets the number of usable slots in the provided Tuple type including slots available in nested tuples. + + + + + Creates a new instance of tupleType with the specified args. If the tuple is a nested + tuple the values are added in their nested forms. + + + + + Gets the values from a tuple including unpacking nested values. + + + + + Gets the series of properties that needs to be accessed to access a logical item in a potentially nested tuple. + + + + + Gets the series of properties that needs to be accessed to access a logical item in a potentially nested tuple. + + + + + Provides an expression for creating a tuple with the specified values. + + + + + Efficiently multiplies collection by integer + + collection to multiply + number of times the collection is to be multiplied/copied + collection multiplied by integer + + + + Determine if we should continue or not after and error or exception.... + + The RuntimeException which was reported + The message to display + The execution context + The preference the user selected + + Error action is decided by error action preference. If preferenc is inquire, we will + prompt user for their preference. + + + + + This is a helper function for prompting for user preference. + + + The execution context + + + This method will allow user to enter suspend mode. + + + + + Set error variables like $error and $stacktrace + + + + The execution context + the output pipe of the statement + + + + Report error into error pipe. + + + The runtime error to report + The execution context + True if it was able to report the error + + + + Add types to the current scope. + This method called at runtime after types are created at compile time. + This method should be called for every ScriptBlockAst that defines types. + + I.e. + + class C1 {} + function foo { class C2 {} } + 1..10 | % { foo } + + DefinePowerShellTypes() would be called for two TypeDefinitionAsts at the same time and Types for C1 and C2 would be created at the same assembly. + AddPowerShellTypesToTheScope() would be called for root script first and then for foo\C2, once we call function foo. + Note that AddPowerShellTypesToTheScope() would be call on every foo call, 10 times. + + This method also should be called for 'using module' statements. Then added types would have a different name. + + + + + + + + Capture session state for methods defined in PowerShell types, so they know what context to use. + + + + + + Controls the matching behaviour of the Where() operator. + + + + + Return all matches + + + + + Stop processing after the first match. + + + + + Return the last matching element + + + + + Skip until the condition is true, then return the rest + + + + + Return elements until the condition is true then skip the rest + + + + + Return an array of two elements, first index is matched elements, second index is the remaining elements. + + + + + Implements the Where(expression) operation on collections + + The enumerator over the collection to search + + A ScriptBlock where its result is treated as a boolean, or null to + return all collection objects with WhereOperatorSelectionMode. + + + Sets the WhereOperatorSelectionMode for operator, defaults to All. + This is of type object to allow either enum values or strings to be passed. + + The number of elements to return + + + + + Implements the ForEach() operator. + + The collection to operate over + + + + An object array containing the results of the expression evaluation. + + + + A routine used to advance an enumerator and catch errors that might occur + performing the operation + + The execution context used to see if the pipeline is stopping + THe enumerator to advance. + An error occurred moving to the next element in the enumeration + True if the move succeeded + + + + Wrapper caller for enumerator.Current - handles and republishes errors... + + The enumerator to read from + + + + + StringComparison.InvariantCulture is not in CoreCLR, so we need to use + CultureInfo.InvariantCulture.CompareInfo.Compare(string, string, CompareOptions) + to substitute + String.Compare(string, string, StringComparison) + + + + + StringComparison.InvariantCulture is not in CoreCLR, so we need to use + CultureInfo.InvariantCulture.CompareInfo.Compare(string, string, CompareOptions) == 0 + to substitute + String.Equals(string, string, StringComparison) + + + + + The number of arguments including "this" for instance methods. + + + + + Creates a new ReflectedCaller which can be used to quickly invoke the provided MethodInfo. + + + + + Gets the next type or null if no more types are available. + + + + + Uses reflection to create new instance of the appropriate ReflectedCaller + + + + + Fast creation works if we have a known primitive types for the entire + method siganture. If we have any non-primitive types then FastCreate + falls back to SlowCreate which works for all types. + + Fast creation is fast because it avoids using reflection (MakeGenericType + and Activator.CreateInstance) to create the types. It does this through + calling a series of generic methods picking up each strong type of the + signature along the way. When it runs out of types it news up the + appropriate CallInstruction with the strong-types that have been built up. + + One relaxation is that for return types which are non-primitive types + we can fallback to object due to relaxed delegates. + + + + + This instruction implements a goto expression that can jump out of any expression. + It pops values (arguments) from the evaluation stack that the expression tree nodes in between + the goto expression and the target label node pushed and not consumed yet. + A goto expression can jump into a node that evaluates arguments only if it carries + a value and jumps right after the first argument (the carried value will be used as the first argument). + Goto can jump into an arbitrary child of a BlockExpression since the block doesn�t accumulate values + on evaluation stack as its child expressions are being evaluated. + + Goto needs to execute any finally blocks on the way to the target label. + + { + f(1, 2, try { g(3, 4, try { goto L } finally { ... }, 6) } finally { ... }, 7, 8) + L: ... + } + + The goto expression here jumps to label L while having 4 items on evaluation stack (1, 2, 3 and 4). + The jump needs to execute both finally blocks, the first one on stack level 4 the + second one on stack level 2. So, it needs to jump the first finally block, pop 2 items from the stack, + run second finally block and pop another 2 items from the stack and set instruction pointer to label L. + + Goto also needs to rethrow ThreadAbortException iff it jumps out of a catch handler and + the current thread is in "abort requested" state. + + + + + The first instruction of finally block. + + + + + The last instruction of finally block. + + + + + The last instruction of a catch exception handler. + + + + + The last instruction of a fault exception handler. + + + + + Implements dynamic call site with many arguments. Wraps the arguments into . + + + + + Attaches a cookie to the last emitted instruction. + + + + + A single interpreted frame might be represented by multiple subsequent Interpreter.Run CLR frames. + This method filters out the duplicate CLR frames. + + + + + Get called from the LeaveFinallyInstruction + + + + + A simple forth-style stack machine for executing Expression trees + without the need to compile to IL and then invoke the JIT. This trades + off much faster compilation time for a slower execution performance. + For code that is only run a small number of times this can be a + sweet spot. + + The core loop in the interpreter is the RunInstructions method. + + + + + Runs instructions within the given frame. + + + Interpreted stack frames are linked via Parent reference so that each CLR frame of this method corresponds + to an interpreted stack frame in the chain. It is therefore possible to combine CLR stack traces with + interpreted stack traces by aligning interpreted frames to the frames of this method. + Each group of subsequent frames of Run method corresponds to a single interpreted frame. + + + + + To get to the current AbortReason object on Thread.CurrentThread + we need to use ExceptionState property of any ThreadAbortException instance. + + + + + If the target that 'Goto' jumps to is inside the current catch block or the subsequent finally block, + we delay the call to 'Abort' method, because we want to finish the catch/finally blocks + + + + + Contains compiler state corresponding to a LabelTarget + See also LabelScopeInfo. + + + + + Returns true if we can jump into this node + + + + + No finally block + + + + + No catch blocks + + + + + Generic constructor + + + + + Goto the index of the first instruction of the suitable catch block + + + + + The re-throw instrcution will throw this exception + + + + + Manages creation of interpreted delegates. These delegates will get + compiled if they are executed often enough. + + + + + true if the compiled delegate has the same type as the lambda; + false if the type was changed for interpretation. + + + + + Used by LightLambda to get the compiled delegate. + + + + + Create a compiled delegate for the LightLambda, and saves it so + future calls to Run will execute the compiled code instead of + interpreting. + + + + + Provides notification that the LightLambda has been compiled. + + + + + Visits a LambdaExpression, replacing the constants with direct accesses + to their StrongBox fields. This is very similar to what + ExpressionQuoter does for LambdaCompiler. + + Also inserts debug information tracking similar to what the interpreter + would do. + + + + + Local variable mapping. + + + + + The variable that holds onto the StrongBox{object}[] closure from + the interpreter + + + + + A stack of variables that are defined in nested scopes. We search + this first when resolving a variable in case a nested scope shadows + one of our variable instances. + + + + + Walks the lambda and produces a higher order function, which can be + used to bind the lambda to a closure array from the interpreter. + + The lambda to bind. + Variables which are being accessed defined in the outer scope. + A delegate that can be called to produce a delegate bound to the passed in closure array. + + + + Provides a list of variables, supporing read/write of the values + + + + + Gets a copy of the local variables which are defined in the current scope. + + + + + + Checks to see if the given variable is defined within the current local scope. + + + + + Gets the variables which are defined in an outer scope and available within the current scope. + + + + + Tracks where a variable is defined and what range of instructions it's used in + + + + + Wraps all arguments passed to a dynamic site with more arguments than can be accepted by a Func/Action delegate. + The binder generating a rule for such a site should unwrap the arguments first and then perform a binding to them. + + + + + Updates an exception before it's getting re-thrown so + we can present a reasonable stack trace to the user. + + + + + Returns all the stack traces associates with an exception + + + + + A hybrid dictionary which compares based upon object identity. + + + + + Provides a dictionary-like object used for caches which holds onto a maximum + number of elements specified at construction time. + + This class is not thread safe. + + + + + Creates a dictionary-like object used for caches. + + The maximum number of elements to store. + + + + Tries to get the value associated with 'key', returning true if it's found and + false if it's not present. + + + + + Adds a new element to the cache, replacing and moving it to the front if the + element is already present. + + + + + Returns the value associated with the given key, or throws KeyNotFoundException + if the key is not present. + + + + + True if the caller will guarantee that all cleanup happens as the thread + unwinds. + + This is typically used in a case where the thread local is surrounded by + a try/finally block. The try block pushes some state, the finally block + restores the previous state. Therefore when the thread exits the thread + local is back to it's original state. This allows the ThreadLocal object + to not check the current owning thread on retrieval. + + + + + Gets or sets the value for the current thread. + + + + + Gets the current value if its not == null or calls the provided function + to create a new value. + + + + + Calls the provided update function with the current value and + replaces the current value with the result of the function. + + + + + Replaces the current value with a new one and returns the old value. + + + + + Gets the StorageInfo for the current thread. + + + + + Called when the fast path storage lookup fails. if we encountered the Empty storage + during the initial fast check then spin until we hit non-empty storage and try the fast + path again. + + + + + Creates the StorageInfo for the thread when one isn't already present. + + + + + Helper class for storing the value. We need to track if a ManagedThreadId + has been re-used so we also store the thread which owns the value. + + + + + Defines the valid types of MSH credentials. Used by PromptForCredential calls. + + + + + Generic credentials. + + + + + Credentials valid for a domain. + + + + + Default credentials. + + + + + Defines the options available when prompting for credentials. Used + by PromptForCredential calls. + + + + + Validates the username, but not its existence + or correctness. + + + + + Performs no validation. + + + + + Validates the username, but not its existence. + or correctness + + + + + Always prompt, even if a persisted credential was available. + + + + + Username is read-only, and the user may not modify it. + + + + + Declare a delegate which returns the encryption key and initialization vector for symmetric encryption algorithem. + + The streaming context, which contains the searilization context. + Symmetric encryption key. + symmetric encryption initialization vector. + + + + + Offers a centralized way to manage usernames, passwords, and + credentials. + + + + + Gets or sets a delegate which returns the encryption key and initialization vector for symmetric encryption algorithm. + + + + + GetObjectData + + + + + + + PSCredential + + + + + + + User's name. + + + + + User's password. + + + + + Initializes a new instance of the PSCredential class with a + username and password. + + + User's name. + User's password. + + + + Initializes a new instance of the PSCredential class with a + username and password from PSObject. + + + + + + Initializes a new instance of the PSCredential class. + + + + + Returns an equivalent NetworkCredential object for this + PSCredential. + + A null is returned if + -- current object has not been initialized + -- current creds are not compatible with NetworkCredential + (such as smart card creds or cert creds) + + + + null if the current object has not been initialized. + null if the current credentials are incompatible with + a NetworkCredential -- such as smart card credentials. + the appropriate network credential for this PSCredential otherwise. + + + + + Provides an explicit cast to get a NetworkCredential + from this PSCredential. + + + PSCredential to convert. + + + null if the current object has not been initialized. + null if the current credentials are incompatible with + a NetworkCredential -- such as smart card credentials. + the appropriate network credential for this PSCredential otherwise. + + + + + Gets an empty PSCredential. This is an PSCredential with both UserName + and Password initialized to null. + + + + + Parse a string that represents a fully qualified username + to verify that it is syntactically valid. We only support + two formats: + -- domain\user + -- user@domain + + for any other format, we simply treat the entire string + as user name and set domain name to "". + + + + + + + Split a given string into its user and domain + components. Supported formats are: + -- domain\user + -- user@domain + + With any other format, the entire input is treated as user + name and domain is set to "". + + In any case, the function does not check if the split string + are really valid as user or domain names. + + + + + + This is a wrapper for exception class SecurityException + + + + + Recommended constructor for class PSSecurityException + + constructed object + + + + Serialization constructor for class PSSecurityException + + serialization information + streaming context + constructed object + + + + Constructor for class PSSecurityException + + + constructed object + + + + Constructor for class PSSecurityException + + + + constructed object + + + + Gets the ErrorRecord information for this exception. + + + + + Exception.Message is get-only, but you can effectively + set it in a subclass by overriding this virtual property. + + + + + SAFER_TOKEN_NULL_IF_EQUAL -> 0x00000001 + + + SAFER_TOKEN_COMPARE_ONLY -> 0x00000002 + + + SAFER_TOKEN_MAKE_INERT -> 0x00000004 + + + SAFER_CRITERIA_IMAGEPATH -> 0x00001 + + + SAFER_CRITERIA_NOSIGNEDHASH -> 0x00002 + + + SAFER_CRITERIA_IMAGEHASH -> 0x00004 + + + SAFER_CRITERIA_AUTHENTICODE -> 0x00008 + + + SAFER_CRITERIA_URLZONE -> 0x00010 + + + SAFER_CRITERIA_IMAGEPATH_NT -> 0x01000 + + + WTD_UI_NONE -> 0x00002 + + + S_OK -> ((HRESULT)0L) + + + S_FALSE -> ((HRESULT)1L) + + + ERROR_MORE_DATA -> 234L + + + ERROR_ACCESS_DISABLED_BY_POLICY -> 1260L + + + ERROR_ACCESS_DISABLED_NO_SAFER_UI_BY_POLICY -> 786L + + + SAFER_MAX_HASH_SIZE -> 64 + + + SRP_POLICY_SCRIPT -> L"SCRIPT" + + + SIGNATURE_DISPLAYNAME_LENGTH -> MAX_PATH + + + SIGNATURE_PUBLISHER_LENGTH -> 128 + + + SIGNATURE_HASH_LENGTH -> 64 + + + MAX_PATH -> 260 + + + + pinvoke methods from crypt32.dll + + + pinvoke methods from certca.dll + + + Used in CertificateProvider to detect if UI is allowed. + + + pinvoke methods from advapi32.dll + + + pinvoke methods from wintrust.dll + These are added to Generate and Validate Window Catalog Files + + + + + signature of call back function used by CertEnumSystemStore + + + + + signature of cert enumeration function + + + + + signature of cert find function + + + + + The PROV_RSA_FULL type. + + + + + The PROV_RSA_SIG type. + + + + + The PROV_RSA_DSS type. + + + + + The PROV_FORTEZZA type. + + + + + The PROV_MS_EXCHANGE type. + + + + + The PROV_SSL type. + + + + + The PROV_RSA_SCHANNEL type. SSL certificates are generated with these providers. + + + + + The PROV_DSS_DH type. + + + + + The PROV_EC_ECDSA type. + + + + + The PROV_EC_ECNRA_SIG type. + + + + + The PROV_EC_ECDSA_FULL type. + + + + + The PROV_EC_ECNRA_FULL type. + + + + + The PROV_DH_SCHANNEL type. + + + + + The PROV_SPYRUS_LYNKS type. + + + + + The PROV_RNG type. + + + + + The PROV_INTEL_SEC type. + + + + + String naming a key container within a particular CSP. + + + + + String that names a CSP. + + + + + CSP type. + + + + + Flags value indicating whether a key container is to be created or destroyed, and + whether an application is allowed access to a key container. + + + + + Number of elements in the rgProvParam array. + + + + + Array of pointers to CRYPT_KEY_PROV_PARAM structures. + + + + + The specification of the private key to retrieve. AT_KEYEXCHANGE and AT_SIGNATURE + are defined for the default provider. + + + + DWORD->unsigned int + + + LPCSTR->CHAR* + + + LPCWSTR->WCHAR* + + + DWORD->unsigned int + + + Anonymous_a3ae7823_8a1d_432c_bc07_a72b6fc6c7d8 + + + CRYPT_DATA_BLOB->_CRYPTOAPI_BLOB + + + DWORD->unsigned int + + + ALG_ID->unsigned int + + + DWORD->unsigned int + + + DWORD->unsigned int + + + BYTE* + + + DWORD->unsigned int + + + BYTE* + + + DWORD->unsigned int + + + GUID->_GUID + + + LPCWSTR->WCHAR* + + + DWORD->unsigned int + + + BYTE* + + + DWORD->unsigned int + + + BYTE* + + + unsigned int + + + unsigned short + + + unsigned short + + + unsigned char[8] + + + WINTRUST_FILE_INFO_* + + + WINTRUST_CATALOG_INFO_* + + + WINTRUST_BLOB_INFO_* + + + WINTRUST_SGNR_INFO_* + + + WINTRUST_CERT_INFO_* + + + DWORD->unsigned int + + + LPVOID->void* + + + LPVOID->void* + + + DWORD->unsigned int + + + DWORD->unsigned int + + + DWORD->unsigned int + + + WinTrust_Choice struct + + + DWORD->unsigned int + + + HANDLE->void* + + + WCHAR* + + + DWORD->unsigned int + + + DWORD->unsigned int + + + Return Type: HRESULT->LONG->int + pszFile: PCWSTR->WCHAR* + hFile: HANDLE->void* + sigInfoFlags: SIGNATURE_INFO_FLAGS->Anonymous_5157c654_2076_48e7_9241_84ac648615e9 + psiginfo: SIGNATURE_INFO* + ppCertContext: void** + phWVTStateData: HANDLE* + + + Return Type: BOOL->int + pSignerCert: PCCERT_CONTEXT->CERT_CONTEXT* + hCertBag: HCERTSTORE->void* + fTrustTestCert: BOOL->int + + + Return Type: BOOL->int + hWVTStateData: HANDLE->void* + fTrustTestCert: BOOL->int + + + SIGNATURE_STATE_UNSIGNED_MISSING -> 0 + + + SIF_NONE -> 0x0000 + + + SIF_AUTHENTICODE_SIGNED -> 0x0001 + + + SIF_CATALOG_SIGNED -> 0x0002 + + + SIF_VERSION_INFO -> 0x0004 + + + SIF_CHECK_OS_BINARY -> 0x0800 + + + SIF_BASE_VERIFICATION -> 0x1000 + + + SIF_CATALOG_FIRST -> 0x2000 + + + SIF_MOTW -> 0x4000 + + + SIA_DISPLAYNAME -> 0x0001 + + + SIA_PUBLISHERNAME -> 0x0002 + + + SIA_MOREINFOURL -> 0x0004 + + + SIA_HASH -> 0x0008 + + + SIT_UNKNOWN -> 0 + + + DWORD->unsigned int + + + SIGNATURE_STATE->Anonymous_7e0526d8_af30_47f9_9233_a77658d0f1e5 + + + SIGNATURE_INFO_TYPE->Anonymous_27075e4b_faa5_4e57_ada0_6d49fae74187 + + + DWORD->unsigned int + + + DWORD->unsigned int + + + PWSTR->WCHAR* + + + DWORD->unsigned int + + + PWSTR->WCHAR* + + + DWORD->unsigned int + + + PWSTR->WCHAR* + + + DWORD->unsigned int + + + LPBYTE->BYTE* + + + DWORD->unsigned int + + + BOOL->int + + + DWORD->unsigned int + + + CRYPT_INTEGER_BLOB->_CRYPTOAPI_BLOB + + + CRYPT_ALGORITHM_IDENTIFIER->_CRYPT_ALGORITHM_IDENTIFIER + + + CERT_NAME_BLOB->_CRYPTOAPI_BLOB + + + FILETIME->_FILETIME + + + FILETIME->_FILETIME + + + CERT_NAME_BLOB->_CRYPTOAPI_BLOB + + + CERT_PUBLIC_KEY_INFO->_CERT_PUBLIC_KEY_INFO + + + CRYPT_BIT_BLOB->_CRYPT_BIT_BLOB + + + CRYPT_BIT_BLOB->_CRYPT_BIT_BLOB + + + DWORD->unsigned int + + + PCERT_EXTENSION->_CERT_EXTENSION* + + + LPSTR->CHAR* + + + CRYPT_OBJID_BLOB->_CRYPTOAPI_BLOB + + + DWORD->unsigned int + + + DWORD->unsigned int + + + CRYPT_ALGORITHM_IDENTIFIER->_CRYPT_ALGORITHM_IDENTIFIER + + + CRYPT_BIT_BLOB->_CRYPT_BIT_BLOB + + + DWORD->unsigned int + + + BYTE* + + + DWORD->unsigned int + + + LPSTR->CHAR* + + + BOOL->int + + + CRYPT_OBJID_BLOB->_CRYPTOAPI_BLOB + + + Return Type: BOOL->int + dwNumProperties: DWORD->unsigned int + pCodeProperties: PSAFER_CODE_PROPERTIES->_SAFER_CODE_PROPERTIES* + pLevelHandle: SAFER_LEVEL_HANDLE* + lpReserved: LPVOID->void* + + + Return Type: BOOL->int + LevelHandle: SAFER_LEVEL_HANDLE->SAFER_LEVEL_HANDLE__* + InAccessToken: HANDLE->void* + OutAccessToken: PHANDLE->HANDLE* + dwFlags: DWORD->unsigned int + lpReserved: LPVOID->void* + + + Return Type: BOOL->int + hLevelHandle: SAFER_LEVEL_HANDLE->SAFER_LEVEL_HANDLE__* + + + Return Type: BOOL->int + hObject: HANDLE->void* + + + + NtQuerySystemInformation + MSDN Reference: https://msdn.microsoft.com/en-us/library/windows/desktop/ms724509(v=vs.85).aspx + + + + + This is a specific overload of the NtQuerySystemInformation for code integrity policy + information. + + This *must* be a class that returns + SYSTEM_CODEINTEGRITYPOLICY_INFORMATION information. + SYSTEM_CODEINTEGRITYPOLICY_INFORMATION + + + + + + + signature of call back function used by CryptCATCDFOpen + + + + + signature of call back function used by CryptCATCDFEnumMembersByCDFTagEx + + + + DWORD->unsigned int + + + DWORD->unsigned int + + + LPCWSTR->WCHAR* + + + HANDLE->void* + + + DWORD->unsigned int + + + BYTE[SAFER_MAX_HASH_SIZE] + + + DWORD->unsigned int + + + LARGE_INTEGER->_LARGE_INTEGER + + + ALG_ID->unsigned int + + + LPBYTE->BYTE* + + + HWND->HWND__* + + + DWORD->unsigned int + + + Anonymous_9320654f_2227_43bf_a385_74cc8c562686 + + + Anonymous_947eb392_1446_4e25_bbd4_10e98165f3a9 + + + LONGLONG->__int64 + + + int + + + DWORD->unsigned int + + + LONG->int + + + DWORD->unsigned int + + + LONG->int + + + + How the policy is being enforced. + + + + + Not enforced at all + + + Enabled - allow, but audit + + + Enabled, enforce restrictions + + + + Support class for dealing with the Windows Lockdown Policy, + Device Guard, and Constrained PowerShell + + + + + Gets the system lockdown policy + + An EnforcementMode that describes the system policy + + + + Gets lockdown policy as applied to a file + + An EnforcementMode that describes policy + + + + Gets lockdown policy as applied to a COM object + + True if the COM object is allowed, False otherwise. + + + + Native constants for dealing with the lockdown policy + + + + + The different host IDs understood by the lockdown policy + + + + + Host information structure to contain the lockdown policy request + + + + DWORD->unsigned int + + + WLDP_HOST_ID->_WLDP_HOST_ID + + + PCWSTR->WCHAR* + + + + Native methods for dealing with the lockdown policy + + + + Return Type: HRESULT->LONG->int + pHostInformation: PWLDP_HOST_INFORMATION->_WLDP_HOST_INFORMATION* + pdwLockdownState: PDWORD->DWORD* + dwFlags: DWORD->unsigned int + + + Return Type: HRESULT->LONG->int + rclsid: IID* + pHostInformation: PWLDP_HOST_INFORMATION->_WLDP_HOST_INFORMATION* + ptIsApproved: PBOOL->BOOL* + dwFlags: DWORD->unsigned int + + + + Defines the options that control what data is embedded in the + signature blob + + + + + + Embeds only the signer's certificate. + + + + + Embeds the entire certificate chain. + + + + + Embeds the entire certificate chain, except for the root + certificate. + + + + + Default: Embeds the entire certificate chain, except for the + root certificate. + + + + + Helper functions for signature functionality + + + + + tracer for SignatureHelper + + + + + Sign a file + + + option that controls what gets embedded in the signature blob + + name of file to sign + + signing cert + + URL of time stamping server + + The name of the hash + algorithm to use. + + Does not return a value + + + + Thrown if argument fileName or certificate is null. + + + + + Thrown if + -- argument fileName is empty OR + -- the specified certificate is not suitable for + signing code + + + + + This exception can be thrown if any cryptographic error occurs. + It is not possible to know exactly what went wrong. + This is because of the way CryptographicException is designed. + Possible reasons: + -- certificate is invalid + -- certificate has no private key + -- certificate password mismatch + -- etc + + + + + Thrown if the file specified by argument fileName is not found + + + + + + + + Get signature on the specified file + + + name of file to check + + content of file to check + + Signature object + + + Thrown if argument fileName is empty. + + + + + Thrown if argument fileName is null + + + + + Thrown if the file specified by argument fileName is not found. + + + + + + + + Defines the possible status when validating integrity of catalog + + + + + Status when catalog is not tampered. + + + + + Status when catalog is tampered. + + + + + Object returned by Catalog Cmdlets + + + + + status of catalog + + + + + Hash Algorithm used to calculate the hashes of files in Catalog + + + + + Dictionary mapping files relative paths to their hash values found from Catalog + + + + + Dictionary mapping files relative paths to their hash values + + + + + Signature for the catalog + + + + + Helper functions for Windows Catalog functionality + + + + + Find out the Version of Catalog by reading its Meta data. We can have either version 1 or version 2 catalog + + Handle to open catalog file + Version of the catalog + + + + HashAlgorithm used by the Catalog. It is based on the version of Catalog. + + Path of the output catalog file + Version of the catalog + + + + Generate the Catalog Defintion File representing files and folders + + + Path of expected output .cdf file + + Path of the output catalog file + + Path of the catalog definiton file + + Version of catalog + + hash method used to generate hashes for the Catalog + HashSet for the relative Path for files in Catalog + + + + Get file attribute (Relative path in our case) from catalog + + file to hash + directory information about file needed to calculate relative file path. + working set of relative paths of all files. + content to be added in CatalogHeader section of cdf File + content to be added in CatalogFiles section of cdf File + indictaing the current no of catalog header level attributes + void + + + + Generate the Catalog file for Input Catalog Defintion File + + + Path to the Input .cdf file + + + + To generate Catalog for the folder + + + Path to folder or File + Catalog File Path + Catalog File Path + Instance of cmdlet calling this method + true if able to generate .cat file or false + + + + Get file attribute (Relative path in our case) from catalog + + Pointer to current attribute of catalog member. + value of the attribute + + + + Make a hash for the file + + + Path of the file + Used to calculate Hash + HashValue for the file + + + + Make list of hashes for given Catalog File + + Path to the folder having catalog file + + The version of input catalog we read from catalog meta data after opening it. + Dictionary mapping files relative paths to HashValues + + + + Process file in path for its relative paths + + relative path of file found in catalog + hash of file found in catalog. + skip file from validation if it matches these patterns + collection of hashes of catalog + void + + + + Process file in path for its relative paths + + file to hash + directory information about file needed to calculate relative file path. + Used to calculate Hash + skip file if it matches these patterns + collection of hashes of files + void + + + + Generate the hashes of all the files in given folder + + + Path to folder or File + catalog file path it should be skipped when calculating the hashes + Used to calculate Hash + + Dictionary mapping file relative paths to hashes. + + + + Compare Dictionary objects + + + Hashes extracted from Catalog + + Hashes created from folders path + + True if both collections are same + + + + To Validate the Integrity of Catalog + + + Folder for which catalog is created + File Name of the Catalog + + Instance of cmdlet calling this method + Information about Catalog + + + + Check if file meets the skip validation criteria + + + + True if match is found else false + + + + Call back when error is thrown by catalog API's + + + + + Provides the *-SecurityDescriptor noun for the cmdlet providers. + + + + + + Hide the default constructor since we always require an instance of SessionState. + + + + + Initializes a new instance of the SecurityDescriptorCmdletProviderIntrinsics + class, using the Cmdlet parameter to obtain access to the SessionState APIs. + + + + An instance of the cmdlet. + + + + + Initializes a new instance of the SecurityDescriptorCmdletProviderIntrinsics + class, using the sessionState parameter to obtain access to the SessionState APIs. + + + + An instance of the real session state class. + + + + + Gets the SecurityDescriptor at the specified path, including only the specified + AccessControlSections. + + + + The path of the item to retrieve. It may be a drive or provider-qualified path and may include. + glob characters. + + + The sections of the security descriptor to include. + + + + The SecurityDescriptor(s) at the specified path. + + + + + Gets the SecurityDescriptor at the specified path, including only the specified + AccessControlSections, using the provided Context. + + + + The path of the item to retrieve. It may be a drive or provider-qualified path and may include + glob characters. + + + The sections of the security descriptor to include. + + + The context under which the command is running. + + + + Nothing. The object(s) at the specified path are written to the context. + + + + + Sets the provided SecurityDescriptor at the specified path. + + + + The path of the item to set. It may be a drive or provider-qualified path and may include + glob characters. + + + The new security descriptor to set. + + + + The SecurityDescriptor(s) set at the specified path. + + + + + Sets the SecurityDescriptor at the specified path, using the provided Context. + + + + The path of the item to set. It may be a drive or provider-qualified path and may include + glob characters. + + + The new security descriptor to set. + + + The context under which the command is running. + + + + Nothing. The object(s) set at the specified path are written to the context. + + + + + Creates a new SecurityDescriptor from the item at the specified path, including only the specified + AccessControlSections. + + + + The path of the item to retrieve. It may be a drive or provider-qualified path and may include + glob characters. + + + The sections of the security descriptor to include. + + + + The SecurityDescriptor(s) at the specified path. + + + + + Creates a new SecurityDescriptor from the specified provider and of the given type, + including only the specified AccessControlSections. + + + + The name of the provider. + + + The type of the item which corresponds to the security + descriptor that we want to create. + + + The sections of the security descriptor to include. + + + + A new SecurityDescriptor of the specified type. + + + + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + Holds the state of a PowerShell session + + + Holds the state of a Monad Shell session + + + Holds the state of a Monad Shell session + + + + + Gets an instance of an ISecurityDescriptorCmdletProvider given the provider ID. + + + + An instance of a CmdletProvider. + + + + An instance of a ISecurityDescriptorCmdletProvider for the specified provider ID. + + + + ArgumentNullException if providerId is null. + NotSupportedException if the providerId is not for a provider + that is derived from ISecurityDescriptorCmdletProvider. + + + + + + Gets the security descriptor from the specified item. + + + + The path to the item to retrieve the security descriptor from. + + + + Specifies the parts of a security descriptor to retrieve. + + + + The security descriptor for the item at the sepecified path. + + + + + + Gets the security descriptor from the specified item. + + + + The path to the item to retrieve the security descriptor from. + + + + Specifies the parts of a security descriptor to retrieve. + + + + The context which the core command is running. + + + + Nothing. The security descriptor for the item at the sepecified path is + written to the context. + + + + If does not contain glob characters and + could not be found. + + + + + + Sets the security descriptor on the specified item. + + + + The path to the item to set the security descriptor on. + + + + The security descriptor to set on the item at the specified path. + + + + The security descriptor that was set on the item at the sepecified path. + + + + + + Sets the security descriptor on the specified item. + + + + The path to the item to set the security descriptor on. + + + + The security descriptor to set on the item at the specified path. + + + + The context which the core command is running. + + + + Nothing. The security descriptor that was set on the item at the sepecified path + is written to the context. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the security descriptor from the specified item. + + + + The path to the item to retrieve the security descriptor from. + + + + Specifies the parts of a security descriptor to retrieve. + + + + Nothing. The security descriptor for the item at the sepecified path is + written to the context. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the security descriptor from the specified item. + + + + The type of the item which corresponds to the security + descriptor that we want to create. + + + + The name of the provider. + + + + Specifies the parts of a security descriptor to retrieve. + + + + Nothing. The security descriptor for the item at the sepecified type is + written to the context. + + + + + + Gets the security descriptor from the specified item. + + + + The type of the item which corresponds to the security + descriptor that we want to create. + + + + The type of the item which corresponds to the security + descriptor that we want to create. + + + + Specifies the parts of a security descriptor to retrieve. + + + + Nothing. The security descriptor for the item at the sepecified type is + written to the context. + + + + + + An instance of the PSTraceSource class used for trace output + using "SessionState" as the category. + + + + + Constructor for session state object + + + + The context for the runspace to which this session state object belongs. + + + + if is null. + + + + + + Add any special variables to the session state variable table. This routine + must be called at construction time or if the variable table is reset. + + + + + Provides all the path manipulation and globbing for Monad paths. + + + + + + The context of the runspace to which this session state object belongs. + + + + + Returns the public session state facade object for this session state instance. + + + + + Gets the engine APIs to access providers + + + + + The module info object associated with this session state + + + + + The private module table for this session state object... + + + + + Get/set constraints for this execution environemnt + + + + + If true the PowerShell debugger will use FullLanguage mode, otherwise it will use the current language mode + + + + + The list of scripts that are allowed to be run. If the name "*" + is in the list, then all scripts can be run. (This is the default.) + + + + + See if a script is allowed to be run. + + Path to check + true if script is allowed + + + + The list of appications that are allowed to be run. If the name "*" + is in the list, then all applications can be run. (This is the default.) + + + + + List of functions/filters to export from this session state object... + + + + + Defines the default command visibility for this session state. Binding an InitialSessionState instance + with private members will set this to Private. + + + + + Add an new SessionState cmdlet entry to this session state object... + + The entry to add + + + + Add an new SessionState cmdlet entry to this session state object... + + The entry to add + If local, add cmdlet to current scope. Else, add to module scope + + + + Add an new SessionState cmdlet entry to this session state object... + + The entry to add + + + + Add an new SessionState cmdlet entry to this session state object... + + The entry to add + + + + Add the variables that must always be present in a SessionState instance... + + + + + Set the $Console variable in this session state instance... + + + + + Add all of the default built-in functions to this session state instance... + + + + + Add the built-in variables to this instance of session state... + + + + + Add the built-in functions to this instance of session state... + + + + + Add the built-in aliases to this instance of session state... + + + + + Check to see if an application is allowed to be run. + + The path to the application to check + True if application is permitted. + + + + Notification for SessionState to do cleanup + before runspace is closed. + + + + + + Constructs a new instance of a ProviderInvocationException + using the specified data + + + + The resource ID to use as the format message for the error. + + + + This is the message template string. + + + + The provider information used when formatting the error message. + + + + The path used when formatting the error message. + + + + The exception that was thrown by the provider. This will be set as + the ProviderInvocationException's InnerException and the message will + be used when formatting the error message. + + + + A new instance of a ProviderInvocationException. + + + + Wraps in a ProviderInvocationException + and then throws it. + + + + + + Constructs a new instance of a ProviderInvocationException + using the specified data + + + + The resource ID to use as the format message for the error. + + + + This is the message template string. + + + + The provider information used when formatting the error message. + + + + The path used when formatting the error message. + + + + The exception that was thrown by the provider. This will be set as + the ProviderInvocationException's InnerException and the message will + be used when formatting the error message. + + + + If true, the error record from the inner exception will be used if it contains one. + If false, the error message specified by the resourceId will be used. + + + + A new instance of a ProviderInvocationException. + + + + Wraps in a ProviderInvocationException + and then throws it. + + + + + + Add a new alias entry to this session state object... + + The entry to add + + A scope identifier that is either one of the "special" scopes like + "global", "script", "local", or "private, or a numeric ID of a relative scope + to the current scope. + + + + + Gets an IEnumerable for the alias table + + + + + + Gets an IEnumerable for the alias table for a given scope + + + + A scope identifier that is either one of the "special" scopes like + "global", "script", "local", or "private, or a numeric ID of a relative scope + to the current scope. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + List of aliases to export from this session state object... + + + + + Gets the value of the specified alias from the alias table. + + + + The name of the alias value to retrieve. + + + + The origin of the command calling this API. + + + The AliasInfo representing the alias. + + + + + + Gets the value of the specified alias from the alias table. + + + + The name of the alias value to retrieve. + + + + The AliasInfo representing the alias. + + + + + + Gets the value of the specified alias from the alias table. + + + + The name of the alias value to retrieve. + + + + A scope identifier that is either one of the "special" scopes like + "global", "script", "local", or "private, or a numeric ID of a relative scope + to the current scope. + + + + The AliasInfo representing the alias. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + Sets the alias with specified name to the specified value in the current scope. + + + + The name of the alias to set. + + + + The value to set the alias to. + + + + If true, the value will be set even if the alias is ReadOnly. + + + + THe origin of the caller of this API + + + + The resulting AliasInfo for the alias that was set. + + + + If or is null or empty. + + + + If the alias is read-only or constant. + + + + If the maximum number of aliases has been reached for this scope. + + + + + + Sets the alias with specified name to the specified value in the current scope. + BUGBUG: this overload only exists for the test suites. They should be cleaned up + and this overload removed. + + + + The name of the alias to set. + + + + The value to set the alias to. + + + + If true, the value will be set even if the alias is ReadOnly. + + + + The resulting AliasInfo for the alias that was set. + + + + If or is null or empty. + + + + If the alias is read-only or constant. + + + + If the maximum number of aliases has been reached for this scope. + + + + + + Sets the alias with specified name to the specified value in the current scope. + + + + The name of the alias to set. + + + + The value to set the alias to. + + + + The options to set on the alias. + + + + If true, the value will be set even if the alias is ReadOnly. + + + + The origin of the caller of this API + + + + The resulting AliasInfo for the alias that was set. + + + + If or is null or empty. + + + + If the alias is read-only or constant. + + + + If the maximum number of aliases has been reached for this scope. + + + + + + Sets the alias with specified name to the specified value in the current scope. + BUGBUG: this api only exists for the test suites. They should be fixed and it should be removed. + + + + The name of the alias to set. + + + + The value to set the alias to. + + + + The options to set on the alias. + + + + If true, the value will be set even if the alias is ReadOnly. + + + + The resulting AliasInfo for the alias that was set. + + + + If or is null or empty. + + + + If the alias is read-only or constant. + + + + If the maximum number of aliases has been reached for this scope. + + + + + + Sets the alias with specified name to the specified value in the current scope. + + + + The AliasInfo representing the alias. + + + + If true, the alias will be set even if there is an existing ReadOnly + alias. + + + + Specifies the origin of the comannd setting the alias. + + + + The resulting AliasInfo for the alias that was set. + + + + If is null. + + + + If the alias is read-only or constant. + + + + If the maximum number of aliases has been reached for this scope. + + + + + + Sets the alias with specified name to the specified value in the current scope. + + + + The AliasInfo representing the alias. + + + + A scope identifier that is either one of the "special" scopes like + "global", "script", "local", or "private, or a numeric ID of a relative scope + to the current scope. + + + + If true, the alias will be set even if there is an existing ReadOnly + alias. + + + + Specifies the command origin of the calling command. + + + + The resulting AliasInfo for the alias that was set. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + If is null. + + + + If the alias is read-only or constant. + + + + If the maximum number of aliases has been reached for this scope. + + + + + + Sets the alias with specified name to the specified value in the current scope. + + + + The AliasInfo representing the alias. + + + + A scope identifier that is either one of the "special" scopes like + "global", "script", "local", or "private, or a numeric ID of a relative scope + to the current scope. + + + + If true, the alias will be set even if there is an existing ReadOnly + alias. + + + + The resulting AliasInfo for the alias that was set. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + If is null. + + + + If the alias is read-only or constant. + + + + If the maximum number of aliases has been reached for this scope. + + + + + + Removes the specified alias. + + + + The name of the alias to remove. + + + + If true the alias will be removed even if its ReadOnly. + + + + If is null or empty. + + + + If the alias is constant. + + + + + + Gets the alises by command name (used by metadata-driven help) + + + + + + + Gets the value of the specified cmdlet from the cmdlet table. + + + + The name of the cmdlet value to retrieve. + + + + The CmdletInfo representing the cmdlet. + + + + + + Gets the value of the specified cmdlet from the cmdlet table. + + + + The name of the cmdlet value to retrieve. + + + + The origin of hte command trying to retrieve this cmdlet. + + + + The CmdletInfo representing the cmdlet. + + + + + + Gets the value of the specified cmdlet from the cmdlet table. + + + + The name of the cmdlet value to retrieve. + + + + A scope identifier that is either one of the "special" scopes like + "global", "script", "local", or "private, or a numeric ID of a relative scope + to the current scope. + + + + The CmdletInfo representing the cmdlet. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + Gets an IEnumerable for the cmdlet table + + + + + + Gets an IEnumerable for the cmdlet table for a given scope + + + + A scope identifier that is either one of the "special" scopes like + "global", "script", "local", or "private, or a numeric ID of a relative scope + to the current scope. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + Removes a cmdlet from the function table. + + + + The name of the cmdlet to remove. + + + + The name of the cmdlet to remove. + + + + THe origin of the caller of this API + + + + If true, the cmdlet is removed even if it is ReadOnly. + + + + If is null or empty. + + + + If the function is constant. + + + + + + Removes a cmdlet entry from the cmdlet table. + + + + The name of the cmdlet entry to remove. + + + + If true, the cmdlet is removed even if it is ReadOnly. + + + + If is null or empty. + + + + If the function is constant. + + + + + + Determines if the monad virtual namespace path exists. + + + + The path to the object to determine if it exists. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + true if the object specified by path exists, false otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Determines if the monad virtual namespace path exists. + + + + The path to the object to determine if it exists. + + + + The context which the core command is running. + + + + true if the object specified by path exists, false otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Determines if the item at the specified path exists + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the test-path cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the test-path cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Determines if the MSH path is a syntactically and semantically valid path for the provider. + + + + The path to validate. + + + + true if the object specified by path is syntactically and semantically valid, false otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Determines if the MSH path is a syntactically and semantically valid path for the provider. + + + + The path to validate. + + + + The context which the core command is running. + + + + true if the object specified by path is syntactically and semantically valid, false otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Determines if the specified path is valid. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Determines if the monad virtual namespace path is a container. + + + + The path to the object to determine if it is a container. + + + + true if the object specified by path is a container, false otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Determines if the monad virtual namespace path is a container. + + + + The path to the object to determine if it is a container. + + + + The context which the core command is running. + + + + true if the object specified by path is a container, false otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Determines if the item at the specified path is a container. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Deletes the specified object + + + + A relative or absolute path to the object to be deleted. + + + + The delete should occur in all sub-containers of the specified path. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Deletes the specified object + + + + A relative or absolute path to the object to be deleted. + + + + The delete should occur in all sub-containers of the specified path. + + + + The context which the core command is running. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Internal remove item method that just calls the provider directly without globbing. + + + + The name of the provider to use. + + + + The path of the item to remove. + + + + True if all items should be removed recursively. + + + + The context under which the command is running. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Internal remove item method that just calls the provider directly without globbing. + + + + The instance of the provider to use. + + + + The path of the item to remove. + + + + True if all items should be removed recursively. + + + + The context under which the command is running. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the remove-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The delete should occur in all sub-containers of the specified path. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the remove-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + If true, all items in the subtree should be removed. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the children of the specified item. + + + + An array of relative or absolute paths to the object to get the children of. + + + + If true, gets all the children in all the sub-containers of the specified + container. If false, only gets the immediate children of the specified + container. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + This method does not provider streaming of the results. If you want streaming + then you must call the overload that takes a CmdletProviderContext. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the children of the specified item. + + + + A relative or absolute path to the object to get the children of. + + + + If true, gets all the children in all the sub-containers of the specified + container. If false, only gets the immediate children of the specified + container. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + The context which the core command is running. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the child items of the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + If true, all the child items in the subtree are returned. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Since we can't do include and exclude filtering on items we have to + do the recursion ourselves. We get each child name and see if it matches + the include and exclude filters. If the child is a container we recurse + into that container. + + + + The instance of the provider to use. + + + + The path to the item to get the children from. + + + + Recurse into sub-containers when getting children. + + + + The context under which the command is running. + + + + The count of items that do not match any include/exclude criteria. + + + Indicates if this is a Enumerate/Remove operation + + a hint used to skip IsItemContainer checks + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the get-childitem cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The delete should occur in all sub-containers of the specified path. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the get-childitem cmdlet. + + + + The path to the item if it was specified on the command line. + + + + If true, all child items in the subtree should be returned. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets names of the children of the specified path. + + + + The paths to the items from which to retrieve the child names. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + If true, gets all the relative paths of all the children + in all the sub-containers of the specified + container. If false, only gets the immediate child names of the specified + container. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + An array of strings that contains the names of the children of the specified + container. + + + + The child names are the leaf portion of the path. Example, for the file system + the name for the path c:\windows\system32\foo.dll would be foo.dll or for + the directory c:\windows\system32 would be system32. For Active Directory the + child names would be RDN values of the child objects of the container. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets names of the children of the specified path. + + + + The path to the item from which to retrieve the child names. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + If true, gets all the relative paths of all the children + in all the sub-containers of the specified + container. If false, only gets the immediate child names of the specified + container. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + The context which the core command is running. + + + + Nothing is returned, but all names should be written to the context object. + + + + The child names are the leaf portion of the path. Example, for the file system + the name for the path c:\windows\system32\foo.dll would be foo.dll or for + the directory c:\windows\system32 would be system32. For Active Directory the + child names would be RDN values of the child objects of the container. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the child names of the item at the specified path by + manually recursing through all the containers instead of + allowing the provider to do the recursion. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The path the name is relative to. + + + + If true all names in the subtree should be returned. + + + + Current depth of recursion; special case uint.MaxValue performs full recursion. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + A set of filters that the names must match to be returned. + + + + A set of filters that the names cannot match to be returned. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the names of the children of the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the get-childitem -name cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the get-childitem -names cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Renames the item at the specified path to the new name provided. + + + + The path to the item to rename. + + + + The name to which the item should be renamed. This name should always be + relative to the parent container. + + + + Passed on to providers to force operations. + + + + The item that was renamed at the specified path. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Renames the item at the specified path to the new name provided. + + + + The path to the item to rename. + + + + The name to which the item should be renamed. This name should always be + relative to the parent container. + + + + The context which the core command is running. + + + + Nothing. All items that are renamed are written into the context object. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Renames the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The new name of the item. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the rename-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name to which the item should be renamed. This name should always be + relative to the parent container. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the rename-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The new name of the item. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Creates a new item at the specified path. + + + + The path(s) to the container(s) to create the item in. + + + + The name of the item to create. + + + + The provider specific type of the object to be created. + + + + The content of the new item to create. + + + + Passed on to providers to force operations. + + + + The item(s) that was created. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Creates a new item at the specified path. + + + + The path(s) to the item(s) to create. + + + + The name of the item to create. + + + + The provider specific type of the item to be created. + + + + The content to create the new item with. + + + + The context which the core command is running. + + + + Nothing. The item created is written to the context object. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Creates a new item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The type of the item to create. + + + + The content of the item to create. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the new-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The provider specific type of the item to be created. + + + + The content to create the new item with. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the new-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The type of the new item. + + + + The value of the new item + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Determines if the item at the specified path has children. + + + + The path to the item to see if it has children. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + True if the item has children, false otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Determines if the item at the specified path has children. + + + + The path to the item to see if it has children. + + + + The context which the core command is running. + + + + True if the item has children, false otherwise. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Determines if the item at the specified path has children. + + + + The provider to use. + + + + The path to the item if it was specified on the command line. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Determines if the item at the specified path has children. + + + + The provider to use. + + + + The path to the item if it was specified on the command line. + + + + The context under which the command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Determines if the item at the specified path has children. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Copies an item at the specified path to an item at the . + + + + The path(s) of the item(s) to copy. + + + + The path of the item to copy to. + + + + Tells the provider to recurse sub-containers when copying. + + + + Determines how the source container is used in the copy operation. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The objects that were copied. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Copies an item at the specified path to an item at the . + + + + The path(s) of the item(s) to copy. + + + + The path of the item to copy to. + + + + Tells the provider to recurse sub-containers when copying. + + + + Determines how the source container is used in the copy operation. + + + + The context which the core command is running. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Copies the specified item(s) to the specified destination + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The path to copy the item(s) to. + + + + If true all sub-containers and their children should be copied. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Recursively copies many items to a single container + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The path to copy the item(s) to. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the copy-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The path of the item to copy to. + + + + Tells the provider to recurse sub-containers when copying. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the copy-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The path to copy the item to. + + + + If true, subcontainers and their children should be copied. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the content reader for the specified item. + + + + The path(s) to the item(s) to get the content reader for. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The content readers for all items that the path resolves to. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the content reader for the specified item. + + + + The path(s) to the item(s) to get the content reader from. + + + + The context which the core command is running. + + + + The content readers for all items that the path resolves to. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the content reader for the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the get-content cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the get-content cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the content writer for the specified item. + + + + The path(s) to the item(s) to get the content writer for. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The content writers for all items that the path resolves to. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the content writer for the specified item. + + + + The path(s) to the item(s) to get the content writer from. + + + + The context which the core command is running. + + + + The content writers for all items that the path resolves to. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the content writer for the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the set-content and add-content cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the set-content and add-content cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Clears all the content from the specified item. + + + + The path(s) to the item(s) to clear the content from. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Clears all of the content from the specified item. + + + + The path to the item to clear the content from. + + + + The context which the core command is running. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Clears the content from the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the clear-content cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Calls the provider to get the clear-content dynamic parameters + + + + The instance of the provider to call + + + + The path to pass to the provider. + + + + The context the command is executing under. + + + + The dynamic parameter object returned by the provider. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + The currently active drive. It determines the current working directory. + + + + + Adds the specified drive to the current scope. + + + + The drive to be added to the current scope. + + + + The ID for the scope to add the drive to. The scope ID can be any of the + "special" scope identifiers like "global", "local", or "private" or it + can be a numeric identifier that is a count of the number of parent + scopes up from the current scope to put the drive in. + If this parameter is null or empty the drive will be placed in the + current scope. + + + + The drive that was added, if any. + + + + If is null. + + + + If the drive already exists, + or + If .Name contains one or more invalid characters; ~ / \\ . : + + + + If the provider is not a DriveCmdletProvider. + + + + The provider for the could not be found. + + + + If the provider threw an exception or returned null. + + + + If creating the drive will overflow the MaximumDriveCount limit. + + + + + + Adds a drive to the PowerShell namespace. + + + + The new drive to be added. + + + + The ID for the scope to add the drive to. The scope ID can be any of the + "special" scope identifiers like "global", "local", or "private" or it + can be a numeric identifier that is a count of the number of parent + scopes up from the current scope to put the drive in. + If this parameter is null or empty the drive will be placed in the + current scope. + + + + The context which the core command is running. + + + + If or is null. + + + + If the drive already exists + or + If .Name contains one or more invalid characters; ~ / \\ . : + + + + If is less than zero or greater than the number of currently + active scopes. + + + + If the provider is not a DriveCmdletProvider. + + + + The provider for the could not be found. + + + + If the provider threw an exception or returned null. + + + + If creating the drive will overflow the MaximumDriveCount limit. + + + + + + Tries to resolve the drive root as an MSH path. If it successfully resolves + to a single path then the resolved provider internal path is returned. If it + does not resolve to a single MSH path the root is returned as it was passed. + + + + The root path of the drive to be resolved. + + + + The provider that should be used when resolving the path. + + + + The new root path of the drive. + + + + + + Gets an object that defines the additional parameters for the NewDrive implementation + for a provider. + + + + The provider ID for the drive that is being created. + + + + The context under which this method is being called. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the is not a DriveCmdletProvider. + + + + If does not exist. + + + + + + Searches through the session state scopes to find a drive + + + + The name of a drive to find. + + + + The drive information if the drive is found. + + + + If is null. + + + + If there is no drive with . + + + + + + Searches through the session state scopes looking + for a drive of the specified name. + + + + The name of the drive to return. + + + + The scope ID of the scope to look in for the drive. + If this parameter is null or empty the drive will be + found by searching the scopes using the dynamic scoping + rules. + + + + The drive for the given name in the given scope or null if + the drive was not found. + + + + If is null. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + Auto-mounts a built-in drive. + + The name of the drive to load + + + + + Determines if the specified automounted drive still exists. If not, + the drive is removed. + + + + The drive to validate or remove. + + + + The scope the drive is in. This will be used to remove the drive + if necessary. + + + + True if the drive is still valid, false if the drive was removed. + + + + + + If a VHD is mounted to a drive prior to the PowerShell session being launched, + then such a drive has to be validated for its existance before performing + any operations on that drive to make sure that the drive is not unmounted. + + + Absence of mounted drive for FileSystem provider or False for other provider types. + + + + Gets all the drives for a specific provider + + + + The identifier for the provider to retrieve the drives for. + + + + An IEnumerable that contains the drives for the specified provider. + + + + + + Removes the drive with the specified name. + + + + The name of the drive to remove. + + + + Determines whether drive should be forcefully removed even if there was errors. + + + + The ID of the scope from which to remove the drive. + If the scope ID is null or empty, the scope hierarchy will be searched + starting at the current scope through all the parent scopes to the + global scope until a drive of the given name is found to remove. + + + + + + Removes the drive with the specified name. + + + + The name of the drive to remove. + + + + Determines whether drive should be forcefully removed even if there was errors. + + + + The ID of the scope from which to remove the drive. + If the scope ID is null or empty, the scope hierarchy will be searched + starting at the current scope through all the parent scopes to the + global scope until a drive of the given name is found to remove. + + + + The context of the command. + + + + + + Removes the specified drive. + + + + The drive to be removed. + + + + Determines whether drive should be forcefully removed even if there was errors. + + + + The ID of the scope from which to remove the drive. + If the scope ID is null or empty, the scope hierarchy will be searched + starting at the current scope through all the parent scopes to the + global scope until a drive of the given name is found to remove. + + + + + + Removes the specified drive. + + + + The drive to be removed. + + + + Determines whether drive should be forcefully removed even if there was errors. + + + + The ID of the scope from which to remove the drive. + If the scope ID is null or empty, the scope hierarchy will be searched + starting at the current scope through all the parent scopes to the + global scope until a drive of the given name is found to remove. + + + + The context which the core command is running. + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + Determines if the drive can be removed by calling the provider + for the drive. + + + + The drive to test for removal. + + + + The context under which the command is running. + + + + True if the drive can be removed, false otherwise. + + + + If or is null. + + + + If the provider threw an exception when RemoveDrive was called. + + + + + + Gets an enumerable list of the drives that are mounted in + the specified scope. + + + + The scope to retrieve the drives from. If null or empty, + all drives from all scopes will be retrieved. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + Gets or sets the current working drive + + + + + Creates a new property on the specified item + + + + The path(s) to the item(s) on which the new property should be created. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + A property table containing the properties and their values. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Creates a new property on the specified item + + + + The path(s) to the item(s) on which the new property should be created. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + The context which the core command is running. + + + + Nothing. The property should be passed to the context as a PSObject. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Creates a new property on the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to create. + + + + The type of the property to create. + + + + The value of the property to create. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the new-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the new-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to create. + + + + The type of the property to create. + + + + The value of the property. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Removes the specified property from the specified item. + + + + The path(s) to the item(s) to remove the property from. + + + + The name of the property to remove + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Removes the specified properties from the specified item. + + + + The path(s) to the item(s) to remove the properties from. + + + + The name of the property to remove + + + + The context which the core command is running. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Removes the property from the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to remove. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the remove-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name of the property that should be created. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the remove-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to remove. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Copies the specified property on the specified item to the specified property + on the destination item. The source and destination items can be the same item. + + + + The path(s) to the item(s) to copy the property from. + + + + The name of the property to be copied. + + + + The path to the item to copy the property to. + + + + The name of the property to copy the property to. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + If , , + , or + is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Copies the specified property on the specified item to the specified property + on the destination item. The source and destination items can be the same item. + + + + The path(s) to the item(s) to copy the property from. + + + + The name of the property to be copied. + + + + The path to the item to copy the property to. + + + + The name of the property to copy the property to. + + + + The context which the core command is running. + + + + If , , + , or + is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Copies the property + + + + The instance of the provider to use. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to be copied. + + + + The path to the item to copy the property to. + + + + The name of the property to copy the property to. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the copy-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to be copied. + + + + The path to the item to copy the property to. + + + + The name of the property to copy the property to. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the copy-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The instance of the provider to use. + + + + The name of the property to copy. + + + + The path to the item to copy the property to. + + + + The name of the property to copy the property to on the destination item. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Moves the specified property on the specified item to the specified property + on the destination item. The source and destination items can be the same item. + + + + The path(s) to the item(s) to move the property from. + + + + The name of the property to be moved. + + + + The path to the item to move the property to. + + + + The name of the property to move the property to. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + If , , + , or + is null. + + + + If resolves to more than one item. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Moves the specified property on the specified item to the specified property + on the destination item. The source and destination items can be the same item. + + + + The path(s) to the item(s) to move the property from. + + + + The name of the property to be moved. + + + + The path to the item to move the property to. + + + + The name of the property to move the property to. + + + + The context which the core command is running. + + + + If , , + , or + is null. + + + + If resolves to more than one item. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Moves the property from one item to another + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The property to be moved. + + + + The path of the item to move the property to. + + + + The name of the property to move the property to. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the move-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to be moved. + + + + The path to the item to move the property to. + + + + The name of the property to move the property to. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the move-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to move. + + + + The path to the item to move the property to. + + + + The name of the property on the destination item to move the property to. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Renames the specified property on the specified item to the specified property. + + + + The path(s) to the item(s) to rename the property on. + + + + The name of the property to be renamed. + + + + The name of the property to rename the property to. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + If , , + or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Renames the specified property on the specified item to the specified property. + + + + The path(s) to the item(s) to rename the property on. + + + + The name of the property to be renamed. + + + + The name of the property to rename the property to. + + + + The context which the core command is running. + + + + If , , + or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Renames the property of the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to rename. + + + + The new name of the property. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the rename-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to be renamed. + + + + The name of the property to rename the property to. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the rename-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The instance of the provider to use. + + + + The name of the property to rename. + + + + The new name for the property. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Add an new SessionState function entry to this session state object... + + The entry to add + + + + Gets a flattened view of the functions that are visible using + the current scope as a reference and filtering the functions in + the other scopes based on the scoping rules. + + + + An IDictionary representing the visible functions. + + + + + + Gets an IEnumerable for the function table for a given scope + + + + A scope identifier that is either one of the "special" scopes like + "global", "script", "local", or "private, or a numeric ID of a relative scope + to the current scope. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + List of functions/filters to export from this session state object... + + + + + List of workflows to export from this session state object... + + + + + Set to true when module functions are being explicitly exported using Export-ModuleMember + + + + + Set to true when any processed module functions are being explicitly exported using '*' wildcard + + + + + Set to true if module loading is performed under a manifest that explicitly exports functions (no wildcards) + + + + + Get a functions out of session state. + + + + name of function to look up + + + + Origin of the command that called this API... + + + + The value of the specified function. + + + + If is null or empty. + + + + + + Get a functions out of session state. + + + + name of function to look up + + + + The value of the specified function. + + + + If is null or empty. + + + + + + Set a function in the current scope of session state. + + + + The name of the function to set. + + + + The new value of the function being set. + + + + Origin of the caller of this API + + + + If is null or empty. + + + + If is null. + + + + If the function is read-only or constant. + + + + If the maximum number of functions have been reached for this scope. + + + + + + Set a function in the current scope of session state. + + + + The name of the function to set. + + + + The new value of the function being set. + + + + The original function (if any) from which the ScriptBlock is derived. + + + + The options to set on the function. + + + + If true, the function will be set even if its ReadOnly. + + + + Origin of the caller of this API + + + If is null or empty. + + + + If is null. + + + + If the function is read-only or constant. + + + + If the maximum number of functions have been reached for this scope. + + + + + + Set a function in the current scope of session state. + + + + The name of the function to set. + + + + The new value of the function being set. + + + + The original function (if any) from which the ScriptBlock is derived. + + + + The options to set on the function. + + + + If true, the function will be set even if its ReadOnly. + + + + Origin of the caller of this API + + + + The name of the help file associated with the function. + + + + If is null or empty. + + + + If is null. + + + + If the function is read-only or constant. + + + + If the maximum number of functions have been reached for this scope. + + + + + + Set a function in the current scope of session state. + + + + The name of the function to set. + + + + The new value of the function being set. + + + + The original function (if any) from which the ScriptBlock is derived. + + + + The options to set on the function. + + + + If true, the function will be set even if its ReadOnly. + + + + Origin of the caller of this API + + + + The execution context for the function. + + + + The name of the help file associated with the function. + + + If is null or empty. + + + + If is null. + + + + If the function is read-only or constant. + + + + If the maximum number of functions have been reached for this scope. + + + + + + Set a function in the current scope of session state. + + + + The name of the function to set. + + + + The new value of the function being set. + + + + The original function (if any) from which the ScriptBlock is derived. + + + + The options to set on the function. + + + + If true, the function will be set even if its ReadOnly. + + + + Origin of the caller of this API + + + + The execution context for the function. + + + + The name of the help file associated with the function. + + + + Set to true if it is a regular function (meaning, we do not need to check this is a workflow or if the script contains JobDefinition Attribute and then process it) + + + + If is null or empty. + + + + If is null. + + + + If the function is read-only or constant. + + + + If the maximum number of functions have been reached for this scope. + + + + + + Set a function in the current scope of session state. + + + + The name of the function to set. + + + + The new value of the function being set. + + + + The original function (if any) from which the ScriptBlock is derived. + + + + If true, the function will be set even if its ReadOnly. + + + + The origin of the caller + + + + If is null or empty. + or + If is not a FilterInfo + or FunctionInfo + + + + If is null. + + + + If the function is read-only or constant. + + + + If the maximum number of functions have been reached for this scope. + + + + + + Set a function in the current scope of session state. + + BUGBUG: this overload is preserved because a lot of tests use reflection to + call it. The tests should be fixed and this API eventually removed. + + + + The name of the function to set. + + + + The new value of the function being set. + + + + If true, the function will be set even if its ReadOnly. + + + + If is null or empty. + or + If is not a FilterInfo + or FunctionInfo + + + + If is null. + + + + If the function is read-only or constant. + + + + If the maximum number of functions have been reached for this scope. + + + + + + Removes a function from the function table. + + + + The name of the function to remove. + + + + THe origin of the caller of this API + + + + If true, the function is removed even if it is ReadOnly. + + + + If is null or empty. + + + + If the function is constant. + + + + + + Removes a function from the function table. + + + + The name of the function to remove. + + + + If true, the function is removed even if it is ReadOnly. + + + + If is null or empty. + + + + If the function is constant. + + + + + + Removes a function from the function table + if the function was imported from the given module. + + BUGBUG: This is only used by the implict remoting functions... + + + + The name of the function to remove. + + + + Module the function might be imported from. + + + + If the function is constant. + + + + + + Gets the specified object + + + + The path(s) to the object(s). They can be either a relative (most common) + or absolute path. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The item at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the specified object + + + + The path(s) to the object(s). They can be either a relative (most common) + or absolute path. + + + + The context which the core command is running. + + + + Nothing is returned, but all objects should be written to the WriteObject + method of the parameter. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the get-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the get-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the specified object + + + + The path(s) to the object. It can be either a relative (most common) + or absolute path. + + + + The new value for the item at the specified path. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The item that was modified at the specified path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Sets the specified object to the specified value + + + + The path(s) to the object. It can be either a relative (most common) + or absolute path. + + + + The new value of the item at the specified path. + + + + The context which the core command is running. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Sets item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The value of the item. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the set-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The new value of the item at the specified path. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the set-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The instance of the provider to use. + + + + The value to be set. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Clears the specified object. Depending on the provider that the path + maps to, this could mean the properties and/or content and/or value is + cleared. + + + + The path(s) to the object. It can be either a relative (most common) + or absolute path. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The items that were cleared. + + + + If an error occurs that error will be thrown. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Clears the specified item. Depending on the provider that the path + maps to, this could mean the properties and/or content and/or value is + cleared. + + + + The path(s) to the object. It can be either a relative (most common) + or absolute path. + + + + The context which the core command is running. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Clears the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the clear-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the clear-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Performs the default action on the specified item. The default action is + determined by the provider. + + + + The path(s) to the object(s). They can be either a relative (most common) + or absolute path(s). + + + + If true, globbing is not done on paths. + + + + If an error occurs that error will be thrown. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Performs the default action on the specified item. The default action + is determined by the provider. + + + + The path(s) to the object(s). They can be either a relative (most common) + or absolute paths. + + + + The context which the core command is running. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Invokes the default action on the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the invoke-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the invoke-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the current monad namespace specific working location. If + you want to change the current working directory use the SetLocation + method. + + + + If a location has not been set yet. + + + + + + Gets the namespace specific path of the current working directory + for the specified namespace. + + + + An identifier that uniquely identifies the namespace to get the + current working directory for. + + + + The namespace specific path of the current working directory for + the specified namespace. + + + + If is null. + + + + If refers to a provider that does not exist. + + + + If a current drive cannot be found for the provider + + + + + + Changes the current working directory to the path specified + + + + The path of the new current working directory + + + + The PathInfo object representing the path of the location + that was set. + + + + If is null. + + + + If does not exist, is not a container, or + resolved to multiple containers. + + + + If refers to a provider that does not exist. + + + + If refers to a drive that does not exist. + + + + If the provider associated with threw an + exception. + + + + + + Changes the current working directory to the path specified + + + + The path of the new current working directory + + + + The context the provider uses when performing the operation. + + + + The PathInfo object representing the path of the location + that was set. + + + + If is null. + + + + If does not exist, is not a container, or + resolved to multiple containers. + + + + If refers to a provider that does not exist. + + + + If refers to a drive that does not exist. + + + + If the provider associated with threw an + exception. + + + + If the could not be resolved. + + + + + + Determines if the specified path is the current working directory + or a parent of the current working directory. + + + + A monad namespace absolute or relative path. + + + + The context the provider uses when performing the operation. + + + + true, if the path is the current working directory or a parent of the current + working directory. false, otherwise. + + + + If is null. + + + + If the path is a provider-qualified path for a provider that is + not loaded into the system. + + + + If the refers to a drive that could not be found. + + + + If the provider used to build the path threw an exception. + + + + If the provider that the represents is not a NavigationCmdletProvider + or ContainerCmdletProvider. + + + + If the starts with "~" and the home location is not set for + the provider. + + + + If the provider specified by threw an + exception when its GetParentPath or MakePath was called while + processing the . + + + + + + A stack of the most recently pushed locations + + + + + The name of the default location stack + + + + + Pushes the current location onto the working + location stack so that it can be retrieved later. + + + + The ID of the stack to push the location on. If + it is null or empty the default stack is used. + + + + + + Resets the current working drive and directory to the first + entry on the working directory stack and removes that entry + from the stack. + + + + The ID of the stack to pop the location from. If it is null or + empty the default stack is used. + + + + A PathInfo object representing the location that was popped + from the location stack and set as the new location. + + + + If the path on the stack does not exist, is not a container, or + resolved to multiple containers. + or + If contains wildcard characters and resolves + to multiple location stacks. + or + A stack was not found with the specified name. + + + + If the path on the stack refers to a provider that does not exist. + + + + If the path on the stack refers to a drive that does not exist. + + + + If the provider associated with the path on the stack threw an + exception. + + + + + + Gets the monad namespace paths for all the directories that are + pushed on the working directory stack. + + + + The stack of the ID of the location stack to retrieve. If it is + null or empty the default stack is used. + + + + The PathInfoStack representing the location stack for the specified + stack ID. + + + + If no location stack exists except if + the default stack is requested. + + + + + + Sets the default stack ID to the specified stack ID + + + + The stack ID to be used as the default. + + + + The PathInfoStack for the new default stack or null if the + stack does not exist yet. + + + + If does not exist as a location stack. + + + + + + Gets the path to the parent object for the given object + + + + The path to the object to get the parent path from + + + + The root of the drive. + + + + The path to the parent object + + + + If is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the path to the parent object for the given object + + + + The path to the object to get the parent path from + + + + The root of the drive. Namespace providers should + return the root if GetParentPath is called for the root. + + + + The context which the core command is running. + + + + The path to the parent object + + + + If is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the path to the parent object for the given object. + Allow to use FileSystem as the default provider when the + given path is drive-qualified and the drive cannot be found. + + + + The path to the object to get the parent path from + + + + The root of the drive. Namespace providers should + return the root if GetParentPath is called for the root. + + + + The context which the core command is running. + + + + Specify whether to use default provider when needed. + + + + The path to the parent object + + + + + Removes either the drive or provider qualifier or both from the path. + + + + The path to strip the provider qualifier from. + + + + Returns the qualifier of the path. + + + + Returns true if the path is a provider-qualified path. + + + + Returns true if the path is a drive-qualified path. + + + + The path without the qualifier. + + + + + + Gets the path to the parent object for the given object + + + + The provider that should handle the GetParentPath call. + + + + The path to the object to get the parent path from + + + + The root of the drive. Namespace providers should + return the root if GetParentPath is called for the root. + + + + The context which the core command is running. + + + + The path to the parent object + + + + This is internal so that it can be called from the LocationGlobber. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the path to the parent object for the given object + + + + The instance of the provider that should handle the GetParentPath call. + + + + The path to the object to get the parent path from + + + + The root of the drive. Namespace providers should + return the root if GetParentPath is called for the root. + + + + The context which the core command is running. + + + + The path to the parent object + + + + This is internal so that it can be called from the LocationGlobber. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Normalizes the path that was passed in and returns the normalized path + as a relative path to the basePath that was passed. + + + + An MSH path to an item. The item should exist + or the provider should write out an error. + + + + The path that the return value should be relative to. + + + + A normalized path that is relative to the basePath that was passed. + + + + If is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Normalizes the path that was passed in and returns the normalized path + as a relative path to the basePath that was passed. + + + + An MSH path to an item. The item should exist + or the provider should write out an error. + + + + The path that the return value should be relative to. + + + + The context under which the command is running. + + + + A normalized path that is relative to the basePath that was passed. + + + + If is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Tests the specified character for equality with one of the powershell path separators and + returns true if it matches. + + The character to test + True if the character is a path separator. + + + + Normalizes the path that was passed in and returns the normalized path + as a relative path to the basePath that was passed. + + + + The provider to use to normalize the path. + + + + An provider internal path to normalize. + + + + The path that the return value should be relative to. + + + + The context under which the command is running. + + + + A normalized path that is relative to the basePath that was passed. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Generates a path from the given parts. + + + + The parent segment of the path to be joined with the child. + + + + The child segment of the ath to be joined with the parent. + + + + The generated path. + + + + If is null. + + + + If both and is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Generates a path from the given parts. + + + + The parent segment of the path to be joined with the child. + + + + The child segment of the ath to be joined with the parent. + + + + The context which the core command is running. + + + + The generated path. + + + + If is null. + + + + If both and is null. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Uses the specified provider to put the two parts of a path together + + + + The provider to use. + + + + The parent part of the path to join with the child. + + + + The child part of the path to join with the parent. + + + + The context under which the command is running. + + + + The combined path. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Uses the specified provider to put the two parts of a path together + + + + The provider instance to use. + + + + The parent part of the path to join with the child. + + + + The child part of the path to join with the parent. + + + + The context under which the command is running. + + + + The combined path. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the name of the leaf element in the specified path. + + + + The fully qualified path to the item + + + + The leaf element in the path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the name of the leaf element in the specified path. + + + + The fully qualified path to the item + + + + The context which the core command is running. + + + + The leaf element in the path. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the name of the leaf element in the specified path. + Allow to use FileSystem as the default provider when the + given path is drive-qualified and the drive cannot be found. + + + + The fully qualified path to the item + + + + The context which the core command is running. + + + + to use default provider when needed. + + + + The leaf element in the path. + + + + + Gets the leaf element of the specified path. + + + + The provider to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the leaf element of the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The context which the core command is running. + + + + Specify True if the method should just return the Path if the + provider doesn't support container overloads. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Moves the item specified by path to the specified destination. + + + + The path(s) to the item(s) to be moved. + + + + The path of the destination container. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + The item(s) that were moved. + + + + If is null. + + + + If resolves to multiple paths. + or + If and don't resolve + to the same provider. + or + If resolves to multiple paths and + is not a container. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Moves the item specified by path to the specified destination. + + + + The path(s) to the item(s) to be moved. + + + + The path of the destination container. + + + + The context which the core command is running. + + + + Nothing. All items that are moved are written into the context object. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Moves the item at the specified path to the destination path + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The path to where the item should be moved. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the move-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The path to move the item to. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the move-item cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The path to where the item should be moved. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the specified properties from the specified item. + + + + The path(s) to the item(s) to get the properties from. + + + + A list of the properties that the provider should return. + + + + If true, globbing is not done on paths. + + + + A property table container the properties and their values. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Gets the specified properties from the specified item. + + + + The path(s) to the item(s) to get the properties from. + + + + A list of the properties that the provider should return. + + + + The context which the core command is running. + + + + Nothing. A PSObject representing the properties should be written to the + context. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the property from the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The names of the properties to get. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the get-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + A list of the properties that the provider should return. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the get-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The names of the properties to get. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Sets the specified properties on the specified item. + + + + The path(s) to the item(s) to set the properties on. + + + + A PSObject containing the properties to be changed. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + An array of PSObjects representing the properties that were set on each item. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Sets the specified properties on specified item. + + + + The path(s) to the item(s) to set the properties on. + + + + A property table containing the properties and values to be set on the object. + + + + The context which the core command is running. + + + + Nothing. A PSObject is passed to the context for the properties on each item + that were modified. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Sets the property of the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to set. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the clear-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + A property table containing the properties and values to be set on the object. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the set-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The value of the property to set. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Clears the specified property on the specified item. + + + + The path(s) to the item(s) to clear the property on. + + + + The name of the property to clear. + + + + Passed on to providers to force operations. + + + + If true, globbing is not done on paths. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Clears the specified property in the specified item. + + + + The path(s) to the item(s) to clear the property on. + + + + A property table containing the property to clear. + + + + The context which the core command is running. + + + + If or is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Clears the value of the property from the item at the specified path. + + + + The provider instance to use. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to clear. + + + + The context which the core command is running. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + Gets the dynamic parameters for the clear-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + A property table containing the property to clear. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + If does not contain glob characters and + could not be found. + + + + + + Gets the dynamic parameters for the clear-itemproperty cmdlet. + + + + The path to the item if it was specified on the command line. + + + + The name of the property to clear. + + + + The instance of the provider to use. + + + + The context which the core command is running. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + If the does not support this operation. + + + + If the pipeline is being stopped while executing the command. + + + + If the provider threw an exception. + + + + + + A collection of the providers. Any provider in this collection can + have drives in any scope in session state. + + + + + Stores the current working drive for each provider. This + allows for retrieving the current working directory for each + individual provider. + + + + + Gets called by the RunspaceConfiguration when a PSSnapin gets added or removed. + + + + + + Entrypoint used by to add a provider to the current session state + based on a SessionStateProviderEntry. + + + + + + Internal method used by RunspaceConfig for updatting providers. + + + + + + Determines the appropriate provider for the drive and then calls the NewDrive + method of that provider. + + + + The drive to have the provider verify. + + + + The command context under which the drive is being added. + + + + If true, the drive root will be resolved as an MSH path before verifying with + the provider. If false, the path is assumed to be a provider-internal path. + + + + The instance of the drive to be added as approved by the provider. + + + + If the provider is not a DriveCmdletProvider. + + + + The provider for the could not be found. + + + + If the provider throws an exception while validating the drive. + + + + + + Gets an instance of a provider given the provider ID. + + + + The identifier for the provider to return an instance of. + + + + An instance of the specified provider. + + + + If is null. + + + + If the refers to a provider that doesn't exist or + the name passed matched multiple providers. + + + + + + Gets an instance of a provider given the provider information. + + + + The provider to return an instance of. + + + + An instance of the specified provider. + + + + If is null. + + + + + + Creates an exception for the case where the provider name matched multiple providers. + + + + The name of the provider. + + + + The ProviderInfo of the possible matches. + + + + An exception representing the error with a message stating which providers are possible matches. + + + + + + Gets an instance of an DriveCmdletProvider given the provider ID. + + + + The provider ID of the provider to get an instance of. + + + + An instance of a DriveCmdletProvider for the specified provider ID. + + + + if is null. + + + + if the is not for a provider + that is derived from NavigationCmdletProvider. + + + + If the refers to a provider that doesn't exist. + + + + + + Gets an instance of an DriveCmdletProvider given the provider information. + + + + The provider to get an instance of. + + + + An instance of a DriveCmdletProvider for the specified provider. + + + + if is null. + + + + if the is not for a provider + that is derived from NavigationCmdletProvider. + + + + + + Gets an instance of an DriveCmdletProvider given the provider ID. + + + + The instance of the provider to use. + + + + An instance of a DriveCmdletProvider for the specified provider ID. + + + + if is null. + + + + if the is not for a provider + that is derived from DriveCmdletProvider. + + + + + + Gets an instance of an ItemCmdletProvider given the provider ID. + + + + The provider ID of the provider to get an instance of. + + + + An instance of a ItemCmdletProvider for the specified provider ID. + + + + if is null. + + + + if the is not for a provider + that is derived from NavigationCmdletProvider. + + + + If the refers to a provider that doesn't exist. + + + + + + Gets an instance of an ItemCmdletProvider given the provider. + + + + The provider to get an instance of. + + + + An instance of a ItemCmdletProvider for the specified provider. + + + + if is null. + + + + if the is not for a provider + that is derived from NavigationCmdletProvider. + + + + + + Gets an instance of an ItemCmdletProvider given the provider ID. + + + + The instance of the provider to use. + + + + An instance of a ItemCmdletProvider for the specified provider ID. + + + + if is null. + + + + if the is not for a provider + that is derived from ItemCmdletProvider. + + + + + + Gets an instance of an ContainerCmdletProvider given the provider ID. + + + + The provider ID of the provider to get an instance of. + + + + An instance of a ContainerCmdletProvider for the specified provider ID. + + + + if is null. + + + + if the is not for a provider + that is derived from NavigationCmdletProvider. + + + + If the refers to a provider that doesn't exist. + + + + + + Gets an instance of an ContainerCmdletProvider given the provider. + + + + The provider to get an instance of. + + + + An instance of a ContainerCmdletProvider for the specified provider. + + + + if is null. + + + + if the is not for a provider + that is derived from NavigationCmdletProvider. + + + + + + Gets an instance of an ContainerCmdletProvider given the provider ID. + + + + The instance of the provider to use. + + + + An instance of a ContainerCmdletProvider for the specified provider ID. + + + + if is null. + + + + if the is not for a provider + that is derived from ContainerCmdletProvider. + + + + + + Gets an instance of an NavigationCmdletProvider given the provider. + + + + The provider to get an instance of. + + + + An instance of a NavigationCmdletProvider for the specified provider ID. + + + + if is null. + + + + if the is not for a provider + that is derived from NavigationCmdletProvider. + + + + + + Gets an instance of an NavigationCmdletProvider given the provider ID. + + + + The instance of the provider to use. + + + + Specify True if the method should just return the Path if the + provider doesn't support container overloads. + + + + An instance of a NavigationCmdletProvider for the specified provider ID. + + + + if is null. + + + + if the is not for a provider + that is derived from NavigationCmdletProvider. + + + + + + Determines if the specified CmdletProvider is loaded. + + + + The name of the CmdletProvider. + + + + true if the CmdletProvider is loaded, or false otherwise. + + + + If is null or empty. + + + + + + Gets the provider of the specified name + + + + The name of the provider to retrieve + + + + The provider of the given name + + + + If is null or empty. + + + + The provider with the specified + could not be found. + + + + + + Gets the provider of the specified name + + + + The name of the provider to retrieve + + + + The provider of the given name + + + + If is null or empty. + + + + The provider with the specified + could not be found or the name was ambiguous. + If the name is ambiguous then the PSSnapin qualified name must + be specified. + + + + + + Gets all the CoreCommandProviders + + + + + + Copy the Providers from another session state instance... + + the session state instance to copy from... + + + + Initializes a provider by loading the assembly, creating an instance of the + provider, calling its start method followed by the InitializeDefaultDrives method. The + Drives that are returned from the InitializeDefaultDrives method are then mounted. + + + + An instance of the provider to use for the initialization. + + + + The provider to be initialized. + + + + The context under which the initialization is occurring. If this parameter is not + null, errors will be written to the WriteError method of the context. + + + + If or is null. + + + + If the provider is not a DriveCmdletProvider. + + + + If a drive already exists for the name of one of the drives the + provider tries to add. + + + + If the provider tries to add default drives which exceed the maximum + limit for the number of drives in the current scope. + + + + + + Creates and adds a provider to the provider container + + + + The provider to add. + + + + The provider that was added or null if the provider failed to be added. + + + + If is null. + + + + If the provider already exists. + + + + If there was a failure to load the provider or the provider + threw an exception. + + + + + + Creates an entry in the providers hashtable for the new provider. + + + + The provider being added. + + + + If a provider with the same name and PSSnapIn name already exists. + + + + + + Removes the provider of the given name. + + + + The name of the provider to remove. + + + + Determines if the provider should be removed forcefully even if there were + drives present or errors. + + + + The context under which the command is being run. + + + + If is null. + + + + There are still drives associated with this provider, + and the "force" option was not specified. + + + + A provider with name could not be found. + + + + If a provider throws an exception it gets written to the . + + + + If is null or empty. + + + + If is null. + + + + All drives associated with the provider must be removed before the provider + can be removed. Call SessionState.GetDrivesForProvider() to determine if there + are any drives associated with the provider. A SessionStateException + will be written to the context if any such drives do exist. + + + + + + Removes the provider from the providers dictionary. + + + + The provider to be removed. + + + + If there are multiple providers with the same name, then only the provider + from the matching PSSnapin is removed. + If the last provider of that name is removed the entry is removed from the dictionary. + + + + + + Gets the count of the number of providers that are loaded + + + + + + The current scope. It is either the global scope or + a nested scope within the global scope. The current + scope is implied or can be accessed using $local in + the shell. + + + + + Given a scope identifier, returns the proper session state scope. + + + + A scope identifier that is either one of the "special" scopes like + "global", "local", or "private, or a numeric ID of a relative scope + to the current scope. + + + + The scope identified by the scope ID or the current scope if the + scope ID is not defined as a special or numeric scope identifier. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + Given a scope ID, walks the scope list to the appropriate scope and returns it. + + + + The numeric indexer to the scope relative to the current scope. + + + + The scope at the index specified. The index is relative to the current + scope. + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + The global scope of session state. Can be accessed + using $global in the shell. + + + + + The module scope of a session state. This is only used internally + by the engine. There is no module scope qualifier. + + + + + Gets the session state current scope. + + + + + Gets the session state current script scope. + + + + + Creates a new scope in the scope tree and assigns the parent + and child scopes appropriately. + + + + If true, the new scope is pushed on to the script scope stack and + can be referenced using $script: + + + + A new SessionStateScope which is a child of the current scope. + + + + + + Removes the current scope from the scope tree and + changes the current scope to the parent scope. + + + + The scope to cleanup and remove. + + + + The global scope cannot be removed. + + + + + + Add an new SessionStateVariable entry to this session state object... + + The entry to add + + + + Get a variable out of session state. This interface supports + the scope specifiers like "global:foobar" + + + + name of variable to look up + + + + Origin of the command making this request. + + + + The specified variable. + + + + If is null. + + + + + + Get a variable out of session state. This interface supports + the scope specifiers like "global:foobar" + + + + name of variable to look up + + + + The specified variable. + + + + If is null. + + + + + + Get a variable out of session state. This interface supports + the "namespace:name" syntax so you can do things like + "env:PATH" or "global:foobar" + + + + name of variable to look up + + + + The value of the specified variable. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Get a variable out of session state. This interface supports + the "namespace:name" syntax so you can do things like + "env:PATH" or "global:foobar" + + + + name of variable to look up + + + + value to return if you can't find Name or it returns null. + + + + The value of the specified variable. + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Looks up the specified variable and returns the context under which + the variable was found as well as the variable itself. + + + + The VariablePath helper for the variable. + + + + The scope the variable was found in. Null if the variable wasn't found. + + + + Returns the context under which the variable was found. The context will + have the drive data already set. This will be null if the variable was + not found. + + + + The variable if it was found or null if it was not. + + + + The is first parsed to see if it contains a drive + specifier or special scope. If a special scope is found ("LOCAL" or "GLOBAL") + then only that scope is searched for the variable. If any other drive specifier + is found the lookup goes in the following order. + - current scope + - each consecutive parent scope until the variable is found. + - global scope + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Looks up the specified variable and returns the context under which + the variable was found as well as the variable itself. + + + + The VariablePath helper for the variable. + + + + The scope the variable was found in. Null if the variable wasn't found. + + + + Returns the context under which the variable was found. The context will + have the drive data already set. This will be null if the variable was + not found. + + + + The origin of the caller of this API + + + + The variable if it was found or null if it was not. + + + + The is first parsed to see if it contains a drive + specifier or special scope. If a special scope is found ("LOCAL" or "GLOBAL") + then only that scope is searched for the variable. If any other drive specifier + is found the lookup goes in the following order. + - current scope + - each consecutive parent scope until the variable is found. + - global scope + + + + If is null. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Looks up the specified variable and returns the context under which + the variable was found as well as the variable itself. + + + + The VariablePath helper for the variable. + + + + The scope the variable was found in. Null if the variable wasn't found. + + + + Origin of the command requesting this variable + + + + The variable if it was found or null if it was not. + + + + The is first parsed to see if it contains a drive + specifier or special scope. If a special scope is found ("LOCAL" or "GLOBAL") + then only that scope is searched for the variable. + - current scope + - each consecutive parent scope until the variable is found. + - global scope + + + + If is null. + + + + + + Looks up the specified variable and returns the context under which + the variable was found as well as the variable itself. + + + + The VariablePath helper for the variable. + + + + The scope the variable was found in. Null if the variable wasn't found. + + + + The variable if it was found or null if it was not. + + + + The is first parsed to see if it contains a drive + specifier or special scope. If a special scope is found ("LOCAL" or "GLOBAL") + then only that scope is searched for the variable. + - current scope + - each consecutive parent scope until the variable is found. + - global scope + + + + If is null. + + + + + + Get a variable out of session state. This interface supports + the "namespace:name" syntax so you can do things like + "env:PATH" or "global:foobar" + + + + name of variable to look up + + + + The ID of the scope to lookup the variable in. + + + + The value of the specified variable. + + + + If is null. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + Get a variable out of session state. This interface supports + the "namespace:name" syntax so you can do things like + "env:PATH" or "global:foobar" + + + + name of variable to look up + + + + The ID of the scope to lookup the variable in. + + + + The value of the specified variable. + + + + If is null. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Set a variable in session state. This interface supports + the "namespace:name" syntax so you can do things like + "$env:PATH = 'c:\windows'" or "$global:foobar = 13" + + + + The name of the item to set. + + + + The new value of the item being set. + + + + The origin of the caller of this API... + + + + If is null. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Set a variable in session state. This interface supports + the "namespace:name" syntax so you can do things like + "$env:PATH = 'c:\windows'" or "$global:foobar = 13" + + BUGBUG: this overload exists because a lot of tests in the + testsuite use it. Those tests should eventually be fixed and this overload + should be removed. + + + + The name of the item to set. + + + + The new value of the item being set. + + + + If is null. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Set a variable in session state. This interface supports + the scope specifiers like "$global:foobar = 13" + + + + The variable to be set. + + + + If true, the variable is set even if it is ReadOnly. + + + + The origin of the caller of this API + + + + A PSVariable object if refers to a variable. + An PSObject if refers to a provider path. + + + + If is null. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + + + Set a variable useing a pre-parsed variablePath object instead of a string. + + + + A pre-parsed variable path object for the variable in question. + + + + The value to set. + + + + If true, sets the variable value to newValue. If false, newValue must + be a PSVariable object and the item will be set rather than the value. + + + + The origin of the caller + + + + A PSVariable object if refers to a variable. + An PSObject if refers to a provider path. + + + + If is null. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Set a variable useing a pre-parsed variablePath object instead of a string. + + + + A pre-parsed variable path object for the variable in question. + + + + The value to set. + + + + If true, sets the variable value to newValue. If false, newValue must + be a PSVariable object and the item will be set rather than the value. + + + + If true, the variable is set even if it is ReadOnly. + + + + The origin of the caller + + + + A PSVariable object if refers to a variable. + An PSObject if refers to a provider path. + + + + If is null. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Set a variable in session state. + + + + The variable to set + + + + The ID of the scope to do the lookup in. The ID is either a zero based index + of the scope tree with the current scope being zero, its parent scope + being 1 and so on, or "global", "local", "private", or "script" + + + + If true, the variable is set even if it is ReadOnly. + + + + The origin of the caller + + + + If is null or its name is null or empty. + or + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + A PSVariable object if refers to a variable. + An PSObject if refers to a provider path. + + + + If is less than zero or greater than the number of currently + active scopes. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + + + Creates a new variable. + + + + The variable to create + + + + If true, the variable is created even if it is ReadOnly. + + + + A PSVariable representing the variable that was created. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + + + Creates a new variable in the specified scope + + + + The variable to create + + + + The ID of the scope to do the lookup in. The ID is either a zero based index + of the scope tree with the current scope being zero, its parent scope + being 1 and so on, or "global", "local", "private", or "script" + + + + If true, the variable is set even if it is ReadOnly. + + + + If is null or its name is null or empty. + or + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + A PSVariable representing the variable that was created. + + + + If is less than zero or greater than the number of currently + active scopes. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + + + Removes a variable from the variable table. + + + + The name of the variable to remove. + + + + If is null. + + + + if the variable is constant. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Removes a variable from the variable table. + + + + The name of the variable to remove. + + + + If true, the variable will be removed even if its ReadOnly. + + + + If is null. + + + + if the variable is constant. + + + + If the refers to a provider that could not be found. + + + + If the refers to a drive that could not be found. + + + + If the provider that the refers to does + not support this operation. + + + + If the provider threw an exception. + + + + + + Removes a variable from the variable table. + + + + The variable to remove. + + + + If is null. + + + + if the variable is constant. + + + + + + Removes a variable from the variable table. + + + + The variable to remove. + + + + If true, the variable will be removed even if its ReadOnly. + + + + If is null. + + + + if the variable is constant. + + + + + + Remove a variable from session state. This interface supports + the "namespace:name" syntax so you can do things like + "env:PATH" or "global:foobar" + + + + name of variable to remove + + + + The ID of the scope to lookup the variable in. + + + + If is null. + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + if the variable is constant. + + + + If refers to an MSH path (not a variable) + and the provider throws an exception. + + + + + + Remove a variable from session state. This interface supports + the "namespace:name" syntax so you can do things like + "env:PATH" or "global:foobar" + + + + name of variable to remove + + + + The ID of the scope to lookup the variable in. + + + + If true, the variable will be removed even if its ReadOnly. + + + + If is null or empty. + + + + If is less than zero or greater than the number of currently + active scopes. + + + + if the variable is constant. + + + + If refers to an MSH path (not a variable) + and the provider throws an exception. + + + + + + Remove a variable from session state. + + + + The variable to remove + + + + The ID of the scope to lookup the variable in. + + + + If is null. + + + + If is less than zero or greater than the number of currently + active scopes. + + + + if the variable is constant. + + + + + + Remove a variable from session state. + + + + The variable to remove + + + + The ID of the scope to lookup the variable in. + + + + If true, the variable will be removed even if its ReadOnly. + + + + If is null. + + + + If is less than zero or greater than the number of currently + active scopes. + + + + if the variable is constant. + + + + + + Gets a flattened view of the variables that are visible using + the current scope as a reference and filtering the variables in + the other scopes based on the scoping rules. + + + + An IDictionary representing the visible variables. + + + + + + Gets a flattened view of the variables that are visible using + the current scope as a reference and filtering the variables in + the other scopes based on the scoping rules. + + + + An IDictionary representing the visible variables. + + + + If is less than zero, or not + a number and not "script", "global", "local", or "private" + + + + If is less than zero or greater than the number of currently + active scopes. + + + + + + List of variables to export from this session state object... + + + + + This enum defines the dispatch origin of a command. + + + + + The command was submitted via a runspace. + + + + + The command was dispatched by the msh engine as a result of + a dispatch request from an already running command. + + + + + Defines the base class for an authorization manager of a Runspace. + + An authorization manager helps a host control and restrict the + execution of commands. For each of the command types listed in + the + enumeration, the engine requests permission from the AuthorizationManager + to run the command. + + Extending this class requires that you override the ShouldRun method with + the logic specific to your needs. The base class gives permission to run + every command. The default + Microsoft.PowerShell.PSAuthorizationManager + provides a customized and much more complete authorization policy. + + + + + Creates an instance of authorization manager using specified shellID + + + + + + + determine if we should run the specified file + + + info on entity to be run + + the dispatch origin of a command + + allows access to the host. + + + This method throws SecurityException in case running is not allowed. + + + + If the derived security manager threw an exception or returned + false with a reason. + + + + + + Get the shell ID from the authorization manager... + + + + + Determines if the host should run the command a specified by the CommandInfo parameter. + The default implementation gives permission to run every command. + + + Information about the command to be run + + The origin of the command + + The host running the command + + The reason for preventing execution, if applicable + + True if the host should run the command. False otherwise + + + + + Defines the attribute used to designate a cmdlet parameter as one that + should accept credentials. + + + + + Transforms the input data to an PSCredential. + + + + The engine APIs for the context under which the transformation is being + made. + + + + If Null, the transformation prompts for both Username and Password + If a string, the transformation uses the input for a username, and prompts + for a Password + If already an PSCredential, the transform does nothing. + + An PSCredential object representing the inputData. + + + + + + + Defines the valid status flags that a signature + on a file may have. + + + + + The file has a valid signature. This means only that + the signature is syntactically valid. It does not + imply trust in any way. + + + + + The file has an invalid signature. + + + + + The file has no signature. + + + + + The hash of the file does not match the hash stored + along with the signature. + + + + + The certificate was signed by a publisher not trusted + on the system. + + + + + The specified file format is not supported by the system + for signing operations. This usually means that the + system does not know how to sign or verify the file + type requested. + + + + + The signature cannot be verified because it is incompatible + with the current system. + + + + + Defines the valid types of signatures. + + + + + The file is not signed. + + + + + The signature is an Authenticode signature embedded into the file itself. + + + + + The signature is a catalog signature. + + + + + Represents a digital signature on a signed + file. + + + + + Gets the X509 certificate of the publisher that + signed the file. + + + + + Gets the X509 certificate of the authority that + time-stamped the file. + + + + + Gets the status of the signature on the file. + + + + + Gets the message corresponding to the status of the + signature on the file. + + + + + Gets the path of the file to which this signature + applies. + + + + + Returns the signature type of the signature + + + + + True if the item is signed as part of an operating system release + + + + + Constructor for class Signature + + Call this to create a validated time-stamped signature object. + + + this signature is found in this file + + win32 error code + + cert of the signer + + cert of the time stamper + + constructed object + + + + + + + Constructor for class Signature + + Call this to create a validated signature object. + + + this signature is found in this file + + cert of the signer + + constructed object + + + + + + + Constructor for class Signature + + Call this ctor when creating an invalid signature object + + + this signature is found in this file + + win32 error code + + cert of the signer + + constructed object + + + + + + + Constructor for class Signature + + Call this ctor when creating an invalid signature object + + + this signature is found in this file + + win32 error code + + constructed object + + + + + + + Utility class for CMS (Cryptographic Message Syntax) related operations + + + + + Adds Ascii armour to a byte stream in Base64 format + + The bytes to encode + + + + Removes Ascii armour from a byte stream + + The Ascii armored content + The marker of the start of the Base64 content + The marker of the end of the Base64 content + The beginning of where the Ascii armor was detected + The end of where the Ascii armor was detected + + + + Represents a message recipient for the Cms cmdlets. + + + + + Creates an instance of the CmsMessageRecipient class + + + + + Creates an instance of the CmsMessageRecipient class + + + The identifier of the CmsMessageRecipient. + Can be either: + - The path to a file containing the certificate + - The path to a directory containing the certificate + - The thumbprint of the certificate, used to find the certificate in the certificate store + - The Subject name of the recipient, used to find the certificate in the certificate store + + + + + Creates an instance of the CmsMessageRecipient class + + The certificate to use. + + + + Gets the certificate associated with this recipient + + + + + Resolves the provided identifier into a collection of certificates. + + A reference to an instance of Powershell's SessionState class. + The purpose for which this identifier is being resolved (Encryption / Decryption. + The error generated (if any) for this resolution. + + + + Defines the purpose for resolution of a CmsMessageRecipient + + + + + This message recipient is intended to be used for message encryption + + + + + This message recipient is intended to be used for message decryption + + + + + Scans a string buffer for malware using the Antimalware Scan Interface (AMSI). + Caller is responsible for calling AmsiCloseSession when a "session" (script) + is complete, and for calling AmsiUninitialize when the runspace is being torn down. + + The string to be scanned + Information about the source (filename, etc.) + AMSI_RESULT_DETECTED if malware was detected in the sample. + + + + Reset the AMSI session (used to track related script invocations) + + + + + Uninitialize the AMSI interface + + + + AMSI_RESULT_CLEAN -> 0 + + + AMSI_RESULT_NOT_DETECTED -> 1 + + + Certain policies set by administrator blocked this content on this machine + + + AMSI_RESULT_DETECTED -> 32768 + + + Return Type: HRESULT->LONG->int + appName: LPCWSTR->WCHAR* + amsiContext: HAMSICONTEXT* + + + Return Type: void + amsiContext: HAMSICONTEXT->HAMSICONTEXT__* + + + Return Type: HRESULT->LONG->int + amsiContext: HAMSICONTEXT->HAMSICONTEXT__* + amsiSession: HAMSISESSION* + + + Return Type: void + amsiContext: HAMSICONTEXT->HAMSICONTEXT__* + amsiSession: HAMSISESSION->HAMSISESSION__* + + + Return Type: HRESULT->LONG->int + amsiContext: HAMSICONTEXT->HAMSICONTEXT__* + buffer: PVOID->void* + length: ULONG->unsigned int + contentName: LPCWSTR->WCHAR* + amsiSession: HAMSISESSION->HAMSISESSION__* + result: AMSI_RESULT* + + + Return Type: HRESULT->LONG->int + amsiContext: HAMSICONTEXT->HAMSICONTEXT__* + string: LPCWSTR->WCHAR* + contentName: LPCWSTR->WCHAR* + amsiSession: HAMSISESSION->HAMSISESSION__* + result: AMSI_RESULT* + + + + This is used for automatic conversions to be performed in shell variables. + + + + + This ctor form is used to initialize shell variables + whose type is not permitted to change. + + + + + + Holds the strings used as the default drive names for all the + default providers + + + + + + The default VariableProvider drive name + + + + + The default EnvironmentProvider drive name + + + + + The default AliasProvider drive name + + + + + The default FunctionProvider drive name + + + + + Defines the names of the internal providers. + Derived classes exist for custom and single shells. In the single + shell the provider name includes the PSSnapin name. In custom + shells it does not. + + + + + + Gets the name of the EnvironmentProvider + + + + + Gets the name of the Certificate + + + + + Gets the name of the VariableProvider + + + + + Gets the name of the AliasProvider + + + + + Gets the name of the FunctionProvider + + + + + Gets the name of the FileSystemProvider + + + + + Gets the name of the RegistryProvider + + + + + The provider names for custom shells + + + + + Gets the name of the EnvironmentProvider + + + + + Gets the name of the Certificate + + + + + Gets the name of the VariableProvider + + + + + Gets the name of the AliasProvider + + + + + Gets the name of the FunctionProvider + + + + + Gets the name of the FileSystemProvider + + + + + Gets the name of the RegistryProvider + + + + + The provider names for the single shell + + + + + Gets the name of the EnvironmentProvider + + + + + Gets the name of the Certificate + + + + + Gets the name of the VariableProvider + + + + + Gets the name of the AliasProvider + + + + + Gets the name of the FunctionProvider + + + + + Gets the name of the FileSystemProvider + + + + + Gets the name of the RegistryProvider + + + + + Enumerates the items matching a particular name in the scopes specified using + the appropriate scoping lookup rules. + + + + The type of items that the derived class returns. + + + + + + Constructs a scoped item searcher. + + + + The state of the engine instance to enumerate through the scopes. + + + + The parsed name of the item to lookup. + + + + If or + is null. + + + + + + Gets the current object as an IEnumerator + + + + The current object as an IEnumerator. + + + + + + Moves the enumerator to the next matching scoped item. + + + + True if another matching scoped item was found, or false otherwise. + + + + + + Gets the current scoped item + + + + + + Derived classes override this method to return their + particular type of scoped item. + + + + The scope to look the item up in. + + + + The name of the item to retrieve. + + + + The scope item that the derived class should return. + + + + True if the scope item was found or false otherwise. + + + + + + Gets the lookup scope that the Current item was found in. + + + + + + Gets the scope in which the search begins. + + + + + + The scope searcher for variables + + + + + Derived classes override this method to return their + particular type of scoped item. + + + + The scope to look the item up in. + + + + The name of the item to retrieve. + + + + The scope item that the derived class should return. + + + + True if the scope item was found or false otherwise. + + + + + + The scope searcher for aliases + + + + + Derived classes override this method to return their + particular type of scoped item. + + + + The scope to look the item up in. + + + + The name of the item to retrieve. + + + + The scope item that the derived class should return. + + + + True if the scope item was found or false otherwise. + + + + + + The scope searcher for functions + + + + + Derived classes override this method to return their + particular type of scoped item. + + + + The scope to look the item up in. + + + + The name of the item to retrieve. + + + + The scope item that the derived class should return. + + + + True if the scope item was found or false otherwise. + + + + + + The scope searcher for drives + + + + + Derived classes override this method to return their + particular type of scoped item. + + + + The scope to look the item up in. + + + + The name of the item to retrieve. + + + + The scope item that the derived class should return. + + + + True if the scope item was found or false otherwise. + + + + + + Defines the action to be taken for Navigation cmdlets + + + + + Write out the details + + + + + Delete the item + + + + + A variable that represents the maximum capacity for object types in a scope. + An separate instance is created for functions, aliases, variables, and drives. + + + + + Constructs an instance of the variable with the specified name and + initial capacity. + + + + The name of the variable. + + + + The initial capacity + + + + The maximum capacity for the scope. + + + + The minimum capacity for the scope. + + + Scoped item options for this variable + + + + Constructs an instance of the variable with the specified name and + initial capacity. + + + + The name of the variable. + + + + A reference to a SessionStateCapacityVariable in another scope. The value + will be shared in this scope unless the capacity gets set in this scope. + + + The scoped item options for this variable + + + + Gets or sets the value of the variable. + This class will always return an int from the getter. The value is + either inherited from a parent scope, or stored locally + + + + + + Provides fast access to the capacity variable as an int, eliminating the need + for casts... + + + + + Overrides the base IsValidValue to ensure the value is an int. + + + + The value to test. + + + + true if the value is an int and the base class IsValidValue is true, otherwise + false. + + + + If the validation metadata throws an exception. + + + + + + A variable that represents $? + + + + + Constructs an instance of the variable with execution context. + + + + Execution context + + + + + Gets or sets the value of the variable. + + + + + + A variable that represents $PSCulture + + + + + Constructs an instance of the variable. + + + + + Gets or sets the value of the variable. + + + + + + A variable that represents $PSUICulture + + + + + Constructs an instance of the variable. + + + + + Gets or sets the value of the variable. + + + + + + A SessionStateScope defines the scope of visibility for a set + of virtual drives and their data. + + + + + Constructor for a session state scope. + + + + The parent of this scope. It can be null for the global scope. + + + + + + Gets the parent scope of this scope. May be null + for the global scope. + + + + + Defines the origin of the command that resulted in this scope + being created. + + + + + The script scope for this scope. It may reference itself but may not + be a null reference. + + + + If is null when setting the property. + + + + + + The version of strict mode for the interpreter. + + Which version of strict mode is active for this scope and it's children. + + + + Some local variables are stored in this tuple (for non-global scope, any variable assigned to, + or parameters, or some predefined locals.) + + + + + When dotting a script, no new scope is created. Automatic variables must go somewhere, so rather than store + them in the scope they are dotted into, we just store them in a tuple like any other local variable so we + can skip saving and restoring them as the scopes change, instead it's a simple push/pop of this stack. + + This works because in a dotted script block, the only locals in the tuple are the automatic variables, all + other variables use the variable apis to find the variable and get/set it. + + + + + Adds a new drive to the scope's drive collection. + + + + The new drive to be added. + + + + This method assumes the drive has already been verified and + the provider has already been notified. + + + + If is null. + + + + If a drive of the same name already exists in this scope. + + + + If the maximum drive count has been reached for this scope. + + + + + + Removes the specified drive from this scope. + + + + The drive to be removed. + + + + This method assumes that the drive has already been validated for removal + by the provider. + + + + If is null. + + + + + + Removes all the drives from the scope. + + + + + Retrieves the drive of the specified name. + + + + The name of the drive to retrieve. + + + + An instance of a PSDriveInfo object with the specified name if one + exists in this scope or null if one does not exist. + + + + If is null. + + + + + + Gets an IEnumerable for the drives in this scope. + + + + + Gets an IDictionary for the variables in this scope. + + + + + + Gets the specified variable from the variable table. + + + + The name of the variable to retrieve. + + + + The origin of the command trying to retrieve this variable... + + + + The PSVariable representing the variable specified. + + + + + + Gets the specified variable from the variable table. + + + + The name of the variable to retrieve. + + + + The PSVariable representing the variable specified. + + + + + + Looks up a variable, returns true and the variable if found and is visible, throws if the found variable is not visible, + and returns false if there is no variable with the given name in the current scope. + + The name of the variable. + The command origin (where the scope was created), used to decide if the variable is visible. + true if looking up the variable as part of a new or set variable operation + The variable, if one is found in scope + Thrown if the variable is not visible based on CommandOrigin. + True if there is a variable in scope, false otherwise. + + + + + + + + + + + Sets a variable to the given value. + + + + The name of the variable to set. + + + + The value for the variable + + + + If true, sets the variable value to newValue. If false, newValue must + be a PSVariable object and the item will be set rather than the value. + + + + If true, the variable will be set even if it is readonly. + + + + Which SessionState this variable belongs to. + + + + The origin of the caller + + + + If true and the variable is being set in the global scope, + then all of the normal variable lookup stuff is bypassed and + the variable is added directly to the dictionary. + + + The PSVariable representing the variable that was set. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + + + Sets a variable to scope without any checks. + This is intended to be used only for global scope. + + PSVariable to set + SessionState for variable + + + + + Sets a variable to the given value. + + + + The new variable to create. + + + + If true, the variable will be set even if it is readonly. + + + + Which SessionState this variable belongs to. + + + + The PSVariable representing the variable that was set. + + + + If the variable is read-only or constant. + + + + If the maximum number of variables has been reached for this scope. + + + + + + Removes a variable from the variable table. + + + + The name of the variable to remove. + + + + If true, the variable will be removed even if its ReadOnly. + + + + if the variable is constant. + + + + + + For most scopes (global scope being the notable exception), most variables are known ahead of + time and stored in a tuple. The names of those variables are stored separately, this method + determines if variable name is active in this scope, and if so, returns a wrapper around the + tuple to access the property in the tuple for the given variable. + + + + + Gets an IEnumerable for the aliases in this scope. + + + + + + Gets the specified alias from the alias table. + + + + The name of the alias to retrieve. + + + + The string representing the value of the alias specified. + + + + + + Sets an alias to the given value. + + + + The name of the alias to set. + + + + The value for the alias + + + + The execution context for this engine instance. + + + + If true, the value will be set even if the alias is ReadOnly. + + + + Origin of the caller of this API + + + + The string representing the value that was set. + + + + if the alias is read-only or constant. + + + + If the maximum number of aliases has been reached for this scope. + + + + + + Sets an alias to the given value. + + + + The name of the alias to set. + + + + The value for the alias + + + + The execution context for this engine instance. + + + + The options to set on the alias. + + + + If true, the value will be set even if the alias is ReadOnly. + + + + Origin of the caller of this API + + + + The string representing the value that was set. + + + + If the alias is read-only or constant. + + + + If the maximum number of aliases has been reached for this scope. + + + + + + Sets an alias to the given value. + + + + The information about the alias to be set + + + + If true, the alias will be set even if there is an existing ReadOnly + alias. + + + + Specifies the command origin of the calling command. + + + + The string representing the value that was set. + + + + If the alias is read-only or constant. + + + + If the maximum number of aliases has been reached for this scope. + + + + + + Removes a alias from the alias table. + + + + The name of the alias to remove. + + + + If true, the alias will be removed even if it is ReadOnly. + + + + If the alias is constant. + + + + + + Gets an IEnumerable for the functions in this scope. + + + + + + Gets the specified function from the function table. + + + + The name of the function to retrieve. + + + + A FunctionInfo that is either a FilterInfo or FunctionInfo representing the + function or filter. + + + + + + Sets an function to the given function declaration. + + + + The name of the function to set. + + + + The script block that represents the code for the function. + + + + If true, the function will be set even if its ReadOnly. + + + + The origin of the caller of this API + + + + The execution context for the function/filter. + + + + A FunctionInfo that is either a FilterInfo or FunctionInfo representing the + function or filter. + + + + If the function is read-only or constant. + + + + If the maximum number of functions have been reached for this scope. + + + + + + Sets an function to the given function declaration. + + + + The name of the function to set. + + + + The script block that represents the code for the function. + + + + The original function (if any) from which the scriptblock was derived. + + + + If true, the function will be set even if its ReadOnly. + + + + The origin of the caller of this API + + + + The execution context for the function/filter. + + + + A FunctionInfo that is either a FilterInfo or FunctionInfo representing the + function or filter. + + + + If the function is read-only or constant. + + + + If the maximum number of functions have been reached for this scope. + + + + + + Sets an function to the given function declaration. + + + + The name of the function to set. + + + + The script block that the function should represent. + + + + The original function (if any) from which the scriptblock was derived. + + + + The options that should be applied to the function. + + + + If true, the function will be set even if its ReadOnly. + + + + The origin of the caller of this API + + + + The execution context for the function/filter. + + + + A FunctionInfo that is either a FilterInfo or FunctionInfo representing the + function or filter. + + + + If the function is read-only or constant. + + + + If the maximum number of functions have been reached for this scope. + + + + + + Sets an function to the given function declaration. + + + + The name of the function to set. + + + + The script block that the function should represent. + + + + The original function (if any) from which the scriptblock was derived. + + + + The options that should be applied to the function. + + + + If true, the function will be set even if its ReadOnly. + + + + The origin of the caller of this API + + + + The execution context for the function/filter. + + + + The name of the help file associated with the function. + + + + Function to create the FunctionInfo. + + + + A FunctionInfo that is either a FilterInfo or FunctionInfo representing the + function or filter. + + + + If the function is read-only or constant. + + + + If the maximum number of functions have been reached for this scope. + + + + + + Removes a function from the function table. + + + + The name of the function to remove. + + + + If true, the function is removed even if it is ReadOnly. + + + + If the function is constant. + + + + + + Gets an IEnumerable for the cmdlets in this scope. + + + + + + Gets the specified cmdlet from the cmdlet table. + + + + The name of the cmdlet to retrieve. + + + + A CmdletInfo representing this cmdlet + + + + + + Adds a cmdlet to the cmdlet cache. + + + + The name of the cmdlet to add. + + + + The cmdlet that should be added. + + + + The origin of the caller of this API + + + + The execution context for the cmdlet. + + + + A CmdletInfo representing the cmdlet + + + + If the cmdlet is read-only or constant. + + + + + + + Removes a cmdlet from the cmdlet table. + + + + The name of the cmdlet to remove. + + + + The index at which to remove the cmdlet + If index is -1, remove all cmdlets with that name + + + + If true, the cmdlet is removed even if it is ReadOnly. + + + + If the cmdlet is constant. + + + + + + Removes a cmdlet entry from the cmdlet table. + + + + The key for the cmdlet entry to remove. + + + + If true, the cmdlet entry is removed even if it is ReadOnly. + + + + If the cmdlet is constant. + + + + + + Contains the virtual drives for this scope. + + + + + Contains the drives that have been automounted by the system. + + + + + Add the built-in variables defined by the session state scope. + + + + + A collection of the aliases defined for the session. + + + + + A collection of the functions defined in this scope... + + + + + All entries in this table should also be in the normal function + table. The entries in this table are automatically propagated + to new scopes. + + + + + All entries in this table should also be in the normal cmdlet + table. The entries in this table are automatically propagated + to new scopes. + + + + + The variable that represents $true in the language. + We don't need a new reference in each scope since it + is ScopedItemOptions.Constant. + + + + + + The variable that represents $false in the language. + We don't need a new reference in each scope since it + is ScopedItemOptions.Constant. + + + + + + The variable that represents $null in the language. + We don't need a new reference in each scope since it + is ScopedItemOptions.Constant. + + + + + + Gets the alises by command name (used by metadata-driven help) + + + + + + + + + + + + + + + + + + + + + Constructs an enumerator for enumerating through the session state scopes + using the appropriate scoping rules (default to dynamic scoping). + + + + The starting scope to start the enumeration from. + + + + + Uses the proper scoping rules to get the next scope to do the lookup in. + + + + True if the enumerator was advanced to the next scope, or false otherwise. + + + + + + Sets the enumerator to before the first scope + + + + + Gets the current lookup scope + + + + The enumerator is positioned before the first element of the + collection or after the last element. + + + + + + Gets the IEnumerator for this class + + + + The IEnumerator interface for this class. + + + + + Holds the #defines for any special strings used in session state. + + + + + + The separator used in provider base paths. The format is + providerId::providerPath. + + + + + The default path separator used by the base implementation of the providers. + + + + + + The alternate path separator used by the base implementation of the providers. + + + + + + The default path prefix for remote paths. This is to mimic + UNC paths in the file system. + + + + + + The alternate path prefix for remote paths. This is to mimic + UNC paths in the file system. + + + + + + The character used in a path to indicate the home location. + + + + + name of the global variable table in Variable scopes of session state. + + + + + Name of the current scope variable table of session state. + + + + + When prefixing a variable "private" makes the variable + only visible in the current scope. + + + + + When prefixing a variable "script" makes the variable + global to the scipt but not global to the entire session. + + + + + session state string used as resource name in exceptions + + + + + The file extension (including the dot) of an PowerShell script file + + + + + The file extension (including the dot) of an PowerShell module file + + + + + The file extension (including the dot) of an Mof file + + + + + The file extension (including the dot) of a PowerShell cmdletization file + + + + + The file extension (including the dot) of a PowerShell declarative session configuration file + + + + + The file extension (including the dot) of a PowerShell role capability file + + + + + The file extension (including the dot) of an PowerShell data file + + + + + The file extension (including the dot) of an workflow file + + + + + The file extension (including the dot) of an workflow dependent assembly + + + + + The file extension (including the dot) of an workflow dependent Ngen assembly + + + + + The default verb/noun separator for a command. verb-noun or verb/noun + + + + + The default verb to try if the command was not resolved + + + + + The default extension for a help file relative to its code assembly name. + + + + + The language representation of null. + + + + + The language representation of null. + + + + + The language representation of false. + + + + + The language representation of true. + + + + + The escape character used in the language. + + + + + The default cmdlet adapter for cmdletization / cdxml modules + + + + + This class holds the integer constants used in Session State + + + + + The default maximum for the number of variables + + + + + Max # of variables allowed in a scope in Session State + + + + + Min # of variables allows in a scope in Session State + + + + + The default maximum for the number of aliases + + + + + Max # of aliases allowed in a scope in Session State + + + + + Min # of aliases allowed in a scope in Session State + + + + + The default maximum for the number of functions + + + + + Max # of functions allowed in a scope in Session State + + + + + Min # of functions allowed in a scope in Session State + + + + + The default maximum for the number of drives + + + + + Max # of drives allowed in a scope in Session State + + + + + + Min # of drives allowed in a scope in Session State + + + + + The default maximum for the number of errors + + + + + Max # of errors allowed in a scope in Session State + + + + + + Min # of errors allowed in a scope in Session State + + + + + The default capacity for a Dictionary store + + + + + default load factor on a hash table + + + + + This class has static methods that are used in Session State + + + + + Converts the specified array into a collection of the specified type. + + + + The array to be converted. + + + + A collection of the elements that were in the array. + + + + + + Compares the elements in the specified collection with value specified. If + the string comparer is specified it is used for the comparison, else the + .Equals method is used. + + + + The collection to check for the value. + + + + The value to check for. + + + + If specified the comparer will be used instead of .Equals. + + + + true if the value is contained in the collection or false otherwise. + + + + If is null. + + + + + + Constructs a collection of WildcardPatterns for the specified + string collection. + + + + The string patterns to construct the WildcardPatterns for. + + + + The options to create the WildcardPatterns with. + + + + A collection of WildcardPatterns that represent the string patterns + that were passed. + + + + + + Determines if the specified text matches any of the patterns + + + + The text to check against the wildcard pattern. + + + + An array of wildcard patterns. If the array is empty or null the text is deemed + to be a match. + + + + The default value that should be returned if + is empty or null. + + + + True if the text matches any of the patterns OR if patterns is null or empty and defaultValue is True. + + + + + + Converts an OpenMode enum value to a FileMode + + + + The OpenMode value to be converted. + + + + The FileMode representation of the OpenMode. + + + + + + Represents a variable in the PowerShell language. + + + + + Constructs a variable with the given name. + + + + The name of the variable. + + + + If is null or empty. + + + + + Constructs a variable with the given name, and value. + + + + The name of the variable. + + + + The value of the variable. + + + + If is null or empty. + + + + + Constructs a variable with the given name, value, and options. + + + + The name of the variable. + + + + The value of the variable. + + + + The constraints of the variable. Note, variables can only be made constant + in the constructor. + + + + If is null or empty. + + + + + Constructs a variable with the given name, value, options, and description. + + + + The name of the variable. + + + + The value of the variable. + + + + The constraints of the variable. Note, variables can only be made constant + in the constructor. + + + + The description for the variable. + + + + If is null or empty. + + + + + Constructs a variable with the given name, value, options, and description. + + + + The name of the variable. + + + + The value of the variable. + + + + The constraints of the variable. Note, variables can only be made constant + in the constructor. + + + + The attributes for the variable. ValidateArgumentsAttribute and derived types + will be used to validate a value before setting it. + + + + The description for the variable. + + + + If is null or empty. + + + + + Constructs a variable with the given name, value, options, and attributes + + + + The name of the variable. + + + + The value of the variable. + + + + The constraints of the variable. Note, variables can only be made constant + in the constructor. + + + + The attributes for the variable. ValidateArgumentsAttribute and derived types + will be used to validate a value before setting it. + + + + If is null or empty. + + + + If the validation metadata identified in + throws an exception. + + + + + Gets the name of the variable. + + + + + Gets or sets the description of the variable. + + + + + Gets or sets the value of the variable + + + + If the variable is read-only or constant upon call to set. + + + + is not valid according to one or more + of the attributes of this shell variable. + + + + + If true, then this variable is visible outside the runspace. + + + + + The module where this variable was defined. + + + + + The name of the module that defined this variable. + + + + + Gets or sets the scope options on the variable. + + + + Upon set, if the variable is constant or if + contains the constant flag. + + + + + Gets the collection that contains the attributes for the variable. + + + + To add or remove attributes, get the collection and then add or remove + attributes to that collection. + + + + + Checks if the given value meets the validation attribute constraints on the PSVariable. + + + + value which needs to be checked + + + + If is null or if no attributes are set, then + the value is deemed valid. + + + + If the validation metadata throws an exception. + + + + + Determines if the value is valid for the specified attribute + + + + The variable value to validate. + + + + The attribute to use to validate that value. + + + + True if the value is valid with respect to the attribute, or false otherwise. + + + + + Runs all ArgumentTransformationAttributes that are specified in the Attributes + collection on the given value in the order that they are in the collection. + + + + The attributes to use to transform the value. + + + The value to be transformed. + + + + The transformed value. + + + + If the argument transformation fails. + + + + + Parameter binding does the checking and conversions as specified by the + attributes, so repeating that process is slow and wrong. This function + applies the attributes without repeating the checks. + + The list of attributes to add + + + + Returns true if the PSVariable is constant (only visible in the + current scope), false otherwise. + + + + + + Returns true if the PSVariable is readonly (only visible in the + current scope), false otherwise. + + + + + + Returns true if the PSVariable is private (only visible in the + current scope), false otherwise. + + + + + + Returns true if the PSVariable is propagated to all scopes + when the scope is created. + + + + + + Indicates that the variable has been removed from session state + and should no longer be considered valid. This is necessary because + we surface variable references and can consequently not maintain + transparent integrity. + + + + + Verifies the constraints and attributes before setting the value + + + + The value to be set. + + + + If the variable is read-only or constant. + + + + If the validation metadata throws an exception or the value doesn't + pass the validation metadata. + + + + + + This class is used for $null. It always returns null as a value and accepts + any value when it is set and throws it away. + + + + + + Constructor that calls the base class constructor with name "null" and + value null. + + + + + + Always returns null from get, and always accepts + but ignores the value on set. + + + + + Gets the description for $null. + + + + + Gets the scope options for $null which is always None. + + + + + The options that define some of the constraints for session state items like + variables, aliases, and functions. + + + + + There are no constraints on the item. + + + + + The item is readonly. It can be removed but cannot be changed. + + + + + The item cannot be removed or changed. + This flag can only be set a variable creation. + + + + + The item is private to the scope it was created in and + cannot be seen from child scopes. + + + + + The item is propagated to each new child scope created. + + + + + The option is not specified by the user + + + + + A collection of the attributes on the PSVariable object. + + + + + Constructs a variable attribute collection attached to + the specified variable. Whenever the attributes change + the variable value is varified against the attribute. + + + + The variable that needs to be verified anytime an attribute + changes. + + + + If is null. + + + + + + Ensures that the variable that the attribute is being added to is still + valid after the attribute is added. + + + + The zero-based index at which should be inserted. + + + + The attribute being added to the collection. + + + + If the new attribute causes the variable to be in an invalid state. + + + + If the new attribute is an ArgumentTransformationAttribute and the transformation + fails. + + + + + + Ensures that the variable that the attribute is being set to is still + valid after the attribute is set. + + + + The zero-based index at which should be set. + + + + The attribute being set in the collection. + + + + If the new attribute causes the variable to be in an invalid state. + + + + + + Ordinarily, the collection checks/converts the value (by applying the attribute) + when an attribute is added. This is both slow and wrong when the attributes + have already been checked/applied during parameter binding. So if checking + has already been done, this function will add the attribute without checking + and possibly updating the value. + + The attribute to add + + + + Validates and performs any transformations that the new attribute + implements. + + + + The new attribute to be added to the collection. + + + + The new variable value. This may change from the original value if the + new attribute is an ArgumentTransformationAttribute. + + + + + + The variable whose value needs to be verified anytime + the attributes change. + + + + + A variable path that you can query the scope and drive of the variable reference. + + + + + Stores the path that was passed to the constructor. + + + + + The name of the variable without any scope or drive. + + + + + Store flags about the path, such as private/global/local/etc. + + + + + Private constructor for CloneAndSetLocal(). + + + + + Constructs a variable path. + + The path to parse. + + If is null. + + + + + Constructs a scoped item lookup path. + + + The path to parse. + + These flags for anything known about the path (such as, is it a function) before + being scanned. + + + + If is null. + + + + + Gets the full path including any possibly specified scope and/or drive name. + + + + + Returns true if the path explicitly specifies 'global:'. + + + + + Returns true if the path explicitly specifies 'local:'. + + + + + Returns true if the path explicitly specifies 'private:'. + + + + + Returns true if the path explicitly specifies 'script:'. + + + + + Returns true if the path specifies no drive or scope qualifiers. + + + + + Returns true if the path specifies a variable path with no scope qualifiers. + + + + + Returns true if the path defines a variable. + + + + + Returns true if the path defines a function. + + + + + Returns true if the path specifies a drive other than the variable drive. + + + + + The drive name, or null if the path is for a variable. + It may also be null for some functions (specifically if this is a FunctionScopedItemLookupPath.) + + + + + Gets the namespace specific string + + + + + Return the drive qualified name, if any drive specified, otherwise the simple variable name. + + + + + Helpful for debugging. + + + + + Root key path under HKLM + + + + + Root key name + + + + + Key for monad engine + + + + + Key under which all the mshsnapin live + + + + + Contains information about a mshsnapin + + + + + Unique Name of the mshsnapin + + + + + Is this mshsnapin default mshsnapin + + + + + Retuns applicationbase for mshsnapin + + + + + Strong name of mshSnapIn assembly + + + + + Name of PSSnapIn module + + + + + Type of custom mshsnapin. + + + + + Monad version used by mshsnapin + + + + + Version of mshsnapin + + + + + Collection of file names containing types information for PSSnapIn. + + + + + Collection of file names containing format information for PSSnapIn + + + + + Description of mshsnapin + + + + + Vendor of mshsnapin + + + + + Get/set whether to log Pipeline Execution Detail events. + + + + + Overrides ToString + + + Name of the PSSnapIn + + + + + Returns true if the PSSnapIn Id is valid. A PSSnapIn is valid iff it contains only + "Alpha Numeric","-","_","." characters. + + PSSnapIn Id to validate + + + + Validates the PSSnapIn Id. A PSSnapIn is valid iff it contains only + "Alpha Numeric","-","_","." characters. + + PSSnapIn Id to validate + + 1. Specified PSSnapIn is not valid + + + + + Internal class to read information about a mshsnapin + + + + + Reads all registered mshsnapin for all monad versions. + + + A collection of PSSnapInInfo objects + + + User doesn't have access to monad/mshsnapin registration information + + + Monad key is not installed + + + + + Version should be integer (1, 2, 3 etc) + + + + + + + Reads all registered mshsnapin for specified psVersion + + + A collection of PSSnapInInfo objects + + + User doesn't have permission to read MonadRoot or Version + + + MonadRoot or Version key doesn't exist. + + + + + Reads all the mshsnapins for a given psVersion + + + The User doesn't have required permission to read the registry key for this version. + + + Specified version doesn't exist. + + + User doesn't have permission to read specified version + + + + + Read mshsnapin for specified mshsnapinId and psVersion + + + MshSnapin info object + + + The user does not have the permissions required to read the + registry key for one of the following: + 1) Monad + 2) PSVersion + 3) MshSnapinId + + + 1) Monad key is not present + 2) VersionKey is not present + 3) MshSnapin key is not present + 4) MshSnapin key is not valid + + + + + Reads the mshsnapin info for a specific key under specific monad version + + + ReadOne will never create a default PSSnapInInfo object. + + + The user does not have the permissions required to read the + registry key for specified mshsnapin. + + + 1) Specified mshsnapin is not installed. + 2) Specified mshsnapin is not correctly installed. + + + + + Gets multistring value for name + + + + + + + if value is not present and mandatory is true + + + + + Get the value for name + + + + + + + if no value is available and mandatory is true. + + + + + PublicKeyToken is in the form of byte[]. Use this function to convert to a string + + array of byte's + + + + + Reads core snapin for monad engine + + + A PSSnapInInfo object + + + + + Reads all registered mshsnapins for currently executing monad engine + + + A collection of PSSnapInInfo objects + + + + + Enable Snapin logging based on group policy + + + + + Enable Snapin logging based on group policy + + + + + Get the key to monad root + + + + Caller doesn't have access to monad registration information. + + + Monad registration information is not available. + + + + + Get the registry key to PSEngine. + + RegistryKey + Major version in string format. + + Monad registration information is not available. + + + + + Gets the version root key for specified monad version + + + + + + Caller doesn't have permission to read the version key + + + specified psVersion key is not present + + + + + Gets the mshsnapin root key for specified monad version + + + + + + Caller doesn't have permission to read the mshsnapin key + + + mshsnapin key is not present + + + + + Gets the mshsnapin key for specified monad version and mshsnapin name + + + + + + Caller doesn't have permission to read the mshsnapin key + + + mshsnapin key is not present + + + + + This structure is meant to hold mshsnapin information for default mshsnapins. + This is private only. + + + + + + + + + + This class is responsible for loading resources using the PSSnapin dll and + associated registry entries. + + + + The class creates an app-domain to load the resource assemblies in. Upon dispose + the class unloads the app-domain to ensure the assemblies get unloaded. It uses + ReflectionOnlyLoad and ReflectionOnlyLoadFrom to ensure that no code can execute + and that dependencies are not loaded. This allows us to load assemblies that were + built with different version of the CLR. + + + + + + Creates an instance of the RegistryStringResourceIndirect class. + + + + A new instance of the RegistryStringResourceIndirect class. + + + + + + Set to true when object is disposed + + + + + + Dispose method unloads the app domain that was + created in the constructor. + + + + + + The app-domain in which the resources will be loaded. + + + + + + The class that is created in the app-domain which does the resource loading. + + + + + + Creates the app-domain and the instance of the ResourceRetriever and + sets the private fields with the references. + + + + + + Retrieves a resource string based on a resource reference stored in the specified + registry key. + + + + The key in which there is a value that contains the reference to the resource + to retrieve. + + + + The name of the value in the registry key that contains the reference to the resource. + + + + The full name of the assembly from which to load the resource. + + + + The full path of the assembly from which to load the resource. + + + + The resource string that was loaded or null if it could not be found. + + + + This method ensures that an appropriate registry entry exists and that it contains + a properly formatted resource reference ("BaseName,ResourceID"). It then creates an + app-domain (or uses and existing one if it already exists on the instance of the class) + and an instance of the ResourceRetriever in that app-domain. It then calls the ResourceRetriever + to load the specified assembly and retrieve the resource. The assembly is loaded using ReflectionOnlyLoad + or ReflectionOnlyLoadFrom using the assemblyName or moduleName (respectively) so that + no code can be executed. + + The app-domain is unloaded when this class instance is disposed. + + + + + + Retrieves a resource string based on a resource reference supplied in . + + + + The full name of the assembly from which to load the resource. + + + + The full path of the assembly from which to load the resource. + + + + A comma separated basename and resource id pair. + + + + The resource string that was loaded or null if it could not be found. + + + + This method ensures that is a properly formatted + resource reference ("BaseName,ResourceID"). It then creates an app-domain (or uses + an existing one if it already exists on the instance of the class) and an instance + of the ResourceRetriever in that app-domain. It then calls the ResourceRetriever + to load the specified assembly and retrieve the resource. The assembly is loaded using ReflectionOnlyLoad + or ReflectionOnlyLoadFrom using the assemblyName or moduleName (respectively) so that + no code can be executed. + + The app-domain is unloaded when this class instance is disposed. + + + + + + Retrieves a string value from the registry + + + + The key to retrieve the value from. + + + + The name of the value to retrieve. + + + + The string value of the registry key value. + + + + + + This class is the worker class used by RegistryStringResourceIndirect to load the resource + assemblies and retrieve the resources inside the alternate app-domain. + + + + + + Loads the specified assembly in the app-domain and retrieves the specified resource string. + + + + Full name of the assembly to retrieve the resource from. + + + + Full path of the assembly to retrieve the resource from. + + + + The resource base name to retrieve. + + + + The resource ID of the resource to retrieve. + + + + The value of the specified string resource or null if the resource could not be found or loaded. + + + + + + Loads the specified assembly using ReflectionOnlyLoad or ReflectionOnlyLoadFrom + + + + The FullName of the assembly to load. This takes precendence over the modulePath and + will be passed to as a parameter to the ReflectionOnlyLoad. + + + + The full path of the assembly to load. This is used if the ReflectionOnlyLoad using the + assemblyName doesn't load the assembly. It is passed as a parameter to the ReflectionOnlyLoadFrom API. + + + + An loaded instance of the specified resource assembly or null if the assembly couldn't be loaded. + + + + Since the intent of this method is to load resource assemblies, the standard culture fallback rules + apply. If the assembly couldn't be loaded for the current culture we fallback to the parent culture + until the neutral culture is reached or an assembly is loaded. + + + + + + Attempts to load the assembly for the specified culture + + + + The culture for which the assembly should be loaded. + + + + The name of the assembly without culture information (or at least undefined culture information). + + + + The directory containing the neutral culture assembly. + + + + The name of the assembly file. + + + + An instance of the loaded resource assembly or null if the assembly could not be loaded. + + + + + + Retrieves the specified resource string from the resource stream. + + + + The resource stream containing the desired resource. + + + + The identifier of the string resource to retrieve from the stream. + + + + The resource string or null if the resourceID could not be found. + + + + + + + PSInstaller is a class for facilitating installation + of monad engine and monad PSSnapin's. + + This class implements installer api from CLR. At install + time, installation utilities (like InstallUtil.exe) will + call api implementation functions in this class automatically. + This includes functions like Install, Uninstall, Rollback + and Commit. + + This class is an abstract class for handling installation needs + that are common for all monad components, which include, + + 1. accessing system registry + 2. support of additional command line parameters. + 3. writing registry files + 4. automatically extract informaton like vender, version, etc. + + Different monad component will derive from this class. Two common + components that need install include, + + 1. PSSnapin. Installation of PSSnapin will require information + about PSSnapin assembly, version, vendor, etc to be + written to registry. + + 2. Engine. Installation of monad engine will require information + about engine assembly, version, CLR information to be + written to registry. + + + + + This is an abstract class to be derived by monad engine and PSSnapin installers + only. Developer should not directly derive from this class. + + + + + + + + + + + + + + + + + + + + + Uninstall this msh component + + + + + + Rollback this msh component + + + + + + + MshSnapinBase (or MshSnapinInstaller) is a class for facilitating registry of necessary + information for monad mshsnapin's. + + This class will be built with monad core engine dll + (System.Management.Automation.dll). + + This is the base class for two kinds of mshsnapins: MshSnapin and CustomMshSnapin. + + Each mshsnapin assembly should derive from this class (indirectly) and fill + in information about mshsnapin name, vendor, and version. + + At install time, installation utilities (like InstallUtil.exe) will + call install this engine assembly based on the implementation in + this class. + + This class derives from base class PSInstaller. PSInstaller will + handle the details about how information got written into registry. + Here, the information about registry content is provided. + + The reason of not calling this class MshSnapinInstaller is to "hide" the details + that MshSnapin class is actually doing installion. It is also more intuitive + since people deriving from this class will think there are really + implementing a class for mshsnapin. + + + + + This is an abstract class to be derived by monad mshsnapin and custom mshsnapin. + MshSnapin developer should not directly derive from this class. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Raw mshsnapin is a class for allowing mshsnapin developers to directly + specify the set of cmdlets, providers, types, formats, assemblies + available in the mshsnapin. + + To use this class, mshsnapin developers will drive from it and fill + in details about cmdlet, provider, type, format, assemblies. + + This class will also facilitate the registration of the mshsnapin + through installutil.exe. + + This class will be built with monad core engine dll. + + + + Developers should derive from this class to implement their own + custom mshsnapins. + + Derived mshsnapins should be denotated with [RunInstaller] attribute + so that installutil.exe can directly install the mshsnapin into registry. + + + + + Gets the cmdlets defined in custom mshsnapin. + + + This member can be derived to provide the list of cmdlets to be included for this mshsnapin. + + + + + Gets the providers defined in custom mshsnapin. + + + This member can be derived to provide the list of providers to be included for this mshsnapin. + + + + + Gets the types defined in custom mshsnapin. + + + This member can be derived to provide the list of types to be included for this mshsnapin. + + + + + Gets the formatsdefined in raw mshsnapin. + + + This member can be derived to provide the list of formats to be included for this mshsnapin. + + + + + + + + + + + MshSnapin is a class for regular mshsnapin's which is constructed + based on mshsnapin assembly. + + This class derives from PSSnapInInstaller and will be used as the base + for all regular mshsnapins. + + + + + Developers should derive from this class when implementing their own + mshsnapins. + + Derived mshsnapins should be denotated with [RunInstaller] attribute + so that installutil.exe can directly install the mshsnapin into registry. + + + + + Gets list of format files to be loaded for this mshsnapin. + + + This member can be derived to provide the list of formats to be loaded for this mshsnapin. + + + + + Gets list of type files to be loaded for this mshsnapin. + + + This member can be derived to provide the list of types to be loaded for this mshsnapin. + + + + + + + + + + Exception with a full stack trace excluding the last two frames + + + + + calls the base class with message and sets the stack frame + + repassed to the base class + + + + returns the stack trace set in the constructor + + the constructor's stackTrace + + + + This class contain the few methods necessary for + the basic assertion use. + + + All methods are public and static. + The class cannot derive from the sealed System.Diagnostics.Debug + The class was also made sealed. + + + + Diagnostics.Assert(x >= 0,"A negative x would have caused early return."); + + + + + + + + If set to true will prevent the assertion dialog from showing up + by throwing an exception instead of calling Debug.Assert + + false for dialog, true for exception + + + + This class only has statics, so we shouldn't need to instantiate any object. + + + + + Basic assertion with logical condition and message + + + logical condtion that should be true for program to proceed + + + Message to explain why condition should always be true + + + + + Basic assertion with logical condition, message and detailed message + + + logical condtion that should be true for program to proceed + + + Message to explain why condition should always be true + + + Additional information about the assertion + + + + + This exception is thrown when a command cannot be found. + + + + + Constructs a CommandNotFoundException. This is the recommended constructor. + + + + The name of the command that could not be found. + + + + The inner exception. + + + + This string is message template string + + + + This string is the ErrorId passed to the ErrorRecord, and is also + the resourceId used to look up the message template string in + DiscoveryExceptions.txt. + + + + Additional arguments to format into the message. + + + + + Constructs a CommandNotFoundException. + + + + + Constructs a CommandNotFoundException + + + + The message used in the exception. + + + + + Constructs a CommandNotFoundException + + + + The message used in the exception. + + + + An exception that led to this exception. + + + + + Serialization constructor for class CommandNotFoundException + + + + serialization information + + + + streaming context + + + + + Serializes the CommandNotFoundException. + + + + serialization information + + + + streaming context + + + + + Gets the ErrorRecord information for this exception. + + + + + Gets the name of the command that could not be found. + + + + + Defines the exception thrown when a script's requirements to run specified by the #requires + statements are not met. + + + + + Constructs an ScriptRequiresException. Recommended constructor for the class for + #requires -shellId MyShellId. + + + + The name of the script containing the #requires statement. + + + + The ID of the shell that is incompatible with the current shell. + + + + The path to the shell specified in the #requires -shellId statement. + + + + The error id for this exception. + + + + + Constructs an ScriptRequiresException. Recommended constructor for the class for + #requires -version N. + + + + The name of the script containing the #requires statement. + + + + The Msh version that the script requires. + + + + The current Msh version + + + + The error id for this exception. + + + + + Constructs an ScriptRequiresException. Recommended constructor for the class for the + #requires -PSSnapin MyPSSnapIn statement. + + + + The name of the script containing the #requires statement. + + + + The missing snap-ins/modules that the script requires. + + + /// + Indicates whether the error message needs to be constructed for missing snap-ins/ missing modules. + + + + The error id for this exception. + + + + + Constructs an ScriptRequiresException. Recommended constructor for the class for the + #requires -PSSnapin MyPSSnapIn statement. + + + + The name of the script containing the #requires statement. + + + + The missing snap-ins/modules that the script requires. + + + /// + Indicates whether the error message needs to be constructed for missing snap-ins/ missing modules. + + + + The error id for this exception. + + + + The error Record for this exception. + + + + + Constructs an ScriptRequiresException. Recommended constructor for the class for + #requires -RunAsAdministrator statement. + + + + The name of the script containing the #requires statement. + + + + The error id for this exception. + + + + + Constructs an PSVersionNotCompatibleException + + + + + Constructs an PSVersionNotCompatibleException + + + + The message used in the exception. + + + + + Constructs an PSVersionNotCompatibleException + + + + The message used in the exception. + + + + The exception that led to this exception. + + + + + Constructs an PSVersionNotCompatibleException using serialized data. + + + + serialization information + + + + streaming context + + + + + Gets the serialized data for the exception. + + + + serialization information + + + + streaming context + + + + + Gets the name of the script that contained the #requires statement. + + + + + Gets the PSVersion that the script requires + + + + + Gets the missing snap-ins that the script requires + + + + + Gets or sets the ID of the shell. + + + + + Gets or sets the path to the incompatible shell + + + + + Defines the exception that is thrown if a native command fails. + + + + + Initializes a new instance of the ApplicationFailedException class and defines the serialization information, + and streaming context. + + The serialization information to use when initializing this object + The streaming context to use when initializing this object + constructed object + + + + Initializes a new instance of the class ApplicationFailedException. + + constructed object + + + + Initializes a new instance of the ApplicationFailedException class and defines the error message. + + The error message to use when initializing this object + constructed object + + + + Initializes a new instance of the ApplicationFailedException class and defines the error message and + errorID. + + The error message to use when initializing this object + The errorId to use when initializing this object + constructed object + + + + Initializes a new instance of the ApplicationFailedException class and defines the error message, + error ID and inner exception. + + The error message to use when initializing this object + The errorId to use when initializing this object + The inner exception to use when initializing this object + constructed object + + + + Initializes a new instance of the ApplicationFailedException class and defines the error message and + inner exception. + + The error message to use when initializing this object + The inner exception to use when initializing this object + constructed object + + + + Providers that want to specify OutputType can use these strings + for the ProviderCmdlet parameter. + + + + + Add-Content cmdlet + + + + + Clear-Content cmdlet + + + + + Clear-Item cmdlet + + + + + Clear-ItemProperty cmdlet + + + + + Convert-Path cmdlet + + + + + Copy-Item cmdlet + + + + + Copy-ItemProperty cmdlet + + + + + Get-Acl cmdlet + + + + + Get-ChildItem cmdlet + + + + + Get-Content cmdlet + + + + + Get-Item cmdlet + + + + + Get-ItemProperty cmdlet + + + + + Get-Location cmdlet + + + + + Get-PSDrive cmdlet + + + + + Get-PSProvider cmdlet + + + + + Invoke-Item cmdlet + + + + + Join-Path cmdlet + + + + + Move-Item cmdlet + + + + + Move-ItemProperty cmdlet + + + + + New-Item cmdlet + + + + + New-ItemProperty cmdlet + + + + + New-PSDrive cmdlet + + + + + Pop-Location cmdlet + + + + + Push-Location cmdlet + + + + + Remove-Item cmdlet + + + + + Remove-ItemProperty cmdlet + + + + + Remove-PSDrive cmdlet + + + + + Rename-Item cmdlet + + + + + Rename-ItemProperty cmdlet + + + + + Resolve-Path cmdlet + + + + + Set-Acl cmdlet + + + + + Set-Content cmdlet + + + + + Set-Item cmdlet + + + + + Set-ItemProperty cmdlet + + + + + Set-Location cmdlet + + + + + Split-Path cmdlet + + + + + Test-Path cmdlet + + + + + Indicates that a cmdlet hit a terminating error. + + + InnerException is the error which the cmdlet hit. + + + + + Instantiates a new instance of the CmdletInvocationException class + + + + + + Instantiates a new instance of the CmdletInvocationException class + + wrapped exception + + identity of cmdlet, null is unknown + + + + + Instantiates a new instance of the CmdletInvocationException class + + + + + Instantiates a new instance of the CmdletInvocationException class + + + constructed object + + + + Instantiates a new instance of the CmdletInvocationException class + + + + constructed object + + + + Initializes a new instance of the CmdletInvocationException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + streaming context + + + + The error reported by the cmdlet + + never null + + + + Indicates that a cmdlet hit a terminating error of type + . + This is generally reported from the standard provider navigation cmdlets + such as get-childitem. + + + + + Instantiates a new instance of the CmdletProviderInvocationException class + + wrapped exception + + identity of cmdlet, null is unknown + + constructed object + + + + Instantiates a new instance of the CmdletProviderInvocationException class + + constructed object + + + + Initializes a new instance of the CmdletProviderInvocationException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Instantiates a new instance of the CmdletProviderInvocationException class + + + constructed object + + + + Instantiates a new instance of the CmdletProviderInvocationException class + + + + constructed object + + + + InnerException as ProviderInvocationException + + ProviderInvocationException + + + + This is the ProviderInfo associated with the provider which + generated the error. + + may be null + + + + Indicates that the pipeline has already been stopped. + + + When reported as the result of a command, PipelineStoppedException + indicates that the command was stopped asynchronously, either by the + user hitting CTRL-C, or by a call to + . + + When a cmdlet or provider sees this exception thrown from a Monad API such as + WriteObject(object) + this means that the command was already stopped. The cmdlet or provider + should clean up and return. + Catching this exception is optional; if the cmdlet or providers chooses not to + handle PipelineStoppedException and instead allow it to propagate to the + Monad Engine's call to ProcessRecord, the Monad Engine will handle it properly. + + + + + Instantiates a new instance of the PipelineStoppedException class + + constructed object + + + + Initializes a new instance of the PipelineStoppedException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Instantiates a new instance of the PipelineStoppedException class + + + constructed object + + + + Instantiates a new instance of the PipelineStoppedException class + + + + constructed object + + + + PipelineClosedException occurs when someone tries to write + to an asynchronous pipeline source and the pipeline has already + been stopped. + + + + + + Instantiates a new instance of the PipelineClosedException class + + constructed object + + + + Instantiates a new instance of the PipelineClosedException class + + + constructed object + + + + Instantiates a new instance of the PipelineClosedException class + + + + constructed object + + + + Initializes a new instance of the PipelineClosedException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + ActionPreferenceStopException indicates that the command stopped due + to the ActionPreference.Stop or Inquire policy. + + + For example, if $WarningPreference is "Stop", the command will fail with + this error if a cmdlet calls WriteWarning. + + + + + Instantiates a new instance of the ActionPreferenceStopException class + + constructed object + + + + Instantiates a new instance of the ActionPreferenceStopException class + + + Non-terminating error which triggered the Stop + + constructed object + + + + Instantiates a new instance of the ActionPreferenceStopException class + + + + constructed object + + + + Instantiates a new instance of the ActionPreferenceStopException class + + + + + Initializes a new instance of the ActionPreferenceStopException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + streaming context + + + + Instantiates a new instance of the ActionPreferenceStopException class + + + constructed object + + + + Instantiates a new instance of the ActionPreferenceStopException class + + + + constructed object + + + + see + + ErrorRecord + + If this error results from a non-terminating error being promoted to + terminating due to -ErrorAction or $ErrorActionPreference, this is + the non-terminating error. + + + + + ParentContainsErrorRecordException is the exception contained by the ErrorRecord + which is associated with a Monad engine custom exception through + the IContainsErrorRecord interface. + + + We use this exception class + so that there is not a recursive "containment" relationship + between the Monad engine exception and its ErrorRecord. + + + + + Instantiates a new instance of the ParentContainsErrorRecordException class. + Note that this sets the Message and not the InnerException. + + constructed object + + I leave this non-standard constructor form public. + + + + + Instantiates a new instance of the ParentContainsErrorRecordException class + + + constructed object + + + + Instantiates a new instance of the ParentContainsErrorRecordException class + + constructed object + + + + Instantiates a new instance of the ParentContainsErrorRecordException class + + + + constructed object + + + + Initializes a new instance of the ParentContainsErrorRecordException class + using data serialized via + + + serialization information + streaming context + doesn't return + always + + + + Gets the message for the exception + + + + + Serializer for + + serialization information + context + + + + Indicates that a success object was written and success-to-error ("1>&2") + has been specified. + + + The redirected object is available as + + in the ErrorRecord which contains this exception. + + + + + Instantiates a new instance of the RedirectedException class + + constructed object + + + + Instantiates a new instance of the RedirectedException class + + + constructed object + + + + Instantiates a new instance of the RedirectedException class + + + + constructed object + + + + Initializes a new instance of the RedirectedException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + ScriptCallDepthException occurs when the number of + session state objects of this type in this scope + exceeds the configured maximum. + + + When one Monad command or script calls another, this creates an additional + scope. Some script expressions also create a scope. Monad imposes a maximum + call depth to prevent stack overflows. The maximum call depth is configurable + but generally high enough that scripts which are not deeply recursive + should not have a problem. + + + + + Instantiates a new instance of the ScriptCallDepthException class + + constructed object + + + + Instantiates a new instance of the ScriptCallDepthException class + + + constructed object + + + + Instantiates a new instance of the ScriptCallDepthException class + + + + constructed object + + + + Initializes a new instance of the ScriptCallDepthException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + context + + + + see + + + + TargetObject is the offending call depth + + + + + Always 0 - depth is not tracked as there is no hard coded maximum. + + + + + PipelineDepthException occurs when the number of + commands participating in a pipeline (object streaming) + exceeds the configured maximum. + + + + + + + Instantiates a new instance of the PipelineDepthException class + + constructed object + + + + Instantiates a new instance of the PipelineDepthException class + + + constructed object + + + + Instantiates a new instance of the PipelineDepthException class + + + + constructed object + + + + Initializes a new instance of the PipelineDepthException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + context + + + + see + + + + TargetObject is the offending call depth + + + + + Always 0 - depth is not tracked as there is no hard coded maximum. + + + + + + A cmdlet/provider should throw HaltCommandException + when it wants to terminate the running command without + this being considered an error. + + + For example, "more" will throw HaltCommandException if the user hits "q". + + Only throw HaltCommandException from your implementation of ProcessRecord etc. + + Note that HaltCommandException does not define IContainsErrorRecord. + This is because it is not reported to the user. + + + + + Instantiates a new instance of the HaltCommandException class + + constructed object + + + + Instantiates a new instance of the HaltCommandException class + + + constructed object + + + + Instantiates a new instance of the HaltCommandException class + + + + constructed object + + + + Initializes a new instance of the HaltCommandException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + The type extension methods within this partial class are used/shared by both FullCLR and CoreCLR powershell. + + * If you want to add an extension method that will be used by both FullCLR and CoreCLR powershell, please add it here. + * If you want to add an extension method that will be used only by CoreCLR powershell, please add it to the partial + 'PSTypeExtensions' class in 'CorePsExtensions.cs'. + + + + + Type.EmptyTypes is not in CoreCLR. Use this one to replace it. + + + + + Check does the type have an instance default constructor with visibility that allows calling it from subclass. + + type + true when type has a default ctor. + + + + Defines the exception thrown for all Metadata errors + + + + + Initializes a new instance of MetadataException with serialization parameters + + serialization information + streaming context + + + + Initializes a new instance of MetadataException with the message set + to typeof(MetadataException).FullName + + + + + Initializes a new instance of MetadataException setting the message + + the exception's message + + + + Initializes a new instance of MetadataException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Defines the exception thrown for all Validate attributes + + + + + Initializes a new instance of ValidationMetadataException with serialization parameters + + serialization information + streaming context + + + + Initializes a new instance of ValidationMetadataException with the message set + to typeof(ValidationMetadataException).FullName + + + + + Initializes a new instance of ValidationMetadataException setting the message + + the exception's message + + + + Initializes a new instance of ValidationMetadataException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Initialize a new instance of ValidationMetadataException. This validation exception could be + ignored in positional binding phase if the swallowException is set to be true. + + + The error message + + Indicate whether to swallow this exception in positional binding phase + + + + + Make the positional binding swallow this exception when it's set to true + + + + This property is only used internally in the positional binding phase + + + + + Defines the exception thrown for all ArgumentTransformation attributes + + + + + Initializes a new instance of ArgumentTransformationMetadataException with serialization parameters + + serialization information + streaming context + + + + Initializes a new instance of ArgumentTransformationMetadataException with the message set + to typeof(ArgumentTransformationMetadataException).FullName + + + + + Initializes a new instance of ArgumentTransformationMetadataException setting the message + + the exception's message + + + + Initializes a new instance of ArgumentTransformationMetadataException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + Defines the exception thrown for all parameter binding exceptions related to metadata attributes + + + + + Initializes a new instance of ParsingMetadataException with serialization parameters + + serialization information + streaming context + + + + Initializes a new instance of ParsingMetadataException with the message set + to typeof(ParsingMetadataException).FullName + + + + + Initializes a new instance of ParsingMetadataException setting the message + + the exception's message + + + + Initializes a new instance of ParsingMetadataException setting the message and innerException + + the exception's message + the exceptions's inner exception + + + + This is a wrapper for exception class + + which provides additional information via + . + + + Instances of this exception class are usually generated by the + Monad Engine. It is unusual for code outside the Monad Engine + to create an instance of this class. + + + + + Initializes a new instance of the PSArgumentException class. + + constructed object + + + + Initializes a new instance of the PSArgumentException class. + + + constructed object + + Per MSDN, the parameter is message. + I confirm this experimentally as well. + + + + + Initializes a new instance of the PSArgumentException class. + + + + constructed object + + Note the unusual order of the construction parameters. + ArgumentException has this ctor form and we imitate it here. + + + + + Initializes a new instance of the PSArgumentException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + streaming context + + + + Initializes a new instance of the PSArgumentException class. + + + + constructed object + + + + Additional information about the error + + + + Note that ErrorRecord.Exception is + . + + + + + see + + + Exception.Message is get-only, but you can effectively + set it in a subclass by overriding this virtual property. + + + + + + This is a wrapper for exception class + + which provides additional information via + . + + + Instances of this exception class are usually generated by the + Monad Engine. It is unusual for code outside the Monad Engine + to create an instance of this class. + + + + + Initializes a new instance of the PSArgumentNullException class. + + constructed object + + + + Initializes a new instance of the PSArgumentNullException class. + + + constructed object + + Per MSDN, the parameter is paramName and not message. + I confirm this experimentally as well. + + + + + Initializes a new instance of the PSArgumentNullException class. + + + + constructed object + + + + Initializes a new instance of the PSArgumentNullException class. + + + + constructed object + + ArgumentNullException has this ctor form and we imitate it here. + + + + + Initializes a new instance of the PSArgumentNullException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + streaming context + + + + Additional information about the error + + + + Note that ErrorRecord.Exception is + . + + + + + see + + + Exception.Message is get-only, but you can effectively + set it in a subclass by overriding this virtual property. + + + + + + This is a wrapper for exception class + + which provides additional information via + . + + + Instances of this exception class are usually generated by the + Monad Engine. It is unusual for code outside the Monad Engine + to create an instance of this class. + + + + + Constructor for class PSArgumentOutOfRangeException + + constructed object + + + + Initializes a new instance of the PSArgumentOutOfRangeException class. + + + constructed object + + Per MSDN, the parameter is paramName and not message. + I confirm this experimentally as well. + + + + + Initializes a new instance of the PSArgumentOutOfRangeException class. + + + + + constructed object + + ArgumentOutOfRangeException has this ctor form and we imitate it here. + + + + + Initializes a new instance of the PSArgumentOutOfRangeException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + streaming context + + + + Initializes a new instance of the PSArgumentOutOfRangeException class. + + + + constructed object + + + + Additional information about the error + + + + Note that ErrorRecord.Exception is + . + + + + + This is a wrapper for exception class + + which provides additional information via + . + + + Instances of this exception class are usually generated by the + Monad Engine. It is unusual for code outside the Monad Engine + to create an instance of this class. + + + + + Initializes a new instance of the PSInvalidOperationException class. + + constructed object + + + + Initializes a new instance of the PSInvalidOperationException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + streaming context + + + + Initializes a new instance of the PSInvalidOperationException class. + + + constructed object + + + + Initializes a new instance of the PSInvalidOperationException class. + + + + constructed object + + + + Initializes a new instance of the PSInvalidOperationException class. + + + + + + + constructed object + + + + Additional information about the error + + + + Note that ErrorRecord.Exception is + . + + + + + This is a wrapper for exception class + + which provides additional information via + . + + + Instances of this exception class are usually generated by the + Monad Engine. It is unusual for code outside the Monad Engine + to create an instance of this class. + + + + + Initializes a new instance of the PSNotImplementedException class. + + constructed object + + + + Initializes a new instance of the PSNotImplementedException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + streaming context + + + + Initializes a new instance of the PSNotImplementedException class. + + + constructed object + + + + Initializes a new instance of the PSNotImplementedException class. + + + + constructed object + + + + Additional information about the error + + + + Note that ErrorRecord.Exception is + . + + + + + This is a wrapper for exception class + + which provides additional information via + . + + + Instances of this exception class are usually generated by the + Monad Engine. It is unusual for code outside the Monad Engine + to create an instance of this class. + + + + + Initializes a new instance of the PSNotSupportedException class. + + constructed object + + + + Initializes a new instance of the PSNotSupportedException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + streaming context + + + + Initializes a new instance of the PSNotSupportedException class. + + + constructed object + + + + Initializes a new instance of the PSNotSupportedException class. + + + + constructed object + + + + Additional information about the error + + + + Note that ErrorRecord.Exception is + . + + + + + This is a wrapper for exception class + + which provides additional information via + . + + + Instances of this exception class are usually generated by the + Monad Engine. It is unusual for code outside the Monad Engine + to create an instance of this class. + + + + + Initializes a new instance of the PSObjectDisposedException class. + + + constructed object + + Per MSDN, the parameter is objectName and not message. + I confirm this experimentally as well. + Also note that there is no parameterless constructor. + + + + + Initializes a new instance of the PSObjectDisposedException class. + + + + constructed object + + + + Initializes a new instance of the PSObjectDisposedException class. + + + + constructed object + + + + Initializes a new instance of the PSObjectDisposedException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + streaming context + + + + Additional information about the error + + + + Note that ErrorRecord.Exception is + . + + + + + An PSTraceSource is a representation of a System.Diagnostics.TraceSource instance + that is used the the Monad components to produce trace output. + + + + It is permitted to subclass + but there is no established scenario for doing this, nor has it been tested. + + + + + An PSTraceSource is a representation of a System.Diagnostics.TraceSource instance + that is used the the Monad components to produce trace output. + + + + + + Lock object for the GetTracer method + + + + + A helper to get an instance of the PSTraceSource class + + + + The name of the category that this class + will control the tracing for. + + + + The description to describe what the category + is used for. + + + + An instance of the PSTraceSource class which is initialized + to trace for the specified category. If multiple callers ask for the same category, + the same PSTraceSource will be returned. + + + + + + A helper to get an instance of the PSTraceSource class + + + + The name of the category that this class + will control the tracing for. + + + + The description to describe what the category + is used for. + + + + If true, the line headers will be traced, if false, only the trace message will be traced. + + + + An instance of the PSTraceSource class which is initialized + to trace for the specified category. If multiple callers ask for the same category, + the same PSTraceSource will be returned. + + + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This is not allowed to call other + Throw*Exception variants, since they call this. + + + The name of the parameter whose argument value was null + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This variant allows the caller to + specify alternate template text, but only in assembly S.M.A.Core. + + + The name of the parameter whose argument value was invalid + + + The template string for this error + + + Objects corresponding to {0}, {1}, etc. in the resource string + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This variant uses the default + ArgumentException template text. This is not allowed to call + other Throw*Exception variants, since they call this. + + + The name of the parameter whose argument value was invalid + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This variant allows the caller to + specify alternate template text, but only in assembly S.M.A.Core. + + + The name of the parameter whose argument value was invalid + + + The template string for this error + + + Objects corresponding to {0}, {1}, etc. in the resource string + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This variant allows the caller to + specify alternate template text, but only in assembly S.M.A.Core. + + + The template string for this error + + + Objects corresponding to {0}, {1}, etc. in the resource string + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This variant allows the caller to + specify alternate template text, but only in assembly S.M.A.Core. + + + This is the InnerException for the InvalidOperationException + + + The template string for this error + + + Objects corresponding to {0}, {1}, etc. in the resource string + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This is not allowed to call other + Throw*Exception variants, since they call this. + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This is not allowed to call other + Throw*Exception variants, since they call this. + + + + The template string for this error + + + + Objects corresponding to {0}, {1}, etc. in the resource string + + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This is not allowed to call other + Throw*Exception variants, since they call this. + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This variant uses the default + ArgumentOutOfRangeException template text. This is not allowed to call + other Throw*Exception variants, since they call this. + + + The name of the parameter whose argument value was out of range + + + The value of the argument causing the exception + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This variant allows the caller to + specify alternate template text, but only in assembly S.M.A.Core. + + + The name of the parameter whose argument value was invalid + + + The value of the argument causing the exception + + + The template string for this error + + + Objects corresponding to {0}, {1}, etc. in the resource string + + Exception instance ready to throw + + + + Traces the Message and StackTrace properties of the exception + and returns the new exception. This variant uses the default + ObjectDisposedException template text. This is not allowed to call + other Throw*Exception variants, since they call this. + + + The name of the disposed object + + Exception instance ready to throw + + Note that the parameter is the object name and not the message. + + + + + Constructor that determines the name of the trace + flag in the config file. + + + + The full name for the trace category. This is different from the name parameter as + it is not limited to 16 characters. + + + + The name of the category that this class + will control the tracing for. This parameter must always be 16 characters to ensure + proper formatting of the output. + + + + The description to describe what the category + is used for. + + + + If true, the line headers will be traced, if false, only the trace message will be traced. + + + + + + Traces the app domain header with information about the execution + time, the platform, etc. + + + + + Outputs a header when a new StructuredTraceSource object is created + + + + The assembly that created the instance of the StructuredTraceSource. + + + + A header will be output that contains information such as; + the category and description of the new trace object, + the assembly in which the new trace object + will be stored. + + + + + + Traces the method name and indents the trace output + + + The format string for additional arguments to be traced + + + The additional arguments given to the format string + + + An object that supports IDisposable. The caller + should dispose of the object when it goes out of + scope. + + + + + + public void MethodName(int count) + { + using (TraceMethod( + "count={0:d}", + count)) + { + // do something here... + } + } + + + + This will produce output similar to the following: + + Entering MethodName: count=4 + other trace output indented + Leaving MethodName + + + + + Traces the entrance and exit from event handlers + + + An object that supports IDisposable. The caller + should dispose of the object when it goes out of + scope. + + + + + Traces the entrance and exit from event handlers + + + The format string for additional arguments to be traced + + + The additional arguments given to the format string + + + An object that supports IDisposable. The caller + should dispose of the object when it goes out of + scope. + + + + + Traces the user specified lock name and indents the trace output + + + An object that supports IDisposable. The caller + should dispose of the object when it goes out of + scope. + + + + + + public void MethodName() + { + lock (this) + { + using (TraceLock("my lock name")) + { + // do something here... + } + } + } + + + + This will produce output similar to the following: + + Entering Lock: my lock name + other trace output indented + Leaving Lock: my lock name + + + + + Call this before acquiring a lock + + + User defined name given to the lock + + + + + Call this after acquiring a lock + + + User defined name given to the lock + + + Use this only if the TraceLock that returns + an IDisposable won't work in your situation. + You will not get automatic indentation or + release tracing of the lock. + + + + + Call this after releasing the lock, but only + if you called TraceLockAcquired when you acquired + the lock. + + + User defined name given to the lock + + + + + A helper to simplify tracing of the lock flags. + + + A format string for the output. + + + User defined name for the lock + + + + + Traces the specified formatted output when PSTraceSourceOptions.Error + is enabled. + + + The format string containing the error message + + + The arguments for the format string + + + + + Traces the specified formatted output when PSTraceSourceOptions.Warning + is enabled. + + + + The format string containing the error message + + + + The arguments for the format string + + + + + + Traces the specified formatted output when PSTraceSourceOptions.Verbose + is enabled. + + + + The format string containing the error message + + + + The arguments for the format string + + + + + + Traces the formatted output when PSTraceSourceOptions.WriteLine is enabled + + + + The format string + + + + + + Traces the formatted output when PSTraceSourceOptions.WriteLine is enabled + + + The format string + + + + + + Traces the formatted output when PSTraceSourceOptions.WriteLine is enabled + + + The format string + + + + + + + Traces the formatted output when PSTraceSourceOptions.WriteLine is enabled + + + The format string + + + + + + + + Traces the formatted output when PSTraceSourceOptions.WriteLine is enabled + + + The format string + + + + + + + + + Traces the formatted output when PSTraceSourceOptions.WriteLine is enabled + + + The format string + + + + + + + + + + Traces the formatted output when PSTraceSourceOptions.WriteLine is enabled + + + The format string + + + + + + + + + + + Traces the formatted output when PSTraceSourceOptions.WriteLine is enabled + + + + The object to be output + + + + + + Formats the specified text and then traces it + + + + The flag that met the criteria to have this line traced. + + + + This is the trace class formatter. For instance, + TraceError has a formatter like "ERROR: {0}" + + + + Additional format string + + + + Arguments for the additional format string + + + + + + Gets the method name of the method that called this one + plus the skipFrames. + + + For instance, GetCallingMethodNameAndParameters(1) + will return the method that called the method that is calling + GetCallingMethodNameAndParameters. + + + The number of frames to skip in the calling stack + + + The name of the method on the stack + + + + + Composes a line of trace output and then writes it + + + + The flag that caused the line to be traced + + + + The string to write with format symbols if necessary + + + + Arguments to the format string + + + + The line is composed by prefixing the process name, thread ID, + and tick count. Then the indenting is added. Then the + specified string is formatted. Finally the finished string + is output using the Trace class. + + + + + Property to access the indent level in thread local storage. + + + + + Allocates some thread local storage to hold the indent level + + + + + Local storage for the trace switch flags + + + + + Gets or sets the description for this trace sources + + + + + Determines if the line and switch headers should be shown + + + + + + Gets the full name of the trace source category + + + + + + Creates an instance of the TraceSource on demand + + + + + + Gets or sets the options for what will be traced. + + + + + Gets the attributes of the TraceSource + + + + + Gets the listeners for the TraceSource + + + + + Gets the TraceSource name (also known as category). + + + + Note, this name is truncated to 16 characters due to limitations + in the TraceSource class. + + + + + Gets or sets the TraceSource's Switch + + + + + Storage for all the PSTraceSource instances. + + + + + + Storage for trace source instances which have not been instantiated but for which + the user has specified Options. + + If the PSTraceSource cannot be found in the TraceCatalog, the same name is used + to look in this dictionary to see if the PSTraceSource has been pre-configured. + + + + + + The exception thrown if the specified value can not be bound parameter of a command. + + + + + Constructs a ParameterBindingException. + + + + The category for the error. + + + + The information about the command that encountered the error. + + + + + + The position for the command or parameter that caused the error. + If position is null, the one from the InvocationInfo is used. + + + + + The parameter on which binding caused the error. + + + + + The Type the parameter was expecting. + + + + + The Type that was attempted to be bound to the parameter. + + + + + The format string for the exception message. + + + + The error ID. + + + + Additional arguments to pass to the format string. + + + + + If or + is null or empty. + + + + + Constructs a ParameterBindingException + + + + The inner exception. + + + + The category for the error. + + + + The information about the command that encountered the error. + + InvocationInfo.MyCommand.Name == {0} + + + + The position for the command or parameter that caused the error. + If position is null, the one from the InvocationInfo is used. + + token.LineNumber == {4} + token.OffsetInLine == {5} + + + + The parameter on which binding caused the error. + + parameterName == {1} + + + + The Type the parameter was expecting. + + parameterType == {2} + + + + The Type that was attempted to be bound to the parameter. + + typeSpecified == {3} + + + + The format string for the exception message. + + + + The error ID. + + + + Additional arguments to pass to the format string. + + starts at {6} + + + + If is null. + + + + If or + is null or empty. + + + + + + + + + + + + + + + Constructors a ParameterBindingException using serialized data. + + + + serialization information + + + + streaming context + + + + + Serializes the exception + + + + serialization information + + + + streaming context + + + + + Constructs a ParameterBindingException. + + + + DO NOT USE!!! + + + + + Constructors a ParameterBindingException + + + + Message to be included in exception. + + + + DO NOT USE!!! + + + + + Constructs a ParameterBindingException + + + + Message to be included in the exception. + + + + exception that led to this exception + + + + DO NOT USE!!! + + + + + Gets the message for the exception + + + + + Gets the name of the parameter that the parameter binding + error was encountered on. + + + + + Gets the type the parameter is expecting. + + + + + Gets the Type that was specified as the parameter value + + + + + Gets the errorId of this ParameterBindingException + + + + + Gets the line in the script at which the error occurred. + + + + + Gets the offset on the line in the script at which the error occurred. + + + + + Gets the invocation information about the command. + + + + + Constructs a ParameterBindingValidationException + + + + The category for the error. + + + + The information about the command that encountered the error. + + InvocationInfo.MyCommand.Name == {0} + + + + The position for the command or parameter that caused the error. + + token.LineNumber == {4} + token.OffsetInLine == {5} + + + + The parameter on which binding caused the error. + + parameterName == {1} + + + + The Type the parameter was expecting. + + parameterType == {2} + + + + The Type that was attempted to be bound to the parameter. + + typeSpecified == {3} + + + + The format string for the exception message. + + + + The error ID. + + + + Additional arguments to pass to the format string. + + starts at {6} + + + + If or + is null or empty. + + + + + + Constructs a ParameterBindingValidationException + + + + The inner exception. + + + + The category for the error. + + + + The information about the command that encountered the error. + + InvocationInfo.MyCommand.Name == {0} + + + + The position for the command or parameter that caused the error. + + token.LineNumber == {4} + token.OffsetInLine == {5} + + + + The parameter on which binding caused the error. + + parameterName == {1} + + + + The Type the parameter was expecting. + + parameterType == {2} + + + + The Type that was attempted to be bound to the parameter. + + typeSpecified == {3} + + + + The format string for the exception message. + + + + The error ID. + + + + Additional arguments to pass to the format string. + + starts at {6} + + + + If is null. + + + + If or + is null or empty. + + + + + + Constructs a ParameterBindingValidationException from serialized data + + + + serialization information + + + + streaming context + + + + + Make the positional binding ignore this validation exception when it's set to true. + + + + This property is only used internally in the positional binding phase + + + + + Constructs a ParameterBindingArgumentTransformationException + + + + The category for the error. + + + + The information about the command that encountered the error. + + InvocationInfo.MyCommand.Name == {0} + + + + The position for the command or parameter that caused the error. + + token.LineNumber == {4} + token.OffsetInLine == {5} + + + + The parameter on which binding caused the error. + + parameterName == {1} + + + + The Type the parameter was expecting. + + parameterType == {2} + + + + The Type that was attempted to be bound to the parameter. + + typeSpecified == {3} + + + + The format string for the exception message. + + + + The error ID. + + + + Additional arguments to pass to the format string. + + starts at {6} + + + + If or + is null or empty. + + + + + + Constructs a ParameterBindingArgumentTransformationException + + + + The inner exception. + + + + The category for the error. + + + + The information about the command that encountered the error. + + InvocationInfo.MyCommand.Name == {0} + + + + The position for the command or parameter that caused the error. + + token.LineNumber == {4} + token.OffsetInLine == {5} + + + + The parameter on which binding caused the error. + + parameterName == {1} + + + + The Type the parameter was expecting. + + parameterType == {2} + + + + The Type that was attempted to be bound to the parameter. + + typeSpecified == {3} + + + + The format string for the exception message. + + + + The error ID. + + + + Additional arguments to pass to the format string. + + starts at {6} + + + + If is null. + + + + If or + is null or empty. + + + + + + Constructs a ParameterBindingArgumentTransformationException using serialized data + + + + serialization information + + + + streaming context + + + + + Constructs a ParameterBindingParameterDefaultValueException + + + + The category for the error. + + + + The information about the command that encountered the error. + + InvocationInfo.MyCommand.Name == {0} + + + + The position for the command or parameter that caused the error. + + token.LineNumber == {4} + token.OffsetInLine == {5} + + + + The parameter on which binding caused the error. + + parameterName == {1} + + + + The Type the parameter was expecting. + + parameterType == {2} + + + + The Type that was attempted to be bound to the parameter. + + typeSpecified == {3} + + + + The format string for the exception message. + + + + The error ID. + + + + Additional arguments to pass to the format string. + + starts at {6} + + + + If or + is null or empty. + + + + + + Constructs a ParameterBindingParameterDefaultValueException + + + + The inner exception. + + + + The category for the error. + + + + The information about the command that encountered the error. + + InvocationInfo.MyCommand.Name == {0} + + + + The position for the command or parameter that caused the error. + + token.LineNumber == {4} + token.OffsetInLine == {5} + + + + The parameter on which binding caused the error. + + parameterName == {1} + + + + The Type the parameter was expecting. + + parameterType == {2} + + + + The Type that was attempted to be bound to the parameter. + + typeSpecified == {3} + + + + The format string for the exception message. + + + + The error ID. + + + + Additional arguments to pass to the format string. + + starts at {6} + + + + If is null. + + + + If or + is null or empty. + + + + + + Constructs a ParameterBindingParameterDefaultValueException using serialized data + + + + serialization information + + + + streaming context + + + + + Defines the exception thrown when a syntax error occurs while parsing msh script text. + + + + + The list of parser errors. + + + + + Initializes a new instance of the ParseException class and defines the serialization information, + and streaming context. + + The serialization information to use when initializing this object + The streaming context to use when initializing this object + constructed object + + + + Add private data for serialization. + + + + + Initializes a new instance of the class ParseException + + constructed object + + + + Initializes a new instance of the ParseException class and defines the error message. + + The error message to use when initializing this object + constructed object + + + + Initializes a new instance of the ParseException class and defines the error message and + errorID. + + The error message to use when initializing this object + The errorId to use when initializing this object + constructed object + + + + Initializes a new instance of the ParseException class and defines the error message, + error ID and inner exception. + + The error message to use when initializing this object + The errorId to use when initializing this object + The inner exception to use when initializing this object + constructed object + + + + Initializes a new instance of the ParseException class and defines the error message and + inner exception. + + The error message to use when initializing this object + The inner exception to use when initializing this object + constructed object + + + + Initializes a new instance of the ParseException class with a collection of error messages. + + The collection of error messages. + + + + The error message to display. + + + + + Defines the exception thrown when a incomplete parse error occurs while parsing msh script text. + + + This is a variation on a parsing error that indicates that the parse was incomplete + rather than irrecoverably wrong. A host can catch this exception and then prompt for additional + input to complete the parse. + + + + + Initializes a new instance of the IncompleteParseException class and defines the serialization information, + and streaming context. + + The serialization information to use when initializing this object + The streaming context to use when initializing this object + constructed object + + + + Initializes a new instance of the class IncompleteParseException + + constructed object + + + + Initializes a new instance of the IncompleteParseException class and defines the error message. + + The error message to use when initializing this object + constructed object + + + + Initializes a new instance of the IncompleteParseException class and defines the error message and + errorID. + + The error message to use when initializing this object + The errorId to use when initializing this object + constructed object + + + + Initializes a new instance of the IncompleteParseException class and defines the error message, + error ID and inner exception. + + The error message to use when initializing this object + The errorId to use when initializing this object + The inner exception to use when initializing this object + constructed object + + + + Initializes a new instance of the IncompleteParseException class and defines the error message and + inner exception. + + The error message to use when initializing this object + The inner exception to use when initializing this object + constructed object + + + + Defines generic utilities and helper methods for PowerShell + + + + + THE method for opening a file for writing. + Should be used by all cmdlets that write to a file. + + cmdlet that is opening the file (used mainly for error reporting) + path to the file (as specified on the command line - this method will resolve the path) + encoding (this method will convert the command line strin to an Encoding instance) + if true, then we will use default .NET encoding instead of the encoding specified in parameter + + + + Result1: opened for writing + Result2: (inherits from ) opened for writing + Result3: file info that should be used to restore file attributes after done with the file (null is this is not needed) + True if wildcard expansion should be bypassed. + + + + THE method for opening a file for writing. + Should be used by all cmdlets that write to a file. + + cmdlet that is opening the file (used mainly for error reporting) + path to the file (as specified on the command line - this method will resolve the path) + encoding (this method will convert the command line strin to an Encoding instance) + if true, then we will use default .NET encoding instead of the encoding specified in parameter + + + + Result1: opened for writing + Result2: (inherits from ) opened for writing + Result3: file info that should be used to restore file attributes after done with the file (null is this is not needed) + True if wildcard expansion should be bypassed. + + + + resolve a user provided file name or path (including globbing characters) + to a fully qualified file path, using the file system provider + + + + + + + + resolve a user provided file name or path (including globbing characters) + to a fully qualified file path, using the file system provider + + + + + + + + + retrieve the encoding paramater from the command line + it throws if the encoding does not match the known ones + + a System.Text.Encoding object (null if no encoding specified) + + + + Defines enumerations for event ids + + add an entry for a new event that you + add to the manifest. Set it to the same value + that was set in the manifest + + + + None. (Should not be used) + + + + + HostNameResolve + + + + + SchemeResolve + + + + + ShellResolve + + + + + RunspaceConstructor + + + + + RunspacePoolConstructor + + + + + RunspacePoolOpen + + + + + OperationalTransferEventRunspacePool + + + + + RunspacePort + + + + + AppName + + + + + ComputerName + + + + + Scheme + + + + + TestAnalytic + + + + + WSManConnectionInfoDump + + + + + AnalyticTransferEventRunspacePool + + + + + TransportReceivedObject + + + + + AppDomainUnhandledExceptionAnalytic + + + + + TransportErrorAnalytic + + + + + AppDomainUnhandledException + + + + + TransportError + + + + + WSManCreateShell + + + + + WSManCreateShellCallbackReceived + + + + + WSManCloseShell + + + + + WSManCloseShellCallbackReceived + + + + + WSManSendShellInputExtended + + + + + WSManSendShellInputExCallbackReceived + + + + + WSManReceiveShellOutputExtended + + + + + WSManReceiveShellOutputExCallbackReceived + + + + + WSManCreateCommand + + + + + WSManCreateCommandCallbackReceived + + + + + WSManCloseCommand + + + + + WSManCloseCommandCallbackReceived + + + + + WSManSignal + + + + + WSManSignalCallbackReceived + + + + + UriRedirection + + + + + ServerSendData + + + + + ServerCreateRemoteSession + + + + + ReportContext + + + + + ReportOperationComplete + + + + + ServerCreateCommandSession + + + + + ServerStopCommand + + + + + ServerReceivedData + + + + + ServerClientReceiveRequest + + + + + ServerCloseOperation + + + + + LoadingPSCustomShellAssembly + + + + + LoadingPSCustomShellType + + + + + ReceivedRemotingFragment + + + + + SentRemotingFragment + + + + + WSManPluginShutdown + + + + + SerializerWorkflowLoadSuccess + + + + + SerializerWorkflowLoadFailure + + + + + SerializerDepthOverride + + + + + SerializerModeOverride + + + + + SerializerScriptPropertyWithoutRunspace + + + + + SerializerPropertyGetterFailed + + + + + SerializerEnumerationFailed + + + + + SerializerToStringFailed + + + + + SerializerMaxDepthWhenSerializing + + + + + SerializerXmlExceptionWhenDeserializing + + + + + SerializerSpecificPropertyMissing + + + + + PerformanceTrackConsoleStartupStart + + + + + PerformanceTrackConsoleStartupStop + + + + + ErrorRecord + + + + + Exception + + + + + PoweShellObject + + + + + Job + + + + + Writing a simple trace message from code + + + + + Trace the WSManConnectionInfo used for this connection + + + + + Writing a simple trace message from code with 2 + strings + + + + + Writing a simple trace message from code with 2 + strings + + + + + Defines enumerations for channels + + + + + None (No channel selected, should not be used) + + + + + Operational Channel + + + + + Analytic Channel + + + + + Debug Channel + + + + + Define enumerations for levels + + + + + LogAlways + + + + + Critical + + + + + Error + + + + + Warning + + + + + Informational + + + + + Verbose + + + + + Debug + + + + + Defines enumerations for op codes + + + + + None. (Should not be used) + + + + + Open + + + + + Close + + + + + Connect + + + + + Disconnect + + + + + Negotiate + + + + + Create + + + + + Constructor + + + + + Dispose + + + + + EventHandler + + + + + Exception + + + + + Method + + + + + Send + + + + + Receive + + + + + WorkflowLoad + + + + + SerializationSettings + + + + + WinInfo + + + + + WinStart + + + + + WinStop + + + + + WinDCStart + + + + + WinDCStop + + + + + WinExtension + + + + + WinReply + + + + + WinResume + + + + + WinSuspend + + + + + Defines Tasks + + + + + None + + + + + CreateRunspace + + + + + ExecuteCommand + + + + + Serialization + + + + + PowerShellConsoleStartup + + + + + Defines Keywords. + + + + + None + + + + + Runspace + + + + + Pipeline + + + + + Protocol + + + + + Transport + + + + + Host + + + + + Cmdlets + + + + + Serializer + + + + + Session + + + + + ManagedPlugIn + + + + + + + + + + + + + + + + + + + + BaseChannelWriter is the abstract base class defines event specific methods that are used to write a trace. + The default implementation does not write any message to any trace channel + + + + + Dispose method + + + + + TraceError + + + + + TraceWarning + + + + + TraceInformational + + + + + TraceVerbose + + + + + TraceDebug + + + + + TraceLogAlways + + + + + TraceCritical + + + + + + + + + + NullWriter is the implementation of BaseChannelWriter. + This implementation does not write to any trace logs. + This class is singleton and exposes its only instance + through the static Instance property. + + + + + Static Instance property + + + + + ChannelWrite is the concrete implementation of IChannelWrite. It writes all the traces to the specified traceChannel. + TraceChannel is specified in the constructor. + It always uses PowerShell event provider Id. + + + + + + + + + + Dispose method + + + + + TraceError + + + + + TraceWarning + + + + + TraceInformational + + + + + TraceVerbose + + + + + TraceDebug + + + + + TraceLogAlways + + + + + TraceCritical + + + + + TraceSource class gives access to the actual TraceWriter channels. + Three channels are pre-defined 1) Debug 2) Analytic and 3) Operations + This class also has strongly types methods that are used for easy tracing. + + + + + Consturctor + + + + + Dispose method. + + + + + Keywords that were set through constructor when object was instantiated + + + + + Task that was set through constructor + + + + + TraceErrorRecord + + + + + TraceException + + + + + TracePowerShellObject + + + + + TraceJob + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Writes operational scheduled job start message. + + + + + + Writes operational scheduled job completed message. + + + + + + Writes operational scheduled job error message. + + + + + + Writes operational ISE execute script message. + + + + + + Writes operational ISE execute selection message. + + + + + + Writes operational ISE stop command message. + + + + + + Writes operational ISE resume debugger message. + + + + + + Writes operational ISE stop debugger message. + + + + + + Writes operational ISE debugger step into message. + + + + + + Writes operational ISE debugger step over message. + + + + + + Writes operational ISE debugger step out message. + + + + + + Writes operational ISE enable all breakpoints message. + + + + + + Writes operational ISE disable all breakpoints message. + + + + + + Writes operational ISE remove all breakpoints message. + + + + + + Writes operational ISE set breakpoint message. + + + + + + Writes operational ISE remove breakpoint message. + + + + + + Writes operational ISE enable breakpoint message. + + + + + + Writes operational ISE disable breakpoint message. + + + + + + Writes operational ISE hit breakpoint message. + + + + + + + + + + + + + + + + + + + + + + + + + + Gives access to Debug channel writer + + + + + Gives access to analytical channel writer + + + + + Gives access to operational channel writer + + + + + TraceSourceFactory will return an instance of TraceSource every time GetTraceSource method is called. + + + + + Returns an instance of BaseChannelWriter. + If the Etw is not supported by the platform it will return NullWriter.Instance + + A Task and a set of Keywords can be specified in the GetTraceSource method (See overloads). + The supplied task and keywords are used to pass to the Etw provider in case they are + not defined in the manifest file. + + + + + Returns an instance of BaseChannelWriter. + If the Etw is not supported by the platform it will return NullWriter.Instance + + A Task and a set of Keywords can be specified in the GetTraceSource method (See overloads). + The supplied task and keywords are used to pass to the Etw provider in case they are + not defined in the manifest file. + + + + + Returns an instance of BaseChannelWriter. + If the Etw is not supported by the platform it will return NullWriter.Instance + + A Task and a set of Keywords can be specified in the GetTraceSource method (See overloads). + The supplied task and keywords are used to pass to the Etw provider in case they are + not defined in the manifest file. + + + + + Attribute to represent an EtwEvent + + + + + Constructor + + + + + + EventId + + + + + Delegates that defines a call back with no parameter + + + + + Delegates that defines a call back with one parameter (state) + + + + + Delegates that defines a call back with two parameters; state and ElapsedEventArgs. + It will be used in System.Timers.Timer scenarios. + + + + + ETW events argument class + + + + Gets Event descriptor + + + Gets whether the event is sucessfully written + + + Gets payload in the event + + + + Creates a new instance of EtwEventArgs class. + + Event descriptor + Indicate whether the event is sucessfully written + Event payload + + + + This the abstract base class of all activity classes that represent an end-to-end scenario. + + + + + This is a helper class that is used to wrap many multi-threading scenarios + and makes correlation event to be logged easily. + + + + + parantActivityId + + + + + EtwCorrelator Constructor + + + + + + + EtwCorrelator Constructor + + + + + + + EtwCorrelator Constructor + + + + + + + It is to be used in System.Timers.Timer scenarios. + + + + + EtwCorrelator Constructor + + + + + + + This is the wrapper on the actual callback + + + + + Correlate + + + + + This is the wrapper on the actual callback + + + + + This is the wrapper on the actual callback + + + + + This is the wrapper on the actual callback + + + + + Event handler for the class + + + + + Sets the activityId provided in the current thread. + If current thread already has the same activityId it does + nothing. + + + true when provided activity was set, false if current activity + was found to be same and set was not needed + + + + Creates a new ActivityId that can be used to set in the thread's context. + + + + + + Returns the ActivityId set in current thread + + + + + + Constructor + + + + + CorrelateWithActivity (EventId: 0x1f05/7941) + This method also sets a new activity id in current thread. + And then correlates the new id with parentActivityId + + + + + IsEnabled + + + + + Checks whether a provider matching certain levels and keyword is enabled + + Levels to check + Keywords to check + True, if any ETW listener is enabled else false + + + + Correlates parent activity id set in the thread with a new activity id + If parent activity id is not, it just sets a new activity in the current thread. And does not write the Transfer event + + + + + Wraps a callback with no params + + + + + + + Wraps a callback with one object param + + + + + + + Wraps a AsyncCallback with IAsyncResult param + + + + + + + Wraps a callback with one object param and one ElapsedEventArgs object + This is menat to be used in System.Timers.Timer scenarios. + + + + + + + The provider where the tracing messages will be written to. + + + + + The event that is defined to be used to log transfer event. + The derived class must override this property if they don't + want to use the PowerShell's transfer event. + + + + + This is the main method that write the messages to the trace. + All derived classes must use this method to write to the provider log. + + EventDescriptor + payload + + + + Gets the ActivityId from thread local storage. + + + + + Sets the ActivityId in the thread local storage. + + + + + Creates a new activity id + + + + + Sets the activity id in thread local storage and returns the previous value. + + + + + Creates a new activity id, sets thread local storage, and returns the previous value. + + + + + Provides interop access to creating, querying and setting the current activity identifier + + The indicating the type of operation to perform. + The activity id to set or retrieve. + Zero on success. + + + + An object that can be used to revert the ETW activity ID of the current thread + to its original value. + + + + + Reverts the ETW activity ID of the current thread to its original value. + + + Calling has the same effect as + calling this method and is useful in the C# "using" syntax. + + + + + An object that can be used to manage the ETW activity ID of the current thread. + + + + + Gets or sets the ETW activity ID of the current thread. + + + This method should only be used for advanced scenarios + or diagnostics. Prefer using + or instead. + + + + + Creates and sets a new activity ID for the current thread, optionally correlating + the new activity with another activity. + + The ID of an existing activity to be correlated with the + new activity or if correlation is not desired. + An object which can be used to revert the activity ID of the current thread once + the new activity yields control of the current thread. + + + + Creates and sets a new activity ID for the current thread. If the current thread + has an existing activity ID, it will be correlated with the new activity ID. + + An object which can be used to revert the activity ID of the current thread once + the new activity yields control of the current thread. + + + + A simple implementation of . + + + + + Creates an . + + The to use when logging transfer events + during activity correlation. + The to use when logging transfer events + during activity correlation. + + + + Implements . + + + + + Implements . + + + + + Implements . + + + + + ETW logging API + + + + + Class constructor + + + + + Provider interface function for logging health event + + + + + + + + + + Provider interface function for logging engine lifecycle event + + + + + + + + + Provider interface function for logging command health event + + + + + + + Provider interface function for logging command lifecycle event + + + + + + + + Provider interface function for logging pipeline execution detail. + + + + + + + Provider interface function for logging provider health event + + + + + + + + Provider interface function for logging provider lifecycle event + + + + + + + + + Provider interface function for logging settings event + + + + + + + + + + Logs information to the operational channel + + + + + + + + + + Logs information to the operational channel + + + + + + + + + + Logs Verbose to the operational channel + + + + + + + + + + Logs error message to the analytic channel + + + + + + + + + + Logs warning message to the analytic channel + + + + + + + + + + Logs remoting fragment data to verbose channel. + + + + + + + + + + + + + + + Logs verbose message to the analytic channel + + + + + + + + + + Logs informational message to the analytic channel + + + + + + + + + + Logs error message to operation channel. + + + + + + + + + + Logs error message to the operational channel + + + + + + + + + + Writes a transfer event mapping current activity id + with a related activity id + This function writes a transfer event for both the + operational and analytic channels + + + + + + + + + + Writes a transfer event + + + + + + ETW log provider implementation + + + + + Class constructor + + + + + Determines whether any session is requesting the specified event from the provider. + + + + + + Typically, a provider does not call this method to determine whether a session requested the specified event; + the provider simply writes the event, and ETW determines whether the event is logged to a session. A provider + may want to call this function if the provider needs to perform extra work to generate the event. In this case, + calling this function first to determine if a session requested the event or not, may save resources and time. + + + + + Provider interface function for logging health event + + + + + + + + + + Provider interface function for logging engine lifecycle event + + + + + + + + + Provider interface function for logging command health event + + + + + + + Provider interface function for logging command lifecycle event + + + + + + + + Provider interface function for logging pipeline execution detail. + + + + + + + Provider interface function for logging provider health event + + + + + + + + Provider interface function for logging provider lifecycle event + + + + + + + + + Provider interface function for logging settings event + + + + + + + + + + The ETW provider does not use logging variables + + + + + + Gets PSLogUserData from execution context + + + + + + + Appends exception information + + string builder + exception + + + + Appends additional information + + string builder + additional information + + + + Gets PSLevel from severity + + error severity + PS log level + + + + Converts log context to string + + log context + string representation + + + + Writes a single event + + event id + + + + log context + + + + + Writes an event + + + + + + + + + + + + Writes an activity transfer event + + + + + + + + + + + Tracer + + + Tracer + + + + + Critical level + + + + + Error level + + + + + Warning level + + + + + Informational level + + + + + Verbose level + + + + + Keyword all + + + + + Static constructor + + + + + Constructor + + + + + Provider Guid + + + + + Transfer Event + + + + + WriteTransferEvent (EventId: 0x1f05/7941) + + + + + DebugMessage (EventId: 0xc000/49152) + + + + + AbortingWorkflowExecution (EventId: 0xb038/45112) + + + + + ActivityExecutionFinished (EventId: 0xb03f/45119) + + + + + ActivityExecutionQueued (EventId: 0xb017/45079) + + + + + ActivityExecutionStarted (EventId: 0xb018/45080) + + + + + BeginContainerParentJobExecution (EventId: 0xb50c/46348) + + + + + BeginCreateNewJob (EventId: 0xb503/46339) + + + + + BeginJobLogic (EventId: 0xb506/46342) + + + + + BeginProxyChildJobEventHandler (EventId: 0xb512/46354) + + + + + BeginProxyJobEventHandler (EventId: 0xb510/46352) + + + + + BeginProxyJobExecution (EventId: 0xb50e/46350) + + + + + BeginRunGarbageCollection (EventId: 0xb514/46356) + + + + + BeginStartWorkflowApplication (EventId: 0xb501/46337) + + + + + BeginWorkflowExecution (EventId: 0xb508/46344) + + + + + CancellingWorkflowExecution (EventId: 0xb037/45111) + + + + + ChildWorkflowJobAddition (EventId: 0xb50a/46346) + + + + + EndContainerParentJobExecution (EventId: 0xb50d/46349) + + + + + EndCreateNewJob (EventId: 0xb504/46340) + + + + + EndJobLogic (EventId: 0xb507/46343) + + + + + EndpointDisabled (EventId: 0xb044/45124) + + + + + EndpointEnabled (EventId: 0xb045/45125) + + + + + EndpointModified (EventId: 0xb042/45122) + + + + + EndpointRegistered (EventId: 0xb041/45121) + + + + + EndpointUnregistered (EventId: 0xb043/45123) + + + + + EndProxyChildJobEventHandler (EventId: 0xb513/46355) + + + + + EndProxyJobEventHandler (EventId: 0xb511/46353) + + + + + EndProxyJobExecution (EventId: 0xb50f/46351) + + + + + EndRunGarbageCollection (EventId: 0xb515/46357) + + + + + EndStartWorkflowApplication (EventId: 0xb502/46338) + + + + + EndWorkflowExecution (EventId: 0xb509/46345) + + + + + ErrorImportingWorkflowFromXaml (EventId: 0xb01b/45083) + + + + + ForcedWorkflowShutdownError (EventId: 0xb03c/45116) + + + + + ForcedWorkflowShutdownFinished (EventId: 0xb03b/45115) + + + + + ForcedWorkflowShutdownStarted (EventId: 0xb03a/45114) + + + + + ImportedWorkflowFromXaml (EventId: 0xb01a/45082) + + + + + ImportingWorkflowFromXaml (EventId: 0xb019/45081) + + + + + JobCreationComplete (EventId: 0xb032/45106) + + + + + JobError (EventId: 0xb02e/45102) + + + + + JobRemoved (EventId: 0xb033/45107) + + + + + JobRemoveError (EventId: 0xb034/45108) + + + + + JobStateChanged (EventId: 0xb02d/45101) + + + + + LoadingWorkflowForExecution (EventId: 0xb035/45109) + + + + + OutOfProcessRunspaceStarted (EventId: 0xb046/45126) + + + + + ParameterSplattingWasPerformed (EventId: 0xb047/45127) + + + + + ParentJobCreated (EventId: 0xb031/45105) + + + + + PersistenceStoreMaxSizeReached (EventId: 0xb516/46358) + + + + + PersistingWorkflow (EventId: 0xb03d/45117) + + + + + ProxyJobRemoteJobAssociation (EventId: 0xb50b/46347) + + + + + RemoveJobStarted (EventId: 0xb02c/45100) + + + + + RunspaceAvailabilityChanged (EventId: 0xb022/45090) + + + + + RunspaceStateChanged (EventId: 0xb023/45091) + + + + + TrackingGuidContainerParentJobCorrelation (EventId: 0xb505/46341) + + + + + UnloadingWorkflow (EventId: 0xb039/45113) + + + + + WorkflowActivityExecutionFailed (EventId: 0xb021/45089) + + + + + WorkflowActivityValidated (EventId: 0xb01f/45087) + + + + + WorkflowActivityValidationFailed (EventId: 0xb020/45088) + + + + + WorkflowCleanupPerformed (EventId: 0xb028/45096) + + + + + WorkflowDeletedFromDisk (EventId: 0xb02a/45098) + + + + + WorkflowEngineStarted (EventId: 0xb048/45128) + + + + + WorkflowExecutionAborted (EventId: 0xb027/45095) + + + + + WorkflowExecutionCancelled (EventId: 0xb026/45094) + + + + + WorkflowExecutionError (EventId: 0xb040/45120) + + + + + WorkflowExecutionFinished (EventId: 0xb036/45110) + + + + + WorkflowExecutionStarted (EventId: 0xb008/45064) + + + + + WorkflowJobCreated (EventId: 0xb030/45104) + + + + + WorkflowLoadedForExecution (EventId: 0xb024/45092) + + + + + WorkflowLoadedFromDisk (EventId: 0xb029/45097) + + + + + WorkflowManagerCheckpoint (EventId: 0xb049/45129) + + + + + WorkflowPersisted (EventId: 0xb03e/45118) + + + + + WorkflowPluginRequestedToShutdown (EventId: 0xb010/45072) + + + + + WorkflowPluginRestarted (EventId: 0xb011/45073) + + + + + WorkflowPluginStarted (EventId: 0xb007/45063) + + + + + WorkflowQuotaViolated (EventId: 0xb013/45075) + + + + + WorkflowResumed (EventId: 0xb014/45076) + + + + + WorkflowResuming (EventId: 0xb012/45074) + + + + + WorkflowRunspacePoolCreated (EventId: 0xb016/45078) + + + + + WorkflowStateChanged (EventId: 0xb009/45065) + + + + + WorkflowUnloaded (EventId: 0xb025/45093) + + + + + WorkflowValidationError (EventId: 0xb01e/45086) + + + + + WorkflowValidationFinished (EventId: 0xb01d/45085) + + + + + WorkflowValidationStarted (EventId: 0xb01c/45084) + + + + + DebugMessage + + + + + Converts exception object into a string. + + + + + + + Defines generic utilities and helper methods for PowerShell + + + + + Safely retrieves the MainModule property of a + process. Version 2.0 and below of the .NET Framework are + impacted by a Win32 API usability knot that throws an + exception if API tries to enumerate the process' modules + while it is still loading them. This generates the error + message: Only part of a ReadProcessMemory or + WriteProcessMemory request was completed. + The BCL fix in V3 was to just try more, so we do the same + thing. + + Note: If you attempt to retrieve the MainModule of a 64-bit + process from a WOW64 (32-bit) process, the Win32 API has a fatal + flaw that causes this to return the same error. + + If you need the MainModule of a 64-bit process from a WOW64 + process, you will need to write the P/Invoke yourself. + + + The process from which to + retrieve the MainModule + + You are trying to access the MainModule property for a process that is running + on a remote computer. This property is available only for processes that are + running on the local computer. + + + The process Id is not available (or) The process has exited. + + + + + + + + Retrieve the parent process of a process. + + Previously this code used WMI, but WMI is causing a CPU spike whenever the query gets called as it results in + tzres.dll and tzres.mui.dll being loaded into every process to conver the time information to local format. + For perf reasons, we result to P/Invoke. + + + The process we want to find the + parent of + + + + Detects the installation of Frmework Versions 1.1, 2.0, 3.0 and 3.5 and 4.0 through + the official registry instalation keys. + + + + + Gets the three registry names allowing for framework installation and service pack checks based on the + majorVersion and minorVersion version numbers. + + Major version of .NET required, for .NET 3.5 this is 3. + Minor version of .NET required, for .NET 3.5 this is 5. + name of the key containing installValueName + name of the registry key indicating the SP has been installed + name of the key containing the SP value with SP version + name of the value containing the SP value with SP version + true if the majorVersion and minorVersion correspond the versions we can check for, false otherwise. + + + + Tries to read the valueName from the registry key returning null if + the it was not found, if it is not an integer or if or an exception was thrown. + + Key containing valueName + Name of value to be returned + The value or null if it could not be retrieved + + + + Tries to read the keyName from the registry key returning null if + the key was not found or an exception was thrown. + + Key containing subKeyName + NAme of sub key to be returned + The subkey or null if it could not be retrieved + + + + Returns true if IsFrameworkInstalled will be able to check for this framework version. + + version to be checked + Major version of .NET required, for .NET 3.5 this is 3. + Minor version of .NET required, for .NET 3.5 this is 5. + Minimum SP version number corresponding to . + true if IsFrameworkInstalled will be able to check for this framework version + + + + Check if the given version if the framework is installed + + version to check. + for .NET Framework 3.5 and any service pack this can be new Version(3,5) or new Version(3, 5, 21022, 8). + for .NET 3.5 with SP1 this should be new Version(3, 5, 30729, 1). + For other versions please check the table at http://support.microsoft.com/kb/318785. + + + + + + Check if the given version if the framework is installed + + Major version of .NET required, for .NET 3.5 this is 3. + Minor version of .NET required, for .NET 3.5 this is 5. + Minimum SP version required. 0 (Zero) or less means no SP requirement. + true if the framework is available. False if it is not available or that could not be determined. + + + + Returns processor architecture for the current process. + If powershell is running inside Wow64, then is returned. + + processor architecture for the current process + + + + Return true/false to indicate whether the processor architecture is ARM + + + + + + This method is to get the unique key for a UsingExpressionAst. The key is a base64 + encoded string based on the text of the UsingExpressionAst. + + This method is used when handling a script block that contains $using for Invoke-Command. + + When run Invoke-Command targetting a machine that runs PSv3 or above, we pass a dictionary + to the remote end that contains the key of each UsingExpressionAst and its value. This method + is used to generate the key. + + A using expression + Base64 encoded string as the key of the UsingExpressionAst + + + + Evaluate a powershell data file as if it's a module manifest + + + + + + + + + + Get a Hashtable object out of a PowerShell data file (.psd1) + + + Name of the parameter that takes the specified .psd1 file as a value + + + Path to the powershell data file + + + ExecutionContext to use + + + Set of command names that are allowed to use in the .psd1 file + + + Set of variable names that are allowed to use in the .psd1 file + + + If true, allow to use environment variables in the .psd1 file + + + If true, caller guarantees the path is valid + + + + + + This class provides helper methods for converting to/fro from + string to base64string + + + + + Converts string to base64 encoded string + + string to encode + base64 encoded string + + + + Decodes base64 encoded string + + base64 string to decode + decoded string + + + + Decodes base64 encoded string in to args array + + + + + + + Equality comparer based on Object Identity + + + + + + + + + + Maintains a cache of ResourceManager objects. This is a dictionary that is keyed based on the path + to the default resource assembly. The value is another dictionary that is keyed based on the base + name for the resource that is being retrieved. The value for this dictionary is the ResourceManager. + + + + + Used to synchronize access to the ResourceManagerCache + + + + + Gets the ResourceManager from the cache or gets an instance of the ResourceManager + and returns it if it isn't already present in the cache. + + + + The assembly to be used as the base for resource lookup. + + + + The base name of the resources to get the ResourceManager for. + + + + A ResourceManager instance for the assembly and base name that were specified. + + + + + + Design For Testability -- assert on failed resource lookup + + + + + Gets the string from the resource manager based on the assembly, + base name, resource ID, and culture specified + + + + The base assembly from which to get the resources from. + + + + The base name of the resource to retrieve the string from. + + + + Resource ID for which the localized string needs to be retrieved + + + + Localized String, or null if the string does not exist + + + + The current thread's UI culture is used. + + + + ArgumentException if or + are null or empty.. + InvalidOperationException if the value of the specified resource is not a string + MissingManifestResourceException if no usable set of resources have been found, and + there are no neutral culture resources. + + + + + Creates a Resource manager instance based on the assembly specified. + + + The root name of the resources. + For example, the root name for the resource file + named "MyResource.en-US.resources" is "MyResource". + + + The main Assembly for the resources + + Resource Manager instance + + Thrown if the resource manager instance could not be created + + + + + RuntimeException is the base class for exceptions likely to occur + while a Monad command is running. + + + Monad scripts can trap RuntimeException using the + "trap (exceptionclass) {handler}" script construct. + + Instances of this exception class are usually generated by the + Monad Engine. It is unusual for code outside the Monad Engine + to create an instance of this class. + + + + + Initializes a new instance of the RuntimeException class. + + constructed object + + + + Initializes a new instance of the RuntimeException class + using data serialized via + + + serialization information + streaming context + constructed object + + + + Serializer for + + serialization information + streaming context + + + + Initializes a new instance of the RuntimeException class. + + + constructed object + + + + Initializes a new instance of the RuntimeException class. + + + + constructed object + + + + Initializes a new instance of the RuntimeException class + starting with an already populated error record. + + + + + constructed object + + + + Additional information about the error + + + + Note that ErrorRecord.Exception is + . + + + + + Subclasses can use this method to set the ErrorId. + Note that this will clear the cached ErrorRecord, so be sure + to change this before writing to ErrorRecord.ErrorDetails + or the like. + + per ErrorRecord constructors + + + + Subclasses can use this method to set the ErrorCategory. + Note that this will clear the cached ErrorRecord, so be sure + to change this before writing to ErrorRecord.ErrorDetails + or the like. + + + per ErrorRecord.CategoryInfo.Category + + + + + Subclasses can use this method to set or update the TargetObject. + This convenience function doesn't clobber the error record if it + already exists... + + + per ErrorRecord.TargetObject + + + + + + + + + + fix for BUG: Windows Out Of Band Releases: 906263 and 906264 + The interpreter prompt CommandBaseStrings:InquireHalt + should be suppressed when this flag is set. This will be set + when this prompt has already occurred and Break was chosen, + or for ActionPreferenceStopException in all cases. + + + + + An exception that wraps all exceptions that are thrown by providers. This allows + callers of the provider APIs to be able to catch a single exception no matter + what any of the various providers may have thrown. + + + + + Constructs a ProviderInvocationException + + + + + Constructs a ProviderInvocationException using serialized data + + + + serialization information + + + + streaming context + + + + + Constructs a ProviderInvocationException with a message + + + + The message for the exception. + + + + + Constructs a ProviderInvocationException with provider information and an inner exception. + + + + Information about the provider to be used in formatting the message. + + + + The inner exception for this exception. + + + + + Constructs a ProviderInvocationException with provider information and an + ErrorRecord. + + + + Information about the provider to be used in formatting the message. + + + + Detailed error information + + + + + Constructs a ProviderInvocationException with a message + and inner exception. + + + + The message for the exception. + + + + The inner exception for this exception. + + + + + Constructs a ProviderInvocationException + + + + This string will be used to construct the FullyQualifiedErrorId, + which is a global identifier of the error condition. Pass a + non-empty string which is specific to this error condition in + this context. + + + + This string is the message template string. + + + + The provider information used to format into the message. + + + + The path that was being processed when the exception occurred. + + + + The exception that was thrown by the provider. + + + + + + Constructor to make it easy to wrap a provider exception + + + + This string will be used to construct the FullyQualifiedErrorId, + which is a global identifier of the error condition. Pass a + non-empty string which is specific to this error condition in + this context. + + + + This is the message template string + + + + The provider information used to format into the message. + + + + The path that was being processed when the exception occurred. + + + + The exception that was thrown by the provider. + + + + If true, the message from the inner exception will be used if the exception contains + an ErrorRecord. If false, the error message retrieved using the errorId will be used. + + + + + + Gets the provider information of the provider that threw an exception. + + + + + Gets the error record. + + + + + Gets the exception message + + + + + Categories of session state objects, used by SessionStateException + + + + + Used when an exception is thrown accessing a variable. + + + + + Used when an exception is thrown accessing an alias. + + + + + Used when an exception is thrown accessing a function. + + + + + Used when an exception is thrown accessing a filter. + + + + + Used when an exception is thrown accessing a drive. + + + + + Used when an exception is thrown accessing a Cmdlet Provider. + + + + + Used when an exception is thrown manipulating the PowerShell language scopes. + + + + + Used when generically accessing any type of command... + + + + + Other resources not covered by the previous categories... + + + + + Used when an exception is thrown accessing a cmdlet. + + + + + SessionStateException represents an error working with + session state objects: variables, aliases, functions, filters, + drives, or providers. + + + + + Constructs a SessionStateException + + + name of session state object + category of session state object + This string is the message template string. + + This string is the ErrorId passed to the ErrorRecord, and is also + the resourceId used to look up the message template string in + SessionStateStrings.txt. + + ErrorRecord.CategoryInfo.Category + + Additional insertion strings used to construct the message. + Note that itemName is always the first insertion string. + + + + + Constructs a SessionStateException + + + + + Constructs a SessionStateException + + + + The message used in the exception. + + + + + Constructs a SessionStateException + + + + The message used in the exception. + + + + The exception that caused the error. + + + + + Constructs a SessionStateException using serialized data. + + serialization information + streaming context + + + + Serializes the exception data. + + serialization information + streaming context + + + + Gets the error record information for this exception. + + + + + Gets the name of session state object the error occurred on. + + + + + Gets the category of session state object the error occurred on. + + + + + SessionStateOverflowException occurs when the number of + session state objects of this type in this scope + exceeds the configured maximum. + + + + + Constructs a SessionStateOverflowException + + + The name of the session state object the error occurred on. + + + + The category of session state object. + + + + This string is the ErrorId passed to the ErrorRecord, and is also + the resourceId used to look up the message template string in + SessionStateStrings.txt. + + + + This string is the message template string + + + + Additional insertion strings used to construct the message. + Note that itemName is always the first insertion string. + + + + + Constructs a SessionStateOverflowException + + + + + Constructs a SessionStateOverflowException with a message. + + + The message used by the exception. + + + + + Constructs a SessionStateOverflowException + + + + The message the exception will use. + + + + The exception that caused the error. + + + + + Constructs a SessionStateOverflowException using serialized data. + + + serialization information + streaming context + + + + SessionStateUnauthorizedAccessException occurs when + a change to a session state object cannot be completed + because the object is read-only or constant, or because + an object which is declard constant cannot be removed + or made non-constant. + + + + + Constructs a SessionStateUnauthorizedAccessException + + + + The name of the session state object the error occurred on. + + + + The category of session state object. + + + + This string is the ErrorId passed to the ErrorRecord, and is also + the resourceId used to look up the message template string in + SessionStateStrings.txt. + + + + This string is the ErrorId passed to the ErrorRecord, and is also + the resourceId used to look up the message template string in + SessionStateStrings.txt. + + + + + Constructs a SessionStateUnauthorizedAccessException + + + + + Constructs a SessionStateUnauthorizedAccessException + + + The message used by the exception. + + + + + Constructs a SessionStateUnauthorizedAccessException + + + The message used by the exception. + + + + The exception that caused the error. + + + + + Constructs a SessionStateUnauthorizedAccessException using serialized data. + + + serialization information + streaming context + + + + ProviderNotFoundException occurs when no provider can be found + with the specified name. + + + + + Constructs a ProviderNotFoundException + + + + The name of provider that could not be found. + + + + The category of session state object + + + + This string is the ErrorId passed to the ErrorRecord, and is also + the resourceId used to look up the message template string in + SessionStateStrings.txt. + + + + This string is the message template string + + + + Additional arguments to build the message from. + + + + + Constructs a ProviderNotFoundException + + + + + Constructs a ProviderNotFoundException + + + The messaged used by the exception. + + + + + Constructs a ProviderNotFoundException + + + The message used by the exception. + + + The exception that caused the error. + + + + + Constructs a ProviderNotFoundException using serialized data. + + serialization information + streaming context + + + + ProviderNameAmbiguousException occurs when more than one provider exists + for a given name and the request did not contain the PSSnapin name qualifier. + + + + + Constructs a ProviderNameAmbiguousException + + + + The name of provider that was ambiguous. + + + + This string is the ErrorId passed to the ErrorRecord, and is also + the resourceId used to look up the message template string in + SessionStateStrings.txt. + + + + This string is the message template string + + + + The provider information for the providers that match the specified + name. + + + + Additional arguments to build the message from. + + + + + Constructs a ProviderNameAmbiguousException + + + + + Constructs a ProviderNameAmbiguousException + + + The messaged used by the exception. + + + + + Constructs a ProviderNameAmbiguousException + + + The message used by the exception. + + + The exception that caused the error. + + + + + Constructs a ProviderNameAmbiguousException using serialized data. + + serialization information + streaming context + + + + Gets the information of the providers which might match the specified + provider name. + + + + + DriveNotFoundException occurs when no drive can be found + with the specified name. + + + + + Constructs a DriveNotFoundException + + + The name of the drive that could not be found. + + + + This string is the ErrorId passed to the ErrorRecord, and is also + the resourceId used to look up the message template string in + SessionStateStrings.txt. + + + + This string is the message template string + + + + + Constructs a DriveNotFoundException + + + + + Constructs a DriveNotFoundException + + + The message that will be used by the exception. + + + + + Constructs a DriveNotFoundException + + + The message that will be used by the exception. + + + + The exception that caused the error. + + + + + Constructs a DriveNotFoundException using serialized data. + + serialization information + streaming context + + + + ItemNotFoundException occurs when the path contained no wildcard characters + and an item at that path could not be found. + + + + + Constructs a ItemNotFoundException + + + The path that was not found. + + + + This string is the ErrorId passed to the ErrorRecord, and is also + the resourceId used to look up the message template string in + SessionStateStrings.txt. + + + + This string is the ErrorId passed to the ErrorRecord, and is also + the resourceId used to look up the message template string in + SessionStateStrings.txt. + + + + + Constructs a ItemNotFoundException + + + + + Constructs a ItemNotFoundException + + + The message used by the exception. + + + + + Constructs a ItemNotFoundException + + + The message used by the exception. + + + The exception that caused the error. + + + + + Constructs a ItemNotFoundException using serialized data. + + serialization information + streaming context + + + + These flags enable tracing based on the types of + a tracing supplied. Each type of tracing will allow + for one or more methods in the StructuredTraceSource class to become + "enabled". + + + + + All tracing off + + + + + + Constructors will be traced + + + + + + Dispose will be traced + + + + + + Finalize will be traced + + + + + + Methods will be traced + + + + + + Properties will be traced + + + + + + Delegates will be traced + + + + + + Events will be traced + + + + + + Exceptions will be traced + + + + + + Locks will be traced + + + + + + Errors will be traced + + + + + + Warnings will be traced + + + + + + Verbose messages will be traced + + + + + WriteLines will be traced + + + + + + TraceScope calls will be traced + + + + + Assertions will be traced + + + + + A combination of flags that trace the execution flow will + be traced + + + The methods associated with the flags; Constructor, Dispose, + Finalizer, Method, Delegates, and Events will be enabled + + + + + A combination of flags that trace the data will be traced + be traced + + + The methods associated with the flags; Constructor, Dispose, + Finalizer, Property, and WriteLine will be enabled + + + + + A combination of flags that trace the errors + + + The methods associated with the flags; Error, + and Exception will be enabled + + + + + All combination of trace flags will be set + be traced + + + All methods for tracing will be enabled. + + + + + A light-weight object to manage the indention of + trace output for each thread. + + + + An instance of this object is returned when any scoping + Trace method (like TraceMethod, TraceProperty, etc.) + is called. In the constructor to the object the indention + level for the thread is incremented. + The Dispose method will decrement the thread indent level. + + + + + + Constructor that traces the scope name + and raises the indent level in thread + local storage. + + + + The trace object that is to be used for output + + + + The PSTraceSourceOptions that is causing the scope object to + be created. + + + + This format string is used to determine the + general output format for the scope. For instance, + TraceMethod would probably provide a formatter similar + to "Entering: {0}: {1}" where {0} is the name of the + method and {1} is the additional formatted info provided. + + + + The format string used to determine the general output + format for the scope when the Dispose method is called. + + + + The name of the scope that is being traced + + + + + + Constructor that traces the scope name + and raises the indent level in thread + local storage. + + + + The trace object that is to be used for output + + + + The PSTraceSourceOptions that is causing the scope object to + be created. + + + + This format string is used to determine the + general output format for the scope. For instance, + TraceMethod would probably provide a formatter similar + to "Entering: {0}: {1}" where {0} is the name of the + method and {1} is the additional formatted info provided. + + + + The format string used to determine the general output + format for the scope when the Dispose method is called. + + + + The name of the scope that is being traced + + + + The format of any additional arguments which will be appended + to the line of trace output + + + + Arguments to the format string. + + + + + + Helper for the ScopeTracer constructor + + + + The flag that caused this line of tracing to be traced. + + + + This format string is used to determine the + general output format for the scope. For instance, + TraceMethod would probably provide a formatter similar + to "Entering: {0}: {1}" where {0} is the name of the + method and {1} is the additional formatted info provided. + + + + The format string used to determine the general output + format for the scope when the Dispose method is called. + + + + The name of the scope being entered + + + + The format of any additional arguments which will be appended + to the "Entering" line of trace output + + + + Arguments to the format string. + + + + + + Decrements the indent level in thread local + storage and then traces the scope name. + + + + + The trace object that is used for any output + + + + + The flag which caused this scope object to be created. + + + + + Stores the scope name that is passed to the constructor. + + + + + Stores the format string used when formatting output when + leaving the scope + + + + + This attribute is placed on the field of the PSTraceSource class + in the class that is consuming the tracing methods defined in + this file. It defines the trace category and description + for that instance of PSTraceSource. + + + This attribute is only allowed on fields and there can only + be one for each instance. Only one instance of this attribute + should be used in any one class. + In order for the attribute to be used to help in constructing + the PSTraceSource object, reflection is used to find the field + that the PSTraceSource object will be assigned to. This attribute + declares the category and description for the PSTraceSource object + in that field. Having multiple instances of this attribute on + multiple fields in the same class will cause unexpected results. + For instance, trace output for one category may actually be + considered part of another category. + + + + + Constructor for the TraceSourceAttribute class. + + + The name of the category for which the TraceSource instance + will be used. + + + A description for the category. + + + + + The category to be used for the TraceSource + + + + + The category to be used for the TraceSource + + + + + The description for the category to be used for the TraceSource + + + + + The description for the category to be used for the TraceSource + + + + + This derived class of TraceSource is required so that we can tell + the configuration infrastructure which attributes are supported in + the XML app-config file for our trace source. + + + + + + Tells the config infrastructure which attributes are supported + for our TraceSource + + + + A string array with the names of the attributes supported by our + trace source. + + + + + Verbs that are commonly used in cmdlet names. + + + + These verbs are recommended over their synonyms when used as the verb name + for cmdlets. + + + + + Synonyms: Add to, append or attach. + + + + + Remove all the elements or content of a container + + + + + Change the state of a resource to make it inaccessible, unavailable, or unusable + + + + + Copy a resource to another name or another container + + + + + Enters a context + + + + + Exits a context + + + + + Search for an object + + + + + Formats an object for output. + + + + + Get the contents/object/children/properties/relations/... of a resource + + + + + Remove from visibility + + + + + Lock a resource. + + + + + Move a resource + + + + + Create a new resource + + + + + Change the state of a resource to make it accessible, available, or usable + + + + + Increases the effectiveness of a resource + + + + + To set as the current context, including the ability + to reverse this action + + + + + To restore a context saved by a Push operation + + + + + Remove a resource from a container + + + + + Give a resource a new name + + + + + Set/reset the contents/object/properties/relations... of a resource + + + + + Changes the size of a resource + + + + + Set the contents/object/properties/relations... of a resource + + + + + Get a reference to a resource or summary information about a resource by looking in a specified collection. + Does not actually retrieve that resource. + + + + + Makes visible, or displays information. Combines get, format, and out verbs. + + + + + Pass from one resource or point to another while disregarding or omitting intervening resources or points + + + + + Move to the next point or resource + + + + + Join - to unite so as to form one unit + + + + + Act on a resource again. + + + + + Split an object into portions. parts or fragments + + + + + + + + + + To take as a choice from among several; pick out + + + + + Reverse an action or process. + + + + + Unlock a resource. + + + + + Continually inspect a resource for changes + + + + + Verbs that are commonly used in cmdlet names when the cmdlet manipulates data. + + + + These verbs are recommended over their synonyms when used as the verb name + for cmdlets. + + + + + backup + + + + + Establish a well defined state to be able to roll back to + + + + + Compare this resource with another one and produce a set of differences + + + + + Reduce in size + + + + + Change from one encoding to another or from one unit base to another (e.g. feet to meters) + + + + + Convert from the format named in the noun to a general-purpose format (e.g. string or int). + + + + + Convert from a general-purpose format (e.g. string or int) to the format named in the noun. + + + + + Performs an in-place modification of a resource. + + + + + Uncompress or increase in size + + + + + Make a copy of a set of resources using an interchange format + + + + + Arrange or associate one or more resources + + + + + Create a set of resources using an interchange format + + + + + Prepare a resource for use. Assign a beginning value to something + + + + + Limit the consumption of a resource or apply a constraint on a resource + + + + + Take multiple instances and create a single instance + + + + + Make known and accessible to another + + + + + Rollback state to a predefined snapshot/checkpoint + + + + + Store state in a permanent location + + + + + Coerce one or more resources to the same state + + + + + Remove from public access and visibility + + + + + Update a resource with new elements or refresh from a source of truth + + + + + To mount - to attache a named entity to a hierarchy at the pathname location. To set in position. + + + + + To dismount - to get off. To detach. + + + + + Out - direct to a port. Output something to a port. + + + + + Verbs that are commonly used in cmdlet names when the cmdlet manipulates the lifecycle of something. + + + + These verbs are recommended over their synonyms when used as the verb name + for cmdlets. + + + + + Agree to the status of a resource or process + + + + + State or affirm the state of an object + + + + + Finalize an interruptable activity. Makes pending changes permanent. + + + + + Acknowledge, verify, or validate the state of a resource + + + + + Refuse, object, block, or oppose the state of a resource or process + + + + + Stop and/or configure something to be unavailable (e.g unable to not start again) + + + + + Configure to be available (e.g. able to start) + + + + + Settle in an indicated place or condition (optionally initializing for use) + + + + + Calls or launches an activity that cannot be stopped + + + + + Record details about an item in a public store or publishing location + + + + + + Ask for a resource or permissions + + + + + Terminate existing activity and begin it again (with the same configuration) + + + + + Begin an activity again after it was suspended + + + + + Begin an activity + + + + + Discontinue or cease an activity + + + + + Present a resource for approval + + + + + Suspend an activity temporarily + + + + + Remove or disassociate + + + + + Remove details of an item from a public store or publishing location + + + + + + Suspend execution until an expected event + + + + + + Verbs that are commonly used in cmdlet names when the cmdlet is used to diagnose the health of something. + + + + These verbs are recommended over their synonyms when used as the verb name + for cmdlets. + + + + + Interatively interact with a resource or activity for the purpose finding a flaw or better understanding of what is occurring. + + + + + calculate/identify resources consumed by a specified operation or retrieve statistics about a resource + + + + + Determine whether a resource is alive and responding to requests + + + + + Detect and correct problems + + + + + Map a shorthand name will be bound to a longname + + + + + Verify the operational validity or consistency of a resource + + + + + Trace activities performed by a specified operation + + + + + Verbs that are commonly used in cmdlet names when the cmdlet is used to communicate with something. + + + + These verbs are recommended over their synonyms when used as the verb name + for cmdlets. + + + + + Convey by an intermediary to a destination + + + + + Take or acquire from a source + + + + + Associate subsequent activies with a resource + + + + + Disassociate from a resource + + + + + TO write - communicate or express. Display data. + + + + + To read - to obtain (data) from a storage medium or port + + + + + Verbs that are commonly used in cmdlet names when the cmdlet is used to secure a resource. + + + + These verbs are recommended over their synonyms when used as the verb name + for cmdlets. + + + + + Gives access to a resource. + + + + + Removes access to a resource. + + + + + Guard a resource from attack or loss + + + + + Remove guards from a resource that prevent it from attack or loss + + + + + Prevent access to or usage of a resource. + + + + + Allow access to or usage of a resource. + + + + + Canonical verbs that don't fit into any of the other categories. + + + + + To use or include a resource. To set as the context of an action. + + + + + PinvokeDllNames contains the DLL names to be use for PInvoke in FullCLR/CoreCLR powershell. + + * When adding a new DLL name here, make sure that you add both the FullCLR and CoreCLR version + of it. Add the comment '/*COUNT*/' with the new DLL name, and make sure the 'COUNT' is the + same for both FullCLR and CoreCLR DLL names. + + + + + Creates or opens a file, file stream, directory, physical disk, volume, console buffer, + tape drive, communications resource, mailslot, or named pipe. The function returns a + handle that can be used to access the object. + + + The name of the object to be created or opened. + In the ANSI version of this function, the name is limited to MAX_PATH characters. + To extend this limit to 32,767 wide characters, call the Unicode version of the + function and prepend "\\?\" to the path. For more information, see Naming a File. + For information on special device names, see Defining an MS-DOS Device Name. + To specify a COM port number greater than 9, use the following syntax: "\\.\COM10". + This syntax works for all port numbers and hardware that allows COM port numbers to be specified. + To create a file stream, specify the name of the file, a colon, and then the name of the + stream. For more information, see File Streams. + + + The access to the object, which can be read, write, or both. + You cannot request an access mode that conflicts with the sharing mode that is + specified in an open request that has an open handle. + If this parameter is zero (0), the application can query file and device attributes + without accessing a device. This is useful for an application to determine the size + of a floppy disk drive and the formats it supports without requiring a floppy in a drive. + It can also be used to test for the existence of a file or directory without opening + them for read or write access. + See the "CreateFile desired access" below. + + + The sharing mode of an object, which can be read, write, both, or none. + You cannot request a sharing mode that conflicts with the access mode that is specified + in an open request that has an open handle, because that would result in the following + sharing violation: ERROR_SHARING_VIOLATION. + If this parameter is zero (0) and CreateFile succeeds, the object cannot be shared + and cannot be opened again until the handle is closed. For more information, see the + Remarks section of this topic. + The sharing options remain in effect until you close the handle to an object. + To enable a process to share an object while another process has the object open, + use a combination of one or more of the following values to specify the access mode + they can request to open the object. + + + A pointer to a SECURITY_ATTRIBUTES structure that determines whether or not the returned + handle can be inherited by child processes. + If lpSecurityAttributes is NULL, the handle cannot be inherited. + The lpSecurityDescriptor member of the structure specifies a security descriptor + for an object. If lpSecurityAttributes is NULL, the object gets a default security descriptor. + The access control lists (ACL) in the default security descriptor for a file or directory + are inherited from its parent directory. + The target file system must support security on files and directories for this parameter to + have an effect on them, which is indicated when GetVolumeInformation returns FS_PERSISTENT_ACLS. + CreateFile ignores lpSecurityDescriptor when opening an existing file, but continues to + use the other structure members. + + + An action to take on files that exist and do not exist. + See "CreateFile creation disposition" below + + + The file attributes and flags. + This parameter can include any combination of the file attributes. + All other file attributes override FILE_ATTRIBUTE_NORMAL. + When CreateFile opens a file, it combines the file flags with existing + file attributes, and ignores any supplied file attributes. + + + A handle to a template file with the GENERIC_READ access right. + The template file supplies file attributes and extended attributes for the file that is + being created. This parameter can be NULL. + When opening an existing file, CreateFile ignores the template file. + When opening a new EFS-encrypted file, the file inherits the DACL from its parent directory. + + + If the function succeeds, the return value is an open handle to a specified file. + If a specified file exists before the function call and dwCreationDisposition is CREATE_ALWAYS + or OPEN_ALWAYS, a call to GetLastError returns ERROR_ALREADY_EXISTS, even when the + function succeeds. If a file does not exist before the call, GetLastError returns zero (0). + If the function fails, the return value is INVALID_HANDLE_VALUE. + To get extended error information, call GetLastError. + + + + + Closes an open object handle. + + + A valid handle to an open object. + + + If the function succeeds, the return value is nonzero. + If the function fails, the return value is zero. To get extended error information, + call GetLastError. + If the application is running under a debugger, the function will throw an exception + if it receives either a handle value that is not valid or a pseudo-handle value. + This can happen if you close a handle twice, or if you call CloseHandle on a handle + returned by the FindFirstFile function. + + + + + Enable the privilege specified by the privilegeName. If the specified privilege is already enabled, return true + with the oldPrivilegeState.PrivilegeCount set to 0. Otherwise, enable the specified privilege, and the old privilege + state will be saved in oldPrivilegeState. + + + + + + + + Restore the previous privilege state + + + + + + + + The LookupPrivilegeValue function retrieves the locally unique identifier (LUID) used on a specified system to locally represent + the specified privilege name. + + + + + + + + + The PrivilegeCheck function determines whether a specified privilege is enabled in an access token. + + + + + + + + + The AdjustTokenPrivileges function enables or disables privileges in the specified access token. Enabling or disabling privileges in + an access token requires TOKEN_ADJUST_PRIVILEGES access. The TOKEN_ADJUST_PRIVILEGES and TOKEN_QUERY accesses are gained when calling + the OpenProcessToken function. + + + + + + + + + + + + Get the pseudo handler of the current process + + + + + + Retrieves the current process token. + This function exists just for backward compatibility. It is prefered to use the other override that takes 'SafeHandle' as parameter. + + process handle + token access + process token + The current process token. + + + + Required to enable or disable the privileges in an access token. + + + + + Required to query an access token. + + + + + Combines all possible access rights for a token. + + + + + ClrFacade contains all diverging code (different implementation for FullCLR and CoreCLR using if/def). + It exposes common APIs that can be used by the rest of the code base. + + + + + We need it to avoid calling lookups inside dynamic assemblies with PS Types, so we exclude it from GetAssemblies(). + We use this convention for names to achive it. + + + + + Facade for Type.GetMember(string, BindingFlags) to return multiple matched Public Static methods + + + + + Facade for ProcessModule FileVersionInfo + + + FileVersionInfo + + + + Facade for Process.Handle to get SafeHandle + + + SafeHandle + + + + Facade for Process.Handle to get raw handle + + + + + Facade for ProcessStartInfo.EnvironmentVariables + + + + + Facade for Marshal.SizeOf + + + + + Facade for Marshal.DestroyStructure + + + + + Facade for Marshal.PtrToStructure + + + + + Wraps Marshal.StructureToPtr to hide differences between the CLRs. + + + + + Facade for SecureStringToCoTaskMemUnicode + + + + + Facade for AssemblyName.GetAssemblyName(string) + + + + + Facade for AppDomain.GetAssemblies + + + In CoreCLR context, if it's for string-to-type conversion and the namespace qualified type name is known, pass it in so that + powershell can load the necessary TPA if the target type is from an unloaded TPA. + + + + + Facade for Assembly.LoadFrom + + + + + Facade for EnumBuilder.CreateTypeInfo + + + In Core PowerShell, we need to track the dynamic assemblies that powershell generates. + + + + + Facade for Assembly.GetCustomAttributes + + + + + Facade for Encoding.Default + + + + + Facade for getting OEM encoding + + + + + Facade to get the SecurityZone information of a file. + + + + + Map the file to SecurityZone using urlmon.dll, depending on 'IInternetSecurityManager::MapUrlToZone'. + + + + + Facade for CultureInfo.GetCultureInfo(string). + + + + + Facade for setting CurrentCulture for the CurrentThread + + + + + Facade for setting CurrentUICulture for the CurrentThread + + + + + Facade for Convert.ToBase64String(bytes, Base64FormattingOptions.InsertLineBreaks) + Inserts line breaks after every 76 characters in the string representation. + + + + + Facade for RemotingServices.IsTransparentProxy(object) + + + + + Facade for Directory.GetParent(string) + + + + + Facade for ManagementDateTimeConverter.ToDmtfDateTime(DateTime) + + + + + Manual implementation of the is 64bit processor check + + + + + + Facade for FormatterServices.GetUninitializedObject. + + In CORECLR, there are two peculiarities with its implementation that affect our own: + 1. Structures cannot be instantiated using GetConstructor, so they must be filtered out. + 2. Classes must have a default constructor implemented for GetContructor to work. + + See RemoteHostEncoder.IsEncodingAllowedForClassOrStruct for a list of the required types. + + + + + + + Facade for setting WaitHandle.SafeWaitHandle. + + + + + + + Facade for ProfileOptimization.SetProfileRoot + + The full path to the folder where profile files are stored for the current application domain. + + + + Facade for ProfileOptimization.StartProfile + + The file name of the profile to use. + + + + Native methods that are used by facade methods + + + + + Pinvoke for GetOEMCP to get the OEM code page. + + + + + Pinvoke to create an IInternetSecurityManager interface.. + + + + + IInternetSecurityManager interface + + + + + An object that can be used to execute a method on a threadpool thread while correctly + managing system state, such as flowing ETW activities from the current thread to the + threadpool thread. + + + + + Works the same as , except that it + also manages system state correctly. + + + + + Works the same as , except that it + also manages system state correctly. + + + + + Works the same as BeginInvoke would for any other delegate, except that it also manages system state correctly. + + + + + Works the same as EndInvoke would for any other delegate, except that it also manages system state correctly. + + + + + A simple implementation of . + + + + + Creates a that uses an + for activity creation and correlation. + + The to use when logging transfer events + during activity correlation. + The to use when logging transfer events + during activity correlation. + + + + Implements . + + + + + Implements . + + + + + Implements . + + + + + Implements . + + + + + Copied from \\shindex\winmain\sdpublic\sdk\inc\werapi.h + + + + + If the report is being queued, do not include a heap dump. Using this flag saves disk space. + + + + + Copied from \\shindex\winmain\sdpublic\sdk\inc\werapi.h + + + + + Copied from \\shindex\winmain\sdpublic\sdk\inc\werapi.h (with adapted names) + + + + + Copied from \\shindex\winmain\sdpublic\sdk\inc\werapi.h + + + + + + Identifies the type of information that will be written to the minidump file by the MiniDumpWriteDump function + + + More info: + http://msdn.microsoft.com/en-us/library/ms680519(VS.85).aspx + http://www.debuginfo.com/articles/effminidumps.html + + + + + + The consent status. + Copied from \\shindex\winmain\sdpublic\sdk\inc\werapi.h + + + + + Used in . + Copied from \\shindex\winmain\sdpublic\sdk\inc\werapi.h + + + + + Honor any recovery registration for the application. For more information, see RegisterApplicationRecoveryCallback. + + + + + Honor any restart registration for the application. For more information, see RegisterApplicationRestart. + + + + + Add the report to the WER queue without notifying the user. The report is queued only—reporting (sending the report to Microsoft) occurs later based on the user's consent level. + + + + + Show the debug button. + + + + + Add the data registered by WerSetFlags, WerRegisterFile, and WerRegisterMemoryBlock to the report. + + + + + Spawn another process to submit the report. The calling thread is blocked until the function returns. + + + + + Do not display the close dialog box for the critical report. + + + + + Do not queue the report. If there is adequate user consent the report is sent to Microsoft immediately; otherwise, the report is discarded. You may use this flag for non-critical reports. + The report is discarded for any action that would require the report to be queued. For example, if the computer is offline when you submit the report, the report is discarded. Also, if there is insufficient consent (for example, consent was required for the data portion of the report), the report is discarded. + + + + + Do not archive the report. + + + + + The initial UI is minimized and flashing. + + + + + Spawn another process to submit the report and return from this function call immediately. Note that the contents of the pSubmitResult parameter are undefined and there is no way to query when the reporting completes or the completion status. + + + + + Used in . + Copied from \\shindex\winmain\sdpublic\sdk\inc\werapi.h + + + + + The report was queued. + + + + + The report was uploaded. + + + + + The Debug button was clicked. + + + + + The report submission failed. + + + + + Error reporting was disabled. + + + + + The report was canceled. + + + + + Queuing was disabled. + + + + + The report was asynchronous. + + + + + The fault reporting settings. Used in . + Copied from \\shindex\winmain\sdpublic\sdk\inc\werapi.h + + + + + Do not add heap dumps for reports for the process + + + + + Queue critical reports for this process + + + + + Do not suspend the process before error reporting + + + + + Queue critical reports for this process and upload from the queue + + + + + Wraps HREPORT value returned by + + + + + Contains information used by the WerReportCreate function. + http://msdn.microsoft.com/en-us/library/bb513637(VS.85).aspx + + + + + The size of this structure, in bytes. + + + + + A handle to the process for which the report is being generated. If this member is NULL, this is the calling process. + + + + + The name used to look up consent settings. If this member is empty, the default is the name specified by the pwzEventType parameter of WerReportCreate. + + + + + The display name. If this member is empty, the default is the name specified by pwzEventType parameter of WerReportCreate. + + + + + The name of the application. If this parameter is empty, the default is the base name of the image file. + + + + + The full path to the application. + + + + + A description of the problem. This description is displayed in Problem Reports and Solutions. + + + + + A handle to the parent window. + + + + + Creates a problem report that describes an application event. + + A pointer to a Unicode string that specifies the name of the event. To register an event that can be used by your application, see About Windows Error Reporting for Software. + The type of report. + + A handle to the report. If the function fails, this handle is NULL. + hresult + + + + Sets the parameters that uniquely identify an event. + http://msdn.microsoft.com/en-us/library/bb513626(VS.85).aspx + + A handle to the report. This handle is returned by the function. + The identifier of the parameter to be set. + A pointer to a Unicode string that contains the name of the event. If this parameter is NULL, the default name is Px, where x matches the integer portion of the value specified in dwparamID. + The parameter value + hresult + + + + Adds a dump of the specified type to the specified report. + http://msdn.microsoft.com/en-us/library/bb513622(VS.85).aspx + + A handle to the report. This handle is returned by the function. + A handle to the process for which the report is being generated. This handle must have the STANDARD_RIGHTS_READ and PROCESS_QUERY_INFORMATION access rights. + Optional. A handle to the thread of hProcess for which the report is being generated. If dumpType is WerDumpTypeMicro, this parameter is required. + The type of minidump. + Optional. A pointer to a WER_EXCEPTION_INFORMATION structure that specifies exception information. + Optional. Specifies custom minidump options. If this parameter is null, the standard minidump information is collected. + + + + + + Submits the specified report. + + A handle to the report. This handle is returned by the WerReportCreate function. + The consent status. + + The result of the submission. + hresult + + + + Closes the specified report (to be used only from SafeHandle class). + http://msdn.microsoft.com/en-us/library/bb513624(VS.85).aspx + + Handle returned by + hresult + + + + Sets the fault reporting settings for the current process. + + The fault reporting settings. + hresult + + + + Writes user-mode minidump information to the specified file. + + A handle to the process for which the information is to be generated. + The identifier of the process for which the information is to be generated. + A handle to the file in which the information is to be written. + The type of dump to be generated. + A pointer to a MINIDUMP_EXCEPTION_INFORMATION structure describing the client exception that caused the minidump to be generated. If the value of this parameter is NULL, no exception information is included in the minidump file. + A pointer to a MINIDUMP_USER_STREAM_INFORMATION structure. If the value of this parameter is NULL, no user-defined information is included in the minidump file. + A pointer to a MINIDUMP_CALLBACK_INFORMATION structure that specifies a callback routine which is to receive extended minidump information. If the value of this parameter is NULL, no callbacks are performed. + + + + + Returns the deepest frame. + + exception with stack trace to analyze + maximum length of the returned string + frame string + + + + Returns the deepest frame belonging to powershell. + + exception with stack trace to analyze + maximum length of the returned string + frame string + + + + Some failure HRESULTs map to well-defined exceptions, while others do not map + to a defined exception. If the HRESULT maps to a defined exception, ThrowExceptionForHR + creates an instance of the exception and throws it. Otherwise, it creates an instance + of System.Runtime.InteropServices.COMException, initializes the error code field with + the HRESULT, and throws that exception. When this method is invoked, it attemps to + retrieve extra information regarding the error by using the unmanaged GetErrorInfo + function. + + + + + You are trying to access the MainModule property for a process that is running + on a remote computer. This property is available only for processes that are + running on the local computer. + + + The process Id is not available (or) The process has exited. + + + + + + + + For the mapping from each HRESULT to its comparable exception class in the .NET Framework, + see "How to: Map HRESULTs and Exceptions"->http://msdn.microsoft.com/en-us/library/9ztbc5s1.aspx. + For additional information about GetErrorInfo, see the MSDN library. + + + + Some failure HRESULTs map to well-defined exceptions, while others do not map + to a defined exception. If the HRESULT maps to a defined exception, ThrowExceptionForHR + creates an instance of the exception and throws it. Otherwise, it creates an instance + of System.Runtime.InteropServices.COMException, initializes the error code field with + the HRESULT, and throws that exception. When this method is invoked, it attemps to + retrieve extra information regarding the error by using the unmanaged GetErrorInfo + function. + + + + + Registered??? TODO/FIXME + + + + + Submits a Dr. Watson (aka Windows Error Reporting / WER) crash report and then terminates the process. + + Unhandled exception causing the crash + + Some failure HRESULTs map to well-defined exceptions, while others do not map + to a defined exception. If the HRESULT maps to a defined exception, ThrowExceptionForHR + creates an instance of the exception and throws it. Otherwise, it creates an instance + of System.Runtime.InteropServices.COMException, initializes the error code field with + the HRESULT, and throws that exception. When this method is invoked, it attemps to + retrieve extra information regarding the error by using the unmanaged GetErrorInfo + function. + + + + + Equivalent to "System.Environment.FailFast(string, System.Exception)" that also does custom Watson reports. + This method suppresses all the exceptions as this is not important for any + functionality. This feature is primarily used to help Microsoft fix + bugs/crashes from customer data. + + + exception causing the failure. It is good to make sure this is not null. + However the code will handle null cases. + + + + + Sets everything up to report unhandled exceptions. + This method suppresses all the exceptions as this is not important for any + functionality. This feature is primarily used to help Microsoft fix + bugs/crashes from customer data. + + If true, then reports are not going to require any user interaction + + + + Writes a default type of memory dump to the specified file. + + file to write the dump to + + + + Writes a memory dump to the specified file. + + file to write the dump to + type of the dump + + + + An abstract class that forms the base class for any Counter Set type. + A Counter Set Instance is required to register a given performance counter category + with PSPerfCountersMgr. + + + + + An instance of counterSetRegistrarBase type encapsulates all the information + about a counter set and its associated counters. + + + + + Dictionary mapping counter name to id. + + + + + Dictionary mapping counter id to counter type. + + + + + Constructor + + + + + Method that retrieves the target counter id. + NOTE: If isNumerator is true, then input counter id is returned. + But, if isNumerator is false, then a check is made on the input + counter's type to ensure that denominator is indeed value for such a counter. + + + + + If isNumerator is true, then updates the numerator component + of target counter 'counterId' by a value given by 'stepAmount'. + Otherwise, updates the denominator component by 'stepAmount'. + + + + + If isNumerator is true, then updates the numerator component + of target counter 'counterName' by a value given by 'stepAmount'. + Otherwise, updaqtes the denominator component by 'stepAmount'. + + + + + If isNumerator is true, then sets the numerator component of target + counter 'counterId' to 'counterValue'. + Otherwise, sets the denominator component to 'counterValue'. + + + + + If isNumerator is true, then sets the numerator component of target + Counter 'counterName' to 'counterValue'. + Otherwise, sets the denominator component to 'counterValue'. + + + + + This method retrieves the counter value associated with counter 'counterId' + based on isNumerator parameter. + + + + + This method retrieves the counter value associated with counter 'counterName' + based on isNumerator parameter. + + + + + An abstract method that will be implemented by the derived type + so as to dispose the appropriate counter set instance. + + + + + PSCounterSetInstance is a thin wrapper + on System.Diagnostics.PerformanceData.CounterSetInstance + + + + + Constructor for creating an instance of PSCounterSetInstance + + + + + This destructor will run only if the Dispose method + does not get called. + It gives the base class opportunity to finalize. + + + + + Dispose(bool disposing) executes in two distinct scenarios. + If disposing equals true, the method has been called directly + or indirectly by a user's code. Managed and unmanaged resources + can be disposed. + If disposing equals false, the method has been called by the + runtime from inside the finalizer and you should not reference + other objects. Only unmanaged resources can be disposed. + + + + + Dispose Method implementation for IDisposable interface. + + + + + If isNumerator is true, then updates the numerator component + of target counter 'counterId' by a value given by 'stepAmount'. + Otherwise, updates the denominator component by 'stepAmount'. + + + + + If isNumerator is true, then updates the numerator component + of target counter 'counterName' by a value given by 'stepAmount'. + Otherwise, updates the denominator component by 'stepAmount'. + + + + + If isNumerator is true, then sets the numerator component + of target counter 'counterId' to 'counterValue'. + Otherwise, sets the denominator component to 'counterValue'. + + + + + If isNumerator is true, then updates the numerator component + of target counter 'counterName' by a value given by 'counterValue'. + Otherwise, sets the denominator component to 'counterValue'. + + + + + This method retrieves the counter value associated with counter 'counterId' + based on isNumerator parameter. + + + + + This method retrieves the counter value associated with counter 'counterName' + based on isNumerator parameter. + + + + + A struct that encapuslates the information pertaining to a given counter + like name,type and id. + + + + + Counter Name + + + + + Counter Id + + + + + Counter Type + + + + + Constructor + + + + + Constructor + + + + + Getter for Counter Name property + + + + + Getter for Counter Id property. + + + + + Getter for Counter Type property. + + + + + An abstract class that forms the base class for any CounterSetRegistrar type. + Any client that needs to register a new type of perf counter category with the + PSPerfCountersMgr, should create an instance of CounterSetRegistrarBase's + derived non-abstract type. + The created instance is then passed to PSPerfCounterMgr's AddCounterSetInstance() + method. + + + + + + A reference to the encapsulated counter set instance. + + + + + Method that creates an instance of the CounterSetInstanceBase's derived type. + This method is invoked by the PSPerfCountersMgr to retrieve the appropriate + instance of CounterSet to register with its internal datastructure. + + + + + Constructor that creates an instance of CounterSetRegistrarBase derived type + based on Provider Id, counterSetId, counterSetInstanceType, a collection + with counters information and an optional counterSetName. + + + + + Copy constructor + + + + + Getter method for ProviderId property + + + + + Getter method for CounterSetId property + + + + + Getter method for CounterSetName property + + + + + Getter method for CounterSetInstanceType property + + + + + Getter method for array of counters information property + + + + + Getter method that returns an instance of the CounterSetInstanceBase's + derived type + + + + + Method that disposes the referenced instance of the CounterSetInstanceBase's derived type. + This method is invoked by the PSPerfCountersMgr to dispose the appropriate + instance of CounterSet from its internal datastructure as part of PSPerfCountersMgr + cleanup procedure. + + + + + PSCounterSetRegistrar implements the abstract methods of CounterSetRegistrarBase. + Any client that needs to register a new type of perf counter category with the + PSPerfCountersMgr, should create an instance of PSCounterSetRegistrar. + The created instance is then passed to PSPerfCounterMgr's AddCounterSetInstance() + method. + + + + + Constructor that creates an instance of PSCounterSetRegistrar. + + + + + Copy Constructor + + + + + Method that creates an instance of the CounterSetInstanceBase's derived type. + + + + + Method that disposes the referenced instance of the CounterSetInstanceBase's derived type. + + + + + Powershell Performance Counters Manager class shall provide a mechanism + for components using SYstem.Management.Automation assembly to register + performance counters with Performance Counters susbsystem. + + + + + Destructor which will trigger the cleanup of internal data structures and + disposal of counter set instances. + + + + + Getter method to retrieve the singleton instance of the PSPerfCountersMgr. + + + + + Helper method to generate an instance name for a counter set. + + + + + Method to determine whether the counter set given by 'counterSetName' is + registered with the system. If true, then counterSetId is populated. + + + + + Method to determine whether the counter set given by 'counterSetId' is + registered with the system. If true, then CounterSetInstance is populated. + + + + + Method to register a counter set with the Performance Counters Manager. + + + + + If IsNumerator is true, then updates the numerator component + of target counter 'counterId' in Counter Set 'counterSetId' + by 'stepAmount'. + Otherwise, updates the denominator component by 'stepAmount'. + + + + + If IsNumerator is true, then updates the numerator component + of target counter 'counterName' in Counter Set 'counterSetId' + by 'stepAmount'. + Otherwise, updates the denominator component by 'stepAmount'. + + + + + If IsNumerator is true, then updates the numerator component + of target counter 'counterId' in Counter Set 'counterSetName' + by 'stepAmount'. + Otherwise, updates the denominator component by 'stepAmount'. + + + + + If IsNumerator is true, then updates the numerator component + of target counter 'counterName' in Counter Set 'counterSetName' + by 'stepAmount'. + Otherwise, updates the denominator component by 'stepAmount'. + + + + + If IsNumerator is true, then sets the numerator component + of target counter 'counterId' in Counter Set 'counterSetId' + to 'counterValue'. + Otherwise, updates the denominator component to 'counterValue'. + + + + + If IsNumerator is true, then sets the numerator component + of target counter 'counterName' in Counter Set 'counterSetId' + to 'counterValue'. + Otherwise, updates the denominator component to 'counterValue'. + + + + + If IsNumerator is true, then sets the numerator component + of target counter 'counterId' in Counter Set 'counterSetName' + to 'counterValue'. + Otherwise, updates the denominator component to 'counterValue'. + + + + + If IsNumerator is true, then sets the numerator component + of target counter 'counterName' in Counter Set 'counterSetName' + to 'counterValue'. + Otherwise, updates the denominator component to 'counterValue'. + + + + + NOTE: This method is provided solely for testing purposes. + + + + + The status of a PowerShell transaction. + + + + + The transaction has been rolled back + + + + + The transaction has been committed + + + + + The transaction is currently active + + + + + Represents an active transaction + + + + + + Initializes a new instance of the PSTransaction class + + + + + + Initializes a new instance of the PSTransaction class using a CommittableTransaction + + + + + + Gets the rollback preference for this transaction + + + + + + Gets the number of subscribers to this transaction + + + + + + Returns the status of this transaction. + + + + + + Activates the transaction held by this PSTransaction + + + + + + Commits the transaction held by this PSTransaction + + + + + + Rolls back the transaction held by this PSTransaction + + + + + + Determines whether this PSTransaction has been + rolled back or not. + + + + + + Determines whether this PSTransaction + has been committed or not. + + + + + + Destructor for the PSTransaction class + + + + + + Disposes the PSTransaction object. + + + + + + Disposes the PSTransaction object, which disposes the + underlying transaction. + + + Whether to actually dispose the object. + + + + + + + Supports the transaction management infrastructure for the PowerShell engine + + + + + + Initializes a new instance of the PSTransactionManager class + + + + + + Destructor for the PSTransactionManager class + + + + + + Disposes the PSTransactionContext object. + + + + + + Disposes the PSTransactionContext object, which resets the + active PSTransaction. + + + Whether to actually dispose the object. + + + + + + + The severity of error that causes PowerShell to automatically + rollback the transaction. + + + + + Non-terminating errors or worse + + + + + Terminating errors or worse + + + + + Do not rollback the transaction on error + + + + + Specifies additional type definitions for an object + + + + + A format definition may apply to multiple types. This api returns + the first typename that this format definition applies to, but there + may be other types that apply. should be + used instead. + + + + + The list of type names this set of format definitions applies to. + + + + + The formatting view definition for + the specified type + + + + + Overloaded to string method for + better display + + + + + + Constructor for the ExtendedTypeDefinition + + + + + + + Initiate an instance of ExtendedTypeDefinition with the type name + + + + + + Defines a formatting view for a particular type + + + + Name of the formatting view as defined in the formatting file + + + The control defined by this formatting view can be one of table, list, wide, or custom + + + instance id of the original view this will be used to distinguish two views with the same name and control types + + + + + + + Defines a control for the formatting types defined by PowerShell + + + + + Each control can group items and specify a header for the group. + You can group by same property value, or result of evaluating a script block. + + + + + When the "shape" of formatting has been determined by previous objects, + sometimes you want objects of different types to continue using that shape + (table, list, or whatever) even if they specify their own views, and sometimes + you want your view to take over. When OutOfBand is true, the view will apply + regardless of previous objects that may have selected the shape. + + + + + Allows specifying a header for groups of related objects being formatted, can + be specified on any type of PSControl. + + + + + Specifies the property or expression (script block) that controls grouping. + + + + + Optional - used to specify a label for the header of a group + + + + + Optional - used to format the header of a group + + + + + One entry in a format display unit, script block or property name. + + + + Returns the type of this value + + + Returns the value as a string + + + Public constructor for DisplayEntry + + + + + + + Each control (table, list, wide, or custom) may have multiple entries. If there are multiple + entries, there must be a default entry with no condition, all other entries must have EntrySelectedBy + specified. This is useful when you need a single view for grouping or otherwise just selecting the + shape of formatting, but need distinct formatting rules for each instance. For example, when + listing files, you may want to group based on the parent path, but select different entries + depending on if the item is a file or directory. + + + + + An optional list of typenames that apply to the entry. + + + + + An optional condition that applies to the entry. + + + + + Specifies possible alignment enumerations for display cells + + + + + not defined + + + + + left of the cell, contents will trail with a ... if exceeded - ex "Display..." + + + + + center of the cell + + + + + right of the cell, contents will lead with a ... if exceeded - ex "...456" + + + + + Specifies the type of entry value + + + + + The value is a property. Look for a property with the specified name + + + + + The value is a scriptblock. Evaluate the script block and fill the entry with the result + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Group instances by the property name with an optional label. + + + Group instances by the script block expression with an optional label. + + + + + + + + + + Defines a list control + + + + Entries in this list control + + + + + + Indicates if this control does not have any script blocks and is safe to export + + + Initiate an instance of ListControl + + + To go from internal representation to external - for Get-FormatData + + + Public constructor for ListControl + + + + Defines one entry in a list control + + + + List of items in the entry + + + List of typenames which select this entry, deprecated, use EntrySelectedBy + + + List of typenames and/or a script block which select this entry. + + + Initiate an instance of ListControlEntry + + + Public constructor for ListControlEntry + + + Public constructor for ListControlEntry + + + + Defines one row in a list control entry + + + + + Gets the label for this List Control Entry Item + If nothing is specified, then it uses the + property name + + + + Display entry + + + + + + Format string to apply + + + + Public constructor for ListControlEntryItem + Lable and Entry could be null + + + + + + + + + + + + + + + + + + + + + Group instances by the property name with an optional label. + + + Group instances by the script block expression with an optional label. + + + + + + + + + + Defines a table control + + + + Collection of column header definitions for this table control + + + Collection of row definitions for this table control + + + When true, column widths are calculated based on more than the first object. + + + When true, table headers are not displayed + + + Create a default TableControl + + + Public default constructor for TableControl + + + + Determines if this object is safe to be written + + true if safe, false otherwise + + + + public constructor for TableControl that only takes 'tableControlRows'. + + + + + + public constructor for TableControl that takes both 'tableControlRows' and 'tableControlColumnHeaders'. + + + + + + + Defines the header for a particular column in a table control + + + + Label for the column + + + Alignment of the string within the column + + + Width of the column - in number of display cells + + + Default constructor + + + + Public constructor for TableControlColumnHeader. + + Could be null if no label to specify + The Value should be non-negative + The default value is Alignment.Undefined + + + + Defines a particular column within a row + in a table control + + + + Alignment of the particular column + + + Display Entry + + + Format string to apply + + + + Returns the value of the entry + + + + + Default constructor + + + + Public constructor for TableControlColumn. + + + + + + + Defines a single row in a table control + + + + Collection of column definitions for this row + + + List of typenames which select this entry + + + When true, instead of truncating to the column width, use multiple lines. + + + Public constructor for TableControlRow + + + Public constructor for TableControlRow. + + + A helper class for defining table controls + + + + Add a column to the current row definition that calls a script block. + + + + + Add a column to the current row definition that references a property. + + + + + Complete a row definition + + + + A helper class for defining table controls + + + Group instances by the property name with an optional label. + + + Group instances by the script block expression with an optional label. + + + Add a header + + + Add a header + + + Complete a table definition + + + + Defines a list control + + + + Entries in this wide control + + + When true, widths are calculated based on more than the first object. + + + Number of columns in the control + + + Create a default WideControl + + + + Indicates if this control does not have + any script blocks and is safe to export + + true if exportable, false otherwise + + + Default constructor for WideControl + + + Public constructor for WideControl + + + Public constructor for WideControl + + + Construct an instance with columns + + + + Defines one item in a wide control entry + + + + Display entry + + + List of typenames which select this entry, deprecated, use EntrySelectedBy + + + List of typenames and/or a script block which select this entry. + + + Format string to apply + + + + Public constructor for WideControlEntryItem. + + + + + Public constructor for WideControlEntryItem. + + + + + + + Group instances by the property name with an optional label. + + + Group instances by the script block expression with an optional label. + + + + + + + + + + + + + Provides a set of possible completions for given input. + + + + + Construct the result CompleteInput or TabExpansion2. + + + + + Current index in . + + + + + Returns the starting replacement index from the original input. + + + + + Returns the length of the text to replace from the original input. + + + + + Gets all the completion results. + + + + + + + + + + + + + + + The input to complete + The index of the cursor in the input + Optional options to configure how completion is performed + + + + + + + Ast for pre-parsed input + Tokens for pre-parsed input + + Optional options to configure how completion is performed + + + + + Invokes the script function TabExpansion2. + For legacy support, TabExpansion2 will indirectly call TabExpansion if it exists. + + The input script to complete + The offset in where completion is requested + Optional parameter that specifies configurable options for completion. + The powershell to use to invoke the script function TabExpansion2 + A collection of completions with the replacement start and length. + + + + Invokes the script function TabExpansion2. + For legacy support, TabExpansion2 will indirectly call TabExpansion if it exists. + + The ast for pre-parsed input + + + Optional options to configure how completion is performed + The powershell to use to invoke the script function TabExpansion2 + + + + + Get the next result, moving forward or backward. Supports wraparound, so if there are any results at all, + this method will never fail and never return null. + + True if we should move forward through the list, false if backwards. + The next completion result, or null if no results. + + + + Command completion while in debug break mode. + + The input script to complete. + The offset in where completion is requested. + Optional parameter that specifies configurable options for completion. + Current debugger. + A collection of completions with the replacement start and length. + + + + Command completion while in debug break mode. + + The ast for pre-parsed input + + + Optional options to configure how completion is performed + Current debugger + Command completion + + + + PSv2CompletionCompleter implements the algorithm we use to complete cmdlet/file names in PowerShell v2. This class + exists for legacy purpose only. It is used only in a remote interactive session from Win8 to Win7. V3 and forward + uses completely different completers. + + + + The implementation of file name completion is completely different on V2 and V3 for remote scenarios. On PSv3, the + CompletionResults are generated always on the target machine, and + + + + + Used when remoting from a win8 machine to a win7 machine + + + + + + + + Used when remoting from a win8 machine to a win7 machine. Complete command names. + + + + + + + + + + LastWordFinder implements the algorithm we use to search for the last word in a line of input taken from the console. + This class exists for legacy purposes only - V3 and forward uses a slightly different interface. + + + + + Locates the last "word" in a string of text. A word is a conguous sequence of characters that are not + whitespace, or a contiguous set grouped by single or double quotes. Can be called by at most 1 thread at a time + per LastWordFinder instance. + + + Receives the character index (from the front of the string) of the starting point of the located word, or 0 if + the word starts at the beginning of the sentence. + + + Receives the quote character that would be needed to end the sentence with a balanced pair of quotes. For + instance, if sentence is "foo then " is returned, if sentence if "foo" then nothing is resturned, if sentence is + 'foo then ' is returned, if sentence is 'foo' then nothing is returned. + + The last word located, or the empty string if no word could be found. + + + + Check if we should complete file names for "switch -file" + + + + + Find the configuration statement contains current cursor + + + + + + + + + Generate auto complete results for identifier within configuration. + Results are generated based on DynamicKeywords matches given identifier. + For example, following "Fi" matches "File", and "Us" matches "User" + + Configuration + { + Fi^ + Node("TargetMachine") + { + Us^ + } + } + + + + + + + + + + + Complete file name as command + + + + + + + + + + + + + + + + + + + + + + + + + + + + Contains the pseudo commands that only work in the script workflow. + + + + + Get the parameter completion results when the pseudo binding was successful + + + + + + + + + + Get the parameter completion results by using the given valid parameter sets and available parameters + + + + + + + + + + Get completion results for operators that start with + + The starting text of the operator to complete + A list of completion results + + + + Get the argument completion results when the pseudo binding was not successful + + + + + Get the argument completion results when the pseudo binding was successful + + + + + Get the positional argument completion results based on the position it's in the command line + + + + + Process a parameter to get the argument completion results + + + + If the argument completion falls into these pre-defined cases: + 1. The matching parameter is of type Enum + 2. The matching parameter is of type SwitchParameter + 3. The matching parameter is declared with ValidateSetAttribute + 4. Falls into the native command argument completion + a null instance of CompletionResult is added to the end of the + "result" list, to indicate that this particular argument completion + has been processed already. If the "result" list is still empty, we + will not go through the default argument completion steps anymore. + + + + + Provides completion results for NewItemCommand + + The item provided by user for completion. + Name of the parameter whose value needs completion. + List of completion suggestions. + Completion context. + + + + Find the positional argument at the specific position from the parsed argument list + + + + + + If the command line after the [tab] will not be truncated, the return value could be non-null: Get-Cmdlet [tab] abc + If the command line after the [tab] is truncated, the return value will always be null + + + + + Find the location where 'tab' is typed based on the line and colum. + + + + + + + the argument that is right before the 'tab' location + the number of positional arguments before the 'tab' location + + + + + Find the location where 'tab' is typed based on the expressionAst. + + + + + + + + + + + + + + + + + + + + + + Complete members against extension methods 'Where' and 'ForEach' + + + + + Complete members against extension methods 'Where' and 'ForEach' based on the given pattern + + + + + Verify if an expression Ast is representing the $ConfigurationData variable + + + + + Verify if an expression Ast is within a configuration definition + + + + + In OneCore PS, there is no way to retrieve all loaded assemblies. But we have the type catalog dictionary + which contains the full type names of all available CoreCLR .NET types. We can extract the necessary info + from the full type names to make type name auto-completion work. + This type represents a non-generic type for type name completion. It only contains information that can be + inferred from the full type name. + + + + + Get the full type name of the type represented by this instance. + + + + + Get the short type name of the type represented by this instance. + + + + + Get the namespace of the type represented by this instance. + + + + + Construct the CompletionResult based on the information of this instance + + + + + Construct the CompletionResult based on the information of this instance + + + + + In OneCore PS, there is no way to retrieve all loaded assemblies. But we have the type catalog dictionary + which contains the full type names of all available CoreCLR .NET types. We can extract the necessary info + from the full type names to make type name auto-completion work. + This type represents a generic type for type name completion. It only contains information that can be + inferred from the full type name. + + + + + Get the number of generic type arguments required by the type represented by this instance. + + + + + Construct the CompletionResult based on the information of this instance + + + + + Construct the CompletionResult based on the information of this instance + + + + + This type represents a non-generic type for type name completion. It contains the actual type instance. + + + + + This type represents a generic type for type name completion. It contains the actual type instance. + + + + + This type represents a namespace for namespace completion. + + + + + Handle namespace when initializing the type cache + + The TypeCompletionMapping dictionary + The namespace + + + + Handle a type when initializing the type cache + + The TypeCompletionMapping dictionary + The full type name + The short type name + The actual type object. It may be null if we are handling type information from the CoreCLR TypeCatalog + + + + Complete a typename + + + + + + + Generate auto complete results for hashtable key within a Dynamickeyword. + Results are generated based on properties of a DynamicKeyword matches given identifier. + For example, following "D" matches "DestinationPath" + + Configuration + { + File + { + D^ + } + } + + + + + + + + + + Check if a value is treated as Enumerable in powershell + + + + + Check if a strong type is treated as Enumerable in powershell + + + + + Turn on the "LiteralPaths" option. + + + + Indicate whether the "LiteralPaths" option needs to be removed after operation + + + + + Return whether we need to add ampersand when it's necessary + + + + + + + + This class is very similar to the restricted langauge checker, but it is meant to allow more things, yet still + be considered "safe", at least in the sense that tab completion can rely on it to not do bad things. The primary + use is for intellisense where you don't want to run arbitrary code, but you do want to know the values + of various expressions so you can get the members. + + + + + Auxilliary class to the execution of commands as needed by + CommandCompletion + + + + + Converts an object to a string safely... + + The object to convert + The result of the conversion... + + + + Converts an object to a string adn, if the string is not empty, adds it to the list + + The list to update + The object to convert to a string... + + + + Possible types of CompletionResults + + + + An unknown result type, kept as text only + + + A history result type like the items out of get-history + + + A command result type like the items out of get-command + + + A provider item + + + A provider container + + + A property result type like the property items out of get-member + + + A method result type like the method items out of get-member + + + A parameter name result type like the Parameters property out of get-command items + + + A parameter value result type + + + A variable result type like the items out of get-childitem variable: + + + A namespace + + + A type name + + + A keyword + + + A dynamic keyword + + + + Class used to store a tab completion or Intellisense result + + + + + Text to be used as the auto completion result + + + + + Text to be displayed in a list + + + + + The text for the tooltip with details to be displayed about the object + + + + + Type of completion result + + + + + Private member for null instance + + + + + Gets the text to be used as the auto completion result + + + + + Gets the text to be displayed in a list + + + + + Gets the type of completion result + + + + + Gets the text for the tooltip with details to be displayed about the object + + + + + Gets the null instance of type CompletionResult + + + + + Initializes a new instance of the CompletionResult class + + the text to be used as the auto completion result + he text to be displayed in a list + the type of completion result + the text for the tooltip with details to be displayed about the object + + + + Initializes a new instance of this class internally if the result out of TabExpansion is a string + + completion text + + + + An null instance of CompletionResult. + + + + This can be used in argument completion, to indicate that the completion attempt has gone through the + native command argument completion methods. + + + + + This attribute is used to specify an argument completer for a parameter to a cmdlet or function. + + [Parameter()] + [ArgumentCompleter(typeof(NounArgumentCompleter))] + public string Noun { get; set; } + + + + + + + + + + + The type must implement and have a default constructor. + + + + This constructor is used primarily via PowerShell scripts. + + + + + + A type specified by the must implement this interface. + + + + + Implementations of this function are called by PowerShell to complete arguments. + + The name of the command that needs argument completion. + The name of the parameter that needs argument completion. + The (possibly empty) word being completed. + The command ast in case it is needed for completion. + + This parameter is similar to $PSBoundParameters, except that sometimes PowerShell cannot or + will not attempt to evaluate an argument, in which case you may need to use . + + + A collection of completion results, most like with set to + . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This internal helper class provides methods for serializing mshObject. + + + + Used by Remoting infrastructure. This TypeTable instance + will be used by Serializer if ExecutionContext is not + avaliable (to get the ExecutionContext's TypeTable) + + + + This writes one object. + + + source to be serialized. + + + + + Handles primitive known type by first converting it to a PSObject. + + + + + + + + + + Serializes PSObject whose base objects are of primitive known type + + + + + + + true if source is handled, else false. + + + + + Serializes an PSObject whose baseobject is of primitive type. + + + source from which notes are written + + + primitive object which is written as base object. In most cases it + is same source.ImmediateBaseObject. When PSObject is serialized as string, + + + TypeSerializationInfo for the primitive. + + + + + + + + Writes an item or property in Monad namespace + + The serializer to which the object is serialized. + name of property. Pass null for item + object to be written + serialization information about source + + + + + Serializes IEnumerable + + + enumerable which is serialized + + + + + + + + + Creates CimInstance for a primitive type + + name of property. pass null for item + value + serialization information about source + + + + Creates CimInstance for a string + + name of property. pass null for item + string value to write + serialization information about source + + + + Serializes properties of PSObject + + + + + Serializes properties from collection + + + Collection of properties to serialize + + + depth to which each property should be + serialized + + + list of CimInstances for the properties + serialized + + + + + This class provides public functionality for serializing a PSObject to a CimInstance + + + + + Default depth of serialization + + + + + Serializes an object into CimInstance + + The input object to serialize. Serializes to a default depth of 1 + The serialized object, as CimInstancen + + + + Serializes an object into CimInstance + + The input object to serialize. Serializes to a default depth of 1 + The input object to serialize. Serializes to a default depth of 1 + The serialized object, as CimInstancen + + + + A delegate for serializing known type + + + + + This class contains serialization information about a type. + + + + + Constructor + + Type for which this entry is created + TypeSerializerDelegate for serializing the type + The CimClass name whose instance needs to be created for this type + + + + Constructor + + Type for which this entry is created + TypeSerializerDelegate for serializing the type + CimType corresponding to the .NET type + For some .NET types (Guid, Decimal, etc.), there are no equivalent Cim Types. So, we serialize them as string + The CimClass name whose instance needs to be created for this type + + + + Get the type for which this TypeSerializationInfo is created. + + + + + Gets the delegate to serialize this type + + + + + The CimType corresponding to the .NET type + + + + + The CimClass name whose instance needs to be created for this type + + + + + Type for which this entry is created + + + + + TypeSerializerDelegate for serializing the type + + + + + The CimType corresponding to the .NET type + + + + + The CimClass name whose instance needs to be created for this type + + + + + A class for identifying types which are treated as Known Cim Type by Monad. + A KnownMIType is guranteed to be available on machine on which monad is + running. + + + + + Static constructor + + + + + Gets the type serialization information about a type + + Type for which information is retrieved + TypeSerializationInfo for the type, null if it doesn't exist + + + + Array of known types. + + + + + Dictionary of knowntypes. + Key is Type.FullName and value is Type object. + + + + + + Represents a System.Management.Automation.PowerShell object + + + + + + Instance Id + + + + + + Represents a System.Management.Automation.Command object + + + + + + Command Text + + + + + + Represents a System.Management.Automation.Runspaces.CommandParameter object + + + + + + Parameter Name + + + + + PowerShell version + + + + + ArgBuilder provides an argument value used by the MethodBinder. One ArgBuilder exists for each + physical parameter defined on a method. + + Contrast this with ParameterWrapper which represents the logical argument passed to the method. + + + + + Provides the Expression which provides the value to be passed to the argument. + + + + + Provides the Expression which provides the value to be passed to the argument. + This method is called when result is intended to be used ByRef. + + + + + Provides an Expression which will update the provided value after a call to the method. + May return null if no update is required. + + + + + Provides the implementation of performing AddAssign and SubtractAssign binary operations. + + The binder provided by the call site. + The handler for the operation. + The result of the operation. + true if the operation is complete, false if the call site should determine behavior. + + + + Adds a handler to an event. + + The handler to be added. + The original event with handler added. + + + + Removes handler from the event. + + The handler to be removed. + The original event with handler removed. + + + + Provides helper methods to bind COM objects dynamically. + + + + + Determines if an object is a COM object. + + The object to test. + true if the object is a COM object, false otherwise. + + + + Tries to perform binding of the dynamic get member operation. + + An instance of the that represents the details of the dynamic operation. + The target of the dynamic operation. + The new representing the result of the binding. + true if member evaluation may be delayed. + true if operation was bound successfully; otherwise, false. + + + + Tries to perform binding of the dynamic get member operation. + + An instance of the that represents the details of the dynamic operation. + The target of the dynamic operation. + The new representing the result of the binding. + true if operation was bound successfully; otherwise, false. + + + + Tries to perform binding of the dynamic set member operation. + + An instance of the that represents the details of the dynamic operation. + The target of the dynamic operation. + The representing the value for the set member operation. + The new representing the result of the binding. + true if operation was bound successfully; otherwise, false. + + + + Tries to perform binding of the dynamic invoke operation. + + An instance of the that represents the details of the dynamic operation. + The target of the dynamic operation. + An array of instances - arguments to the invoke member operation. + The new representing the result of the binding. + true if operation was bound successfully; otherwise, false. + + + + Tries to perform binding of the dynamic invoke member operation. + + An instance of the that represents the details of the dynamic operation. + True if this is for setting a property, false otherwise.. + The target of the dynamic operation. + An array of instances - arguments to the invoke member operation. + The new representing the result of the binding. + true if operation was bound successfully; otherwise, false. + + + + Tries to perform binding of the dynamic get index operation. + + An instance of the that represents the details of the dynamic operation. + The target of the dynamic operation. + An array of instances - arguments to the invoke member operation. + The new representing the result of the binding. + true if operation was bound successfully; otherwise, false. + + + + Tries to perform binding of the dynamic set index operation. + + An instance of the that represents the details of the dynamic operation. + The target of the dynamic operation. + An array of instances - arguments to the invoke member operation. + The representing the value for the set index operation. + The new representing the result of the binding. + true if operation was bound successfully; otherwise, false. + + + + Tries to perform binding of the dynamic Convert operation. + + An instance of the that represents the details of the dynamic operation. + The target of the dynamic operation. + The new representing the result of the binding. + true if operation was bound successfully; otherwise, false. + + + + Gets the member names associated with the object. + This function can operate only with objects for which returns true. + + The object for which member names are requested. + The collection of member names. + + + + Gets the member names of the data-like members associated with the object. + This function can operate only with objects for which returns true. + + The object for which member names are requested. + The collection of member names. + + + + Gets the data-like members and associated data for an object. + This function can operate only with objects for which returns true. + + The object for which data members are requested. + The enumeration of names of data members for which to retrieve values. + The collection of pairs that represent data member's names and their data. + + + + Special binder that indicates special semantics for COM GetMember operation. + + + + + Special binder that indicates special semantics for COM InvokeMember operation. + + + + + This class implements an event sink for a particular RCW. + Unlike the implementation of events in TlbImp'd assemblies, + we will create only one event sink per RCW (theoretically RCW might have + several ComEventSink evenk sinks - but all these implement different source intefaces). + Each ComEventSink contains a list of ComEventSinkMethod objects - which represent + a single method on the source interface an a multicast delegate to redirect + the calls. Notice that we are chaining multicast delegates so that same + ComEventSinkMedhod can invoke multiple event handlers). + + ComEventSink implements an IDisposable pattern to Unadvise from the connection point. + Typically, when RCW is finalized the corresponding Dispose will be triggered by + ComEventSinksContainer finalizer. Notice that lifetime of ComEventSinksContainer + is bound to the lifetime of the RCW. + + + + + Contains a methods DISPID (in a string formatted of "[DISPID=N]" + and a chained list of delegates to invoke + + + + + ComEventSinkProxy class is responsible for handling QIs for sourceIid + on instances of ComEventSink. + + Background: When a COM even sink advises to a connection point it is + supposed to hand over the dispinterface. Now, some hosts will trust + the COM client to pass the correct pointer, but some will not. + E.g. Excel's implementation of Connection Points will not cause a + QI on the pointer that has been passed, however Word will QI the + pointer to return the required interface. + + ComEventSink does not, strongly speaking, implements the interface + that it claims to implement - it is just "faking" it by using IReflect. + Thus, Word's QIs on the pointer passed to ICP::Advise would fail. To + prevent this we take advangate of RealProxy's ability of + "dressing up" like other classes and hence successfully respond to QIs + for interfaces that it does not really support( it is OK to say + "I implement this interface" for event sinks only since the common + practice is to use IDistpach.Invoke when calling into event sinks). + + + + + ComEventSinksContainer is just a regular list with a finalizer. + This list is usually attached as a custom data for RCW object and + is finalized whenever RCW is finalized. + + + + + Layout of the IDispatch vtable + + + + + Invokes the object. If it falls back, just produce an error. + + + + + Splats the arguments to another nested dynamic site, which does the + real invocation of the IDynamicMetaObjectProvider. + + + + + Create a stub for the target of the optimized lopop. + + + + + + Gets expressions to access all the arguments. This includes the instance argument. + + + + + This is a helper class for runtime-callable-wrappers of COM instances. We create one instance of this type + for every generic RCW instance. + + + + + The runtime-callable wrapper + + + + + This is the factory method to get the ComObject corresponding to an RCW + + + + + + The parameter description of a method defined in a type library + + + + + Creates a representation for the paramter of a COM method + + + + + Creates a representation for the return value of a COM method + TODO: Return values should be represented by a different type + + + + + DBNull.Value if there is no default value + + + + + Look for typeinfo using IDispatch.GetTypeInfo + + + + Some COM objects just dont expose typeinfo. In these cases, this method will return null. + Some COM objects do intend to expose typeinfo, but may not be able to do so if the type-library is not properly + registered. This will be considered as acceptable or as an error condition depending on throwIfMissingExpectedTypeInfo + + + + + This method should be called when typeinfo is not available for an object. The function + will check if the typeinfo is expected to be missing. This can include error cases where + the same error is guaranteed to happen all the time, on all machines, under all circumstances. + In such cases, we just have to operate without the typeinfo. + + However, if accessing the typeinfo is failing in a transient way, we might want to throw + an exception so that we will eagerly predictably indicate the problem. + + + + + This class contains methods that either cannot be expressed in C#, or which require writing unsafe code. + Callers of these methods need to use them extremely carefully as incorrect use could cause GC-holes + and other problems. + + + + + + Ensure that "value" is a local variable in some caller's frame. So converting + the byref to an IntPtr is a safe operation. Alternatively, we could also allow + allowed "value" to be a pinned object. + + + + + We will emit an indirect call to an unmanaged function pointer from the vtable of the given interface pointer. + This approach can take only ~300 instructions on x86 compared with ~900 for Marshal.Release. We are relying on + the JIT-compiler to do pinvoke-stub-inlining and calling the pinvoke target directly. + + + + + We will emit an indirect call to an unmanaged function pointer from the vtable of the given IDispatch interface pointer. + It is not possible to express this in C#. Using an indirect pinvoke call allows us to do our own marshalling. + We can allocate the Variant arguments cheaply on the stack. We are relying on the JIT-compiler to do + pinvoke-stub-inlining and calling the pinvoke target directly. + The alternative of calling via a managed interface declaration of IDispatch would have a performance + penalty of going through a CLR stub that would have to re-push the arguments on the stack, etc. + Marshal.GetDelegateForFunctionPointer could be used here, but its too expensive (~2000 instructions on x86). + + + + + Cached information from a TLB. Only information that is required is saved. CoClasses are used + for event hookup. Enums are stored for accessing symbolic names from scripts. + + + + + Reads the latest registered type library for the corresponding GUID, + reads definitions of CoClass'es and Enum's from this library + and creates a IDynamicMetaObjectProvider that allows to instantiate coclasses + and get actual values for the enums. + + Type Library Guid + ComTypeLibDesc object + + + + Gets an ITypeLib object from OLE Automation compatible RCW , + reads definitions of CoClass'es and Enum's from this library + and creates a IDynamicMetaObjectProvider that allows to instantiate coclasses + and get actual values for the enums. + + OLE automation compatible RCW + ComTypeLibDesc object + + + + This represents a bound dispmember on a IDispatch object. + + + + + Strongly-typed and parameterized string factory. + + + + + A string like "Unexpected VarEnum {0}." + + + + + A string like "Error while invoking {0}." + + + + + A string like "Error while invoking {0}." + + + + + A string like "Error while invoking {0}. Named arguments are not supported." + + + + + A string like "Error while invoking {0}." + + + + + A string like "Exception setting "{0}": "Cannot convert the "{1}" value of type "{2}" to type "{3}"." + + + + + A string like "Error while invoking {0}. A required parameter was omitted." + + + + + A string like "IDispatch::GetIDsOfNames behaved unexpectedly for {0}." + + + + + A string like "Could not get dispatch ID for {0} (error: {1})." + + + + + A string like "There are valid conversions from {0} to {1}." + + + + + A string like "Variant.GetAccessor cannot handle {0}." + + + + + Strongly-typed and parameterized exception factory. + + + + + ArgumentException with message like "COM object does not support events." + + + + + ArgumentException with message like "COM object does not support specified source interface." + + + + + InvalidOperationException with message like "Marshal.SetComObjectData failed." + + + + + InvalidOperationException with message like "This method exists only to keep the compiler happy." + + + + + InvalidOperationException with message like "Unexpected VarEnum {0}." + + + + + System.Reflection.TargetParameterCountException with message like "Error while invoking {0}." + + + + + MissingMemberException with message like "Error while invoking {0}." + + + + + ArgumentException with message like "Error while invoking {0}. Named arguments are not supported." + + + + + OverflowException with message like "Error while invoking {0}." + + + + + ArgumentException with message like "Could not convert argument {0} for call to {1}." + + + + + ArgumentException with message like "Error while invoking {0}. A required parameter was omitted." + + + + + InvalidOperationException with message like "ResolveComReference.CannotRetrieveTypeInformation." + + + + + ArgumentException with message like "IDispatch::GetIDsOfNames behaved unexpectedly for {0}." + + + + + InvalidOperationException with message like "Attempting to wrap an unsupported enum type." + + + + + InvalidOperationException with message like "Attempting to pass an event handler of an unsupported type." + + + + + MissingMemberException with message like "Could not get dispatch ID for {0} (error: {1})." + + + + + System.Reflection.AmbiguousMatchException with message like "There are valid conversions from {0} to {1}." + + + + + NotImplementedException with message like "Variant.GetAccessor cannot handle {0}." + + + + + This is similar to ComTypes.EXCEPINFO, but lets us do our own custom marshaling + + + + + An object that implements IDispatch + + This currently has the following issues: + 1. If we prefer ComObjectWithTypeInfo over IDispatchComObject, then we will often not + IDispatchComObject since implementations of IDispatch often rely on a registered type library. + If we prefer IDispatchComObject over ComObjectWithTypeInfo, users get a non-ideal experience. + 2. IDispatch cannot distinguish between properties and methods with 0 arguments (and non-0 + default arguments?). So obj.foo() is ambiguous as it could mean invoking method foo, + or it could mean invoking the function pointer returned by property foo. + We are attempting to find whether we need to call a method or a property by examining + the ITypeInfo associated with the IDispatch. ITypeInfo tell's use what parameters the method + expects, is it a method or a property, what is the default property of the object, how to + create an enumerator for collections etc. + 3. IronPython processes the signature and converts ref arguments into return values. + However, since the signature of a DispMethod is not available beforehand, this conversion + is not possible. There could be other signature conversions that may be affected. How does + VB6 deal with ref arguments and IDispatch? + + We also support events for IDispatch objects: + Background: + COM objects support events through a mechanism known as Connect Points. + Connection Points are separate objects created off the actual COM + object (this is to prevent circular references between event sink + and event source). When clients want to sink events generated by + COM object they would implement callback interfaces (aka source + interfaces) and hand it over (advise) to the Connection Point. + + Implementation details: + When IDispatchComObject.TryGetMember request is received we first check + whether the requested member is a property or a method. If this check + fails we will try to determine whether an event is requested. To do + so we will do the following set of steps: + 1. Verify the COM object implements IConnectionPointContainer + 2. Attempt to find COM object's coclass's description + a. Query the object for IProvideClassInfo interface. Go to 3, if found + b. From object's IDispatch retrieve primary interface description + c. Scan coclasses declared in object's type library. + d. Find coclass implementing this particular primary interface + 3. Scan coclass for all its source interfaces. + 4. Check whether to any of the methods on the source interfaces matches + the request name + + Once we determine that TryGetMember requests an event we will return + an instance of BoundDispEvent class. This class has InPlaceAdd and + InPlaceSubtract operators defined. Calling InPlaceAdd operator will: + 1. An instance of ComEventSinksContainer class is created (unless + RCW already had one). This instance is hanged off the RCW in attempt + to bind the lifetime of event sinks to the lifetime of the RCW itself, + meaning event sink will be collected once the RCW is collected (this + is the same way event sinks lifetime is controlled by PIAs). + Notice: ComEventSinksContainer contains a Finalizer which will go and + unadvise all event sinks. + Notice: ComEventSinksContainer is a list of ComEventSink objects. + 2. Unless we have already created a ComEventSink for the required + source interface, we will create and advise a new ComEventSink. Each + ComEventSink implements a single source interface that COM object + supports. + 3. ComEventSink contains a map between method DISPIDs to the + multicast delegate that will be invoked when the event is raised. + 4. ComEventSink implements IReflect interface which is exposed as + custom IDispatch to COM consumers. This allows us to intercept calls + to IDispatch.Invoke and apply custom logic - in particular we will + just find and invoke the multicast delegate corresponding to the invoked + dispid. + + + + + ArgBuilder which always produces null. + + + + + SimpleArgBuilder produces the value produced by the user as the argument value. It + also tracks information about the original parameter and is used to create extended + methods for params arrays and param dictionary functions. + + + + + If a managed user type (as opposed to a primitive type or a COM object) is passed as an argument to a COM call, we need + to determine the VarEnum type we will marshal it as. We have the following options: + 1. Raise an exception. Languages with their own version of primitive types would not be able to call + COM methods using the language's types (for eg. strings in IronRuby are not System.String). An explicit + cast would be needed. + 2. We could marshal it as VT_DISPATCH. Then COM code will be able to access all the APIs in a late-bound manner, + but old COM components will probably malfunction if they expect a primitive type. + 3. We could guess which primitive type is the closest match. This will make COM components be as easily + accessible as .NET methods. + 4. We could use the type library to check what the expected type is. However, the type library may not be available. + + VarEnumSelector implements option # 3 + + + + + Gets the managed type that an object needs to be coverted to in order for it to be able + to be represented as a Variant. + + In general, there is a many-to-many mapping between Type and VarEnum. However, this method + returns a simple mapping that is needed for the current implementation. The reason for the + many-to-many relation is: + 1. Int32 maps to VT_I4 as well as VT_ERROR, and Decimal maps to VT_DECIMAL and VT_CY. However, + this changes if you throw the wrapper types into the mix. + 2. There is no Type to represent COM types. __ComObject is a private type, and Object is too + general. + + + + + Creates a family of COM types such that within each family, there is a completely non-lossy + conversion from a type to an earlier type in the family. + + + + + Get the (one representative type for each) primitive type families that the argument can be converted to + + + + + If there is more than one type family that the argument can be converted to, we will throw a + AmbiguousMatchException instead of randomly picking a winner. + + + + + Is there a unique primitive type that has the best conversion for the argument + + + + + Get the COM Variant type that argument should be marshaled as for a call to COM + + + + + Variant is the basic COM type for late-binding. It can contain any other COM data type. + This type definition precisely matches the unmanaged data layout so that the struct can be passed + to and from COM calls. + + + + + Primitive types are the basic COM types. It includes valuetypes like ints, but also reference types + like BStrs. It does not include composite types like arrays and user-defined COM types (IUnknown/IDispatch). + + + + + Get the managed object representing the Variant. + + + + + + Release any unmanaged memory associated with the Variant + + + + + + VariantBuilder handles packaging of arguments into a Variant for a call to IDispatch.Invoke + + + + + The get-command cmdlet. It uses the command discovery APIs to find one or more + commands of the given name. It returns an instance of CommandInfo for each + command that is found. + + + + + + Gets or sets the path(s) or name(s) of the commands to retrieve + + + + + + Gets or sets the verb parameter to the cmdlet + + + + + + Gets or sets the noun parameter to the cmdlet + + + + + + Gets or sets the PSSnapin/Module parameter to the cmdlet + + + + + + Gets or sets the FullyQualifiedModule parameter to the cmdlet + + + + + + Gets or sets the type of the command to get + + + + + + The parameter representing the total number of commands that will + be returned. If negative, all matching commands that are found will + be returned. + + + + + + The parameter that determines if the CommandInfo or the string + definition of the command is output. + + + + + + This parameter causes the output to be packaged into ShowCommandInfo PSObject types + needed to display GUI command information. + + + + + The parameter that all additional arguments get bound to. These arguments are used + when retrieving dynamic parameters from cmdlets that support them. + + + + + + The parameter that determines if additional matching commands should be returned. + (Additional matching functions and aliases are returned from module tables) + + + + + + The parameter that determines if additional matching commands from available modules should be returned. + If set to true, only those commands currently in the session are returned. + + + + + + The parameter that filters commands returned to only include commands that have a parameter with a name that matches one of the ParameterName's arguments + + + + + The parameter that filters commands returned to only include commands that have a parameter of a type that matches one of the ParameterType's arguments + + + + + Begin Processing + + + + + method that implements get-command + + + + + + Writes out the accumulated matching commands + + + + + + The comparer to sort CommandInfo objects in the result list + + + + + Compare two CommandInfo objects first by their command types, and if they + are with the same command type, then we compare their names. + + + + + + + + Writes out the commands for the AllCommandSet using the specified CommandType + + + + + Determines if the specific command information has already been + written out based on the path or definition. + + + + The command information to check for duplication. + + + + true if the command has already been written out. + + + + + + Gets matching commands from the module tables + + + + The commandname to look for + + + + IEnumerable of CommandInfo objects + + + + + + Determines if the specific command information has already been + added to the result from CommandSearcher + + + + The command information to check for duplication. + + + + true if the command is present in the result. + + + + + + + + + + + + + + + + Implements a cmdlet that loads a module + + + + + This parameter specifies the functions to import from the module... + + + + + This parameter specifies the functions to import from the module... + + + + + This parameter specifies the variables to import from the module... + + + + + This parameter specifies the aliases to import from the module... + + + + + Export the specified functions... + + + + + Implements a cmdlet that gets the list of loaded modules... + + + + + This parameter specifies the current pipeline object + + + + + This parameter specifies the current pipeline object + + + + + If specified, all loaded modules should be returne, otherwise only the visible + modules should be returned. + + + + + If specified, then Get-Module will return the set of available modules... + + + + + If specified, then Get-Module will return the set of available modules which supports the specified PowerShell edition... + + + + + If specified, then Get-Module refreshes the internal cmdlet analysis cache + + + + + If specified, then Get-Module will attempt to discover PowerShell modules on a remote computer using the specified session + + + + + If specified, then Get-Module will attempt to discover PS-CIM modules on a remote computer using the specified session + + + + + For interoperability with 3rd party CIM servers, user can specify custom resource URI + + + + + For interoperability with 3rd party CIM servers, user can specify custom namespace + + + + + When overridden in the derived class, interrupts currently + running code within the command. It should interrupt BeginProcessing, + ProcessRecord, and EndProcessing. + Default implementation in the base class just returns. + + + + + Releases resources associated with this object + + + + + Releases resources associated with this object + + + + + Write out the specified modules... + + + + + Determine whether a module info matches a given module specification table and specified PSEditon value. + + + + + + + + + PSEditionArgumentCompleter for PowerShell Edition names. + + + + + CompleteArgument + + + + + Implements a cmdlet that loads a module + + + + + This parameter specifies whether to import to the current session state + or to the global / top-level session state + + + + + This parameter specified a prefix used to modify names of imported commands + + + + + This parameter names the module to load. + + + + + This parameter specifies the current pipeline object + + + + + A list of assembly objects to process as modules. + + + + + This patterns matching the names of functions to import from the module... + + + + + This patterns matching the names of cmdlets to import from the module... + + + + + This parameter specifies the variables to import from the module... + + + + + This parameter specifies the aliases to import from the module... + + + + + This parameter causes a module to be loaded over top of the current one... + + + + + This parameter causes the session state instance to be written... + + + + + This parameter causes the session state instance to be written as a custom object... + + + + + The minimum version of the module to load. + + + + + The maximum version of the module to load. + + + + + The version of the module to load. + + + + + This parameter specifies the current pipeline object + + + + + The arguments to pass to the module script. + + + + + Disable warnings on cmdlet and function names that have non-standard verbs + or non-standard characters in the noun. + + + + + Does not import a command if a command with same name exists on the target sessionstate. + + + + + Imports a command to the scope specified + + + + + If specified, then Import-Module will attempt to import PowerShell modules from a remote computer using the specified session + + + + Construct the Import-Module cmdlet object + + + + If specified, then Import-Module will attempt to import PS-CIM modules from a remote computer using the specified session + + + + + For interoperability with 3rd party CIM servers, user can specify custom resource URI + + + + + For interoperability with 3rd party CIM servers, user can specify custom namespace + + + + + When overridden in the derived class, interrupts currently + running code within the command. It should interrupt BeginProcessing, + ProcessRecord, and EndProcessing. + Default implementation in the base class just returns. + + + + + Releases resources associated with this object + + + + + Releases resources associated with this object + + + + + BeginProcessing override + + + + + Load the specified modules... + + + Examples: + c:\temp\mdir\mdir.psm1 # load absolute path + ./mdir.psm1 # load relative path + c:\temp\mdir\mdir # resolve by using extensions. mdir is a directory, mdir.xxx is a file. + c:\temp\mdir # load default module if mdir is directory + module # $PSScriptRoot/module/module.psd1 (ps1,psm1,dll) + module/foobar.psm1 # $PSScriptRoot/module/module.psm1 + module/foobar # $PSScriptRoot/module/foobar.XXX if foobar is not a directory... + module/foobar # $PSScriptRoot/module/foobar is a directory and $PSScriptRoot/module/foobar/foobar.XXX exists + module/foobar/foobar.XXX + + + + + This is the base class for some of the module cmdlets. It contains a number of + utility functions for these classes. + + + + + Flags defining how a module manifest should be processed + + + + + Write errors (otherwise no non-terminating-errors are written) + + + + + Return null on first error (otherwise we try to process other elements of the manifest) + + + + + Load elements of the manifest (i.e. types/format.ps1xml, nested modules, etc.) + + + + + Write warnings + + + + + Force full module manifest processing. + + + + + Ignore PowerShellHostName and PowerShellHostVersion while + processing Manifest fields. + This is used for GetModule where loading elements does not happen. + + + + + Options set during module import + + + + + Holds the value of NoClobber parameter in Import-Module + This is used when importing modules. + + + + + If Scope parameter is Local, this is true. + + + + + Win8:90779 + ServiceCore assembly is automatically imported as a nested module to process the NestedModules/RootModules/RequiredAssemblies fields in module manifests. + This property is set to ensure that Import-Module of a manifest module does not expose "Import-psworkflow" cmdlet. + + + + + Lets nested module import to export all of its functions, regardless of language boundaries. + This will be allowed when the manifest explicitly exports functions which will limit all visible module functions. + + + + + This parameter specified a prefix used to modify names of imported commands + + + + + Flags -force operations + + + + + Flags -global operations (affects what gets returned by TargetSessionState) + + + + + Flags -passthru operations + + + + + Flags -passthru operations + + + + + Wildcard patterns for the function to import + + + + + Wildcard patterns for the cmdlets to import + + + + + Wildcard patterns for the variables to import + + + + + Wildcard patterns for the aliases to import + + + + + The minimum version number to check the module against. Used the underlying property + for derived cmdlet paramters. + + + + + The maximum version number to check the module against. Used the underlying property + for derived cmdlet paramters. + + + + + The version number to check the module against. Used the underlying property + for derived cmdlet paramters. + + + + + The Guid to check the module against. Used the underlying property + for derived cmdlet paramters. + + + + + The arguments to pass to the scriptblock used to create the module + + + + + Disable warnings on cmdlet and function names that have non-standard verbs + or non-standard characters in the noun. + + + + + Add module path to app domain level module path cache if name is not rooted + + + + + A handy match all pattern used to initialize various import and export lists... + + + + + Loads the latest valid version if moduleBase is a multi-versioned module directory + + module directory path + The set of options that are used while importing a module + True if a module was found + + + + + Load and execute the manifest psd1 file or a localized manifest psd1 file. + + + + + Extra variables that are allowed to be referenced in moudle manifest file + + + + + Load and execute the manifest psd1 file or a localized manifest psd1 file. + + + + + Verify the hash contains only valid members. Write an error and return false if it is not valid. + + + + + Get a list of all modules + which can be imported just by specifying a non rooted file name of the module + (Import-Module foo\bar.psm1; but not Import-Module .\foo\bar.psm1) + + + + + Get a list of the available modules + which can be imported just by specifying a non rooted directory name of the module + (Import-Module foo\bar; but not Import-Module .\foo\bar or Import-Module .\foo\bar.psm1) + + + + + Get the version type of input string MaximumVersion, translate "*" if there's any. + + + + + Helper function for building a module info for Get-Module -List + + The module file + True if we should update any cached module info for this module + + + + + Routine to process the module manifest data language script. + + The script info for the manifest script + processing flags (whether to write errors / load elements) + The minimum version to check the manifest against + The maximum version to check the manifest against + The version to check the manifest against + The module guid to check the manifest against + + + + + + Routine to process the module manifest data language script. + + The script info for the manifest script + processing flags (whether to write errors / load elements) + The minimum version to check the manifest against + The maximum version to check the manifest against + The version to check the manifest against + The module guid to check the manifest against + The set of options that are used while importing a module + + + + + + Routine to process the module manifest data language script. + + The path to the manifest file + The script info for the manifest script + Contents of the module manifest + Contents of the localized module manifest + processing flags (whether to write errors / load elements) + The minimum version to check the manifest against + The maximum version to check the manifest against + The version to check the manifest against + The module guid to check the manifest against + The set of options that are used while importing a module + Tracks if there were errors in the file + + + + + + Check if a module has been loaded. + If loadElements is false, we check requireModule for correctness but do + not check if the modules are loaded. + + Execution Context. + Either a string or a hash of ModuleName, optional Guid, and ModuleVersion. + Sets if the module cannot be found due to incorrect version. + Sets if the module cannot be found due to incorrect guid. + Sets if the module/snapin is already present. + null if the module is not loaded or loadElements is false, the loaded module otherwise. + + + + Check if a module has been loaded. + If loadElements is false, we check requireModule for correctness but do + not check if the modules are loaded. + + The current module being loaded. + Either a string or a hash of ModuleName, optional Guid, and ModuleVersion. + Used for error messages. + Specifies how to treat errors and whether to load elements + Set if any errors are found. + Contains error record information. + null if the module is not loaded or loadElements is false, the loaded module otherwise. + + + + Check if a module has been loaded. + If loadElements is false, we check requireModule for correctness but do + not check if the modules are loaded. + + Execution Context. + The current module being loaded. + Either a string or a hash of ModuleName, optional Guid, and ModuleVersion. + Used for error messages. + Specifies how to treat errors and whether to load elements + Contains error record information. + null if the module is not loaded or loadElements is false, the loaded module otherwise. + + + + Verifies if a nested module is available using GetModuleIfAvailable. + and + will be used to create module name for searching. + If is null, the name specified in + nestedModuleSpec will be used. + + + + + + + + + + Search for a localized psd1 manifest file, using the same algorithm + as Import-LocalizedData. + + + + + Checks to see if the module manifest contains the specified key. + If it does and it's valid, it returns true otherwise it returns false. + If the key wasn't there or wasn't valid, then is set to null + + The hashtable to look for the key in + The manifest that generated the hashtable + the table key to use + Specifies how to treat errors and whether to load elements + Returns the extracted version + + + + + Checks to see if the module manifest contains the specified key. + If it does and it's valid, it returns true otherwise it returns false. + If the key wasn't there or wasn't valid, then is set to null. + + The hashtable to look for the key in + The manifest that generated the hashtable + the table key to use + Specifies how to treat errors and whether to load elements + Returns the extracted version + + + + + Checks to see if the module manifest contains the specified key. + If it does and it's valid, it returns true otherwise it returns false. + If the key wasn't there or wasn't valid, then is set to null + + The hashtable to look for the key in + The manifest that generated the hashtable + the table key to use + Specifies how to treat errors and whether to load elements + base directory of a module + expected file extension (added to strings that didn't have an extension) + if true then we want to error out if the specified files don't exist + Returns the extracted version + + + + + Enable Module logging based on group policy + + + + + Get Module Logging information from the group policy. + + + + + Checks to see if the module manifest contains the specified key. + If it does and it can be converted to the expected type, then it returns true and sets to the value. + If the key is missing it returns true and sets to default() + If the key is invalid then it returns false + + The hashtable to look for the key in + The manifest that generated the hashtable + the table key to use + Specifies how to treat errors and whether to load elements + Value from the manifest converted to the right type + true if success; false if there were errors + + + + A utility routine to fix up a file name so it's rooted and has an extension + + The base path to use if the file is not rooted + The file name to resolve. + The extension to use. + + + + + + A utility routine to fix up a file name, if it is relative path convert it to absolute path combining moduleBase, if it is not a relative path, leave as it is. + + The base path to use if the file is not rooted + The file name to resolve. + + + + + + This utility resolves a rooted file name using the provider + routines. It will only work if the path exists. + + The filename to resolve + Execution context + The resolved filename + + + + Removes a module from the session state + + module to remove + + + + Removes a module from the session state + + module to remove + module name specified in the cmdlet + + + + + + + + + + Returns PSModuleInfo of an already loaded module if that module can be simply reimported and there is no need to proceed with a regular import + Returns null if the caller should proceed with a regular import (either because there is no previously loaded module, or because the -Force flag was specified and the previously loaded module has been removed by this method) + + + + + Loads a module file after searching for it using the known extension list + + The parent module for which this module is a nested module + The name to use for the module + The file basename for this module + The module's extension + The module base which comes from the module manifest + Command name prefix + + The session state instance to use for this module - may be null + in which case a session state will be allocated if necessary + + The set of options that are used while importing a module + The processing flags to use when processing the module + True if a module was found + + + + + Loads a module file after searching for it using the known extension list + + The parent module for which this module is a nested module + The name to use for the module + The file basename for this module + The module's extension + The module base which comes from the module manifest + Command name prefix + + The session state instance to use for this module - may be null + in which case a session state will be allocated if necessary + + The set of options that are used while importing a module + The processing flags to use when processing the module + True if a module was found + True if a module file was found + + + + + Create an ExternalScriptInfo object from a file path. + + The path to the file + The base name of the script + check the current execution policy + The ExternalScriptInfo object. + + + + Load a module from a file... + + The resolved path to load the module from + The module base path to use for this module + Command name prefix + The session state instance to use for this module - may be null in which case a session state will be allocated if necessary + The set of options that are used while importing a module + The manifest processing flags to use when processing the module + True if a module was found + True if the module was successfully loaded + + + + Load a module from a file... + + The parent module, if any + The resolved path to load the module from + The module base path to use for this module + Command name prefix + The session state instance to use for this module - may be null in which case a session state will be allocated if necessary + Private Data for the module + The set of options that are used while importing a module + The manifest processing flags to use when processing the module + True if a module was found + True if a module file was found + True if the module was successfully loaded + + + + Analyze the module assembly to find out all cmdlets and aliases defined in that assembly + + + + + Load a binary module. A binary module is an assembly that should contain cmdlets. + + If true, then then the registered snapins will also be searched when loading. + The name of the snapin or assembly to load. + The path to the assembly to load + The assembly to load so no lookup need be done. + The module base to use for this module. + + The session state instance to use for this module. Normally binary modules don't have a session state + instance, however when loaded through a module manifest with nested modules, it will have a session + state instance to store the imported functions, aliases and variables. + + The set of options that are used while importing a module + The manifest processing flags to use when processing the module + load the types files mentioned in the snapin registration + Load the formst files mentioned in the snapin registration + Command name prefix + Sets this to true if an assembly was found. + THe module info object that was created... + + + + Load a binary module. A binary module is an assembly that should contain cmdlets. + + The parent module for which this module is a nested module + If true, then then the registered snapins will also be searched when loading. + The name of the snapin or assembly to load. + The path to the assembly to load + The assembly to load so no lookup need be done. + The module base to use for this module. + + The session state instance to use for this module. Normally binary modules don't have a session state + instance, however when loaded through a module manifest with nested modules, it will have a session + state instance to store the imported functions, aliases and variables. + + The set of options that are used while importing a module + The manifest processing flags to use when processing the module + Command name prefix + load the types files mentioned in the snapin registration + Load the formst files mentioned in the snapin registration + Sets this to true if an assembly was found. + Short name for module. + + THe module info object that was created... + + + + Removes prefix from a command name and returns the command name + + The command name from which the prefix needs to be removed. + The string containing the prefix. + The command name without the prefix. + + + + Import the script-level functions from one session state to another, calling + WriteVerbose for each imported member... + + The session state instance to use as the source of the functions + Command name prefix + + + + Import the script-level functions from one session state to another, calling + WriteVerbose for each imported member... + + The session state instance to use as the source of the functions + Command name prefix + The set of options that are used while importing a module + + + + Search a PSSnapin with the specified name + + + + + Returns the context cached ModuleTable module for import only if found and has safe language boundaries while + exporting all functions by default. + + This protects cached trusted modules that exported all functions in a trusted context, from being re-used + in an untrusted context and thus exposing functions that were meant to be private in that context. + + Returning false forces module import to re-import the module from file with the current context and prevent + all module functions from being exported by default. + + Note that module loading order is important with this check when the system is *locked down with DeviceGuard*. + If a submodule that does not explicitly export any functions is imported from the command line, its useless + because no functions are exported (default fn export is explictly disallowed on locked down systems). + But if a parentmodule that imports the submodule is then imported, it will get the useless version of the + module from the ModuleTable and the parent module will not work. + $mSub = import-module SubModule # No functions exported, useless + $mParent = import-module ParentModule # This internally imports SubModule + $mParent.DoSomething # This will likely be broken because SubModule functions are not accessible + But this is not a realistic scenario because SubModule is useless with DeviceGuard lock down and must explicitly + export its functions to become useful, at which point this check is no longer in effect and there is no issue. + $mSub = import-module SubModule # Explictly exports functions, useful + $mParent = import-module ParentModule # This internally imports SubModule + $mParent.DoSomething # This works because SubModule functions are exported and accessible + + Key + PSModuleInfo + True if module item is to be removed + True if module found in table and is safe to use + + + + Holds the result of a binary module analysis + + + + + The list of cmdlets detected from the binary + + + + + Represents module specification written in a module manifest (i.e. in RequiredModules member/field). + + Module manifest allows 2 forms of module specification: + 1. string - module name + 2. hashtable - [string]ModuleName (required) + [Version]ModuleVersion/RequiredVersion (required) + [Guid]GUID (optional) + + so we have a constructor that takes a string and a constructor that takes a hashtable + (so that LanguagePrimitives.ConvertTo can cast a string or a hashtable to this type) + + + + + Default constructor + + + + + Construct a module specification from the module name. + + The module name. + + + + Construct a module specification from a hashtable. + Keys can be ModuleName, ModuleVersion, and Guid. + ModuleName must be convertible to . + ModuleVersion must be convertible to . + Guid must be convertible to . + + The module specification as a hashtable. + + + + Initialize moduleSpecification from hashtable. Return exception object, if hashtable cannot be converted. + Return null, in the success case. + + object to initalize + contains info about object to initialize. + + + + + Implements ToString() for a module specification. If the specification + just contains a Name, then that is returned as is. Otherwise, the object is + formatted as a PowerSHell hashtable. + + + + + + Parse the specified string into a ModuleSpecification object + + The module specification string + the ModuleSpecification object + + + + + The module name. + + + + + The module GUID, if specified. + + + + + The module version number if specified, otherwise null. + + + + + The module maxVersion number if specified, otherwise null. + + + + + The exact version of the module if specified, otherwise null. + + + + + Implements a cmdlet that creates a dynamic module from a scriptblock.. + + + + + This parameter specifies the name to assign to the dynamic module. + + + + + Specify a scriptblock to use for the module body... + + + + + This parameter specifies the patterns matching the functions to import from the module... + + + + + This parameter specifies the patterns matching the cmdlets to import from the module... + + + + + This parameter causes the session state instance to be written... + + + + + This parameter causes the session state instance to be written... + + + + + The arguments to pass to the scriptblock used to create the module + + + + + Create the new module... + + + + + Cmdlet to create a new module manifest file. + + + + + The output path for the generated file... + + + + + Sets the list of files to load by default... + + + + + Set the GUID in the manifest file + + + + + Set the author string in the manifest + + + + + Set the company name in the manifest + + + + + Set the copyright string in the module manifest + + + + + Set the module version... + + + + + Set the module version... + + + + + Set the module description + + + + + Set the ProcessorArchitecture required by this module + + + + + Set the PowerShell version required by this module + + + + + Set the CLR version required by the module. + + + + + Set the version of .NET Framework required by the module. + + + + + Set the name of PowerShell host required by the module. + + + + + Set the version of PowerShell host required by the module. + + + + + Sets the list of Dependencies for the module + + + + + Sets the list of types files for the module + + + + + Sets the list of formats files for the module + + + + + Sets the list of ps1 scripts to run in the session state of the import-module invocation. + + + + + Set the list of assemblies to load for this module. + + + + + Specify any additional files used by this module. + + + + + List of other modules included with this module. + Like the RequiredModules key, this list can be a simple list of module names or a complex list of module hashtables. + + + + + Specify any functions to export from this manifest. + + + + + Specify any aliases to export from this manifest. + + + + + Specify any variables to export from this manifest. + + + + + Specify any cmdlets to export from this manifest. + + + + + Specify any dsc resources to export from this manifest. + + + + + Specify compatible PSEditions of this module. + + + + + Specify any module-specific private data here. + + + + + Specify any Tags. + + + + + Specify the ProjectUri. + + + + + Specify the LicenseUri. + + + + + Specify the IconUri. + + + + + Specify the ReleaseNotes. + + + + + Specify the HelpInfo URI + + + + + This parameter causes the module manifest string to be to the output stream... + + + + + Specify the Default Command Prefix + + + + + Return a single-quoted string. Any embedded single quotes will be doubled. + + The string to quote + The quoted string + + + + Takes a collection of strings and returns the collection + quoted. + + The list to quote + Streamwriter to get end of line character from + The quoted list + + + + This function is created to PreProcess -NestedModules in Win8. + In Win7, -NestedModules is of type string[]. In Win8, we changed + this to object[] to support module specification using hashtable. + To be backward compatible, this function calls ToString() on any + object that is not of type hashtable or string. + + + + + + + Takes a collection of "module specifications" (string or hashtable) + and returns the collection as a string that can be inserted into a module manifest + + The list to quote + Streamwriter to get end of line character from + The quoted list + + + + Takes a collection of file names and returns the collection + quoted. + + The list to quote + Streamwriter to get end of line character from + The quoted list + + + + Glob a set of files then resolve them to relative paths. + + + + + + + This routine builds a fragment of the module manifest file + for a particular key. It returns a formatted string that includes + a comment describing the key as well as the key and its value. + + The manifest key to use + resourceString that holds the message + The formatted manifest fragment + Streamwriter to get end of line character from + + + + + Generate the module manfest... + + + + + Implements a cmdlet that gets the list of loaded modules... + + + + + This parameter specifies the current pipeline object + + + + + This parameter specifies the current pipeline object + + + + + This parameter specifies the current pipeline object + + + + + If provided, this paramter will allow readonly modules to be removed. + + + + + Remove the specified modules. Modules can be specifed either through a ModuleInfo or a name. + + + + + Returns a map from a module to the list of modules that require it + + + + + Reports an error if no modules were removed... + + + + + This cmdlet takes a module manifest and validates the contents... + + + + + The output path for the generated file... + + + + + Implements the record processing for this cmdlet + + + + + Check if the given path is valid. + + + + + + + + + Check if the given string is a valid gac assembly. + + + + + + + Base class for object-based event registration. + + + + + Parameter for an identifier for this event subscription + + + + + Parameter for any action to be invoked when the event arrives + + + + + Parameter for additional data to be associated with this event subscription + + + + + Parameter for the flag that determines if this subscription is used to support + other subscriptions + + + + + Parameter for the flag that determines whether this + subscription will forward its events to the PowerShell client during remote executions + + + + + Parameter to indicate that the subscriber should be auto-unregistered after being triggered for specified times. + If the value is equal or less than zero, there is no limit on the number of times the event can be triggered without being unregistered + + + + + Returns the object that generates events to be monitored + + + + + Returns the event name to be monitored on the input object + + + + + Gets the subscriber generated by this command + + + + + Check arguments + + + + + Subscribe to the event on the object + + + + + This class implements get-help command + + + + + Help Views + + + + + Default constructor for the GetHelpCommand class + + + + + Target to search for help + + + + + Path to provider location that user is curious about. + + + + + List of help categories to search for help + + + + + List of Component's to search on. + + + + + + List of Functionality's to search on. + + + + + + List of Role's to search on. + + + + + + Changes the view of HelpObject returned + + + Currently we support following views: + + 1. Reminder (Default - Experienced User) + 2. Detailed (Beginner - Beginning User) + 3. Full (All Users) + 4. Examples + 5. Parameters + + Currently we support these views only for Cmdlets. + A SnapIn developer can however change these views. + + + + + Changes the view of HelpObject returned + + + Currently we support following views: + + 1. Reminder (Default - Experienced User) + 2. Detailed (Beginner - Beginning User) + 3. Full (All Users) + 4. Examples + 5. Parameters + + Currently we support these views only for Cmdlets. + A SnapIn developer can however change these views. + + + + + Changes the view of HelpObject returned + + + Currently we support following views: + + 1. Reminder (Default - Experienced User) + 2. Detailed (Beginner - Beginning User) + 3. Full (All Users) + 4. Examples + + Currently we support these views only for Cmdlets. + A SnapIn developer can however change these views. + + + + + Parameter name. + + + Support WildCard strings as supported by WildcardPattern class. + + + + + This parameter,if true, will direct get-help cmdlet to + navigate to a URL (stored in the command MAML file under + the uri node). + + + + + Gets and sets a value indicatuing whether the help should be displayed in a separate window + + + + + Implements the BeginProcessing() method for get-help command + + + + + Implements the ProcessRecord() method for get-help command + + + + + Change as per user request. + + This method creates a new type to the existing typenames + depending on Detailed,Full,Example parameteres and adds this + new type(s) to the top of the list. + + Full help object to transform. + Transformed help object with new TypeNames. + If Detailed and Full are not specified, nothing is changed. + + + + Gets the paramater info for patterns identified Parameter property. + Writes the parameter info(s) to the output stream. An error is thrown + if a parameter with a given pattern is not found. + + HelpInfo Object to look for the parameter. + + + + Validates input parameters + + Category specified by the user + + If the request cant be serviced. + + + + + Helper method used to Write the help object onto the output + stream or show online help (URI extracted from the HelpInfo) + object. + + + + + Opens the Uri. System's default application will be used + to show the uri. + + + + + + Checks if we can connect to the internet + + + + + + Helper methods used as powershell extension from a types file. + + + + + Verifies if the InitialSessionState of the current process + + + + + + Retrieves the HelpUri given a CommandInfo instance. + + + CommandInfo instance wrapped as PSObject + + + null if is not a CommandInfo type. + null if HelpUri could not be retrieved either from CommandMetadata or + help content. + + + + + The exception that is thrown when there is no help category matching + a specific input string. + + + + + Initializes a new instance of the HelpCategoryInvalidException class. + + The name of help category that is invalid. + + + + Initializes a new instance of the HelpCategoryInvalidException class. + + + + + Initializes a new instance of the HelpCategoryInvalidException class. + + The name of help category that is invalid. + The inner exception of this exception + + + + Creates an internal error record based on helpCategory. + + + + + Gets ErrorRecord embedded in this exception. + + ErrorRecord instance + + + + Gets name of the help category that is invalid. + + Name of the help category. + + + + Gets exception message for this exception. + + Error message. + + + + Initializes a new instance of the HelpCategoryInvalidException class. + + Serialization information. + Streaming context. + + + + Populates a with the + data needed to serialize the HelpCategoryInvalidException object. + + The to populate with data. + The destination for this serialization. + + + + The exception that is thrown when there is no help found for a topic. + + + + + Initializes a new instance of the HelpNotFoundException class with the give help topic. + + The help topic for which help is not found. + + + + Initializes a new instance of the HelpNotFoundException class. + + + + + Initializes a new instance of the HelpNotFoundException class with the given help topic + and associated exception. + + The help topic for which help is not found. + The inner exception. + + + + Creates an internal error record based on helpTopic. + The ErrorRecord created will be stored in the _errorRecord member. + + + + + Gets ErrorRecord embedded in this exception. + + ErrorRecord instance. + + + + Gets help topic for which help is not found. + + Help topic. + + + + Gets exception message for this exception. + + Error message. + + + + Initializes a new instance of the HelpNotFoundException class. + + Serialization information. + Streaming context. + + + + Populates a with the + data needed to serialize the HelpNotFoundException object. + + The to populate with data. + The destination for this serialization. + + + + The base class of all updatable help system cmdlets (Update-Help, Save-Help) + + + + + Specifies the languages to update + + + + + Gets or sets the credential parameter + + + + + + Directs System.Net.WebClient whether or not to use default credentials + + + + + Forces the operation to complete + + + + + Handles help system progress events + + event sender + event arguments + + + + Static constructor + + NOTE: FWLinks for core PowerShell modules are needed since they get loaded as snapins in a Remoting Endpoint. + When we moved to modules in V3, we were not able to make this change as it was a risky change to make at that time. + + + + + + Checks if a module is a system module, a module is a system module + if it exists in the metadata cache. + + module name + true if system module, false if not + + + + Class constructor + + command type + + + + Gets a list of modules from the given pattern + + execution context + pattern to search + Module Specification + do not generate errors for modules without HelpInfoUri + a list of modules + + + + Handles Ctrl+C + + + + + End processing + + + + + Main cmdlet logic for processing module names or fully qualified module names + + module names given by the user + fullyQualifiedNames + + + + Processing module objects for Save-Help + + module objects given by the user + + + + Processes a module with potential globbing + + module name with globbing + + + + Processes a ModuleSpecification with potential globbing + + ModuleSpecification + + + + Processes a single module with multiple cultures + + module to process + + + + Process a single module with a given culture + + module to process + culture to use + true if the module has been processed, false if not + + + + Gets a list of modules from the given pattern or ModuleSpecification + + pattern to match + ModuleSpecification + skip errors + a list of modules + + + + Checks if it is necessary to update help + + ModuleInfo + current HelpInfo.xml + new HelpInfo.xml + current culture + force update + true if it is necessary to update help, false if not + + + + Checks if the user has attempted to update more than once per day per module + + module name + path to help info + help info file name + current time (UTC) + if -Force is specified + true if we are okay to update, false if not + + + + Resolves a given path to a list of directories + + path to resolve + resolve recursively? + Treat the path / start path as a literal path?/// + a list of directories + + + + Resolves a given path to a list of directories recursively + + path to resolve + a list of directories + + + + Validates the provider of the path, only FileSystem provider is accepted. + + path to validate + + + + Loggs a command message + + message to log + + + + Processes an exception for help cmdlets + + module name + culture info + exception to check + + + + This class implements the Update-Help cmdlet + + + + + Class constructor + + + + + Specifies the modules to update + + + + + Specifies the Module Specifications to update + + + + + Specifies the paths to update from + + + + + Specifies the literal path to save updates to + + + + + Scans paths recursively + + + + + Begin processing + + + + + Main cmdlet logic + + + + + Process a single module with a given culture + + module to process + culture to use + true if the module has been processed, false if not + + + + Throws PathMustBeValidContainers exception + + + + + + + This class implements the Save-Help cmdleto + + + + + Class constructor + + + + + Specifies the paths to save updates to + + + + + Specifies the literal path to save updates to + + + + + Specifies the modules to update + + + + + Specifies the Module Specifications to update + + + + + + + + + Process a single module with a given culture + + module to process + culture to use + true if the module has been processed, false if not + + + + Contains information about a single history entry + + + + + Constructor + + Id of pipeline in which command associated + with this history entry is executed + command string + status of pipeline execution + startTime of execution + endTime of execution + + + + Copy constructor to support cloning + + + + + + Id of this history entry. + + + + + + CommandLine string + + + + + + Execution status of assoicated pipeline + + + + + + Start time of execution of associated pipeline + + + + + + End time of execution of associated pipeline + + + + + + Override for ToString() method + + + + + + Cleared status of an entry + + + + + Sets Id + + + + + + Set status + + + + + + Set endtime + + + + + + Sets command + + + + + + Id of the pipeline corresponding to this history entry + + + + + Id of the history entry + + + + + CommandLine string + + + + + ExecutionStatus of execution + + + + + Start time of execution + + + + + End time of execution + + + + + Flag indicating an entry is present/cleared + + + + + Retuns a clone of this object + + + + + + This class implements history and provides APIs for adding and fetching + entries from history + + + + + Default history size + + + + + Constructs history store + + + + + Create a new history entry + + + + + + + If true, the entry will not be added when the history is locked + id for the new created entry. Use this id to fetch the + entry. Returns -1 if the entry is not added + This function is thread safe + + + + Udpate the history entry corresponding to id. + + id of history entry to be updated + status to be updated + endTime to be updated + If true, the entry will not be added when the history is locked + + + + + Gets entry from buffer for given id. This id should be the + id returned by Add method. + + Id of the entry to be fetched + entry corresponding to id if it is present else null + + + + + Get count HistoryEntries + + + + + history entries + + + + Get History Entries based on the WildCard Pattern value. + If passed 0, returns all the values, else return on the basis of count. + + + + + + + + + Clears the history entry from buffer for a given id. + + Id of the entry to be Cleared + nothing + + + + gets the total number of entries added + + count of total entries added + + + + Adds an entry to the buffer. If buffer is full, overwrites + oldest entry in the buffer + + + Returns id for the entry. This id should be used to fetch + the entry from the buffer + Id starts from 1 and is incremented by 1 for each new entry + + + + Gets entry from buffer for given id. This id should be the + id returned by Add method. + + Id of the entry to be fetched + entry corresponding to id if it is present else null + + + + + Gets the smallest id in the buffer + + + + + + Reallocates the buffer if history size changed + + + + + Get the index for new entry + + Index for new entry + + + + Gets index in buffer for an entry with given Id + + + + + + Gets index in buffer for an entry with given Id using passed in + capacity + + + + + + + + Increment number of entries in buffer by 1 + + + + + Get the current history size + + + + + + buffer + + + + + Capacity of circular buffer + + + + + Number of entries in buffer currently + + + + + total number of entries added till now including those which have + been overwritten after buffer got full. This is also number of + last entry added. + + + + + Private object for synchronization + + + + + return the ID of the next history item to be added + + + + + This class Implements the get-history command + + + + + Ids of entries to display + + + + + Ids of entries to display + + + + + + Is Count parameter specified + + + + + Count of entries to display. By default, count is the length of the history buffer. + So "Get-History" returns all history entries. + + + + + No of History Entries (starting from last) that are to be displayed. + + + + + Implements the Processing() method for show/History command + + + + + This class implements the Invoke-History command + + + + + Invoke cmd can execute only one history entry. If multiple + ids are provided, we throw error. + + + + + Accepts a string value indicating a previously executed command to + re-execute. + If string can be parsed to long, + it will be used as HistoryId + else + as a string value indicating a previously executed command to + re-execute. This string is the first n characters of the command + that is to be re-executed. + + + + + Implements the BeginProcessing() method for eval/History command + + + + + Helper function which gets history entry to invoke + + + + + Id of history entry to execute. + + + + + Commandline to execute. + + + + + Parse Id parameter to populate _historyId and _commandLine + + + + + Invoke-history is replaced in history by the command it executed. + This replacement happens only if Invoke-History is single element + in the pipeline. If there are more than one element in pipeline + (ex A | Invoke-History 2 | B) then we cannot do this replacement. + + + + + This class Implements the add-history command + + + + + This parameter specifies the current pipeline object + + + + + A Boolean that indicates whether history objects should be + passed to the next element in the pipeline. + + + + + override for BeginProcessing + + + + + override for ProcessRecord + + + + + Convert mshObject that has has the properties of an HistoryInfo + object in to HistoryInfo object. + + + mshObject to be converted to HistoryInfo. + + + HistoryInfo object if coversion is successful else null. + + + + + This Class implements the Clear History cmdlet + + + + + Specifies the ID of a command in the session history.Clear history clears the entries + wit the specified ID(s) + + + + + id of a history entry + + + + + command line name of an entry in the session history + + + + + commandline parameter + + + + + Clears the specified number of history entries + + + + + count of the history entries + + + + + a boolean variable to indicate if the count parameter specified + + + + + Specifies whether new entries to be cleared or the default old ones. + + + + + switch parameter on the history entries + + + + + Overriding Begin Processing + + + + + Overriding Process Record + + + + + Clears the session history based on the id parameter + takes no parameters + nothing + + + + + Clears the session history based on the Commandline parameter + takes no parameters + nothing + + + + + Clears the session history based on the input parametera + id of the entry to be cleared + count of entries to be cleared + cmdline string to be cleared + order of the entries + nothing + + + + + history obj + + + + + array of historyinfo objects + + + + + Class implemeting Register-PSSessionConfiguration + + + + + Parameter used to specify the Processor Architecture that this shell targets. + On a 64bit base OS, specifying a value of 32 means that the shell is configured + to launch like a 32bit process (WOW64). + + + + + SessionType + + Only want this on non assemblyName parameter set, since assembly decides the sessiontype. + + + + + + + 1. Either both "AssemblyName" and "ConfigurationTypeName" must be specified + or both must not be specified. + + + + + For each record, execute it, and push the results into the + success stream. + + + + + + + + + + + + + 1. New shell successfully registered. However cannot delete temporary plugin file {0}. + Reason for failure: {1}. + + + + + + + + + 1. Cannot delete temporary file {0}. Try again. Reason for failure: {1}. + 2. Cannot write shell configuration data into temporary file {0}. Try again. + Reason for failure: {1}. + + + + + Utilities for Custom shell commands + + + + + Run script to restart the WinRM service. The script will write + output and error into the cmdlets streams. + + + Cmdlet's context in which the restart-service script is run. + + + if true, then this method is a no-op. + + + if true, then the user will not be prompted. + + + if true, we dont attempt to restart winrm service ie. this will be a no-op. + + + + + Gathers WhatIf, Confirm parameter values from the cmdlet. + + + + + + + + Checks if the current thread is running elevated. If not, throws an error. + + + 1. Acess is denied. You need to run this cmdlet from an elevated process. + + + + + Creates a Grouped Managed Service Account credential based on the passed in account name + + Group Managed Service Account name + PSCredential for GMS account + + Invalid account name. Must be of form 'Domain\UserName'. + + + + + Calculates the MaxPSVersion in the config xml from psVersion + + + + + + Converts the module path represented in the string[] into a comma separated string. + + + + + Converts the version number to the format "Major.Minor" which needs to be persisted in the config xml + + + + + + Checks if the specified version of PowerShell is installed + + + + + + Takes array of group name string objects and returns a semicolon delimited string. + + + + + + + Builds a session SDDL based on the provided configuration hashtable. + Retrieves RequiredGroups information to add conditional group membership restrictions to SDDL. + Retrieves RoleDefinitions information to include role user accounts. + + + + + SDDL + + + + Update SDDL user ACEs with provided conditional group ACE fragment. + SDDL: O:NSG:BAD:P(A;;GA;;;BA)(A;;GA;;;RM)(A;;GA;;;IU)(A;;GA;;;S-1-5-21-2127438184-1604012920-1882527527)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD) + Cond ACE: (Member_of {SID(2FA_GROUP_1)}) + Cond SDDL: O:NSG:BAD:P(XA;;GA;;;BA)(A;;GA;;;RM)(A;;GA;;;IU)(XA;;GA;;;S-1-5-21-2127438184-1604012920-1882527527;(Member_of {SID(2FA_GROUP_1)}))S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD) + + + + + + + + Parse RequiredGroups configruation and build conditional ACE string. + + + + + + + Base class for PSCustomShell commands Register-PSSessionConfiguration, Set-PSSessionConfiguration + + + + + This parameter enables the user to specify a shell name for the + created custom shell. + + + + + This parameter enables the user to load an Assembly and supply + InitialSessionstate for each user connecting to the shell. + + + + + This parameter can accompany with AssemblyName. This supplies + the directory to search while loading the assembly specified + with parameter AssemblyName. Environment variables are accepted + in the string value. + + + + + This parameter should be specified with AssemblyName. This supplies + the type to load to get the InitialSessionState. The type should + be derivided from . + + + + + Parameter used to specify the RunAs credentials. + + + + + ApartmentState of the Runspace created for the shell. + + + + + ThreadOptions of the Runspace created for the shell. + + + + + Set access mode + + + + + Host mode + + + + + Initialization script to run upon Runspace creation for this shell. + + + + + Total data (in MB) that can be received from a remote machine + targeted towards a command. + + + + + Maximum size (in MB) of a deserialized object received from a remote machine. + + + + + This enables the user to specify an SDDL on the shell. + The default SDDL is the default used by Wsman. + + + + + Shows a UI to choose permissions/access rights for this session configuration. + + + + + Property that sets force parameter. This will allow + restarting the WinRM service after the changes were + made. + + + + + If true, then the cmdlet will not attempt to restart + WinRM service after completion. Typically WinRM service + need to be restarted for changes to take place. + + + + + Property corresponding to PSVersion parameter in the ConfigXML. This is treated as the minimum PowerShell version to load. + This will allow existing endpoints creating during migration or upgrade that have PSVersion=2.0 to roll forward to PowerShell 3.0 automatically without changing the ConfigXML. + + + + + SessionTypeOption + + + + + TransportOption + + + + + ModulesToImport + + + + + Declaration initial session config file path + + + + + + + + + + + + + Comma delimited string specifying groups a virtual account is associated with + + + + + This is internal to make 3rd parties not derive from this cmdlet. + + + + + Class implemeting Unregister-PSSessionConfiguration + + + + + This parameter enables the user to specify a shell name to + remove. + + + + + Property that sets force parameter. This will allow + restarting the WinRM service after the changes were + made. + + + + + If true, then the cmdlet will not attempt to restart + WinRM service after completion. Typically WinRM service + need to be restarted for changes to take place. + + + + + Verifies if remoting cmdlets can be used + + + + + + + + + + + + + Class implemeting Get-PSSessionConfiguration + + + + + + + + + Force parameter + + + + + Verifies if remoting cmdlets can be used + + + + + + + + + Class implemeting Set-PSSessionConfiguration + + + + + + + + 1. Either both "AssemblyName" and "ConfigurationTypeName" must be specified + or both must not be specified. + + + + + + + + + + + + + + Check if the current configuration is a workflow endpoint + + + + + + Class implementing Enable-PSSessionConfiguration cmdlet + + + + + Configurations to Enable + + + + + Property that sets force parameter. This will allow + configuring the WinRM and enabling the session configurations + without prompting the user. + + + + + This enables the user to specify an SDDL for whom the session + configuration is enabled. + + + + + Property that will allow configuring WinRM with Public + profile exception enabled. + + + + + If true, then the cmdlet will not attempt to restart + WinRM service after completion. Typically WinRM service + needs to be restarted for changes to take place. + + + + + + + + 1. Either both "AssemblyName" and "ConfigurationTypeName" must be specified + or both must not be specified. + + + + + + + + + + + + + + + + + + + + Configurations to Enable + + + + + Property that sets force parameter. This will allow + configuring the WinRM and enabling the session configurations + without prompting the user. + + + + + If true, then the cmdlet will not attempt to restart + WinRM service after completion. Typically WinRM service + needs to be restarted for changes to take place. + + + + + + + + 1. Either both "AssemblyName" and "ConfigurationTypeName" must be specified + or both must not be specified. + + + + + + + + + + + + + + + + + + + + Property that sets force parameter. This will allow + configuring the WinRM and enabling the session configurations + without prompting the user. + + + + + Property that will allow configuring WinRM with Public + profile exception enabled. + + + + + + + + 1. Either both "AssemblyName" and "ConfigurationTypeName" must be specified + or both must not be specified. + + + + + + + + + + Disable-PSRemoting cmdlet + Only disable the network access to the Session Configuration. The + local access is still enabled + + + + + Force parameter + + + + + Check for prerequisites and eleveation mode + + + + + Invoke Disable-PSRemoting + + + + + Gets the capabilities of a constrained endpoint on the local machine for a specific user. + + + + + Gets or sets the session name that should be queried for its session capabilities + + + + + Gets or sets the user name that should be applied to the session + + + + + Gets or sets the switch that determines whether just the commands should be returned, + or the entire Initial Session State. + + + + + + + + + This class is public for implementation reasons only and should not be used. + + + + + + + + + + + + + normalized parameter class to be constructed from the command line parameters + using the metadata information provided by an instance of CommandParameterDefinition + it's basically the hash table with the normalized values + + + + + metadata base class for hashtable entry definitions + it contains the key name and the allowable types + it also provides hooks for type expansion + + + + + metadata abstract base class to contain hash entries definitions + + + + + for a key name, verify it is a legal entry: + 1. it must match (partial match allowed) + 2. it must be unambiguous (if partial match) + If an error condition occurs, an exception will be thrown + + key to verify + invocation context for error reporting + matching hash table entry + + + + + engine to process a generic object[] from the command line and + generate a list of MshParameter objects , given the metadata provided by + a class derived from CommandParameterDefinition + + + + + + + + + + + + + + helper class to hold a resolved expression and its + originating parameter + + + + + Helper method to handle PSComputerName and PSShowComputerName properties from + the formating objects. If PSShowComputerName exists and is false, removes + PSComputerName from the display. + + PSShowComputerName is an internal property..so this property is always + removed from the display. + + + + + + + internal class to manage the grouping algorithm for the + format-xxx commands + + + + + Initalize with the grouping property data + + name of the grouping porperty + dispaly name of the property + + + + compute the string value of the grouping property + + object to use to compute the property value + true if there was an update + + + + value of the display label passed in. + + + + + value of the current active grouping key + + + + + name of the current grouping key + + + + + the current value of the grouping key + + + + + base class for the various types of formatting shapes + + + + + Let the view prepare itself for RemoteObjects. Specific view generators can + use this call to customize display for remote objects like showing/hiding + computername property etc. + + + + + + update the current value of the grouping key + + object to use for the update + true if the value of the key changed + + + + class to process a complex control directive and generate + the corresponding formatting tokens + + + + + class to generate a complex view from properties + + + + + given an object, generate a tree-like view + of the object + + object to process + parameters from the command line + complex view entry to send to the output command + + + + recursive call to display an object + + object to display + current level in the traversal + list of parameters from the command line + list of format tokens to add to + + + + recursive call to display an object + + enumeration to display + current level in the traversal + list of format tokens to add to + + + + display a leaf value + + object to display + list of format tokens to add to + + + + determine if we have to stop the expansion + + object to verify + current level of recursion + + + + + treat as scalar check + + name of the type to check + true if it has to be treated as a scalar + + + + identation added to each level in the recursion + + + + + Let the view prepare itself for RemoteObjects. This will add "ComputerName" to the + table columns. + + + + + + Let the view prepare itself for RemoteObjects. This will add "ComputerName" to the + table columns. + + + + + + Method to filter resolved expressions as per table view needs. + For v1.0, table view supports only 10 properties. + + This method filters and updates "activeAssociationList" instance property. + + None. + This method updates "activeAssociationList" instance property. + + + + class to manage the selection of a desired view type and + manage state associated to the selected view + + + + + Prepares a given view for remote object processing ie., lets the view + display (or not) ComputerName property. This will query the object to + check if ComputerName property is present. If present, this will prepare + the view. + + + + + + + Helper method to process Unknown error message. + It helps is creating appropriate error message to + be displayed to the user. + + Error context. + Uses supplied view name. + Source object. + Types info database. + Requested format shape. + + + + the view generator that produced data for a selected shape + + + + + class to manage the selection of a desired view type + for out of band objects + + + + + Helper class to manage the logging of errors resulting from + evaluations of MshExpression instances + + Depending on settings, it queues the failing MshExpressionResult + instances and generates a list of out-of-band FormatEntryData + objects to be sent to the output pipeline + + + + + log a failed evaluation of an MshExpression + + MshExpressionResult containing the failed evaluation data + object used to evaluate the MshExpression + + + + log a failed formatting operation + + string format error object + + + + provide a list of ErrorRecord entries + to be written to the error pipeline and clear the list of pending + errors + + list of ErrorRecord objects + + + + Conversion between an error internal representation and ErrorRecord + + internal error object + corresponding ErrorRecord instance + + + + current list of failed MsExpression evaluations + + + + + It holds the command line parameter values + It unifies the data structures across the various + formatting command (e.g. table, wide and list) + + + + + MshParameter collection, as specified by metadata + the list can be empty of no data is specified + + + + + name of the group by property, it can be null + + + + + name of a view from format.ps1xml, it can be null + + + + + flag to force a shape even on out of band objects + + + + + autosize formatting flag. If true, the output command is instructed + to get the "best fit" for the device screen + + + + + errors are shown as out of band messages + + + + + errors are shown in the formatted output + + + + + expand IEnumerable flag. + + + + + extension mechanism for shape specific parameters + + + + + class to derive from to pass shepe specific data + + + + + options for class info display on objects + + + + + max depth of recursion on sub objects + + + + + specialized class for the "expression" property + + + + + definitions for hash table keys + + + + + Base class defining the formatting context and the + formatting context manager (stack based) + + + + + constructor to set up the formatting context + + + + + enum listing the possible states the context is in + + + + + context manager: stack to keep track in which context + the formatter is + + + + + core inner implementation for format/xxx commands + + + + + constructor to glue to the CRO + + + + + execution entry point + + + + + execute formatting on a single object + + object to process + + + + group transitions: + none: stay in the same group + enter: start a new group + exit: exit from the current group + + + + + compute the group transition, given an input object + + object receoved from the input pipeline + GroupTransition enumeration + + + + write a payplad object by properly wrapping it into + a FormatEntry object + + object to process + + + + inject the start group information + and push group context on stack + + current pipeline object + that is starting the group + + + + inject the end group information + and pop group context out of stack + + + + + the formatting shape this formatter emits + + + + + + + + + + + + + optional, non positional parameter to specify the + group by property + + + + + optional, non positional parameter + + + + + + optional, non positional parameter + + + + + + optional, non positional parameter + + + + + + optional, non positional parameter + + + + + + optional, non positional parameter + + + + + + + + + + + it reads the command line switches and collects them into a + FormattingCommandLineParameters instance, ready to pass to the + inner format command + + parameters collected in unified manner + + + + + + + + + Positional parameter for properties, property sets and table sets + specified on the command line. + The paramater is optional, since the defaults + will be determined using property sets, etc. + + + + + + + + + + optional, non positional parameter + + + + + + optional, non positional parameter + + + + + + optional, non positional parameter + + + + + + class providing an algorithm for automatic resizing + of table columns + + + + + class providing an algorithm for automatic resizing + + overall width of the table in characters + minimum usable column width + number of separator characters + + + + calculate the widths by applying some heuristics to get them to fit on the + allotted table width. It first assigns widths to the columns that do not have a specified + width, then it checks if the total width exceeds the screen widths. If so, it proceeds + with column elimination, starting from the right most column + + array of column widths to appropriately size + + + + do not remove columns, just assign widths to columns that have a zero width + (meaning unassigned) + + columns to process + true if there was a fit, false if there is need for trimming + + + + trim columns if the total column width is too much for the screen. + + column widths to trim + + + + computes the total table width from the column width array + + column widths array + + + + + get the last visible column (i.e. with a width >= 0) + + column widths array + index of the last visible column, -1 if none + + + + class to deserialize property bags into formatting objects + by using ERS functionality + + + + + expansion of TAB character to the following string + + + + + given a raw object out of the pipeline, it deserializes it accordingly to + its type. + If the object is not one of the well known ones (i.e. derived from FormatInfoData) + it just returns the object unchanged + + object to deserialize + deserialized object or null + + + + Deserialization of string without TAB expansion (RAW) + + object whose the property belogs to + name of the string property + string out of the MsObject + + + + Deserialization of string performing TAB expansion + + object whose the property belogs to + name of the string property + string out of the MsObject + + + + base class from which all the formatting objects + will derive from. + It provides the mechanism to preserve type information. + + + + + name of the "get" property that allows access to CLSID information. + This is needed by the ERS API's + + + + + string containing a GUID, to be set by each derived class + "get" property to get CLSID information. + It is named with a GUID like name to avoid potential collisions with + properties of payload objects + + + + + null by default, present only if grouping specified + + + + + it needs to be either on FormatStartData or GroupStartData + but not both or neither. + + + + + number of objects to compute the best fit. + Zero: all the objects + a positive number N: use the first N + + + + + sequence start: the very first message sent + + + + + optional + + + + + optional + + + + + autosize formatting directive. If present, the output command is instructed + to get the autosize "best fit" for the device screen according to the flags + this object contains. + + + + + generic entry containing payload data and related formatting info + + + + + mandatory, but depending on the shape we send in + it must match what got sent in the format start message + + + + + Helper method to set the WriteStreamType property + based on note properties of a PSObject object. + + PSObject + + + + desired number of columns on the screen. + Advisory, the outputter can decide otherwise + + A zero value signifies let the outputter get the + best fit on the screen (possibily blocking until the end) + + + + + width of the column: + == 0 -> let the outputter decide + > 0 -> user provided value + + + + + optional information of frame data (indentation, etc.) + + + + + queue to provide sliding window capabilities for auto size functionality + It provides caching capabilities (either the first N objects in a group + or all the objects in a group) + + + + + create a grouping cache + + notification callback to be called when the desired number of objects is reached + max number of objects to be cached + + + + create a time-bounded grouping cache + + notification callback to be called when the desired number of objects is reached + max amount of time to cache of objects + + + + add an object to the cache + + object to add + objects the cache needs to return. It can be null + + + + remove a single object from the queue + + object retrieved, null if queue is empty + + + + queue to store the currently cached objects + + + + + number of objects to compute the best fit. + Zero: all the objects + a positive number N: use the first N + + + + + Maximum amount of time for record processing to compute the best fit. + MaxValue: all the objects. + A positive timespan: use all objects that have been processed within the timeframe. + + + + + notification callback to be called when we have accumulated enough + data to compute a hint + + + + + reference kept to be used during notification + + + + + state flag to signal we are queuing + + + + + current object count + + + + + facade class managing the front end and the autosize cache + + + + + delegate to allow notifications when the autosize queue is about to be drained + + current Fs control message + enumeration of PacketInfoData objects + + + + decide right away if we need a front end cache (e.g. printing) + + if true, create a front end cache object + + + + if needed, add a back end autosize (grouping) cache + + notification callback to be called when the desired number of objects is reached + max number of objects to be cached + + + + if needed, add a back end autosize (grouping) cache + + notification callback to be called when the desired number of objects is reached + max amount of time to cache of objects + + + + add an object to the cache. the behavior depends on the object added, the + objects already in the cache and the cache settings + + object to add + list of objects the cache is flushing + + + + remove all the objects from the cache + + all the objects that were in the cache + + + + front end queue (if present, cache ALL, if not, bypass) + + + + + back end grouping queue + + + + + class to write object properties in list form by using + the host screen interfaces + + + + + labels already padded with blanks, separator characters, etc. + + + + + display length of the property labels in the array (all the same length) + + + + + column width of the screen + + + + + + + names of the properties to display + column width of the screen + instance of the DisplayCells helper object + + + + write the values of the properties of an object + + array with the values in form of formatted strings + LineOutput interface to write to + + + + helper, writing a single property to the screen. + It wraps the value of the property if it is tool long to fit + + index of property to write + string value of the property to write + LineOutput interface to write to + + + + internal helper to split a line that is too long to fit and pad it to the left + with a given string + + string to add to the left + line to print + LineOuput to write to + + + + set to true when the width of the screen is too small to do anything useful + + + + + minimum width for the property label field + + + + + minimum width for the property value field + + + + + Information about each column boudaries + + + + + Class containing information about the tabular layout + + + + + Initalize the table specifying the width of each column + + left margin indentation + number of character columns on the screen + array of specified column widths + array of alignment flags + if true, suppress header printing + + + + INTERNAL IMPLEMENTATION CLASS + + It manages the finite state machine for the sequence of formatting messages. + It achieves this by maintaning a stack of OutputContext-derived objects. + A predefined set of events allows the host of this class to process the information + as it comes trough the finite state machine (push model) + + IMPORTANT: The code using this class will have to provide ALL the callabacks. + + + + + The current output context, as determined by the + sequence of formatting messages in the object stream + + + + + + + parent context in the stack, it can be null + + + + accessor for the parent context field + + + + + the outer context: the context object pushed onto the + stack before the current one. For the first object pushed onto + the stack it will be null + + + + + process an object from an input stream. It manages the context stack and + calls back on the specified event delegates + + object to process + + + + access the active context (top of the stack). It can be null. + + + + + internal stack to manage context + + + + + OutCommand base implementation + it manages the formatting protocol and it writes to a generic + screen host + + + + + execution entry point override + we assume that a LineOutput interface instance already has been acquired + + IMPORTANT: it assumes the presence of a pre-processing formatting command + + + + + helper to return what shape we have to use to format the output + + + + + enum describing the state for the output finite state machine + + + + + we are in the clear state: no formatting in process + + + + + we received a Format Start message, but we are not inside a group + + + + + we are inside a group because we received a Group Start + + + + + toggle to signal if we are in a formatting sequence + + + + + instance of a command wrapper to execute the + default formatter when needed + + + + + enumeration to drive the preprocessing stage + + + + + test if an object coming from the pipeline needs to be + preprocessed by the default formatter + + object to examine for formatting + whether the object needs to be shunted to preprocessing + + + + shunt object to the formatting pipeline for preprocessing + + object to be preprocessed + array of objects returned by the preprocessing step + + + + class factory for output context + + parent context in the stack + fromat info data received from the pipeline + + + + + callback for Fs processing + + the context containing the Fs entry + + + + callback for Fe processing + + Fe notification message + current context, with Fs in it + + + + callback for Gs processing + + the context containing the Gs entry + + + + callback for Ge processing + + Ge notification message + current context, with Gs in it + + + + process the current payload object + + FormatEntryData to process + currently active context + + + + the screen host associated with this outputter + + + + + retrieve the active FormatOutputContext on the stack + by walking up to the top of the stack + + + + + context manager instance to guide the message traversal + + + + + handler for processing the caching notification and responsible for + setting the value of the formatting hint + + + + + + + base class for all the formatting hints + + + + + hint for format-table + + + + + hint for format-wide + + + + + variable holding the autosize hint (set by the caching code and reset by the hint consumer + + + + + helper for consuming the formatting hint + + + + + + context for the outer scope of the format sequence + + + + + construct a context to push on the stack + + parent context in the stack + format data to put in the context + + + + retrieve the format data in the context + + + + + the active formatting message, as obtained from the stream + + + + + context for the currently active group + + + + + construct a context to push on the stack + + + + + called at creation time, overrides will initialize here, e.g. + column widths, etc. + + + + + called when a group of data is started, overrided will do + things such as headers, etc... + + + + + called when the end of a group is reached, overrides will do + things such as group footers + + + + + called when there is an entry to process, overrides will do + things such as writing a row in a table + + FormatEntryData to process + + + + retrieve the format data in the context + + + + + OutCommandInner reference, for accessing context data + + + + + the active formatting message, as obtained from the stream + + + + + construct a context to push on the stack + + reference to the OutCommandInner instance who owns this instance + parent context in the stack + format data to put in the context + + + + Get the table writer for this context + + + + + helper class to properly write a table using text output + + + + + construct a context to push on the stack + + reference to the OutCommandInner instance who owns this instance + parent context in the stack + format data to put in the context + + + + initialize column widths + + + + + write the headers + + + + + write a row into the table + + FormatEntryData to process + + + + construct a context to push on the stack + + reference to the OutCommandInner instance who owns this instance + parent context in the stack + format data to put in the context + + + + initialize column widths + + + + + write the headers + + + + + write a row into the list + + FormatEntryData to process + + + + property list currently active + + + + + writer to do the actual formatting + + + + + construct a context to push on the stack + + reference to the OutCommandInner instance who owns this instance + parent context in the stack + format data to put in the context + + + + initialize column widths + + + + + write the headers + + + + + called when the end of a group is reached, flush the + write buffer + + + + + write a row into the table + + FormatEntryData to process + + + + helper class to accumulate the display values so that when the end + of a line is reached, a full line can be composed + + + + + construct the buffer + + number of entries to cache + + + + get the size of the buffer + + + + + get the current number of entries in the buffer + + + + + check if the buffer is full + + + + + check if the buffer is empty + + + + + indexer to access the k-th item in the buffer + + + + + add an item to the buffer + + string to add + + + + reset the buffer + + + + + construct a context to push on the stack + + reference to the OutCommandInner instance who owns this instance + parent context in the stack + format data to put in the context + + + + write a row into the list + + FormatEntryData to process + + + + sequence end: the very last message sent + + + + + group start: message marking the beginning of a group + + + + + group end: message marking the end of a group + + + + + writer class to handle Complex Object formatting + + + + + initalization method to be called before any other operation + + LineOutput interfaces to write to + number of columns used to write out + + + + Writes a string + + + + + + it interprets a list of format value tokens and outputs it + + list of FormatValue tokens to interpret + + + + operate on a single entry + + entry to process + current depth of recursion + + + + add a string to the current buffer, waiting for a FlushBuffer() + + string to add to buffer + + + + write to the output interface + + + + + helper object to manage the frame-based indentation and margins + + + + + buffer to accumulate partially constructed text + + + + + interface to write to + + + + + nomber of columns for the output device + + + + + Result of GetWords + + + + + collection of helper functions for string formatting + + + + + Breaks a string into a collection of words + TODO: we might be able to improve this function in the future + so that we do not break paths etc. + + input string + a collection of words + + + + split a multiline string into an array of strings + by honoring both \n and \r\n + + string to split + string array with the values + + + + Base class providing support for string manipulation. + This class is a tear off class provided by the LineOutput class + + Assumptions (in addition to the assumptions made for LineOutput): + - characters map to one or more character cells + + NOTE: we provide a base class that is valid for devices that have a + 1:1 mapping between a UNICODE character and a display cell + + + + + Given a string and a number of display cells, it computes how many + characters would fit starting from the beginning or end of the string + + string to be displayed + offset inside the string + number of display cells + if true compute from the head (i.e. k++) else from the tail (i.e. k--) + number of characters that would fit + + + + Specifies special stream write processing. + + + + + Base class providing information about the screen device capabilities + and used to write the output strings to the text output device. + Each device supported will have to derive from it. + Examples of supported devices are: + * Screen Layout: it layers on top of Console and RawConsole + * File: it layers on top of a TextWriter + * In Memory text stream: it layers on top of an in memory buffer + * Printer: it layers on top of a memory buffer then sent to a printer device + + Assumptions: + - Fixed pitch font: layout done in terms of character cells + - character cell layout not affected by bold, reverse screen, color, etc. + - returned values might change from call to call if the specific underlying + implementation allows window resizing + + + + + whether the device requres full buffering of formatting + objects before any processing + + + + + delegate the implementor of ExecuteBufferPlayBack should + call to cause the playback to happen when ready to execute + + + + + if RequiresBuffering = true, this call will be made to + start the playback + + + + + + The number of columns the current device has + + + + + The number of rows the current device has + + + + + Write a line to the output device. + + + string to be written to the device + + + + + handle the stop processing signal. + Set a flag that will be checked during operations + + + + + return an instance of the display helper tear off + + + + + + singleton used for the default implementation. + NOTE: derived classes may chose to provide a different + implementation by overriding + + + + + helper class to provide line breaking (based on device width) + and embedded newline processing + It needs to be provided with two callabacks for line processing + + + + + delegate definition + + string to write + + + + instance of the delegate previously defined + for line that has EXACTLY this.ncols characters + + + + + instance of the delegate previously defined + for generic line, less that this.ncols characters + + + + + construct an instance, given the two callbacks + NOTE: if the underlying device treats the two cases as the + same, the same delegate can be passed twice + + true if we require line wrapping + delegate for WriteLine(), must ben non null + delegate for Write(), if null, use the first parameter + helper object for manipulating strings + + + + main entry point to process a line + + string to process + width of the device + + + + internal helper, needed because it might make recursive calls to itself + + string to process + width of the device + + + + Implementation of the ILineOutput interface accepting an instance of a + TextWriter abstract class + + + + + get the columns on the screen + for files, it is settable at creation time + + + + + get the # of rows on the screen: for files + we return -1, meaning infinite + + + + + write a line by delegating to the writer underneath + + + + + + initialization of the object. It must be called before + attempting any operation + + TextWriter to write to + max columns widths for the text + + + + initialization of the object. It must be called before + attempting any operation + + TextWriter to write to + max columns widths for the text + false to add a newline to the end of the output string, true if not + + + + TextWriter to generate data for the Monad pipeline in a streaming fashion: + the provided callback will be called each time a line is written + + + + + create an instance by passing a delegate + + delegate to write to + culture for this TextWriter + + + + delegate definition + + string to write + + + + instance of the delegate previously defined + + + + + inner command class used to manage the sub pipelines + it determines which command should process the incoming objects + based on the object type + + This class is the implementation class for out-console and out-file + + + + + handler for processing each object coming through the pipeline + it forwards the call to the pipeline manager object + + + + + handler for processing shut down. It forwards the call to the + pipeline manager object + + + + + make sure we dispose of the sub pipeline manager + + + + + instance of the pipeline manager object + + + + + True if the cmdlet has been stopped + + + + + Lock object + + + + + object managing the sub-pipelines that execute + different output commands (or different instances of the + default one) + + + + + entry defining a command to be run in a separate pipeline + + + + + instance of pipeline wrapper object + + + + + + + ETS type name of the object to process + true if there is a match + + + + just dispose of the inner command wrapper + + + + + ordered list of ETS type names this object is handling + + + + + Initialize the pipeline manager before any object is processed + + LineOutput to pass to the child pipelines + ExecutionContext to pass to the child pipelines + + + + hard wired registration helper for specialized types + + ExecutionContext to pass to the child pipeline + + + + register the default output command + + ExecutionContext to pass to the child pipeline + name of the command to execute + Type of the command to execute + + + + process an incoming parent pipeline object + + pipeline object to process + + + + shut down the child pipelines + + + + + it selects the applicable out command (it can be the default one) + to process the current pipeline object + + pipeline object to be processed + applicable command entry + + + + list of command entries, each with a set of applicable types + + + + + default command entry to be executed when all type matches fail + + + + + facade class to provide context information to process + exceptions + + + + + helper class to invoke a command in a secondary pipeline. + NOTE: this implementation does not return any error messages + that invoked pipelines might generate + + + + + Initialize the command before executing + + ExecutionContext used to create sub pipeline + name of the command to run + Type of the command to run + + + + add a parameter to the command invocation. + It needs to be called before any execution takes place + + name of the parameter + value of the parameter + + + + send an object to the pipeline + + object to process + Array of objects out of the success pipeline + + + + shut down the pipeline + + Array of objects out of the success pipeline + + + + just dispose the pipeline processor + + + + + base class for the command-let's we expose + it contains a reference to the implementation + class it wraps + + + + + This parameter specifies the current pipeline object + + + + + hook up the calls from the implementation object + and then call the implementation's Begin() + + + + + call the implementation + + + + + call the implementation + + + + + call the implementation + + + + + callback for the implementation to obtain a reference to the Cmdlet object + + Cmdlet reference + + + + callback for the implementation to get the current pipeline object + + current object from the pipeline + + + + callback for the implementation to write objects + + object to be written + + + + reference to the implementation command that this class + is wrapping + + + + + default implementation just delegates to internal helper + + This method calls GC.SuppressFinalize + + + + Dispose pattern implementation + + + + + + Do-nothing implementation: derived classes will override as see fit + + + + + implementation class to be called by the outer command + In order to properly work, the callbacks have to be properly set by the outer command + + + + + inner version of CommandBase.BeginProcessing() + + + + + inner version of CommandBase.ProcessRecord() + + + + + inner version of CommandBase.EndProcessing() + + + + + inner version of CommandBase.StopProcessing() + + + + + retrieve the current input pipeline object + + + + + write an object to the pipeline + + object to write to the pipeline + + + + get a hold of the Monad outer Cmdlet + + + + + + delegate definition to get to the outer command-let + + + + + callback to get to the outer command-let + + + + + delegate definition to get to the current pipeline input object + + + + + delegate definition to write object + + + + + callback to read object + + + + + callback to write object + + + + + default implementation just delegates to internal helper + + This method calls GC.SuppressFinalize + + + + Do-nothing implementation: derived classes will override as see fit + + + + + Tear off class + + + + + Implementation of the LineOutput interface on top of Console and RawConsole + + + + + the # of columns is just the width of the screen buffer (not the + width of the window) + + + + + + the # of rows is the # of rows visible in the window (and not the # of + rows in the screen buffer) + + + + + + write a line to the output device + + line to write + + + + constructor for the ConsoleLineOutput + + PSHostUserInterface to wrap + true if we require prompting for page breaks + error context to throw exceptions + + + + callback to be called when ILineOutput.WriteLine() is called by WriteLineHelper + + string to write + + + + callback to be called when ILineOutput.Write() is called by WriteLineHelper + This is called when the WriteLineHelper needs to write a line whose length + is the same as the width of the screen buffer + + string to write + + + + called when a line was written to console + + + + + check if we need to put out a prompt + + true if we need to promp + + + + object to manage prompting + + + + + prompt handler with the given prompt + + prompt string to be used + the Cmdlet using this prompt handler + + + + detemine how many rows the prompt should take. + + current number of colums on the screen + string manipupation helper + + + + + options returned by the PromptUser() call + + + + + do the actual prompting + + PSHostUserInterface instance to prompt to + + + + cached string(s) valid during a sequence of ComputePromptLines()/PromptUser() + + + + + prompt string as passed at initialization + + + + + The cmdlet that uses this prompt helper + + + + + flag to force new lines in CMD.EXE by limiting the + usable width to N-1 (e.g. 80-1) and forcing a call + to WriteLine() + + + + + use this if IRawConsole is null; + + + + + use this if IRawConsole is null; + + + + + handler to prompt the user for page breaks + if this handler is not null, we have promting + + + + + conter for the # of lines written when prompting is on + + + + + flag to avoid renetrancy on promting + + + + + refecence to the PSHostUserInterface interface we use + + + + + Msh host specific string manipulation helper + + + + + reference to error context to throw Msh exceptions + + + + + class containing miscellaneous helpers to deal with + PSObject manipulation + + + + + WriteError adds a note property called WriteErrorStream to the error + record wrapped in an PSObject and set its value to true. When F and O detects + this note exists and its value is set to true, WriteErrorLine will be used + to emit the error; otherwise, F and O actions are regular. + + + + + + + Checks for WriteWarningStream property on object, indicating that + it is a warning stream. Used by F and O. + + + + + + + Checks for WriteVerboseStream property on object, indicating that + it is a verbose stream. Used by F and O. + + + + + + + Checks for WriteDebugStream property on object, indicating that + it is a debug stream. Used by F and O. + + + + + + + Checks for WriteInformationStream property on object, indicating that + it is an informational stream. Used by F and O. + + + + + + + Retrieve the display name. It looks for a well known property and, + if not found, it uses some heuristics to get a "close" match + + shell object to process + expression factory to create MshExpression + resolved MshExpression; null if no match was found + + + + it gets the display name value + + shell object to process + expression factory to create MshExpression + MshExpressionResult if successful; null otherwise + + + + This is necessary only to consider IDictionaries as IEnumerables, since LanguagePrimitives.GetEnumerable does not. + + object to extract the IEnumerable from + + + + helper to convert an PSObject into a string + It takes into account eumerations (use display name) + + shell object to process + expression factory to create MshExpression + limit on IEnumerable enumeration + stores errors during string conversion + string representation + + + + format an object using a provided format string directive + + format directive object to use + object to format + limit on IEnumerable enumeration + formatting error object, if present + expression factory to create MshExpression + string representation + + + + helper to retrieve the default property set of a shell object + + shell object to process + resolved expression; empty list if not found + + + + helper to retrieve the value of an MshExpression and to format it + + shell object to process + limit on IEnumerable enumeration + expression to use for retrieval + format directive to use for formatting + + expression factory to create MshExpression + not null if an error condition arose + formatted string + + + + Queries PSObject and determines if ComputerName property should be shown. + + + + + + + helper class to create MshExpression's from format.ps1xml data structures + + + + + + + + create an expression from an expression token + + expression token to use + constructed expression + + + + + create an expression from an expression token + + expression token to use + The context from which the file was loaded + constructed expression + + + + + class to hold results + NOTE: we should make it an PSObject eventually + + + + + constructor + + expression + + + + + constructor + + expression + true if no further attempts should be made to resolve wildcards + + + + + constructor + + + + + + + base exception to be used for all the exceptions that this framework will generate + + + + + exception thrown by the loader when the maximum number of errors is exceeded + + + + + error count that triggered the exception + + + + + entry logged by the loader and made available to external consumers + + + + + type of information being logged + + + + + path of the file the info refers to + + + + + XPath location inside the file + + + + + message to be displayed to the user + + + + + indicate whether we fail to load the file due to the security reason + + + + + logger object used by the loader (class XmlLoaderBase) to write log entries. + It logs to a memory buffer and (optionally) to a text file + + + + + log an entry + + entry to log + + + + IDisposable implementation + + This method calls GC.SuppressFinalize + + + + if true, log entries to memory + + + + + list of entries logged if saveInMemory is true + + + + + true if we ever logged an error + + + + + base class providing XML loading basic functionality (stack management and logging facilities) + NOTE: you need to implement to load an actual XML document and traverse it as see fit + + + + + class representing a stack frame for the XML document tree traversal + + + + + IDisposable implementation + + + + + back pointer to the loader, used to pop a stack frame + + + + + node the stack frame refers to + + + + + node index for enumerations, valid only if != -1 + NOTE: this allows to express the XPath construct "foo[0]" + + + + + IDisposable implementation + + This method calls GC.SuppressFinalize + + + + get the list of logg entries + + list of entries logged during a load + + + + check if there were errors + + true of the log entry list has errors + + + + to be called when starting a stack frame. + The returned IDisposable should be used in a using(){...} block + + node to push on the stack + object to dispose when exiting the frame + + + + to be called when starting a stack frame. + The returned IDisposable should be used in a using(){...} block + + node to push on the stack + index of the node of the same name in a collection + object to dispose when exiting the frame + + + + called by the Dispose code of the XmlLoaderStackFrame object + to pop a frame off the stack + + + + + helper to compare node names, e.g. "foo" in + it uses case sensitive, culture invariant compare. + This is because XML tags are case sensitive. + + XmlNode whose name is to compare + string to compare the node name to + if true, accept the presence of attributes on the node + true if there is a match + + + + For tracing purposes only, don't add to log + + + trace message, non-localized string is OK. + + + + + Report error when loading formatting data from object model + + + + + + + file system path for the file we are loading from + + + + + + process core only, ignore IEumerable + + + + + process IEnumerable, ignore core + + + + + process both core and IEnumerable, core first + + + + + cache for resource strings in format.ps1xml + + + + + if true, display error messages + + + + + if true, display an error string in the formatted display + (e.g. cell in a table) + + + + + string to display in the formatted display (e.g. cell in a table) + when the evaluation of an MshExpression fails + + + + + string to display in the formatted display (e.g. cell in a table) + when a format operation on a value fails + + + + + optional expression for conditional binding + + + + + item associated with this frame definition + + + + + frame info assocated with this frame definition + + + + + left indentation for a frame is relative to the parent frame. + it must be a value >=0 + + + + + right indentation for a frame is relative to the parent frame. + it must be a value >=0 + + + + + it can have the following values: + 0 : ignore + greater than 0 : it represents the indentation for the first line (i.e. "first line indent"). + The first line will be indented by the indicated number of characters. + less than 0 : it represents the hanging of the first line WRT the following ones + (i.e. "first line hanging"). + + + + + optional expression for conditional binding + + + + + an inline control or a reference to a control definition + + + + + root class for all the control types + + + + + Returns a Shallow Copy of the current object. + + + + + + reference to a control + + + + + name of the control we refer to, it cannot be null + + + + + type of the control we refer to, it cannot be null + + + + + base class for all control definitions + NOTE: this is an extensibility point, if a new control + needs to be created, it has to be derived from this class + + + + + RULE: valid only for table and wide only + + + + + class to hold a definition of a control + + + + + name of the control we define, it cannot be null + + + + + body of the control we define, it cannot be null + + + + + expression to be used to select the grouping + + + + + an inline control or a reference to a control definition + + + + + alternative (and simpified) representation for the control + RULE: if the control object is null, use this one + + + + + container for control definitions + + + + + list of control definitions + + + + + definition of a view + + + + + the name of this view. Must not be null + + + + + applicability of the view. Mandatory + + + + + optional grouping directive + + + + + container for optional local formatting directives + + + + + main control for the view (e.g. reference to a control or a control body + + + + + RULE: only valid for list and complex + + + + + Set if the view is for help output, used so we can prune the view from Get-FormatData + because those views are too complicated and big for remoting. + + + + + base class for all the "shape"-Directive classes + + + + + in line definition of a complex control + + + + + default list entry definition + It's mandatory + + + + + optional list of list entry definition overrides. It can be empty if there are no overrides + + + + + applicability clause + Only valid if not the default definition + + + + + item associated with this entry definition + + + + + list of tokens the item can contain + + + + + in line definition of a list control + + + + + default list entry definition + It's mandatory + + + + + optional list of list entry definition overrides. It can be empty if there are no overrides + + + + + definition of the data to be displayed in a list entry + + + + + applicability clause + Only valid if not the default definition + + + + + mandatory list of list view items. + It cannot be empty + + + + + Returns a Shallow Copy of the current object. + + + + + + cell definition inside a row + + + + + optional expression for conditional binding + + + + + optional label + If not present, use the name of the property from the matching + mandatory item description + + + + + format directive body telling how to format the cell + RULE: the body can only contain + * TextToken + * PropertyToken + * NOTHING (provide an empty cell) + + + + + in line definition of a format string control + + + + + alignment values + NOTE: we do not use an enum because this will have to be + serialized and ERS/serialization do not support enumerations + + + + + definition of a table control + + + + + optional, if not present, use data off the default table row definition + + + + + default row definition + It's mandatory + + + + + optional list of row definition overrides. It can be empty if there are no overrides + + + + + information about the table header + NOTE: if an instance of this class is present, the list must not be empty + + + + + if true, direct the outputter to suppress table header printing + + + + + mandatory list of column header definitions + + + + + Returns a Shallow Copy of the current object. + + + + + + optional label + If not present, use the name of the property from the matching + mandatory row description + + + + + general alignment for the column + If not present, either use the one from the row definition + or the data driven heuristics + + + + + width of the column + + + + + definition of the data to be displayed in a table row + + + + + applicability clause + Only valid if not the default definition + + + + + if true, the current table row should be allowed + to wrap to multiple lines, else truncated + + + + + mandatory list of column items. + It cannot be empty + + + + + Returns a Shallow Copy of the current object. + + + + + + cell definition inside a row + + + + + optional aligment to override the default one at the header level + + + + + format directive body telling how to format the cell + RULE: the body can only contain + * TextToken + * PropertyToken + * NOTHING (provide an empty cell) + + + + + in line definition of a wide control + + + + + number of columns to use for wide display + + + + + default wide entry definition + It's mandatory + + + + + optional list of list entry definition overrides. It can be empty if there are no overrides + + + + + definition of the data to be displayed in a list entry + + + + + applicability clause + Only valid if not the default definition + + + + + format directive body telling how to format the cell + RULE: the body can only contain + * TextToken + * PropertyToken + * NOTHING (provide an empty cell) + + + + + Get a reference to an assembly object by looking up the currently loaded assemblies + + the string resource reference object containing + the name of the assembly to load + true if assembly was found in the GAC. NOTE: the current + implementation always return FALSE + + + + + helper class to resolve an assembly name to an assembly reference + The class caches previous results for faster lookup + + + + + resolve the assembly name against the set of loaded assemblies + + + + + + + class to manage the database instances, do the reloading, etc. + + + + + instance of the object holding the format.ps1xml in memory database + + + + + If set to true, disables any updates to format table. This includes disabling + format table updates throught Update-FormatData, Import-Module etc. + All the disabling happens silently ie., the user will not get any exception. + By default, this is set to False. + + + + + + + + + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + + + 1. FormatFile is not rooted. + + + 1. There were errors loading Formattable. Look in the Errors property to get + detailed error messages. + + + + + Adds the to the current FormatTable's file list. + The FormatTable will not reflect the change until Update is called. + + + + if true, is prepended to the current FormatTable's file list. + if false, it will be appended. + + + + + Removes the from the current FormatTable's file list. + The FormatTable will not reflect the change until Update is called. + + + + + + Update a shared formatting database with formatData of 'ExtendedTypeDefinition' type. + This method should only be called from the FormatTable, where are shared formatting + database is created. + + + The format data to update the database + + + Specify the order in which the format data will be loaded + + + + + Update the current formattable with the existing formatFileList. + New files might have been added using Add() or Files might + have been removed using Remove. + + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + + + + Update the format data database. If there is any error in loading the format xml files, + the old database is unchanged. + The reference returned should NOT be modified by any means by the caller + + files to be loaded and errors to be updated + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + + True if the format data has been pre-validated (build time, manual testing, etc) so that validation can be + skipped at runtime. + + database instance + + + + load the database + NOTE: need to be protected by lock since not thread safe per se + + *.formal.xml files to be loaded + expression factory to validate script blocks + if true, load the database even if there are loading errors + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + + True if the format data has been pre-validated (build time, manual testing, etc) so that validation can be + skipped at runtime. + + Trace and error logs from loading the format Xml files. + true if we had a successful load + + + + it loads a database from file(s). + + *.formal.xml files to be loaded + expression factory to validate script blocks + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + + True if the format data has been pre-validated (build time, manual testing, etc) so that validation can be + skipped at runtime. + + list of logger entries (errors, etc.) to return to the caller + true if no error occurred + a database instance loaded from file(s) + + + + helper to to add any pre-load intrinsics to the db + + db being iniitalized + + + + helper to to add any post-load intrinsics to the db + + db being iniitalized + + + + helper object holding a generic object and the related + "applies to" object. + It is used in by the inheritance based type match algorithm + + + + + algorithm to execute a type match on a list of entities + having an "applies to" associated object + + + + + given an appliesTo list, it finds all the types that are contained (following type + group references) + + database to use + object to lookup + + + + + class to load the XML document into data structures. + It encapsulates the file format specific code + + + class to load the XML document into data structures. + It encapsulates the file format specific code + + + class to load the XML document into data structures. + It encapsulates the file format specific code + + + class to load the XML document into data structures. + It encapsulates the file format specific code + + + class to load the XML document into data structures. + It encapsulates the file format specific code + + + class to load the XML document into data structures. + It encapsulates the file format specific code + + + + + table of XML node tags used in the file format + + + + + table of miscellanea string constant values for XML nodes + + + + + entry point for the loader algorithm + + information needed to load the file + database instance to load the file into + expression factory to validate script blocks + + Authorization manager to perform signature checks before reading ps1xml files (or null of no checks are needed) + + + Host passed to . Can be null if no interactive questions should be asked. + + + True if the format data has been pre-validated (build time, manual testing, etc) so that validation can be + skipped at runtime. + + true if successful + + + + entry point for the loader algorithm to load formatting data from ExtendedTypeDefinition + + the ExtendedTypeDefinition instance to load formatting data from + database instance to load the formatting data into + expression factory to validate the script block + do we implicitly trust the script blocks (so they should run in full langauge mode)? + true when the view is for help output + + + + + load the content of the XML document into the data instance. + It assumes that the XML document has been successfully loaded + + XML document to load from, cannot be null + instance of the databaseto load into + + + + load the content of the ExtendedTypeDefinition instance into the db. + Only support following view controls: + TableControl + ListControl + WideControl + CustomControl + + ExtendedTypeDefinition instances to load from, cannot be null + instance of the database to load into + true if the formatter is used for formatting help objects + + + + Load the view into a ViewDefinition + + the TypeName tag under SelectedBy tag + + + + + + + Load the TableControl to ControlBase. + + + + + + + + + Load the headers defined for columns + + + + + + + Load row enties, set the defaultDefinition of the TableControlBody. + + + + + + + + + Load the column items into the TableRowDefinition + + + + + + + + + Load the expression information from DisplayEntry + + + + + + + + + Load EntrySelectedBy (TypeName) into AppliesTo + + + + + + Load LoisControl into the ListControlBody + + + + + + + + + Load ListEntry into ListControlEntryDefinition + + + + + + + + + Load ListItems into ListControlItemDefinition + + + + + + + + + Load the WideControl into the WideContolBody + + + + + + + + + Load WideEntries + + + + + + + + + Load WideEntry into WieControlEntryDefinition + + + + + + + + + helper to verify the text of a string block and + log an error if an exception is thrown + + script block string to verify + true if parsed correctly, false if failed + + + + helper class to wrap the loading of a script block/property name alternative tag + + + + + helper class to wrap the loading of an expression (using ExpressionNodeMatch) + plus the formatting string and an alternative text node + + + + Win32 encapsulation for MSCORLIB. + + + + The LookupAccountSid function accepts a security identifier (SID) as input. It retrieves the name + of the account for this SID and the name of the first domain on which this SID is found. + + + + + + + + + + + + + Retrieves the current process token. + + process handle + token access + process token + The current process token. + + + + The GetTokenInformation function retrieves a specified type of information about an access token. + The calling process must have appropriate access rights to obtain the information. + + + + + + + + + + Registry encapsulation. Contains members representing all top level system + keys. + + @security(checkClassLinking=on) + + + Current User Key. + + This key should be used as the root for all user specific settings. + TransactedRegistry.CurrentUser + This static method returns a TransactedRegistryKey object that represents the base + key HKEY_CURRENT_USER. Because it is a base key, there is no transaction associated with + the returned TransactedRegistryKey. This means that values modified using the returned + TransactedRegistryKey are NOT modified within a transaction. + However, if the returned TransactedRegistryKey is used to create, open, or delete + subkeys, there must be a Transaction.Current and the resulting TransactedRegistryKey from those operations ARE associated with + the transaction. + + + + Local Machine Key. + + This key should be used as the root for all machine specific settings. + TransactedRegistry.LocalMachine + This static method returns a TransactedRegistryKey object that represents the base + key HKEY_LOCAL_MACHINE. Because it is a base key, there is no transaction associated with + the returned TransactedRegistryKey. This means that values modified using the returned + TransactedRegistryKey are NOT modified within a transaction. + However, if the returned TransactedRegistryKey is used to create, open, or delete + subkeys, there must be a Transaction.Current and the resulting TransactedRegistryKey from those operations ARE associated with + the transaction. + + + + Classes Root Key. + + This is the root key of class information. + TransactedRegistry.ClassesRoot + This static method returns a TransactedRegistryKey object that represents the base + key HKEY_CLASSES_ROOT. Because it is a base key, there is no transaction associated with + the returned TransactedRegistryKey. This means that values modified using the returned + TransactedRegistryKey are NOT modified within a transaction. + However, if the returned TransactedRegistryKey is used to create, open, or delete + subkeys, there must be a Transaction.Current and the resulting TransactedRegistryKey from those operations ARE associated with + the transaction. + + + + Users Root Key. + + This is the root of users. + TransactedRegistry.Users + This static method returns a TransactedRegistryKey object that represents the base + key HKEY_USERS. Because it is a base key, there is no transaction associated with + the returned TransactedRegistryKey. This means that values modified using the returned + TransactedRegistryKey are NOT modified within a transaction. + However, if the returned TransactedRegistryKey is used to create, open, or delete + subkeys, there must be a Transaction.Current and the resulting TransactedRegistryKey from those operations ARE associated with + the transaction. + + + + Current Config Root Key. + + This is where current configuration information is stored. + TransactedRegistry.CurrentConfig + This static method returns a TransactedRegistryKey object that represents the base + key HKEY_CURRENT_CONFIG. Because it is a base key, there is no transaction associated with + the returned TransactedRegistryKey. This means that values modified using the returned + TransactedRegistryKey are NOT modified within a transaction. + However, if the returned TransactedRegistryKey is used to create, open, or delete + subkeys, there must be a Transaction.Current and the resulting TransactedRegistryKey from those operations ARE associated with + the transaction. + + + + + Registry encapsulation. To get an instance of a TransactedRegistryKey use the + Registry class's static members then call OpenSubKey. + + @see Registry + @security(checkDllCalls=off) + @security(checkClassLinking=on) + + + + Creates a TransactedRegistryKey. + + This key is bound to hkey, if writable is false then no write operations + will be allowed. If systemkey is set then the hkey won't be released + when the object is GC'ed. + + + TransactedRegistryKey.Close + Closes this key, flushes it to disk if the contents have been modified. + Utilizes Transaction.Current for its transaction. + + + + TransactedRegistryKey.Flush + Flushes this key. Utilizes Transaction.Current for its transaction. + + + + TransactedRegistryKey.Dispose + Disposes this key. Utilizes Transaction.Current for its transaction. + + + + + Creates a new subkey, or opens an existing one. + Utilizes Transaction.Current for its transaction. + Name or path to subkey to create or open. Cannot be null or an empty string, + otherwise an ArgumentException is thrown. + A TransactedRegistryKey object for the subkey, which is associated with Transaction.Current. + returns null if the operation failed. + + + + + Creates a new subkey, or opens an existing one. + Utilizes Transaction.Current for its transaction. + Name or path to subkey to create or open. Cannot be null or an empty string, + otherwise an ArgumentException is thrown. + One of the Microsoft.Win32.RegistryKeyPermissionCheck values that + specifies whether the key is opened for read or read/write access. + A TransactedRegistryKey object for the subkey, which is associated with Transaction.Current. + returns null if the operation failed. + + + + + Creates a new subkey, or opens an existing one. + Utilizes Transaction.Current for its transaction. + Name or path to subkey to create or open. Cannot be null or an empty string, + otherwise an ArgumentException is thrown. + One of the Microsoft.Win32.RegistryKeyPermissionCheck values that + specifies whether the key is opened for read or read/write access. + A TransactedRegistrySecurity object that specifies the access control security for the new key. + A TransactedRegistryKey object for the subkey, which is associated with Transaction.Current. + returns null if the operation failed. + + + + + Deletes the specified subkey. Will throw an exception if the subkey has + subkeys. To delete a tree of subkeys use, DeleteSubKeyTree. + Utilizes Transaction.Current for its transaction. + The subkey to delete. + Thrown if the subkey as child subkeys. + + + + + Deletes the specified subkey. Will throw an exception if the subkey has + subkeys. To delete a tree of subkeys use, DeleteSubKeyTree. + Utilizes Transaction.Current for its transaction. + The subkey to delete. + Specify true if an ArgumentException should be thrown if + the specified subkey does not exist. If false is specified, a missing subkey does not throw + an exception. + Thrown if the subkey as child subkeys. + Thrown if true is specified for throwOnMissingSubKey and the + specified subkey does not exist. + + + + + Recursively deletes a subkey and any child subkeys. + Utilizes Transaction.Current for its transaction. + The subkey to delete. + + + + + Deletes the specified value from this key. + Utilizes Transaction.Current for its transaction. + Name of the value to delete. + + + + + Deletes the specified value from this key. + Utilizes Transaction.Current for its transaction. + Name of the value to delete. + Specify true if an ArgumentException should be thrown if + the specified value does not exist. If false is specified, a missing value does not throw + an exception. + + + + Retrieves a new TransactedRegistryKey that represents the requested key. Valid + values are: + + HKEY_CLASSES_ROOT, + HKEY_CURRENT_USER, + HKEY_LOCAL_MACHINE, + HKEY_USERS, + HKEY_PERFORMANCE_DATA, + HKEY_CURRENT_CONFIG, + HKEY_DYN_DATA. + + @param hKey HKEY_* to open. + + @return the TransactedRegistryKey requested. + + + + Retrieves a subkey. If readonly is true, then the subkey is opened with + read-only access. + Utilizes Transaction.Current for its transaction. + Name or path of the subkey to open. + Set to true of you only need readonly access. + The subkey requested or null if the operation failed. + + + + + Retrieves a subkey. + Utilizes Transaction.Current for its transaction. + Name or path of the subkey to open. + One of the Microsoft.Win32.RegistryKeyPermissionCheck values that specifies + whether the key is opened for read or read/write access. + The subkey requested or null if the operation failed. + + + + + Retrieves a subkey. + Utilizes Transaction.Current for its transaction. + Name or path of the subkey to open. + One of the Microsoft.Win32.RegistryKeyPermissionCheck values that specifies + whether the key is opened for read or read/write access. + A bitwise combination of Microsoft.Win32.RegistryRights values that specifies the desired security access. + The subkey requested or null if the operation failed. + + + + + Retrieves a subkey for readonly access. + Utilizes Transaction.Current for its transaction. + Name or path of the subkey to open. + The subkey requested or null if the operation failed. + + + + + Retrieves the count of subkeys. + Utilizes Transaction.Current for its transaction. + The count of subkeys. + + + + + Retrieves an array of strings containing all the subkey names. + Utilizes Transaction.Current for its transaction. + A string array containing all the subkey names. + + + + + Retrieves the count of values. + Utilizes Transaction.Current for its transaction. + A count of values. + + + + + Retrieves an array of strings containing all the value names. + Utilizes Transaction.Current for its transaction. + All the value names. + + + + + Retrieves the specified value. null is returned if the value + doesn't exist. Utilizes Transaction.Current for its transaction. + Note that name can be null or "", at which point the + unnamed or default value of this Registry key is returned, if any. + Name of value to retrieve. + The data associated with the value. + + + + + Retrieves the specified value. null is returned if the value + doesn't exist. Utilizes Transaction.Current for its transaction. + Note that name can be null or "", at which point the + unnamed or default value of this Registry key is returned, if any. + Name of value to retrieve. + Value to return if name doesn't exist. + The data associated with the value. + + + + + Retrieves the specified value. null is returned if the value + doesn't exist. Utilizes Transaction.Current for its transaction. + Note that name can be null or "", at which point the + unnamed or default value of this Registry key is returned, if any. + Name of value to retrieve. + Value to return if name doesn't exist. + One of the Microsoft.Win32.RegistryValueOptions values that specifies + optional processing of the retrieved value. + The data associated with the value. + + + + + Retrieves the registry data type of the value associated with the specified name. + Utilizes Transaction.Current for its transaction. + The value name whose data type is to be retrieved. + A RegistryValueKind value representing the registry data type of the value associated with name. + + + + Retrieves the current state of the dirty property. + + A key is marked as dirty if any operation has occured that modifies the + contents of the key. + + @return true if the key has been modified. + + + + Retrieves the name of the key. + The name of the key. + + + + + Sets the specified value. Utilizes Transaction.Current for its transaction. + Name of value to store data in. + Data to store. + + + + + Sets the specified value. Utilizes Transaction.Current for its transaction. + Name of value to store data in. + Data to store. + The registry data type to use when storing the data. + + + + Retrieves a string representation of this key. + + @return a string representing the key. + + Retrieves a string representation of this key. + A string representing the key. + + + + + Returns the access control security for the current registry key. + Utilizes Transaction.Current for its transaction. + A TransactedRegistrySecurity object that describes the access control + permissions on the registry key represented by the current TransactedRegistryKey. + + + + + Returns the access control security for the current registry key. + Utilizes Transaction.Current for its transaction. + A bitwise combination of AccessControlSections values that specifies the type of security information to get. + A TransactedRegistrySecurity object that describes the access control + permissions on the registry key represented by the current TransactedRegistryKey. + + + + + Applies Windows access control security to an existing registry key. + Utilizes Transaction.Current for its transaction. + A TransactedRegistrySecurity object that specifies the access control security to apply to the current subkey. + + + + After calling GetLastWin32Error(), it clears the last error field, + so you must save the HResult and pass it to this method. This method + will determine the appropriate exception to throw dependent on your + error, and depending on the error, insert a string into the message + gotten from the ResourceManager. + + + + Represents a set of access rights allowed or denied for a user or group. This class cannot be inherited. + + + + + Initializes a new instance of the RegistryAccessRule class, specifying the user or group the rule applies to, + the access rights, and whether the specified access rights are allowed or denied. + The user or group the rule applies to. Must be of type SecurityIdentifier or a type such as + NTAccount that can be converted to type SecurityIdentifier. + A bitwise combination of Microsoft.Win32.RegistryRights values indicating the rights allowed or denied. + One of the AccessControlType values indicating whether the rights are allowed or denied. + + + + + Initializes a new instance of the RegistryAccessRule class, specifying the user or group the rule applies to, + the access rights, and whether the specified access rights are allowed or denied. + The name of the user or group the rule applies to. + A bitwise combination of Microsoft.Win32.RegistryRights values indicating the rights allowed or denied. + One of the AccessControlType values indicating whether the rights are allowed or denied. + + + + + Initializes a new instance of the RegistryAccessRule class, specifying the user or group the rule applies to, + the access rights, and whether the specified access rights are allowed or denied. + The user or group the rule applies to. Must be of type SecurityIdentifier or a type such as + NTAccount that can be converted to type SecurityIdentifier. + A bitwise combination of Microsoft.Win32.RegistryRights values indicating the rights allowed or denied. + A bitwise combination of InheritanceFlags flags specifying how access rights are inherited from other objects. + A bitwise combination of PropagationFlags flags specifying how access rights are propagated to other objects. + One of the AccessControlType values indicating whether the rights are allowed or denied. + + + + + Initializes a new instance of the RegistryAccessRule class, specifying the user or group the rule applies to, + the access rights, and whether the specified access rights are allowed or denied. + The name of the user or group the rule applies to. + A bitwise combination of Microsoft.Win32.RegistryRights values indicating the rights allowed or denied. + A bitwise combination of InheritanceFlags flags specifying how access rights are inherited from other objects. + A bitwise combination of PropagationFlags flags specifying how access rights are propagated to other objects. + One of the AccessControlType values indicating whether the rights are allowed or denied. + + + + + Gets the rights allowed or denied by the access rule. + + + + + Represents a set of access rights to be audited for a user or group. This class cannot be inherited. + + + + + Initializes a new instance of the RegistryAuditRule class, specifying the user or group to audit, the rights to + audit, whether to take inheritance into account, and whether to audit success, failure, or both. + The user or group the rule applies to. Must be of type SecurityIdentifier or a type such as + NTAccount that can be converted to type SecurityIdentifier. + A bitwise combination of RegistryRights values specifying the kinds of access to audit. + A bitwise combination of InheritanceFlags values specifying whether the audit rule applies to subkeys of the current key. + A bitwise combination of PropagationFlags values that affect the way an inherited audit rule is propagated to subkeys of the current key. + A bitwise combination of AuditFlags values specifying whether to audit success, failure, or both. + + + + + Initializes a new instance of the RegistryAuditRule class, specifying the user or group to audit, the rights to + audit, whether to take inheritance into account, and whether to audit success, failure, or both. + The name of the user or group the rule applies to. + A bitwise combination of RegistryRights values specifying the kinds of access to audit. + A bitwise combination of InheritanceFlags values specifying whether the audit rule applies to subkeys of the current key. + A bitwise combination of PropagationFlags values that affect the way an inherited audit rule is propagated to subkeys of the current key. + A bitwise combination of AuditFlags values specifying whether to audit success, failure, or both. + + + + + Gets the access rights affected by the audit rule. + + + + + Represents the Windows access control security for a registry key. This class cannot be inherited. + This class is specifically to be used with TransactedRegistryKey. + + + + + Initializes a new instance of the TransactedRegistrySecurity class with default values. + + + + + Creates a new access control rule for the specified user, with the specified access rights, access control, and flags. + An IdentityReference that identifies the user or group the rule applies to. + A bitwise combination of RegistryRights values specifying the access rights to allow or deny, cast to an integer. + A Boolean value specifying whether the rule is inherited. + A bitwise combination of InheritanceFlags values specifying how the rule is inherited by subkeys. + A bitwise combination of PropagationFlags values that modify the way the rule is inherited by subkeys. Meaningless if the value of inheritanceFlags is InheritanceFlags.None. + One of the AccessControlType values specifying whether the rights are allowed or denied. + A TransactedRegistryAccessRule object representing the specified rights for the specified user. + + + + + Creates a new audit rule, specifying the user the rule applies to, the access rights to audit, the inheritance and propagation of the + rule, and the outcome that triggers the rule. + An IdentityReference that identifies the user or group the rule applies to. + A bitwise combination of RegistryRights values specifying the access rights to audit, cast to an integer. + A Boolean value specifying whether the rule is inherited. + A bitwise combination of InheritanceFlags values specifying how the rule is inherited by subkeys. + A bitwise combination of PropagationFlags values that modify the way the rule is inherited by subkeys. Meaningless if the value of inheritanceFlags is InheritanceFlags.None. + A bitwise combination of AuditFlags values specifying whether to audit successful access, failed access, or both. + A TransactedRegistryAuditRule object representing the specified audit rule for the specified user, with the specified flags. + The return type of the method is the base class, AuditRule, but the return value can be cast safely to the derived class. + + + + + Searches for a matching access control with which the new rule can be merged. If none are found, adds the new rule. + The access control rule to add. + + + + + Removes all access control rules with the same user and AccessControlType (allow or deny) as the specified rule, and then adds the specified rule. + The TransactedRegistryAccessRule to add. The user and AccessControlType of this rule determine the rules to remove before this rule is added. + + + + + Removes all access control rules with the same user as the specified rule, regardless of AccessControlType, and then adds the specified rule. + The TransactedRegistryAccessRule to add. The user specified by this rule determines the rules to remove before this rule is added. + + + + + Searches for an access control rule with the same user and AccessControlType (allow or deny) as the specified access rule, and with compatible + inheritance and propagation flags; if such a rule is found, the rights contained in the specified access rule are removed from it. + A TransactedRegistryAccessRule that specifies the user and AccessControlType to search for, and a set of inheritance + and propagation flags that a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found. + + + + + Searches for all access control rules with the same user and AccessControlType (allow or deny) as the specified rule and, if found, removes them. + A TransactedRegistryAccessRule that specifies the user and AccessControlType to search for. Any rights, inheritance flags, or + propagation flags specified by this rule are ignored. + + + + + Searches for an access control rule that exactly matches the specified rule and, if found, removes it. + The TransactedRegistryAccessRule to remove. + + + + + Searches for an audit rule with which the new rule can be merged. If none are found, adds the new rule. + The audit rule to add. The user specified by this rule determines the search. + + + + + Removes all audit rules with the same user as the specified rule, regardless of the AuditFlags value, and then adds the specified rule. + The TransactedRegistryAuditRule to add. The user specified by this rule determines the rules to remove before this rule is added. + + + + + Searches for an audit control rule with the same user as the specified rule, and with compatible inheritance and propagation flags; + if a compatible rule is found, the rights contained in the specified rule are removed from it. + A TransactedRegistryAuditRule that specifies the user to search for, and a set of inheritance and propagation flags that + a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found. + + + + + Searches for all audit rules with the same user as the specified rule and, if found, removes them. + A TransactedRegistryAuditRule that specifies the user to search for. Any rights, inheritance + flags, or propagation flags specified by this rule are ignored. + + + + + Searches for an audit rule that exactly matches the specified rule and, if found, removes it. + The TransactedRegistryAuditRule to be removed. + + + + + Gets the enumeration type that the TransactedRegistrySecurity class uses to represent access rights. + A Type object representing the RegistryRights enumeration. + + + + + Gets the type that the TransactedRegistrySecurity class uses to represent access rules. + A Type object representing the TransactedRegistryAccessRule class. + + + + + Gets the type that the TransactedRegistrySecurity class uses to represent audit rules. + A Type object representing the TransactedRegistryAuditRule class. + + + + + This cmdlet executes a specified script block on one or more + remote machines. The expression or command, as they will be + interchangeably called, need to be contained in a script + block. This is to ensure two things: + 1. The expression that the user has entered is + syntactically correct (its compiled) + 2. The scriptblock can be converted to a powershell + object before transmitting it to the remote end + so that it can be run on constrained runspaces in + the no language mode + + In general, the command script block is executed as if + the user had typed it at the command line. The output of the + command is the output of the cmdlet. However, since + invoke-command is a cmdlet, it will unravel its output: + - if the command outputs an empty array, invoke-command + will output $null + - if the command outputs a single-element array, invoke-command + will output that single element. + + Additionally, the command will be run on a remote system. + + This cmdlet can be called in the following different ways: + + Execute a command in a remote machine by specifying the command + and machine name + invoke-command -Command {get-process} -computername "server1" + + Execute a command in a set of remote machines by specifying the + command and the list of machines + $servers = 1..10 | %{"Server${_}"} + invoke-command -command {get-process} -computername $servers + + Create a new runspace and use it to execute a command on a remote machine + $runspace = New-PSSession -computername "Server1" + $credential = get-credential "user01" + invoke-command -command {get-process} ¨Crunspace $runspace -credential $credential + + Execute a command in a set of remote machines by specifying the + complete uri for the machines + $uri = "http://hostedservices.microsoft.com/someservice" + invoke-command -command { get-mail } - uri $uri + + Create a collection of runspaces and use it to execute a command on a set + of remote machines + + $serveruris = 1..8 | %{"http://Server${_}/"} + $runspaces = New-PSSession -URI $serveruris + invoke-command -command {get-process} -Session $runspaces + + The cmdlet can also be invoked in the asynchronous mode. + + invoke-command -command {get-process} -computername $servers -asjob + + When the -AsJob switch is used, the cmdlet will emit an PSJob Object. + The user can then use the other job cmdlets to work with this object + + Note there are two types of errors: + 1. Remote invocation errors + 2. Local errors. + + Both types of errors will be available when the user invokes + a receive operation. + + The PSJob object has its own throttling mechanism. + The result object will be stored in a global cache. If a user wants to + retrieve data from the result object the user should be able to do so + using the Receive-PSJob cmdlet + + The following needs to be noted about exception/error reporting in this + cmdlet: + The exception objects that are thrown by underlying layers will be + written as errors, to avoid stopping the entire cmdlet in case of + multi-computername or multi-Session usage (for consistency, this + is true even when done using one computername or runspace) + + Only one expression may be executed at a time in any single runspace. + Attempts to invoke an expression on a runspace that is already executing + an expression shall return an error with ErrorCategory ResourceNotAvailable + and notify the user that the runspace is currently busy. + + Some additional notes: + - invoke-command issues a single scriptblock to the computer or + runspace. If a runspace is specified and a command is already running + in that runspace, then the second command will fail + - The files necessary to execute the command (cmdlets, scripts, data + files, etc) must be present on the remote system; the cmdlet is not + responsible for copying them over + - The entire input stream is collected and sent to the remote system + before execution of the command begins (no input streaming) + - Input shall be available as $input. Remote Runspaces must reference + $input explicitly (input will not automatically be available) + - Output from the command streams back to the client as it is + available + - Ctrl-C and pause/resume are supported; the client will send a + message to the remote powershell instance. + - By default if no -credential is specified, the host will impersonate + the current user on the client when executing the command + - The standard output of invoke-command is the output of the + last element of the remote pipeline, with some extra properties added + - If -Shell is not specified, then the value of the environment + variable DEFAULTREMOTESHELLNAME is used. If this is not set, then + "Microsoft.PowerShell" is used. + + + + + The PSSession object describing the remote runspace + using which the specified cmdlet operation will be performed + + + + + This parameter represents the address(es) of the remote + computer(s). The following formats are supported: + (a) Computer name + (b) IPv4 address : 132.3.4.5 + (c) IPv6 address: 3ffe:8311:ffff:f70f:0:5efe:172.30.162.18 + + + + + + Specifies the credentials of the user to impersonate in the + remote machine. If this parameter is not specified then the + credentials of the current user process will be assumed. + + + + + Port specifies the alternate port to be used in case the + default ports are not used for the transport mechanism + (port 80 for http and port 443 for useSSL) + + + Currently this is being accepted as a parameter. But in future + support will be added to make this a part of a policy setting. + When a policy setting is in place this parameter can be used + to override the policy setting + + + + + This parameter suggests that the transport scheme to be used for + remote connections is useSSL instead of the default http.Since + there are only two possible transport schemes that are possible + at this point, a SwitchParameter is being used to switch between + the two. + + + + + For WSMan session: + If this parameter is not specified then the value specified in + the environment variable DEFAULTREMOTESHELLNAME will be used. If + this is not set as well, then Microsoft.PowerShell is used. + + For VM/Container sessions: + If this parameter is not specified then no configuration is used. + + + + + This parameters specifies the appname which identifies the connection + end point on the remote machine. If this parameter is not specified + then the value specified in DEFAULTREMOTEAPPNAME will be used. If thats + not specified as well, then "WSMAN" will be used + + + + + Allows the user of the cmdlet to specify a throttling value + for throttling the number of remote operations that can + be executed simultaneously + + + + + A complete URI(s) specified for the remote computer and shell to + connect to and create runspace for + + + + + Specifies if the cmdlet needs to be run asynchronously + + + + + Specifies that after the command is invoked on a remote computer the + remote session should be disconnected. + + + + + Specifies the name of the returned session when the InDisconnectedSession switch + is used. + + + + + Hide/Show computername of the remote objects. + + + + + Friendly name for the job object if AsJob is used + + + + + The script block that the user has specified in the + cmdlet. This will be converted to a powershell before + its actually sent to the remote end + + + + + When executing a scriptblock in the current session, tell the cmdlet not to create a new scope. + + + + + The script block that the user has specified in the + cmdlet. This will be converted to a powershell before + its actually sent to the remote end + + + + + The AllowRediraction parameter enables the implicit redirection functionality + + + + + Extended Session Options for controlling the session creation. Use + "New-WSManSessionOption" cmdlet to supply value for this parameter. + + + + + Authentication mechanism to authenticate the user + + + + + When set and in loopback scenario (localhost) this enables creation of WSMan + host process with the user interactive token, allowing PowerShell script network access, + i.e., allows going off box. When this property is true and a PSSession is disconnected, + reconnection is allowed only if reconnecting from a PowerShell session on the same box. + + + + + When set, PowerShell process inside container will be launched with + high privileged account. + Otherwise (default case), PowerShell process inside container will be launched + with low privileged account. + + + + + Creates the helper classes for the specified + parameter set + + + + + The expression will be executed in the remote computer if a + remote runspace parameter or computer name or uri is specified. + + + 1. Identify if the command belongs to the same pipeline + 2. If so, use the same GUID to create Pipeline/PowerShell + + + + + InvokeAsync would have been called in ProcessRecord. Wait here + for all the results to become available. + + + + + This method is called when the user sends a stop signal to the + cmdlet. The cmdlet will not exit until it has completed + executing the command on all the runspaces. However, when a stop + signal is sent, execution needs to be stopped on the pipelines + corresponding to these runspaces + + This is called from a separate thread so need to worry + about concurrency issues + + + + + Handle event from the throttle manager indicating that all + operations are complete + + + + + + + Clears the internal invoke command instance on all + remote runspaces + + + + + Sets the throttle limit, creates the invoke expression + sync job and executes the same + + + + + Waits for the disconnectComplete event and then disposes the job + object. + + + + + Creates a disconnected session for each disconnected PowerShell object in + PSInvokeExpressionSyncJob. + + + + + + + Writes an input value to the pipeline + + input value to write + + + + Writes the results in the job object + + Write in a non-blocking manner + + + + Writes the stream objects in the specified collection + + collection to read from + + + + Determine if we have to throw for a + "throw" statement from scripts + This means that the local pipeline will be terminated as well + + + This is valid when only one pipeline is + existing. Which means, there can be only one of the following: + 1. A single computer name + 2. A single session + 3. A single uri + + It can be used in conjunction with a filepath or a script block parameter + + It doesn't take effect with the -AsJob parameter + + + + + Process the stream object before writing it in the specified collection. + + stream object to process + + + + Dispose the cmdlet + + + + + internal dispose method which does the actual disposing + + whether called from dispose or finalize + + + + This cmdlet establishes a new Runspace either on the local machine or + on the specified remote machine(s). The runspace established can be used + to invoke expressions remotely. + + The cmdlet can be used in the following ways: + + Open a local runspace + $rs = New-PSSession + + Open a runspace to a remote system. + $rs = New-PSSession -Machine PowerShellWorld + + Create a runspace specifying that it is globally scoped. + $global:rs = New-PSSession -Machine PowerShellWorld + + Create a collection of runspaces + $runspaces = New-PSSession -Machine PowerShellWorld,PowerShellPublish,PowerShellRepo + + Create a set of Runspaces using the Secure Socket Layer by specifying the URI form. + This assumes that an shell by the name of E12 exists on the remote server. + $serverURIs = 1..8 | %{ "SSL://server${_}:443/E12" } + $rs = New-PSSession -URI $serverURIs + + Create a runspace by connecting to port 8081 on servers s1, s2 and s3 + $rs = New-PSSession -computername s1,s2,s3 -port 8081 + + Create a runspace by connecting to port 443 using ssl on servers s1, s2 and s3 + $rs = New-PSSession -computername s1,s2,s3 -port 443 -useSSL + + Create a runspace by connecting to port 8081 on server s1 and run shell named E12. + This assumes that a shell by the name E12 exists on the remote server + $rs = New-PSSession -computername s1 -port 8061 -ShellName E12 + + + + + + This parameter represents the address(es) of the remote + computer(s). The following formats are supported: + (a) Computer name + (b) IPv4 address : 132.3.4.5 + (c) IPv6 address: 3ffe:8311:ffff:f70f:0:5efe:172.30.162.18 + + + + + + Specifies the credentials of the user to impersonate in the + remote machine. If this parameter is not specified then the + credentials of the current user process will be assumed. + + + + + The PSSession object describing the remote runspace + using which the specified cmdlet operation will be performed + + + + + Friendly names for the new PSSessions + + + + + When set and in loopback scenario (localhost) this enables creation of WSMan + host process with the user interactive token, allowing PowerShell script network access, + i.e., allows going off box. When this property is true and a PSSession is disconnected, + reconnection is allowed only if reconnecting from a PowerShell session on the same box. + + + + + For WSMan sessions: + If this parameter is not specified then the value specified in + the environment variable DEFAULTREMOTESHELLNAME will be used. If + this is not set as well, then Microsoft.PowerShell is used. + + For VM/Container sessions: + If this parameter is not specified then no configuration is used. + + + + + The throttle limit will be set here as it needs to be done + only once per cmdlet and not for every call + + + + + The runspace objects will be created using OpenAsync. + At the end, the method will check if any runspace + opened has already become available. If so, then it + will be written to the pipeline + + + + + OpenAsync would have been called from ProcessRecord. This method + will wait until all runspaces are opened and then write them to + the pipeline as and when they become available. + + + + + This method is called when the user sends a stop signal to the + cmdlet. The cmdlet will not exit until it has completed + creating all the runspaces (basically the runspaces its + waiting on OpenAsync is made available). However, when a stop + signal is sent, CloseAsyn needs to be called to close all the + pending runspaces + + This is called from a separate thread so need to worry + about concurrency issues + + + + + Dispose method of IDisposable. Gets called in the following cases: + 1. Pipeline explicitly calls dispose on cmdlets + 2. Called by the garbage collector + + + + + Adds forwarded events to the local queue + + + + + When the client remote session reports a URI redirection, this method will report the + message to the user as a Warning using Host method calls. + + + + + + + Handles state changes for Runspace + + Sender of this event + Event information object which describes + the event which triggered this method + + + + Creates the remote runspace objects when PSSession + parameter is specified + It now supports PSSession based on VM/container connection info as well. + + + + + Creates the remote runspace objects when the URI parameter + is specified + + + + + Creates the remote runspace objects when the ComputerName parameter + is specified + + + + + Creates the remote runspace objects when the VMId or VMName parameter + is specified + + + + + Creates the remote runspace objects when the ContainerId parameter is specified + + + + + Helper method to either get a user supplied runspace/session name + or to generate one along with a unique Id. + + Runspace name array index. + Runspace Id. + Runspace name. + + + + Internal dispose method which does the actual + dispose operations and finalize suppressions + + Whether method is called + from Dispose or destructor + + + + Handles the throttling complete event of the throttle manager + + sender of this event + + + + + Writes an error record specifying that creation of remote runspace + failed + + exception which is causing this error record + to be written + Uri which caused this exception + + + + Class that implements the IThrottleOperation in turn wrapping the + opening of a runspace asynchronously within it + + + + + Opens the runspace asynchronously + + + + + Closes the runspace already opened asynchronously + + + + + Handler for handling runspace state changed events. This method will be + registered in the StartOperation and StopOperation methods. This handler + will in turn invoke the OperationComplete event for all events that are + necesary - Opened, Closed, Disconnected, Broken. It will ignore all other state + changes. + + + There are two problems that need to be handled. + 1) We need to make sure that the ThrottleManager StartComplete and StopComplete + operation events are called or the ThrottleManager will never end (hang). + 2) The HandleRunspaceStateChanged event handler remains in the Runspace + StateChanged event call chain until this object is disposed. We have to + disallow the HandleRunspaceStateChanged event from running and throwing + an exception since this prevents other event handlers in the chain from + being called. + + Source of this event + object describing state information of the + runspace + + + + Implements IDisposable. + + + + + This cmdlet disconnects PS sessions (RemoteRunspaces) that are in the Opened state + and returns the PS session objects in the Disconnected state. While the PS + sessions are in the disconnected state no commands can be invoked on them and + any existing remote running commands will not return any data. + The PS sessions can be reconnected by using the Connect-PSSession cmdlet. + + The cmdlet can be used in the following ways: + + Disconnect a PS session object: + > $session = New-PSSession serverName + > Disconnect-PSSession $session + + Disconnect a PS session by name: + > Disconnect-PSSession -Name $session.Name + + Disconnect a PS session by Id: + > Disconnect-PSSession -Id $session.Id + + Disconnect a collection of PS sessions: + > Get-PSSession | Disconnect-PSSession + + + + + + The PSSession object or objects to be disconnected. + + + + + Idle Timeout session option in seconds. Used in this cmdlet to set server disconnect idletimeout option. + + + + + Output buffering mode session option. Used in this cmdlet to set server disconnect OutputBufferingMode option. + + + + + Allows the user of the cmdlet to specify a throttling value + for throttling the number of remote operations that can + be executed simultaneously. + + + + + Disconnect-PSSession does not support ComputerName parameter set. + This may change for later versions. + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Set up the ThrottleManager for runspace disconnect processing. + + + + + Perform runspace disconnect processing on all input. + + + + + End processing clean up. + + + + + User has signaled a stop for this cmdlet. + + + + + Handles the connect throttling complete event from the ThrottleManager. + + Sender + EventArgs + + + + Throttle class to perform a remoterunspace disconnect operation. + + + + + Dispose method of IDisposable. Gets called in the following cases: + 1. Pipeline explicitly calls dispose on cmdlets + 2. Called by the garbage collector + + + + + Internal dispose method which does the actual + dispose operations and finalize suppressions + + Whether method is called + from Dispose or destructor + + + + This cmdlet connects PS sessions (RemoteRunspaces) that are in the Disconnected + state and returns those PS session objects in the Opened state. One or more + session objects can be specified for connecting, or a remote computer name can + be specified and in this case all disconnected remote runspaces found on the + remote computer will be be connected and PSSession objects created on the local + machine. + + The cmdlet can be used in the following ways: + + Connect a PS session object: + > $session = New-PSSession serverName + > Disconnect-PSSession $session + > Connect-PSSession $session + + Connect a PS session by name: + > Connect-PSSession $session.Name + + Connect a PS session by Id: + > Connect-PSSession $session.Id + + Connect a collection of PS session: + > Get-PSSession | Connect-PSSession + + Connect all disconnected PS sessions on a remote computer + > Connect-PSSession serverName + + + + + + The PSSession object or objects to be connected. + + + + + Computer names to connect to. + + + + + This parameters specifies the appname which identifies the connection + end point on the remote machine. If this parameter is not specified + then the value specified in DEFAULTREMOTEAPPNAME will be used. If thats + not specified as well, then "WSMAN" will be used + + + + + If this parameter is not specified then the value specified in + the environment variable DEFAULTREMOTESHELLNAME will be used. If + this is not set as well, then Microsoft.PowerShell is used. + + + + + A complete URI(s) specified for the remote computer and shell to + connect to and create a runspace for. + + + + + The AllowRedirection parameter enables the implicit redirection functionality. + + + + + RemoteRunspaceId to retrieve corresponding PSSession + object + + + + + Name of the remote runspaceinfo object + + + + + Specifies the credentials of the user to impersonate in the + remote machine. If this parameter is not specified then the + credentials of the current user process will be assumed. + + + + + Use basic authentication to authenticate the user. + + + + + Specifies the certificate thumbprint to be used to impersonate the user on the + remote machine. + + + + + Port specifies the alternate port to be used in case the + default ports are not used for the transport mechanism + (port 80 for http and port 443 for useSSL) + + + Currently this is being accepted as a parameter. But in future + support will be added to make this a part of a policy setting. + When a policy setting is in place this parameter can be used + to override the policy setting + + + + + This parameter suggests that the transport scheme to be used for + remote connections is useSSL instead of the default http.Since + there are only two possible transport schemes that are possible + at this point, a SwitchParameter is being used to switch between + the two. + + + + + Extended session options. Used in this cmdlet to set server disconnect options. + + + + + Allows the user of the cmdlet to specify a throttling value + for throttling the number of remote operations that can + be executed simultaneously. + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Set up the ThrottleManager for runspace connect processing. + + + + + Perform runspace connect processing on all input. + + + + + End processing clean up. + + + + + User has signaled a stop for this cmdlet. + + + + + Throttle class to perform a remoterunspace connect operation. + + + + + Enum indicating an override on which parameter is used to filter + local sessions. + + + + + No override. + + + + + Use the Name parameter as a filter. + + + + + Use the InstanceId parameter as a filter. + + + + + Retrieves a collection of disconnected PSSession objects queried from + remote computers. + + Collection of disconnected PSSession objects. + + + + Creates a collection of PSSession objects based on cmdlet parameters. + + OverrideParameter + Collection of PSSession objects in disconnected state. + + + + Connect all disconnected sessions. + + + + + Handles the connect throttling complete event from the ThrottleManager. + + Sender + EventArgs + + + + Updates connection info with the data read from cmdlet's parameters. + + + + + + Dispose method of IDisposable. Gets called in the following cases: + 1. Pipeline explicitly calls dispose on cmdlets + 2. Called by the garbage collector + + + + + Internal dispose method which does the actual + dispose operations and finalize suppressions + + Whether method is called + from Dispose or destructor + + + + Queries all remote computers specified in collection of WSManConnectionInfo objects + and returns disconnected PSSession objects ready for connection to server. + Returned sessions can be matched to Guids or Names. + + Collection of WSManConnectionInfo objects. + Host for PSSession objects. + Out stream object. + Runspace repository. + Throttle limit. + Runspace state filter value. + Array of session Guids to match to. + Array of session Names to match to. + Configuration name to match to. + Collection of disconnected PSSession objects. + + + + Returns true if the existing runspace should be returned to the user + a. If the existing runspace is not broken + b. If the queried runspace is not connected to a different user. + + + + + + + + Returns Exception message. If message is WSMan Xml then + the WSMan message and error code is extracted and returned. + + Exception + Returned WSMan error code + WSMan message + + + + Discontinue all remote server query operations. + + + + + Compares the runspace filter state with the runspace state. + + Runspace object to test. + Filter state to compare. + Result of test. + + + + Returns the default type table for built-in PowerShell types. + + + + + Runspace states that can be used as filters for querying remote runspaces. + + + + + Return runspaces in any state. + + + + + Return runspaces in Opened state. + + + + + Return runspaces in Disconnected state. + + + + + Return runspaces in Closed state. + + + + + Return runspaces in Broken state. + + + + + This cmdlet connects a running command associated with a PS session and then + directs the command output either: + a) To Host. This is the synchronous mode of the cmdlet which won't return + until the running command completes and all output data is received on + the client. + b) To a job object. This is the asynchronous mode of the cmdlet which will + return immmediately providing the job object that is collecting the + running command output data. + + The running command becomes disconnected when the associated runspace is + disconnected (via the Disconnect-PSSession cmdlet). + + The associated runspace object must be in the Opened state (connected) before + the running command can be connected. If the associated runspace object is + in the disconnected state, it will first be connected before the running + command is connected. + + The user can specify how command output data is returned by using the public + OutTarget enumeration (Host, Job). + The default actions of this cmdlet is to always direct ouput to host unless + a job object already exists on the client that is associated with the running + command. In this case the existing job object is connected to the running + command and returned. + + The cmdlet can be used in the following ways: + + Receive PS session data by session object + > $session = New-PSSession serverName + > $job1 = Invoke-Command $session { [script] } -asjob + > Disconnect-PSSession $session + > Connect-PSSession $session + > Receive-PSSession $session // command output continues collecting at job object. + + Receive PS session data by session Id + > Receive-PSSession $session.Id + + Receive PS session data by session instance Id + > Receive-PSSession $session.InstanceId + + Receive PS session data by session Name. Direct output to job + > Receive-PSSession $session.Name + + Receive a running command from a computer. + > $job = Receive-PSSession -ComputerName ServerOne -Name SessionName -OutTarget Job + + + + + + The PSSession object to receive data from. + + + + + Session Id of PSSession object to receive data from. + + + + + Computer name to receive session data from. + + + + + This parameters specifies the appname which identifies the connection + end point on the remote machine. If this parameter is not specified + then the value specified in DEFAULTREMOTEAPPNAME will be used. If thats + not specified as well, then "WSMAN" will be used + + + + + If this parameter is not specified then the value specified in + the environment variable DEFAULTREMOTESHELLNAME will be used. If + this is not set as well, then Microsoft.PowerShell is used. + + + + + A complete URI(s) specified for the remote computer and shell to + connect to and create a runspace for. + + + + + The AllowRedirection parameter enables the implicit redirection functionality. + + + + + Instance Id of PSSession object to receive data from. + + + + + Name of PSSession object to receive data from. + + + + + Determines how running command output is returned on client. + + + + + Provides job name when job is created for returned data. + + + + + Specifies the credentials of the user to impersonate in the + remote machine. If this parameter is not specified then the + credentials of the current user process will be assumed. + + + + + Use basic authentication to authenticate the user. + + + + + Specifies the certificate thumbprint to be used to impersonate the user on the + remote machine. + + + + + Port specifies the alternate port to be used in case the + default ports are not used for the transport mechanism + (port 80 for http and port 443 for useSSL) + + + Currently this is being accepted as a parameter. But in future + support will be added to make this a part of a policy setting. + When a policy setting is in place this parameter can be used + to override the policy setting + + + + + This parameter suggests that the transport scheme to be used for + remote connections is useSSL instead of the default http.Since + there are only two possible transport schemes that are possible + at this point, a SwitchParameter is being used to switch between + the two. + + + + + Session options. + + + + + Process input. + + + + + User has signaled a stop for this cmdlet. + + + + + Queries the remote computer for the specified session, creates a disconnected + session object, connects the runspace/command and collects command data. + Command output is either returned (OutTarget.Host) or collected + in a job object that is returned (OutTarget.Job). + + Name of session to find. + Instnace Id of session to find. + + + + Updates connection info with the data read from cmdlet's parameters. + + + + + + Gets the PSSession object to connect based on Id, Name, etc. + Connects the running command associated with the PSSession runspace object. + Command output is either returned (OutTarget.Host) or collected + in a job object that is returned (OutTarget.Job). + + + + + Connects session, retrieves command output data and writes to host. + + PSSession object. + Job object associated with session. + + + + Helper method to append computer name and session GUID + note properties to the PSObject before it is written. + + PSObject + PSSession + + + + Connects session, collects command output data in a job object. + If a PSRemotingJob object is passed in then that job will be + (re)connected. Otherwise a new job object will be created that + will be connected to the session's running command. + + PSSession object. + Job object to connect to. + + + + Helper method to connect the runspace. If the session/runspace can't + be connected or fails to be connected then a null PSSessionobject is + returned. + + Session to connect. + Optional exception object. + Connected session or null. + + + + Helper method to attempt to retrieve a disconnected runspace object + from the server, based on the provided session object. + + PSSession + PSSession + + + + Helper method to search the local PS client job repository + for a job associated with the provided session. + + PSSession object. + Associated job object from the job repository. + + + + Searches runspace repository for session by Id. + + Id to match. + PSSession object. + + + + Searches runspace repository for session by Name. + + Name to match. + PSSession object. + + + + Searches runspace repository for session by InstanceId. + + InstanceId to match. + PSSession object. + + + + Write invalid argument error. + + + + + Output modes available to the Receive-PSSession cmdlet. + + + + + Default mode. If + + + + + Synchronous mode. Receive-PSSession output data goes to host (returned by cmdlet object). + + + + + Asyncronous mode. Receive-PSSession ouput data goes to returned job object. + + + + + This cmdlet is used to retrieve runspaces from the global cache + and write it to the pipeline. The runspaces are wrapped and + returned as PSSession objects. + + The cmdlet can be used in the following ways: + + List all the available runspaces + get-pssession + + Get the PSSession from session name + get-pssession -Name sessionName + + Get the PSSession for the specified ID + get-pssession -Id sessionId + + Get the PSSession for the specified instance Guid + get-pssession -InstanceId sessionGuid + + Get PSSessions from remote computer. Optionally filter on state, session instanceid or session name. + get-psession -ComputerName computerName -StateFilter Disconnected + + Get PSSessions from virtual machine. Optionally filter on state, session instanceid or session name. + get-psession -VMName vmName -Name sessionName + + Get PSSessions from container. Optionally filter on state, session instanceid or session name. + get-psession -ContainerId containerId -InstanceId instanceId + + + + + + Computer names to connect to. + + + + + This parameters specifies the appname which identifies the connection + end point on the remote machine. If this parameter is not specified + then the value specified in DEFAULTREMOTEAPPNAME will be used. If thats + not specified as well, then "WSMAN" will be used + + + + + A complete URI(s) specified for the remote computer and shell to + connect to and create a runspace for. + + + + + For WSMan sessions: + If this parameter is not specified then the value specified in + the environment variable DEFAULTREMOTESHELLNAME will be used. If + this is not set as well, then Microsoft.PowerShell is used. + + For VM/Container sessions: + If this parameter is not speficied then all sessions that match other filters are returned. + + + + + The AllowRediraction parameter enables the implicit redirection functionality. + + + + + Session names to filter on. + + + + + Instance Ids to filter on. + + + + + Specifies the credentials of the user to impersonate in the + remote machine. If this parameter is not specified then the + credentials of the current user process will be assumed. + + + + + Use basic authentication to authenticate the user. + + + + + Specifies the certificate thumbprint to be used to impersonate the user on the + remote machine. + + + + + Port specifies the alternate port to be used in case the + default ports are not used for the transport mechanism + (port 80 for http and port 443 for useSSL) + + + Currently this is being accepted as a parameter. But in future + support will be added to make this a part of a policy setting. + When a policy setting is in place this parameter can be used + to override the policy setting + + + + + This parameter suggests that the transport scheme to be used for + remote connections is useSSL instead of the default http.Since + there are only two possible transport schemes that are possible + at this point, a SwitchParameter is being used to switch between + the two. + + + + + Allows the user of the cmdlet to specify a throttling value + for throttling the number of remote operations that can + be executed simultaneously. + + + + + Filters returned remote runspaces based on runspace state. + + + + + Session options. + + + + + Resolves shellname + + + + + Get the list of runspaces from the global cache and write them + down. If no computername or instance id is specified then + list all runspaces + + + + + End processing clean up. + + + + + User has signaled a stop for this cmdlet. + + + + + Creates a connectionInfo object for each computer name and performs a remote + session query for each computer filtered by the filterState parameter. + + + + + Updates connection info with the data read from cmdlet's parameters. + + + + + + Dispose method of IDisposable. + + + + + This enum is used to distinguish two sets of parameters on some of the remoting cmdlets. + + + + + Use ComputerName parameter set + + + + + Use Runspace Parameter set + + + + + This is a static utility class that performs some of the common chore work for the + the remoting cmdlets. + + + + + The existence of the following registry confirms that the host machine is a WinPE + HKLM\System\CurrentControlSet\Control\MiniNT + + + + + IsWinPEHost indicates if the machine on which PowerShell is hosted is WinPE or not. + This is a helper variable used to kep track if the IsWinPE() helper method has + already checked for the WinPE specific registry key or not. + If the WinPE specific registry key has not yet been checked even + once then this variable will point to null. + + + + + Checks the prerequisites for a cmdlet and terminates if the cmdlet + is not valid + + + + + IsWinPEHost is a helper method used to identify if the + PowerShell is hosted on a WinPE machine. + + + + + Facilitates to check if remoting is supported on the host machine. + PowerShell remoting is supported on all Windows SQU's except WinPE. + + + When PowerShell is hosted on a WinPE machine, the execution + of this API would result in an InvalidOperationException being + thrown, indicating that remoting is not supported on a WinPE machine. + + + + + This cmdlet stops the runspace and frees the resources associated with + that runspace. If any execution is in process in that runspace, it is + stopped. Also, the runspace is removed from the global cache. + + This cmdlet can be used in the following ways: + + Remove the runspace specified + $runspace = New-PSSession + Remove-PSSession -remoterunspaceinfo $runspace + + Remove the runspace specified (no need for a parameter name) + $runspace = New-PSSession + Remove-PSSession $runspace + + + + + Specifies the PSSession objects which need to be + removed + + + + + ID of target container. + + + + + Guid of target virtual machine. + + + + + Name of target virtual machine. + + + + + Do the follwing actions: + 1. If runspace is in opened state, + a. stop any execution in process in the runspace + b. close the runspace + 2. Remove the runspace from the global cache + + + + + This cmdlet start invocation of jobs in background. + + + + + JobDefintion Name. + + + + + JobDefinition file path. + + + + + Job SourceAdapter type for this job definition. + + + + + Friendly name for this job object + + + + + Command to execute specified as a string. This can be a single + cmdlet, an expression or anything that can be internally + converted into a ScriptBlock + + This is used in the in process case with a + "ValueFromPipelineProperty" enabled in order to maintain + compatibility with v1.0 + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Not used for OutOfProc jobs. Suppressing this parameter. + + + + + Credential to use for this job + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Filepath to execute as a script + + + + + Literal Filepath to execute as a script + + + + + Use basic authentication to authenticate the user. + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Overriding to suppress this parameter + + + + + Extended Session Options for controlling the session creation. Use + "New-WSManSessionOption" cmdlet to supply value for this parameter. + + + This is not declared as a Parameter for Start-PSJob as this is not + used for background jobs. + + + + + Script that is used to initialize the background job. + + + + + Launces the background job as a 32-bit process. This can be used on + 64-bit systems to launch a 32-bit wow process for the background job. + + + + + Powershell Version to execute the background job + + + + + InputObject. + + + + + ArgumentList. + + + + + 1. Set the throttling limit and reset operations complete + 2. Create helper objects + 3. For async case, write the async result object down the + pipeline + + + + + Create a throttle operation using NewProcessConnectionInfo + ie., Out-Of-Process runspace. + + + + + The expression will be executed in the remote computer if a + remote runspace parameter or computer name is specified. If + none other than command parameter is specified, then it + just executes the command locally without creating a new + remote runspace object. + + + + + InvokeAsync would have been called in ProcessRecord. Wait here + for all the results to become available. + + + + + Dispose the cmdlet + + + + + internal dispose method which does the actual disposing + + whether called from dispose or finalize + + + + This class defines most of the common functionality used + across remoting cmdlets. + + It contains tons of utility functions which are used all + across the remoting cmdlets + + + + + Verifies if remoting cmdlets can be used + + + + + Handle the object obtained from an ObjectStream's reader + based on its type + + + + + Resolve all the machine names provided. Basically, if a machine + name is '.' assume localhost + + array of computer names to resolve + resolved array of machine names + + + + Resolves a computer name. If its null or empty + its assumed to be localhost + + computer name to resolve + resolved computer name + + + + Load the resource corresponding to the specified errorId and + return the message as a string + + resource String which holds the message + + Error message loaded from appropriate resouce cache + + + + + + + + + + + + Computername parameter set + + + + + Computername with session instance ID parameter set + + + + + Container ID parameter set + + + + + VM guid parameter set + + + + + VM name parameter set + + + + + runspace parameter set + + + + + Default shellname + + + + + default application name for the connection uri + + + + + Skip checking for WinRM + + + + + Determines the shellname to use based on the following order: + 1. ShellName parameter specified + 2. DEFAULTREMOTESHELLNAME variable set + 3. PowerShell + + The shell to launch in the remote machine + + + + Determines the appname to be used based on the following order: + 1. AppName parameter specified + 2. DEFAULTREMOTEAPPNAME variable set + 3. WSMan + + application name to resolve + resolved appname + + + + Base class for any cmdlet which takes a -Session parameter + or a -ComputerName parameter (along with its other associated + parameters). The following cmdlets currently fall under this + category: + 1. New-PSSession + 2. Invoke-Expression + 3. Start-PSJob + + + + + State of virtual machine. This is the same as VMState in + \vm\ux\powershell\objects\common\Types.cs + + + + + Other. Corresponds to CIM_EnabledLogicalElement.EnabledState = Other. + + + + + Running. Corresponds to CIM_EnabledLogicalElement.EnabledState = Enabled. + + + + + Off. Corresponds to CIM_EnabledLogicalElement.EnabledState = Disabled. + + + + + Stopping. Corresponds to CIM_EnabledLogicalElement.EnabledState = ShuttingDown. + + + + + Saved. Corresponds to CIM_EnabledLogicalElement.EnabledState = Enabled but offline. + + + + + Paused. Corresponds to CIM_EnabledLogicalElement.EnabledState = Quiesce. + + + + + Starting. EnabledStateStarting. State transition from PowerOff or Saved to Running. + + + + + Reset. Corresponds to CIM_EnabledLogicalElement.EnabledState = Reset. + + + + + Saving. Corresponds to EnabledStateSaving. + + + + + Pausing. Corresponds to EnabledStatePausing. + + + + + Resuming. Corresponds to EnabledStateResuming. + + + + + FastSaved. EnabledStateFastSuspend. + + + + + FastSaving. EnabledStateFastSuspending. + + + + + ForceShutdown. Used to force a graceful shutdown of the virtual machine. + + + + + ForceReboot. Used to force a graceful reboot of the virtual machine. + + + + + RunningCritical. Critical states. + + + + + OffCritical. Critical states. + + + + + StoppingCritical. Critical states. + + + + + SavedCritical. Critical states. + + + + + PausedCritical. Critical states. + + + + + StartingCritical. Critical states. + + + + + ResetCritical. Critical states. + + + + + SavingCritical. Critical states. + + + + + PausingCritical. Critical states. + + + + + ResumingCritical. Critical states. + + + + + FastSavedCritical. Critical states. + + + + + FastSavingCritical. Critical states. + + + + + The PSSession object describing the remote runspace + using which the specified cmdlet operation will be performed + + + + + This parameter represents the address(es) of the remote + computer(s). The following formats are supported: + (a) Computer name + (b) IPv4 address : 132.3.4.5 + (c) IPv6 address: 3ffe:8311:ffff:f70f:0:5efe:172.30.162.18 + + + + + + Computer names after they have been resolved + (null, empty string, "." resolves to localhost) + + If Null or empty string is specified, then localhost is assumed. + The ResolveComputerNames will include this. + + + + + Guid of target virtual machine. + + + + + Name of target virtual machine. + + + + + Specifies the credentials of the user to impersonate in the + remote machine. If this parameter is not specified then the + credentials of the current user process will be assumed. + + + + + ID of target container. + + + + + When set, PowerShell process inside container will be launched with + high privileged account. + Otherwise (default case), PowerShell process inside container will be launched + with low privileged account. + + + + + Port specifies the alternate port to be used in case the + default ports are not used for the transport mechanism + (port 80 for http and port 443 for useSSL) + + + Currently this is being accepted as a parameter. But in future + support will be added to make this a part of a policy setting. + When a policy setting is in place this parameter can be used + to override the policy setting + + + + + This parameter suggests that the transport scheme to be used for + remote connections is useSSL instead of the default http.Since + there are only two possible transport schemes that are possible + at this point, a SwitchParameter is being used to switch between + the two. + + + + + This parameters specifies the appname which identifies the connection + end point on the remote machine. If this parameter is not specified + then the value specified in DEFAULTREMOTEAPPNAME will be used. If thats + not specified as well, then "WSMAN" will be used + + + + + Allows the user of the cmdlet to specify a throttling value + for throttling the number of remote operations that can + be executed simultaneously + + + + + A complete URI(s) specified for the remote computer and shell to + connect to and create runspace for + + + + + The AllowRediraction parameter enables the implicit redirection functionality + + + + + Extended Session Options for controlling the session creation. Use + "New-WSManSessionOption" cmdlet to supply value for this parameter. + + + + + Use basic authentication to authenticate the user. + + + + + Specifies the certificate thumbprint to be used to impersonate the user on the + remote machine. + + + + + Used to resolve authentication from the parameters chosen by the user. + User has the following options: + 1. AuthMechanism + Credential + 2. CertiticateThumbPrint + + All the above are mutually exclusive. + + + If there is ambiguity as specified above. + + + + + Validate the PSSession objects specified and write + appropriate error records. + + This function will lead in terminating errors when any of + the validations fail + + + + Updates connection info with the data read from cmdlet's parameters and + sessions variables. + The following data is updated: + 1. MaxURIRedirectionCount + 2. MaxRecvdDataSizePerSession + 3. MaxRecvdDataSizePerCommand + 4. MaxRecvdObjectSize + + + + + + Uri parameter set + + + + + Validates computer names to check if none of them + happen to be a Uri. If so this throws an error + + collection of computer + names to validate + + + + Resolves shellname and appname + + + + + Base class for any cmdlet which has to execute a pipeline. The + following cmdlets currently fall under this category: + 1. Invoke-Expression + 2. Start-PSJob + + + + + VM guid file path parameter set. + + + + + VM name file path parameter set. + + + + + Container ID file path parameter set. + + + + + Input object which gets assigned to $input when executed + on the remote machine. This is the only parameter in + this cmdlet which will bind with a ValueFromPipeline=true + + + + + Command to execute specified as a string. This can be a single + cmdlet, an expression or anything that can be internally + converted into a ScriptBlock + + + + + The file containing the script that the user has specified in the + cmdlet. This will be converted to a powershell before + its actually sent to the remote end + + + + + True if FilePath should be processed as a literal path + + + + + Arguments that are passed to this scriptblock + + + + + Indicates that if a job/command is invoked remotely the connection should be severed + right have invocation of job/command. + + + + + + Session names optionally provided for Disconnected parameter. + + + + + When set and in loopback scenario (localhost) this enables creation of WSMan + host process with the user interactive token, allowing PowerShell script network access, + i.e., allows going off box. When this property is true and a PSSession is disconnected, + reconnection is allowed only if reconnecting from a PowerShell session on the same box. + + + + + Guid of target virtual machine. + + + + + Name of target virtual machine. + + + + + ID of target container. + + + + + For WSMan session: + If this parameter is not specified then the value specified in + the environment variable DEFAULTREMOTESHELLNAME will be used. If + this is not set as well, then Microsoft.PowerShell is used. + + For VM/Container sessions: + If this parameter is not specified then no configuration is used. + + + + + Creates helper objects with the command for the specified + remote computer names + + + + + Creates helper objects with the specified command for + the specified remote runspaceinfo objects + + + + + Creates helper objects with the command for the specified + remote connection uris + + + + + Creates helper objects with the command for the specified + VM GUIDs or VM names. + + + + + Creates helper objects with the command for the specified + container IDs or names. + + + + + Creates a pipeline from the powershell + + runspace on which to create the pipeline + a pipeline + + + + Check the powershell version of the remote server + + + + + Adds forwarded events to the local queue + + + + + List of operations + + + + + Closes the input streams on all the pipelines + + + + + Writes an error record specifying that creation of remote runspace + failed + + exception which is causing this error record + to be written + Uri which caused this exception + + + + FilePathComputername parameter set + + + + + LiteralFilePathComputername parameter set + + + + + FilePathRunspace parameter set + + + + + FilePathUri parameter set + + + + + PS version of the remote server + + + + + Reads content of file and converts it to a scriptblock + + + + + + + + Creates the helper classes for the specified + parameter set + + + + + Get the PowerShell instance for the PSv2 remote end + Generate the PowerShell instance by using the text of the scriptblock + + + PSv2 doesn't understand the '$using' prefix. To make UsingExpression work on PSv2 remote end, we will have to + alter the script, and send the altered script to the remote end. Since the script is altered, when there is an + error, the error message will show the altered script, and that could be confusing to the user. So if the remote + server is PSv3 or later version, we will use a different approach to handle UsingExpression so that we can keep + the script unchanged. + + However, on PSv3 and PSv4 remote server, it's not well supported if UsingExpressions are used in different scopes (fixed in PSv5). + If the remote end is PSv3 or PSv4, and there are UsingExpressions in different scopes, then we have to revert back to the approach + used for PSv2 remote server. + + + + + + Get the PowerShell instance for the PSv3 (or later) remote end + Generate the PowerShell instance by using the text of the scriptblock + + + In PSv3 and PSv4, if the remote server is PSv3 or later, we generate an object array that contains the value of each using expression in + the parsing order, and then pass the array to the remote end as a special argument. On the remote end, the using expressions will be indexed + in the same parsing order during the variable analysis process, and the index is used to get the value of the corresponding using expression + from the special array. There is a limitation in that approach -- $using cannot be used in different scopes with Invoke-Command/Start-Job + (see WinBlue#475223), because the variable analysis process can only index using expressions within the same scope (this is by design), and a + using expression from a different scope may be assigned with an index that conflicts with other using expressions. + + To fix the limitation described above, we changed to pass a dictionary with key/value pairs for the using expressions on the client side. The key + is an unique base64 encoded string generated based on the text of the using expression. On the remote end, it can always get the unique key of a + using expression because the text passed to the server side is the same, and thus the value of the using expression can be retrieved from the special + dictionary. With this approach, $using in different scopes can be supported for Invoke-Command/Start-Job. + + This fix involved changes on the server side, so the fix will work only if the remote end is PSv5 or later. In order to avoid possible breaking + change in 'PSv5 client - PSv3 server' and 'PSv5 client - PSv4 server' scenarios, we should keep sending the array-form using values if the remote + end is PSv3 or PSv4 as long as no UsingExpression is in a different scope. If the remote end is PSv3 or PSv4 and we do have UsingExpressions + in different scopes, then we will revert back to the approach we use to handle UsingExpression for PSv2 remote server. + + + + + + Get the converted script for a remote PSv2 end + + + The new parameter names that we added to the param block + + + The new parameter values that need to be added to the powershell instance + + + + + + Get the values for the using variables that are passed in. + + + + + + + Get all Using expressions that we care about + + + a list of UsingExpressionAsts ordered by the StartOffset + + + + Base class for any cmdlet which operates on a runspace. The + following cmdlets currently fall under this category: + 1. Get-PSSession + 2. Remove-PSSession + 3. Disconnect-PSSession + 4. Connect-PSSession + + + + + ContainerIdInstanceId parameter set: container id + session instance id + + + + + VMIdInstanceId parameter set: vm id + session instance id + + + + + VMNameInstanceId parameter set: vm name + session instance id + + + + + RemoteRunspaceId to retrieve corresponding PSSession + object + + + + + Session Id of the remoterunspace info object + + + + + Name of the remote runspaceinfo object + + + + + Name of the computer for which the runspace needs to be + returned + + + + + ID of target container. + + + + + Guid of target virtual machine. + + + + + Name of target virtual machine. + + + + + Gets the matching runspaces based on the parameterset + + write an error record when + no matches are found + if true write the object down + the pipeline + list of matching runspaces + + + + Gets the matching runspaces based on the parameterset + + write an error record when + no matches are found + if true write the object down + the pipeline + Runspace state filter value. + Runspace configuration name filter value. + list of matching runspaces + + + + Gets the matching runspaces by computernames + + write an error record when + no matches are found + if true write the object down + the pipeline + list of matching runspaces + + + + Gets the matching runspaces based on name + + write an error record when + no matches are found + if true write the object down + the pipeline + list of matching runspaces + + + + Gets the matching runspaces based on the runspaces instance id + + write an error record when + no matches are found + if true write the object down + the pipeline + list of matching runspaces + + + + Gets the matching runspaces based on the session id (the + short integer id which is unique for a runspace) + + write an error record when + no matches are found + if true write the object down + the pipeline + list of matching runspaces + + + + Gets the matching runspaces by vm name or container id with optional session name + + if true write the object down the pipeline + Runspace state filter value. + Runspace configuration name filter value. + if true the target is a container instead of virtual machine + list of matching runspaces + + + + Gets the matching runspaces by vm name or container id with session instanceid + + if true write the object down the pipeline + Runspace state filter value. + Runspace configuration name filter value. + if true the target is a container instead of virtual machine + list of matching runspaces + + + + Gets the matching runspaces by vm guid and optional session name + + if true write the object down the pipeline + Runspace state filter value. + Runspace configuration name filter value. + list of matching runspaces + + + + Gets the matching runspaces by vm guid and session instanceid + + if true write the object down the pipeline + Runspace state filter value. + Runspace configuration name filter value. + list of matching runspaces + + + + Write the maching runspace objects down the pipeline, or add to the list. + + The maching runspaces + if true write the object down the pipeline. Otherwise, add to the list + The list we add the maching runspaces to + + + + Write invalid argument error. + + + + + Runspace Id parameter set + + + + + session id parameter set + + + + + name parameter set + + + + + Base class for both the helpers. This is an abstract class + and the helpers need to derive from this + + + + + Pipeline associated with this operation + + + + + Exception raised internally when any method of this class + is executed + + + + + Internal access to Runspace and Computer helper runspace. + + + + + Contains a pipeline and calls InvokeAsync on the pipeline + on StartOperation. On StopOperation it calls StopAsync. + The handler sends a StopComplete message in OperationComplete + for both the functions. This is because, there is only a + single state of the pipeline which raises an event on + a method call. There are no separate events raised as + part of method calls + + + + + Indicates whether or not the server should be using the steppable pipeline + + + + + Internal constructor + + pipeline object associated with this operation + + + + Invokes the pipeline asynchronously + + + + + Closes the pipeline asynchronously + + + + + Handles the state changed events for the pipeline. This is registered in both + StartOperation and StopOperation. Here nothing more is done excepting raising + the OperationComplete event appropriately which will be handled by the cmdlet + + source of this event + object describing state information about the + pipeline + + + + Raise an OperationComplete Event. The base event will be + null in this case + + + + + Raise an operation complete event. + + The event args which actually + raises this operation complete + + + + This helper class contains a runspace and + an associated pipeline. On StartOperation it calls + OpenAsync on the runspace. In the handler for runspace, + when the runspace is successfully opened it calls + InvokeAsync on the pipeline. StartOperation + is assumed complete when both the operations complete. + StopOperation will call StopAsync first on the pipeline + and then close the associated runspace. StopOperation + is considered complete when both these operations + complete. The handler sends a StopComplete message in + OperationComplete for both the calls. + + + + + Determines if the command should be invoked and then disconnect the + remote runspace from the client. + + + + + The remote runspace created using the computer name + parameter set details + + + + + Constructor + + RemoteRunspace that is associated + with this operation + pipeline created from the remote runspace + Indicates if pipeline should be disconnected after invoking command. + + + + Call OpenAsync() on the RemoteRunspace + + + + + StopAsync on the pipeline + + + + + Handles the state changed event for runspace operations + + sender of this information + object describing this event + + + + Handles the state changed event for the pipeline. + + sender of this information + object describing this event + + + + Raise an OperationComplete Event. The base event will be + null in this case + + + + + Raise an operation complete event. + + The event args which actually + raises this operation complete + + + + A helper class to resolve the path + + + + + Resolves the specified path and verifies the path belongs to + FileSystemProvider. + + Path to resolve + True if wildcard expansion should be suppressed for this path. + reference to calling cmdlet. This will be used for + for writing errors + + resource string for error when path is not from filesystem provider + A fully qualified string representing filename. + + + + Resolves the specified path to PathInfo objects + + + + The path to be resolved. Each path may contain glob characters. + + + + True if wildcard expansion should be suppressed for pathToResolve. + + + + If true, resolves the path even if it doesn't exist. + + + + Calling cmdlet + + + + A string representing the resolved path. + + + + + + Cmdlet to get available list of results + + + + + IncludeChildJob parameter. + + + + + ChildJobState parameter. + + + + + HasMoreData parameter. + + + + + Before time filter. + + + + + After time filter. + + + + + Newest returned count. + + + + + SessionId for which job + need to be obtained + + + + + Extract resutl objects corresponding to the specified + names or expressions + + + + + Helper method to find jobs based on parameter set. + + Matching jobs + + + + Filter jobs based on HasMoreData + + + + return the list of jobs after applying HasMoreData filter + + + + Find the all child jobs with specified ChildJobState in the job list + + + + returns job list including all child jobs with ChildJobState or all if IncludeChildJob is specified + + + + Applys the appropriate time filter to each job in the job list. + Only Job2 type jobs can be time filtered so older Job types are skipped. + + + + + + + Cmdlet used for receiveing results from job object. + This cmdlet is intended to have a slightly different behavior + in the following two cases: + 1. The job object to receive results from is a PSRemotingJob + In this case, the cmdlet can use two additional + parameters to filter results - ComputerName and Runspace + The parameters help filter out results for a specified + computer or runspace from the job object + + $job = Start-PSJob -Command 'get-process' -ComputerName server1, server2 + Receive-PSJob -Job $job -ComputerName server1 + + $job = Start-PSJob -Command 'get-process' -Session $r1, $r2 + Receive-PSJob -Job $job -Session $r1 + + 2. The job object to receive results is a PSJob (or derivative + other than PSRemotingJob) + In this case, the user cannot will use the location parameter + to do any filtering and will not have ComputerName and Runspace + parameters + + $job = Get-WMIObject '....' -AsJob + Receive-PSJob -Job $job -Location "Server2" + + The following will result in an error: + + $job = Get-WMIObject '....' -AsJob + Receive-PSJob -Job $job -ComputerName "Server2" + The parameter ComputerName cannot be used with jobs which are + not PSRemotingJob + + + + + + Job object from which specific results need to + be extracted + + + + + Name of the computer for which the results needs to be + returned + + + + + Locations for which the results needs to be returned. + This will cater to all kinds of jobs and not only + remoting jobs + + + + + Runspaces for which the results needs to be + returned + + + + + If the results need to be not removed from the store + after being written. Default is results are removed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Retrieve the results for the specified computers or + runspaces + + + + + StopProcessing - when the command is stopped, + unregister all the event handlers from the jobs + and decrement reference for results + + + + + if we are not stopping, continue writing output + as and when they are available + + + + + + + + + + + + + + + + Write the results from this Job object. This does not write from the + child jobs of this job object + + Job object from which to write the results from + + + + + + Returns all the results from supplied PSDataCollection. + + data collection to read from + collection with copy of data + + + + Write the results from this Job object. It also writes the + results from its child objects recursively. + + + Hashtable used for duplicate detection + Job whose results are written + + + + + Writes the job objects if required by the cmdlet + + collection of jobs to write + this method is intended to be called only from + ProcessRecord. When any changes are made ensure that this + contract is not broken + + + + + + + this method should always be called before + writeExistingData is set in ProcessRecord + + + + Write the results from this Job object. It also writes the + results from its child objects recursively. + + + Job whose results are written + + + + + + + + + + + + + This cmdlet stops the asynchronously invoked remote operaitons. + + + + + Specifies the Jobs objects which need to be + removed + + + + + Pass the Job object through the pipeline. + + + + + + + + + + Stop the Job. + + + + + Wait for all the stop jobs to be completed + + + + + + + + + + + + + + + + + + + + + This cmdlet waits for job to complete. + + + + + Specifies the Jobs objects which need to be + removed + + + + + Complete the cmdlet when any of the job is completed, instead of waiting for all of them to be completed. + + + + + If timeout is specified, the cmdlet will only wait for this number of seconds. + Value of -1 means never timeout. + + + + + Forces the cmdlet to wait for Finished states (Completed, Failed, Stopped) instead of + persistent states, which also include Suspended and Disconnected. + + + + + + + + + + Cancel the Wait-Job cmdlet. + + + + + In this method, we initialize the timer if timeout parameter is specified. + + + + + This method just collects the Jobs which will be waited on in the EndProcessing method. + + + + + Wait on the collected Jobs. + + + + + Dispose all managed resources. This will suppress finalizer on the object from getting called by + calling System.GC.SuppressFinalize(this). + + + + + Release all the resources. + + + if true, release all the managed objects. + + + + + This is the base class for job cmdlet and contains some helper functions + + + + + Find the jobs in repository which match matching the specified names + + + if true, method writes the object instead of returning it + in list (an empty list is retuened). + write error if no match is found + check if this job can be removed + recurse and check in child jobs + list of matching jobs + + + + Find the jobs in repository which match the specified instanceid + + + if true, method writes the object instead of returning it + in list (an empty list is retuened). + write error if no match is found + check if this job can be removed + look in all child jobs + list of matching jobs + + + + Find the jobs in repository which match the specified session ids + + + if true, method writes the object instead of returning it + in list (an empty list is retuened). + write error if no match is found + check if this job can be removed + look in child jobs as well + list of matching jobs + + + + Find the jobs in repository which match the specified command + + + if true, method writes the object instead of returning it + in list (an empty list is retuened). + list of matching jobs + + + + Find the jobs in repository which match the specified state + + + if true, method writes the object instead of returning it + in list (an empty list is retuened). + list of matching jobs + + + + Find the jobs which match the specified filter. + + + + + + + Used to find the v2 jobs that match a given filter. + + + + + + + + Copies the jobs to list. + + + if true, method writes the object instead of returning it + in list (an empty list is retuened). + if true, only jobs which can be removed will be checked + + + + + Checks that this job object can be removed. If not, writes an error record. + + Job object to be removed + Name of the parameter which is associated with this job object. + + Resource String in case of error + Parameters for resource message + true if object should be removed, else false + + + + Name of the jobs to retrieve + + + + + + + + + + InstanceIds for which job + need to be obtained + + + + + + + + + + SessionId for which job + need to be obtained + + + + + + + + + + All the job objects having this state. + + + + + + + + + + All the job objects having this command. + + + + + + + + + + All the job objects matching the values in filter + + + + + All remoting cmdlets other than Start-PSJob should + continue to work even if PowerShell remoting is not + enabled. This is because jobs are based out of APIs + and there can be other job implementations like + eventing or WMI which are not based on PowerShell + remoting + + + + + This cmdlet removes the Job object from the runspace + wide Job repository. + + Once the Job object is removed, it will not be available + through get-psjob command. + + + + + Specifies the Jobs objects which need to be + removed + + + + + If state of the job is running or notstarted, this will forcefully stop it. + + + + + Gets the job object as per the parameter and removes it. + + + + + Wait for all the stop jobs to be completed + + + + + release waiting for jobs + + + + + + + + + + + + + + + + This cmdlet suspends the jobs that are Job2. Errors are added for each Job that is not Job2. + + + + + Specifies the Jobs objects which need to be + suspended + + + + + + + + + + If state of the job is running , this will forcefully suspend it. + + + + + + + + + + Suspend the Job. + + + + + End Processing. + + + + + + + + + + + + + + + + + + + + + This cmdlet resumes the jobs that are Job2. Errors are added for each Job that is not Job2. + + + + + Specifies the Jobs objects which need to be + suspended + + + + + + + + + + Specifies whether to delay returning from the cmdlet until all jobs reach a running state. + This could take significant time due to workflow throttling. + + + + + Resume the Job. + + + + + End Processing. + + + + + + + + + + + + + + + + + + + + + This cmdlet takes a Job object and checks to see if it is debuggable. If it + is debuggable then it breaks into the job debugger in step mode. If it is not + debuggable then it is treated as a parent job and each child job is checked if + it is debuggable and if it is will break into its job debugger in step mode. + For multiple debuggable child jobs, each job execution will be halted and the + debugger will step to each job execution point sequentially. + + When a job is debugged its output data is written to host and the executing job + script will break into the host debugger, in step mode, at the next stoppable + execution point. + + + + + + The Job object to be debugged. + + + + + The Job object name to be debugged. + + + + + The Job object Id to be debugged. + + + + + The Job object InstanceId to be debugged. + + + + + End processing. Do work. + + + + + Stop processing. + + + + + Check for debuggable job. Job must implement IJobDebugger and also + must be running or in Debug stopped state. + + + + + + Enter-PSSession cmdlet. + + + + + Disable ThrottleLimit parameter inherited from base class. + + + + + Computer name parameter. + + + + + Runspace parameter. + + + + + ConnectionUri parameter. + + + + + RemoteRunspaceId of the remote runspace info object. + + + + + SessionId of the remote runspace info object. + + + + + Name of the remote runspace info object. + + + + + When set and in loopback scenario (localhost) this enables creation of WSMan + host process with the user interactive token, allowing PowerShell script network access, + i.e., allows going off box. When this property is true and a PSSession is disconnected, + reconnection is allowed only if reconnecting from a PowerShell session on the same box. + + + + + Virtual machine ID. + + + + + Virtual machine name. + + + + + Specifies the credentials of the user to impersonate in the + virtual machine. If this parameter is not specified then the + credentials of the current user process will be assumed. + + + + + The Id of the target container. + + + + + For WSMan sessions: + If this parameter is not specified then the value specified in + the environment variable DEFAULTREMOTESHELLNAME will be used. If + this is not set as well, then Microsoft.PowerShell is used. + + For VM/Container sessions: + If this parameter is not specified then no configuration is used. + + + + + Resolves shellname and appname + + + + + Process record. + + + + + This method will until the runspace is opened and warnings if any + are reported + + + + + + + + + + Create temporary remote runspace. + + + + + Write error create remote runspace failed. + + + + + Write invalid argument error. + + + + + When the client remote session reports a URI redirection, this method will report the + message to the user as a Warning using Host method calls. + + + + + + + Create runspace when computer name parameter specified. + + + + + Create runspace when uri parameter specified. + + + + + Get runspace matching condition. + + + + + Get runspace matching runspace id. + + + + + Get runspace matching session id. + + + + + Get runspace matching name. + + + + + Whether the input is a session object or property that corresponds to + VM or container. + + + + + Create runspace for VM session. + + + + + Create temporary remote runspace. + + + + + Set prompt for VM/Container sessions. + + + + + Create runspace for container session. + + + + + Exit-PSSession cmdlet. + + + + + Process record. + + + + + This class implements New-PSSessionOption cmdlet. + Spec: TBD + + + + + The MaximumRedirection parameter enables the implicit redirection functionality + -1 = no limit + 0 = no redirection + + + + + If false, underlying WSMan infrastructure will compress data sent on the network. + If true, data will not be compressed. Compression improves performance by + reducing the amount of data sent on the network. Compression my require extra + memory consumption and CPU usage. In cases where available memory / CPU is less, + set this property to "true". + By default the value of this property is "false". + + + + + If true then Operating System won't load the user profile (i.e. registry keys under HKCU) on the remote server + which can result in a faster session creation time. This option won't have any effect if the remote machine has + already loaded the profile (i.e. in another session). + + + + + Culture that the remote session should use + + + + + UI culture that the remote session should use + + + + + Total data (in bytes) that can be received from a remote machine + targeted towards a command. If null, then the size is unlimited. + Default is unlimited data. + + + + + Maximum size (in bytes) of a deserialized object received from a remote machine. + If null, then the size is unlimited. Default is unlimited object size. + + + + + Specifies the output mode on the server when it is in Disconnected mode + and its output data cache becomes full. + + + + + Maximum number of times a connection will be re-attempted when a connection fails due to network + issues. + + + + + Application arguments the server can see in + + + + + The duration for which PowerShell remoting waits (in milliseconds) before timing + out on a connection to a remote machine. Simply put, the timeout for a remote + runspace creation. + + The user would like to tweak this timeout depending on whether + he/she is connecting to a machine in the data center or across a slow WAN. + + + + + The duration for which PowerShell should wait (in milliseconds) before it + times out on cancel operations (close runspace or stop powershell). For + instance, when the user hits ctrl-C, New-PSSession cmdlet tries to call a + stop on all remote runspaces which are in the Opening state. The user + wouldn’t mind waiting for 15 seconds, but this should be time bound and of a + shorter duration. A high timeout here like 3 minutes will give the user + a feeling that the PowerShell client has hung. + + + + + The duration for which a Runspace on server needs to wait (in milliseconds) before it + declares the client dead and closes itself down. + This is especially important as these values may have to be configured differently + for enterprise administration scenarios. + + + + + By default, ProxyAccessType is None, that means Proxy information (ProxyAccessType, + ProxyAuthenticationMechanism and ProxyCredential)is not passed to WSMan at all. + + + + + The following is the definition of the input parameter "ProxyAuthentication". + This parameter takes a set of authentication methods the user can select + from. The available options should be as follows: + - Negotiate: Use the default authentication (as defined by the underlying + protocol) for establishing a remote connection. + - Basic: Use basic authentication for establishing a remote connection + - Digest: Use Digest authentication for establishing a remote connection + + + + + The following is the definition of the input parameter "ProxyCredential". + + + + + The following is the definition of the input parameter "SkipCACheck". + When connecting over HTTPS, the client does not validate that the server + certificate is signed by a trusted certificate authority (CA). Use only when + the remote computer is trusted by other means, for example, if the remote + computer is part of a network that is physically secure and isolated or the + remote computer is listed as a trusted host in WinRM configuration + + + + + The following is the definition of the input parameter "SkipCNCheck". + Indicates that certificate common name (CN) of the server need not match the + hostname of the server. Used only in remote operations using https. This + option should only be used for trusted machines + + + + + The following is the definition of the input parameter "SkipRevocation". + Indicates that certificate common name (CN) of the server need not match the + hostname of the server. Used only in remote operations using https. This + option should only be used for trusted machines + + + + + The following is the definition of the input parameter "Timeout". + Defines the timeout in milliseconds for the wsman operation + + + + + The following is the definition of the input parameter "UnEncrypted". + Specifies that no encryption will be used when doing remote operations over + http. Unencrypted traffix is not allowed by default and must be enabled in + the local configuration + + + + + The following is the definition of the input parameter "UTF16". + Indicates the request is encoded in UTF16 format rather than UTF8 format; + UTF8 is the default. + + + + + Uses Service Principal Name (SPN) along with the Port number during authentication. + + + + + Performs initialization of cmdlet execution. + + + + + Implementing type for WSManConfigurationOption + + + + + Constructor that instantiates with default values + + + + + LoadFromDefaults + + + + + + + ProcessIdleTimeout in Seconds + + + + + MaxIdleTimeout in Seconds + + + + + MaxSessions + + + + + MaxConcurrentCommandsPerSession + + + + + MaxSessionsPerUser + + + + + MaxMemoryPerSessionMB + + + + + MaxProcessesPerSession + + + + + MaxConcurrentUsers + + + + + IdleTimeout in Seconds + + + + + OutputBufferingMode + + + + + ConstructQuotas + + + + + + ConstructOptionsXmlAttributes + + + + + + ConstructOptionsXmlAttributes + + + + + + Command to create an object for WSManConfigurationOption + + + + + MaxIdleTimeoutSec + + + + + ProcessIdleTimeoutSec + + + + + MaxSessions + + + + + MaxConcurrentCommandsPerSession + + + + + MaxSessionsPerUser + + + + + MaxMemoryPerSessionMB + + + + + MaxProcessesPerSession + + + + + MaxConcurrentUsers + + + + + IdleTimeoutMs + + + + + OutputBufferingMode + + + + + Overriding the base method + + + + + New-PSSessionConfigurationFile command implementation + + See Declarative Initial Session State (DISC) + + + + + Destination path + + + + + Configuration file schema version + + + + + Configuration file GUID + + + + + Author of the configuration file + + + + + Description + + + + + Company name + + + + + Copyright information + + + + + Specifies type of initial session state to use. + + + + + Specifies the directory for transcripts to be placed. + + + + + Specifies whether to run this configuration under a virtual account. + + + + + Specifies groups a virtual account is part of. + + + + + Creates a User PSDrive in the session. + The User drive is used with Copy-Item for file transfer when the FileSystem provider is + not visible in the session. + + + + + Optional parameter that specifies a maximum size in bytes for the User: drive created with the + MountUserDrive parameter. + If no maximum size is specified then the default drive maximum size is 50MB. + + + + + Optional parameter that specifies a Group Managed Service Account name in which the configuration + is run. + + + + + Scripts to process + + + + + Role definitions for this session configuration (Role name -> Role capability) + + + + + Specifies account groups that are membership requirements for this session + + + + + Languange mode + + + + + Execution policy + + + + + PowerShell version + + + + + A list of modules to import + + + + + A list of visible aliases + + + + + A list of visible cmdlets + + + + + A list of visible functions + + + + + A list of visible external commands (scripts and applications) + + + + + A list of providers + + + + + A list of alises + + + + + A list of functions + + + + + A list of variables + + + + + A list of environment variables + + + + + A list of types to process + + + + + A list of format data to process + + + + + A list of assemblies to load + + + + + Gets or sets whether to include a full expansion of all possible session configuration + keys as comments when creating the session configuration file. + + + + + + + + + + New-PSRoleCapabilityFile command implementation + + Creates a role capability file suitable for use in a Role Capability (which can be referenced in a Session Configuration file) + + + + + Destination path + + + + + Configuration file GUID + + + + + Author of the configuration file + + + + + Description + + + + + Company name + + + + + Copyright information + + + + + A list of modules to import + + + + + A list of visible aliases + + + + + A list of visible cmdlets + + + + + A list of visible functions + + + + + A list of visible external commands (scripts and applications) + + + + + A list of providers + + + + + Scripts to process + + + + + A list of alises + + + + + A list of functions + + + + + A list of variables + + + + + A list of environment variables + + + + + A list of types to process + + + + + A list of format data to process + + + + + A list of assemblies to load + + + + + + + + + + Utility methods for configuration file commands + + + + + This routine builds a fragment of the config file + for a particular key. It returns a formatted string that includes + a comment describing the key as well as the key and its value. + + + + + Return a single-quoted string. Any embedded single quotes will be doubled. + + The string to quote + The quoted string + + + + Return a script block string wrapped in curly braces. + + The string to wrap + The wrapped string + + + + Return a script block string wrapped in curly braces. + + + + + Gets the visibility default value + + + + + Combines a hashtable into a single string block + + + + + Combines RequireGroups logic operator hash tables / lists + e.g., + -RequiredGroups @{ Or = 'TrustedGroup1', 'MFAGroup2' } + -RequiredGroups @{ And = 'Administrators', @{ Or = 'MFAGroup1', 'MFAGroup2' } } + -RequiredGroups @{ Or = @{ And = 'Administrators', 'TrustedGroup1' }, @{ And = 'Power Users', 'TrustedGroup1' } } + + + + + + + Combines an array of hashtables into a single string block + + + + + Combines an array of strings into a single string block + + string values + string block + + + + Combines an array of strings or hashtables into a single string block + + + + + Test-PSSessionConfigurationFile command implementation + + See Declarative Initial Session Config (DISC) + + + + + The output path for the generated file... + + + + + + + + + + This cmdlet enters into an interactive session with the specified local process by + creating a remote runspace to the process and pushing it on the current PSHost. + If the selected process does not contain PowerShell then an error message will result. + If the current user does not have sufficient privileges to attach to the selected process + then an error message will result. + + + + + Process to enter. + + + + + Id of process to enter. + + + + + Name of process to enter. An error will result if more than one such process exists. + + + + + Host Process Info object that describes a connectible process. + + + + + Optional name of AppDomain in process to enter. If not specified then the default AppDomain is used. + + + + + End Processing + + + + + Stop Processing + + + + + This cmdlet exits an interactive session with a local process. + + + + + Process Record + + + + + This cmdlet returns a collection of PSHostProcessInfo objects containing + process and AppDomain name information for processes that have PowerShell loaded. + + + + + Name of Process + + + + + Process + + + + + Id of process + + + + + End bock processing + + + + + Returns all named pipe AppDomain names for given process Ids or all PowerShell + processes if procIds parameter is null. + PowerShell pipe name example: + PSHost.130566795082911445.8224.DefaultAppDomain.powershell + + Process Ids or null + Collection of process AppDomain info + + + + PowerShell host process information class. + + + + + Name of process + + + + + Id of process + + + + + Name of PowerShell AppDomain in process + + + + + Main window title of the process + + + + + Constructor + + Name of process + Id of process + Name of process AppDomain + + + + Provider that provides access to Registry through cmdlets. This provider + implements , + , + , + + interfaces. + + + + Provider that provides access to Registry through cmdlets. This provider + implements , + , + , + + interfaces. + + + + + An instance of the PSTraceSource class used for trace output + using "ProviderProvider" as the category. + + + + + Gets the name of the provider + + + + + Verifies that the new drive has a valid root. + + A PSDriveInfo object. + + + + + Creates HKEY_LOCAL_MACHINE and HKEY_CURRENT_USER registry drives during provider initialization. + + + After the Start method is called on a provider, the InitializeDefaultDrives + method is called. This is an opportunity for the provider to + mount drives that are important to it. For instance, the Active Directory + provider might mount a drive for the defaultNamingContext if the + machine is joined to a domain. The FileSystem mounts all drives then available. + + + + + Determines if the specified is syntactically and semantically valid. + + + + The path to validate. + + + + True if the path is valid, or False otherwise. + + + + + Gets the RegistryKey item at the specified + and writes it to the pipeline using the WriteObject method. + Any non-terminating exceptions are written to the WriteError method. + + + + The path to the key to retrieve. + + + + + Sets registry values at to the specified. + + + + The path to the item that is to be set. Only registry values can be set using + this method. + + + + The new value for the registry value. + + + + + Gets the dynamic parameters for the SetItem method. + + + + Ignored. + + + + Ignored. + + + + An instance of the class which + contains a parameter for the Type. + + + + + Clears the item at the specified . + + + The path to the item that is to be cleared. Only registry values can be cleared using + this method. + + + The registry provider implements this by removing all the values for the specified key. + The item that is cleared is written to the WriteObject method. + If the path is to a value, then an ArgumentException is written. + + + + + Gets all the child keys and values of the key at the specified . + + + The path to the key to get the child keys of. + / + + Determines if the call should be recursive. If true, all subkeys of + the key at the specified path will be written. If false, only the + immediate children of the key at the specified path will be written. + + + Current depth of recursion; special case uint.MaxValue performs full recursion. + + + + + Gets all the child key and value names of the key at the specified . + + + + The path to the key to get the child names from. + + + + Ignored since the registry provider does not implement filtering. + Normally, if this parameter is ReturnAllContainers then all subkeys should be + returned. If it is false, then only those subkeys that match the + filter should be returned. + + + + + Escapes the characters in the registry key path that are used by globbing and + path. + + + + The path to escape. + + + + The escaped path. + + + This method handles surrogate pairs. Please see msdn documentation + + + + + Escapes the characters in the registry key name that are used by globbing and + path. + + + + The name to escape. + + + + The escaped name. + + + This method handles surrogate pairs. Please see msdn documentation + + + + + Renames the key at the specified to . + + + + The path to the key to rename. + + + + The new name of the key. + + + + + Creates a new registry key or value at the specified . + + + + The path to the new key to create. + + + + The type is ignored because this provider only creates + registry keys. + + + + The newItem is ignored because the provider creates the + key based on the path. + + + + + Removes the specified registry key and all sub-keys + + + + The path to the key to remove. + + + + Ignored. All removes are recursive becuase the + registry provider does not support filters. + + + + + Determines if the key at the specified path exists. + + + + The path to the key to determine if it exists. + + + + True if the key at the specified path exists, false otherwise. + + + + + Determines if the specified key has subkeys. + + + + The path to the key to determine if it has sub keys. + + + + True if the specified key has subkeys, false otherwise. + + + + + Copies the specified registry key to the specified . + + + + The path of the registry key to copy. + + + + The path to copy the key to. + + + + If true all subkeys should be copied. If false, only the + specified key should be copied. + + + + + Determines if the key at the specified is a container. + + + The path to a key. + + + Since all registry keys are containers this method just checks + to see if the key exists and returns true if it is does or + false otherwise. + + + + + Moves the specified key. + + + + The path of the key to move. + + + + The path to move the key to. + + + + + Gets the properties of the item specified by the . + + + + The path to the item to retrieve properties from. + + + + A list of properties that should be retrieved. If this parameter is null + or empty, all properties should be retrieved. + + + + Nothing. An instance of PSObject representing the properties that were retrieved + should be passed to the WriteObject() method. + + + + + Sets the specified properties of the item at the specified . + + + + The path to the item to set the properties on. + + + + A PSObject which contains a collection of the name, type, value + of the properties to be set. + + + + Nothing. An instance of PSObject representing the properties that were set + should be passed to the WriteObject() method. + + + + + Gives the provider a chance to attach additional parameters to the + get-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + A PSObject which contains a collection of the name, type, value + of the properties to be set. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Clears a property of the item at the specified . + + + + The path to the item on which to clear the property. + + + + The name of the property to clear. + + + + + Gives the provider a chance to attach additional parameters to the + get-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + A list of properties that should be retrieved. If this parameter is null + or empty, all properties should be retrieved. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Gives the provider a chance to attach additional parameters to the + clear-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property to clear. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Creates a new property on the specified item + + + + The path to the item on which the new property should be created. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + Nothing. A PSObject representing the property that was created should + be passed to the WriteObject() method. + + + + + + + Removes a property on the item specified by the path. + + + + The path to the item on which the property should be removed. + + + + The name of the property to be removed. + + + + Implement this method when you are providing access to a data store + that allows dynamic removal of properties. + + + + + Renames a property of the item at the specified . + + + + The path to the item on which to rename the property. + + + + The property to rename. + + + + The new name of the property. + + + + Nothing. A PSObject that represents the property that was renamed should be + passed to the WriteObject() method. + + + + + Copies a property of the item at the specified to a new property on the + destination . + + + + The path to the item on which to copy the property. + + + + The name of the property to copy. + + + + The path to the item on which to copy the property to. + + + + The destination property to copy to. + + + + Nothing. A PSObject that represents the property that was copied should be + passed to the WriteObject() method. + + + + + Moves a property on an item specified by . + + + + The path to the item on which to move the property. + + + + The name of the property to move. + + + + The path to the item on which to move the property to. + + + + The destination property to move to. + + + + Nothing. A PSObject that represents the property that was moved should be + passed to the WriteObject() method. + + + + + Gets the parent path of the given . + + + + The path to get the parent of. + + + + The root of the drive. + + + + The parent path of the given path. + + + + Since the base class implementation of GetParentPath of HKLM:\foo would return + HKLM: we must add the \ back on. + + + + + Gets the child name for the given . + + + + The path to get the leaf element of. + + + + The leaf element of the given path. + + + + Since the base class implementation of GetChildName will return + normalized paths (with \), we must change them to forward slashes.. + + + + + Gives the provider a chance to attach additional parameters to the + new-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property that should be created. + + + + The type of the property that should be created. + + + + The new value of the property that should be created. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Gives the provider a chance to attach additional parameters to the + remove-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property that should be removed. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Gives the provider a chance to attach additional parameters to the + rename-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The property to rename. + + + + The new name of the property. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Gives the provider a chance to attach additional parameters to the + copy-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property to copy. + + + + The path to the item on which to copy the property to. + + + + The destination property to copy to. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Gives the provider a chance to attach additional parameters to the + move-itemproperty cmdlet. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + The name of the property to copy. + + + + The path to the item on which to copy the property to. + + + + The destination property to copy to. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Converts all / in the path to \ + + + + The path to normalize. + + + + The path with all / normalized to \ + + + + + + IT resets the a registry key value to its default + + Key whose value has to be reset + name of the value to reset + default value the key was set to + + + + checks if the given path is the top container path (the one containing the hives) + + + + path to check + + + + true if the path is empty, a \ or a /, else false + + + + + + checks the container. if the container is the hive container (Registry::\) + it throws an exception + + path to check + false if the operation is not allowed + + + + checks the container. if the container is the hive container (Registry::\) + it throws an exception + + source path to check + destination path to check + + + + Gets the appropriate hive root name for the specified path. + + + + The path to get the hive root name from. + + + + A registry key for the hive root specified by the path. + + + + + + Creates the parent for the keypath specified by . + + RegistryKey path + + True if key is created or already exist,False otherwise. + + + This method wont call ShouldProcess. Callers should do this before + calling this method. + + + + + A private helper method that retrieves a RegistryKey for the specified + path and if an exception is thrown retrieving the key, an error is written + and null is returned. + + + + The path to the registry key to retrieve. + + + + If write access is required the key then this should be true. If false, + the key will be opened with read access only. + + + + The RegistryKey associated with the specified path. + + + + + + A private helper method that retrieves a RegistryKey for the specified + path. + + + + The path to the registry key to retrieve. + + + + If write access is required the key then this should be true. If false, + the key will be opened with read access only. + + + + The RegistryKey associated with the specified path. + + + + + + Sets or creates a registry value on a key. + + + + The key to set or create the value on. + + + + The name of the value to set or create. + + + + The new data for the value. + + + + The RegistryValueKind of the value. + + + + The path to the key that the value is being set on. + + + + + + Sets or creates a registry value on a key. + + + + The key to set or create the value on. + + + + The name of the value to set or create. + + + + The new data for the value. + + + + The RegistryValueKind of the value. + + + + The path to the key that the value is being set on. + + + + If true, the value that is set will be written out. + + + + + + helper to wrap property values when sent to the pipeline into an PSObject; + it adds the name of the property as a note. + + The property to be written + Name of the property being written + The path of the item being written + + + + Uses LanguagePrimitives.ConvertTo to convert the value to the type that is appropriate + for the specified RegistryValueKind + + + + The value to convert. + + + + The RegistryValueKind type to convert the value to. + + + + The converted value. + + + + + + helper to infer the RegistryValueKind from an object + + object whose RegistryValueKind has to be determined + corresponding RegistryValueKind + + + + Helper to get RegistryValueKind for a Property + + RegistryKey containing property + Property for which RegistryValueKind is requested + RegistryValueKind of the property. If the property does not exit,returns RegsitryValueKind.Unknown + + + + helper to read back an existing registry key value + + key to read the value from + name of the value to read + value of the key, null if it could not retrieve + it because known exceptions were thrown, else an exception is percolated up + + + + + Wraps a registry item in a PSObject and sets the TreatAs to + Microsoft.Win32.RegistryKey. This way values will be presented + in the same format as keys + + + + The registry key to be written out. + + + + The path to the item being written out. + + + + + + Takes a string and tries to parse it into a RegistryValueKind enum + type. + If the conversion fails, WriteError() is called + + + + The type as specified by the user that should be parsed into a RegistryValueKind enum. + + + output for the RegistryValueKind for the string + + true if the conversion succeded + + + + + Gets the default value name token from the resource. + In English that token is "(default)" without the quotes. + + + + A string containing the default value name. + + + + + + Converts an empty or null userEnteredPropertyName to the localized + string for the default property name. + + + + The property name to convert. + + + + If userEnteredPropertyName is null or empty, the localized default + property name is returned, else the userEnteredPropertyName is returned. + + + + + + Gets the security descriptor for the item specified by . + + + + The path to the item. + + + + Specifies the parts of a security descriptor to retrieve. + + + + Nothing. An object that represents the security descriptor for the item + specified by path is written to the WriteSecurityDescriptorObject method. + + + + + Sets the security descriptor for the item specified by + + + + The path to the item to set the security descriptor on. + + + + The new security descriptor for the item. + + + + + Creates a new empty security descriptor. + + + The path to the item whose type is to be used when + creating a new descriptor. + + + Specifies the parts of a security descriptor to create. + + + An instance of object. + + and are not used by this method. + + + + Creates a new empty security descriptor. + + + + The type of item associated with this security descriptor + + + + Specifies the parts of a security descriptor to create. + + + + An instance of object. + + + + + Defines dynamic parameters for the registry provider + + + + + Gets or sets the Type parameter as a dynamic parameter for + the registry provider's SetItem method + + + + The only acceptable values for this parameter are those found + in the RegistryValueKind enum + + + + + Implements a cmdlet that applies a script block + to each element of the pipeline. + + + + + This parameter specifies the current pipeline object + + + + + The script block to apply in begin processing + + + + + The script block to apply + + + + + The script block to apply in complete processing + + + + + The remaining script blocks to apply + + + + + The property or method name + + + + + The arguments passed to a method invocation + + + + + Execute the begin scriptblock at the start of processing + + + The maximum scope depth would be exceeded + + could not parse script + see Pipeline.Invoke + see Pipeline.Invoke + + + + Execute the processing script blocks on the current pipeline object + which is passed as it's only parameter. + + + The maximum scope depth would be exceeded + + could not parse script + see Pipeline.Invoke + see Pipeline.Invoke + + + + Do method invocation with arguments + + + + + Get the string representation of the passed-in object + + + + + + + Get the value by taking _propertyOrMethodName as the key, if the + input object is a IDictionary. + + + + + + Unroll the object to be output. If it's of type IEnumerator, unroll and output it + by calling WriteOutIEnumerator. If it's not, unroll and output it by calling WriteObject(obj, true) + + + + + + Unroll an IEnumerator and output all entries. + + + + + + Check if the language mode is the restrictedLanguageMode before invoking a method. + Write out error message and return true if we are in restrictedLanguageMode. + + + + + + Generate the appropriate error record + + + + + + + + + + + Execute the end scriptblock when the pipeline is complete + + + The maximum scope depth would be exceeded + + could not parse script + see Pipeline.Invoke + see Pipeline.Invoke + + + + Implements a cmdlet that applys a script block + to each element of the pipeline. If the result of that + application is true, then the current pipeline object + is passed on, otherwise it is dropped. + + + + + This parameter specifies the current pipeline object + + + + + The script block to apply + + + + + The property to retrieve value + + + + + The value to compare against + + + + + Binary operator -Equal + It's the default parameter set, so -EQ is not mandatory. + + + + + Case sensitive binary operator -ceq + + + + + Binary operator -NotEqual + + + + + Case sensitive binary operator -cne + + + + + Binary operator -GreaterThan + + + + + Case sensitive binary operator -cgt + + + + + Binary operator -LessThan + + + + + Case sensitive binary operator -clt + + + + + Binary operator -GreaterOrEqual + + + + + Case sensitive binary operator -cge + + + + + Binary operator -LessOrEqual + + + + + Case sensitive binary operator -cle + + + + + Binary operator -Like + + + + + Case sensitive binary operator -clike + + + + + Binary operator -NotLike + + + + + Case sensitive binary operator -cnotlike + + + + + Binary operator -Match + + + + + Case sensitive binary operator -cmatch + + + + + Binary operator -NotMatch + + + + + Case sensitive binary operator -cnotmatch + + + + + Binary operator -Contains + + + + + Case sensitive binary operator -ccontains + + + + + Binary operator -NotContains + + + + + Case sensitive binary operator -cnotcontains + + + + + Binary operator -In + + + + + Case sensitive binary operator -cin + + + + + Binary operator -NotIn + + + + + Case sensitive binary operator -cnotin + + + + + Binary operator -Is + + + + + Binary operator -IsNot + + + + + + + + Execute the script block passing in the current pipeline object as + it's only parameter. + + + The maximum scope depth would be exceeded + + could not parse script + see Pipeline.Invoke + see Pipeline.Invoke + + + + Get the value based on the given property name + + the value of the property + + + + Get the matched PSMembers + + + + + + Implements a cmdlet that sets the script debugging options. + + + + + Sets the script tracing level + + + + + Turns stepping on and off + + + + + Turns strict mode on and off. + + + + + Turns all script debugging features off. + + + + + Execute the begin scriptblock at the start of processing + + + + + Set-StrictMode causes the interpreter to throw an exception in the following cases: + * Referencing an unassigned variable + * Referencing a non-existent property of an object + * Calling a function as a method (with parentheses and commas) + * Using the variable expansion syntax in a string literal w/o naming a variable, i.e. "${}" + + Parameters: + + -Version allows the script author to specify which strict mode version to enforce. + -Off turns strict mode off + + Note: + + Unlike Set-PSDebug -strict, Set-StrictMode is not engine-wide, and only + affects the scope it was defined in. + + + + + The following is the definition of the input parameter "Off". + Turns strict mode off + + + + + To make it easier to specify a version, we add some conversions that wouldn't happen otherwise: + * A simple integer, i.e. 2 + * A string without a dot, i.e. "2" + * The string 'latest', which we interpret to be the current version of PowerShell. + + + + + The following is the definition of the input parameter "Version". + Turns strict mode in the current scope. + + + + + Set the correct version for strict mode checking in the current scope. + + + + + Helper class for writing formatting directives to XML + + + + + Writes a collection of format view definitions to XML file + + collection of PSTypeDefinition + path to XML file + cmdlet from which this si used + true - to force write the file + true - to export scriptblocks + true - do not overwrite the file + true - bypass wildcard expansion on the file name + + + + implementation for the format-default command + + + + + constructor to set the inner command + + + + + implementation for the out-lineoutput command + it provides a wrapper for the OutCommandInner class, + which is the general purpose output command + + + + + command line switch for ILineOutput comunication channel + + + + + + set inner command + + + + + + + + + + + Null sink to absorb pipeline output + + + + + input PSObject + + + + + This parameter specifies the current pipeline object + + + + + + Do nothing + + + + + implementation for the out-default command + this command it impicitely inject by the + powershell.exe host at the end of the pipeline as the + default sink (display to console screen) + + + + + Determines whether objects should be sent to API consumers. + This command is automatically added to the pipeline when PowerShell is transcripting and + invoked via API. This ensures that the objects pass through the formatting and output + system, but can still make it to the API consumer. + + + + + set inner command + + + + + just hook up the LineOutput interface + + + + + Process the OutVar, if set + + + + + Swap the outVar with what we've processed, if OutVariable is set. + + + + + implementation for the out-host command + + + + + non positional parameter to specify paging + + + + + constructor of OutHostCommand + + + + + optional, non positional parameter to specify paging + FALSE: names only + TRUE: full info + + + + + just hook up the LineOutput interface + + + + + This provider is the data accessor for shell aliases. It uses + the SessionStateProviderBase as the base class to produce a view on + session state data. + + + + + Gets the name of the provider + + + + + The constructor for the provider that exposes variables to the user + as drives. + + + + + Initializes the alias drive + + + + An array of a single PSDriveInfo object representing the alias drive. + + + + + + Gets the dynamic parameters for the NewItem cmdlet + + + + Ignored. + + + + Ignored. + + + + Ignored. + + + + An instance of AliasProviderDynamicParameters which is the dynamic parameters for + NewItem. + + + + + + Gets the dynamic parameters for the NewItem cmdlet + + + + Ignored. + + + + Ignored. + + + + An instance of AliasProviderDynamicParameters which is the dynamic parameters for + SetItem. + + + + + + Gets a alias from session state + + + + The name of the alias to retrieve. + + + + A DictionaryEntry that represents the value of the alias. + + + + + + Since items are often more than their value, this method should + be overridden to provide the value for an item + + + + The item to extract the value from. + + + + The value of the specified item. + + + + The default implementation will get + the Value property of a DictionaryEntry + + + + + + Sets the alias of the specified name to the specified value + + + + The name of the alias to set. + + + + The new value for the alias. + + + + If true, the item that was set should be written to WriteItemObject. + + + + + + Removes the specified alias from session state. + + + + The name of the alias to remove from session state. + + + + + + Gets a flattened view of the alias in session state + + + + An IDictionary representing the flattened view of the aliases in + session state. + + + + + + Determines if the item can be renamed. Derived classes that need + to perform a check should override this method. + + + + The item to verify if it can be renamed. + + + + true if the item can be renamed or false otherwise. + + + + + + The dynamic parameter object for the AliasProvider SetItem and NewItem commands + + + + + Gets or sets the option parameter for the alias + + + + + + Determines if the Options parameter was set. + + + + + + This provider is the data accessor for environment variables. It uses + the SessionStateProviderBase as the base class to produce a view on + session state data. + + + + + Gets the name of the provider + + + + + The constructor for the provider that exposes environment variables to the user + as drives. + + + + + Initializes the alias drive + + + + An array of a single PSDriveInfo object representing the alias drive. + + + + + + Gets a environment variable from session state + + + + The name of the environment variable to retrieve. + + + + A DictionaryEntry that represents the value of the environment variable. + + + + + + Sets the environment variable of the specified name to the specified value + + + + The name of the environment variable to set. + + + + The new value for the environment variable. + + + + If true, the item that was set should be written to WriteItemObject. + + + + + + Removes the specified environment variable from session state. + + + + The name of the environment variable to remove from session state. + + + + + + Gets a flattened view of the environment variables in session state + + + + An IDictionary representing the flattened view of the environment variables in + session state. + + + + + + Gets the Value property of the DictionaryEntry item + + + + The item to get the value from. + + + + The value of the item. + + + + + + The content stream class for the file system provider. It implements both + the IContentReader and IContentWriter interfaces. + + + + Note, this class does no specific error handling. All errors are allowed to + propogate to the caller so that they can be written to the error pipeline + if necessary. + + + + + + An instance of the PSTraceSource class used for trace output + using "FileSystemContentStream" as the category. + + + + + Constructor for the content stream + + + + The path to the file to get the content from. + + + + The file mode to open the file with. + + + + The file access requested in the file. + + + + The file share to open the file with + + + + The encoding of the file to be read or written. + + + + If true, bytes will be read from the file. If false, the specified encoding + will be used to read the file. + + + + If true, we will perform blocking reads on the file, waiting for new content to be appended + + + + The CmdletProvider invoking this stream + + + + Indicates raw stream. + + + + + + Constructor for the content stream + + + + The path to the file to get the content from. + + + + The name of the Alternate Data Stream to get the content from. If null or empty, returns + the file's primary content. + + + + The file mode to open the file with. + + + + The file access requested in the file. + + + + The file share to open the file with + + + + The encoding of the file to be read or written. + + + + If true, bytes will be read from the file. If false, the specified encoding + will be used to read the file. + + + + If true, we will perform blocking reads on the file, waiting for new content to be appended + + + + The CmdletProvider invoking this stream + + + + Indicates raw stream. + + + + + + Constructor for the content stream + + + + The path to the file to get the content from. + + + + The name of the Alternate Data Stream to get the content from. If null or empty, returns + the file's primary content. + + + + The file mode to open the file with. + + + + The file access requested in the file. + + + + The file share to open the file with + + + + The encoding of the file to be read or written. + + + + If true, bytes will be read from the file. If false, the specified encoding + will be used to read the file. + + + + If true, we will perform blocking reads on the file, waiting for new content to be appended + + + + The CmdletProvider invoking this stream + + + + Indicates raw stream. + + + + False to add a newline to the end of the output string, true if not. + + + + + + Constructor for the content stream + + + + The path to the file to get the content from. + + + + The file mode to open the file with. + + + + The file access requested in the file. + + + + The file share to open the file with + + + + The delimiter to use when reading strings. Each time read is called, all contents up to an including + the delimiter is read. + + + + The encoding of the file to be read or written. + + + + If true, we will perform blocking reads on the file, waiting for new content to be appended + + + + The CmdletProvider invoking this stream + + + + Indicates raw stream. + + + + + + Constructor for the content stream + + + + The path to the file to get the content from. + + + + The name of the Alternate Data Stream to get the content from. If null or empty, returns + the file's primary content. + + + + The file mode to open the file with. + + + + The file access requested in the file. + + + + The file share to open the file with + + + + The delimiter to use when reading strings. Each time read is called, all contents up to an including + the delimiter is read. + + + + The encoding of the file to be read or written. + + + + If true, we will perform blocking reads on the file, waiting for new content to be appended + + + + The CmdletProvider invoking this stream + + + + Indicates raw stream. + + + + + + Reads the specified number of characters or a lines from the file. + + + + If less than 1, then the entire file is read at once. If 1 or greater, then + readCount is used to determine how many items (ie: lines, bytes, delimited tokens) + to read per call. + + + + An array of strings representing the character(s) or line(s) read from + the file. + + + + + + Read the content regardless of the 'waitForChanges' flag + + + + + + + Move the pointer of the stream to the position where there are 'backCount' number + of items (depends on what we are using: delimiter? line? byts?) to the end of the file. + + + + + + Waits for changes to the specified file. To do this, it closes the file + and then monitors for changes. Once a change appears, it reopens the streams + and seeks to the last read position. + + The path of the file to read / monitor + The FileMode of the file (ie: Open / Append) + The access properties of the file (ie: Read / Write) + The sharing properties of the file (ie: Read / ReadWrite) + The encoding of the file + + + + Moves the current stream position in the file + + + + The offset from the origin to move the position to. + + + + The origin from which the offset is calculated. + + + + + + Closes the file. + + + + + Writes the specified object to the file + + + + The objects to write to the file + + + + The objects written to the file. + + + + + + Closes the file stream + + + + + If the given encoding is OEM or Default, check to see if the code page + is SBCS(single byte character set). + + + + + + We don't support this method because it is not used by the ReadBackward method in FileStreamContentReaderWriter + + + + + + + + + We don't support this method because it is not used by the ReadBackward method in FileStreamContentReaderWriter + + + + + + Reset the internal character buffer. Use it only when the position of the internal buffer and + the base stream do not match. These positions can become mismatch when the user read the data + into the buffer and then seek a new position in the underlying stream. + + + + + Return the current actual stream position + + + + + + Get the number of bytes the delimiter will + be encoded to + + + + + + + Peek the next character + + Return -1 if we reach the head of the file + + + + Read the next character + + Return -1 if we reach the head of the file + + + + Read a specific maximum of characters from the current stream into a buffer + + + + + Return the number of characters read, or -1 if we reach the head of the file + + + + Read a line from the current stream + + Return null if we reach the head of the file + + + + Refill the internal character buffer + + + + + + Refill the internal byte buffer + + + + + + Get information on a named code page + + + + + + + + The exception that indicates the encoding is not supported when reading backward + + + + + Get the encoding name + + + + + Defines the implementation of a File System Provider. This provider + allows for stateless namespace navigation of the file system. + + + The FileSystemProvider provides stateless namespace navigation + of the file system. + + + + + + An instance of the PSTraceSource class used for trace output + using "FileSystemProvider" as the category. + + + + + Gets the name of the provider + + + + + Initializes a new instance of the FileSystemProvider class. Since this + object needs to be stateless, the constructor does nothing. + + + + + Converts all / in the path to \ + + + + The path to normalize. + + + + The path with all / normalized to \ + + + + + + Checks if the item exist at the specified path. if it exists then creates + appropriate directoryinfo or fileinfo object. + + + refers to the item for which we are checking for existence and creating filesysteminfo object. + + + return true if path points to a directory else returns false. + + + + + + overrides the method of CmdletProvider, considering the additional + dynamic parameters of FileSystemProvider + + + whether the filter or attribute filter is set. + + + + + Gets the dynamic parameters for get-childnames on the + FileSystemProvider. + We currently only support one dynamic parameter, + "Attributes" that returns an enum evaluator for the + given expression. + + + + If the path was specified on the command line, this is the path + to the item for which to get the dynamic parameters. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Gets the dynamic parameters for get-childitems on the + FileSystemProvider. + We currently only support one dynamic parameter, + "Attributes" that returns an enum evaluator for the + given expression. + + + + If the path was specified on the command line, this is the path + to the item for which to get the dynamic parameters. + + + + Ignored. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Gets the dynamic parameters for Copy-Item on the FileSystemProvider. + + Source for the copy operation. + Destination for the copy operation. + Whether to recurse. + + + + + Implementation of ICmdletProviderSupportsHelp interface. + Gets provider-specific help content for the corresponding cmdlet + + + Name of command that the help is requested for. + + + Not used here. + + + The MAML help XML that should be presented to the user. + + + + + Starts the File System provider. This method sets the Home for the + provider to providerInfo.Home if specified, and %USERPROFILE% + otherwise. + + + The ProviderInfo object that holds the provider's configuration. + + + The updated ProviderInfo object that holds the provider's configuration. + + + + + Determines if the specified drive can be mounted. + + + + The drive that is going to be mounted. + + + + The same drive that was passed in, if the drive can be mounted. + null if the drive cannot be mounted. + + + drive is null. + + + drive root is null or empty. + + + + + MapNetworkDrive facilitates to map the newly created PS Drive to a network share. + + The PSDrive infor that would be used to create a new PS drive. + + + + ShouldMapNetworkDrive is a helper function used to detect if the + requested PSDrive to be created has to be mapped to a network drive. + + + + + + + RemoveDrive facilitates to remove network mapped persisted PSDrvie. + + + PSDrive info. + + PSDrive info. + + + + + IsSupportedDriveForPersistence is a helper method used to + check if the psdrive can be persisted or not. + + + PS Drive Info. + + True if the drive can be persisted or else false. + + + + Return the UNC path for a given network drive + using the Windows API + + + + + + + Get the substituted path of a NetWork type MS-DOS device that is created by 'subst' command. + When a MS-DOS device is of NetWork type, it could be: + 1. Substitute a path in a drive that maps to a network location. For example: + net use z: \\scratch2\scratch\ + subst y: z:\abc\ + 2. Substitute a network location directly. For example: + subst y: \\scratch2\scratch\ + + + + + + + Get the root path for a network drive or MS-DOS device. + + + + + + + Returns a collection of all logical drives in the system. + + + + A collection of PSDriveInfo objects, one for each logical drive returned from + System.Environment.GetLogicalDrives(). + + + + + + Retrieves the dynamic parameters required for the Get-Item cmdlet + + The path of the file to process + An instance of the FileSystemProviderGetItemDynamicParameters class that represents the dynamic parameters. + + + + Determines if the specified path is syntactically and semantically valid. + An example path looks like this + C:\WINNT\Media\chimes.wav + + + + The fully qualified path to validate. + + + + True if the path is valid, false otherwise. + + + + + Gets the item at the specified path. + + + + A fully qualified path representing a file or directory in the + file system. + + + + Nothing. FileInfo and DirectoryInfo objects are written to the + context's pipeline. + + + + path is null or empty. + + + + + Invokes the item at the path using ShellExecute semantics. + + + + The item to invoke. + + + + path is null or empty. + + + + + Gets the child items of a given directory. + + + + The full path of the directory to enumerate. + + + + If true, recursively enumerates the child items as well. + + + + Limits the depth of recursion; uint.MaxValue performs full recursion. + + + + Nothing. FileInfo and DirectoryInfo objects that match the filter are written to the + context's pipeline. + + + + path is null or empty. + + + + + Gets the path names for all children of the specified + directory that match the given filter. + + + + The full path of the directory to enumerate. + + + + Determines if all containers should be returned or only those containers that match the + filter(s). + + + + Nothing. Child names are written to the context's pipeline. + + + + path is null or empty. + + + + + Gets a new provider-specific path and filter (if any) that corresponds to the given + path. + + + + The path to the item. Unlike most other provider APIs, this path is likely to + contain PowerShell wildcards. + + + The provider-specific filter currently applied. + + + The new path to the item. + + + The new filter. + + + + True if the path or filter were altered. False otherwise. + + + + Makes no attempt to filter if the user has already specified a filter, or + if the path contains directory separators. Those are not supported by the + FileSystem filter. + + + + + + Create an enum expression evaluator for user-specified attribute filtering + switch paramters. + + + If any attribute filtering switch parameters are set, + returns an evaluator that evaluates these parameters. + Otherwise, + returns NULL + + + + + Provides a mode property for FileSystemInfo + + instance of PSObject wrapping a FileSystemInfo + + + + Renames a file or directory. + + + + The current full path to the file or directory. + + + + The new full path to the file or directory. + + + + Nothing. The renamed DirectoryInfo or FileInfo object is + written to the context's pipeline. + + + + path is null or empty. + newName is null or empty + + + + + Creates a file or directory with the given path. + + + + The path of the file or directory to create. + + + + Specify "file" to create a file. + Specify "directory" or "container" to create a directory. + + + + If is "file" then this parameter becomes the content + of the file to be created. + + + + Nothing. The new DirectoryInfo or FileInfo object is + written to the context's pipeline. + + + + path is null or empty. + type is null or empty. + + + + + Checks if the item exists and throws exception on access. + + + + + + + + Creates a directory at the specified path + + + + The path of the directory to create + + + + Determines if the directory should be streamed out after being created. + + + + + + Removes the specified file or directory. + + + + The full path to the file or directory to be removed. + + + + Specifies if the operation should also remove child items. + + + + path is null or empty. + + + + + Retrieves the dynamic parameters required for the Remove-Item cmdlet + + The path of the file to process + Whether to recurse into containers + An instance of the FileSystemProviderRemoveItemDynamicParameters class that represents the dynamic parameters. + + + + Removes a directory from the file system. + + + + The DirectoryInfo object representing the directory to be removed. + + + + If true, ShouldProcess will be called for each item in the subtree. + If false, ShouldProcess will only be called for the directory item. + + + + If true, attempts to modify the file attributes in case of a failure so that + the file can be removed. + + + + True if the DirectoryInfo being passed in is the root of the tree being removed. + ShouldProcess will be called if this is true or if recurse is true. + + + + + + Removes a file from the file system. + + + + The FileInfo object representing the file to be removed. + + + + If true, attempts to modify the file attributes in case of a failure so that + the file can be removed. + + + + + + Removes the file system object from the file system. + + + + The FileSystemInfo object representing the file or directory to be removed. + + + + If true, the readonly and hidden attributes will be masked off in the case of + an error, and the removal will be attempted again. If false, exceptions are + written to the error pipeline. + + + + + + Determines if a file or directory exists at the specified path. + + + + The path of the item to check. + + + + True if a file or directory exists at the specified path, false otherwise. + + + + path is null or empty. + + + + + + Implementation of ItemExists for the provider. This implementation + allows the caller to decide if it wants to WriteError or not based + on the returned ErrorRecord + + + + The path of the object to check + + + + An error record is returned in this parameter if there was an error. + + + + True if an object exists at the specified path, false otherwise. + + + + path is null or empty. + + + + + + Adds -OlderThan, -NewerThan dynamic properties. + + + + If the path was specified on the command line, this is the path + to the item to get the dynamic parameters for. + + + + Overrides of this method should return an object that has properties and fields decorated with + parsing attributes similar to a cmdlet class or a + . + + The default implemenation returns null. (no additional parameters) + + + + + Determines if the given path is a directory, and has children. + + + + The full path to the directory. + + + + True if the path refers to a directory that contains other + directories or files. False otherwise. + + + + path is null or empty. + + + + + Copies an item at the specified path to the given destination. + + + + The path of the item to copy. + + + + The path of the destination. + + + + Specifies if the operation should also copy child items. + + + + path is null or empty. + destination path is null or empty. + + + + Nothing. Copied items are written to the context's pipeline. + + + + + Gets the parent of the given path. + + + + The path of which to get the parent. + + + + The root of the drive. + + + + The parent of the given path. + + + + + Determines if the specified path is a root of a UNC share + by counting the path separators "\" following "\\". If only + one path separator is found we know the path is in the form + "\\server\share" and is a valid UNC root. + + + + The path to check to see if its a UNC root. + + + + True if the path is a UNC root, or false otherwise. + + + + + + Determines if the specified path is either a drive root or a UNC root + + + + The path + + + + True if the path is either a drive root or a UNC root, or false otherwise. + + + + + + Normalizes the path that was passed in and returns it as a normalized + path relative to the given basePath. + + + + A fully qualifiedpath to an item. The item must exist, + or the provider writes out an error. + + + + The path that the normalized path should be relative to. + + + + A normalized path, relative to the given basePath. + + + + path is null or empty. + + + + + Normalizes the path that was passed in and returns the normalized path + as a relative path to the basePath that was passed. + + + + A fully qualified provider specific path to an item. The item should exist + or the provider should write out an error. + + + + The path that the return value should be relative to. + + + + A normalized path that is relative to the basePath that was passed. The + provider should parse the path parameter, normalize the path, and then + return the normalized path relative to the basePath. + + + + This method does not have to be purely syntactical parsing of the path. It + is encouraged that the provider actually use the path to lookup in its store + and create a relative path that matches the casing, and standardized path syntax. + + Note, the base class implemenation uses GetParentPath, GetChildName, and MakePath + to normalize the path and then make it relative to basePath. All string comparisons + are done using StringComparison.InvariantCultureIngoreCase. + + + + + + Get the common base path of two paths + + One path + Another path + + + + Tokenizes the specified path onto a stack + + + + The path to tokenize. + + + + The base part of the path that should not be tokenized. + + + + A stack containing the tokenized path with leaf elements on the bottom + of the stack and the most ancestoral parent at the top. + + + + + + Given the tokenized path, the relative pathing elements are removed. + + + + String containing basepath for which we are trying to find the relative path. + + + + A stack containing path elements where the leaf most element is at + the bottom of the stack and the most ancestoral parent is on the top. + Generally this stack comes from TokenizePathToStack(). + + + + A stack in reverse order with the path elements normalized and all relative + pathing tokens removed. + + + + + + Pops each leaf element of the stack and uses MakePath to generate the relative path + + + + The stack containing the leaf elements of the path. + + + + A path that is made up of the leaf elements on the given stack. + + + + The elements on the stack start from the leaf element followed by its parent + followed by its parent, etc. Each following element on the stack is the parent + of the one before it. + + + + + + Gets the name of the leaf element of the specified path. + + + + The fully qualified path to the item. + + + + The leaf element of the specified path. + + + + path is null or empty. + + + + + Determines if the item at the specified path is a directory. + + + + The path to the file or directory to check. + + + + True if the item at the specified path is a directory. + False otherwise. + + + + path is null or empty. + + + + + Moves an item at the specified path to the given destination. + + + + The path of the item to move. + + + + The path of the destination. + + + + Nothing. Moved items are written to the context's pipeline. + + + + path is null or empty. + destination is null or empty. + + + + + Gets a property for the given item. + + The fully qualified path to the item. + + The list of properties to get. Examples include "Attributes", "LastAccessTime," + and other properties defined by + and + + + + + + Gets the dynamic propery parameters required by the get-itemproperty cmdlet. + This feature is not required by the File System provider. + + + + If the path was specified on the command line, this is the path + to the item for which to get the dynamic parameters. + + + + A list of properties that should be retrieved. If this parameter is null + or empty, all properties should be retrieved. + + + + Null. This feature is not required by the File System provider. + + + + + Sets the specified properties on the item at the given path. + + + + The path of the item on which to set the properties. + + + + A PSObject which contains a collection of the names and values + of the properties to be set. The File System provider supports setting + only the "Attributes" property. + + + + path is null or empty. + + + + propertyToSet is null. + + + + + + Gets the dynamic propery parameters required by the set-itemproperty cmdlet. + This feature is not required by the File System provider. + + + + If the path was specified on the command line, this is the path + to the item for which to set the dynamic parameters. + + + + A PSObject which contains a collection of the name, type, value + of the properties to be set. + + + + Null. This feature is not required by the File System provider. + + + + + + Clears the specified properties on the item at the given path. + The File System provider supports only the "Attributes" property. + + + + The path of the item on which to clear the properties. + + + + A collection of the names of the properties to clear. The File System + provider supports clearing only the "Attributes" property. + + + + Path is null or empty. + + + + propertiesToClear is null or count is zero. + + + + + Gets the dynamic propery parameters required by the clear-itemproperty cmdlet. + This feature is not required by the File System provider. + + + + If the path was specified on the command line, this is the path + to the item for which to set the dynamic parameters. + + + + A collection of the names of the properties to clear. + + + + Null. This feature is not required by the File System provider. + + + + + Creates an instance of the FileSystemContentStream class, opens + the specified file for reading, and returns the IContentReader interface + to it. + + + + The path of the file to be opened for reading. + + + + An IContentReader for the specified file. + + + + path is null or empty. + + + + + Gets the dynamic propery parameters required by the get-content cmdlet. + + + + If the path was specified on the command line, this is the path + to the item for which to get the dynamic parameters. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Creates an instance of the FileSystemContentStream class, opens + the specified file for writing, and returns the IContentReader interface + to it. + + + + The path of the file to be opened for writing. + + + + An IContentWriter for the specified file. + + + + path is null or empty. + + + + + Gets the dynamic propery parameters required by the set-content and + add-content cmdlets. + + + + If the path was specified on the command line, this is the path + to the item for which to get the dynamic parameters. + + + + An object that has properties and fields decorated with + parsing attributes similar to a cmdlet class. + + + + + Clears the content of the specified file. + + + + The path to the file of which to clear the contents. + + + + path is null or empty. + + + + + Gets the dynamic propery parameters required by the clear-content cmdlet. + + + + If the path was specified on the command line, this is the path + to the item for which to get the dynamic parameters. + + + + A FileSystemClearContentDynamicParameters that provides access to the -Stream dynamic parameter. + + + + + -raw is not allowed when -first,-last or -wait is specified + this call will validate that and throws. + + + + + WNetAddConnection2 API makes a connection to a network resource + and can redirect a local device to the network resource. + This API simulates the "new Use" funcationality used to connect to + network resource. + + + The The netResource structure contains information + about a network resource. + + The passward used to get connected to network resource. + + + The username used to get connected to network resource. + + + The flags paramter is used to indicate if the created network + resource has to be persisted or not. + + If connection is established to the network resource + then success is returned or else the error code describing the + type of failure that occured while establishing + the connection is returned. + + + + WNetCancelConnection2 function cancels an existing network connection. + + + PSDrive Name. + + + Connection Type. + + + Specifies whether the disconnection should occur if there are open files or jobs + on the connection. If this parameter is FALSE, the function fails + if there are open files or jobs. + + If connection is removed then success is returned or + else the error code describing the type of failure that occured while + trying to remove the connection is returned. + + + + + WNetGetConnection function retrieves the name of the network resource associated with a local device. + + + Local name of the PSDrive. + + + The remote name to which the PSDrive is getting mapped to. + + + length of the remote name of the created PSDrive. + + + + + + Facilitates to validate if the supplied path exists locally or on the network share. + + + Path of the file being executed. + + True if the path is a network path or else returns false. + + + + The function can obtain the current mapping for a particular MS-DOS device name. + + If lpDeviceName is non-NULL, the function retrieves information about the particular MS-DOS device specified by lpDeviceName. + The first null-terminated string stored into the buffer is the current mapping for the device. + The other null-terminated strings represent undeleted prior mappings for the device. + + + The particular MS-DOS device name. + + + The buffer to receive the result of the query. + + + The maximum number of characters that can be stored into the buffer + + + + + + Creates a symbolic link using the native API. + + Path of the symbolic link. + Path of the target of the symbolic link. + 0 for destionation as file and 1 for destination as directory. + 1 on successful creation. + + + + Creates a hard link using the native API. + + Name of the hard link. + Path to the target of the hard link + + + + + + Managed equivalent of NETRESOURCE structure of WNet API + + + + + Gets the SecurityDescriptor at the specified path, including only the specified + AccessControlSections. + + + + The path of the item to retrieve. It may be a drive or provider-qualified path and may include. + glob characters. + + + + The sections of the security descriptor to include. + + + + Nothing. An object that represents the security descriptor for the item + specified by path is written to the context's pipeline. + + + + path is null or empty. + path doesn't exist + sections is not valid. + + + + + Sets the SecurityDescriptor at the specified path. + + + + The path of the item to set the security descriptor on. + It may be a drive or provider-qualified path and may include. + glob characters. + + + + The new security descriptor for the item. + + + + path is null or empty. + + + + securitydescriptor is null. + + + + + Creates a new empty security descriptor of the same type as + the item specified by the path. If "path" points to a file system directory, + then the descriptor returned will be of type DirectorySecurity. + + + + Path of the item to use to determine the type of resulting + SecurityDescriptor. + + + + The sections of the security descriptor to create. + + + + A new ObjectSecurity object of the same type as + the item specified by the path. + + + + + Creates a new empty security descriptor of the specified type. + + + + The type of Security Descriptor to create. Valid types are + "file", "directory," and "container." + + + + The sections of the security descriptor to create. + + + + A new ObjectSecurity object of the specified type. + + + + + + Defines the values that can be supplied as the encoding parameter in the + FileSystemContentDynamicParametersBase class. + + + + + No encoding. + + + + + Unicode encoding. + + + + + Unicode encoding. + + + + + Byte encoding. + + + + + Big Endian Unicode encoding. + + + + + UTF8 encoding. + + + + + UTF7 encoding. + + + + + UTF32 encoding. + + + + + ASCII encoding. + + + + + Default encoding. + + + + + OEM encoding. + + + + + Big Endian UTF32 encoding. + + + + + Defines the container cmdlet dynamic providers + + + + + Gets or sets the attribute filtering enum evaluator + + + + + Gets or sets the filter directory flag + + + + + Gets or sets the filter file flag + + + + + Gets or sets the filter hidden flag + + + + + Gets or sets the filter readonly flag + + + + + Gets or sets the filter system flag + + + + + Defines the dynamic parameters used by both the content reader and writer. + + + + + Gets or sets the encoding method used when + reading data from the file. + + + + + A parameter to return a stream of an item. + + + + + Default to getting a unicode string + + + + + Gets the encoding from the specified StreamType parameter. + + + + + Converts the stream type string into an Encoding + + + + This is a string representation of the encoding. It can be + "string", "unicode", "bigendianunicode", "ascii", "utf7", or "utf8" + + Note, a ToLowerInvariant is done to the type before comparison is made. + + + + The encoding that was represented by the string + + + + ArgumentException if type is null, empty, or does not represent one + of the known encoding types. + + + + + Gets the Byte Encoding status of the StreamType parameter. Returns true + if the stream was opened with "Byte" encoding, false otherwise. + + + + + Gets the status of the StreamType parameter. Returns true + if the stream was opened with a user-specified encoding, false otherwise. + + + + + Defines the dynamic parameters used by the Clear-Content cmdlet. + + + + + A parameter to return a stream of an item. + + + + + Defines the dynamic parameters used by the set-content and + add-content cmdlets. + + + + + False to add a newline to the end of the output string, true if not. + + + + + Defines the dynamic parameters used by the get-content cmdlet. + + + + + Gets or sets the delimiter to use when reading the file. Custom delimiters + may not be used when the file is opened with a "Byte" encoding. + + + + + Gets or sets the Wait flag. The wait flag determines if we want + the read-content call to poll (and wait) for changes to the file, + rather than exit after the content has been read. + + + + + When the –Raw switch is present, we don’t do any breaks on newlines, + and only emit one object to the pipeline: all of the content. + + + + + Gets the status of the delimiter parameter. Returns true + if the delimiter was explicitly specified by the user, false otherwise. + + + + + Provides the dynamic parameters for test-path on the file system. + + + + + A parameter to test if a file is older than a certain time or date. + + + + + A parameter to test if a file is newer than a certain time or date + + + + + Provides the dynamic parameters for Get-Item on the file system. + + + + + A parameter to return the streams of an item. + + + + + Provides the dynamic parameters for Remove-Item on the file system. + + + + + A parameter to return the streams of an item. + + + + + Class to find the symbolic link target. + + + + + Gets the target of the specified reparse point. + + The object of FileInfo or DirectoryInfo type. + The target of the reparse point + + + + Gets the link type of the specified reparse point. + + The object of FileInfo or DirectoryInfo type. + The link type of the reparse point. SymbolicLink for symbolic links. + + + + This provider is the data accessor for shell functions. It uses + the SessionStateProviderBase as the base class to produce a view on + session state data. + + + + + Gets the name of the provider + + + + + The constructor for the provider that exposes variables to the user + as drives. + + + + + Initializes the function drive + + + + An array of a single PSDriveInfo object representing the functions drive. + + + + + + Gets the dynamic parameters for the NewItem cmdlet + + + + Ignored. + + + + Ignored. + + + + Ignored. + + + + An instance of FunctionProviderDynamicParameters which is the dynamic parameters for + NewItem. + + + + + + Gets the dynamic parameters for the NewItem cmdlet + + + + Ignored. + + + + Ignored. + + + + An instance of FunctionProviderDynamicParameters which is the dynamic parameters for + SetItem. + + + + + + Gets a function from session state + + + + The name of the function to retrieve. + + + + A ScriptBlock that represents the function. + + + + + + Sets the function of the specified name to the specified value + + + + The name of the function to set. + + + + The new value for the function. + + + + If true, the item that was set should be written to WriteItemObject. + + + + + + Removes the specified function from session state. + + + + The name of the function to remove from session state. + + + + + + Since items are often more than their value, this method should + be overridden to provide the value for an item + + + + The item to extract the value from. + + + + The value of the specified item. + + + + The default implementation will get + the Value property of a DictionaryEntry + + + + + + Gets a flattened view of the functions in session state + + + + An IDictionary representing the flattened view of the functions in + session state. + + + + + + Determines if the item can be renamed. Derived classes that need + to perform a check should override this method. + + + + The item to verify if it can be renamed. + + + + true if the item can be renamed or false otherwise. + + + + + + The dynamic parameter object for the FunctionProvider SetItem and NewItem commands + + + + + Gets or sets the option parameter for the function + + + + + + Determines if the Options parameter was set. + + + + + + This is the base class for all the providers that produce a view + on session state data (Variables, Aliases, and Functions) + + + + + An instance of the PSTraceSource class used for trace output + + + + + Derived classes must override to get items from session state + + + + The name of the item to get. + + + + The item of the given name in the appropriate session state table. + + + + + + Sets a session state item in the appropriate session state table. + Derived classes must override this method to set the item in the + proper table. + + + + The name of the item to set. + + + + The new value for the item. + + + + If true, the item that was set should be written to WriteItemObject. + + + + + + Removes a session state item from the appropriate session state table. + Derived classes must override this method to remove items from the + proper table. + + + + The name of the item to remove. + + + + + + Gets all the items in the appropriate session state table. + + + + An IDictionary representing the items in the session state table. + The key is the name of the item and the value is the value. + + + + + + Since items are often more than their value, this method should + be overridden to provide the value for an item + + + + The item to extract the value from. + + + + The value of the specified item. + + + + The default implementation will get + the Value property of a DictionaryEntry + + + + + + Determines if the item can be renamed. Derived classes that need + to perform a check should override this method. + + + + The item to verify if it can be renamed. + + + + true if the item can be renamed or false otherwise. + + + + + + Gets an item from session state. + + + + Name of the item to get. + + + + The item instance is written to the WriteObject + method. + + + + + + Sets a session state item to a given value + + + + Name of the item to set + + + + The value to which to set the item + + + + Nothing. The item that was set is written to the + WriteObject method. + + + + + + + + + + + + Gets the item(s) at the given path + + + + The name of the item to retrieve, or all if empty or null. + + + + Ignored. + + + + + + Gets the name(s) of the item(s) at the given path + + + + The name of the item to retrieve, or all if empty or null. + + + + Ignored. + + + + + + Determines if there are any items + + + + The container to check to see if there are any children. + + + + True if path is empty or null, false otherwise. + + + + + + Determines if the specified item exists + + + + The path to the item to check. If this is null or empty, the item + container is used (and always exists). + + + + True if the item exists, false otherwise. + + + + + + Determines if the specified path is syntactically and semantically valid. + + + + The path to validate. + + + + True if the path is valid, or false otherwise. + + + + The path may not contain the following characters: + . ( ) : + + + + + + Removes the item at the specified path. + + + + The name of the item to be removed. + + + + Ignored. + + + + + + Creates a new item if one of the same name doesn't already exist. + + + + The name of the item to create. + + + + Ignored. + + + + The value of the new item. + + + + + + Copies the specified item. + + + + The name of the item to copy. + + + + The name of the item to create. + + + + Ignored. + + + + + + Copies the specified item. + + + + The name of the item to copy. + + + + The new name of the item. + + + + + + Gets an instance of the content reader for this provider for the + specified path. + + + + The path to get the content reader for. + + + + An instance of an IContentReader for the given path. + + + + + + Gets an instance of the content writer for this provider for the + specified path. + + + + The path to get the content writer for. + + + + An instance of an IContentWriter for the given path. + + + + + + Always throws a NotSupportedException + + + + ignored. + + + + This exception is always thrown. + + + + + + Always returns null + + + null + + + + + Always returns null + + + null + + + + + Always returns null + + + null + + + + + The content reader/writer for all providers deriving from SessionStateProviderBase + + + + + + Constructs a content reader/writer for the specified provider using the specified + path to read or write the content + + + + The path to the session state item which the content will be read or written. + + + + The SessionStateProviderBase derived provider that the content will be read or written + from/to. + + + + if is null or empty. + + + + If is null. + + + + + + Reads the content from the item + + + + The number of "blocks" of data to be read from the item. + + + + An array of the blocks of data read from the item. + + + + A "block" of content is provider specific. For the file system + a "block" may be considered a byte, a character, or delimited string. + + + + + + Writes content to the item. + + + + An array of content "blocks" to be written to the item. + + + + The blocks of content that were successfully written to the item. + + + + A "block" of content is provider specific. For the file system + a "block" may be considered a byte, a character, or delimited string. + + + + + + None of the derived providers supports seeking for V1 so this + always throws a NotSupportedException + + + + ignored + + + + ignored + + + + This exception is always thrown. + + + + + + Closes the reader. None of the derived providers need to + close their reader so do nothing. + + + + + + Closes the reader. None of the derived providers need to + close their reader so do nothing. + + + + + + This provider is the data accessor for shell variables. It uses + the HashtableProvider as the base class to get a hashtable as + a data store. + + + + + Gets the name of the provider + + + + + The constructor for the provider that exposes variables to the user + as drives. + + + + + Initializes the variables drive + + + + An array of a single PSDriveInfo object representing the variables drive. + + + + + + Gets a variable from session state + + + + The name of the variable to retrieve. + + + + A PSVariable that represents the variable. + + + + + + Sets the variable of the specified name to the specified value + + + + The name of the variable to set. + + + + The new value for the variable. + + + + If true, the item that was set should be written to WriteItemObject. + + + + + + Removes the specified variable from session state. + + + + The name of the variable to remove from session state. + + + + + + Gets a flattened view of the variables in session state + + + + An IDictionary representing the flattened view of the variables in + session state. + + + + + + Gets the value of the item that is returned from GetItem by + extracting the PSVariable value. + + + + The item to extract the value from. + + + + The value of the specified item. + + + + + + Determines if the item can be renamed. Derived classes that need + to perform a check should override this method. + + + + The item to verify if it can be renamed. + + + + true if the item can be renamed or false otherwise. + + + + + + Defines the valid purposes by which + we can filter certificates. + + + + + Certificates where a purpose has not been specified. + + + + + Certificates that can be used to sign + code and scripts. + + + + + Certificates that can be used to encrypt + data. + + + + + Certificates that can be used for any + purpose. + + + + + The enum used by commands to allow the user to specify how + a file (or other item) should be opened. + + + + + + This opens the file for appending (similar to FileMode.Append) + + + + + The file must be created new. If the file exists it is an error (similar to FileMode.CreateNew) + + + + + Creates a new file, if the file already exists it is overwritten (similar to FileMode.Create) + + + + + Base class for all the pssnapin related cmdlets. + + + + + Set to true when object is disposed + + + + + + Dispose method unloads the app domain and the + resource reader if it was created. + + + + + + Disposes the resource reader. + + + + + + Runspace configuration for the current engine + + + PSSnapIn cmdlets need object to work with. + + + + + Writes a non-terminating error onto the pipeline. + + Object which caused this exception. + ErrorId for this error. + Complete exception object. + ErrorCategory for this exception. + + + + Searches the input list for the pattern supplied. + + Input list + pattern with wildcards + + A collection of string objects (representing PSSnapIn name) + that match the pattern. + + + Please note that this method will use WildcardPattern class. + So it wont support all the 'regex' patterns + + + + + See if the snapin is already loaded..returns load snapin info if true, null otherwise. + + + + + + Routine to get the list of loaded snapins... + + + + + + Use to indicate if all registered snapins should be listed by GetSnapins... + + + + + A single instance of the resource indirect reader. This is used to load the + managed resource assemblies in a different app-domain so that they can be unloaded. + For perf reasons we only want to create one instance for the duration of the command + and be sure it gets disposed when the command completes. + + + + + + Class that implements add-pssnapin cmdlet. + + + + + Property that gets/sets PSSnapIn Ids for the cmdlet. + + An array of strings representing PSSnapIn ids. + + + + Gets or sets the Passthru flag for the operation. + If true, the PSSnapInInfo object is passed down the + output pipeline. + + + + + Adds pssnapins to console file and loads the pssnapin dlls into + the current monad runtime. + + + The new pssnapin information is not stored in the console file until + the file is saved. + + + + + Adds one or more snapins + + List of snapin IDs + + This is a helper method and should not throw any + exceptions. All exceptions are caught and displayed + to the user using write* methods + + + + + Class that implements remove-pssnapin cmdlet. + + + + + Property that gets/sets PSSnapIn Ids for the cmdlet. + + An array of strings representing PSSnapIn ids. + + + + Gets or sets the Passthru flag for the operation. + If true, the PSSnapInInfo object is also passed + down the output pipeline. + + + + + Removes pssnapins from the current console file. + + + The pssnapin is not unloaded from the current engine. So all the cmdlets that are + represented by this pssnapin will continue to work. + + + + + Class that implements get-pssnapin cmdlet. + + + + + Name(s) of PSSnapIn(s). + + + + + Property that determines whether to get all pssnapins that are currently + registered ( in registry ). + + + A boolean that determines whether to get all pssnapins that are currently + registered ( in registry ). + + + + + Constructs PSSnapInfo objects as requested by the user and writes them to the + output buffer. + + + + + Base class for all the Console related cmdlets. + + + + + Runspace configuration for the current engine + + + Console cmdlets need object to work with. + + + + + InitialSessionState for the current engine + + + + + Throws a terminating error. + + Object which caused this exception. + ErrorId for this error. + Complete exception object. + ErrorCategory for this exception. + + + + Class that implements export-console cmdlet. + + + + + Property that gets/sets console file name. + + + If a parameter is not supplied then the file represented by $console + will be used for saving. + + + + + Property that sets force parameter. This will reset the read-only + attribute on an existing file before deleting it. + + + + + Property that prevents file overwrite. + + + + + Saves the current console info into a file. + + + + + Removes file specified by destination + + Absolute path of the file to be removed. + + + + Resolves the specified path and verifies the path belongs to + FileSystemProvider. + + Path to resolve + A fully qualified string representing filename. + + + + Resolves the specified path to PathInfo objects + + + + The path to be resolved. Each path may contain glob characters. + + + + If true, resolves the path even if it doesn't exist. + + + + The context under which the command is running. + + + + A string representing the resolved path. + + + + + + Gets the filename for the current operation. If Name parameter is empty + checks $console. If $console is not present, prompts user? + + + A string representing filename. + If filename cannot be deduced returns null. + + + 1. $console points to an PSObject that cannot be converted to string. + + + + + Prompt user for filename. + + + User input in string format. + If user chooses not to export, an empty string is returned. + + No exception is thrown + + + + Represents a a string that can be used in transactions. + + + + + Constructor for the TransactedString class. + + + + + Constructor for the TransactedString class. + + + The initial value of the transacted string. + + + + + + Make the transacted changes permanent. + + + + + Discard the transacted changes. + + + + + Discard the transacted changes. + + + + + Append text to the transacted string. + + + The text to append. + + + + + + Remove text from the transacted string. + + + The position in the string from which to start removing. + + + The length of text to remove. + + + + + + Gets the length of the transacted string. If this is + called within the transaction, it returns the length of + the transacted value. Otherwise, it returns the length of + the original value. + + + + + Gets the System.String that represents the transacted + transacted string. If this is called within the + transaction, it returns the transacted value. + Otherwise, it returns the original value. + + + + + Contains auxilliary ToString CodeMethod implementations for some types + + + Contains auxilliary ToString CodeMethod implementations for some types + + + + + ToString implementation for Type + + instance of PSObject wrapping a Type + + + + ToString implementation for XmlNode + + instance of PSObject wrapping an XmlNode + + + + ToString implementation for XmlNodeList + + instance of PSObject wrapping an XmlNodeList + + + + ToString implementation for PropertyValueCollection + + instance of PSObject wrapping a PropertyValueCollection + + + + Contains CodeMethod implementations for some adapted types like: + + 1. DirectoryEntry Related Code Methods + (a) Convert from DE LargeInteger to Int64. + (b) Convert from DE Dn-With-Binary to string. + + + + + Converts instance of LargeInteger to .net Int64. + + Instance of PSObject wrapping DirectoryEntry object + Instance of PSObject wrapping LargeInteger instance + Converted Int64. + + + + Converts instance of DN-With-Binary to .net String + + Instance of PSObject wrapping DirectoryEntry object + Instance of PSObject wrapping DN-With-Binary object + Converted string. + + + + This is the default host implementing PSHost offering minimal host capabilities. + Runspace is the primary user of this class. + + + + + Creates an instance based on the current culture and current UI culture + + Current culture for this host + Current UI culture for this host + + + + + + See base class + + + + + + + + + See base class + + + + + + + + + See base class + + + + + + + + + See base class + This property is not supported + + + + + + + + + See base class + + + + + + + + + See base class + + + + + + + + + See base class + + + + + + + + + See base class + + + + + + On calling this method + + + + + + + See base class + + + + + + On calling this method + + + + + + + See base class + + + + + + + + + See base class + + + + + + + + Custom culture + + + + + Constructs a CultureInfo that keeps track of fallbacks + + Name of the culture to construct. + + ordered,null-delimited list of fallbacks + + + + + Returns Parent culture for the current CultureInfo. + If Parent.Name is null or empty, then chooses the immediate fallback + If it is not empty, otherwise just returns Parent. + + + + + This is called to create the parent culture (as defined by CLR) + of the current culture. + + + + + Clones the custom CultureInfo retaining the fallbacks. + + Cloned custom CultureInfo + + + + Static wrappers to get User chosen UICulture (for Vista and later) + + + + + Gets the UICulture to be used by console host + + + + + Constructs CultureInfo object without considering any Vista and later + custom culture fallback logic. + + A CultureInfo object + + + + Checks if the current operating system is Vista or later + + + true, if vista and above + false, otherwise. + + + + + This method is called on vista and above. + Using GetThreadPreferredUILanguages this method gets + the UI languages a user has chosen. + + + List of ThredPreferredUILanguages. + + + This method will work only on Vista and later. + + + + + Returns the locale identifier for the user default locale. + + + + This function can return data from custom locales. Locales are not + guaranteed to be the same from computer to computer or between runs + of an application. If your application must persist or transmit data, + see Using Persistent Locale Data. + Applications that are intended to run only on Windows Vista and later + should use GetUserDefaultLocaleName in preference to this function. + GetUserDefaultLocaleName provides good support for supplemental locales. + However, GetUserDefaultLocaleName is not supported for versions of Windows + prior to Windows Vista. + + + + + Retrieves the user default locale name. + + + + + Returns the size of the buffer containing the locale name, including + the terminating null character, if successful. The function returns 0 + if it does not succeed. To get extended error information, the applciation + can call GetLastError. Possible returns from GetLastError + include ERR_INSUFFICIENT_BUFFER. + + + + + + + + Rehydrating type converter used during deserialization. + It takes results of serializing some common types + and rehydrates them back from property bags into live objects. + + + + + + Determines if the converter can convert the parameter to the parameter. + + The value to convert from + The type to convert to + True if the converter can convert the parameter to the parameter, otherwise false. + + + + Converts the parameter to the parameter using formatProvider and ignoreCase + + The value to convert from + The type to convert to + The format provider to use like in IFormatable's ToString + true if case should be ignored + the parameter converted to the parameter using formatProvider and ignoreCase + if no conversion was possible + + + + Returns true if the converter can convert the parameter to the parameter + + The value to convert from + The type to convert to + True if the converter can convert the parameter to the parameter, otherwise false. + + + + Converts the parameter to the parameter using formatProvider and ignoreCase + + The value to convert from + The type to convert to + The format provider to use like in IFormatable's ToString + true if case should be ignored + sourceValue converted to the parameter using formatProvider and ignoreCase + if no conversion was possible + + + + This method is not implemented - an overload taking a PSObject is implemented instead + + + + + This method is not implemented - an overload taking a PSObject is implemented instead + + + + + This method is not implemented - an overload taking a PSObject is implemented instead + + + + + This method is not implemented - an overload taking a PSObject is implemented instead + + + + + Gets value of a property (has to be present, value has to be non-null). + Can throw any exception (which is ok - LanguagePrimitives.ConvertTo will catch that). + + Expected type of the property + Deserialized object + Property name + + + + + Gets value of a property. Can throw any exception (which is ok - LanguagePrimitives.ConvertTo will catch that). + + Expected type of the property + Deserialized object + Property name + + + + + + Gets the boolean properties of ParameterSetMetadata object encoded as an integer + + + The PSObject for which to obtain the flags + + + Boolean properties of ParameterSetMetadata object encoded as an integer + + + + + Gets the full remoting serialized PSObject for the InvocationInfo property + of the DebuggerStopEventArgs type. + + InvocationInfo instance. + PSObject containing seralized InvocationInfo. + + + + Gets the boolean properties of ParameterSetMetadata object encoded as an integer + + + The PSObject for which to obtain the flags + + + Boolean properties of ParameterSetMetadata object encoded as an integer + + + + + Defines the different Execution Policies supported by the + PSAuthorizationManager class. + + + + + Unrestricted - No files must be signed. If a file originates from the + internet, Monad provides a warning prompt to alert the user. To + supress this warning message, right-click on the file in File Explorer, + select "Properties," and then "Unblock." + + + RemoteSigned - Only .msh and .mshxml files originating from the internet + must be digitally signed. If remote, signed, and executed, Monad + prompts to determine if files from the signing publisher should be + run or not. This is the default setting. + + + AllSigned - All .msh and .mshxml files must be digitally signed. If + signed and executed, Monad prompts to determine if files from the + signing publisher should be run or not. + + + Restricted - All .msh files are blocked. Mshxml files must be digitally + signed, and by a trusted publisher. If you haven't made a trust decision + on the publisher yet, prompting is done as in AllSigned mode. + + + Bypass - No files must be signed, and internet origin is not verified + + + Undefined - Not specified at this scope + + + + Default - The most restrictive policy available. + + + + + Defines the available configuration scopes for an execution + policy. They are in the following priority, with successive + elements overriding the items that precede them: + LocalMachine -> CurrentUser -> Runspace + + + + + Execution policy is retrieved from the + PSExecutionPolicyPreference environment variable. + + + Execution policy is retrieved from the HKEY_CURRENT_USER + registry hive for the current ShellId. + + + Execution policy is retrieved from the HKEY_LOCAL_MACHINE + registry hive for the current ShellId. + + + Execution policy is retrieved from the current user's + group policy setting. + + + Execution policy is retrieved from the machine-wide + group policy setting. + + + + Defines the authorization policy that controls the way scripts + (and other command types) are handled by Monad. This authorization + policy enforces one of four levels, as defined by the 'ExecutionPolicy' + value in one of the following locations: + + In priority-order (highest priority first,) these come from: + + - Machine-wide Group Policy + HKLM\Software\Policies\Microsoft\Windows\PowerShell + - Current-user Group Policy + HKCU\Software\Policies\Microsoft\Windows\PowerShell. + - Current session preference + ENV:PSExecutionPolicyPreference + - Current user machine preference + HKEY_CURRENT_USER\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell + - Local machine preference + HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell + + Restricted - All .ps1 files are blocked. ps1xml files must be digitally + signed, and by a trusted publisher. If you haven't made a trust decision + on the publisher yet, prompting is done as in AllSigned mode. + AllSigned - All .ps1 and .ps1xml files must be digitally signed. If + signed and executed, Monad prompts to determine if files from the + signing publisher should be run or not. + RemoteSigned - Only .ps1 and .ps1xml files originating from the internet + must be digitally signed. If remote, signed, and executed, Monad + prompts to determine if files from the signing publisher should be + run or not. This is the default setting. + Unrestricted - No files must be signed. If a file originates from the + internet, Monad provides a warning prompt to alert the user. To + supress this warning message, right-click on the file in File Explorer, + select "Properties," and then "Unblock." + Bypass - No files must be signed, and internet origin is not verified + + + + + + Initializes a new instance of the PSAuthorizationManager + class, for a given ShellId. + + + The shell identifier that the authorization manager applies + to. For example, Microsoft.PowerShell + + + + + Trust a publisher by adding it to the "Trusted Publishers" store + + + + + + Determines if should run the specified command. Please see the + class summary for an overview of the semantics enforced by this + authorization manager. + + + + The command to be run. + + + The origin of the command. + + + The PSHost executing the command. + + + If access is denied, this parameter provides a specialized + Exception as the reason. + + + + True if the command should be run. False otherwise. + + + + CommandInfo is invalid. This may occur if + commandInfo.Name is null or empty. + + + + CommandInfo is null. + + + + The file specified by commandInfo.Path is not found. + + + + + helper class for secure string related functionality + + + + + + Create a new SecureString based on the specified binary data. + + The binary data must be byte[] version of unicode char[], + otherwise the results are unpredictable. + + + input data + + a SecureString + + + + + get the contents of a SecureString as byte[] + + + input string + + contents of s (char[]) converted to byte[] + + + + + Encode the specified byte[] as a unicode string. + + Currently we use simple hex encoding but this + method can be changed to use a better encoding + such as base64. + + + binary data to encode + + a string representing encoded data + + + + + Convert a string obtained using ByteArrayToString() + back to byte[] format. + + + encoded input string + + bin data as byte[] + + + + + return contents of the SecureString after encrypting + using DPAPI and encoding the encrypted blob as a string + + + SecureString to protect + + a string (see summary) + + + + + Decrypts the specified string using DPAPI and return + equivalent SecureString. + + The string must be obtained earlier by a call to Protect() + + + encrypted string + + SecureString + + + + + return contents of the SecureString after encrypting + using the specified key and encoding the encrypted blob as a string + + + input string to encrypt + + encryption key + + a string (see summary) + + + + + + + return contents of the SecureString after encrypting + using the specified key and encoding the encrypted blob as a string + + + input string to encrypt + + encryption key + + a string (see summary) + + + + + + + Decrypts the specified string using the specified key + and return equivalent SecureString. + + The string must be obtained earlier by a call to Encrypt() + + + encrypted string + + encryption key + + encryption initialization vector. If this is set to null, the method uses internally computed strong random number as IV + + SecureString + + + + + Decrypts the specified string using the specified key + and return equivalent SecureString. + + The string must be obtained earlier by a call to Encrypt() + + + encrypted string + + encryption key + + encryption initialization vector. If this is set to null, the method uses internally computed strong random number as IV + + SecureString + + + + + Helper class to return encryption results, and the IV used to + do the encryption + + + + + + Gets the encrypted data + + + + + Gets the IV used to encrypt the data + + + + + + MshCoreMshSnapin (or MshCoreMshSnapinInstaller) is a class for facilitating registry + of necessary information for monad core mshsnapin. + + This class will be built with monad core engine dll + (System.Management.Automation.dll). + + + + + + + Create an instance of this class. + + + + + Get name of this mshsnapin. + + + + + Get the default vendor string for this mshsnapin. + + + + + Get resource information for vendor. This is a string of format: resourceBaseName,resourceName. + + + + + Get the default description string for this mshsnapin. + + + + + Get resource information for description. This is a string of format: resourceBaseName,resourceName. + + + + + Get type files to be used for this mshsnapin. + + + + + Get format files to be used for this mshsnapin. + + + + + + + + + Public API to expose Telemetry in PowerShell + Provide meaningful message. Ex: PSCONSOLE_START, PSRUNSPACE_START + arguments are of anonymous type. Ex: new { PSVersion = "5.0", PSRemotingProtocolVersion = "2.2"} + + + + + Information about invocation of a method in an object model wrapped by an instance of + + + + + Creates a new instance of MethodInvocationInfo + + Name of the method to invoke + Method parameters + Return value of the method (ok to pass null if the method doesn't return anything) + + + + Name of the method to invoke + + + + + Method parameters + + + + + Return value of the method. Can be null if the method doesn't return anything. + + + + + Describes how to handle the method parameter. + + + + + Bind value of a method parameter based on arguments of a cmdlet parameter + + + + + Method invocation is expected to set the value of the method parameter. Cmdlet should emit the value of method parameter to the downstream pipe. + + + + + Method invocation is expected to set the value of the method parameter. Cmdlet should emit a non-terminating error when the value evaluates to $true. + + + + + Parameter of a method in an object model wrapped by + + + + + Name of the method parameter + + + + + Type of the parameter (as seen in the PowerShell layer on the client) + + + + + Contents of the ETS type attribute in the CDXML file (or null if that attribute was not specified). + The expectation is that the CmdletAdapter will stamp this value onto PSTypeNames of emitted objects. + + + + + Bindings of the method parameter (in/out/error) + + + + + Value of the argument of the method parameter + + + + + Whether the value is 1) an explicit default (*) or 2) has been bound from cmdlet parameter + (*) explicit default = whatever was in DefaultValue attribute in Cmdletization XML + + + + + Collection of method parameters and their arguments + used to invoke a method in an object model wrapped by + + + + + Creates an empty collection of method parameters + + + + + Gets key for a method parameter + + + + + + + Describes whether to report errors when a given filter doesnt match any objects + + + + + Default behavior is to be consistent with the built-in cmdlets: + - When a wildcard is specified, then no errors are reported (i.e. Get-Process -Name noSuchProcess*) + - When no wildcard is specified, then errors are reported (i.e. Get-Process -Name noSuchProcess) + + Note that the following conventions are adpoted: + - Min/max queries + ( and + ) + are treated as wildcards + - Exclusions + () + are treated as wildcards + - Associations + () + are treated as not a wildcard + + + + + ReportErrors forces reporting of errors that in other circumstances would be reported if no objects matched the filters + + + + + SilentlyContinue suppresses errors that in other circumstances would be reported if no objects matched the filters + + + + + QueryBuilder supports building of object model queries in an object-model-agnostic way + + + + + Modifies the query, so that it only returns objects with a given property value + + Property name to query on + Property values to accept in the query + + true if should be treated as a containing a wildcard pattern; + false otherwise + + + Describes how to handle filters that didn't match any objects + + + + + Modifies the query, so that it does not return objects with a given property value + + Property name to query on + Property values to reject in the query + + true if should be treated as a containing a wildcard pattern; + false otherwise + + + Describes how to handle filters that didn't match any objects + + + + + Modifies the query, so that it returns only objects that have a property value greater than or equal to a threshold + + Property name to query on + Minimum property value + + Describes how to handle filters that didn't match any objects + + + + + Modifies the query, so that it returns only objects that have a property value less than or equal to a threshold + + Property name to query on + Maximum property value + + Describes how to handle filters that didn't match any objects + + + + + Modifies the query, so that it returns only objects associated with + + object that query results have to be associated with + name of the association + name of the role that has in the association + name of the role that query results have in the association + + Describes how to handle filters that didn't match any objects + + + + + Sets a query option + + + + + + + ObjectModelWrapper integrates OM-specific operations into generic cmdletization framework. + For example - CimCmdletAdapter knows how to invoke a static method "Foo" in the CIM OM. + + Type that represents instances of objects from the wrapped object model + + + + Class constructor + + + + + + + + + + When overridden in the derived class, creates a query builder for a given object model + + Query builder for a given object model + + + + Queries for object instances in the object model. + + Query parameters + A lazy evaluated collection of object instances + + + + When overridden in the derived class, performs initialization of cmdlet execution. + Default implementation in the base class just returns. + + + + + When overridden in the derived class, performs cleanup after cmdlet execution. + Default implementation in the base class just returns. + + + + + When overridden in the derived class, interrupts currently + running code within the . + Default implementation in the base class just returns. + + + The PowerShell engine will call this method on a separate thread + from the pipeline thread where BeginProcessing, EndProcessing + and other methods are normally being executed. + + + + + Invokes an instance method in the object model. + + The object on which to invoke the method + Method invocation details + true if successful method invocations should emit downstream the being operated on + + + + Combines and . + + Query parameters + Method invocation details + true if successful method invocations should emit downstream the object instance being operated on + + + + Invokes a static method in the object model. + + Method invocation details + + + + Cmdlet that this ObjectModelWrapper is associated with. + + + + + Name of the class (from the object model handled by this ObjectModelWrapper) that is wrapped by the currently executing cmdlet + + + + + Name of the class (from the object model handled by this ObjectModelWrapper) that is wrapped by the currently executing cmdlet. + This value can be null (i.e. when ClassVersion attribute is omitted in the ps1xml) + + + + + Module version + + + + + Private data from Cmdlet Definition XML (from <ObjectModelWrapperPrivateData> element) + + + + + Translates a into a like-operand for WQL. + + + Documentation on MSDN (http://msdn.microsoft.com/en-us/library/aa392263(VS.85).aspx) is + 1) rather slim / incomplete + 2) sometimes incorrect (i.e. says that '=' is used for character ranges, when it should have said '-') + + The code below is therefore mainly based on reverse engineering of admin\wmi\wbem\winmgmt\wbecomn\like.cpp + + + + + Converts into a value of a right-hand-side operand of LIKE operator of a WQL query. + Return value still has to be string-escaped (i.e. by doubling '\'' character), before embedding it into a query. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Adapter that deals with CimInstance objects. + + + Implementing the PropertyOnlyAdapter for the time being as CimInstanceTypeAdapter currently + supports only properties. If method support is needed in future, this should derive from + Adapter class. + + The Adapter registration is done in monad\src\singleshell\installer\MshManagementMshSnapin.cs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Convert Cim Instance representing Resource desired state to Powershell Class Object + + + + + Convert hashtable from Ciminstance to hashtable primitive type + + + + + + + + Convert CIM instance to PS Credential + + + + + + + + + + + + + Store the RunAs Credentials that this DSC resource will use + + + + + If we have implicitly imported this resource, we will set this field to true. This will + only happen to InBox resources. + + + + + A CimClass instance for this resource + + + + + Default constructor to initiale variables with default values + + + + + Constructor used in code to initialze all values + + + + + + + + + + + + + DSC class cache for this runspace. + Cache stores the DSCRunAsBehavior, cim class and boolean to indicate if an Inbox resource has been implicitly imported. + + + + + DSC classname to source module mapper + + + + + DSC filename to defined class mapper + + + + + Filenames from which we have imported script dynamic keywords + + + + + Default ModuleName and ModuleVersion to use + + + + + Default ModuleName and ModuleVersion to use for meta configuration resources + + + + + A set of dynamic keywords that can be used in both configuration and meta configuration. + + + + + When this property is set to true, DSC Cache will cache multiple versions of a resource. + That means it will cache duplicate resource classes (class names for a resource in two different module versions are same). + NOTE: This property should be set to false for DSC compiler related methods/functionality, such as Import-DscResource, + because the Mof serializer does not support deserialization of classes with different versions. + + + + + Initialize the class cache with the default classes in $ENV:SystemDirectory\Configuration. + + + + + Initialize the class cache with the default classes in $ENV:SystemDirectory\Configuration. + + Collection of any errors encountered during initialization. + List of module path from where DSC PS modules will be loaded + + + + Load DSC resources into Cache from moduleFolderPath. + + Collection of any errors encountered during initialization. + Module path from where DSC PS modules will be loaded + + if module is inbox. + + + + + Get the module name and module version + + + Path to the module folder + + + if module is inbox and we are importing resources implicitly + + + Indicate a internal DSC module + + + + + + Import CIM classes from the given file + + + + + + + + + + get text from SecureString + + value of SecureString + decoded string + + + + Clear out the existing collection of CIM classes and associated keywords. + + + + + Returns module qualified resource name in "Module\Version\Class" format. + + + + + + + + + + Finds resources in the that which matches the specified class and module name. + + Module name + Resource type name + Resource friendly name + List of found resources in the form of Dictionary{moduleQualifiedName, cimClass}, otherwise empty list. + + + + + + + + + + Find cached cim classes defined under specified module + + + List of cached cim classes + + + + Get the file that defined this class. + + + + + + + Get a list of files from which classes have been loaded. + + + + + + Returns the classes that we loaded from the specified file name. + + + + + + + Returns the classes associated with the specified module name. + Per PowerShell the module name is the base name of the schema file. + + + + + + + Routine used to load a set of CIM instances from a .mof file using the + current set of cached classes for schema validation. + + The file to load the classes from. + + + + + Routine used to load a set of CIM instances from a .mof file using the + current set of cached classes for schema validation. + + + + + + + + A routine that validates a string contining MOF instances against the + current set of cached classes. + + + + + + Method to get the cached classes in the form of DynamicKeyword. + + + + + A method to generate a keyword from a CIM class object and register it to DynamicKeyword table. + + + + + If true, don't define the keywords, just create the functions. + To Specify RunAsBehavior of the class + + + + A method to generate a keyword from a CIM class object. This is used for DSC. + + + + + If true, don't define the keywords, just create the functions. + To specify RunAs behavior of the class + + + + update range restriction for meta configuration keywords + the restrictions are for + ConfigurationModeFrequency: 15-44640 + RefreshFrequency: 30-44640 + + + + + + Load the default system CIM classes and create the corresponding keywords. + + + + + Load the default system CIM classes and create the corresponding keywords. + + List of module path from where DSC PS modules will be loaded + + + + Load the default system CIM classes and create the corresponding keywords. + + Collection of any errors encountered while loading keywords. + + + + Load the default system CIM classes and create the corresponding keywords. + A dictionary to add the defined functions to, may be null + + + + + Load the default system CIM classes and create the corresponding keywords. + + Collection of any errors encountered while loading keywords. + Allow caching the resources from multiple versions of modules. + + + + Load the default system CIM classes and create the corresponding keywords. + + A dictionary to add the defined functions to, may be null + Collection of any errors encountered while loading keywords. + List of module path from where DSC PS modules will be loaded + Allow caching the resources from multiple versions of modules + + + + Load DSC resources from specified module. + + Script statement loading the module, can be null + Module information, can be null. + Name of the resource to be loaded from module + List of errors reported by the method + + + + + + + + + The list of resources imported from this module. + + + + Gets the line no for DSC Class Resource Get/Set/Test methods + + + + + + + Gets the line no for DSC Class Resource Get/Set/Test methods + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Import the CIM functions from a module... + + + + Full path of the loaded schema file... + + + + + Import the CIM functions from a module... + + + + Full path of the loaded schema file... + + + + + + Import the CIM functions from a module... + + + + Full path of the loaded schema file... + + error reported during deserialization + + + + + Clear the 'IsImportedImplicitly' flag when explicitly importing a resource + + + + + + + Imports configuration keywords from a .psm1 file. + + + + + + + + Imports configuration keywords from a .psm1 file. + + + + + + + + + Returns an error record to use in the case of a malformed resource reference in the DependsOn list + + the malformed resource + The referencing resource instance + + + + + Returns an error record to use in the case of a malformed resource reference in the exclusive resources list + + the malformed resource + The referencing resource instance + + + + + if a partial configuration is in 'Pull' Mode, it needs a configuration source + + + + + + + Refresh Mode can not be Disabled for the Partial Configurations. + + + + + + + Returns an error record to use in the case of a malformed resource reference in the DependsOn list + + The duplicate resource identifier + the node being defined. + The error record to use. + + + + Returns an error record to use in the case of a configuration name is invalid + + + + + + + Returns an error record to use in the case of the given value for a property is invalid + + + + + + + + + + Returns an error record to use in case the given property is not valid LocalConfigurationManager property + + + + + + + + Returns an error record to use in the case of the given value for a property is not supported + + + + + + + + + + Returns an error record to use in the case of no value is provided for a mandatory property + + + + + + + + + Returns an error record to use in the case of more than one values are provided for DebugMode property + + + + + + Return an error to indicate a value is out of range for a dynamic keyword property + + + + + + + + + + + Returns an error record to use when composite resource and its resource instances both has PsDscRunAsCredentials value + + resourceId of resource + + + + + Routine to format a usage string from keyword. The resulting string should look like: + User [string] #ResourceName + { + UserName = [string] + [ Description = [string] ] + [ Disabled = [bool] ] + [ Ensure = [string] { Absent | Present } ] + [ Force = [bool] ] + [ FullName = [string] ] + [ Password = [PSCredential] ] + [ PasswordChangeNotAllowed = [bool] ] + [ PasswordChangeRequired = [bool] ] + [ PasswordNeverExpires = [bool] ] + [ DependsOn = [string[]] ] + } + + + + + + + Format the type name of a CIM property in a presentable way. + + + + + + + + The scriptblock that implementes the CIM keyword functionality. + + + + + To make it easier to specify -ConfigurationData parameter, we add an ArgumentTransformationAttribute here. + When the input data is of type string and is valid path to a file that can be converted to hashtable, we do + the conversion and return the converted value. Otherwise, we just return the input data. + + + + + convert a file of ConfigurationData into a hashtable + + + + + + + + + Represents a communication channel to a CIM server. + + + This is the main entry point of the Microsoft.Management.Infrastructure API. + All CIM operations are represented as methods of this class. + + + + + + + + + + + + + + + + + + + + + + + Read file content to byte array + + + + + + + + + + + + + + Make sure that the instance conforms to the the schema. + + + + + + Provides APIs to enumerate and look up assemblies stored in the Global Assembly Cache. + + + + + Represents the current Processor architecture + + + + + Looks up specified partial assembly name in the GAC and returns the best matching full assembly name/>. + + The display name of an assembly + Full path name of the resolved assembly + The optional processor architecture + The optional preferred culture information + An assembly identity or null, if can't be resolved. + is null. + + + + Creates object by parsing given display name. + + + + + Selects the candidate assembly with the largest version number. Uses culture as a tie-breaker if it is provided. + All candidates are assumed to have the same name and must include versions and cultures. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Do you want to run software from this untrusted publisher?. + + + + + Looks up a localized string similar to File {0} is published by {1} and is not trusted on your system. Only run scripts from trusted publishers.. + + + + + Looks up a localized string similar to Software {0} is published by an unknown publisher. It is recommended that you do not run this software.. + + + + + Looks up a localized string similar to Cannot sign code. The specified certificate is not suitable for code signing.. + + + + + Looks up a localized string similar to &Always run. + + + + + Looks up a localized string similar to Run the script from this publisher now, and do not prompt me to run this script in the future.. + + + + + Looks up a localized string similar to &Do not run. + + + + + Looks up a localized string similar to Do not run the script from this publisher now, and continue to prompt me to run this script in the future.. + + + + + Looks up a localized string similar to Ne&ver run. + + + + + Looks up a localized string similar to Do not run the script from this publisher now, and do not prompt me to run this script in future. Future attempts to run this script will result in a silent failure.. + + + + + Looks up a localized string similar to &Run once. + + + + + Looks up a localized string similar to Run the script from this publisher now, and continue to prompt me to run this script in the future.. + + + + + Looks up a localized string similar to &Suspend. + + + + + Looks up a localized string similar to Pause the current pipeline and return to the command prompt. Type exit to resume operation when you are done.. + + + + + Looks up a localized string similar to Cannot sign code. The hash algorithm is not supported.. + + + + + Looks up a localized string similar to File {0} cannot be loaded because its operation is blocked by software restriction policies, such as those created by using Group Policy.. + + + + + Looks up a localized string similar to File {0} cannot be loaded because you opted not to run this software now.. + + + + + Looks up a localized string similar to File {0} cannot be loaded because its content could not be read.. + + + + + Looks up a localized string similar to File {0} cannot be loaded because you opted never to run software from this publisher.. + + + + + Looks up a localized string similar to File {0} is published by {1}. This publisher is explicitly not trusted on your system. The script will not run on the system. For more information, run the command "get-help about_signing".. + + + + + Looks up a localized string similar to File {0} cannot be loaded because running scripts is disabled on this system. For more information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.. + + + + + Looks up a localized string similar to File {0} cannot be loaded. {1}.. + + + + + Looks up a localized string similar to Security warning. + + + + + Looks up a localized string similar to Run only scripts that you trust. While scripts from the internet can be useful, this script can potentially harm your computer. If you trust this script, use the Unblock-File cmdlet to allow the script to run without this warning message. Do you want to run {0}?. + + + + + Looks up a localized string similar to Cannot sign code. The TimeStamp server URL must be fully qualified, and in the format http://<server url>.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Adding file '{0}' to the catalog. Relative path of file in catalog is '{1}'.. + + + + + Looks up a localized string similar to Unable to generate catalog defintion file.. + + + + + Looks up a localized string similar to Found multiple entries of file member {0} in the catalog.. + + + + + Looks up a localized string similar to Paths for catalog contains multiple files with same relative path {0}. . + + + + + Looks up a localized string similar to Found file {0} in the catalog with hash of {1}. . + + + + + Looks up a localized string similar to Found file {0} on disk with hash of {1}.. + + + + + Looks up a localized string similar to Skipping validating file {0} from catalog. . + + + + + Looks up a localized string similar to Skipping validating file {0} from path.. + + + + + Looks up a localized string similar to Unable to acquire a handle to a catalog administrator context for a given hash algorithm {0}.. + + + + + Looks up a localized string similar to Unable to create the hash for file {0}. . + + + + + Looks up a localized string similar to Unable to find file name or path for catalog member {0}.. + + + + + Looks up a localized string similar to Unable to find file {0} to hash.. + + + + + Looks up a localized string similar to Unable to open catalog defintion file.. + + + + + Looks up a localized string similar to Unable to open catalog file {0}.. + + + + + Looks up a localized string similar to Unable to read file {0} to calculate its hash.. + + + + + Looks up a localized string similar to Catalog version is not valid. We only support catalog version {0} and version {1}.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot process argument because the value of argument "{0}" is not valid. Change the value of the "{0}" argument and run the operation again.. + + + + + Looks up a localized string similar to Cannot process argument because the value of argument "{0}" is null. Change the value of argument "{0}" to a non-null value.. + + + + + Looks up a localized string similar to Cannot process argument because the value of argument "{0}" is out of range. Change argument "{0}" to a value that is within range.. + + + + + Looks up a localized string similar to The script block cannot be converted because it contains more than one clause. Expressions or control structures are not permitted. Verify that the script block contains exactly one pipeline or command.. + + + + + Looks up a localized string similar to The script block cannot be converted to a Windows PowerShell object because it contains forbidden redirection operators.. + + + + + Looks up a localized string similar to Only a script block that contains exactly one pipeline or command can be converted. Expressions or control structures are not permitted. Verify that the script block contains exactly one pipeline or command.. + + + + + Looks up a localized string similar to An empty script block cannot be converted. Verify that the script block contains exactly one pipeline or command.. + + + + + Looks up a localized string similar to Cannot generate a Windows PowerShell object for a ScriptBlock that starts a pipeline with an expression.. + + + + + Looks up a localized string similar to The script block cannot be converted to an open generic type. Define an appropriate closed generic type, and then retry.. + + + + + Looks up a localized string similar to Cannot generate a Windows PowerShell object for a ScriptBlock that does not have an associated operation context.. + + + + + Looks up a localized string similar to A script block that contains a top-level trap statement cannot be converted.. + + + + + Looks up a localized string similar to Cannot generate a Windows PowerShell object for a ScriptBlock which invokes pipelines, commands or functions to evaluate arguments of the main pipeline.. + + + + + Looks up a localized string similar to Cannot generate a Windows PowerShell object for a ScriptBlock that uses dot sourcing.. + + + + + Looks up a localized string similar to Cannot generate a Windows PowerShell object for a ScriptBlock evaluating dynamic expressions. Dynamic expression: {0}.. + + + + + Looks up a localized string similar to Cannot generate a Windows PowerShell object for a ScriptBlock evaluating non-constant expressions. Non-constant expression: {0}.. + + + + + Looks up a localized string similar to Cannot generate a Windows PowerShell object for a ScriptBlock that invokes other script blocks.. + + + + + Looks up a localized string similar to Cannot generate a Windows PowerShell object for a ScriptBlock that tries to pass other script blocks inside argument values.. + + + + + Looks up a localized string similar to Cannot generate a Windows PowerShell object for a ScriptBlock dereferencing variables undeclared in the param(...) block. Name of undeclared variable: {0}.. + + + + + Looks up a localized string similar to Cannot get the value of the Using expression '{0}' in the specified variable dictionary. When creating a PowerShell instance from a script block, the Using expression cannot contain an indexing operation or member-accessing operation.. + + + + + Looks up a localized string similar to Cannot create workflow. The type '{0}' from the '{1}' module could not be loaded.. + + + + + Looks up a localized string similar to Object "{0}" is the wrong type to return from the dynamicparam block. The dynamicparam block must return either $null, or an object with type [System.Management.Automation.RuntimeDefinedParameterDictionary].. + + + + + Looks up a localized string similar to The command was stopped by the user.. + + + + + Looks up a localized string similar to Cannot perform operation because operation "{0}" is not valid. Remove operation "{0}", or investigate why it is not valid.. + + + + + Looks up a localized string similar to Cannot process argument because the value of argument "{0}" is not valid. Valid values are "Global", "Local", or "Script", or a number relative to the current scope (0 through the number of scopes where 0 is the current scope and 1 is its parent). Change the value of the "{0}" argument and run the operation again.. + + + + + Looks up a localized string similar to Cannot perform operation because operation "{0}" is not implemented.. + + + + + Looks up a localized string similar to Cannot perform operation because operation "{0}" is not supported.. + + + + + Looks up a localized string similar to Cannot perform operation because object "{0}" has already been disposed.. + + + + + Looks up a localized string similar to The script block cannot be invoked because it contains more than one clause. The Invoke() method can only be used on script blocks that contain a single clause.. + + + + + Looks up a localized string similar to The value of the using variable '$using:{0}' cannot be retrieved because it has not been set in the local session.. + + + + + Looks up a localized string similar to Windows PowerShell Workflow is not supported in a Windows PowerShell x86-based console. Open a Windows PowerShell x64-based console, and then try again.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot convert "{0}" to an object of type "{1}".. + + + + + Looks up a localized string similar to "{0}" is a ReadOnly property.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The value of the EnumName attribute doesn't translate to a valid C# identifier: {0}. Verify the EnumName attribute in the Cmdlet Definition XML, and then try again.. + + + + + Looks up a localized string similar to The value of the Name attribute is not a valid C# identifier: {0}. Verify the Name attribute in the Cmdlet Definition XML, and then try again.. + + + + + Looks up a localized string similar to Cannot process Cmdlet Definition XML for the following file: {0}. {1}. + + + + + Looks up a localized string similar to The remote computer returned a CDXML file that is not valid. The following cmdlet adapter is not supported for importing a CDXML module from a remote computer: {0}. + + + + + Looks up a localized string similar to {0} {1}. + + + + + Looks up a localized string similar to The {0} cmdlet defines the {1} parameter set more than once. Verify that the Cmdlet Definition XML does not have duplicate parameter set names and retry.. + + + + + Looks up a localized string similar to Two cmdlet parameters defined within the {0} element have the same name: {1}. Resolve the conflict in the Cmdlet Definition XML and retry.. + + + + + Looks up a localized string similar to Cannot process the <Enum EnumName="{0}" ...> element. {1}. + + + + + Looks up a localized string similar to Cmdlets over '{0}' class. + + + + + Looks up a localized string similar to Cannot process the ObjectModelWrapper attribute. The {0} type defines multiple parameter sets. Verify that the Cmdlet Definition XML specifies a valid type in the ObjectModelWrapper attribute and retry.. + + + + + Looks up a localized string similar to Cannot process the ObjectModelWrapper attribute. The {0} type is an open generic type. Verify that the Cmdlet Definition XML specifies a valid type in the ObjectModelWrapper attribute and retry.. + + + + + Looks up a localized string similar to Cannot process the ObjectModelWrapper attribute. The {0} type is not derived from the following class: {1}. Verify that the Cmdlet Definition XML specifies a valid type in the ObjectModelWrapper attribute and retry.. + + + + + Looks up a localized string similar to Cannot process the ObjectModelWrapper attribute. The {0} type defines the {1} cmdlet parameter with a {2} attribute parameter that is ignored. Verify that the Cmdlet Definition XML specifies a valid type in the ObjectModelWrapper attribute and retry.. + + + + + Looks up a localized string similar to Cannot define the {0} parameter for the {1} cmdlet. The parameter name is already defined by the {2} class. Change the name of the parameter in Cmdlet Definition XML and retry.. + + + + + Looks up a localized string similar to Cannot define the {0} parameter for the {1} cmdlet. The parameter name is already defined within the {2} XML element. Change the name of the parameter in the Cmdlet Definition XML, and then try again.. + + + + + Looks up a localized string similar to <?xml version="1.0" encoding="utf-8"?> + <!-- ################################################################## + Copyright (c) Microsoft Corporation. All rights reserved. + ################################################################### --> + <!DOCTYPE schema [ + <!ENTITY csharpIdentifierLetterCharacterRegex "\p{Lu}\p{Ll}\p{Lt}\p{Lm}\p{Lo}\p{Nl}"> + <!ENTITY csharpIdentifierFirstCharacterRegex "&csharpIdentifierLetterCharacterRegex;_"> + <!ENTITY csharpIdentifierOtherCharacterRegex "&csharpIdentifierL [rest of string was truncated]";. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cmdlets derived from PSCmdlet cannot be invoked directly. . + + + + + Looks up a localized string similar to Continue with all the steps of the operation.. + + + + + Looks up a localized string similar to Yes to &All. + + + + + Looks up a localized string similar to Continue with only the next step of the operation.. + + + + + Looks up a localized string similar to &Yes. + + + + + Looks up a localized string similar to The running command stopped because the preference variable "{0}" or common parameter is set to Stop: {1}. + + + + + Looks up a localized string similar to Stop this command.. + + + + + Looks up a localized string similar to &Halt Command. + + + + + Looks up a localized string similar to Confirm. + + + + + Looks up a localized string similar to The running command stopped because the user interrupted the command.. + + + + + Looks up a localized string similar to The running command stopped because the user selected the Stop option.. + + + + + Looks up a localized string similar to command '{0}'. + + + + + Looks up a localized string similar to Total count: {0}. + + + + + Looks up a localized string similar to Estimated total count: {0}. + + + + + Looks up a localized string similar to Unknown total count. + + + + + Looks up a localized string similar to Cmdlet '{0}' does not support parameter '{1}' in a remote session.. + + + + + Looks up a localized string similar to Pause the current pipeline and return to the command prompt. Type "{0}" to resume the pipeline.. + + + + + Looks up a localized string similar to &Suspend. + + + + + Looks up a localized string similar to The running command stopped because the preference variable "{0}" or common parameter is set to the following value that is not valid: "{1}".. + + + + + Looks up a localized string similar to The running command stopped because the preference variable "{0}" or common parameter is set to Stop.. + + + + + Looks up a localized string similar to Continue with this operation?. + + + + + Looks up a localized string similar to Performing the operation "{0}" on target "{1}".. + + + + + Looks up a localized string similar to Are you sure you want to perform this action? + {0}. + + + + + Looks up a localized string similar to What if: {0}. + + + + + Looks up a localized string similar to Skip this operation and all subsequent operations.. + + + + + Looks up a localized string similar to No to A&ll. + + + + + Looks up a localized string similar to Skip this operation and proceed with the next operation.. + + + + + Looks up a localized string similar to &No. + + + + + Looks up a localized string similar to The {0} is obsolete. {1}. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot serialize the credential. If this command is starting a workflow, the credentials cannot be persisted, because the process in which the workflow is started does not have permission to serialize credentials. + + -- If the workflow was started in a PSSession to the local computer, add the EnableNetworkAccess parameter to the command that created the session. + -- If the workflow was started in a PSSession to a remote computer, add the Authentication parameter with a value of CredSSP to the command that [rest of string was truncated]";. + + + + + Looks up a localized string similar to The value for UserName is not in the correct format.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Enter your credentials.. + + + + + Looks up a localized string similar to Windows PowerShell credential request. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Windows PowerShell {0} is not supported in the current console. Windows PowerShell {1} is supported in the current console.. + + + + + Looks up a localized string similar to The console file name extension is not valid. A console file name extension must be psc1.. + + + + + Looks up a localized string similar to Required element "ConsoleSchemaVersion" in {0} is missing or incorrect.. + + + + + Looks up a localized string similar to Incorrect Windows PowerShell version {0}. Windows PowerShell version {1} is supported on this computer.. + + + + + Looks up a localized string similar to Unknown element {0} found. "{1}" should have "{2}" and "{3}" elements only.. + + + + + Looks up a localized string similar to The console file is not valid. Multiple entries were found for the element PSConsoleFile. Only one entry is supported for this version.. + + + + + Looks up a localized string similar to This is a system Windows PowerShell snap-in that is loaded by Windows PowerShell.. + + + + + Looks up a localized string similar to An error occurred while attempting to load the system Windows PowerShell snap-ins. Please contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to Cannot remove the Windows PowerShell snap-in {0} because it is a system snap-in. Verify the name of the snap-in that you want to remove, and then try again.. + + + + + Looks up a localized string similar to Cannot remove the Windows PowerShell snap-in {0} because it is not loaded. Verify the name of the snap-in that you want to remove, and then try again.. + + + + + Looks up a localized string similar to The cmdlet is not supported by the custom shell.. + + + + + Looks up a localized string similar to Cannot save the file because the file name format is not valid. Specify a file name using the command: export-console -path.. + + + + + Looks up a localized string similar to Cannot export to a console because no console is loaded or no name is specified.. + + + + + Looks up a localized string similar to Cannot export to this file because file {0} is read-only. Change the read-only attribute of the file to read-write, or export to a different file.. + + + + + Looks up a localized string similar to Cannot save the console file because wildcard characters were used. Specify a console file without wildcard characters.. + + + + + Looks up a localized string similar to The following errors occurred when loading console {0}: {1}. + + + + + Looks up a localized string similar to Cannot set the ConsoleFileName variable to {0}. File {0} was saved.. + + + + + Looks up a localized string similar to The Save operation failed. Cannot remove the file {0}.. + + + + + Looks up a localized string similar to File {0} already exists and {1} was specified.. + + + + + Looks up a localized string similar to Cmdlet {0}. + + + + + Looks up a localized string similar to Cannot save the specified file. The Save operation was canceled.. + + + + + Looks up a localized string similar to Supply values for the following parameters:. + + + + + Looks up a localized string similar to The console file is not valid because the Windows PowerShell snap-in name is missing.. + + + + + Looks up a localized string similar to Required element "PSConsoleFile" in {0} is missing or incorrect.. + + + + + Looks up a localized string similar to Required element "PSVersion" in {0} is missing or incorrect.. + + + + + Looks up a localized string similar to The console file is not valid. Only one occurrence of the element "{0}" is allowed.. + + + + + Looks up a localized string similar to The path {0} is not an absolute path.. + + + + + Looks up a localized string similar to Cannot export a console file because no console file has been specified. Do you want to continue with the export operation?. + + + + + Looks up a localized string similar to You can only save a file when you are working in a file provider. The current provider '{0}' is not a file provider.. + + + + + Looks up a localized string similar to Cannot add Windows PowerShell snap-in {0} because it is already added. Verify the name of the snap-in, and then try again.. + + + + + Looks up a localized string similar to The Windows PowerShell snap-in module {0} does not have the required Windows PowerShell snap-in strong name {1}.. + + + + + Looks up a localized string similar to Cannot find any Windows PowerShell snap-in information for {0}.. + + + + + Looks up a localized string similar to The cmdlet '{0}' should not occur more than once in Windows PowerShell snap-in '{1}'.. + + + + + Looks up a localized string similar to Windows PowerShell provider '{0}' should not occur more than once in Windows PowerShell snap-in '{1}'.. + + + + + Looks up a localized string similar to Cannot load Windows PowerShell snap-in {0} because of the following error: {1}. + + + + + Looks up a localized string similar to Windows PowerShell snap-in "{0}" loaded with the following warnings: {1}. + + + + + Looks up a localized string similar to The console file is not valid because the element {0} is not valid.. + + + + + Looks up a localized string similar to Cannot load the Windows PowerShell snap-in because an error occurred while reading the registry information for the snap-in.. + + + + + Looks up a localized string similar to Attempting to save a console file with no name. Use Export-Console with the Path parameter to save the console file.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Windows PowerShell credential request . + + + + + Looks up a localized string similar to Enter your credentials. . + + + + + Looks up a localized string similar to Enter your credentials.. + + + + + Looks up a localized string similar to The maximum length of the caption is {0} characters.. + + + + + Looks up a localized string similar to The maximum length of the message is {0} characters.. + + + + + Looks up a localized string similar to The maximum length of the UserName value is {0} characters.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to {0} cannot be null or empty.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The alias "{0}" is declared multiple times.. + + + + + Looks up a localized string similar to Cannot resolve alias '{0}' because it refers to term '{1}', which is not recognized as a cmdlet, function, operable program, or script file. Verify the term and try again.. + + + + + Looks up a localized string similar to The argument '{0}' is not recognized as a cmdlet, possibly because it does not derive from the Cmdlet or PSCmdlet classes: {1}. + + + + + Looks up a localized string similar to The cmdlet name "{0}" cannot be validated because it is not in the correct format. Cmdlet names must include a verb and a noun separated by a "-", such as "Get-Process".. + + + + + Looks up a localized string similar to Argument '{0}' is not recognized as a cmdlet: {1}. + + + + + Looks up a localized string similar to The command could not be retrieved because the ArgumentList parameter can be specified only when retrieving a single cmdlet or script.. + + + + + Looks up a localized string similar to Cannot retrieve an instance of CommandDiscovery.. + + + + + Looks up a localized string similar to Parameter '{0}' with value '{1}' cannot be processed because it is not a cmdlet and cannot be processed by the CommandProcessor.. + + + + + Looks up a localized string similar to The term '{0}' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.. + + + + + Looks up a localized string similar to No matching commands include a parameter named '{0}'. Check the spelling of the parameter name, and then try again.. + + + + + Looks up a localized string similar to Parameter could not be declared. Parameters can be declared only on fields and properties.. + + + + + Looks up a localized string similar to The '{0}' command was found in the module '{1}', but the module could not be loaded. For more information, run 'Import-Module {1}'.. + + + + + Looks up a localized string similar to The module '{0}' could not be loaded. For more information, run 'Import-Module {0}'.. + + + + + Looks up a localized string similar to Cannot dot-source this command because it was defined in a different language mode. To invoke this command without importing its contents, omit the '.' operator.. + + + + + Looks up a localized string similar to An assembly named '{0}' already exists. Assemblies must have unique names.. + + + + + Looks up a localized string similar to A cmdlet named '{0}' already exists. Cmdlets must have unique names.. + + + + + Looks up a localized string similar to A cmdlet provider named '{0}' already exists. Cmdlet providers must have unique names.. + + + + + Looks up a localized string similar to A script named '{0}' already exists. Scripts must have unique names.. + + + + + Looks up a localized string similar to An ExecutionContext has not been set.. + + + + + Looks up a localized string similar to The ShowCommandInfo and Syntax parameters cannot be specified together.. + + + + + Looks up a localized string similar to Cannot process the cmdlet. A cmdlet name must consist of a verb and noun pair separated by '-'.. + + + + + Looks up a localized string similar to The parameter "{0}" is declared in parameter-set "{1}" multiple times.. + + + + + Looks up a localized string similar to {0} (Version {1}). + + + + + Looks up a localized string similar to The script '{0}' cannot be run because it contains a "#requires" statement for running as Administrator. The current Windows PowerShell session is not running as Administrator. Start Windows PowerShell by using the Run as Administrator option, and then try running the script again.. + + + + + Looks up a localized string similar to The script '{0}' cannot be run because it contained a "#requires" statement with a shell ID of {1} that is incompatible with the current shell. To run this script you must use the shell located at '{2}'.. + + + + + Looks up a localized string similar to The script '{0}' cannot be run because it contained a "#requires" statement with a shell ID of {1} that is incompatible with the current shell.. + + + + + Looks up a localized string similar to The script '{0}' cannot be run because the following modules that are specified by the "#requires" statements of the script are missing: {1}.. + + + + + Looks up a localized string similar to The script '{0}' cannot be run because the following snap-ins that are specified by the "#requires" statements of the script are missing: {1}.. + + + + + Looks up a localized string similar to The script '{0}' cannot be run because it contained a "#requires" statement for PowerShell editions '{1}'. The edition of PowerShell that is required by the script does not match the currently running PowerShell {2} edition.. + + + + + Looks up a localized string similar to The script '{0}' cannot be run because it contained a "#requires" statement for Windows PowerShell {1}. The version of Windows PowerShell that is required by the script does not match the currently running version of Windows PowerShell {2}.. + + + + + Looks up a localized string similar to A #requires statement has specified only a shellID. #Requires statements must specify a required Windows PowerShell snap-in when running in Windows PowerShell.. + + + + + Looks up a localized string similar to The parameter name "{0}" is reserved for future use.. + + + + + Looks up a localized string similar to Cannot process the #requires statement because it is not in the correct format. + The #requires statement must be in one of the following formats: + "#requires -shellid <shellID>" + "#requires -version <major.minor>" + "#requires -psedition <edition>" + "#requires -pssnapin <psSnapInName> [-version <major.minor>]" + "#requires -modules <ModuleSpecification>" + "#requires -runasadministrator". + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The input expression must not be empty. Specify at least one identifier name in each input expression. . + + + + + Looks up a localized string similar to Unable to match an empty identifier name to a valid enumerator name. Specify one of the following enumerator names and retry: {0}.. + + + + + Looks up a localized string similar to The generic type specified for the expression must represent an enum. Specify a valid enum type. . + + + + + Looks up a localized string similar to The identifier name {0} cannot be processed because it is either too similar or identical to the following enumerator names: {1}. Use a more specific identifier name.. + + + + + Looks up a localized string similar to Unable to match the identifier name {0} to a valid enumerator name. Specify one of the following enumerator names and try again: + {1}. + + + + + Looks up a localized string similar to Use of parentheses is not valid in the expression because identifier grouping is not allowed. Try removing the parentheses, or if a subexpression is enclosed, try expanding the expression.. + + + + + Looks up a localized string similar to Unable to parse the expression due to an unexpected token. Only an OR (,) operator or AND (+) operator is expected after an identifier name.. + + + + + Looks up a localized string similar to Unable to parse the expression due to an unexpected token after a NOT (!) operator. An identifier name is expected after a NOT (!) operator.. + + + + + Looks up a localized string similar to Unable to parse the expression due to an unexpected token. An identifier name or a NOT (!) operator is expected at the start of the expression, or after an OR (,) operator or an AND (+) operator. Also, an expression must not end with an OR (,), AND (+) or NOT (!) operator.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to AuthenticationError: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to CloseError: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to ConnectionError: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to Deadlock detected: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to DeviceError: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to FromStdErr: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to InvalidArgument: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to InvalidData: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to Unrecognized error category {4}: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to InvalidOperation: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to InvalidResult: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to InvalidType: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to LimitsExceeded: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to MetadataError: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to NotEnabled: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to NotImplemented: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to NotInstalled: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to NotSpecified: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to ObjectNotFound: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to OpenError: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to OperationStopped: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to OperationTimeout: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to ParserError: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to PermissionDenied: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to ProtocolError: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to QuotaExceeded: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to ReadError: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to ResourceBusy: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to ResourceExists: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to ResourceUnavailable: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to SecurityError: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to SyntaxError: ({1}:{2}) [{0}], {3}. + + + + + Looks up a localized string similar to WriteError: ({1}:{2}) [{0}], {3}. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to {0}...{1}. + + + + + Looks up a localized string similar to Error text is empty for error "{0}" : "{1}". + + + + + Looks up a localized string similar to Object "{0}" is reported as an error.. + + + + + Looks up a localized string similar to The action preference of "Suspend" is supported only for ErrorAction.. + + + + + Looks up a localized string similar to The error action preference of "Suspend" is supported only on workflows.. + + + + + Looks up a localized string similar to The value {0} is not supported for an ActionPreference variable. The provided value should be used only as a value for a preference parameter, and has been replaced by the default value. For more information, see the Help topic, "about_Preference_Variables.". + + + + + Looks up a localized string similar to The value {0} is not supported for an ActionPreference variable. The provided value should be used only as a value for a preference parameter. For more information, see the Help topic, "about_Preference_Variables.". + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot access member "{0}" outside of a PSObject.. + + + + + Looks up a localized string similar to A PSProperty or PSMethod object cannot be added to this collection.. + + + + + Looks up a localized string similar to "{0}" cannot be changed.. + + + + + Looks up a localized string similar to The value "{0}" cannot be converted to a string array.. + + + + + Looks up a localized string similar to Cannot invoke static methods or access static properties on the open generic type {0}. Specify the type parameters and retry. For example, instead of [System.Collections.Generic.HashSet``1]::CreateSetComparer() use [System.Collections.Generic.HashSet[int]]::CreateSetComparer().. + + + + + Looks up a localized string similar to Cannot set the value for property "{0}" because the object has type "{1}" instead of "{2}".. + + + + + Looks up a localized string similar to Cannot set the Value property for PSMemberInfo object of type "{0}".. + + + + + Looks up a localized string similar to Cannot change the member created from the type configuration: "{0}".. + + + + + Looks up a localized string similar to Cannot create a code method because of the method format. The method should be public, static, and have one parameter of type PSObject.. + + + + + Looks up a localized string similar to CodeProperty should use a getter or setter method.. + + + + + Looks up a localized string similar to The getter method should be public, not void, static, and have one parameter of the type PSObject.. + + + + + Looks up a localized string similar to The setter method should be public, void, static, and have two parameters. The first parameter should be of the type PSObject. A second parameter is required if a getter method is also available, and should have the same type as the return type for the getter method.. + + + + + Looks up a localized string similar to Could not compare "{0}" to "{1}". Error: "{2}". + + + + + Looks up a localized string similar to An exception was thrown when trying to call "{0}" to extract the contents of an object of type "{1}": "{2}". + + + + + Looks up a localized string similar to The alias with name "{0}" contains a cycle.. + + + + + Looks up a localized string similar to The following exception occurred while trying to enumerate the collection: "{0}".. + + + + + Looks up a localized string similar to The following exception occurred while constructing the attribute "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving member "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving members: "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the definitions for method "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the string representation for method "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the definitions for parameterized property "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the read state for parameterized property "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the string representation for parameterized property "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the type for parameterized property "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the write state for parameterized property "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the attributes for property "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the read state for property "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the string representation for property "{1}" : "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the type for property "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the write state for property "{1}": "{0}". + + + + + Looks up a localized string similar to The following exception occurred while retrieving the type name hierarchy: "{0}".. + + + + + Looks up a localized string similar to Exception getting "{0}": "{1}". + + + + + Looks up a localized string similar to Exception setting "{0}": "{1}". + + + + + Looks up a localized string similar to The adapter cannot get the properties of "{0}".. + + + + + Looks up a localized string similar to The adapter cannot get property "{0}" for "{1}".. + + + + + Looks up a localized string similar to The adapter cannot get the type hierarchy of "{0}".. + + + + + Looks up a localized string similar to Get accessor for property "{0}" is unavailable.. + + + + + Looks up a localized string similar to Cannot convert value to type System.String.. + + + + + Looks up a localized string similar to Cannot convert the "{0}" value of type "{1}" to type "{2}".. + + + + + Looks up a localized string similar to Cannot convert value "{0}" to type "{1}" because at least two matches were found ({2}, {3}) and only one match is allowed for this enumeration.. + + + + + Looks up a localized string similar to Cannot convert value "{0}" to type "{1}" because no commas are allowed for this enumeration.. + + + + + Looks up a localized string similar to Cannot convert value "{0}" to type "{1}" due to enumeration values that are not valid. Specify one of the following enumeration values and try again. The possible enumeration values are "{2}".. + + + + + Looks up a localized string similar to Cannot convert null to type "{0}" due to enumeration values that are not valid. Specify one of the following enumeration values and try again. The possible enumeration values are "{1}".. + + + + + Looks up a localized string similar to Cannot convert value "{0}" to type "{1}". Boolean parameters accept only Boolean values and numbers, such as $True, $False, 1 or 0.. + + + + + Looks up a localized string similar to Cannot convert value to type "{0}". Only core types are supported in this language mode.. + + + + + Looks up a localized string similar to Cannot convert value to type "{0}". Error: "{1}". + + + + + Looks up a localized string similar to Cannot convert value "{0}" to type "{1}". Error: "{2}". + + + + + Looks up a localized string similar to Cannot convert null to type "{0}".. + + + + + Looks up a localized string similar to Cannot get or set the property value. The "{0}" argument should be of type "{1}" or "{2}".. + + + + + Looks up a localized string similar to {0} is not a valid class path.. + + + + + Looks up a localized string similar to {0} is not a valid path.. + + + + + Looks up a localized string similar to The member "{0}" is already present.. + + + + + Looks up a localized string similar to The member "{0}" is already present from the extended type data file.. + + + + + Looks up a localized string similar to The member "{0}" is not present.. + + + + + Looks up a localized string similar to Multiple ambiguous overloads found for "{0}" and the argument count: "{1}".. + + + + + Looks up a localized string similar to Cannot convert argument "{0}", with value: "{1}", for "{2}" to type "{3}": "{4}". + + + + + Looks up a localized string similar to Cannot find an overload for "{0}" and the argument count: "{1}".. + + + + + Looks up a localized string similar to Exception calling "{0}" with "{1}" argument(s): "{2}". + + + + + Looks up a localized string similar to Argument: '{0}' should be a {1}. Use {2}.. + + + + + Looks up a localized string similar to The field or property: "{0}" for type: "{1}" differs only in letter casing from the field or property: "{2}". The type must be Common Language Specification (CLS) compliant.. + + + + + Looks up a localized string similar to Cannot compare "{0}" because it is not IComparable.. + + + + + Looks up a localized string similar to Cannot compare "{0}" to "{1}" because the objects are not the same type or the object "{0}" does not implement "{2}".. + + + + + Looks up a localized string similar to "{0}" returned a null value.. + + + + + Looks up a localized string similar to Cannot create object of type "{0}". {1}. + + + + + Looks up a localized string similar to The adapter cannot get the value of property "{0}".. + + + + + Looks up a localized string similar to The adapter cannot determine whether property "{0}" is gettable.. + + + + + Looks up a localized string similar to The adapter cannot determine whether property "{0}" can be changed.. + + + + + Looks up a localized string similar to The {0} property was not found for the {1} object. The available property is: {2}. + + + + + Looks up a localized string similar to The property "{0}" was not found.. + + + + + Looks up a localized string similar to The adapter cannot set the value of property "{0}".. + + + + + Looks up a localized string similar to The adapter cannot get the type of property "{0}".. + + + + + Looks up a localized string similar to "{0}" is a ReadOnly property.. + + + + + Looks up a localized string similar to Argument: '{0}' should not be a {1}. Do not use {2}.. + + + + + Looks up a localized string similar to Reference type is expected in argument.. + + + + + Looks up a localized string similar to The member name "{0}" is reserved.. + + + + + Looks up a localized string similar to Set accessor for property "{0}" is unavailable.. + + + + + Looks up a localized string similar to The following exception occurred while retrieving the string: "{0}". + + + + + Looks up a localized string similar to The following error occurred while loading the extended type data file: {0}. + + + + + Looks up a localized string similar to Exception calling "{0}" : "{1}". + + + + + Looks up a localized string similar to Cannot get property value because "{0}" is a write-only property.. + + + + + Looks up a localized string similar to Cannot set "{0}" because only unique attributes or unique non-attributed leaf nodes can be set.. + + + + + Looks up a localized string similar to Cannot set "{0}" because only strings can be used as values to set XmlNode properties.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The action is not supported when you are forwarding events.. + + + + + Looks up a localized string similar to Cannot register for the specified event. An event with the name '{0}' does not exist.. + + + + + Looks up a localized string similar to Cannot register for the specified event. Events that require a return value are not supported.. + + + + + Looks up a localized string similar to This operation is not supported on remote instances.. + + + + + Looks up a localized string similar to Cannot register for the specified event. The event source identifier '{0}' is reserved for the Windows PowerShell engine.. + + + + + Looks up a localized string similar to Cannot subscribe to the specified event. A subscriber with the source identifier '{0}' already exists.. + + + + + Looks up a localized string similar to Windows PowerShell cannot subscribe to Windows RT events.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Could not open the alternate data stream '{0}' of the file '{1}'.. + + + + + Looks up a localized string similar to The attribute cannot be set because attributes are not supported. Only the following attributes can be set: Archive, Hidden, Normal, ReadOnly, or System.. + + + + + Looks up a localized string similar to The path length is too short. The character length of a path cannot be less than the character length of the basePath.. + + + + + Looks up a localized string similar to Cannot proceed with byte encoding. When using byte encoding the content must be of type byte.. + + + + + Looks up a localized string similar to The property cannot be cleared because the property is not supported. Only the Attributes property can be cleared.. + + + + + Looks up a localized string similar to Cannot remove item {0}: {1}. + + + + + Looks up a localized string similar to Cannot restore attributes on item {0}: {1}. + + + + + Looks up a localized string similar to Clear Content. + + + + + Looks up a localized string similar to Item: {0}. + + + + + Looks up a localized string similar to Clear Property Directory. + + + + + Looks up a localized string similar to Clear Property File. + + + + + Looks up a localized string similar to Item: {0} Property: {1}. + + + + + Looks up a localized string similar to Cannot overwrite the item {0} with itself.. + + + + + Looks up a localized string similar to Copy Directory. + + + + + Looks up a localized string similar to Copy File. + + + + + Looks up a localized string similar to Destination path {0} is a file that already exists on the target destination.. + + + + + Looks up a localized string similar to Cannot copy a directory '{0}' to file '{0}'. + + + + + Looks up a localized string similar to Failed to copy file {0} to remote target destination.. + + + + + Looks up a localized string similar to Failed to create directory '{0}' on remote destination.. + + + + + Looks up a localized string similar to Failed to get directory {0} child items.. + + + + + Looks up a localized string similar to Failed to read remote file '{0}'.. + + + + + Looks up a localized string similar to Failed to validate remote destination '{0}'.. + + + + + Looks up a localized string similar to Cannot validate if remote destination {0} is a file.. + + + + + Looks up a localized string similar to Remote copy with {0} is not supported.. + + + + + Looks up a localized string similar to Copying {0} to {1}. + + + + + Looks up a localized string similar to From {0} to {1}. + + + + + Looks up a localized string similar to Item: {0} Destination: {1}. + + + + + Looks up a localized string similar to A delimiter cannot be specified when reading the stream one byte at a time.. + + + + + Looks up a localized string similar to Directory: . + + + + + Looks up a localized string similar to An item with the specified name {0} already exists.. + + + + + Looks up a localized string similar to Directory {0} cannot be removed because it is not empty.. + + + + + Looks up a localized string similar to {0} is an NTFS junction point. Use the Force parameter to delete or modify this object.. + + + + + Looks up a localized string similar to Maximum size for drive has been exceeded: {0}.. + + + + + Looks up a localized string similar to The specified drive root "{0}" either does not exist, or it is not a folder.. + + + + + Looks up a localized string similar to Administrator privilege required for this operation.. + + + + + Looks up a localized string similar to Cannot process the file because the file {0} was not found.. + + + + + Looks up a localized string similar to Hard links are not supported for the specified path.. + + + + + Looks up a localized string similar to To use the Persist switch parameter, the drive name must be supported by the operating system (for example, drive letters A-Z).. + + + + + Looks up a localized string similar to Invoke Item. + + + + + Looks up a localized string similar to Item: {0}. + + + + + Looks up a localized string similar to An object at the specified path {0} does not exist.. + + + + + Looks up a localized string similar to A directory is required for the operation. The item '{0}' is not a directory.. + + + + + Looks up a localized string similar to A file is required for the operation. The item '{0}' is not a file.. + + + + + Looks up a localized string similar to Could not find item {0}.. + + + + + Looks up a localized string similar to Move Directory. + + + + + Looks up a localized string similar to Move File. + + + + + Looks up a localized string similar to Item: {0} Destination: {1}. + + + + + Looks up a localized string similar to Create Directory. + + + + + Looks up a localized string similar to Create File. + + + + + Looks up a localized string similar to Create Hard Link. + + + + + Looks up a localized string similar to Create Junction. + + + + + Looks up a localized string similar to Create Symbolic Link. + + + + + Looks up a localized string similar to Destination: {0}. + + + + + Looks up a localized string similar to The '{0}' and '{1}' parameters cannot be specified in the same command.. + + + + + Looks up a localized string similar to Cannot process the path because the specified path refers to an item that is outside the basePath.. + + + + + Looks up a localized string similar to You do not have sufficient access rights to perform this operation.. + + + + + Looks up a localized string similar to When you use the Persist parameter, the root must be a file system location on a remote computer.. + + + + + Looks up a localized string similar to The property {0} does not exist or was not found.. + + + + + Looks up a localized string similar to The Raw and Wait parameters cannot be specified in the same command.. + + + + + Looks up a localized string similar to Cannot detect the encoding of the file. The specified encoding {0} is not supported when the content is read in reverse.. + + + + + Looks up a localized string similar to Remove Directory. + + + + + Looks up a localized string similar to Remove File. + + + + + Looks up a localized string similar to Cannot rename the specified target, because it represents a path or device name.. + + + + + Looks up a localized string similar to Rename Directory. + + + + + Looks up a localized string similar to Rename File. + + + + + Looks up a localized string similar to Item: {0} Destination: {1}. + + + + + Looks up a localized string similar to Set Property Directory. + + + + + Looks up a localized string similar to Set Property File. + + + + + Looks up a localized string similar to Item: {0} Property: {1} Value: {2}. + + + + + Looks up a localized string similar to Stream '{0}' of file '{1}'.. + + + + + Looks up a localized string similar to The substitute path for the DOS device '{0}' is too long. It exceeds the maximum total path length (32,767 characters) that is valid for the Windows API.. + + + + + Looks up a localized string similar to Symbolic links are not supported for the specified path.. + + + + + Looks up a localized string similar to Cannot process path '{0}' because the target represents a reserved device name.. + + + + + Looks up a localized string similar to The type is not a known type for the file system. Only "file","directory" or "symboliclink" can be specified.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to (Global Assembly Cache) {0}. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The assembly {2} is not found.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The XML element {2} does not allow attributes.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: Cannot have control and Label at the same time.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: Cannot have control or Label without an expression.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: A duplicate node exists.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: No type or condition is specified for applying the view.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: {2} is an empty attribute.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The custom control token list cannot be empty.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: {2} is an empty node.. + + + + + Looks up a localized string similar to Error in file {0}: {1}. + + + + + Looks up a localized string similar to Error in formatting data "{0}": {1}. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: A Boolean value is expected.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: An expression is expected.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: An integer is expected.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: A non-negative integer is expected.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: A positive integer is expected.. + + + + + Looks up a localized string similar to The path {0} is not fully qualified. Specify a fully qualified format file path.. + + + + + Looks up a localized string similar to Errors occurred while loading the format data file: {0}. + + + + + Looks up a localized string similar to A shared format table cannot be updated with more than one entry.. + + + + + Looks up a localized string similar to Errors occurred while loading the FormatTable. View the contents of the Errors property to get detailed error messages.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The header item count = {2} does not match default row item count = {3}.. + + + + + Looks up a localized string similar to Error in view data with type name {0} at index {1}: The header item count = {2} does not match the default row item count = {3}.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The row item count = {2} on alternative set #{3} does not match default row item count = {4}.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: "{2}" is not a valid alignment value.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The column header definition is not valid; all headers are discarded.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: Out Of Band views can only have CustomControl or ListControl.. + + + + + Looks up a localized string similar to Error in view data with type name {0} at index {1}: Formatting data "{2}" is not valid.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: {2} is not valid.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The {2} value is not valid.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The property entry is not valid.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: Script block "{2}" is not valid.. + + + + + Looks up a localized string similar to Error in view data with type name {0} at index {1}: Script block "{2}" is not valid.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: {2} failed to load.. + + + + + Looks up a localized string similar to Error in view data with type name {0} at index {1}: {2} failed to load.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: {2} is a missing attribute.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The inner text value is missing.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: Node {2} is missing.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: A node is missing from {2}.. + + + + + Looks up a localized string similar to {0}, {1}. + + + + + Looks up a localized string similar to Error in view data with type name {0} at index {1}: A TableControl should contain only one {2}.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: {2} and {3} are mutually exclusive.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: Node {2} cannot have child objects.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: There must be at least one default {2}.. + + + + + Looks up a localized string similar to Error in view data with type name {0} at index {1}: There must be at least one default {2}.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The definition list is missing.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: {2} cannot be specified with an expression.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: {2} cannot be specified without an expression.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: A format string is missing.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: At least one list view item must be specified.. + + + + + Looks up a localized string similar to Error in view data with type name {0} at index {1}: At least one list view item must be specified.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The node must be an XmlElement.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: A property is missing.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: Script block text is missing.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The control name cannot be null or empty.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: An Out Of Band view cannot have GroupBy.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The resource {2} in assembly {3} is not found.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: Cannot have SelectionSetName and TypeName at the same time.. + + + + + Looks up a localized string similar to The FormatTable cannot be updated because the FormatTable might have been created outside of the runspace.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The string {2} from resource {3} in assembly {4} is not found.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: {2}, {3} and {4} are mutually exclusive.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: There cannot be more than one default {2}.. + + + + + Looks up a localized string similar to Error in view data with type name {0} at index {1}: There cannot be more than one default {2}.. + + + + + Looks up a localized string similar to Too many errors in file {0}.. + + + + + Looks up a localized string similar to Too many errors in the formatting data for type "{0}".. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: {2} is an unknown attribute.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: {2} is an unknown node.. + + + + + Looks up a localized string similar to Error at XPath {0} in file {1}: The view cannot be loaded.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Running commands is prevented by Stop policy settings.. + + + + + Looks up a localized string similar to Cannot retrieve the message "{0}" "{1}" "{2}" because an assembly was not registered.. + + + + + Looks up a localized string similar to Cannot retrieve the message "{0}" "{1}" "{2}". A template string format is not valid in template string "{3}".. + + + + + Looks up a localized string similar to Cannot retrieve the message "{0}" "{1}" "{2}". A template string exists, but its value is empty or blank.. + + + + + Looks up a localized string similar to The pipeline failed due to call depth overflow.. + + + + + Looks up a localized string similar to The pipeline has been stopped.. + + + + + Looks up a localized string similar to Cannot load a resource with base name "{0}".. + + + + + Looks up a localized string similar to Cannot load a resource string with ID "{0}".. + + + + + Looks up a localized string similar to The script failed due to call depth overflow.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to An error of type "{0}" has occurred.. + + + + + Looks up a localized string similar to A command that prompts the user failed because the host program or the command type does not support user interaction. Try a host program that supports user interaction, such as the Windows PowerShell Console or Windows PowerShell ISE, and remove prompt-related commands from command types that do not support user interaction, such as Windows PowerShell workflows.. + + + + + Looks up a localized string similar to A command that prompts the user failed because the host program or the command type does not support user interaction. The host was attempting to request confirmation with the following message: {0}. + + + + + Looks up a localized string similar to The method cannot be invoked because the pool has been closed or has failed.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Accept pipeline input? . + + + + + Looks up a localized string similar to Accept wildcard characters? . + + + + + Looks up a localized string similar to ALIASES. + + + + + Looks up a localized string similar to (All). + + + + + Looks up a localized string similar to Answer. + + + + + Looks up a localized string similar to This cmdlet supports the common parameters: Verbose, Debug, + ErrorAction, ErrorVariable, WarningAction, WarningVariable, + OutBuffer, PipelineVariable, and OutVariable. For more information, see + about_CommonParameters (https:/go.microsoft.com/fwlink/?LinkID=113216). . + + + + + Looks up a localized string similar to This cmdlet supports the workflow common parameters: + PSComputerName, JobName, PSApplicationName, PSCredential, + PSPort, PSConfigurationName, PSConnectionURI, PSSessionOption, + PSAuthentication, PSAuthenticationLevel, + PSCertificateThumbprint, PSConnectionRetryCount, + PSConnectionRetryIntervalSec, PSRunningTimeoutSec, + PSElapsedTimeoutSec, PSPersist, + PSPrivateMetadata, InputObject, + PSParameterCollection, AsJob, PSUseSSL, and PSAllowRedirection. + For more information [rest of string was truncated]";. + + + + + Looks up a localized string similar to No Windows PowerShell modules were found that match the following pattern: {0}. Verify the pattern and then try the command again.. + + + + + Looks up a localized string similar to No UI culture was found that matches the following pattern: {0}. Verify the pattern and then try the command again.. + + + + + Looks up a localized string similar to The -Recurse parameter is only available if a source path is specified.. + + + + + Looks up a localized string similar to CAPABILITIES. + + + + + Looks up a localized string similar to (Category: . + + + + + Looks up a localized string similar to Cmdlets Supported: . + + + + + Looks up a localized string similar to CMDLETS SUPPORTED. + + + + + Looks up a localized string similar to <CommonParameters>. + + + + + Looks up a localized string similar to <WorkflowCommonParameters>. + + + + + Looks up a localized string similar to Content:. + + + + + Looks up a localized string similar to Definition:. + + + + + Looks up a localized string similar to DESCRIPTION. + + + + + Looks up a localized string similar to DRIVES. + + + + + Looks up a localized string similar to DYNAMIC PARAMETERS. + + + + + Looks up a localized string similar to Example. + + + + + Looks up a localized string similar to To see the examples, type: . + + + + + Looks up a localized string similar to EXAMPLES. + + + + + Looks up a localized string similar to EXAMPLE. + + + + + Looks up a localized string similar to Failed to save Help for the module(s) '{0}' : {1}. + + + + + Looks up a localized string similar to Failed to save Help for the module(s) '{0}' with UI culture(s) {{{1}}} : {2}. + + + + + Looks up a localized string similar to Failed to update Help for the module(s) : + '{0}' + {1}. + + + + + Looks up a localized string similar to Failed to update Help for the module(s) '{0}' with UI culture(s) {{{1}}} : {2}. + + + + + Looks up a localized string similar to false. + + + + + Looks up a localized string similar to FILTERS. + + + + + Looks up a localized string similar to For technical information, type: . + + + + + Looks up a localized string similar to Get-Help cannot find the Help files for this cmdlet on this computer. It is displaying only partial help. + -- To download and install Help files for the module that includes this cmdlet, use Update-Help. + -- To view the Help topic for this cmdlet online, type: "Get-Help {0} -Online" or + go to {1}.. + + + + + Looks up a localized string similar to Get-Help cannot find the Help files for this cmdlet on this computer. It is displaying only partial help. + -- To download and install Help files for the module that includes this cmdlet, use Update-Help.. + + + + + Looks up a localized string similar to Help content contains files that are not valid. Only .txt and .xml files are supported.. + + + + + Looks up a localized string similar to Help content must be in the namespace {0}.. + + + + + Looks up a localized string similar to Help content cannot be found. Make sure the server is available and the help content location is properly defined in the HelpInfo XML.. + + + + + Looks up a localized string similar to The Help content at the specified location is not valid. Specify a location that contains valid Help Content.. + + + + + Looks up a localized string similar to The Help content XSD file cannot be found in {0}. Verify that the XSD file exists at the specified location, and then retry the command.. + + + + + Looks up a localized string similar to The specified culture is not supported: {0}. Specify a culture from the following list: {{{1}}}.. + + + + + Looks up a localized string similar to The Update-Help command failed because the specified module does not support updatable help. Use Get-Help -Online or look online for help for the commands in this module.. + + + + + Looks up a localized string similar to The HelpInfo XML is not valid. Specify valid HelpInfo XML.. + + + + + Looks up a localized string similar to INPUTS. + + + + + Looks up a localized string similar to Error installing help content.. + + + + + Looks up a localized string similar to The value of the HelpInfoUri key in the module manifest must resolve to a container or root URL on a website where the help files are stored. The HelpInfoUri '{0}' does not resolve to a container.. + + + + + Looks up a localized string similar to The HelpInfoURI {0} does not start with HTTP.. + + + + + Looks up a localized string similar to METHODS. + + + + + Looks up a localized string similar to The ModuleBase directory cannot be found. Verify the directory and try again.. + + + + + Looks up a localized string similar to The following parameter must not be null or empty: Module.. + + + + + Looks up a localized string similar to No Windows PowerShell modules were found that match the specified FullyQualifiedModule {0}. Verify the FullyQualifiedModule value and then try the command again.. + + + + + Looks up a localized string similar to NAME. + + + + + Looks up a localized string similar to Named. + + + + + Looks up a localized string similar to The most current Help files are already downloaded.. + + + + + Looks up a localized string similar to The most current Help files are already installed.. + + + + + Looks up a localized string similar to None. + + + + + Looks up a localized string similar to NON-TERMINATING ERRORS. + + + + + Looks up a localized string similar to NOTES. + + + + + Looks up a localized string similar to Help URI: {0}. + + + + + Looks up a localized string similar to OUTPUT. + + + + + Looks up a localized string similar to Output:. + + + + + Looks up a localized string similar to Aliases . + + + + + Looks up a localized string similar to Default value . + + + + + Looks up a localized string similar to Dynamic? . + + + + + Looks up a localized string similar to Position? . + + + + + Looks up a localized string similar to Required? . + + + + + Looks up a localized string similar to PARAMETERS. + + + + + Looks up a localized string similar to Parameter set name . + + + + + Looks up a localized string similar to The path {0} is not a valid directory. Make sure the directory exists and retry.. + + + + + Looks up a localized string similar to The following parameter must not be null or empty: Path.. + + + + + Looks up a localized string similar to ByPropertyName. + + + + + Looks up a localized string similar to ByValue. + + + + + Looks up a localized string similar to FromRemainingArguments. + + + + + Looks up a localized string similar to PROPERTIES. + + + + + Looks up a localized string similar to The path {0} does not contain a FileSystem provider. Verify that the specified path contains the FileSystem provider, and then retry the command.. + + + + + Looks up a localized string similar to PROVIDER NAME. + + + + + Looks up a localized string similar to Question:. + + + + + Looks up a localized string similar to RELATED LINKS. + + + + + Looks up a localized string similar to For online help, type: . + + + + + Looks up a localized string similar to REMARKS. + + + + + Looks up a localized string similar to OUTPUTS. + + + + + Looks up a localized string similar to The root level element of the help content must be "helpItems".. + + + + + Looks up a localized string similar to Saved {0}. + + + + + Looks up a localized string similar to Help content was successfully saved to the following location: {0}. + + + + + Looks up a localized string similar to Saving Help. + + + + + Looks up a localized string similar to Saving Help for module {0}. + + + + + Looks up a localized string similar to Searching Help for {0} .... + + + + + Looks up a localized string similar to SHORT DESCRIPTION. + + + + + Looks up a localized string similar to {0}: {1}. Culture {2} Version {3}. + + + + + Looks up a localized string similar to Suggested Action: . + + + + + Looks up a localized string similar to SYNOPSIS. + + + + + Looks up a localized string similar to SYNTAX. + + + + + Looks up a localized string similar to Target Object Type: . + + + + + Looks up a localized string similar to TASK: . + + + + + Looks up a localized string similar to TASKS. + + + + + Looks up a localized string similar to Term:. + + + + + Looks up a localized string similar to TERMINATING ERRORS. + + + + + Looks up a localized string similar to Title:. + + + + + Looks up a localized string similar to A Help URI cannot contain more than 10 redirections. Specify a valid Help URI.. + + + + + Looks up a localized string similar to true. + + + + + Looks up a localized string similar to Type: . + + + + + Looks up a localized string similar to Unable to connect to Help content. The server on which Help content is stored might not be available. Verify that the server is available, or wait until the server is back online, and then try the command again.. + + + + + Looks up a localized string similar to Unable to retrieve the HelpInfo XML file for UI culture {0}. Make sure the HelpInfoUri property in the module manifest is valid or check your network connection and then try the command again.. + + + + + Looks up a localized string similar to Error extracting Help content.. + + + + + Looks up a localized string similar to Updated {0}. + + + + + Looks up a localized string similar to Update-Help has completed successfully.. + + + + + Looks up a localized string similar to The Update-Help cmdlet downloads the most current Help files for Windows PowerShell modules, and installs them on your computer. For more information about the Update-Help cmdlet, see https:/go.microsoft.com/fwlink/?LinkId=210614.. + + + + + Looks up a localized string similar to Do you want to run Update-Help?. + + + + + Looks up a localized string similar to Resolving URI: "{0}". + + + + + Looks up a localized string similar to {0}, Current Version: {1}, Available Version: {2}, UICulture: {3}. + + + + + Looks up a localized string similar to Updating Help. + + + + + Looks up a localized string similar to Updating Help for module {0}. + + + + + Looks up a localized string similar to Connecting to Help Content.... + + + + + Looks up a localized string similar to Downloading Help Content.... + + + + + Looks up a localized string similar to Installing Help content.... + + + + + Looks up a localized string similar to Locating Help Content.... + + + + + Looks up a localized string similar to Help was not saved for the module {0}, because the Save-Help command was run on this computer within the last 24 hours. + To save help again, add the Force parameter to your command.. + + + + + Looks up a localized string similar to Help was not updated for the module {0}, because the Update-Help command was run on this computer within the last 24 hours. + To update help again, add the Force parameter to your command.. + + + + + Looks up a localized string similar to For more information, type: . + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot add history because the input object has a format that is not valid.. + + + + + Looks up a localized string similar to Note: {0} entries were cleared from the session history.. + + + + + Looks up a localized string similar to This command will clear all the entries from the session history.. + + + + + Looks up a localized string similar to The identifier {0} is not valid. Specify a positive number, and then try again.. + + + + + Looks up a localized string similar to The identifier {0} is not a valid value for a History identifier. Specify a positive number, and then try again.. + + + + + Looks up a localized string similar to The Invoke-History cmdlet is called repeatedly, in a loop.. + + + + + Looks up a localized string similar to Cannot process multiple history commands. You can only run a single command by using Invoke-History.. + + + + + Looks up a localized string similar to The count cannot be combined with multiple CommandLine parameters.. + + + + + Looks up a localized string similar to The count cannot be combined with multiple Ids.. + + + + + Looks up a localized string similar to Cannot locate the history for command line {0}.. + + + + + Looks up a localized string similar to Cannot locate the history for Id {0}.. + + + + + Looks up a localized string similar to Cannot locate history.. + + + + + Looks up a localized string similar to Cannot locate most recent history.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to EnterNestedPrompt has not been called as many times as ExitNestedPrompt.. + + + + + Looks up a localized string similar to Cannot exit a nested prompt because no nested prompts exist.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Choice[{0}]: . + + + + + Looks up a localized string similar to Command start time: {0}. + + + + + Looks up a localized string similar to DEBUG: {0}. + + + + + Looks up a localized string similar to (default is "{0}"). + + + + + Looks up a localized string similar to (default choices are {0}). + + + + + Looks up a localized string similar to "{0}" should have at least one element.. + + + + + Looks up a localized string similar to The host is not currently transcribing.. + + + + + Looks up a localized string similar to INFO: {0}. + + + + + Looks up a localized string similar to Cannot process the hot key because a question mark ("?") cannot be used as a hot key.. + + + + + Looks up a localized string similar to "{0}" must be a valid index into "{1}". "{2}" is not a valid index.. + + + + + Looks up a localized string similar to The "{0}" parameter must contain at least one value.. + + + + + Looks up a localized string similar to End the operation with an error.. + + + + + Looks up a localized string similar to &No. + + + + + Looks up a localized string similar to End the operation with an error. Do not request to resume operation for this session.. + + + + + Looks up a localized string similar to No to A&ll. + + + + + Looks up a localized string similar to Continue with this operation?. + + + + + Looks up a localized string similar to Pause the current operation and enter a command prompt. Type "exit" to resume the paused operation.. + + + + + Looks up a localized string similar to &Suspend. + + + + + Looks up a localized string similar to Continue.. + + + + + Looks up a localized string similar to &Yes. + + + + + Looks up a localized string similar to Continue, and do not ask again whether to continue in this session.. + + + + + Looks up a localized string similar to Yes to &All. + + + + + Looks up a localized string similar to ********************** + Windows PowerShell transcript end + End time: {0:yyyyMMddHHmmss} + **********************. + + + + + Looks up a localized string similar to ********************** + Windows PowerShell transcript start + Start time: {0:yyyyMMddHHmmss} + Username: {1} + RunAs User: {2} + Configuration Name: {3} + Machine: {4} ({5}) + Host Application: {6} + Process ID: {7} + {8} + **********************. + + + + + Looks up a localized string similar to The value {0} is not a supported ActionPreference value.. + + + + + Looks up a localized string similar to VERBOSE: {0}. + + + + + Looks up a localized string similar to WARNING: {0}. + + + + + Looks up a localized string similar to WriteDebug stopped because the value of the DebugPreference variable was 'Stop'.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to ExceptionClass=[ExceptionClass] + ErrorCategory=[ErrorCategory] + ErrorId=[ErrorId] + ErrorMessage=[ErrorMessage] + + Severity=[Severity] + + SequenceNumber=[SequenceNumber] + + HostName=[HostName] + HostVersion=[HostVersion] + HostId=[HostId] + HostApplication=[HostApplication] + EngineVersion=[EngineVersion] + RunspaceId=[RunspaceId] + PipelineId=[PipelineId] + CommandName=[CommandName] + CommandType=[CommandType] + ScriptName=[ScriptName] + CommandPath=[CommandPath] + CommandLine=[CommandLine]. + + + + + Looks up a localized string similar to NewCommandState=[NewCommandState] + + SequenceNumber=[SequenceNumber] + + HostName=[HostName] + HostVersion=[HostVersion] + HostId=[HostId] + HostApplication=[HostApplication] + EngineVersion=[EngineVersion] + RunspaceId=[RunspaceId] + PipelineId=[PipelineId] + CommandName=[CommandName] + CommandType=[CommandType] + ScriptName=[ScriptName] + CommandPath=[CommandPath] + CommandLine=[CommandLine]. + + + + + Looks up a localized string similar to ExceptionClass=[ExceptionClass] + ErrorCategory=[ErrorCategory] + ErrorId=[ErrorId] + ErrorMessage=[ErrorMessage] + + Severity=[Severity] + + SequenceNumber=[SequenceNumber] + + HostName=[HostName] + HostVersion=[HostVersion] + HostId=[HostId] + HostApplication=[HostApplication] + EngineVersion=[EngineVersion] + RunspaceId=[RunspaceId] + PipelineId=[PipelineId] + CommandName=[CommandName] + CommandType=[CommandType] + ScriptName=[ScriptName] + CommandPath=[CommandPath] + CommandLine=[CommandLine] + + Additi [rest of string was truncated]";. + + + + + Looks up a localized string similar to NewEngineState=[NewEngineState] + PreviousEngineState=[PreviousEngineState] + + SequenceNumber=[SequenceNumber] + + HostName=[HostName] + HostVersion=[HostVersion] + HostId=[HostId] + HostApplication=[HostApplication] + EngineVersion=[EngineVersion] + RunspaceId=[RunspaceId] + PipelineId=[PipelineId] + CommandName=[CommandName] + CommandType=[CommandType] + ScriptName=[ScriptName] + CommandPath=[CommandPath] + CommandLine=[CommandLine]. + + + + + Looks up a localized string similar to DetailSequence=[DetailSequence] + DetailTotal=[DetailTotal] + + SequenceNumber=[SequenceNumber] + + UserId=[User] + HostName=[HostName] + HostVersion=[HostVersion] + HostId=[HostId] + HostApplication=[HostApplication] + EngineVersion=[EngineVersion] + RunspaceId=[RunspaceId] + PipelineId=[PipelineId] + ScriptName=[ScriptName] + CommandLine=[CommandLine]. + + + + + Looks up a localized string similar to ProviderName=[ProviderName] + ExceptionClass=[ExceptionClass] + ErrorCategory=[ErrorCategory] + ErrorId=[ErrorId] + ErrorMessage=[ErrorMessage] + + Severity=[Severity] + + SequenceNumber=[SequenceNumber] + + HostName=[HostName] + HostVersion=[HostVersion] + HostId=[HostId] + HostApplication=[HostApplication] + EngineVersion=[EngineVersion] + RunspaceId=[RunspaceId] + PipelineId=[PipelineId] + CommandName=[CommandName] + CommandType=[CommandType] + ScriptName=[ScriptName] + CommandPath=[CommandPath] + Comma [rest of string was truncated]";. + + + + + Looks up a localized string similar to ProviderName=[ProviderName] + NewProviderState=[NewProviderState] + + SequenceNumber=[SequenceNumber] + + HostName=[HostName] + HostVersion=[HostVersion] + HostId=[HostId] + HostApplication=[HostApplication] + EngineVersion=[EngineVersion] + RunspaceId=[RunspaceId] + PipelineId=[PipelineId] + CommandName=[CommandName] + CommandType=[CommandType] + ScriptName=[ScriptName] + CommandPath=[CommandPath] + CommandLine=[CommandLine]. + + + + + Looks up a localized string similar to VariableName=[VariableName] + NewValue=[NewValue] + PreviousValue=[PreviousValue] + + SequenceNumber=[SequenceNumber] + + HostName=[HostName] + HostVersion=[HostVersion] + HostId=[HostId] + HostApplication=[HostApplication] + EngineVersion=[EngineVersion] + RunspaceId=[RunspaceId] + PipelineId=[PipelineId] + CommandName=[CommandName] + CommandType=[CommandType] + ScriptName=[ScriptName] + CommandPath=[CommandPath] + CommandLine=[CommandLine]. + + + + + Looks up a localized string similar to UNKNOWN. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The parameter alias cannot be specified because an alias with the name '{0}' was already defined multiple times for the command.. + + + + + Looks up a localized string similar to Cannot process the argument because the argument value is not a string. The values of parameter arguments that have the ArgumentTransformationAttribute specified should be strings.. + + + + + Looks up a localized string similar to The attribute cannot be added because variable {0} with value {1} would no longer be valid.. + + + + + Looks up a localized string similar to The variable cannot be validated because the value {1} is not a valid value for the {0} variable.. + + + + + Looks up a localized string similar to The job conversion type must derive from IAstToScriptBlockConverter.. + + + + + Looks up a localized string similar to Cannot initialize attributes for "{0}": "{1}". + + + + + Looks up a localized string similar to A parameter with the name '{0}' was defined multiple times for the command.. + + + + + Looks up a localized string similar to The parameter '{0}' cannot be specified because it conflicts with the parameter alias of the same name for parameter '{1}'.. + + + + + Looks up a localized string similar to Cannot get or run the command. The maximum number of parameter sets for this command has been exceeded.. + + + + + Looks up a localized string similar to The number of provided arguments, ({1}), exceeds the maximum number of allowed arguments ({0}). Provide fewer than {0} arguments, and then try the command again.. + + + + + Looks up a localized string similar to The specified maximum number of arguments for a parameter is fewer than the specified minimum number of arguments. Update the ValidateCount attribute for the parameter.. + + + + + Looks up a localized string similar to The number of provided arguments ({1}) is fewer than the minimum number of allowed arguments ({0}). Provide more than {0} arguments, and then try the command again.. + + + + + Looks up a localized string similar to The ValidateCount attribute cannot be applied to a non-array parameter. Either remove the attribute from the parameter or make the parameter an array parameter.. + + + + + Looks up a localized string similar to The path argument is invalid. Supply a path argument that is a string type.. + + + + + Looks up a localized string similar to The path argument drive {0} does not belong to the set of approved drives: {1}. Supply a path argument with an approved drive.. + + + + + Looks up a localized string similar to The path argument contains invalid characters.. + + + + + Looks up a localized string similar to The path argument has no root drive. Supply a full path argument with a root drive.. + + + + + Looks up a localized string similar to "{0}" failed on property "{1}" {2}. + + + + + Looks up a localized string similar to The character length of the {1} argument is too long. Shorten the character length of the argument so it is fewer than or equal to "{0}" characters, and then try the command again.. + + + + + Looks up a localized string similar to The specified maximum character length of the argument is shorter than the specified minimum argument character length. Update the ValidateLength attribute for the parameter.. + + + + + Looks up a localized string similar to The character length ({1}) of the argument is too short. Specify an argument with a length that is greater than or equal to "{0}", and then try the command again.. + + + + + Looks up a localized string similar to The ValidateLength attribute cannot be applied to a parameter that is not a string or string[] parameter. Make the parameter a string or string[] parameter.. + + + + + Looks up a localized string similar to The argument has a null value, or an element of the argument collection contains a null value. Provide a collection that does not contain any null values, and then try the command again.. + + + + + Looks up a localized string similar to The argument is null. Provide a valid value for the argument, and then try running the command again.. + + + + + Looks up a localized string similar to The argument is null, empty, or an element of the argument collection contains a null value. Supply a collection that does not contain any null values and then try the command again.. + + + + + Looks up a localized string similar to The argument is null or empty. Provide an argument that is not null or empty, and then try the command again.. + + + + + Looks up a localized string similar to The argument "{0}" does not match the "{1}" pattern. Supply an argument that matches "{1}" and try the command again.. + + + + + Looks up a localized string similar to The argument cannot be validated because its type "{0}" is not the same type ({1}) as the maximum and minimum limits of the parameter. Make sure the argument is of type {1} and then try the command again.. + + + + + Looks up a localized string similar to The {0} argument is greater than the maximum allowed range of {1}. Supply an argument that is less than or equal to {1} and then try the command again.. + + + + + Looks up a localized string similar to The specified maximum range cannot be accepted because it is less than the specified minimum range. Update the ValidateRange attribute for the parameter.. + + + + + Looks up a localized string similar to The specified minimum range ({0}) cannot be accepted because it is not the same type as the specified maximum range ({1}). Update the ValidateRange attribute for the parameter.. + + + + + Looks up a localized string similar to Cannot accept the MaxRange and MinRange parameter types. Both parameters must be objects that implement an IComparable interface.. + + + + + Looks up a localized string similar to The {0} argument is less than the minimum allowed range of {1}. Supply an argument that is greater than or equal to {1} and then try the command again.. + + + + + Looks up a localized string similar to The "{1}" validation script for the argument with value "{0}" did not return a result of True. Determine why the validation script failed, and then try the command again.. + + + + + Looks up a localized string similar to The argument "{0}" does not belong to the set "{1}" specified by the ValidateSet attribute. Supply an argument that is in the set and then try the command again.. + + + + + Looks up a localized string similar to Cannot process input. The argument "{0}" is not trusted.. + + + + + Looks up a localized string similar to Cannot validate argument '{0}' because it is not a valid variable name.. + + + + + Looks up a localized string similar to The "{0}" argument does not contain a valid Windows PowerShell version. Supply a valid version number and then try the command again.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The contents of file {0} might have been changed by an unauthorized user or process, because the hash of the file does not match the hash stored in the digital signature. The script cannot run on the specified system. For more information, run Get-Help about_Signing.. + + + + + Looks up a localized string similar to The signature cannot be verified because it is incompatible with the current system.. + + + + + Looks up a localized string similar to The signature cannot be verified because it is incompatible with the current system. The hash algorithm is not valid.. + + + + + Looks up a localized string similar to The file {0} is not digitally signed. You cannot run this script on the current system. For more information about running scripts and setting execution policy, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170. + + + + + Looks up a localized string similar to Cannot sign the file because the system does not support signing operations on {0} files.. + + + + + Looks up a localized string similar to Cannot sign the file because the system does not support signing operations on files that do not have a file name extension.. + + + + + Looks up a localized string similar to File {0} is signed but the signer is not trusted on this system.. + + + + + Looks up a localized string similar to Signature verified.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Parameter cannot be processed because the parameter name '{1}' is ambiguous. Possible matches include:{6}.. + + + + + Looks up a localized string similar to Parameter set cannot be resolved using the specified named parameters.. + + + + + Looks up a localized string similar to Cannot bind positional parameters '{1}'.. + + + + + Looks up a localized string similar to Cannot bind positional parameters because no names were given.. + + + + + Looks up a localized string similar to Cannot convert '{6}' to the type '{2}' required by parameter '{1}'. {7}. + + + + + Looks up a localized string similar to Cannot bind parameter '{1}'. {6}. + + + + + Looks up a localized string similar to Cannot bind cmdlet {0} because parameter '{1}' is of type '{2}' and the Add() method cannot be identified, or multiple Add() methods exist. {6}. + + + + + Looks up a localized string similar to {6} This error might have been caused by applying the default parameter binding. You can disable the default parameter binding in $PSDefaultParameterValues by setting $PSDefaultParameterValues["Disabled"] to be $true, and then trying again. The following default parameters were successfully bound for this cmdlet when the error occurred:{7}. + + + + + Looks up a localized string similar to {6} This failure might be caused by applying the default parameter binding. You can disable the default parameter binding in $PSDefaultParameterValues by setting $PSDefaultParameterValues["Disabled"] to be $true, and retry. The following default parameter was successfully bound for this cmdlet when the error occurred:{7}. + + + + + Looks up a localized string similar to Multiple different default values are defined in $PSDefaultParameterValues for the parameter matching the following name or alias: {0}. These defaults have been ignored.. + + + + + Looks up a localized string similar to Cannot process command. The parameter '{0}' is defined multiple times.. + + + + + Looks up a localized string similar to Cannot retrieve dynamic parameters for the cmdlet. Dynamic parameter '{1}' specified parameter set '{6}' which was not statically defined for this cmdlet. New parameter sets may not be defined as dynamic parameters, although dynamic parameters may join parameter sets which were statically defined.. + + + + + Looks up a localized string similar to The binding of default value '{0}' to parameter '{1}' failed: {2}. + + + + + Looks up a localized string similar to Pipeline input cannot be processed because the default value of parameter '{1}' cannot be retrieved. {6}. + + + + + Looks up a localized string similar to Cannot retrieve the dynamic parameters for the cmdlet. {6}. + + + + + Looks up a localized string similar to The input object cannot be bound because it did not contain the information required to bind all mandatory parameters: {6}. + + + + + Looks up a localized string similar to The input object cannot be bound to any parameters for the command either because the command does not take pipeline input or the input and its properties do not match any of the parameters that take pipeline input.. + + + + + Looks up a localized string similar to The automatic variable $PSDefaultParameterValues was ignored because it is not a valid hashtable object. It must be of the type IDictionary.. + + + + + Looks up a localized string similar to The key '{0}' has already been added to the dictionary.. + + + + + Looks up a localized string similar to Cannot bind argument to parameter '{1}', because PSTypeNames of the argument do not match the PSTypeName required by the parameter: {6}.. + + + + + Looks up a localized string similar to Missing an argument for parameter '{1}'. Specify a parameter of type '{2}' and try again.. + + + + + Looks up a localized string similar to Cannot process command because of one or more missing mandatory parameters:{1}.. + + + + + Looks up a localized string similar to The keys '{0}' do not have valid formats. For information about the correct format, see about_Parameters_Default_Values at https:/go.microsoft.com/fwlink/?LinkId=228266.. + + + + + Looks up a localized string similar to The following name or alias defined in $PSDefaultParameterValues for this cmdlet resolves to multiple parameters: {0}. The default has been ignored.. + + + + + Looks up a localized string similar to A parameter cannot be found that matches parameter name '{1}'.. + + + + + Looks up a localized string similar to Cannot bind parameter because parameter '{1}' is specified more than once. To provide multiple values to parameters that can accept multiple values, use the array syntax. For example, "-parameter value1,value2,value3".. + + + + + Looks up a localized string similar to Cannot process argument transformation on parameter '{1}'. {6}. + + + + + Looks up a localized string similar to {6}. + + + + + Looks up a localized string similar to Cannot validate argument on parameter '{1}'. {6}. + + + + + Looks up a localized string similar to Cannot bind argument to parameter '{1}' because it is an empty array.. + + + + + Looks up a localized string similar to Cannot bind argument to parameter '{1}' because it is an empty collection.. + + + + + Looks up a localized string similar to Cannot bind argument to parameter '{1}' because it is an empty string.. + + + + + Looks up a localized string similar to Cannot bind argument to parameter '{1}' because it is null.. + + + + + Looks up a localized string similar to Cannot bind parameter '{1}' to the target. {6}. + + + + + Looks up a localized string similar to Parameter '{1}' cannot be specified in parameter set '{6}'.. + + + + + Looks up a localized string similar to A positional parameter cannot be found that accepts argument '{1}'.. + + + + + Looks up a localized string similar to cmdlet {0} at command pipeline position {1}. + + + + + Looks up a localized string similar to Supply values for the following parameters:. + + + + + Looks up a localized string similar to Cannot bind cmdlet {0} because runtime-defined parameter '{1}' was added to the RuntimeDefinedParameterDictionary with key '{6}'. The key must be the same as RuntimeDefinedParameter.Name.. + + + + + Looks up a localized string similar to The input to the script block for parameter '{1}' failed. {6}. + + + + + Looks up a localized string similar to Cannot evaluate parameter '{1}' because its argument is specified as a script block and there is no input. A script block cannot be evaluated without input.. + + + + + Looks up a localized string similar to Cannot evaluate parameter '{1}' because its argument input did not produce any output.. + + + + + Looks up a localized string similar to The key '{0}' does not have a valid format. For information about the correct format, see about_Parameters_Default_Values at https:/go.microsoft.com/fwlink/?LinkId=228266.. + + + + + Looks up a localized string similar to The key '{0}' of type '{1}' is not a string value. DefaultParameterDictionary only accepts string value keys.. + + + + + Looks up a localized string similar to Parameter '{0}' is obsolete. {1}. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to A hash table can only be added to another hash table.. + + + + + Looks up a localized string similar to * stream. + + + + + Looks up a localized string similar to There are valid conversions from {0} to {1}.. + + + + + Looks up a localized string similar to Ambiguous parameter '-{0}' + Possible matches are. + + + + + Looks up a localized string similar to + {0} ({1}). + + + + + Looks up a localized string similar to The path cannot be processed because it resolved to more than one file; only one file at a time can be processed.. + + + + + Looks up a localized string similar to Type name '{0}' is ambiguous, it could be '{1}' or '{2}'.. + + + + + Looks up a localized string similar to The ampersand (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double quotation marks ("&") to pass it as part of a string.. + + + + + Looks up a localized string similar to Array assignment to [{0}] failed: {1}.. + + + + + Looks up a localized string similar to Array multiplication resulting in more than {0} elements is not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Array references are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Array assignment to [{0}] failed because assignment to slices is not supported.. + + + + + Looks up a localized string similar to The right operand of '-as' must be a type.. + + + + + Looks up a localized string similar to Assignment statements are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Cannot assign automatic variable '{0}' with type '{1}'. + + + + + Looks up a localized string similar to An AST cannot be used as the child of more than one AST. To use this AST in another AST, call the Copy() method and use its result.. + + + + + Looks up a localized string similar to Attribute '{0}' is not valid on this declaration. It is valid on '{1}' declarations only.. + + + + + Looks up a localized string similar to Attributes are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to An error '{0}' occurred while processing this script. Text describing this error could not be loaded.. + + + + + Looks up a localized string similar to An error '{0}' occurred while processing this script. Text describing this error could not be loaded due to error '{1}'.. + + + + + Looks up a localized string similar to An error occurred while enumerating through a collection: {0}.. + + + + + Looks up a localized string similar to The expression after '{0}' in a pipeline element produced an object that was not valid. It must result in a command name, a script block, or a CommandInfo object.. + + + + + Looks up a localized string similar to Could not process combined Begin/Process/End clauses with command text. A script or function can either have begin/process/end clauses or command text but not both.. + + + + + Looks up a localized string similar to The numeric constant {0} is not valid.. + + + + + Looks up a localized string similar to The argument to operator '{0}' is not valid: {1}.. + + + + + Looks up a localized string similar to A regular expression that was provided to '{0}' is not valid: {1}.. + + + + + Looks up a localized string similar to The {0} operator allows only two elements to follow it, not {1}.. + + + + + Looks up a localized string similar to Base class '{0}' does not contain a parameterless constructor.. + + + + + Looks up a localized string similar to Do not continue processing, throw the exception instead.. + + + + + Looks up a localized string similar to &Break. + + + + + Looks up a localized string similar to Cannot perform call.. + + + + + Looks up a localized string similar to Cannot convert the value to type "{0}".. + + + + + Looks up a localized string similar to Cannot create type. Only core types are supported in this language mode.. + + + + + Looks up a localized string similar to Cannot find an appropriate constructor to instantiate the custom attribute object for type '{0}'.. + + + + + Looks up a localized string similar to Unable to index into an object of type {0}.. + + + + + Looks up a localized string similar to The method cannot be invoked.. + + + + + Looks up a localized string similar to Cannot use assembly with an UNC path: '{0}'.. + + + + + Looks up a localized string similar to Cannot use assembly with uri schema '{0}'.. + + + + + Looks up a localized string similar to Failed to load the PowerShell data file '{0}' with the following error: + {1}. + + + + + Looks up a localized string similar to Cannot resolve the path '{0}' to a single .psd1 file.. + + + + + Looks up a localized string similar to ResolveComReference.CannotRetrieveTypeInformation.. + + + + + Looks up a localized string similar to Cannot run a document in the middle of a pipeline: {0}.. + + + + + Looks up a localized string similar to Cannot run a document in PowerShell Core: {0}.. + + + + + Looks up a localized string similar to Cannot use '&' or '.' operators to invoke a module scope command across language boundaries.. + + + + + Looks up a localized string similar to Cannot use '&' to invoke in the context of binary module '{0}'. Specify a non-binary module after the '&' and try the operation again.. + + + + + Looks up a localized string similar to Cannot use '&' to invoke in the context of module '{0}' because it is not imported. Import the module '{0}' and try the operation again.. + + + + + Looks up a localized string similar to Cim deserializer threw an error when deserializing file {0}.. + + + + + Looks up a localized string similar to The class name '{0}' does not match '{1}', the name of the file in which it is defined. Rename either the file name to match the class name or vice versa. + + + + + Looks up a localized string similar to The command '{0}' is not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to An unhandled COM interop exception occurred: {0}. + + + + + Looks up a localized string similar to COM object does not support events.. + + + + + Looks up a localized string similar to COM object does not support specified source interface.. + + + + + Looks up a localized string similar to The configuration block results were null or empty. Verify that configurations were defined in the block.. + + + + + Looks up a localized string similar to An attribute name for resource '{0}' was found that is not valid. An attribute name must be a simple string, and cannot contain variables or expressions. Replace '{1}' with a simple string.. + + + + + Looks up a localized string similar to The configuration name is missing or '{' was not found for a default definition.. + + + + + Looks up a localized string similar to Configuration keyword is not allowed in constrainedLanguage mode.. + + + + + Looks up a localized string similar to Configuration is not supported on WinPE.. + + + + + Looks up a localized string similar to Configuration keyword is not supported in PowerShell Core.. + + + + + Looks up a localized string similar to A constructor cannot specify a return type.. + + + + + Looks up a localized string similar to Report the error then continue with the next script statement.. + + + + + Looks up a localized string similar to &Continue. + + + + + Looks up a localized string similar to Flow of control cannot leave a Finally block.. + + + + + Looks up a localized string similar to Failed to convert the value of CimProperty {0} to the property value of class {1}.. + + + + + Looks up a localized string similar to Could not get dispatch ID for {0} (error: {1}).. + + + + + Looks up a localized string similar to Cannot find the type for custom attribute '{0}'. Make sure that the assembly that contains this type is loaded.. + + + + + Looks up a localized string similar to Cannot define enum because of a cycle in the initialization expressions.. + + + + + Looks up a localized string similar to Cannot define data section. Definition of additional supported commands is not supported in this language mode.. + + + + + Looks up a localized string similar to The Data section variable "{0}" has already been used for an existing variable or another Data section.. + + + + + Looks up a localized string similar to The data statement is not allowed in restricted language mode or another Data section.. + + + + + Looks up a localized string similar to DebugMode should only have one value.. + + + + + Looks up a localized string similar to debug stream. + + + + + Looks up a localized string similar to $PSCulture, $PSUICulture, $true, $false, $null. + + + + + Looks up a localized string similar to PartialConfiguration '{0}' has a Refresh Mode set to Disabled which is not a valid mode for Partial Configurations. Use Pull or Push refresh mode. . + + + + + Looks up a localized string similar to Cannot find an overload for "{0}" and the argument count: "{1}". + + + + + Looks up a localized string similar to Error while invoking {0}. Could not find member.. + + + + + Looks up a localized string similar to Error while invoking {0}. Named arguments are not supported.. + + + + + Looks up a localized string similar to Error while invoking {0}. Overflow detected.. + + + + + Looks up a localized string similar to Error while invoking {0}. A required parameter was omitted.. + + + + + Looks up a localized string similar to Exception setting "{0}": Cannot convert the "{1}" value of type "{2}" to type "{3}".. + + + + + Looks up a localized string similar to Dot sourcing is not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to The Do and While statements are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Invalid Get method. Get method must return [{0}] and accepts no parameters.. + + + + + Looks up a localized string similar to Invalid key property. The key property must be of [string], signed/unsigned integer, or Enum types.. + + + + + Looks up a localized string similar to The DSC resource '{0}' has no default constructor.. + + + + + Looks up a localized string similar to The DSC resource '{0}' is missing a Get method that returns [{0}] and accepts no parameters.. + + + + + Looks up a localized string similar to The DSC resource '{0}' must have at least one key property (using the syntax [DscProperty(Key)].). + + + + + Looks up a localized string similar to The DSC resource '{0}' is missing a Set method that returns [void] and accepts no parameters.. + + + + + Looks up a localized string similar to The DSC resource '{0}' is missing a Test method that returns [bool] and accepts no parameters.. + + + + + Looks up a localized string similar to Unable to load resource '{0}': Resource not found.. + + + + + Looks up a localized string similar to A second CIM class definition for '{0}' was found while processing the schema file '{1}'. This class was already defined in the file(s) '{2}'. Remove the redundant definition, and then try again.. + + + + + Looks up a localized string similar to Duplicate parameter ${0} in parameter list.. + + + + + Looks up a localized string similar to Duplicate keys '{0}' are not allowed in hash literals.. + + + + + Looks up a localized string similar to Resource name '{0}' is already being used by another Resource or Configuration.. + + + + + Looks up a localized string similar to Duplicate named arguments '{0}' are not allowed.. + + + + + Looks up a localized string similar to Duplicate property assignements are not allowed in an instance definition.. + + + + + Looks up a localized string similar to Duplicate '{0}' qualifier. + + + + + Looks up a localized string similar to A duplicate resource identifier '{0}' was found while processing the specification for node '{1}'. Change the name of this resource so that it is unique within the node specification.. + + + + + Looks up a localized string similar to Script command clause '{0}' has already been defined.. + + + + + Looks up a localized string similar to Exception occurred when post-parsing dynamic keyword '{0}' with details '{1}'.. + + + + + Looks up a localized string similar to Exception occurred when pre-parsing dynamic keyword '{0}' with details '{1}'.. + + + + + Looks up a localized string similar to Exception occurred when performing semantic check for dynamic keyword '{0}' with details '{1}'.. + + + + + Looks up a localized string similar to Braced variable name cannot be empty.. + + + + + Looks up a localized string similar to Catch block must be the last catch block.. + + + + + Looks up a localized string similar to If the expression passed to the Where() operator is null then you must specify a non-Default value for the selection mode argument. Please change the value of the mode argument to a value other than Default and try running your script again.. + + + + + Looks up a localized string similar to The key property for an entry in the dictionary of functions to define cannot be empty because the key property is used as the function name. Specify a non-empty string as the value of the key property, and then try the operation again.. + + + + + Looks up a localized string similar to An empty pipe element is not allowed.. + + + + + Looks up a localized string similar to An empty ${} variable reference was found. A name is required inside the braces.. + + + + + Looks up a localized string similar to Missing } at end of variable name.. + + + + + Looks up a localized string similar to Missing ) at end of subexpression.. + + + + + Looks up a localized string similar to Missing ] at end of attribute or type literal.. + + + + + Looks up a localized string similar to Missing ] at end of type token.. + + + + + Looks up a localized string similar to Enumerator value must be a constant value.. + + + + + Looks up a localized string similar to Enumerator value is too large for a System.Int.. + + + + + Looks up a localized string similar to Parser errors were detected.. + + + + + Looks up a localized string similar to Cannot load assembly '{0}'.. + + + + + Looks up a localized string similar to error stream. + + + + + Looks up a localized string similar to Action to take for this exception:. + + + + + Looks up a localized string similar to Exception parsing MOF file '{0}':{1}.. + + + + + Looks up a localized string similar to Exception type {0} is already handled by a previous handler.. + + + + + Looks up a localized string similar to Expandable strings are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Expandable strings are not allowed in the list of supported commands for the Data section.. + + + + + Looks up a localized string similar to Property {0} of PowerShell class {1} is not declared as array type, but defined in its configuration instance as instance array type.. + + + + + Looks up a localized string similar to An expression was expected after '('.. + + + + + Looks up a localized string similar to You must provide a value expression following the '{0}' operator.. + + + + + Looks up a localized string similar to Expressions are only allowed as the first element of a pipeline.. + + + + + Looks up a localized string similar to Failed to parse module script file '{0}' with error + '{1}'.. + + + + + Looks up a localized string similar to No files matching '{0}' were found.. + + + + + Looks up a localized string similar to The current provider ({0}) cannot open a file.. + + + + + Looks up a localized string similar to The file could not be read: {0}.. + + + + + Looks up a localized string similar to Flow control statements such as Break, Continue, Return, Exit, and Throw are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to The generic collection type [{0}] passed to ForEach() has too many type arguments. Please change the specified type to be a generic collection with only one type argument then try running your script again.. + + + + + Looks up a localized string similar to The ForEach() operator could not find a member '{0}' on the target object. Please verify that the named member exists and then try running your script again.. + + + + + Looks up a localized string similar to Foreach statements are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Unable to convert input to the target type [{0}] passed to the ForEach() operator. Please check the specified type and try running your script again.. + + + + + Looks up a localized string similar to Error formatting a string: {0}.. + + + + + Looks up a localized string similar to For and While statements are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to The 'from' keyword is not supported in this version of the language.. + + + + + Looks up a localized string similar to Function declarations are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to The format of the resource reference '{0}' in the exclusive list for resource '{1}' is not valid. An exclusive resource name should be in the format '<typename>\<name>', with no spaces.. + + + + + Looks up a localized string similar to The format of the resource reference '{0}' in the Requires list for resource '{1}' is not valid. A required resource name should be in the format '[<typename>]<name>', with alphanumeric characters, spaces, '_', '-', '.' and '\'.. + + + + + Looks up a localized string similar to IDispatch::GetIDsOfNames behaved unexpectedly for {0}.. + + + + + Looks up a localized string similar to The PartialConfiguration '{0}' is set to pull mode which requires a ConfigurationSource property.. + + + + + Looks up a localized string similar to There is no Runspace available to get and run the SteppablePipeline in this thread. You can provide one in the DefaultRunspace property of the System.Management.Automation.Runspaces.Runspace type. The script block you attempted to get SteppablePipeline from was: {0}. + + + + + Looks up a localized string similar to Cannot convert hashtable to an object of the following type: {0}. Hashtable-to-Object conversion is not supported in constrained language mode, restricted language mode or a Data section.. + + + + + Looks up a localized string similar to host stream. + + + + + Looks up a localized string similar to Missing condition in if statement after '{0} ('.. + + + + + Looks up a localized string similar to Import-DscResource cannot be specified inside of Node context. + + + + + Looks up a localized string similar to Import-DscResource dynamic keyword supports only one module when Name parameter is specified.. + + + + + Looks up a localized string similar to The syntax of the Import-DscResource dynamic keyword is: + + Import-DscResource [-Name <ResourceName(s)>] [-ModuleName <ModuleName(s)>] [-ModuleVersion <ModuleVersion>]. + + Name : Names of one or more resources to import. + ModuleName : Module names or ModuleSpecification objects of one or more modules to import. + ModuleVersion : Version of module to import. If used, ModuleName must represent only one module by name.. + + + + + Looks up a localized string similar to Positional parameters are not supported for the Import-DscResource dynamic keyword. The syntax of Import-DscResource dynamic keyword is: "Import-DscResource [-Name <ResourceName(s)>] [-ModuleName <ModuleName(s)>] [-ModuleVersion <ModuleVersion>]. + + + + + Looks up a localized string similar to $(subexpression) is missing the closing ')'.. + + + + + Looks up a localized string similar to ${{variable}} reference starting is missing the closing '}}'.. + + + + + Looks up a localized string similar to The hash literal was incomplete.. + + + + + Looks up a localized string similar to Missing a property name or method definition.. + + + + + Looks up a localized string similar to There is an incomplete property assignment block in the instance definition.. + + + + + Looks up a localized string similar to Incomplete string token.. + + + + + Looks up a localized string similar to The switch statement was incomplete.. + + + + + Looks up a localized string similar to Incomplete variable reference token.. + + + + + Looks up a localized string similar to Assigning to array element at index [{0}] failed: {1}.. + + + + + Looks up a localized string similar to Array assignment failed because index '{0}' was out of range.. + + + + + Looks up a localized string similar to information stream. + + + + + Looks up a localized string similar to Failed to create an object of PowerShell class {0}.. + + + + + Looks up a localized string similar to '{0}': Interface name expected.. + + + + + Looks up a localized string similar to Variable reference is not valid. The variable name is missing.. + + + + + Looks up a localized string similar to A COM object was accessed after it was already released: {0}. + + + + + Looks up a localized string similar to The configuration name '{0}' is not valid. Standard names may only contain letters (a-z, A-Z), numbers (0-9), period (.), hyphen (-) and underscore (_). The name may not be null or empty, and should start with a letter.. + + + + + Looks up a localized string similar to The parameter {0} is not valid for the configuration statement.. + + + + + Looks up a localized string similar to The custom attribute type '{0}' is not derived from System.Attribute.. + + + + + Looks up a localized string similar to The body of the Data section is not valid. The Data section body can be only a convert-* command invocation optionally enclosed by an If statement.. + + + + + Looks up a localized string similar to The token '{0}' is not a valid statement separator in this version.. + + + + + Looks up a localized string similar to The file name argument to -file in the switch statement is not valid.. + + + + + Looks up a localized string similar to The parameter {0} is not valid for the foreach statement.. + + + + + Looks up a localized string similar to Parameter declarations are a comma-separated list of variable names with optional initializer expressions.. + + + + + Looks up a localized string similar to The hashtable supplied to the Desired State Configuration resource {0} is not valid. The key or value cannot be null or empty.. + + + + + Looks up a localized string similar to The member '{0}' is not valid. Valid members are + '{1}'.. + + + + + Looks up a localized string similar to The character '{0}' is not valid. Labels can contain only alphanumeric characters, numbers, and underscores ('_').. + + + + + Looks up a localized string similar to The assignment expression is not valid. The input to an assignment operator must be an object that is able to accept assignments, such as a variable or a property.. + + + + + Looks up a localized string similar to '{0}' cannot be specified in LocalConfigurationManager resource. Please switch to Settings instead or use only following values: {1}.. + + + + + Looks up a localized string similar to A null key is not allowed in a hash literal.. + + + + + Looks up a localized string similar to Parameter '{0}' is not valid. + + + + + Looks up a localized string similar to The "{0}" parameter of the Data section is not valid. The valid Data section parameter is SupportedCommand.. + + + + + Looks up a localized string similar to The username supplied to the Desired State Configuration resource {0} is not valid. The username cannot be null or empty.. + + + + + Looks up a localized string similar to The PowerShell data file '{0}' is invalid since it cannot be evaluated into a Hashtable object.. + + + + + Looks up a localized string similar to The regular expression pattern {0} is not valid.. + + + + + Looks up a localized string similar to A Begin statement block, Process statement block, or parameter statement is not allowed in a Data section.. + + + + + Looks up a localized string similar to The combination of options with the -split operator is not valid.. + + + + + Looks up a localized string similar to Options are not allowed on the -split operator with a predicate.. + + + + + Looks up a localized string similar to The parameter {0} is not valid for the switch statement.. + + + + + Looks up a localized string similar to A token that is not valid was found in the list of supported commands for the Data section.. + + + + + Looks up a localized string similar to The username supplied to the Desired State Configuration resource {0} is not valid. The username cannot be null or empty.. + + + + + Looks up a localized string similar to Expression is not allowed in a Using expression.. + + + + + Looks up a localized string similar to '{0}' is not a valid value for property '{1}' on class '{2}'. Please change the value to one of the following strings: {3}.. + + + + + Looks up a localized string similar to '{0}' is not a valid value for using name.. + + + + + Looks up a localized string similar to Variable reference is not valid. '$' was not followed by a valid variable name character. Consider using ${} to delimit the name.. + + + + + Looks up a localized string similar to Variable reference is not valid. ':' was not followed by a valid variable name character. Consider using ${} to delimit the name.. + + + + + Looks up a localized string similar to Cannot invoke method. Method invocation is supported only on core types in this language mode.. + + + + + Looks up a localized string similar to You cannot call a method on a null-valued expression.. + + + + + Looks up a localized string similar to The right operand of '-is' must be a type.. + + + + + Looks up a localized string similar to Unable to assign to a dictionary of type {0} when the key is of type {1}.. + + + + + Looks up a localized string similar to Label '{0}' not found inside the method.. + + + + + Looks up a localized string similar to 'PowerShellAssemblyLoadContext' is not initialized.. + + + + + Looks up a localized string similar to The member '{0}' is already defined.. + + + + + Looks up a localized string similar to Meta Configuration resource {0} is not allowed in the regular configuration. Use meta configuration resources in a configuration with [DscLocalConfigurationManager()] attribute.. + + + + + Looks up a localized string similar to Method calls are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Not all code path returns value within method.. + + + + + Looks up a localized string similar to Method invocation failed because [{0}] does not contain a method named '{1}'.. + + + + + Looks up a localized string similar to This method should not be called.. + + + + + Looks up a localized string similar to Missing argument in parameter list.. + + + + + Looks up a localized string similar to Array index expression is missing or not valid.. + + + + + Looks up a localized string similar to The type name is missing the assembly name specification.. + + + + + Looks up a localized string similar to Missing 'base' after ':' in a base class constructor call.. + + + + + Looks up a localized string similar to Missing '{' in object definition.. + + + + + Looks up a localized string similar to The Catch block is missing its statement block.. + + + + + Looks up a localized string similar to The Try statement is missing its Catch or Finally block.. + + + + + Looks up a localized string similar to Missing closing brace in the data section statement.. + + + + + Looks up a localized string similar to The name for the configuration is missing. Provide the missing name as a simple name, string, or string-valued expresson.. + + + + + Looks up a localized string similar to Missing '{' in switch statement.. + + + + + Looks up a localized string similar to Missing '{' in configuration statement.. + + + + + Looks up a localized string similar to Missing closing '}' in statement block or type definition.. + + + + + Looks up a localized string similar to The terminator '{0}' is missing from the multiline comment.. + + + + + Looks up a localized string similar to Missing closing ')' after expression part of foreach loop.. + + + + + Looks up a localized string similar to Missing closing ')' after expression in '{0}' statement.. + + + + + Looks up a localized string similar to Missing closing ')' in expression.. + + + + + Looks up a localized string similar to Missing ')' in function parameter list.. + + + + + Looks up a localized string similar to Missing ')' in method call.. + + + + + Looks up a localized string similar to Missing closing ')' in subexpression.. + + + + + Looks up a localized string similar to Missing ')' after expression in switch statement.. + + + + + Looks up a localized string similar to Missing ']' after array index expression.. + + + + + Looks up a localized string similar to Missing '=' operator after key in hash literal.. + + + + + Looks up a localized string similar to The "=" operator is missing after a named argument.. + + + + + Looks up a localized string similar to Missing '=' operator after key in property assignment.. + + + + + Looks up a localized string similar to Missing '=' operator. + + + + + Looks up a localized string similar to Missing expression after '{0}' in pipeline element.. + + + + + Looks up a localized string similar to Missing expression after '{0}' in loop.. + + + + + Looks up a localized string similar to Missing expression after unary operator '{0}'.. + + + + + Looks up a localized string similar to Missing expression after '{0}'.. + + + + + Looks up a localized string similar to Missing statement after '=' in named argument.. + + + + + Looks up a localized string similar to Cannot process the 'switch' statement because of a missing file name argument to the -file option.. + + + + + Looks up a localized string similar to Missing file specification after redirection operator.. + + + + + Looks up a localized string similar to The Finally block is missing its statement block.. + + + + + Looks up a localized string similar to Missing expression in foreach loop.. + + + + + Looks up a localized string similar to Missing statement body in foreach loop.. + + + + + Looks up a localized string similar to Missing function body in function declaration.. + + + + + Looks up a localized string similar to Missing 'in' after variable in foreach loop.. + + + + + Looks up a localized string similar to Missing key before '=' in hash literal.. + + + + + Looks up a localized string similar to Missing statement body in {0} loop.. + + + + + Looks up a localized string similar to Missing '(' in class method parameter list.. + + + + + Looks up a localized string similar to Missing name after {0} keyword.. + + + + + Looks up a localized string similar to Missing statement block after '{0}'.. + + + + + Looks up a localized string similar to Missing namespace alias. + + + + + Looks up a localized string similar to Missing the opening brace "{" in the Data section.. + + + + + Looks up a localized string similar to Missing opening '(' after keyword '{0}'.. + + + + + Looks up a localized string similar to Missing '(' after '{0}' in if statement.. + + + + + Looks up a localized string similar to Missing property name after reference operator.. + + + + + Looks up a localized string similar to Missing property name. + + + + + Looks up a localized string similar to Property reference or expression is missing or not valid.. + + + + + Looks up a localized string similar to Missing ';' or end-of-line in property definition.. + + + + + Looks up a localized string similar to Missing argument to -Resources. The argument to the -Resource parameter must be a comma-separated list of names or constant strings naming modules to reference for resource type definitions.. + + + + + Looks up a localized string similar to Unexpected token '{0}'. The argument to the -Resource parameter must be a comma-separated list of names or constant strings naming modules to reference for resource type definitions.. + + + + + Looks up a localized string similar to Missing statement body after keyword '{0}'.. + + + + + Looks up a localized string similar to Missing statement block after {0} ( condition ).. + + + + + Looks up a localized string similar to Missing statement block after 'else' keyword.. + + + + + Looks up a localized string similar to The Data section is missing its statement block.. + + + + + Looks up a localized string similar to Missing statement after '=' in hash literal.. + + + + + Looks up a localized string similar to Missing a newline or semicolon.. + + + + + Looks up a localized string similar to Missing condition in switch statement clause.. + + + + + Looks up a localized string similar to Missing statement block in switch statement clause.. + + + + + Looks up a localized string similar to Missing expression after '(' in switch statement.. + + + + + Looks up a localized string similar to The terminator '#>' is missing from the multiline comment.. + + + + + Looks up a localized string similar to Cannot assign property, use '{0}{1}'.. + + + + + Looks up a localized string similar to The ThrottleLimit parameter of the foreach statement is missing a value. Supply a throttle limit to the parameter.. + + + + + Looks up a localized string similar to The 'trap' statement was incomplete. A trap statement requires a body.. + + + + + Looks up a localized string similar to Incomplete 'try' statement. A try statement requires a body.. + + + + + Looks up a localized string similar to The Try statement is missing its statement block.. + + + + + Looks up a localized string similar to Missing type alias. + + + + + Looks up a localized string similar to Missing '{0}' body in '{0}' declaration.. + + + + + Looks up a localized string similar to Cannot assign property, use '{0}{1}'.. + + + + + Looks up a localized string similar to Missing type literal.. + + + + + Looks up a localized string similar to Missing type name after '['.. + + + + + Looks up a localized string similar to Missing using name. + + + + + Looks up a localized string similar to Missing using directive. + + + + + Looks up a localized string similar to Resource '{0}' requires that a value of type '{1}' be provided for property '{2}'.. + + + + + Looks up a localized string similar to The SupportedCommand parameter of the Data section is missing a value. Supply a cmdlet or function name to the parameter.. + + + + + Looks up a localized string similar to Missing variable name after foreach.. + + + + + Looks up a localized string similar to Missing while or until keyword in do loop.. + + + + + Looks up a localized string similar to Modifier '{0}' cannot be combined with '{1}'. + + + + + Looks up a localized string similar to Could not find the module '{0}'.. + + + + + Looks up a localized string similar to Multiple versions of the module '{0}' were found. You can run 'Get-Module -ListAvailable -FullyQualifiedName {0}' to see available versions on the system, and then use the fully qualified name '@{{ModuleName="{0}"; RequiredVersion="Version"}}'.. + + + + + Looks up a localized string similar to A switch statement can have only one default clause.. + + + + + Looks up a localized string similar to Multiple type constraints are not allowed on a method parameter.. + + + + + Looks up a localized string similar to A named block is not allowed in a class method.. + + + + + Looks up a localized string similar to You cannot index into a {0} dimensional array with index [{1}].. + + + + + Looks up a localized string similar to [ref] cannot be applied to a variable that does not exist.. + + + + + Looks up a localized string similar to Cannot access the non-static member '{0}' in a static method or initializer of a static property.. + + + + + Looks up a localized string similar to Invalid return statement within non-void method.. + + + + + Looks up a localized string similar to Cannot expand the splatted variable '@{0}'. Splatted variables cannot be used as part of a property or array expression. Assign the result of the expression to a temporary variable then splat the temporary variable instead.. + + + + + Looks up a localized string similar to The operation '[{0}] {1} [{2}]' is not defined.. + + + + + Looks up a localized string similar to Unable to assign to an index into an object of type {0}.. + + + + + Looks up a localized string similar to Cannot index into a null array.. + + + + + Looks up a localized string similar to Index operation failed; the array index evaluated to null.. + + + + + Looks up a localized string similar to A null entry was found in the list of variable entries to create in the script block scope. Remove the entry at index {0}, or replace it with a non-null entry, and then try again.. + + + + + Looks up a localized string similar to The script block that defines function '{0}' cannot be null or empty. Provide a non-empty script block in the function definition dictionary, and then try the operation again.. + + + + + Looks up a localized string similar to A number cannot be both a long and floating point.. + + + + + Looks up a localized string similar to The 'numberToReturn' value provided to the third argument of the Where() operator must be greater than zero. Please correct the argument's value and try running your script again.. + + + + + Looks up a localized string similar to A command is referenced that is not allowed. Only convertfrom-* commands are supported in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to The param statement cannot be used if arguments were specified in the function declaration.. + + + + + Looks up a localized string similar to Use `{ instead of { in variable names.. + + + + + Looks up a localized string similar to The '{0}' operator failed: {1}.. + + + + + Looks up a localized string similar to Operator '{0}' is not supported for type '{1}'.. + + + + + Looks up a localized string similar to The '{0}' operator is not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to The '{0}' operator works only on numbers. The operand is a '{1}'.. + + + + + Looks up a localized string similar to The '{0}' operator works only on variables or on properties.. + + + + + Looks up a localized string similar to The {0} attribute can be specified only on a hash literal node.. + + + + + Looks up a localized string similar to output stream. + + + + + Looks up a localized string similar to Parallel and sequence blocks are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to The '-parallel' parameter can be used only within a workflow.. + + + + + Looks up a localized string similar to A param block is not allowed in a class method.. + + + + + Looks up a localized string similar to Attribute argument must be a constant.. + + + + + Looks up a localized string similar to Attribute argument must be a constant or a script block.. + + + + + Looks up a localized string similar to Parameter {0} cannot have an argument.. + + + + + Looks up a localized string similar to Parameter declarations are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Assignment failed because [{0}] does not contain a property '{1}()' that can be set.. + + + + + Looks up a localized string similar to Parameter {0} can only be specified once for a configuration.. + + + + + Looks up a localized string similar to Parameter {0} requires an argument.. + + + + + Looks up a localized string similar to A switch statement must have one of the following: '-file file_name' or '( expression )'.. + + + + + Looks up a localized string similar to Program '{0}' failed to run: {1}{2}.. + + + + + Looks up a localized string similar to '{0}' is defined in a generic type.. + + + + + Looks up a localized string similar to '{0}' is a ReadOnly property.. + + + + + Looks up a localized string similar to Property {0} is not declared in PowerShell class {1}, but defined in its configuration instance.. + + + + + Looks up a localized string similar to The property '{0}' cannot be found on this object. Verify that the property exists and can be set.. + + + + + Looks up a localized string similar to Property '{0}' cannot be found for attribute '{1}'. Specify one of the following properties: {2}.. + + + + + Looks up a localized string similar to Property '{0}' cannot be found for type '{1}'.. + + + + + Looks up a localized string similar to The property '{0}' cannot be found on this object. Verify that the property exists.. + + + + + Looks up a localized string similar to Property references are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Cannot set property. Property setting is supported only on core types in this language mode.. + + + + + Looks up a localized string similar to Conflict in using PsDscRunAsCredential for Resource {0} because it already specifies PsDscRunAsCredential value. We can only use one PsDscRunAsCredential for the composite resource. . + + + + + Looks up a localized string similar to Redirection to '{0}' failed: {1}. + + + + + Looks up a localized string similar to The '{0}' operator is reserved for future use.. + + + + + Looks up a localized string similar to Redirection is not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Redirection only allows another stream to be merged with the output stream. Please correct the redirection operation to merge into the output stream then try running your script again.. + + + + + Looks up a localized string similar to Cannot use [ref] with other types in a type constraint.. + + + + + Looks up a localized string similar to Cannot have two occurrences of [ref] in a type sequence.. + + + + + Looks up a localized string similar to [ref] can only be the final type in type conversion sequence.. + + + + + Looks up a localized string similar to Regular DSC resource {0} is not allowed in the meta configuration. . + + + + + Looks up a localized string similar to A required name or expression was missing.. + + + + + Looks up a localized string similar to Argument must be constant.. + + + + + Looks up a localized string similar to The argument for the {0} parameter is not valid. Specify a valid string argument.. + + + + + Looks up a localized string similar to The argument for the Module parameter is not valid. {0}. + + + + + Looks up a localized string similar to The argument for the {0} parameter is not valid. Specify a valid PowerShell edition.. + + + + + Looks up a localized string similar to The argument for the {0} parameter contains duplicate values. Do not specify duplicate PowerShell edition values.. + + + + + Looks up a localized string similar to The argument for the Version parameter is not valid. Specify a valid Windows PowerShell version, in the format major.minor version.. + + + + + Looks up a localized string similar to The '{0}' keyword is not supported in this version of the language.. + + + + + Looks up a localized string similar to Undefined DSC resource '{0}'. Use Import-DSCResource to import the resource.. + + + + + Looks up a localized string similar to The schema file {0} was not found. Verify that any modules specified in a configuration statement contain a schema.mof file, and then try running the script again.. + + + + + Looks up a localized string similar to There is no Runspace available to run scripts in this thread. You can provide one in the DefaultRunspace property of the System.Management.Automation.Runspaces.Runspace type. The script block you attempted to invoke was: {0}. + + + + + Looks up a localized string similar to Script block literals are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to This script contains malicious content and has been blocked by your antivirus software.. + + + + + Looks up a localized string similar to This script contains content that has been flagged as suspicious through a policy setting and has been blocked with error code {0}. Contact your administrator for more information.. + + + + + Looks up a localized string similar to The syntax is not supported by this runspace. This can occur if the runspace is in no-language mode.. + + + + + Looks up a localized string similar to Processing was stopped because the script is too complex.. + + + + + Looks up a localized string similar to Cannot inherit from sealed class '{0}'.. + + + + + Looks up a localized string similar to Marshal.SetComObjectData failed.. + + + + + Looks up a localized string similar to Do not report this error, just continue with the next script statement.. + + + + + Looks up a localized string similar to S&ilently Continue. + + + + + Looks up a localized string similar to The splatting operator '@' cannot be used to reference variables in an expression. '@{0}' can be used only as an argument to a command. To reference variables in an expression use '${0}'.. + + + + + Looks up a localized string similar to Splatted variables like '@{0}' cannot be part of a comma-separated list of arguments.. + + + + + Looks up a localized string similar to A static constructor cannot have any parameters.. + + + + + Looks up a localized string similar to The {0} for this command is already redirected.. + + + + + Looks up a localized string similar to The function or command was called as if it were a method. Parameters should be separated by spaces. For information about parameters, see the about_Parameters Help topic.. + + + + + Looks up a localized string similar to String multiplication results with more than "{0}" characters are not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Invalid base type '{0}'. Base type cannot be an array.. + + + + + Looks up a localized string similar to Invalid base type '{0}'. Base type cannot be a generic with unspecified parameters.. + + + + + Looks up a localized string similar to Pause the current pipeline and return to the command prompt. Type exit to resume operation when you are done.. + + + + + Looks up a localized string similar to &Suspend. + + + + + Looks up a localized string similar to The switch statement is not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to The string is missing the terminator: {0}.. + + + + + Looks up a localized string similar to At char:{0}. + + + + + Looks up a localized string similar to At {0}:{1} char:{2} + + {3}. + + + + + Looks up a localized string similar to line. + + + + + Looks up a localized string similar to The ThrottleLimit parameter is only supported on foreach statements that use the Parallel parameter.. + + + + + Looks up a localized string similar to Executable script code found in signature block.. + + + + + Looks up a localized string similar to Not all parse errors were reported. Correct the reported errors and try again.. + + + + + Looks up a localized string similar to Only one type may be specified on class members.. + + + + + Looks up a localized string similar to ! CALL function '{0}'. + + + + + Looks up a localized string similar to ! CALL function '{0}' (defined in file '{1}'). + + + + + Looks up a localized string similar to ! CALL script '{0}'. + + + + + Looks up a localized string similar to ! CALL scriptblock.. + + + + + Looks up a localized string similar to ! CALL method '{0}'. + + + + + Looks up a localized string similar to ! Setting parameterized property '{0}'. + + + + + Looks up a localized string similar to {0,4}+ {1}. + + + + + Looks up a localized string similar to ! SET-MULTIPLE ${0} = '{1}'.. + + + + + Looks up a localized string similar to ! SET-MULTIPLE ${0} assigned remaining {1} values.. + + + + + Looks up a localized string similar to ! SET ${0} = '{1}'.. + + + + + Looks up a localized string similar to ! Trap or Catch on matching exception [{0}]. + + + + + Looks up a localized string similar to ! Trap or Catch generic; caught [{0}]. + + + + + Looks up a localized string similar to ! Trap or Catch on [{0}]; subclass of exception [{1}]. + + + + + Looks up a localized string similar to The Trap statement is not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to The Try statement is not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Error during creation of type "{0}". Error message: + {1}. + + + + + Looks up a localized string similar to Type name expected.. + + + + + Looks up a localized string similar to Unexpected type [{0}] was found in the parameter statement.. + + + + + Looks up a localized string similar to Unexpected type [{0}] was found before statement.. + + + + + Looks up a localized string similar to The type '{0}' is not allowed on a parameter.. + + + + + Looks up a localized string similar to The type '{0}' is not allowed on a property.. + + + + + Looks up a localized string similar to The type {0} is not allowed in restricted language mode or a Data section.. + + + + + Looks up a localized string similar to Unable to find type [{0}].. + + + + + Looks up a localized string similar to Unable to find type [{0}]. Details: {1}. + + + + + Looks up a localized string similar to Unexpected attribute '{0}'.. + + + + + Looks up a localized string similar to No characters are allowed after a here-string header but before the end of the line.. + + + + + Looks up a localized string similar to Unexpected keyword '{0}'.. + + + + + Looks up a localized string similar to The '{0}' resource can only be used once per configuration, and therefore cannot have a name. Remove '{1}', and then run the script again.. + + + + + Looks up a localized string similar to Unexpected token '{0}' in expression or statement.. + + + + + Looks up a localized string similar to There is no whitespace between the name and the scriptblock in dynamic keyword '{0}' body statement.. + + + + + Looks up a localized string similar to Internal error - unexpected unary operator {0}.. + + + + + Looks up a localized string similar to Unexpected VarEnum {0}.. + + + + + Looks up a localized string similar to Unknown assignment operator '{0}'.. + + + + + Looks up a localized string similar to Unrecognized token in source text.. + + + + + Looks up a localized string similar to Unrecoverable error in Windows PowerShell.. + + + + + Looks up a localized string similar to Attempting to wrap an unsupported enum type.. + + + + + Looks up a localized string similar to Attempting to pass an event handler of an unsupported type.. + + + + + Looks up a localized string similar to Configuration only supports the End block in its body. Begin, Process and DynamicParam blocks are not allowed in a configuration.. + + + + + Looks up a localized string similar to The '{0}' property with type '{1}' of DSC resource class '{2}' is not supported.. + + + + + Looks up a localized string similar to The '{0}' keyword is not supported in this version of the language.. + + + + + Looks up a localized string similar to The '{0}' property is not supported in this version of the language.. + + + + + Looks up a localized string similar to At least one of the values '{0}' is not supported or valid for property '{1}' on class '{2}'. Please specify only supported values: + {3}.. + + + + + Looks up a localized string similar to A 'using' statement must appear before any other statements in a script.. + + + + + Looks up a localized string similar to This syntax of the 'using' statement is not supported.. + + + + + Looks up a localized string similar to A Using variable cannot be retrieved. A Using variable can be used only with Invoke-Command, Start-Job, or InlineScript in the script workflow. When it is used with Invoke-Command, the Using variable is valid only if the script block is invoked on a remote computer.. + + + + + Looks up a localized string similar to Property '{0}' of Resource '{1}' has value '{2}' which is not between valid range '{3}' and '{4}'.. + + + + + Looks up a localized string similar to The variable '${0}' cannot be retrieved because it has not been set.. + + + + + Looks up a localized string similar to Variable is not assigned in the method.. + + + + + Looks up a localized string similar to A variable that cannot be referenced in restricted language mode or a Data section is being referenced. Variables that can be referenced include the following: {0}.. + + + + + Looks up a localized string similar to Variant.GetAccessor cannot handle {0}.. + + + + + Looks up a localized string similar to verbose stream. + + + + + Looks up a localized string similar to Invalid return statement within void method.. + + + + + Looks up a localized string similar to [void] cannot be used as a parameter type, or on the left side of an assignment.. + + + + + Looks up a localized string similar to warning stream. + + + + + Looks up a localized string similar to White space is not allowed before the string terminator.. + + + + + Looks up a localized string similar to Wildcard characters are not supported for module names.. + + + + + Looks up a localized string similar to Workflow is not supported in PowerShell Core.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Input name "{0}" is ambiguous. It can be resolved to multiple matched methods. Possible matches include:{1}.. + + + + + Looks up a localized string similar to Input name "{0}" is ambiguous. It can be resolved to multiple matched members. Possible matches include:{1}.. + + + + + Looks up a localized string similar to Retrieve the value for key '{0}'. + + + + + Looks up a localized string similar to Invoke method '{0}' with arguments: {1}. + + + + + Looks up a localized string similar to Invoke method '{0}'. + + + + + Looks up a localized string similar to Retrieve the value for property '{0}'. + + + + + Looks up a localized string similar to InputObject: {0}. + + + + + Looks up a localized string similar to Cannot operate on a 'null' input object.. + + + + + Looks up a localized string similar to Input name "{0}" cannot be resolved to a method.. + + + + + Looks up a localized string similar to Cannot invoke a method in the restricted language mode.. + + + + + Looks up a localized string similar to The -WhatIf and -Confirm parameters are not supported for script blocks.. + + + + + Looks up a localized string similar to The '{0}' operation is not allowed in the RestrictedLanguage mode.. + + + + + Looks up a localized string similar to An operator is required to compare the two specified values. Include a valid operator in the command, and then try the command again. For example, Get-Process | Where-Object -Property Name -eq Idle. + + + + + Looks up a localized string similar to The input name "{0}" cannot be resolved to a property.. + + + + + Looks up a localized string similar to The input name "{0}" cannot be resolved to a member.. + + + + + Looks up a localized string similar to The specified operator requires both the -Property and -Value parameters. Provide values for both parameters, and then try the command again.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot create the module {0} due to the following: {1}. Use a different argument for the -OutputModule parameter and retry.. + + + + + Looks up a localized string similar to The directory '{0}' already exists. Use the -Force parameter if you want to overwrite the directory and files within the directory.. + + + + + Looks up a localized string similar to The module cannot be loaded because it has been generated with an incompatible version of the {0} cmdlet. Generate the module with the {0} cmdlet from the current session, and try loading the module again.. + + + + + Looks up a localized string similar to Cannot perform operation because the wildcard path {0} did not resolve to a file.. + + + + + Looks up a localized string similar to Cannot perform operation because the path resolved to more than one file. This command cannot operate on multiple files.. + + + + + Looks up a localized string similar to Cannot open file because the current provider ({0}) cannot open a file.. + + + + + Looks up a localized string similar to Unknown encoding {0}; valid values are {1}.. + + + + + Looks up a localized string similar to File {0} already exists and {1} was specified.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot continue to run the cmdlet because running cmdlets has been prevented by the Stop policy.. + + + + + Looks up a localized string similar to An error occurred while creating the pipeline.. + + + + + Looks up a localized string similar to Cannot process the cmdlet instance because the cmdlet instance is in use by another pipeline. Please contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to This pipeline does not support disconnect-connect semantics.. + + + + + Looks up a localized string similar to Cannot perform the operation because the pipeline is started. Stop the pipeline and try the operation again.. + + + + + Looks up a localized string similar to Cannot run the pipeline because the first cmdlet in the pipeline is trying to read input from the results of a preceding cmdlet. Either modify the first cmdlet, remove the first cmdlet, or add to the pipeline the cmdlet whose output is required by the first cmdlet, and then try running the pipeline again.. + + + + + Looks up a localized string similar to Cannot process the cmdlet number. The ReadFromCommand function must specify the Id of a cmdlet that has already been added to the pipeline. Please contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The runspace object has a null remote command associated with it. A disconnected RemotePipeline object cannot be created because there is no remote command specified.. + + + + + Looks up a localized string similar to Cannot read the output of the ReadFromCommand and ReadErrorQueue functions because another cmdlet is already reading that output. Please contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to Cannot run the pipeline because there are no commands. Add at least one command to the pipeline, and then run it again.. + + + + + Looks up a localized string similar to CommandInvocation({0}): "{1}". + + + + + Looks up a localized string similar to NonTerminatingError({0}): "{1}". + + + + + Looks up a localized string similar to ParameterBinding({0}): name="{1}"; value="{2}". + + + + + Looks up a localized string similar to TerminatingError({0}): "{1}". + + + + + Looks up a localized string similar to Cannot connect this pipeline because it is not in the disconnected state.. + + + + + Looks up a localized string similar to Cannot complete the pipeline operation because it has not yet been started. You must call the Begin() method before calling End() on a steppable pipeline.. + + + + + Looks up a localized string similar to A cmdlet threw an exception after calling ThrowTerminatingError. + The first exception was "{0}" with stack trace "{1}". + The second exception was "{2}" with stack trace "{3}".. + + + + + Looks up a localized string similar to The WriteObject and WriteError methods cannot be called from outside the overrides of the BeginProcessing, ProcessRecord, and EndProcessing methods, and they can only be called from within the same thread. Validate that the cmdlet makes these calls correctly, or contact Microsoft Customer Support Services.. + + + + + Looks up a localized string similar to The WriteObject and WriteError methods cannot be called after the pipeline has been closed. Please contact Microsoft Customer Support Services.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to When the runspace is set to reuse a thread, the apartment state in the invocation settings must match the runspace.. + + + + + Looks up a localized string similar to When the runspace is set to use the current thread, the apartment state in the invocation settings must match that of the current thread.. + + + + + Looks up a localized string similar to The {0} object was not created by calling {1} on this Windows PowerShell instance.. + + + + + Looks up a localized string similar to This Windows PowerShell object cannot be connected because it is not associated with a remote runspace or runspace pool.. + + + + + Looks up a localized string similar to The PSJobProxy object can only be used for remote commands that return a job object.. + + + + + Looks up a localized string similar to There is no Runspace available to run commands in this thread. You can provide one in the DefaultRunspace property of the System.Management.Automation.Runspaces.Runspace type. The command you attempted to invoke was: {0}. + + + + + Looks up a localized string similar to There is no Runspace available to run commands in this thread. You can provide one in the DefaultRunspace property of the System.Management.Automation.Runspaces.Runspace type. The current Windows PowerShell instance contains no command to invoke.. + + + + + Looks up a localized string similar to The connection attempt to the remote command failed.. + + + + + Looks up a localized string similar to The running command has been disconnected but is still running on the remote server. Reconnect to get command operation status and output data.. + + + + + Looks up a localized string similar to The operation cannot be performed because a command has already been started. Wait for the command to complete, or stop it, and then try the operation again.. + + + + + Looks up a localized string similar to The operation cannot be performed because the current Windows PowerShell session is in the Disconnected state. Connect this Windows PowerShell session, and then either wait for the command to finish, or stop the command.. + + + + + Looks up a localized string similar to The operation cannot be performed because a command is currently stopping. Wait for the command to complete stopping, and then try the operation again.. + + + + + Looks up a localized string similar to GetJobForCommand is not supported when there is more than one command in the Windows PowerShell instance.. + + + + + Looks up a localized string similar to The Command property of a Windows PowerShell object cannot be empty.. + + + + + Looks up a localized string similar to The state of the current PowerShell instance is not valid for this operation.. + + + + + Looks up a localized string similar to Cannot perform operation because the runspace is not in the '{0}' state. Current state of runspace is '{1}'.. + + + + + Looks up a localized string similar to The PowerShell instance is not in the correct state for creating a nested PowerShell instance. Nested PowerShell instances should only be created in a running PowerShell instance.. + + + + + Looks up a localized string similar to The operation cannot be performed because the current Windows PowerShell session is in the Disconnected state. Connect this Windows PowerShell session, and then try again.. + + + + + Looks up a localized string similar to A job object cannot be reused.. + + + + + Looks up a localized string similar to A job cannot be started when it is already running.. + + + + + Looks up a localized string similar to A job object can be used only once.. + + + + + Looks up a localized string similar to A command in which the value of AsJob is equal to false cannot be run through a PSJobProxy.. + + + + + Looks up a localized string similar to You can only begin receiving data on a PSJobProxy instance when it has been created with data streaming disabled. This operation can run only once.. + + + + + Looks up a localized string similar to The keys in the dictionary must be strings.. + + + + + Looks up a localized string similar to Nested PowerShell instances cannot be invoked asynchronously. Use the Invoke method.. + + + + + Looks up a localized string similar to No commands are specified.. + + + + + Looks up a localized string similar to A Windows PowerShell object cannot be created that uses the current runspace because there is no current runspace available. The current runspace might be starting, such as when it is created with an Initial Session State.. + + + + + Looks up a localized string similar to PSJobProxy currently supports only PSWorkflowInvocationSettings.. + + + + + Looks up a localized string similar to This operation is currently not supported in the remoting scenario.. + + + + + Looks up a localized string similar to A command is required to add a parameter. A command must be added to the Windows PowerShell instance before adding a parameter.. + + + + + Looks up a localized string similar to PSChildJobProxy does not support control methods.. + + + + + Looks up a localized string similar to PSJobProxy does not support this control method.. + + + + + Looks up a localized string similar to PSJobProxy does not support the Unblock operation.. + + + + + Looks up a localized string similar to The runspace pool specified is not in an opened state.. + + + + + Looks up a localized string similar to Either a runspace or runspace pool must be assigned to PSJobProxy before it can be started.. + + + + + Looks up a localized string similar to Support for interactive jobs is not available. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot process the argument because {0} cannot be a negative value.. + + + + + Looks up a localized string similar to Cannot process the argument because the value of {0} cannot be null or empty.. + + + + + Looks up a localized string similar to ParentActivityId cannot be the same as the ActivityId.. + + + + + Looks up a localized string similar to Cannot set percent because {0} cannot be greater than 100.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot use the interface because the ISecurityDescriptorCmdletProvider interface is not supported by this provider.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The proxy command cannot be generated because the CommandMetadata has no name.. + + + + + Looks up a localized string similar to The 'help' parameter is not recognized as a valid HelpInfo object created by the 'get-help' command.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to A command is required to add a parameter. A command must be added to {0} before adding a parameter.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot convert value from type {0} to type {1}.. + + + + + Looks up a localized string similar to The index specified is less than zero or greater than the number of items in the buffer. Index should be in the range {0}-{1}.. + + + + + Looks up a localized string similar to The SerializeInput property can only be set for the PSObject type of PSDataCollection. Set the SerializeInput property to false, or change the collection type to a PSObject.. + + + + + Looks up a localized string similar to Cannot convert a null reference to a value type.. + + + + + Looks up a localized string similar to Objects cannot be added to a closed buffer. Make sure the buffer is open for Add and Insert operations to succeed.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The following unknown list modifier was detected: '{0}'. Valid list modifiers are Add, Remove, and Replace.. + + + + + Looks up a localized string similar to Cannot apply the update because the object is not a supported collection type.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to A SessionStateProxy method call is in progress. Concurrent SessionStateProxy method calls are not allowed.. + + + + + Looks up a localized string similar to Cannot connect the PSSession because the session is not in the Disconnected state, or is not available for connection.. + + + + + Looks up a localized string similar to Cannot open the runspace because the runspace is not in the BeforeOpen state. Current state of the runspace is '{0}'.. + + + + + Looks up a localized string similar to This property cannot be changed after the runspace has been opened.. + + + + + Looks up a localized string similar to One or more errors occurred while processing the module '{0}' that is specified in the InitialSessionState object used to create this runspace. For a complete list of errors, see the ErrorRecords property.. + + + + + Looks up a localized string similar to The pipeline was not run because a pipeline is already running. Pipelines cannot be run concurrently.. + + + + + Looks up a localized string similar to The Connect operation is not supported on local runspaces.. + + + + + Looks up a localized string similar to Debug stream redirection is not supported on the targeted remote computer.. + + + + + Looks up a localized string similar to You cannot use Disconnect and Connect operations on local runspaces.. + + + + + Looks up a localized string similar to You cannot disconnect a local-only runspace.. + + + + + Looks up a localized string similar to The disconnection operation is not supported on the remote computer. To support disconnecting, the remote computer must be running Windows PowerShell 3.0 or a later version of Windows PowerShell.. + + + + + Looks up a localized string similar to One or more errors occurred processing the module '{0}' specified in the InitialSessionState object used to create this runspace. See the ErrorRecords property for a complete list of errors. The first error was: {1}. + + + + + Looks up a localized string similar to Information stream redirection is not supported on the targeted remote computer.. + + + + + Looks up a localized string similar to Value for parameter cannot be PipelineResultTypes.None or PipelineResultTypes.Output.. + + + + + Looks up a localized string similar to The pipeline state is not valid for this operation.. + + + + + Looks up a localized string similar to Cannot construct a RemoteRunspace. The provided RunspacePool object is not valid.. + + + + + Looks up a localized string similar to The runspace state is not valid for this operation.. + + + + + Looks up a localized string similar to The thread options can only be changed if the apartment state is multithreaded apartment (MTA), the current options are UseNewThread or UseCurrentThread, and the new value is ReuseThread.. + + + + + Looks up a localized string similar to Valid values for the parameter are PipelineResultTypes.Output or PipelineResultTypes.Null.. + + + + + Looks up a localized string similar to The valid value for the parameter is PipelineResultTypes.Output.. + + + + + Looks up a localized string similar to A nested pipeline cannot be invoked asynchronously. Use the Invoke method.. + + + + + Looks up a localized string similar to You should only run a nested pipeline from within a running pipeline.. + + + + + Looks up a localized string similar to The pipeline does not contain a command.. + + + + + Looks up a localized string similar to There is no disconnected command associated with this runspace.. + + + + + Looks up a localized string similar to Pipeline cannot be invoked while a SessionStateProxy method call is in progress.. + + + + + Looks up a localized string similar to A pipeline is already running. Concurrent SessionStateProxy method calls are not allowed.. + + + + + Looks up a localized string similar to The command cannot be completed. Script invocation is not supported in this session configuration. This can occur if the session configuration is in no-language mode.. + + + + + Looks up a localized string similar to Parameter name or value must be specified.. + + + + + Looks up a localized string similar to Cannot invoke pipeline because it has already been invoked.. + + + + + Looks up a localized string similar to You have entered a session that is currently stopped at a debug breakpoint inside a running command or script. Use the Windows PowerShell command line debugger to continue debugging. + . + + + + + Looks up a localized string similar to You have entered a session that is busy running a command or script. Because output is routed to job "{0}", you will not see output in the console. You can wait for the running command to finish, or cancel the command and get an input prompt by pressing Ctrl-C. + . + + + + + Looks up a localized string similar to You have entered a session that is busy running a command or script and output will be displayed in the console. You can wait for the running command to finish or cancel it and get an input prompt by pressing Ctrl-C. + . + + + + + Looks up a localized string similar to Runspace cannot be closed while a SessionStateProxy method call is in progress.. + + + + + Looks up a localized string similar to Cannot perform the operation because the runspace is not in the Opened state. Current state of the runspace is '{0}'.. + + + + + Looks up a localized string similar to DefaultRunspace must be a LocalRunspace. + + + + + Looks up a localized string similar to Cannot invoke the pipeline because the runspace is not in the Opened state. Current state of the runspace is '{0}'.. + + + + + Looks up a localized string similar to Cannot connect the pipeline because the runspace is not in the Opened state. Current state of runspace is '{0}'.. + + + + + Looks up a localized string similar to The session is busy. You will be connected to the session as soon as it is available. To cancel the Enter-PSSession command, press Ctrl-C.. + + + + + Looks up a localized string similar to {0} cannot be false when language mode is {1} or {2}.. + + + + + Looks up a localized string similar to Verbose stream redirection is not supported on the targeted remote computer.. + + + + + Looks up a localized string similar to Warning stream redirection is not supported on the targeted remote computer.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Dictates when confirmation should be requested. Confirmation is requested when the ConfirmImpact of the operation is equal to or greater than $ConfirmPreference. If $ConfirmPreference is None, actions will only be confirmed when Confirm is specified.. + + + + + Looks up a localized string similar to Name of the current console file. + + + + + Looks up a localized string similar to Dictates the action taken when a Debug message is delivered. + + + + + Looks up a localized string similar to Status of last command. + + + + + Looks up a localized string similar to Culture of the current Windows PowerShell session. + + + + + Looks up a localized string similar to UI culture of the current Windows PowerShell session. + + + + + Looks up a localized string similar to Dictates the action taken when an error message is delivered. + + + + + Looks up a localized string similar to Dictates the view mode to use when displaying errors. + + + + + Looks up a localized string similar to The run objects available to cmdlets. + + + + + Looks up a localized string similar to Dictates the limit of enumeration on formatting IEnumerable objects. + + + + + Looks up a localized string similar to Folder containing the current user's profile. + + + + + Looks up a localized string similar to Dictates the action taken when a command generates an item in the Information stream. + + + + + Looks up a localized string similar to The ShellID identifies the current shell. This is used by #Requires.. + + + + + Looks up a localized string similar to Dictates what type of prompt should be displayed for the current nesting level. + + + + + Looks up a localized string similar to The text encoding used when piping text to a native executable file. + + + + + Looks up a localized string similar to Press Enter to continue.... + + + + + Looks up a localized string similar to Current process ID. + + + + + Looks up a localized string similar to Parent process ID. + + + + + Looks up a localized string similar to Dictates the action taken when progress records are delivered. + + + + + Looks up a localized string similar to Variable to hold all default <cmdlet:parameter, value> pairs. + + + + + Looks up a localized string similar to Edition information for the current PowerShell session. + + + + + Looks up a localized string similar to Variable to contain the name of the email server. This can be used instead of the HostName parameter in the Send-MailMessage cmdlet.. + + + + + Looks up a localized string similar to Parent folder of the host application of the current runspace. + + + + + Looks up a localized string similar to A reference to the host of the current runspace. + + + + + Looks up a localized string similar to Version information for current Windows PowerShell session. + + + + + Looks up a localized string similar to Displays errors with a description of the error class. + + + + + Looks up a localized string similar to Displays errors with inner exceptions. + + + + + Looks up a localized string similar to Displays errors with their sources. + + + + + Looks up a localized string similar to Displays errors with a stack trace. + + + + + Looks up a localized string similar to Dictates the action taken when a Verbose message is delivered. + + + + + Looks up a localized string similar to Dictates the action taken when a Warning message is delivered. + + + + + Looks up a localized string similar to If true, WhatIf is considered to be enabled for all commands.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The {0} object was not created by calling {1} on the current RunspacePool instance.. + + + + + Looks up a localized string similar to This runspace pool cannot be connected because the corresponding server side runspace pool is connected to another client.. + + + + + Looks up a localized string similar to Cannot open the runspace pool because it is not in the 'BeforeOpen' state. The current state is '{0}'.. + + + + + Looks up a localized string similar to This runspace pool {0} is not configured to provide disconnected Windows PowerShell objects for commands running on the remote server. Use the RunspacePool class GetRunspacePools() static method to query the server and return runspace pool objects that are configured to do this.. + + + + + Looks up a localized string similar to Cannot set the TypeTable data unless the runspace pool is in either the Disconnected or BeforeOpen states. Current state is {0}.. + + + + + Looks up a localized string similar to Cannot perform the operation because the runspace pool is in the Disconnected state.. + + + + + Looks up a localized string similar to This property cannot be changed after the runspace pool has been opened.. + + + + + Looks up a localized string similar to The Disconnect operation is not supported on the server. The server must be running Windows PowerShell 3.0 or greater for remote runspace pool disconnection support.. + + + + + Looks up a localized string similar to Cannot perform the operation because the runspace pool is not in the '{0}' state. The current state is '{1}'.. + + + + + Looks up a localized string similar to The state of the runspace pool is not valid for this operation.. + + + + + Looks up a localized string similar to The maximum pool size cannot be less than 1.. + + + + + Looks up a localized string similar to The minimum pool size cannot be greater than the maximum pool size.. + + + + + Looks up a localized string similar to The minimum pool size cannot be less than 1.. + + + + + Looks up a localized string similar to ResetRunspaceState is not supported on the server. The server must be running Windows PowerShell 5.0 or greater.. + + + + + Looks up a localized string similar to This runspace does not support disconnect and connect operations.. + + + + + Looks up a localized string similar to Cannot release the runspace to the current pool because the runspace does not belong to the current pool.. + + + + + Looks up a localized string similar to The runspace pool is closed.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to AuthorizationManager check failed.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Certificate '{0}' cannot be used for encryption. Encryption certificates must contain the Data Encipherment or Key Encipherment key usage, and include the Document Encryption Enhanced Key Usage ({1}).. + + + + + Looks up a localized string similar to WARNING: The certificate '{0}' contains a private key. Protected Event Logging certificates used for encryption should only contain the public key.. + + + + + Looks up a localized string similar to Cannot load certificate. '{0}' must resolve to a file system path.. + + + + + Looks up a localized string similar to ERROR: Could not protect event log message '{0}': {1}. + + + + + Looks up a localized string similar to ERROR: Could not find or use certificate: {0}. + + + + + Looks up a localized string similar to Cannot load certificate. The identifier '{0}' matches multiple certificates. To encrypt to multiple recipients, provide multiple specific values to the '{1}' parameter, rather than a wildcard that matches multiple certificates.. + + + + + Looks up a localized string similar to Cannot load encryption certificate. The certificate setting '{0}' does not represent a valid base-64 encoded certificate, nor does it represent a valid certificate by file, directory, thumbprint, or subject name.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to {0} attribute was expected.. + + + + + Looks up a localized string similar to Value of depth parameter must be greater than or equal to 1.. + + + + + Looks up a localized string similar to The data in the command exceeded the maximum size that is allowed by the session configuration. The allowed maximum is {0} MB. Change the input, use a different session configuration, or change the "{1}" and "{2}" properties of the session configuration on the remote computer.. + + + + + Looks up a localized string similar to Serialized XML is nested too deeply.. + + + + + Looks up a localized string similar to Deserialization of encrypted secure string failed. + + + + + Looks up a localized string similar to Key for dictionary entry is not specified.. + + + + + Looks up a localized string similar to Value for dictionary entry is not specified.. + + + + + Looks up a localized string similar to Name attribute for dictionary key is incorrectly specified.. + + + + + Looks up a localized string similar to Name attribute for dictionary value is incorrectly specified.. + + + + + Looks up a localized string similar to {0} XML tag is not recognized.. + + + + + Looks up a localized string similar to The parameter value "{0}" is not a valid encrypted string.. + + + + + Looks up a localized string similar to Could not decrypt data. The data was not encrypted with this key.. + + + + + Looks up a localized string similar to The specified {0} is not valid. Valid {0} length settings are either 128 bits, 192 bits, or 256 bits.. + + + + + Looks up a localized string similar to Current Node type is {0}. Expected type is {1}.. + + + + + Looks up a localized string similar to The contents of the {0} primitive type are not valid.. + + + + + Looks up a localized string similar to No object found for referenceId {0}. + + + + + Looks up a localized string similar to Cannot process names because no TypeNames were found for referenceId {0}.. + + + + + Looks up a localized string similar to Version of PSObject is not valid.. + + + + + Looks up a localized string similar to Null is specified as dictionary key.. + + + + + Looks up a localized string similar to The key type {0} is not valid. The PSPrimitiveDictionary class accepts only keys of the type System.String.. + + + + + Looks up a localized string similar to The type of the value {0} is not valid. The PSPrimitiveDictionary class accepts only values of types that are fully serializable over Windows PowerShell remoting. See the Help topic about_Remoting for a list of fully-serializable types.. + + + + + Looks up a localized string similar to There are no more objects to deserialize.. + + + + + Looks up a localized string similar to Serializer was closed.. + + + + + Looks up a localized string similar to Version of incoming PSObject is {0}. Expected value is 1.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Clear Item. + + + + + Looks up a localized string similar to Item: {0}. + + + + + Looks up a localized string similar to Copy Item. + + + + + Looks up a localized string similar to Item: {0} Destination: {1}. + + + + + Looks up a localized string similar to New Item. + + + + + Looks up a localized string similar to Item: {0} Type: {1} Value: {2}. + + + + + Looks up a localized string similar to Remove Item. + + + + + Looks up a localized string similar to Item: {0}. + + + + + Looks up a localized string similar to Rename Item. + + + + + Looks up a localized string similar to Item: {0} NewName: {1}. + + + + + Looks up a localized string similar to Set Item. + + + + + Looks up a localized string similar to Item: {0} Value: {1}. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The AllScope option cannot be removed from the alias '{0}'.. + + + + + Looks up a localized string similar to The alias is not allowed, because an alias with the name '{0}' already exists.. + + + + + Looks up a localized string similar to Alias {0} cannot be made constant after it has been created. Aliases can only be made constant at creation time.. + + + + + Looks up a localized string similar to Drive that contains a view of the aliases stored in a session state. + + + + + Looks up a localized string similar to Alias {0} cannot be modified because it is constant.. + + + + + Looks up a localized string similar to Alias {0} cannot be modified because it is read-only.. + + + + + Looks up a localized string similar to Cannot find alias because alias '{0}' does not exist.. + + + + + Looks up a localized string similar to Alias was not removed because alias {0} is constant or read-only.. + + + + + Looks up a localized string similar to Alias is not writeable because alias {0} is read-only or constant and cannot be written to.. + + + + + Looks up a localized string similar to Alias {0} cannot be created because alias capacity {1} has been exceeded for this scope.. + + + + + Looks up a localized string similar to The alias is not allowed, because a command with the name '{0}' and command type '{1}' already exists.. + + + + + Looks up a localized string similar to Cannot rename alias because alias {0} is read-only or constant.. + + + + + Looks up a localized string similar to Cannot rename filter because filter {0} is read-only or constant.. + + + + + Looks up a localized string similar to Cannot rename function because function {0} is read-only or constant.. + + + + + Looks up a localized string similar to Cannot rename variable because variable {0} is read-only or constant.. + + + + + Looks up a localized string similar to Cannot run software. Permission is denied.. + + + + + Looks up a localized string similar to The dynamic parameters for the ClearContent operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the ClearContent operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The dynamic parameters for the ClearItem operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the ClearItem operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The dynamic parameters for the ClearProperty operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the ClearProperty operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Cmdlet {0} cannot be modified because it is read-only.. + + + + + Looks up a localized string similar to Provider operation stopped because the provider does not support this operation.. + + + + + Looks up a localized string similar to Provider operation stopped because the provider does not support the 'Depth' parameter.. + + + + + Looks up a localized string similar to Cannot register the cmdlet provider because a cmdlet provider with the name '{0}' already exists.. + + + + + Looks up a localized string similar to Cannot access the command because it is a private command.. + + + + + Looks up a localized string similar to Provider methods not processed. The ContainerCmdletProvider methods are not supported by this provider.. + + + + + Looks up a localized string similar to Container cannot be copied onto existing leaf item.. + + + + + Looks up a localized string similar to Container cannot be copied to another container. The -Recurse or -Container parameter is not specified.. + + + + + Looks up a localized string similar to Cannot copy item. Item at the path '{0}' does not exist.. + + + + + Looks up a localized string similar to The dynamic parameters for the CopyItem operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to '-{0}' and '-{1}' are mutually exclusive and cannot be specified at the same time.. + + + + + Looks up a localized string similar to Attempting to perform the CopyItem operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The path '{0}' is not valid. Only absolute paths are supported on remote copy operations.. + + + + + Looks up a localized string similar to '{0}' parameter cannot be null or empty.. + + + + + Looks up a localized string similar to Cannot perform operation because the session {0} is set to {1}.. + + + + + Looks up a localized string similar to Source and destination path did not resolve to the same provider.. + + + + + Looks up a localized string similar to Cannot validate remote path '{0}'.. + + + + + Looks up a localized string similar to The dynamic parameters for the CopyProperty operation cannot be retrieved for the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the CopyProperty operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The provider does not support the use of credentials. Perform the operation again without specifying credentials.. + + + + + Looks up a localized string similar to References to the null variable always return the null value. Assignments have no effect.. + + + + + Looks up a localized string similar to A drive with the name '{0}' already exists.. + + + + + Looks up a localized string similar to DriveCmdletProvider methods are not supported by this provider.. + + + + + Looks up a localized string similar to Cannot process the drive name because the drive name contains one or more of the following characters that are not valid: ; ~ / \ . :. + + + + + Looks up a localized string similar to Cannot find drive. A drive with the name '{0}' does not exist.. + + + + + Looks up a localized string similar to Drive {0} cannot be created because drive capacity {1} has been exceeded for this scope.. + + + + + Looks up a localized string similar to Drive '{0}' cannot be removed because the provider '{1}' prevented it.. + + + + + Looks up a localized string similar to Drive that contains a view of the environment variables for the process. + + + + + Looks up a localized string similar to The cmdlet provider cannot stream the results because no cmdlet was specified through which to stream the error.. + + + + + Looks up a localized string similar to The FileSystem provider supports credentials only on the New-PSDrive cmdlet. Perform the operation again without specifying credentials.. + + + + + Looks up a localized string similar to Cannot call method. The provider does not support the use of filters.. + + + + + Looks up a localized string similar to The AllScope option cannot be removed from the filter '{0}'.. + + + + + Looks up a localized string similar to Existing filter {0} cannot be made constant. Filters can be made constant only at creation time.. + + + + + Looks up a localized string similar to Filter {0} cannot be modified because it is constant.. + + + + + Looks up a localized string similar to Filter {0} cannot be modified because it is read-only.. + + + + + Looks up a localized string similar to The AllScope option cannot be removed from the function '{0}'.. + + + + + Looks up a localized string similar to Existing function {0} cannot be made constant. Functions can be made constant only at creation time.. + + + + + Looks up a localized string similar to Drive that contains a view of the functions stored in a session state. + + + + + Looks up a localized string similar to Cannot modify function {0} because it is constant.. + + + + + Looks up a localized string similar to Cannot modify function {0} because it is read-only.. + + + + + Looks up a localized string similar to Cannot remove function {0} because it is constant.. + + + + + Looks up a localized string similar to Cannot write to function {0} because it is read-only or constant.. + + + + + Looks up a localized string similar to Function {0} cannot be created because function capacity {1} has been exceeded for this scope.. + + + + + Looks up a localized string similar to Attempting to perform the GetChildName operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The dynamic parameters for the GetChildNames operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the GetChildNames operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The dynamic parameters for the GetChildItems operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the GetChildItems operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The parameters {0} and {1} cannot be used together. Please specify only one parameter.. + + + + + Looks up a localized string similar to The Tail parameter currently is supported only for the FileSystem provider.. + + + + + Looks up a localized string similar to The dynamic parameters for the GetContentReader operation cannot be retrieved for the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Content reader cannot be retrieved for the '{0}' provider for the path '{1}'. {2}. + + + + + Looks up a localized string similar to The dynamic parameters for the GetContentWriter operation cannot be retrieved for the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Content writer cannot be retrieved for the '{0}' provider for the path '{1}'. {2}. + + + + + Looks up a localized string similar to The dynamic parameters for the GetItem operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the GetItem operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the GetParentPath operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The dynamic parameters for the GetProperty operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the GetProperty operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the GetSecurityDescriptor operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Global scope cannot be removed.. + + + + + Looks up a localized string similar to Attempting to perform the HasChildItems operation on the '{0}' provider failed for the path '{1}'. {2}. + + + + + Looks up a localized string similar to Home location for this provider is not set. To set the home location, call "(get-psprovider '{0}').Home = 'path'".. + + + + + Looks up a localized string similar to Cannot perform the ClearContent operation. The ClearContent operation is not supported by this provider.. + + + + + Looks up a localized string similar to Cannot call method. The content Seek method is not supported by this provider.. + + + + + Looks up a localized string similar to Cannot use interface. The IContentCmdletProvider interface is not implemented by this provider.. + + + + + Looks up a localized string similar to Cannot use interface. The IDynamicPropertyCmdletProvider interface is not implemented by this provider.. + + + + + Looks up a localized string similar to Attempting to perform the InitializeDefaultDrives operation on the '{0}' provider failed.. + + + + + Looks up a localized string similar to Cannot process the returned information because the information returned from the provider's Start method was for a different provider than the one passed.. + + + + + Looks up a localized string similar to Cannot process the returned information because the information returned from the provider's Start method was null.. + + + + + Looks up a localized string similar to The dynamic parameters for the InvokeDefaultAction operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the InvokeDefaultAction operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Cannot use interface. The IPropertyCmdletProvider interface is not supported by this provider.. + + + + + Looks up a localized string similar to The dynamic parameters for the IsItemContainer cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the IsItemContainer operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the IsValidPath operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Cannot call methods. The ItemCmdletProvider methods are not supported by this provider.. + + + + + Looks up a localized string similar to The dynamic parameters for the ItemExists operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the ItemExists operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the MakePath operation operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Maximum number of aliases allowed in a session. + + + + + Looks up a localized string similar to Maximum number of drives allowed in a session. + + + + + Looks up a localized string similar to Maximum number of errors to retain in a session. + + + + + Looks up a localized string similar to Maximum number of functions allowed in a session. + + + + + Looks up a localized string similar to Maximum number of history objects to retain in a session. + + + + + Looks up a localized string similar to Maximum number of variables allowed in a session. + + + + + Looks up a localized string similar to The dynamic parameters for the MoveItem operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Cannot move the item because the destination resolved to multiple paths. Specify a destination path that resolves to a single destination and try again.. + + + + + Looks up a localized string similar to Cannot move the item because the source path points to one or more items and the destination path is not a container. Validate that the destination path is a container and try again.. + + + + + Looks up a localized string similar to Attempting to perform the MoveItem operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Cannot move the item because the source and destination paths did not resolve to the same provider.. + + + + + Looks up a localized string similar to Cannot move the item because the destination path can resolve only to a single path.. + + + + + Looks up a localized string similar to The dynamic parameters for the MoveProperty operation cannot be retrieved for the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the MoveProperty operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The path does not refer to a file system path.. + + + + + Looks up a localized string similar to Cannot access the command '{0}' because it is a private command.. + + + + + Looks up a localized string similar to The NavigationCmdletProvider methods are not supported by this provider.. + + + + + Looks up a localized string similar to Cannot create drive. The provider does not support the use of credentials.. + + + + + Looks up a localized string similar to Dynamic parameters for NewDrive cannot be retrieved for the '{0}' provider. {1}. + + + + + Looks up a localized string similar to Attempting to perform the NewDrive operation on the '{0}' provider failed for the drive with root '{1}'. {2}. + + + + + Looks up a localized string similar to New drive creation failed because the provider does not allow the creation of the new drive.. + + + + + Looks up a localized string similar to The item at path '{0}' already exists.. + + + + + Looks up a localized string similar to The root of the drive '{0}' cannot be modified.. + + + + + Looks up a localized string similar to Cannot create new drive because the name specified in the PSDriveInfo '{0}' does not match the drive name specified in the path '{1}'.. + + + + + Looks up a localized string similar to The dynamic parameters for the NewItem operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the NewItem operation on the '{0}' provider failed for the path '{1}'. {2}. + + + + + Looks up a localized string similar to The provider name specified in the PSDriveInfo '{0}' does not match the provider name specified in the path '{1}'.. + + + + + Looks up a localized string similar to Cannot create a new drive because type '{0}' is not of type "drive".. + + + + + Looks up a localized string similar to Cannot create a new provider because type '{0}' is not of type "provider".. + + + + + Looks up a localized string similar to Cannot set the new item value because the parameter "value" must be of the type ProviderInfo when "type" is specified as "provider".. + + + + + Looks up a localized string similar to Cannot set new item value because the parameter "value" must be of type PSDriveInfo when "type" is specified as "drive".. + + + + + Looks up a localized string similar to Item '{0}' cannot be created because the value was not specified.. + + + + + Looks up a localized string similar to The dynamic parameters for the NewProperty operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the NewProperty operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The path '{0}' is shorter than the base path '{1}'.. + + + + + Looks up a localized string similar to The path '{0}' referred to an item that was outside the base '{1}'.. + + + + + Looks up a localized string similar to Attempting to perform the NormalizeRelativePath operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The path is not in the correct format. Provider paths must contain a provider Id, followed by "::", followed by a provider specific path.. + + + + + Looks up a localized string similar to Cannot compare PSDriveInfo. A PSDriveInfo instance can be compared only to another PSDriveInfo instance.. + + + + + Looks up a localized string similar to The cmdlet provider cannot stream the results because no cmdlet was specified through which to stream the output.. + + + + + Looks up a localized string similar to Cannot find path '{0}' because it does not exist.. + + + + + Looks up a localized string similar to Cannot set the location because path '{0}' resolved to multiple containers. You can only the set location to a single container at a time.. + + + + + Looks up a localized string similar to The provider '{0}' cannot be used to get or set data using the variable syntax. {2}. + + + + + Looks up a localized string similar to The invocation of Close on the '{0}' provider's content reader or writer failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The invocation of Read on the '{0}' provider's content reader failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The invocation of Write on the '{0}' provider's content writer failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to An error occurred attempting to create an instance of the provider '{0}'. {1} . + + + + + Looks up a localized string similar to Drive that contains the list of loaded providers and their drives. + + + + + Looks up a localized string similar to The provider '{0}' cannot be used to resolve the path '{1}' because of an error in the provider.. + + + + + Looks up a localized string similar to '{0}' resolved to more than one provider name. Possible matches include:{1}.. + + + + + Looks up a localized string similar to The specified provider name '{0}' cannot be used because it contains one or more of the following characters that are not valid: \ [ ] ? * :. + + + + + Looks up a localized string similar to Cannot find a provider with the name '{0}'.. + + + + + Looks up a localized string similar to Cannot find a provider with the name '{0}'. The name is not in the proper format. A provider name can only be alphanumeric characters, or a Windows PowerShell snap-in name that is followed by a single '\', followed by alphanumeric characters.. + + + + + Looks up a localized string similar to An error occurred attempting to create an instance of the provider. The provider type name of '{0}' could not be found in the assembly.. + + + + + Looks up a localized string similar to Cannot create provider because creation of new providers is not supported.. + + + + + Looks up a localized string similar to Cannot remove provider because removal of providers is not supported.. + + + + + Looks up a localized string similar to The path is not in the correct format. Paths can contain only provider and drive names separated by slashes or backslashes.. + + + + + Looks up a localized string similar to The invocation of Seek on the '{0}' provider's content writer failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the Start operation on the '{0}' provider failed. {1}. + + + + + Looks up a localized string similar to The variable syntax cannot be used to get or set data in the provider. {2}. + + + + + Looks up a localized string similar to The invocation of RemoveDrive on the '{0}' provider failed. {1}. + + + + + Looks up a localized string similar to Cannot remove the drive root in this way. Use "Remove-PSDrive" to remove this drive.. + + + + + Looks up a localized string similar to Cannot remove provider {0}. All drives associated with provider {0} must be removed before provider {0} can be removed.. + + + + + Looks up a localized string similar to The dynamic parameters for the RemoveItem operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the RemoveItem operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The dynamic parameters for the RemoveProperty operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the RemoveProperty operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The item at the path '{0}' does not exist.. + + + + + Looks up a localized string similar to The dynamic parameters for the RenameItem operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the RenameItem operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Cannot rename item because the path resolved to multiple items. Only one item can be renamed at a time.. + + + + + Looks up a localized string similar to Dynamic parameters for RenameProperty cannot be retrieved for the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the RenameProperty operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Cannot access the session state resource because it is a private resource. . + + + + + Looks up a localized string similar to Too many scopes have been created.. + + + + + Looks up a localized string similar to The function definition '{0}' contained a scope qualifier but no function name.. + + + + + Looks up a localized string similar to The scope number '{0}' exceeds the number of active scopes.. + + + + + Looks up a localized string similar to This provider does not support security descriptor related operations.. + + + + + Looks up a localized string similar to The dynamic parameters for the SetItem operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the SetItem operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The dynamic parameters for the SetProperty operation cannot be retrieved from the '{0}' provider for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the SetProperty operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to Attempting to perform the SetSecurityDescriptor operation on the '{0}' provider failed for path '{1}'. {2}. + + + + + Looks up a localized string similar to The provided value '{0}' resolved to more than one location stack.. + + + + + Looks up a localized string similar to Cannot find location stack '{0}'. It does not exist or it is not a container.. + + + + + Looks up a localized string similar to Attempting to perform the StartDynamicParameters operation on the '{0}' provider failed for the path '{1}'. {2}. + + + + + Looks up a localized string similar to Cannot find a trace source with the name '{0}'.. + + + + + Looks up a localized string similar to The provider does not support transactions. Perform the operation again without the -UseTransaction parameter.. + + + + + Looks up a localized string similar to The AllScope option cannot be removed from the variable '{0}'.. + + + + + Looks up a localized string similar to A variable with name '{0}' already exists.. + + + + + Looks up a localized string similar to Existing variable {0} cannot be made constant. Variables can be made constant only at creation time.. + + + + + Looks up a localized string similar to Drive that contains a view of those variables stored in a session state. + + + + + Looks up a localized string similar to Cannot modify variable {0} because it is a constant.. + + + + + Looks up a localized string similar to Cannot access the variable '${0}' because it is a private variable.. + + + + + Looks up a localized string similar to Cannot find a variable with the name '{0}'.. + + + + + Looks up a localized string similar to Cannot remove variable {0} because it is constant or read-only. If the variable is read-only, try the operation again specifying the Force option.. + + + + + Looks up a localized string similar to Cannot remove variable {0} because the variable has been optimized and is not removable. Try using the Remove-Variable cmdlet (without any aliases), or dot-sourcing the command that you are using to remove the variable.. + + + + + Looks up a localized string similar to Cannot remove variable {0} because it is owned by the system.. + + + + + Looks up a localized string similar to Cannot overwrite variable {0} because it is read-only or constant.. + + + + + Looks up a localized string similar to Cannot overwrite variable {0} because the variable has been optimized. Try using the New-Variable or Set-Variable cmdlet (without any aliases), or dot-source the command that you are using to set the variable.. + + + + + Looks up a localized string similar to Cannot set options on the local variable {0}. Use New-Variable to create a variable that allows options to be set.. + + + + + Looks up a localized string similar to Cannot create variable {0} because variable capacity {1} is exceeded for this scope.. + + + + + Looks up a localized string similar to Cannot process variable because variable path '{0}' resolved to multiple items. You can get or set the variable value only one item at a time.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to MatchType must be 'Command', 'Error', or 'Dynamic'.. + + + + + Looks up a localized string similar to Rule must be a ScriptBlock for dynamic match types.. + + + + + Looks up a localized string similar to The command {0} was not found, but does exist in the current location. Windows PowerShell does not load commands from the current location by default. If you trust this command, instead type: "{1}". See "get-help about_Command_Precedence" for more details.. + + + + + Looks up a localized string similar to Once a transaction is started, only commands that get called with the -UseTransaction flag become part of that transaction.. + + + + + Looks up a localized string similar to The Use-Transaction cmdlet is intended for scripting of transaction-enabled .NET objects. Its ScriptBlock should contain nothing else.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot reflect on the entry assembly and determine the value of the RunspaceConfigurationType attribute. . + + + + + Looks up a localized string similar to Cannot create the RunspaceConfiguration object because there is more than one assembly attribute of the type RunspaceConfigurationType defined in the assembly {0}.. + + + + + Looks up a localized string similar to Cannot create the RunspaceConfiguration object because an assembly attribute of type RunspaceConfigurationType is not defined in assembly {0}. . + + + + + Looks up a localized string similar to The RunspaceConfiguration-derived type {1} is not defined in assembly {0}.. + + + + + Looks up a localized string similar to The following errors occurred when updating the assembly list for the runspace: {0}.. + + + + + Looks up a localized string similar to The update is not supported for the runspace configuration category {0}. . + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to All strings are null or empty.. + + + + + Looks up a localized string similar to "{0}" cannot be greater than or equal to "{1}".. + + + + + Looks up a localized string similar to "{0}" needs to be a positive number.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The operation cannot be performed. The specified cmdlet is not supported in a custom shell.. + + + + + Looks up a localized string similar to The custom Windows PowerShell snap-in is not supported in PowerShell Core.. + + + + + Looks up a localized string similar to The format of the specified snap-in name was not valid. Windows PowerShell snap-in names can only contain alpha-numeric characters, dashes, underscores and periods. Correct the name and then try the operation again.. + + + + + Looks up a localized string similar to Cannot add Windows PowerShell snap-in {0} because it is a system Windows PowerShell module. Use Import-Module to load the module.. + + + + + Looks up a localized string similar to No Windows PowerShell snap-ins matching the pattern '{0}' were found. Check the pattern and then try the command again.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot find required information in registry or missing key files. Cannot load some cmdlets.. + + + + + Looks up a localized string similar to The mandatory value {0} is not in the correct format for registry key {1}. The expected format is 'string.'. + + + + + Looks up a localized string similar to The mandatory value {0} is not in the correct format for registry key {1}. The expected format is 'multistring.'. + + + + + Looks up a localized string similar to The mandatory value {0} is not specified for registry key {1}.. + + + + + Looks up a localized string similar to Unable to access Windows PowerShell PowerShellEngine registry information.. + + + + + Looks up a localized string similar to Unable to access Windows PowerShell registry information.. + + + + + Looks up a localized string similar to The Windows PowerShell snap-in '{0}' is not installed on this computer.. + + + + + Looks up a localized string similar to No snap-ins have been registered for Windows PowerShell version {0}.. + + + + + Looks up a localized string similar to No [PSVersion] attribute was found for Windows PowerShell type {0}. Add a PSVersion attribute to the type using [PSVersion(Windows PowerShell SnapinBase.PSEngineVersion)].. + + + + + Looks up a localized string similar to Unable to access PublicKeyToken information.. + + + + + Looks up a localized string similar to Cannot retrieve the string resource because the reader has been disposed.. + + + + + Looks up a localized string similar to Version {0} of Windows PowerShell is not available on this computer.. + + + + + Looks up a localized string similar to Version value {0} is not specified or is incorrect for registry key {1}.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot find the registry key: {0}{1}. Using {2} to load the configuration files.. + + + + + Looks up a localized string similar to Cannot find the path {0} specified in the registry key: {1}{2}. Using {3} to load the configuration files.. + + + + + Looks up a localized string similar to The CodeProperty should have a getter or setter.. + + + + + Looks up a localized string similar to {0}, {1}: The file was skipped because it was already loaded by {2}.. + + + + + Looks up a localized string similar to {0}: The file was skipped because it already occurred.. + + + + + Looks up a localized string similar to The member {0} is already present.. + + + + + Looks up a localized string similar to More than one member with the name "{0}" is defined in the type file.. + + + + + Looks up a localized string similar to {0}, {1}: The file was skipped because it does not have the ps1xml file name extension.. + + + + + Looks up a localized string similar to Cannot convert note "{0}":"{1}".. + + + + + Looks up a localized string similar to Exception: {0}. + + + + + Looks up a localized string similar to Expected XML tag "{0}" instead of "{1}".. + + + + + Looks up a localized string similar to Expected XML tag "{0}" instead of node of type "{1}".. + + + + + Looks up a localized string similar to {0}, {1} : {2}. + + + + + Looks up a localized string similar to {0}, {1}({2}) : Error: {3}. + + + + + Looks up a localized string similar to {0}, {1}({2}) : Error in type "{3}": {4}. + + + + + Looks up a localized string similar to {0}, {1}: The file was not found.. + + + + + Looks up a localized string similar to The adapted type "{0}" is not valid.. + + + + + Looks up a localized string similar to Node "{0}" should not have "{1}" attribute.. + + + + + Looks up a localized string similar to Value should be "true" or "false" instead of "{0}" for "{1}" attribute.. + + + + + Looks up a localized string similar to "{0}" must be present when the "{1}" is "{2}" and "{3}" is "{4}".. + + + + + Looks up a localized string similar to Member "{0}" must be a note.. + + + + + Looks up a localized string similar to Member "{0}" must have type "{1}".. + + + + + Looks up a localized string similar to Do not use the member "{0}" here.. + + + + + Looks up a localized string similar to Node "{0}" was not found. It should occur at least once under "{1}". The parent node, "{1}", will be ignored.. + + + + + Looks up a localized string similar to Node "{0}" was not found. It should occur only once under "{1}". The parent node, "{1}", will be ignored.. + + + + + Looks up a localized string similar to Node "{0}" should have an inner text.. + + + + + Looks up a localized string similar to Node "{0}" should not have an inner text.. + + + + + Looks up a localized string similar to "{0}" is not a standard member and will be ignored.. + + + + + Looks up a localized string similar to Node "{0}" must occur only once under "{1}". The parent node, "{1}", will be ignored.. + + + + + Looks up a localized string similar to Node "{0}" must have a maximum of one occurrence under "{1}". The parent node, "{1}", will be ignored.. + + + + + Looks up a localized string similar to The following member name is reserved: {0}. + + + + + Looks up a localized string similar to The ScriptProperty should have a getter or setter.. + + + + + Looks up a localized string similar to A previous error caused all serialization settings to be ignored.. + + + + + Looks up a localized string similar to The TypeTable cannot be updated because the TypeTable might have been created outside of the runspace.. + + + + + Looks up a localized string similar to The TypeAdapter was ignored because it already occurs.. + + + + + Looks up a localized string similar to The TypeConverter was ignored because it already occurs.. + + + + + Looks up a localized string similar to "{0}" should have a value for its property "{1}".. + + + + + Looks up a localized string similar to The TypeData must have "Members", "TypeConverters", "TypeAdapters" or "StandardMembers".. + + + + + Looks up a localized string similar to "{0}" should not have null or an empty string in its property "{1}".. + + + + + Looks up a localized string similar to Error in TypeData "{0}": {1}. + + + + + Looks up a localized string similar to The {0} path is not fully qualified. Specify a fully qualified type file path.. + + + + + Looks up a localized string similar to Type "{0}" should be a PSPropertyAdapter.. + + + + + Looks up a localized string similar to Type "{0}" should be either TypeConverter or PSTypeConverter.. + + + + + Looks up a localized string similar to The "Type" node must have "Members", "TypeConverters", or "TypeAdapters".. + + + + + Looks up a localized string similar to The type "{0}" was not found. The type name value must be the full name of the type. Verify the type name and run the command again.. + + + + + Looks up a localized string similar to A shared type table cannot be updated with more than one entry.. + + + + + Looks up a localized string similar to There were errors loading TypeTable. Look in the Errors property to get detailed error messages.. + + + + + Looks up a localized string similar to Windows PowerShell cannot create an instance of the type adapter for the type {0} because of the following exception: {1}.. + + + + + Looks up a localized string similar to Cannot create an instance of the type converter for type {0} due to exception: {1}.. + + + + + Looks up a localized string similar to Node of type "{0}" was not expected.. + + + + + Looks up a localized string similar to The node {0} is not allowed. The following nodes are allowed: {1}.. + + + + + Looks up a localized string similar to {0}, {1}: The file was skipped because of the following validation exception: {2}.. + + + + + Looks up a localized string similar to The value should be either TRUE or FALSE instead of {0}.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The base transaction cannot be set after other transactions have been created.. + + + + + Looks up a localized string similar to The base transaction is not active.. + + + + + Looks up a localized string similar to The base transaction has not been set.. + + + + + Looks up a localized string similar to This cmdlet requires a transaction. Run the command again with the -UseTransaction parameter.. + + + + + Looks up a localized string similar to Cannot commit transaction. The transaction has already been committed.. + + + + + Looks up a localized string similar to Cannot roll back transaction. The transaction has already been committed.. + + + + + Looks up a localized string similar to Cannot use transaction. No transaction is active.. + + + + + Looks up a localized string similar to Cannot commit transaction. No transaction is active.. + + + + + Looks up a localized string similar to Cannot roll back the transaction, because there is no active transaction.. + + + + + Looks up a localized string similar to This cmdlet requires an active transaction. The current transaction has already been committed or rolled back.. + + + + + Looks up a localized string similar to Cannot set active transaction. No transaction has been created.. + + + + + Looks up a localized string similar to Cannot set active transaction. The active transaction has been rolled back or has timed out.. + + + + + Looks up a localized string similar to Cannot use transaction. No transaction has been started.. + + + + + Looks up a localized string similar to Cannot use transaction. The transaction has been committed.. + + + + + Looks up a localized string similar to Cannot use transaction. The transaction has been rolled back or has timed out.. + + + + + Looks up a localized string similar to Cannot commit transaction. The transaction has been rolled back or has timed out.. + + + + + Looks up a localized string similar to Cannot roll back transaction. The transaction has already been rolled back or has timed out.. + + + + + Looks up a localized string similar to Cannot use transaction. The transaction has timed out.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The specified wildcard character pattern is not valid: {0}. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to You cannot use the Invoke-Command cmdlet with both the AsJob and Disconnected parameters in the same command.. + + + + + Looks up a localized string similar to "{0}", "{1}" must be specified in the "{2}" section to dynamically load the assembly.. + + + + + Looks up a localized string similar to {0} authentication requires an explicit user name and password. Specify the user name and password by using the -Credential parameter and try the command again.. + + + + + Looks up a localized string similar to The -AutoRemoveJob parameter cannot be used without the -Wait parameter. + + + + + Looks up a localized string similar to A job could not be created from the {0} specification because the provided runspace is not a local runspace. Try again using a local runspace, or specify a RunspaceMode argument.. + + + + + Looks up a localized string similar to Cannot parse sddl string because it contains mismatched parentheses: {0}.. + + + + + Looks up a localized string similar to Fragment blob length is out of range: {0}. + + + + + Looks up a localized string similar to The Wait and Keep parameters cannot be used together in the same command.. + + + + + Looks up a localized string similar to Unable to open pipe connection for PowerShell in container. Error code: {0}.. + + + + + Looks up a localized string similar to Cannot create or open the configuration session {0}.. + + + + + Looks up a localized string similar to Unable to create PowerShell IPC named pipe. Error code: {0}.. + + + + + Looks up a localized string similar to Failed to launch PowerShell process inside container with id {0}.. + + + + + Looks up a localized string similar to Cannot create runspace. The language mode for this configuration is incompatible with the system-wide language mode.. + + + + + Looks up a localized string similar to The job cannot be debugged because the host debugger mode is set to None or Default. The host debugger mode must be LocalScript and/or RemoteSript.. + + + + + Looks up a localized string similar to The job cannot be debugged because there is no PowerShell host debugger available. Make sure you are running this command in a host that supports debugging.. + + + + + Looks up a localized string similar to The job cannot be debugged because there is no host UI available. Make sure you are running this command in a PowerShell host that implements PSHostUserInterface.. + + + + + Looks up a localized string similar to The session {0} cannot be disconnected because the specified idle time-out value {1} (seconds) is either greater than the server maximum allowed {2} (seconds), or less than the minimum allowed {3} (seconds). Specify an idle time-out value that is within the allowed range, and try again.. + + + + + Looks up a localized string similar to Cannot exit a nested pipeline because the pipeline is not in the nested state.. + + + + + Looks up a localized string similar to Cannot find job with id {0}.. + + + + + Looks up a localized string similar to Cannot find job with Instance Id {0}.. + + + + + Looks up a localized string similar to Cannot find job with name {0}.. + + + + + Looks up a localized string similar to Cannot connect to session {0}. The session no longer exists on computer {1}.. + + + + + Looks up a localized string similar to The call to Windows API GetStdHandle to get the Standard Error handle resulted in an error code: {0}.. + + + + + Looks up a localized string similar to The call to Windows API GetStdHandle to get the Standard Input handle resulted in an error code: {0}.. + + + + + Looks up a localized string similar to The call to Windows API GetStdHandle to get the Standard Output handle resulted in an error code: {0}.. + + + + + Looks up a localized string similar to Cannot invoke a nested command on the remote session because a nested command is already running.. + + + + + Looks up a localized string similar to The command cannot remove the job because it does not exist or because it is a child job. Child jobs can be removed only by removing the parent job.. + + + + + Looks up a localized string similar to Cannot start job. The language mode for this session is incompatible with the system-wide language mode.. + + + + + Looks up a localized string similar to Failed to terminate PowerShell process with id {0} inside container with id {1}.. + + + + + Looks up a localized string similar to Unexpected type of encoded command (expected PSObject, got {0}).. + + + + + Looks up a localized string similar to Unexpected type of encoded command parameter (expected PSObject, got {0}).. + + + + + Looks up a localized string similar to Unexpected type of {0} property (expected {1}, got {2}).. + + + + + Looks up a localized string similar to Unexpected type of remoting data (expected PSObject, got {0}).. + + + + + Looks up a localized string similar to The server did not respond with an encrypted session key within the specified time-out period.. + + + + + Looks up a localized string similar to Windows PowerShell client does not support the {0} {1} negotiated by the server. Make sure the server is compatible with the build {2} and the protocol version {3} of Windows PowerShell.. + + + + + Looks up a localized string similar to The client negotiation timer has expired. The negotiation time-out interval is {0} milliseconds.. + + + + + Looks up a localized string similar to {0}. Negotiation with the server failed. Make sure the server is compatible with the build {1} and the protocol version {2} of Windows PowerShell.. + + + + + Looks up a localized string similar to Client side receive call failed.. + + + + + Looks up a localized string similar to The client computer has sent a request to close the session.. + + + + + Looks up a localized string similar to Client side send call failed.. + + + + + Looks up a localized string similar to The session is closed.. + + + + + Looks up a localized string similar to Closing the remote server shell instance failed with the following error message : {0}. + + + + + Looks up a localized string similar to Could not close the session.. + + + + + Looks up a localized string similar to Attempting to close the session.. + + + + + Looks up a localized string similar to The command handle returned from the WinRS API WSManRunShellCommand is null.. + + + + + Looks up a localized string similar to Processing data for a remote command failed with the following error message: {0}. + + + + + Looks up a localized string similar to Receiving data for a remote command failed.. + + + + + Looks up a localized string similar to Sending data to a remote command failed with the following error message: {0}. + + + + + Looks up a localized string similar to Sending data to a remote command failed.. + + + + + Looks up a localized string similar to The command cannot retrieve the jobs of the specified computers. The ComputerName parameter can be used only with jobs created by using Windows PowerShell remoting.. + + + + + Looks up a localized string similar to Connecting to remote server {0} failed with the following error message : {1}. + + + + + Looks up a localized string similar to Connecting to remote server {0} failed.. + + + + + Looks up a localized string similar to Connection attempt failed.. + + + + + Looks up a localized string similar to Timeout expired before connection could be made to named pipe.. + + + + + Looks up a localized string similar to A failure occurred while attempting to connect to the target container.. + + + + + Looks up a localized string similar to The Containers feature may not be enabled on this machine.. + + + + + Looks up a localized string similar to Could not find the role capability, '{0}'. The role capability must be a file named '{1}' within a 'RoleCapabilities' directory in a module in the current module path.. + + + + + Looks up a localized string similar to Could not find the provided role capability file {0}.. + + + + + Looks up a localized string similar to Could not grant remote access to '{0}': '{1}'. The session configuration has been registered, but this group does not have access. To resolve this error, provide a valid group name and register the session configuration again.. + + + + + Looks up a localized string similar to Could not resolve username '{0}'. Verify the username and try again.. + + + + + Looks up a localized string similar to {0} is not a valid value for the parameter {1}. The value must be greater than or equal to 0.. + + + + + Looks up a localized string similar to Session configuration "{0}" was not found.. + + + + + Looks up a localized string similar to Session configuration "{0}" is not a Windows PowerShell-based shell.. + + + + + Looks up a localized string similar to Either "{0}" and "{1}" must both be specified, or neither must not be specified.. + + + + + Looks up a localized string similar to {0}. + + + + + Looks up a localized string similar to Name: {0}. + + + + + Looks up a localized string similar to Name: {0}. This lets administrators remotely run Windows PowerShell commands on this computer.. + + + + + Looks up a localized string similar to No session configuration matches criteria "{0}".. + + + + + Looks up a localized string similar to Running command "{0}" to disable the session configuration.. + + + + + Looks up a localized string similar to Name: {0} SDDL: {1}. This denies access to this session configuration for everyone.. + + + + + Looks up a localized string similar to Disabling the session configurations does not undo all the changes made by the Enable-PSRemoting or Enable-PSSessionConfiguration cmdlet. You might have to manually undo the changes by following these steps: + 1. Stop and disable the WinRM service. + 2. Delete the listener that accepts requests on any IP address. + 3. Disable the firewall exceptions for WS-Management communications. + 4. Restore the value of the LocalAccountTokenFilterPolicy to 0, which restricts remote access to members of the [rest of string was truncated]";. + + + + + Looks up a localized string similar to Error in decoding ErrorRecord.. + + + + + Looks up a localized string similar to Error in decoding Maximum runspaces.. + + + + + Looks up a localized string similar to Error in decoding Minimum runspaces.. + + + + + Looks up a localized string similar to Error in decoding PipelineStateInfo.. + + + + + Looks up a localized string similar to Error in decoding Windows PowerShellStateInfo.. + + + + + Looks up a localized string similar to Error in decoding RunspacePoolStateInfo.. + + + + + Looks up a localized string similar to Error in decoding RunspaceStateInfo.. + + + + + Looks up a localized string similar to An error of type "{0}" has occurred.. + + + + + Looks up a localized string similar to Deserialized remoting data is null.. + + + + + Looks up a localized string similar to Name: {0} SDDL: {1}. This denies remote access to this session configuration.. + + + + + Looks up a localized string similar to Aliases to be defined when applied to a session. + + + + + Looks up a localized string similar to Assemblies to load when applied to a session. + + + + + Looks up a localized string similar to Author of this document. + + + + + Looks up a localized string similar to Version of the CLR to use when applied to a session. + + + + + Looks up a localized string similar to Could not parse visible command definition for '{0}'. The visible command definition must be a hashtable with the keys of 'Name' and 'Parameters'. The value of the 'Parameters' key must be a collection of hashtables with the keys 'Name', and optionally either 'ValidateSet' or 'ValidatePattern'.. + + + + + Looks up a localized string similar to Company associated with this document. + + + + + Looks up a localized string similar to Copyright statement for this document. + + + + + Looks up a localized string similar to Description of the functionality provided by these settings. + + + + + Looks up a localized string similar to Enforces script input parameter validation. This is automatically enabled when MountUserDrive is specified.. + + + + + Looks up a localized string similar to Environment variables to define when applied to a session. + + + + + Looks up a localized string similar to Error parsing configuration file {0} with the following message: {1}. + + + + + Looks up a localized string similar to Execution policy to apply when applied to a session. + + + + + Looks up a localized string similar to Format files (.ps1xml) to load when applied to a session. + + + + + Looks up a localized string similar to Functions to define when applied to a session. + + + + + Looks up a localized string similar to Group managed service account name under which the configuration will run. + + + + + Looks up a localized string similar to ID used to uniquely identify this document. + + + + + Looks up a localized string similar to Session type defaults to apply for this session configuration. Can be 'RestrictedRemoteServer' (recommended), 'Empty', or 'Default'. + + + + + Looks up a localized string similar to The key '{0}' contains an extension {1} that is not valid. Specify an extension from the following list: {{{2}}}.. + + + + + Looks up a localized string similar to The member '{0}' is not a valid key. Please change the member to a valid key in the file {1}.. + + + + + Looks up a localized string similar to The key '{0}' in the member '{1}' must be a script block. Change the key to the correct type in the file {2}.. + + + + + Looks up a localized string similar to Language mode to apply when applied to a session. Can be 'NoLanguage' (recommended), 'RestrictedLanguage', 'ConstrainedLanguage', or 'FullLanguage'. + + + + + Looks up a localized string similar to The member 'SchemaVersion' is not present in the configuration file. This member must exist and be assigned a version number of the form 'n.n.n.n'. Please add the missing member to the file {0}.. + + + + + Looks up a localized string similar to Modules to import when applied to a session. + + + + + Looks up a localized string similar to Creates a 'User' PSDrive in the session for use with Copy-Item when File System provider is not visible.. + + + + + Looks up a localized string similar to Disconnecting from the remote server failed with the following error message : {0}. + + + + + Looks up a localized string similar to Failed to disconnect from the remote server {0}.. + + + + + Looks up a localized string similar to The member '{0}' is not an absolute path {1}. Change the member to an absolute path in the file {2}.. + + + + + Looks up a localized string similar to Version of the Windows PowerShell engine to use when applied to a session. + + + + + Looks up a localized string similar to Processor architecture to use when applied to a session. + + + + + Looks up a localized string similar to Group accounts for which membership is required to use the session.. + + + + + Looks up a localized string similar to User roles (security groups), and the role capabilities that should be applied to them when applied to a session. + + + + + Looks up a localized string similar to Whether to run this session configuration as the machine's (virtual) administrator account. + + + + + Looks up a localized string similar to Groups associated with machine's (virtual) administrator account. + + + + + Looks up a localized string similar to Version number of the schema used for this document. + + + + + Looks up a localized string similar to Scripts to run when applied to a session. + + + + + Looks up a localized string similar to Directory to place session transcripts for this session configuration. + + + + + Looks up a localized string similar to The key '{0}' in the member '{1}' is not valid. Change the key in the file {2}.. + + + + + Looks up a localized string similar to The member '{0}' must be a boolean. Change the member to the correct type in the file {1}.. + + + + + Looks up a localized string similar to The member '{0}' must be a hashtable. Change the member to the correct type in the file {1}.. + + + + + Looks up a localized string similar to The member '{0}' must be a hashtable array. Change the member to the correct type in the file {1}.. + + + + + Looks up a localized string similar to The member '{0}' must be an integer. Change the member to the correct type in the file {1}.. + + + + + Looks up a localized string similar to The member '{0}' must be a string. Change the member to the correct type in the file {1}.. + + + + + Looks up a localized string similar to The member '{0}' must be a string array. Change the member to the correct type in the file {1}.. + + + + + Looks up a localized string similar to The member '{0}' must be an array consisting of either string or hashtable elements.. + + + + + Looks up a localized string similar to The member '{0}' must be an array consisting of either string or hashtable elements. Change the member to the correct type in the file {1}.. + + + + + Looks up a localized string similar to The member '{0}' must be a valid enumeration type "{1}". Valid enumeration values are "{2}". Change the member to the correct type in the file {3}.. + + + + + Looks up a localized string similar to The member '{0}' must contain the required key '{1}'. Add the require key to the file {2}.. + + + + + Looks up a localized string similar to Types to add when applied to a session. + + + + + Looks up a localized string similar to Type files (.ps1xml) to load when applied to a session. + + + + + Looks up a localized string similar to Optional maximum size in bytes of user drive created with MountUserDrive parameter. Default maximum size for User drive is 50MB.. + + + + + Looks up a localized string similar to Variables to define when applied to a session. + + + + + Looks up a localized string similar to The cmdlet "{0}" or the alias "{1}" cannot be present when "{2}","{3}","{4}" or "{5}" keys are specified in the session configuration file.. + + + + + Looks up a localized string similar to Aliases to make visible when applied to a session. + + + + + Looks up a localized string similar to Cmdlets to make visible when applied to a session. + + + + + Looks up a localized string similar to External commands (scripts and applications) to make visible when applied to a session. + + + + + Looks up a localized string similar to Functions to make visible when applied to a session. + + + + + Looks up a localized string similar to Providers to make visible when applied to a session. + + + + + Looks up a localized string similar to The {0} parameter is already specified in the {1} section. Contact your administrator to make sure that {0} is specified only once.. + + + + + Looks up a localized string similar to Running command "{0}" to enable the session configuration.. + + + + + Looks up a localized string similar to Name: {0} SDDL: {1}. This lets selected users remotely run Windows PowerShell commands on this computer.. + + + + + Looks up a localized string similar to WinRM Quick Configuration. + + + + + Looks up a localized string similar to Running command "{0}" to enable remote management of this computer by using the Windows Remote Management (WinRM) service. + This includes: + 1. Starting or restarting (if already started) the WinRM service + 2. Setting the WinRM service startup type to Automatic + 3. Creating a listener to accept requests on any IP address + 4. Enabling Windows Firewall inbound rule exceptions for WS-Management traffic (for http only). + + Do you want to continue?. + + + + + Looks up a localized string similar to Performing operation "{0}".. + + + + + Looks up a localized string similar to Access is denied. To run this cmdlet, start Windows PowerShell with the "Run as administrator" option.. + + + + + Looks up a localized string similar to PSSession {0} was created using the EnableNetworkAccess parameter and can only be reconnected from the local computer.. + + + + + Looks up a localized string similar to Disconnected sessions are supported only when the remote computer is running Windows PowerShell 3.0 or a later version of Windows PowerShell.. + + + + + Looks up a localized string similar to Unable to connect to application domain name {0} of process {1}. Error: {2}.. + + + + + Looks up a localized string similar to Enter-PSHostProcess does not support entering the same Windows PowerShell session it is running in.. + + + + + Looks up a localized string similar to Multiple processes were found with this name {0}. Use the process Id to specify a single process to enter.. + + + + + Looks up a localized string similar to Cannot enter process {0} because it has not loaded the Windows PowerShell engine.. + + + + + Looks up a localized string similar to No process was found with Id: {0}.. + + + + + Looks up a localized string similar to No process was found with Name: {0}.. + + + + + Looks up a localized string similar to {0}[Process:{1}]: {2}. + + + + + Looks up a localized string similar to Cannot enter session {0} because it is not in the disconnected state or is not available for connection. Retrieve the remote session using Get-PSSession -ComputerName {1} -InstanceId {2}.. + + + + + Looks up a localized string similar to Cannot enter session {0} because it is not in the disconnected state or is not available for connection. Reconnect using Connect-PSSession or Receive-PSSession.. + + + + + Looks up a localized string similar to {0}[{1}]: {2}. + + + + + Looks up a localized string similar to Registering session configuration. + + + + + Looks up a localized string similar to The session configuration "{0}" was not found. Running command "{1}" to create the "{0}" session configuration. Running this command restarts the WinRM service.. + + + + + Looks up a localized string similar to Register-PSSessionConfiguration : The '{0}' key in the {1}. session configuration file contains a value that is not valid. Correct the file and try the command again. . + + + + + Looks up a localized string similar to An error has occurred which Windows PowerShell cannot handle. A remote session might have ended.. + + + + + Looks up a localized string similar to The path specified as the value of the FilePath parameter is not from the FileSystem provider.. + + + + + Looks up a localized string similar to The value of the FilePath parameter must be a Windows PowerShell script file. Enter the path to a file with a .ps1 file name extension and try the command again.. + + + + + Looks up a localized string similar to The -Force parameter cannot be used without the -Wait parameter.. + + + + + Looks up a localized string similar to Windows PowerShell cannot close the remote session properly. The session is in an undefined state because it was not opened or connected after being disconnected. Windows PowerShell will try to force the session to close on the local computer, but the session might not be closed on the remote computer. To close a remote session properly, first open it or connect it.. + + + + + Looks up a localized string similar to The job was suspended successfully by adding the Force parameter.. + + + + + Looks up a localized string similar to Multiple jobs were found with Id {0}. Debug-Job can debug only one job at a time.. + + + + + Looks up a localized string similar to Multiple jobs were found with the name {0}. Debug-Job can debug only one job at a time.. + + + + + Looks up a localized string similar to The FragmentIDs of the same object must be in sequence, incrementally changing by 1. This can happen if the fragments are not properly constructed by the remote computer. The data might also have been corrupted or changed.. + + + + + Looks up a localized string similar to Running command "{0}" to get Windows PowerShell-based session configurations.. + + + + + Looks up a localized string similar to Error with error code {0} occurred while calling method {1}.. + + + + + Looks up a localized string similar to The current host does not support the Enter-PSHostProcess cmdlet.. + + + + + Looks up a localized string similar to The host does not support Enter-PSSession and Exit-PSSession.. + + + + + Looks up a localized string similar to You cannot run Enter-PSSession from a nested prompt.. + + + + + Looks up a localized string similar to The Hyper-V Module for Windows PowerShell is not available on this machine.. + + + + + Looks up a localized string similar to "The Hyper-V socket target process has ended.". + + + + + Looks up a localized string similar to The session {0}, {1}, {2} is not available to run commands. The session availability is {3}.. + + + + + Looks up a localized string similar to Because the session state for session {0}, {1}, {2} is not equal to Open, you cannot run a command in the session. The session state is {3}.. + + + + + Looks up a localized string similar to No valid sessions were specified. Ensure you provide valid sessions that are in the Opened state and are available to run commands.. + + + + + Looks up a localized string similar to The EndpointConfiguration with the {0} identifier is not in a valid initial session state on the remote computer. Contact your Windows PowerShell administrator, or the owner or creator of the endpoint configuration.. + + + + + Looks up a localized string similar to One or more computer names are not valid. If you are trying to pass a URI, use the -ConnectionUri parameter, or pass URI objects instead of strings.. + + + + + Looks up a localized string similar to The WS-Management service cannot process the request. Cannot find the {0} session configuration in the WSMan: drive on the {1} computer. For more information, see the about_Remote_Troubleshooting Help topic.. + + + + + Looks up a localized string similar to "The transport option is not valid. Parameter "{0}" can be non-zero only if parameter "{1}" is set to true.". + + + + + Looks up a localized string similar to The input ContainerId {0} does not exist, or the corresponding container is not running.. + + + + + Looks up a localized string similar to The credential is invalid.. + + + + + Looks up a localized string similar to Invalid Group Managed Service account name. Account name must be of the form 'DomainName\UserName'.. + + + + + Looks up a localized string similar to The specified IdleTimeout session option {0} (seconds) is not a valid period. Specify an IdleTimeout value that is greater than or equal to the minimum allowed {1} (seconds).. + + + + + Looks up a localized string similar to The state of the current job instance is not valid for this operation.. + + + + + Looks up a localized string similar to The state of the current job instance is {0}. This state is not valid for the attempted operation. {1}. + + + + + Looks up a localized string similar to The session configuration file {0} is not valid. Specify a valid session configuration file and try the command again.. + + + + + Looks up a localized string similar to The session configuration file {0} is not valid. Specify a valid session configuration file and try the command again. Error parsing configuration file: {1}.. + + + + + Looks up a localized string similar to PSSession Configuration file path '{0}' is not valid. The path argument must resolve to a single file in the file system with a '.pssc' extension. Please fix the path specification and try again.. + + + + + Looks up a localized string similar to Cannot find module path to import. The value of the ModulesToImport parameter {0} does not exist or is not a module directory. Correct the value and try the command again.. + + + + + Looks up a localized string similar to The provided role capability file {0} does not have the required .psrc extension.. + + + + + Looks up a localized string similar to Role Capability file path '{0}' is not valid. The path argument must resolve to a single file in the file system with a '.psrc' extension. Please fix the path specification and try again.. + + + + + Looks up a localized string similar to Invalid role capability key: {0}. Make sure the role capability name is spelled correctly and is a valid session configuration property.. + + + + + Looks up a localized string similar to Invalid role capability key type: {0}. Role capability keys must be strings that identify a valid session configuration property.. + + + + + Looks up a localized string similar to The 'Roles' entry must be a hashtable, but was a {0}.. + + + + + Looks up a localized string similar to Invalid role key type: {0}. Role keys must be strings that identify a security group.. + + + + + Looks up a localized string similar to Could not convert the value of the '{0}' role entry to a hashtable. The 'Roles' entry must be a hashtable with group names for keys, where the value associated with each key is another hashtable of session configuration properties for that role.. + + + + + Looks up a localized string similar to {0} is not a valid schema value. Valid values are "http" and "https".. + + + + + Looks up a localized string similar to Cannot create a session User Drive because the current user name contains invalid file path characters.. + + + + + Looks up a localized string similar to The input username cannot be empty.. + + + + + Looks up a localized string similar to The input VMId parameter does not resolve to a single virtual machine.. + + + + + Looks up a localized string similar to The input VMId {0} does not resolve to a single virtual machine.. + + + + + Looks up a localized string similar to The input VMName parameter resolves to multiple virtual machines.. + + + + + Looks up a localized string similar to The input VMName {0} does not resolve to a single virtual machine.. + + + + + Looks up a localized string similar to The input VMName parameter does not resolve to any virtual machine.. + + + + + Looks up a localized string similar to The virtual machine {0} is not in running state.. + + + + + Looks up a localized string similar to No computer names or connection Uris were specified. You must provide a computer name or connection Uri when invoking a command with the -Disconnected switch.. + + + + + Looks up a localized string similar to The client did not receive a response for a Close operation in the specified time interval. This can happen when a command is not responding to a Stop message in a timely manner.. + + + + + Looks up a localized string similar to There is an error processing data from the background process. Error reported: {0}.. + + + + + Looks up a localized string similar to An error occurred while starting the background process. Error reported: {0}.. + + + + + Looks up a localized string similar to Not enough data is available to process the {0} element.. + + + + + Looks up a localized string similar to A {0} message to a session is not supported. A {0} message can be sent only to a command.. + + + + + Looks up a localized string similar to Node type "{0}" is unknown in the {1} element. Only the "{2}" node type is expected in the {1} element.. + + + + + Looks up a localized string similar to The background process closed or ended abnormally.. + + + + + Looks up a localized string similar to The background process reported an error with the following message: {0}.. + + + + + Looks up a localized string similar to The client did not receive a response for a signal operation in the specified time interval. This can happen when a command is not responding to a Stop message in a timely manner.. + + + + + Looks up a localized string similar to The specified authentication mechanism "{0}" is not supported. Only "{1}" is supported for this operation.. + + + + + Looks up a localized string similar to Inter-process communication (IPC) transport does not support connect operations.. + + + + + Looks up a localized string similar to Data for an inactive command with the identifier {0} was received. Received data: {1}.. + + + + + Looks up a localized string similar to An unknown element "{0}" was received. This can happen if the remote process closed or ended abnormally.. + + + + + Looks up a localized string similar to Cannot process an element with node type "{0}". Only {1} and {2} node types are supported.. + + + + + Looks up a localized string similar to The "{0}" executable file was not found. Verify that the WOW64 feature is installed.. + + + + + Looks up a localized string similar to Expected only two attributes with the names "{0}" and "{1}" in the {2} element.. + + + + + Looks up a localized string similar to Expected only one attribute with the name "{0}" in the {1} element.. + + + + + Looks up a localized string similar to {0} does not contain an item with ID of {1}.. + + + + + Looks up a localized string similar to The command cannot run because the ChildJobs property is empty.. + + + + + Looks up a localized string similar to The command cannot finish because the ChildJobs property contains a value that is not valid.. + + + + + Looks up a localized string similar to The Wait-Job cmdlet cannot finish working, because one or more jobs are blocked waiting for user interaction. Process interactive job output by using the Receive-Job cmdlet, and then try again.. + + + + + Looks up a localized string similar to Unable to connect job "{0}" to the remote server.. + + + + + Looks up a localized string similar to The JobIdentifier provided must not be null. Please provide a valid JobIdentifier.. + + + + + Looks up a localized string similar to Attempted to create a job with ID {0}. A job with this ID cannot be created now. Verify that the ID has already been assigned once on this computer.. + + + + + Looks up a localized string similar to The following type cannot be instantiated because its constructor is not public: {0}.. + + + + + Looks up a localized string similar to Cannot resume the job that has an ID of {0}. Resuming jobs is not supported for some job types. For more information about support for resuming jobs, see the Help topic for the job type.. + + + + + Looks up a localized string similar to Cannot create a job with an ID of {0}; this is not a valid ID. Provide an integer for the job ID that is greater than 0.. + + + + + Looks up a localized string similar to The job was null when trying to save identifiers. Specify a job to save its identifiers.. + + + + + Looks up a localized string similar to A {1} job source adapter threw an exception with the following message: {0}. + + + + + Looks up a localized string similar to The job operation (Create, Get, or Remove) could not be performed because the JobSourceAdapter type specified in the JobDefinition is not registered. Register the JobSourceAdapter type either by using an explicit call, or by calling the Import-Module cmdlet, and then specifying an assembly.. + + + + + Looks up a localized string similar to One or more jobs are in a suspended or disconnected state, and cannot continue without additional user input. Specify the -Force parameter to continue to a completed, failed, or stopped state.. + + + + + Looks up a localized string similar to Cannot suspend the job that has an ID of {0}. Suspending jobs is not supported for some job types. For more information about support for suspending jobs, see the Help topic for the job type.. + + + + + Looks up a localized string similar to The workflow job "{0}" was stopped. Receive-Job is only displaying partial results.. + + + + + Looks up a localized string similar to The command cannot remove the job with the job ID {0} and the instance identifier {1} because the job is not finished. To remove the job, first stop the job or use the Force parameter.. + + + + + Looks up a localized string similar to The command cannot find a job with the instance identifier {0}. Verify the value of the InstanceId parameter, and then try the command again.. + + + + + Looks up a localized string similar to The command cannot remove the job with the job ID {0} and the name {1} because the job is not finished. To remove the job, first stop the job, or use the Force parameter.. + + + + + Looks up a localized string similar to The command cannot find the job because the job name {0} was not found. Verify the value of the Name parameter, and then try the command again.. + + + + + Looks up a localized string similar to The command cannot remove the job with the job ID {0} because the job is not finished. To remove the job, first stop the job, or use the Force parameter.. + + + + + Looks up a localized string similar to The command cannot find a job with the job ID {0}. Verify the value of the Id parameter and then try the command again.. + + + + + Looks up a localized string similar to The mandatory value {0} is not in the correct format for registry key {1}. The expected format is 'string'.. + + + + + Looks up a localized string similar to The mandatory value {0} is not specified for the {1} registry key.. + + + + + Looks up a localized string similar to Remoting data is missing CallId property.. + + + + + Looks up a localized string similar to Remoting data is missing RemotingDataType property.. + + + + + Looks up a localized string similar to Remoting data is missing the destination property.. + + + + + Looks up a localized string similar to The IsEndFragment flag is not set for the last fragment. This can happen if the fragments are not properly constructed by the remote computer, or if the data was corrupted or changed.. + + + + + Looks up a localized string similar to The IsStartFragment flag for the first fragment is not set.. + + + + + Looks up a localized string similar to Remoting data is missing MethodName property.. + + + + + Looks up a localized string similar to Remoting data is missing {0} property.. + + + + + Looks up a localized string similar to Remoting data is missing Session InstanceId property.. + + + + + Looks up a localized string similar to Remoting data is missing target interface property.. + + + + + Looks up a localized string similar to Remote host method was invoked without specifying a target class.. + + + + + Looks up a localized string similar to Only administrators can override the Thread Options remotely.. + + + + + Looks up a localized string similar to The Named Pipe server listener used for process attach is already running.. + + + + + Looks up a localized string similar to Unable to start named pipe server while in server mode.. + + + + + Looks up a localized string similar to "The named pipe target process has ended.". + + + + + Looks up a localized string similar to Native API call to ReadFile failed. Error code is {0}.. + + + + + Looks up a localized string similar to Native API call to WriteFile failed. Error code is {0}.. + + + + + Looks up a localized string similar to Cannot delete temporary file {0}. Reason for failure: {1}.. + + + + + Looks up a localized string similar to The new shell was successfully registered, but Windows PowerShell cannot delete the temporary file {0}. Reason for failure: {1}.. + + + + + Looks up a localized string similar to Cannot write the shell configuration data into the temporary file {0}. Reason for failure: {1}.. + + + + + Looks up a localized string similar to Running command "{0}" to create a new session configuration.. + + + + + Looks up a localized string similar to Name: {0} SDDL: {1}. This lets selected users remotely run Windows PowerShell commands on this computer.. + + + + + Looks up a localized string similar to Invoking a nested pipeline requires a valid runspace.. + + + + + Looks up a localized string similar to Creation of nested pipelines is not supported.. + + + + + Looks up a localized string similar to The Microsoft .NET Framework 2.0, which is required for Windows PowerShell 2.0, is not installed. Install the .NET Framework 2.0 and retry.. + + + + + Looks up a localized string similar to The job could not be created because the JobInvocationInfo does not contain a JobDefinition. Start the JobInvocationInfo with a JobDefinition.. + + + + + Looks up a localized string similar to A {0} cannot be specified when {1} is specified.. + + + + + Looks up a localized string similar to Expected "{0}" and "{1}" attributes in the "{2}" element.. + + + + + Looks up a localized string similar to An EndpointConfiguration with Id {0} does not exist on the remote server. Contact your Windows PowerShell administrator, or the owner or creator of the endpoint configuration.. + + + + + Looks up a localized string similar to A running command could not be found for this PSSession.. + + + + + Looks up a localized string similar to An error occurred while decoding data received from the remote computer. At least {0} bytes of data are required to decode a deserialized object that is received from a remote computer. This can happen if the fragments are not properly constructed by the remote computer, or if the data was corrupted or changed.. + + + + + Looks up a localized string similar to ObjectId cannot be less than or equal to 0. This can happen if the fragments are not properly constructed by the remote computer, or the data has been changed by unauthorized users.. + + + + + Looks up a localized string similar to Unexpected ObjectId received. This can happen if the fragments are not properly constructed by the remote computer, or the data might have been corrupted or changed.. + + + + + Looks up a localized string similar to Remoting data is too large to be reassembled from the fragments. This can happen if the length of the data in a fragment is greater than Int32.Max. It can also occur if the data was changed by unauthorized users.. + + + + + Looks up a localized string similar to Out of process memory.. + + + + + Looks up a localized string similar to The remote pipeline failed.. + + + + + Looks up a localized string similar to The remote pipeline failed for the following reason: {0}. + + + + + Looks up a localized string similar to Pipeline ID "{0}" does not match the InstanceId of the pipeline that is currently running, "{1}".. + + + + + Looks up a localized string similar to Pipeline Id "{0}" was not found on the server.. + + + + + Looks up a localized string similar to The remote pipeline has been stopped.. + + + + + Looks up a localized string similar to The port number {0} is not within the range of valid values. The range of valid values is between 1 and 65535.. + + + + + Looks up a localized string similar to The Windows PowerShell server session is not in a valid state for running nested commands. No nested commands can be run in this session.. + + + + + Looks up a localized string similar to Windows PowerShell {0} is not installed. Install Windows PowerShell {0}, and then try again.. + + + + + Looks up a localized string similar to {0} cannot be specified as a proxy authentication mechanism. Only {1},{2} or {3} are supported for proxy authentication.. + + + + + Looks up a localized string similar to Proxy credentials cannot be specified when using the following proxy access type: {0}. Either specify a different access type, or do not specify proxy credentials.. + + + + + Looks up a localized string similar to Default session options for new remote sessions. + + + + + Looks up a localized string similar to Reason in a deserialized Job object is not valid.. + + + + + Looks up a localized string similar to Contains information about the remote user starting the remote session. This variable is available only from a remote session.. + + + + + Looks up a localized string similar to AppName where the remote connection will be established. + + + + + Looks up a localized string similar to The specified configuration file '{0}' was not loaded because no valid configuration file was found.. + + + + + Looks up a localized string similar to Name of the session configuration which will be loaded on the remote computer. + + + + + Looks up a localized string similar to The value {0} is not valid for the {1} parameter. The available values are 2.0, 3.0, 4.0, 5.0, 5.1.. + + + + + Looks up a localized string similar to Session must be open.. + + + + + Looks up a localized string similar to The remote session query failed for {0} with the following error message: {1}. + + + + + Looks up a localized string similar to Computer {0} has been successfully disconnected.. + + + + + Looks up a localized string similar to Network connectivity to {0} has been lost and the reconnection attempt failed. Please repair the network connection and reconnect using Connect-PSSession or Receive-PSSession.. + + + + + Looks up a localized string similar to The reconnection attempt to {0} failed. Attempting to disconnect the session.... + + + + + Looks up a localized string similar to Attempting to reconnect to {0} .... + + + + + Looks up a localized string similar to Session {0} with instance ID {1} on computer {2} has been disconnected because the script running on the session has stopped at a breakpoint. Use the Enter-PSSession cmdlet on this session to connect back to the session and begin interactive debugging.. + + + + + Looks up a localized string similar to Job {0} has been created for reconnection.. + + + + + Looks up a localized string similar to Session {0} with instance ID {1} on computer {2} has been successfully disconnected.. + + + + + Looks up a localized string similar to Session {0} with instance ID {1} has been created for reconnection.. + + + + + Looks up a localized string similar to Network connectivity to {0} has been lost and the attempt to reconnect has failed. Please repair the network connection and reconnect using Connect-PSSession or Receive-PSSession.. + + + + + Looks up a localized string similar to The network connection to {0} has been interrupted. Attempting to reconnect for up to {1} minutes.... + + + + + Looks up a localized string similar to Network connection interrupted. + + + + + Looks up a localized string similar to Attempting to reconnect to {0} .... + + + + + Looks up a localized string similar to The network connection to {0} has been restored.. + + + + + Looks up a localized string similar to Running command "{0}" to remove a session configuration.. + + + + + Looks up a localized string similar to The total data received from the remote server exceeded the allowed maximum. The allowed maximum is {0}.. + + + + + Looks up a localized string similar to The total data received from the remote client exceeded the allowed maximum. The allowed maximum is {0}.. + + + + + Looks up a localized string similar to Received data has a stream ID index of "{0}". Only a Standard Output stream ID index of "0" is supported.. + + + + + Looks up a localized string similar to The current deserialized object size of the data received from the remote server exceeded the allowed maximum object size. The current deserialized object size is {0}. The allowed maximum object size is {1}.. + + + + + Looks up a localized string similar to The current deserialized object size of the data received from the remote client computer exceeded the allowed maximum object size. The current deserialized object size is {0}. The allowed maximum object size is {1}.. + + + + + Looks up a localized string similar to Received remoting data with unsupported action: {0}.. + + + + + Looks up a localized string similar to Received remoting data with unsupported data type: {0}.. + + + + + Looks up a localized string similar to Received unsupported remote host call: {0}.. + + + + + Looks up a localized string similar to Received unsupported RemotingTargetInterface type: {0}. + + + + + Looks up a localized string similar to Processing data from remote server {0} failed with the following error message: {1}. + + + + + Looks up a localized string similar to Receiving data from remote server {0} failed.. + + + + + Looks up a localized string similar to The remote session command is currently stopped in the debugger. Use the Enter-PSSession cmdlet to connect interactively to the remote session and automatically enter into the console debugger.. + + + + + Looks up a localized string similar to Reconnecting to a command on the remote server failed with the following error message : {0}. + + + + + Looks up a localized string similar to Reconnecting to the remote server {0} failed with the following error message : {1}. + + + + + Looks up a localized string similar to Reconnecting to the remote server failed.. + + + + + Looks up a localized string similar to The destination "{0}" requested the connection to be redirected to "{1}". However "{1}" is not a well formatted URI.. + + + + + Looks up a localized string similar to Relative URIs are not supported in the creation of remote sessions.. + + + + + Looks up a localized string similar to The remote session to which you are connected does not support remote debugging. You must connect to a remote computer that is running Windows PowerShell {0} or greater.. + + + + + Looks up a localized string similar to Remote host call to "{0}" failed.. + + + + + Looks up a localized string similar to Remote host method data decoding is not supported for type {0}.. + + + + + Looks up a localized string similar to Remote host method data encoding is not supported for type {0}.. + + + + + Looks up a localized string similar to A failure occurred while decoding data from the remote host. There was an error in the network data.. + + + + + Looks up a localized string similar to You are currently in a Windows PowerShell PSSession and cannot use the Enter-PSSession cmdlet to enter another PSSession.. + + + + + Looks up a localized string similar to A script or application on the remote computer {0} is attempting to read the buffer contents on the Windows PowerShell host. For security reasons, this is not allowed; the call has been suppressed.. + + + + + Looks up a localized string similar to Remote host method {0} is not implemented.. + + + + + Looks up a localized string similar to No client computer was specified for the remote runspace that is running a client-side method.. + + + + + Looks up a localized string similar to Windows PowerShell Credential Request: {0}. + + + + + Looks up a localized string similar to Warning: A script or application on the remote computer {0} is requesting your credentials. Enter your credentials only if you trust the remote computer and the application or script that is requesting them. + + {1}. + + + + + Looks up a localized string similar to A script or application on the remote computer {0} is sending a prompt request. When you are prompted, enter sensitive information, such as credentials or passwords, only if you trust the remote computer and the application or script that is requesting the data.. + + + + + Looks up a localized string similar to A script or application on the remote computer {0} is asking to read a line securely. Enter sensitive information, such as your credentials, only if you trust the remote computer and the application or script that is requesting it.. + + + + + Looks up a localized string similar to Remote Session closed for Uri {0}.. + + + + + Looks up a localized string similar to Enter-PSSession failed because the remote session does not provide required commands.. + + + + + Looks up a localized string similar to Multiple matches found for name {0}.. + + + + + Looks up a localized string similar to Multiple matches found for session ID {0}.. + + + + + Looks up a localized string similar to Multiple matches found for session ID {0}.. + + + + + Looks up a localized string similar to Specified RemoteRunspaceInfo objects have duplicates.. + + + + + Looks up a localized string similar to Specified RemoteRunspaceInfo objects have exceeded the maximum allowable limit.. + + + + + Looks up a localized string similar to Remote session is not available for ComputerName {0}.. + + + + + Looks up a localized string similar to The remote session with the name {0} is not available.. + + + + + Looks up a localized string similar to Remote session is not available for {0}.. + + + + + Looks up a localized string similar to The remote session with the session ID {0} is not available.. + + + + + Looks up a localized string similar to Opening the remote session failed.. + + + + + Looks up a localized string similar to Opening the remote session failed with an unexpected state. State {0}.. + + + + + Looks up a localized string similar to Failed to create an instance of RemoteSessionHyperVSocketServer.. + + + + + Looks up a localized string similar to Remote transport error: {0}. + + + + + Looks up a localized string similar to Received packet not destined for logged-on user: user = {0}, packet destination = {1}.. + + + + + Looks up a localized string similar to Other Possible Cause: + -The domain or computer name was not included with the specified credential, for example: DOMAIN\UserName or COMPUTER\UserName.. + + + + + Looks up a localized string similar to Remote Command: {0}, associated with a job that has an ID of "{1}".. + + + + + Looks up a localized string similar to Remote session {0} could not be connected and could not be removed from the server. The client remote session object will be removed from the server, but the state of the remote session on the server is unknown.. + + + + + Looks up a localized string similar to RequiredGroups property hashtable must contain only a single key.. + + + + + Looks up a localized string similar to Malformed ACE {0}. Regular ACEs must have exactly 6 sections.. + + + + + Looks up a localized string similar to The RequiredGroups property is not in a name/value pair hashtable format. This must be a hashtable of the form (using PowerShell syntax): RequiredGroups = @{ Or = 'Administrators' }.. + + + + + Looks up a localized string similar to Prompt response has a prompt id "{0}" that cannot be found.. + + + + + Looks up a localized string similar to This operation might restart the WinRM service. Do you want to continue?. + + + + + Looks up a localized string similar to The WinRM service must be restarted before a UI can be displayed for the SecurityDescriptor selection. Restart the WinRM service, and then run the following command: "{0}". + + + + + Looks up a localized string similar to "Restart-Service". + + + + + Looks up a localized string similar to Restarting WinRM service. + + + + + Looks up a localized string similar to Name: {0}. + + + + + Looks up a localized string similar to One or more jobs could not be resumed because the state was not valid for the operation.. + + + + + Looks up a localized string similar to When RunAs is enabled in a Windows PowerShell session configuration, the Windows security model cannot enforce a security boundary between different user sessions that are created by using this endpoint. Verify that the Windows PowerShell runspace configuration is restricted to only the necessary set of cmdlets and capabilities.. + + + + + Looks up a localized string similar to Starting a command on the remote server failed with the following error message : {0}. + + + + + Looks up a localized string similar to Starting a command on the remote server failed.. + + + + + Looks up a localized string similar to The session already exists. Trying to create the session again with the same InstanceId {0} is not allowed.. + + + + + Looks up a localized string similar to Cannot connect PSSession "{0}", either because it is not in the Disconnected state, or it is not available for connection.. + + + + + Looks up a localized string similar to Session connect is not supported for PSSession "{0}" on target "{1}" because the target computer type is "{2}".. + + + + + Looks up a localized string similar to Cannot disconnect PSSession "{0}" because it is not in the Opened state.. + + + + + Looks up a localized string similar to Session disconnect is not supported for PSSession "{0}" on target "{1}" because the target computer type is "{2}".. + + + + + Looks up a localized string similar to The specified remote session with a client InstanceId of "{0}" cannot be found.. + + + + + Looks up a localized string similar to Receive-PSSession does not support PSSession "{0}" on target "{1}" because the target computer type is "{2}".. + + + + + Looks up a localized string similar to The connect operation failed for session {0}. The Runspace state is {1} instead of Opened.. + + + + + Looks up a localized string similar to The connect operation failed for session {0} with the following error message: {1}. + + + + + Looks up a localized string similar to The Disconnect-PSSession operation failed for runspace Id = {0}.. + + + + + Looks up a localized string similar to Disconnect-PSSession operation failed for runspace Id = {0} for the following reason: {1}. + + + + + Looks up a localized string similar to The specified client session InstanceId "{0}" does not match the existing session's InstanceId "{1}".. + + + + + Looks up a localized string similar to The Session parameter can be used only with PSRemotingJob objects.. + + + + + Looks up a localized string similar to The Disconnected PSSession query failed for computer "{0}".. + + + + + Looks up a localized string similar to Running command "{0}" to update the session configuration properties.. + + + + + Looks up a localized string similar to Name: {0} SDDL: {1}. + + + + + Looks up a localized string similar to Sending data to remote server {0} failed with the following error message : {1}. + + + + + Looks up a localized string similar to Sending data to remote server {0} failed.. + + + + + Looks up a localized string similar to The server that is running Windows PowerShell cannot process the connect operation because the following information is not found or not valid: Client Capability information and Connect RunspacePool information.. + + + + + Looks up a localized string similar to The server that is running Windows PowerShell cannot process the connect operation because the server runspace pool properties did not match the client computer specified properties.. + + + + + Looks up a localized string similar to The server that is running Windows PowerShell does not support connect operations on the {0} {1} that is negotiated by the client computer. Make sure the client computer is compatible with the build {2} and the protocol version {3} of Windows PowerShell.. + + + + + Looks up a localized string similar to The server that is running Windows PowerShell cannot process the connect operation because the server has either not been started, or it is shutting down.. + + + + + Looks up a localized string similar to Cannot enter Runspace because a Runspace is already pushed in this session.. + + + + + Looks up a localized string similar to Cannot enter Runspace because there is no server remote debugger available.. + + + + + Looks up a localized string similar to Cannot enter Runspace because it is not a remote Runspace.. + + + + + Looks up a localized string similar to The client did not respond with a public key within the specified time-out period.. + + + + + Looks up a localized string similar to The server that is running Windows PowerShell does not support the {0} {1} negotiated by the client computer. Verify that the client computer is compatible with the build {2} and the protocol version {3} of Windows PowerShell.. + + + + + Looks up a localized string similar to The server negotiation timer has expired. The negotiation time-out interval is {0} milliseconds.. + + + + + Looks up a localized string similar to {0}. Negotiation with the client failed. Make sure the client is compatible with the build {1} and the protocol version {2} of Windows PowerShell.. + + + + + Looks up a localized string similar to The server process has exited.. + + + + + Looks up a localized string similar to The destination server has sent a request to close the session.. + + + + + Looks up a localized string similar to The remote session was unable to invoke command {0} with error: {1}.. + + + + + Looks up a localized string similar to Could not get the session capabilities for the session configuration '{0}': this configuration was not registered with a session configuration file (.pssc), such as one created by the New-PSSessionConfigurationFile cmdlet.. + + + + + Looks up a localized string similar to A failure occurred while attempting to connect the PSSession.. + + + + + Looks up a localized string similar to The command cannot find a PSSession with an InstanceId value of "{0}".. + + + + + Looks up a localized string similar to The command cannot find a PSSession that has the name "{0}".. + + + + + Looks up a localized string similar to The SessionName parameter can only be used with the Disconnected switch parameter.. + + + + + Looks up a localized string similar to The PSSession is in a disconnected state and is not available for connection.. + + + + + Looks up a localized string similar to Enabled: False. This configures the WS-Management service to deny the connection request.. + + + + + Looks up a localized string similar to Enabled: True. This configures the WS-Management service to accept the connection request.. + + + + + Looks up a localized string similar to PowerShell Direct to a shielded virtual machine is not allowed.. + + + + + Looks up a localized string similar to "{0}" and "{1}" parameters cannot be specified together. Specify either "{0}" or "{1}" parameter.. + + + + + Looks up a localized string similar to Cannot find a scheduled job with name {0}.. + + + + + Looks up a localized string similar to Cannot find a scheduled job with type {0} and name {1}.. + + + + + Looks up a localized string similar to Cannot retrieve the job definition '{0}' because path '{1}' refers to a '{2}' provider path. Change the path parameter to a file system path.. + + + + + Looks up a localized string similar to Cannot retrieve the job definition '{0}' because path '{1}' resolves to multiple file paths. Change the path parameter so that it is a single path.. + + + + + Looks up a localized string similar to More than one job definition was found with name {0}. Try including the -DefinitionType parameter to Start-Job in order to narrow the search for the job definition to a single job source adapter.. + + + + + Looks up a localized string similar to "{0}" must specify a Windows PowerShell script file that ends with extension ".ps1".. + + + + + Looks up a localized string similar to Running startup script threw an error: {0}.. + + + + + Looks up a localized string similar to The Standard Input handle cannot be set to the 'no wait' state. The system error code is {0}.. + + + + + Looks up a localized string similar to The Standard Input handle is not open.. + + + + + Looks up a localized string similar to Reconnection attempt canceled. Please repair the network connection and reconnect using Connect-PSSession or Receive-PSSession.. + + + + + Looks up a localized string similar to Job "{0}" could not be connected to the server and so could not be stopped.. + + + + + Looks up a localized string similar to Remote Command: {0}, associated with the job that has an ID of "{1}".. + + + + + Looks up a localized string similar to One or more jobs could not be suspended because the state was not valid for the operation.. + + + + + Looks up a localized string similar to The ThrottlingJob.AddChildJob method cannot be called after a call to the ThrottlingJob.EndOfChildJobs method.. + + + + + Looks up a localized string similar to The ThrottlingJob.AddChildJob method accepts only child jobs in the NotStarted state.. + + + + + Looks up a localized string similar to Memory usage of a cmdlet has exceeded a warning level. To avoid this situation, try one of the following: 1) Lower the rate at which CIM operations produce data (for example, by passing a low value to the ThrottleLimit parameter), 2) Increase the rate at which data is consumed by downstream cmdlets, or 3) Use the Invoke-Command cmdlet to run the whole pipeline on the server. The cmdlet that exceeded a warning level of memory usage was started by the following command line: {0}. + + + + + Looks up a localized string similar to {0}/{1} completed. + + + + + Looks up a localized string similar to {0} For more information, see the about_Remote_Troubleshooting Help topic.. + + + + + Looks up a localized string similar to Both "{0}" and "{1}" must be specified in the "{2}" section.. + + + + + Looks up a localized string similar to Unable to load the assembly "{0}" specified in the "{1}" section.. + + + + + Looks up a localized string similar to Unable to load the type "{0}" specified in the "{1}" section.. + + + + + Looks up a localized string similar to Unknown key in Required Groups configuration. Required Groups hashtable can only contain 'And' and 'Or' hash keys for logical membership groupings.. + + + + + Looks up a localized string similar to Unknown value in Required Groups configuration. Required Groups hashtable can only contain values that are either group names or another logical hashtable.. + + + + + Looks up a localized string similar to Remote host method was invoked on an unknown target class: {0}. + + + + + Looks up a localized string similar to The Wait handle type "{0}" is not supported.. + + + + + Looks up a localized string similar to {0}Redirect location reported: {1}.. + + + + + Looks up a localized string similar to {0} To automatically connect to the redirected URI, verify the "{1}" property of the session preference variable "{2}", and use the "{3}" parameter on the cmdlet.. + + + + + Looks up a localized string similar to Your connection has been redirected to the following URI: "{0}". + + + + + Looks up a localized string similar to Specified Uri {0} is not valid.. + + + + + Looks up a localized string similar to Cannot find the file system provider.. + + + + + Looks up a localized string similar to Processing the User drive threw an error {0}.. + + + + + Looks up a localized string similar to The SharedHost attribute cannot be set to false on a workflow session type configuration.. + + + + + Looks up a localized string similar to A failure occurred while attempting to connect to the target virtual machine.. + + + + + Looks up a localized string similar to Wildcard characters are not supported for the FilePath parameter. Specify a path without wildcard characters.. + + + + + Looks up a localized string similar to Windows PowerShell remoting is not supported in the Windows Preinstallation Environment (WinPE).. + + + + + Looks up a localized string similar to You are running in a remote session and have selected the Force option which means the WinRM service may restart.If the WinRM service restarts then this remote session will be terminated and you will need to create a new session to continue. + + + + + Looks up a localized string similar to Changes made by {0} cannot take effect until the WinRM service is restarted.. + + + + + Looks up a localized string similar to {0} may need to restart the WinRM service if a configuration using this name has recently been unregistered, certain system data structures may still be cached. In that case, a restart of WinRM may be required. + All WinRM sessions connected to Windows PowerShell session configurations, such as Microsoft.PowerShell and session configurations that are created with the Register-PSSessionConfiguration cmdlet, are disconnected.. + + + + + Looks up a localized string similar to The WriteEvents parameter cannot be used without the Wait parameter.. + + + + + Looks up a localized string similar to The -WriteJobInResults parameter cannot be used without the -Wait parameter. + + + + + Looks up a localized string similar to A {0} value must be specified for session option {1}.. + + + + + Looks up a localized string similar to WSMan Initialization failed with error code: {0}.. + + + + + Looks up a localized string similar to The maximum number of WS-Man URI redirections to allow while connecting to a remote computer. + + + + + Looks up a localized string similar to PowerShell plugin cannot process the Connect operation as required negotiation information is either missing or not complete.. + + + + + Looks up a localized string similar to PowerShell plugin failed to process to connect operation.. + + + + + Looks up a localized string similar to The supplied plugin context is not valid.. + + + + + Looks up a localized string similar to Powershell plugin encounterd a fatal error while processing {0} arguments.. + + + + + Looks up a localized string similar to The supplied command context is not valid.. + + + + + Looks up a localized string similar to The supplied input data is not valid. Only input data of type {0} is supported.. + + + + + Looks up a localized string similar to The supplied input stream is not valid. Only {0} is supported as input stream.. + + + + + Looks up a localized string similar to The supplied output stream set is not valid. Only {0} is supported as output stream.. + + + + + Looks up a localized string similar to The supplied WSMAN_SENDER_DETAILS is not valid. Cannot process null WSMAN_SENDER_DETAILS.. + + + + + Looks up a localized string similar to The supplied shell context is not valid.. + + + + + Looks up a localized string similar to {0}. + + + + + Looks up a localized string similar to NULL value is not allowed for {0} with the plugin method {1}.. + + + + + Looks up a localized string similar to NULL value is not allowed for input stream and output stream sets. {0} and {1} are the supported input and output streams.. + + + + + Looks up a localized string similar to NULL value is not allowed for {0} with the plugin method {1}.. + + + + + Looks up a localized string similar to NULL value is not allowed for {0} with the plugin method {1}.. + + + + + Looks up a localized string similar to PowerShell plugin operation is shutting down. This may happen if the hosting service or application is shutting down.. + + + + + Looks up a localized string similar to PowerShell plugin does not understand the option {0}. Make sure the client is compatible with the build {1} and the protocol version {2} of PowerShell.. + + + + + Looks up a localized string similar to An option with name {0} is expected from the client. Make sure the client is compatible with the build {1} and the protocl version {2} of PowerShell.. + + + + + Looks up a localized string similar to <PSProtocolVersionError ServerProtocolVersion="{0}" ServerBuildVersion="{1}">Powershell plugin does not support the protocol version {2} requested by client.</PSProtocolVersionError>. + + + + + Looks up a localized string similar to Powershell plugin encounterd a fatal error while reporting context to WSMan service.. + + + + + Looks up a localized string similar to Unable to create managed server session.. + + + + + Looks up a localized string similar to Powershell plugin encounterd a fatal error registering a wait handle for shutdown notification.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Use "list" to start from the current line, "list <m>" . + + + + + Looks up a localized string similar to to start from line <m>, and "list <m> <n>" to list <n> . + + + + + Looks up a localized string similar to lines starting from line <m>. + + + + + Looks up a localized string similar to The line count must be a positive integer.. + + + + + Looks up a localized string similar to The starting line must be a positive integer no greater than {0}. + + + + + Looks up a localized string similar to The debugger cannot be enabled for step mode because the debugger is turned off with debug mode set to None.. + + + + + Looks up a localized string similar to The debugger cannot process commands unless it is in the Stopped state.. + + + + + Looks up a localized string similar to SetDebugAction is not implemented for the local script debugger.. + + + + + Looks up a localized string similar to The debugger cannot set a resume action because the debugger in the remote session is not in a Stopped state.. + + + + + Looks up a localized string similar to The job cannot be debugged because the debugger is currently busy.. + + + + + Looks up a localized string similar to Command breakpoint on '{0}'. + + + + + Looks up a localized string similar to Command breakpoint on '{0}:{1}'. + + + + + Looks up a localized string similar to {0}, {1,-16} Continue operation. + + + + + Looks up a localized string similar to {0}, {1,-16} Continue operation and detach the debugger.. + + + + + Looks up a localized string similar to <enter> Repeat last command if it was {0}, {1} or {2}. + + + + + Looks up a localized string similar to {0}, Get-PSCallStack Display call stack. + + + + + Looks up a localized string similar to {0}, {1,-16} displays this help message.. + + + + + Looks up a localized string similar to The debugger detach command is not applicable. The detach command only applies when debugging jobs and runspaces with the Debug-Job or Debug-Runspace cmdlets.. + + + + + Looks up a localized string similar to Line breakpoint on '{0}:{1}'. + + + + + Looks up a localized string similar to {0}, {1,-16} List source code for the current script. . + + + + + Looks up a localized string similar to {0}: line {1}. + + + + + Looks up a localized string similar to Process. + + + + + Looks up a localized string similar to The provided job and all child jobs were examined but no jobs were found that could be debugged. In order to debug a job or child job the job must support debugging and also be in a running state.. + + + + + Looks up a localized string similar to <No file>. + + + + + Looks up a localized string similar to There is no source code available.. + + + + + Looks up a localized string similar to For instructions about how to customize your debugger prompt, type "help about_prompt".. + + + + + Looks up a localized string similar to The debugger is already overridden.. + + + + + Looks up a localized string similar to Cannot push a debugger object onto itself.. + + + + + Looks up a localized string similar to The Runspace cannot be debugged because the host debugger is currently busy.. + + + + + Looks up a localized string similar to Cannot debug Runspace. The Runspace debugger is currently turned off (DebugMode is 'None').. + + + + + Looks up a localized string similar to Cannot debug a Runspace that is not in the Opened state. This Runspace state is {0}.. + + + + + Looks up a localized string similar to Cannot debug Runspace. The Runspace {0} has no associated debugger.. + + + + + Looks up a localized string similar to + The current session does not support debugging; operation will continue. + + . + + + + + Looks up a localized string similar to at {0}, {1}: line {2}. + + + + + Looks up a localized string similar to Line breakpoint on '{0}:{1}, {2}'. + + + + + Looks up a localized string similar to {0}, {1,-16} Single step (step into functions, scripts, etc.). + + + + + Looks up a localized string similar to {0}, {1,-16} Step out of the current function, script, etc.. + + + + + Looks up a localized string similar to {0}, {1,-16} Step to next statement (step over functions, scripts, etc.). + + + + + Looks up a localized string similar to {0}, {1,-16} Stop operation and exit the debugger. + + + + + Looks up a localized string similar to Variable breakpoint on '${0}' ({1} access). + + + + + Looks up a localized string similar to Variable breakpoint on '{0}:${1}' ({2} access). + + + + + Looks up a localized string similar to Breakpoint {0} will not be hit. + + + + + Looks up a localized string similar to Workflow debugging is available, but is not supported by the current host. Use the Windows PowerShell console or Windows PowerShell ISE to debug workflows.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Aliases to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no aliases to export.. + + + + + Looks up a localized string similar to Author of this module. + + + + + Looks up a localized string similar to Cannot define the workflow. The language mode for this session is incompatible with the system-wide language mode.. + + + + + Looks up a localized string similar to Cannot verify the Microsoft .NET Framework version {0} because it is not included in the list of permitted versions.. + + + + + Looks up a localized string similar to Cannot export module members from a module that has a different language mode from the running session.. + + + + + Looks up a localized string similar to This module uses the dot-source operator while exporting functions using wildcard characters, and this is disallowed when the system is under application verification enforcement.. + + + + + Looks up a localized string similar to The Export-ModuleMember cmdlet can only be called from inside a module.. + + + + + Looks up a localized string similar to No custom object was returned for module '{0}' because the -AsCustomObject parameter can only be used with script modules.. + + + + + Looks up a localized string similar to Minimum version of the common language runtime (CLR) required by this module. {0}. + + + + + Looks up a localized string similar to The value of the {0} key in {1} is {2} and the module has nested modules. When a CDXML file is the root module, the Import-Module command fails because the commands in nested modules cannot be exported. Move the CDXML file to the NestedModules key and try the command again.. + + + + + Looks up a localized string similar to Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export.. + + + + + Looks up a localized string similar to Company or vendor of this module. + + + + + Looks up a localized string similar to Supported PSEditions. + + + + + Looks up a localized string similar to {0} (Path: '{1}'). + + + + + Looks up a localized string similar to Copyright statement for this module. + + + + + Looks up a localized string similar to The module '{0}' is a core module for Windows PowerShell. Add the Force parameter to your command to remove core modules.. + + + + + Looks up a localized string similar to Creating the "{0}" module manifest file.. + + + + + Looks up a localized string similar to Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix.. + + + + + Looks up a localized string similar to Unknown. + + + + + Looks up a localized string similar to (c) {0} {1}. All rights reserved.. + + + + + Looks up a localized string similar to Description of the functionality provided by this module. + + + + + Looks up a localized string similar to Searching for available modules. + + + + + Looks up a localized string similar to Minimum version of Microsoft .NET Framework required by this module. {0}. + + + + + Looks up a localized string similar to Dot-sourcing the script file '{0}'.. + + + + + Looks up a localized string similar to DSC resources to export from this module. + + + + + Looks up a localized string similar to The specified value '{0}' for CompatiblePSEditions contains duplicate PowerShell Edition names. Try again after removing the duplicate PowerShell Edition names.. + + + + + Looks up a localized string similar to Processing the module manifest file '{0}' did not result in a valid manifest object. Update the file to contain a valid Windows PowerShell module manifest. A valid manifest can be created using the New-ModuleManifest cmdlet.. + + + + + Looks up a localized string similar to End of {0} hashtable. + + + + + Looks up a localized string similar to The command cannot be exported as workflow '{0}'.. + + + + + Looks up a localized string similar to Exporting alias '{0}'.. + + + + + Looks up a localized string similar to Exporting cmdlet '{0}'.. + + + + + Looks up a localized string similar to Exporting command as workflow '{0}'.. + + + + + Looks up a localized string similar to Exporting function '{0}'.. + + + + + Looks up a localized string similar to Exporting variable '{0}'.. + + + + + Looks up a localized string similar to Exporting workflow '{0}'.. + + + + + Looks up a localized string similar to List of all files packaged with this module. + + + + + Looks up a localized string similar to The specified format data file '{0}' could not be processed because the file was not found. Verify that you have provided the correct path name for the format data file, and then try again.. + + + + + Looks up a localized string similar to Format files (.ps1xml) to be loaded when importing this module. + + + + + Looks up a localized string similar to Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export.. + + + + + Looks up a localized string similar to The 'Global' and 'Scope' parameters cannot be specified together. Remove one of these parameters, and then try running the command again.. + + + + + Looks up a localized string similar to ID used to uniquely identify this module. + + + + + Looks up a localized string similar to HelpInfo URI of this module. + + + + + Looks up a localized string similar to A URL to an icon representing this module.. + + + + + Looks up a localized string similar to Importing alias '{0}'.. + + + + + Looks up a localized string similar to Importing cmdlet '{0}'.. + + + + + Looks up a localized string similar to Importing function '{0}'.. + + + + + Looks up a localized string similar to Some imported command names contain one or more of the following restricted characters: # , ( ) {{ }} [ ] & - / \ $ ^ ; : " ' < > | ? @ ` * % + = ~. + + + + + Looks up a localized string similar to The command name '{0}' from the module '{1}' contains one or more of the following restricted characters: # , ( ) {{ }} [ ] & - / \ $ ^ ; : " ' < > | ? @ ` * % + = ~. + + + + + Looks up a localized string similar to The names of some imported commands from the module '{0}' include unapproved verbs that might make them less discoverable. To find the commands with unapproved verbs, run the Import-Module command again with the Verbose parameter. For a list of approved verbs, type Get-Verb.. + + + + + Looks up a localized string similar to The '{0}' command in the {1}' module was imported, but because its name does not include an approved verb, it might be difficult to find. For a list of approved verbs, type Get-Verb.. + + + + + Looks up a localized string similar to The '{0}' command in the {2}' module was imported, but because its name does not include an approved verb, it might be difficult to find. The suggested alternative verbs are "{1}".. + + + + + Looks up a localized string similar to Importing variable '{0}'.. + + + + + Looks up a localized string similar to Importing command as workflow '{0}'.. + + + + + Looks up a localized string similar to The alias '{0}' was not imported because there is a member with the same name in the current scope.. + + + + + Looks up a localized string similar to The cmdlet '{0}' was not imported because there is a member with the same name in the current scope.. + + + + + Looks up a localized string similar to The function '{0}' was not imported because there is a member with the same name in the current scope.. + + + + + Looks up a localized string similar to The variable '{0}' was not imported because there is a member with the same name in the current scope.. + + + + + Looks up a localized string similar to The command '{0}' was not imported as a workflow because there is a member with the same name in the current scope.. + + + + + Looks up a localized string similar to Importing *.ps1 files as modules is not allowed in ConstrainedLanguage mode.. + + + + + Looks up a localized string similar to The item {0} that resolves to {1} is not located in the same directory as the module manifest or any of its subdirectories. Windows PowerShell looks for items referenced in the manifest only in paths relative to the manifest location. To fix this problem, move the item, and use a relative path to identify its location.. + + + + + Looks up a localized string similar to The module '{0}' requires the following version of the .NET Framework: {1}. The required version is not installed.. + + + + + Looks up a localized string similar to The specified FileList entry '{0}' in the module manifest '{1}' is invalid. Try again after updating this entry with valid values.. + + + + + Looks up a localized string similar to The extension '{0}' is not a valid module extension. The supported module extensions are '.dll', '.ps1', '.psm1', '.psd1', '.cdxml' and '.xaml'. Correct the extension then try adding the file '{1}' again.. + + + + + Looks up a localized string similar to The specified ModuleList entry '{0}' in the module manifest '{1}' is invalid. Try again after updating this entry with valid values.. + + + + + Looks up a localized string similar to The module manifest '{0}' could not be processed because it is not a valid Windows PowerShell restricted language file. Remove the elements that are not permitted by the restricted language: + {1}. + + + + + Looks up a localized string similar to The '{0}' module cannot be imported because its manifest contains one or more members that are not valid. The valid manifest members are ({1}). Remove the members that are not valid ({2}), then try to import the module again.. + + + + + Looks up a localized string similar to The module manifest path '{0}' is not valid. The value of the Path argument must resolve to a single file that has a '.psd1' extension. Change the value of the Path argument to point to a valid psd1 file, and then try again.. + + + + + Looks up a localized string similar to The ModuleVersion key in module manifest '{0}' specifies module version '{1}' which does not match its version folder name at '{2}'. Change the value of the ModuleVersion key to match the version folder name.. + + + + + Looks up a localized string similar to The hashtable describing a module contains one or more members that are not valid. The valid members are ({0}). Remove the members that are not valid ({1}), then try again.. + + + + + Looks up a localized string similar to The specified NestedModule entry '{0}' in the module manifest '{1}' is invalid. Try again after updating this entry with valid values.. + + + + + Looks up a localized string similar to This operation cannot be performed on a binary module. It can only be performed on a script module.. + + + + + Looks up a localized string similar to The specified value '{0}' is invalid, try again with a valid value.. + + + + + Looks up a localized string similar to The name of the current Windows PowerShell host is: '{0}'. The module '{1}' requires the following Windows PowerShell host: '{2}'.. + + + + + Looks up a localized string similar to The current Windows PowerShell host is: '{0}' (version {1}). The module '{2}' requires a minimum Windows PowerShell host version of '{3}' to run.. + + + + + Looks up a localized string similar to The module manifest '{0}' is specified with the CompatiblePSEditions key which is supported only on PowerShell version '5.1' or higher. Update the value of the PowerShellVersion key to '5.1' or higher, and try again.. + + + + + Looks up a localized string similar to The current processor architecture is: {0}. The module '{1}' requires the following architecture: {2}.. + + + + + Looks up a localized string similar to The processor architecture value of {0} is not supported. Run the New-ModuleManifest command again, specifying one of the following supported enumeration values for processor architecture: None, MSIL, X86, Amd64, Arm. + + + + + Looks up a localized string similar to The specified RequiredAssemblies entry '{0}' in the module manifest '{1}' is invalid. Try again after updating this entry with valid values.. + + + + + Looks up a localized string similar to The specified RequiredModules entry '{0}' in the module manifest '{1}' is invalid. Try again after updating this entry with valid values.. + + + + + Looks up a localized string similar to The workflow file name is not valid because it does not have the required .XAML file name extension. Run the New-ModuleManifest command again specifying a value for the WorkflowsToProcess parameter with this extension.. + + + + + Looks up a localized string similar to The workflow file name extension is not valid. The workflow file name {0} that is listed in the WorkflowsToProcess key of the module manifest does not have the required .XAML or .DLL file name extension. Edit the module manifest and correct the workflow file name. If you are using a .DLL file extension, then provide only one assembly name.. + + + + + Looks up a localized string similar to A URL to the license for this module.. + + + + + Looks up a localized string similar to Loading '{0}' from path '{1}'.. + + + + + Looks up a localized string similar to Loading module from path '{0}'.. + + + + + Looks up a localized string similar to Loading workflow {0}. + + + + + Looks up a localized string similar to Module manifest for module '{0}'. + + + + + Looks up a localized string similar to Generated by: {0}. + + + + + Looks up a localized string similar to Generated on: {0}. + + + + + Looks up a localized string similar to The module to process '{0}', listed in field '{1}' of module manifest '{2}' was not processed because no valid module was found in any module directory.. + + + + + Looks up a localized string similar to The module to process '{0}', listed in field '{1}' of module manifest '{2}' was not processed. {3}. + + + + + Looks up a localized string similar to The specified MaximumVersion '{0}' was incorrect. If you are using '*', MaximumVersion only supports one '*' and should always be placed at the end of MaximumVersion.. + + + + + Looks up a localized string similar to The specified module '{0}' with MaximumVersion '{1}' was not loaded because no valid module file was found in any module directory.. + + + + + Looks up a localized string similar to The MinimumVersion '{0}' should not be greater than MaximumVersion '{1}'.. + + + + + Looks up a localized string similar to The specified module '{0}' with MinimumVersion '{1}' and MaximumVersion '{2}' was not loaded because no valid module file was found in any module directory.. + + + + + Looks up a localized string similar to An error has occurred while loading script module {0} because it has a different language mode than the module manifest. The manifest language mode is {1} and the module language mode is {2}. Ensure all module files are signed or otherwise part of your application allow list configuration.. + + + + + Looks up a localized string similar to Some commands from module {0} cannot be imported over a CimSession. To get all the commands, verify that the remote server has Windows PowerShell remote management enabled, and then try adding the PSSession parameter to an Import-Module cmdlet.. + + + + + Looks up a localized string similar to The assembly '{0}' was not loaded because no assembly with that name was found. Verify the assembly name, and then try again.. + + + + + Looks up a localized string similar to Running the Get-Module cmdlet without ListAvailable parameter is not supported for module names that include a path. Name parameter has this element '{0}' which resolves to a path. Update the Name parameter to not have path elements, and then try again.. + + + + + Looks up a localized string similar to Because the {0} module is providing the PSDrive in the current Windows PowerShell session, no modules were removed. Change the current PSDrive provider, and then try removing modules again.. + + + + + Looks up a localized string similar to Unable to remove the module '{0}' because it is marked as 'constant.' A module cannot be removed if it is marked 'constant.'. + + + + + Looks up a localized string similar to Unable to remove the module '{0}' because it is read-only. Add the Force parameter to your command to remove read-only modules.. + + + + + Looks up a localized string similar to Unable to remove the module '{0}' because it is required by '{1}'. Add the Force parameter to your command to remove the module.. + + + + + Looks up a localized string similar to List of all modules packaged with this module. + + + + + Looks up a localized string similar to The '{0}' module was not imported because the '{0}' snap-in was already imported.. + + + + + Looks up a localized string similar to The module manifest cannot contain both the 'ModuleToProcess' and 'RootModule' members. Change the module manifest file to remove one of these members at '{0}', and then try again.. + + + + + Looks up a localized string similar to The version of the Common Language Runtime (CLR) on this computer is '{0}'. The module '{1}' requires a minimum CLR version of '{2}' to run. Verify that you are running the minimum required version of CLR, and then try again.. + + + + + Looks up a localized string similar to The version '{0}' of module '{1}' does not meet the required minimum version '{2}'. Verify that the version number is supported, and then try loading the module again.. + + + + + Looks up a localized string similar to The version of Windows PowerShell on this computer is '{0}'. The module '{1}' requires a minimum Windows PowerShell version of '{2}' to run. Verify that you have the minimum required version of Windows PowerShell installed, and then try again.. + + + + + Looks up a localized string similar to The member '{0}' in the module manifest is not valid: {1}. Verify that a valid value is specified for this field in the '{2}' file.. + + + + + Looks up a localized string similar to The '{0}' member is not valid in the module manifest file '{2}': {1}. + + + + + Looks up a localized string similar to The member 'ModuleVersion' is not present in the module manifest. This member must exist and be assigned a version number of the form 'n.n.n.n'. Add the missing member to the file '{0}'.. + + + + + Looks up a localized string similar to The module manifest member 'NestedModules' cannot be used if the 'ModuleToProcess' member is a binary module. Edit the module manifest file at '{0}', and then try again.. + + + + + Looks up a localized string similar to The specified module '{0}' was not loaded because no valid module file was found in any module directory.. + + + + + Looks up a localized string similar to The specified module '{0}' was not found. Update the Name parameter to point to a valid path, and then try again. . + + + + + Looks up a localized string similar to Cannot load the module '{0}' because the module nesting limit has been exceeded. Modules can only be nested to {1} levels. Evaluate and change the order in which you are loading modules to prevent exceeding the nesting limit, and then try running your script again.. + + + + + Looks up a localized string similar to Script module or binary module file associated with this manifest. + + + + + Looks up a localized string similar to The module manifest member 'ModuleToProcess' has been deprecated. Use the 'RootModule' member instead.. + + + + + Looks up a localized string similar to Version number of this module.. + + + + + Looks up a localized string similar to Version specified in ModuleVersion key is equal to version folder name.. + + + + + Looks up a localized string similar to The specified module '{0}' with version '{1}' was not loaded because no valid module file was found in any module directory.. + + + + + Looks up a localized string similar to Modules to import as nested modules of the module specified in RootModule/ModuleToProcess. + + + + + Looks up a localized string similar to No modules were removed. Verify that the specification of modules to remove is correct and those modules exist in the runspace.. + + + + + Looks up a localized string similar to Populating RepositorySourceLocation property for module {0}.. + + + + + Looks up a localized string similar to Name of the Windows PowerShell host required by this module. + + + + + Looks up a localized string similar to Minimum version of the Windows PowerShell host required by this module. + + + + + Looks up a localized string similar to Minimum version of the Windows PowerShell engine required by this module. + + + + + Looks up a localized string similar to This prerequisite is valid for the PowerShell Desktop edition only.. + + + + + Looks up a localized string similar to Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell.. + + + + + Looks up a localized string similar to The PrivateData parameter value must be a hash table to create the module manifest with the following parameter values Tags, ProjectUri, LicenseUri, IconUri or ReleaseNotes. Either remove the Tags, ProjectUri, LicenseUri, IconUri, or ReleaseNotes parameter values or wrap the contents of PrivateData in a hashtable.. + + + + + Looks up a localized string similar to The PrivateData should be defined as a hashtable, but this module manifest defines it as an object. Please consider wrapping the contents of PrivateData in a hashtable. This will enable you to add the Tags, ProjectUri, LicenseUri, IconUri, and ReleaseNotes properties to the module manifest at a later time.. + + + + + Looks up a localized string similar to Processor architecture (None, X86, Amd64) required by this module. + + + + + Looks up a localized string similar to A URL to the main website for this project.. + + + + + Looks up a localized string similar to PSData data to pass to the Publish-Module cmdlet. + + + + + Looks up a localized string similar to The module {0} cannot be imported over a CimSession. Try using the PSSession parameter of the Import-Module cmdlet.. + + + + + Looks up a localized string similar to ReleaseNotes of this module. + + + + + Looks up a localized string similar to Failed to generate proxies for remote module '{0}'. {{0}}. + + + + + Looks up a localized string similar to Failed to process the remote module {0}. {1}. + + + + + Looks up a localized string similar to Failed to receive module data from the remote CimSession. {0}. + + + + + Looks up a localized string similar to A CIM provider for module discovery was not found on the CIM server. {0}. + + + + + Looks up a localized string similar to Failure from remote command: {0}: {{0}}. + + + + + Looks up a localized string similar to Running the Get-Module cmdlet against a remote computer can only be done for module names that do not include a path. Name parameter has this element '{0}' which resolves to a path. Update the Name parameter to not have path elements, and then try again.. + + + + + Looks up a localized string similar to Running the Get-Module cmdlet against a remote computer can only list available modules. Add the ListAvailable parameter to your command, and then try again.. + + + + + Looks up a localized string similar to Removing the imported "{0}" alias.. + + + + + Looks up a localized string similar to Removing the imported "{0}" function.. + + + + + Looks up a localized string similar to Removing the imported "{0}" variable.. + + + + + Looks up a localized string similar to Assemblies that must be loaded prior to importing this module. + + + + + Looks up a localized string similar to The 'ModuleName' member does not exist in the hashtable that describes this module.. + + + + + Looks up a localized string similar to The 'ModuleVersion', 'MaximumVersion' and 'RequiredVersion' members do not exist in the hashtable that describes this module. One of these three members must exist, and be assigned a version number in the format 'n.n.n.n'.. + + + + + Looks up a localized string similar to The required module '{0}' was not loaded because no valid module file was found in any module directory.. + + + + + Looks up a localized string similar to The required module '{0}' with GUID '{1}' and version '{2}' was not loaded because no valid module file was found in any module directory.. + + + + + Looks up a localized string similar to The required module '{1}' is not loaded. Load the module or remove the module from 'RequiredModules' in the file '{0}'.. + + + + + Looks up a localized string similar to The required module '{1}' with GUID '{2}' is not loaded. Load the module or remove the module from 'RequiredModules' in the file '{0}'.. + + + + + Looks up a localized string similar to The required module '{1}' with MaximumVersion '{2}' is not loaded. Load the module or remove the module from 'RequiredModules' in the file '{0}'.. + + + + + Looks up a localized string similar to The required module '{1}' with MinimumVersion '{2}' and MaximumVersion '{3}' is not loaded. Load the module or remove the module from 'RequiredModules' in the file '{0}'.. + + + + + Looks up a localized string similar to The required module '{1}' with version '{2}' is not loaded. Load the module or remove the module from 'RequiredModules' in the file '{0}'.. + + + + + Looks up a localized string similar to Modules that must be imported into the global environment prior to importing this module. + + + + + Looks up a localized string similar to The required module '{0}' is not loaded. The module '{0}' has a requiredModule '{1}' in its module manifest '{2}' that points to a cyclic dependency.. + + + + + Looks up a localized string similar to Script module or binary module file associated with this manifest.. + + + + + Looks up a localized string similar to Analyzing {0}.. + + + + + Looks up a localized string similar to Preparing modules for first use.. + + + + + Looks up a localized string similar to The specified script file '{0}' could not be processed because the file was not found. Verify that you have provided the correct path name for the script, and then try again.. + + + + + Looks up a localized string similar to Script files (.ps1) that are run in the caller's environment prior to importing this module.. + + + + + Looks up a localized string similar to The file '{0}' is not allowed because it does not have the extension '.ps1'.. + + + + + Looks up a localized string similar to Searching UNC share {0}.. + + + + + Looks up a localized string similar to Skipping the Version folder {0} under Module {1} as it does not have a valid module manifest file.. + + + + + Looks up a localized string similar to Tags applied to this module. These help with module discovery in online galleries.. + + + + + Looks up a localized string similar to The specified type data file '{0}' could not be processed because the file was not found. Verify that you have provided the correct path name for the type data file, and then try again.. + + + + + Looks up a localized string similar to Type files (.ps1xml) to be loaded when importing this module. + + + + + Looks up a localized string similar to The '{0}' member, which was imported from module '{1}', cannot be removed for the following reason: {2}. + + + + + Looks up a localized string similar to Variables to export from this module. + + + + + Looks up a localized string similar to Wildcard characters are not allowed in members 'ModuleToProcess', 'RootModule', or 'NestedModule' in the module manifest '{0}'.. + + + + + Looks up a localized string similar to Wildcard characters are not allowed in the member 'RequiredAssemblies' in the module manifest '{0}'.. + + + + + Looks up a localized string similar to Cannot load the workflow module '{0}'. Workflow is not supported in PowerShell Core.. + + + + + Looks up a localized string similar to Commands to export from this module as workflows. + + + + + Looks up a localized string similar to Cannot load the workflow. Only signed in-box XAML-based workflows or script-based workflows are supported in the current language mode.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The {0} key is ambiguous; {1} and {2} conflict.. + + + + + Looks up a localized string similar to The {0} key type is not valid. The key must be a string.. + + + + + Looks up a localized string similar to The value of a key cannot be null.. + + + + + Looks up a localized string similar to The duplicated key "{0}" conflicts with "{1}".. + + + + + Looks up a localized string similar to Cannot have an empty formatting string for key "{0}".. + + + + + Looks up a localized string similar to The value "{0}" for key "{1}" is not valid; valid values are {2}.. + + + + + Looks up a localized string similar to The EnumerableExpansion value is not valid.. + + + + + Looks up a localized string similar to The {0} key is not valid.. + + + + + Looks up a localized string similar to The "{0}" key has a type, {1}, that is not valid; expected types are {2}.. + + + + + Looks up a localized string similar to The "{0}" key has a type, {1}, that is not valid; expected type is {2}.. + + + + + Looks up a localized string similar to A mandatory entry for {0} is missing.. + + + + + Looks up a localized string similar to The {0} key has no value.. + + + + + Looks up a localized string similar to An empty string value is not allowed.. + + + + + Looks up a localized string similar to The "{0}" key cannot have an empty string value.. + + + + + Looks up a localized string similar to The "{0}" key cannot have wildcard characters in value "{1}".. + + + + + Looks up a localized string similar to Wildcard characters are not allowed in "{0}".. + + + + + Looks up a localized string similar to The value of a parameter was null; one of the following types was expected: {0}.. + + + + + Looks up a localized string similar to The value "{0}" for key "{1}" should be greater than 0.. + + + + + Looks up a localized string similar to Cannot convert {0} to one of the following types {1}.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cmdlet parameters AutoSize and Column are mutually exclusive.. + + + + + Looks up a localized string similar to Cmdlet parameters View and Property are mutually exclusive.. + + + + + Looks up a localized string similar to Unknown class Id {0}.. + + + + + Looks up a localized string similar to Failed to create object with class Id {0}.. + + + + + Looks up a localized string similar to The object type is not recognized.. + + + + + Looks up a localized string similar to The type {0} for property {1} is not valid.. + + + + + Looks up a localized string similar to The value of the {0} data member cannot be null.. + + + + + Looks up a localized string similar to The {0} property is recursive.. + + + + + Looks up a localized string similar to Failed to interpret format string "{0}".. + + + + + Looks up a localized string similar to {0}: . + + + + + Looks up a localized string similar to The following object supports IEnumerable:. + + + + + Looks up a localized string similar to The IEnumerable contains the following {0} objects:. + + + + + Looks up a localized string similar to The IEnumerable contains no objects.. + + + + + Looks up a localized string similar to The IEnumerable contains the following object:. + + + + + Looks up a localized string similar to The view name {0} cannot be found. Specify one of the following {1} views and try again: {2}.. + + + + + Looks up a localized string similar to Failed to evaluate expression "{0}".. + + + + + Looks up a localized string similar to There are no existing {0} views for {1} objects.. + + + + + Looks up a localized string similar to Try using one of these other format cmdlets: . + + + + + Looks up a localized string similar to The view name {0} cannot be found.. + + + + + Looks up a localized string similar to The view name {0} cannot be found in the {1} formatting.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to <SPACE> next page; <CR> next line; Q quit. + + + + + Looks up a localized string similar to Output to File. + + + + + Looks up a localized string similar to Cannot open file "{0}".. + + + + + Looks up a localized string similar to The lineOutput type {0} was not expected; LineOutput expects type {1}.. + + + + + Looks up a localized string similar to The value of LineOutput should not be null.. + + + + + Looks up a localized string similar to The object of type "{0}" is not valid or not in the correct sequence. This is likely caused by a user-specified "{1}" command which is conflicting with the default formatting.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Cannot process the XML from the '{0}' stream of '{1}': {2}. + + + + + Looks up a localized string similar to ScriptBlock should only be specified as a value of the Command parameter.. + + + + + Looks up a localized string similar to A value that is not valid ({6}) was specified for the {7} parameter. Valid values are Text and Xml.. + + + + + Looks up a localized string similar to No value was specified for the Command parameter.. + + + + + Looks up a localized string similar to No value was specified for the InputFormat parameter. Valid values are Text and Xml.. + + + + + Looks up a localized string similar to No value was specified for the OutputFormat parameter. Valid values are text and XML.. + + + + + Looks up a localized string similar to No value was specified for the Args parameter.. + + + + + Looks up a localized string similar to The {6} parameter was already specified.. + + + + + Looks up a localized string similar to The {6} parameter requires a string value.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to The security identifier is not allowed to be the primary group of this object.. + + + + + Looks up a localized string similar to The specified handle is not valid.. + + + + + Looks up a localized string similar to The security identifier is not allowed to be the owner of this object.. + + + + + Looks up a localized string similar to Unable to perform a security operation on an object that has no associated security. This can happen when trying to get an ACL of an anonymous kernel object.. + + + + + Looks up a localized string similar to Method failed with unexpected error code {0}.. + + + + + Looks up a localized string similar to Add Property Value At. + + + + + Looks up a localized string similar to Item: {0} Property: {1} At: {2}. + + + + + Looks up a localized string similar to The enum value {0} is not valid.. + + + + + Looks up a localized string similar to A name argument must be specified.. + + + + + Looks up a localized string similar to The specified RegistryValueKind is a value that is not valid.. + + + + + Looks up a localized string similar to Registry key name must start with a valid base key name.. + + + + + Looks up a localized string similar to The specified registry key does not exist.. + + + + + Looks up a localized string similar to A non-empty subkey name must be specified.. + + + + + Looks up a localized string similar to Registry subkeys should not be greater than 255 characters.. + + + + + Looks up a localized string similar to RegistryKey.SetValue does not support arrays of type '{0}'. Only Byte[] and String[] are supported.. + + + + + Looks up a localized string similar to The type of the value object did not match the specified RegistryValueKind or the object could not be properly converted.. + + + + + Looks up a localized string similar to RegistryKey.SetValue does not allow a String[] that contains a null String reference.. + + + + + Looks up a localized string similar to Cannot delete a subkey tree because the subkey does not exist.. + + + + + Looks up a localized string similar to No value exists with that name.. + + + + + Looks up a localized string similar to The length of the specified value name exceeds the maximum of 16383 characters.. + + + + + Looks up a localized string similar to A value argument must be specified.. + + + + + Looks up a localized string similar to The size of the specified value data exceeds the maximum of 1 MB.. + + + + + Looks up a localized string similar to The subkey argument is not valid.. + + + + + Looks up a localized string similar to The specified permission name is not valid.. + + + + + Looks up a localized string similar to The specified RegistryKeyPermissionCheck value is not valid.. + + + + + Looks up a localized string similar to The specified SafeHandle value is not valid.. + + + + + Looks up a localized string similar to The specified registry subkey does not exist.. + + + + + Looks up a localized string similar to A transaction argument must be specified.. + + + + + Looks up a localized string similar to The at parameter must be an integer to index a specific property value.. + + + + + Looks up a localized string similar to Clear Item. + + + + + Looks up a localized string similar to Item: {0}. + + + + + Looks up a localized string similar to Clear Property. + + + + + Looks up a localized string similar to Item: {0} Property: {1}. + + + + + Looks up a localized string similar to The operation was not processed. The location that was provided does not allow this operation.. + + + + + Looks up a localized string similar to Copy Key. + + + + + Looks up a localized string similar to Item: {0} Destination: {1}. + + + + + Looks up a localized string similar to Copy Property. + + + + + Looks up a localized string similar to Item: {0} SourceProperty: {1} DestinationItem: {2} DestinationProperty: {3}. + + + + + Looks up a localized string similar to (default). + + + + + Looks up a localized string similar to The operation cannot be performed because the destination path is subordinate to the source path.. + + + + + Looks up a localized string similar to The operation is not allowed on the destination location.. + + + + + Looks up a localized string similar to The software settings for the current user. + + + + + Looks up a localized string similar to The configuration settings for the local computer. + + + + + Looks up a localized string similar to Incorrect thread for enabling or disabling a privilege.. + + + + + Looks up a localized string similar to The permission must be reverted before changing its state again.. + + + + + Looks up a localized string similar to The specified transaction or Transaction.Current must match the transaction used to create or open this TransactedRegistryKey.. + + + + + Looks up a localized string similar to Cannot create a KTM handle without a Transaction.Current or specified transaction.. + + + + + Looks up a localized string similar to The object does not contain a security descriptor.. + + + + + Looks up a localized string similar to The TransactedRegistryKey object is not associated with a transaction because it is for a predefined key.. + + + + + Looks up a localized string similar to The registry key has subkeys; recursive removals are not supported by this method.. + + + + + Looks up a localized string similar to Remote registry operations are not allowed with transactions.. + + + + + Looks up a localized string similar to A key in this path already exists.. + + + + + Looks up a localized string similar to Key {0} has been created, but a default value could not be set.. + + + + + Looks up a localized string similar to The registry key at the specified path does not exist.. + + + + + Looks up a localized string similar to Move Item. + + + + + Looks up a localized string similar to Item: {0} Destination: {1}. + + + + + Looks up a localized string similar to Move Property. + + + + + Looks up a localized string similar to Item: {0} SourceProperty: {1} DestinationItem: {2} DestinationProperty: {3}. + + + + + Looks up a localized string similar to Unable to create a drive with the specified root. The root path does not exist.. + + + + + Looks up a localized string similar to New Item. + + + + + Looks up a localized string similar to Item: {0}. + + + + + Looks up a localized string similar to Item: {0} Type: {1}. + + + + + Looks up a localized string similar to New Property. + + + + + Looks up a localized string similar to Item: {0} Property: {1}. + + + + + Looks up a localized string similar to Registry transactions are not supported on this platform.. + + + + + Looks up a localized string similar to Cannot access a closed registry key.. + + + + + Looks up a localized string similar to The property already exists.. + + + + + Looks up a localized string similar to Property {0} does not exist at path {1}.. + + + + + Looks up a localized string similar to The property is not a multi-valued property. To remove this property, use Remove-ItemProperty.. + + + + + Looks up a localized string similar to The property is not a multi-valued property and values cannot be added to it. To change the value use Set-ItemProperty.. + + + + + Looks up a localized string similar to Remove Key. + + + + + Looks up a localized string similar to Item: {0}. + + + + + Looks up a localized string similar to Remove Property. + + + + + Looks up a localized string similar to Item: {0} Property: {1}. + + + + + Looks up a localized string similar to Remove Property Value At. + + + + + Looks up a localized string similar to Item: {0} Property: {1} At: {2}. + + + + + Looks up a localized string similar to Rename Item. + + + + + Looks up a localized string similar to The item cannot be renamed because an item with that name already exists in the same container.. + + + + + Looks up a localized string similar to Item: {0} NewName: {1}. + + + + + Looks up a localized string similar to Rename property.. + + + + + Looks up a localized string similar to Item: {0} SourceProperty: {1} DestinationProperty: {2}. + + + + + Looks up a localized string similar to Requested registry access is not allowed.. + + + + + Looks up a localized string similar to Set Item. + + + + + Looks up a localized string similar to Item: {0} Value: {1}. + + + + + Looks up a localized string similar to Set Property. + + + + + Looks up a localized string similar to Item: {0} Property: {1}. + + + + + Looks up a localized string similar to Set Property Value At. + + + + + Looks up a localized string similar to Item: {0} Property: {1} At: {2}. + + + + + Looks up a localized string similar to The operation is not allowed on the source location.. + + + + + Looks up a localized string similar to Transaction related error {0} occurred.. + + + + + Looks up a localized string similar to Could not bind parameter 'Type'. Could not convert "{0}" to "{1}". The possible enumeration values are "String, ExpandString, Binary, DWord, MultiString, QWord, Unknown".. + + + + + Looks up a localized string similar to Access to the registry key '{0}' is denied.. + + + + + Looks up a localized string similar to Cannot write to the registry key.. + + + + + Looks up a localized string similar to Unknown error: {0}.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Logical and. Returns TRUE when both statements are TRUE.. + + + + + Looks up a localized string similar to Converts the left operand to the specified .NET Framework type (right operand).. + + + + + Looks up a localized string similar to Bitwise AND. + + + + + Looks up a localized string similar to Bitwise NOT. + + + + + Looks up a localized string similar to Bitwise OR (inclusive). + + + + + Looks up a localized string similar to Bitwise OR (exclusive). + + + + + Looks up a localized string similar to The tab completion result cannot be properly deserialized because the remote runspace does not contain a TypeTable instance.. + + + + + Looks up a localized string similar to Containment operator - case sensitive. Returns TRUE only when the test value (right operand) exactly matches at least one of the values in the left operand.. + + + + + Looks up a localized string similar to Equal to - case sensitive. When the left operand is a collection, returns values from the collection that equal the right operand, otherwise returns TRUE if the left operand equals the right operand.. + + + + + Looks up a localized string similar to Greater than or equal to - case sensitive. When the left operand is a collection, returns values from the collection that are greater than or equal to the right operand, otherwise returns TRUE if the left operand is greater than or equal to the right operand.. + + + + + Looks up a localized string similar to Greater than - case sensitive. When the left operand is a collection, returns values from the collection that are greater than the right operand, otherwise returns TRUE if the left operand is greater than the right operand.. + + + + + Looks up a localized string similar to Containment operator - case sensitive. Returns TRUE when the test value (left operand) exactly matches at least one of the values in the right operand.. + + + + + Looks up a localized string similar to Less than or equal to - case sensitive. When the left operand is a collection, returns values from the collection that are less than or equal to the right operand, otherwise returns TRUE if the left operand is less than or equal to the right operand.. + + + + + Looks up a localized string similar to Wildcard matching operator - case sensitive. When the left operand is a collection, returns values from the collection that match the right hand operand, otherwise returns TRUE if the left operand matches the right operand.. + + + + + Looks up a localized string similar to Less than - case sensitive. When the left operand is a collection, returns values from the collection that are less than the right operand, otherwise returns TRUE if the left operand is less than the right operand.. + + + + + Looks up a localized string similar to Regular expression matching operator - case sensitive. When the left operand is a collection, returns values from the collection that match the right hand operand, otherwise returns TRUE if the left operand matches the right operand.. + + + + + Looks up a localized string similar to Not equal to - case sensitive. When the left operand is a collection, returns values from the collection that do not equal the right operand, otherwise returns TRUE if the left operand does not equal the right operand.. + + + + + Looks up a localized string similar to Containment operator - case sensitive. Returns TRUE when the test value (right operand) exactly matches none of the values in the left operand.. + + + + + Looks up a localized string similar to Containment operator - case sensitive. Returns TRUE when the test value (left operand) exactly matches none of the values in the right operand.. + + + + + Looks up a localized string similar to Wildcard matching operator - case sensitive. When the left operand is a collection, returns values from the collection that do not match the right hand operand, otherwise returns TRUE if the left operand does not match the right operand.. + + + + + Looks up a localized string similar to Regular expression matching operator - case sensitive. When the left operand is a collection, returns values from the collection that do not match the right hand operand, otherwise returns TRUE if the left operand does not match the right operand.. + + + + + Looks up a localized string similar to Containment operator - case insensitive. Returns TRUE when the test value (right operand) exactly matches at least one of the values in the left operand.. + + + + + Looks up a localized string similar to Replace operator - case sensitive. Changes the left operand. Example: (dir *.ps1).FullName -replace '.ps1$','.ps1.bak'. + + + + + Looks up a localized string similar to Split - case sensitive. Split one or more strings into substrings. + -Split <String> + + <String> -Split <Delimiter>[,<Max-substrings>[,"<Options>"]] + + <String> -Split {<ScriptBlock>} [,<Max-substrings>]. + + + + + Looks up a localized string similar to Equal to - case insensitive. When the left operand is a collection, returns values from the collection that equal the right operand, otherwise returns TRUE if the left operand equals the right operand.. + + + + + Looks up a localized string similar to Formats strings by using the format method of string objects.. + + + + + Looks up a localized string similar to Greater than or equal to - case insensitive. When the left operand is a collection, returns values from the collection that are greater than or equal to the right operand, otherwise returns TRUE if the left operand is greater than or equal to the right operand.. + + + + + Looks up a localized string similar to Greater than - case insensitive. When the left operand is a collection, returns values from the collection that are greater than the right operand, otherwise returns TRUE if the left operand is greater than the right operand.. + + + + + Looks up a localized string similar to Containment operator - incase sensitive. Returns TRUE when the test value (right operand) exactly matches at least one of the values in the left operand.. + + + + + Looks up a localized string similar to Equal to - case insensitive. When the left operand is a collection, returns values from the collection that equal the right operand, otherwise returns TRUE if the left operand equals the right operand.. + + + + + Looks up a localized string similar to Greater than or equal to - case insensitive. When the left operand is a collection, returns values from the collection that are greater than or equal to the right operand, otherwise returns TRUE if the left operand is greater than or equal to the right operand.. + + + + + Looks up a localized string similar to Greater than - case insensitive. When the left operand is a collection, returns values from the collection that are greater than the right operand, otherwise returns TRUE if the left operand is greater than the right operand.. + + + + + Looks up a localized string similar to Containment operator - case insensitive. Returns TRUE when the test value (left operand) exactly matches at least one of the values in the right operand.. + + + + + Looks up a localized string similar to Less than or equal to - case insensitive. When the left operand is a collection, returns values from the collection that are less than or equal to the right operand, otherwise returns TRUE if the left operand is less than or equal to the right operand.. + + + + + Looks up a localized string similar to Wildcard matching operator - case insensitive. When the left operand is a collection, returns values from the collection that match the right hand operand, otherwise returns TRUE if the left operand matches the right operand.. + + + + + Looks up a localized string similar to Less than - case insensitive. When the left operand is a collection, returns values from the collection that are less than the right operand, otherwise returns TRUE if the left operand is less than the right operand.. + + + + + Looks up a localized string similar to Regular expression matching operator - case insensitive. When the left operand is a collection, returns values from the collection that match the right hand operand, otherwise returns TRUE if the left operand matches the right operand.. + + + + + Looks up a localized string similar to Not equal to - case insensitive. When the left operand is a collection, returns values from the collection that do not equal the right operand, otherwise returns TRUE if the left operand does not equal the right operand.. + + + + + Looks up a localized string similar to Containment operator - case insensitive. Returns TRUE when the test value (left operand) exactly matches at least one of the values in the right operand.. + + + + + Looks up a localized string similar to Containment operator - case insensitive. Returns TRUE when the test value (right operand) exactly matches none of the values in the left operand.. + + + + + Looks up a localized string similar to Containment operator - case insensitive. Returns TRUE when the test value (left operand) exactly matches none of the values in the right operand.. + + + + + Looks up a localized string similar to Wildcard matching operator - case insensitive. When the left operand is a collection, returns values from the collection that do not match the right hand operand, otherwise returns TRUE if the left operand does not match the right operand.. + + + + + Looks up a localized string similar to Regular expression matching operator - case insensitive. When the left operand is a collection, returns values from the collection that do not match the right hand operand, otherwise returns TRUE if the left operand does not match the right operand.. + + + + + Looks up a localized string similar to Replace operator - case insensitive. Changes the left operand. Example: (dir *.ps1).FullName -replace '.ps1$','.ps1.bak'. + + + + + Looks up a localized string similar to Returns TRUE when the left operand is not an instance of the specified .NET Framework type (right operand).. + + + + + Looks up a localized string similar to Returns TRUE when the left operand is an instance of the specified .NET Framework type (right operand).. + + + + + Looks up a localized string similar to Split - case insensitive. Split one or more strings into substrings. + -Split <String> + + <String> -Split <Delimiter>[,<Max-substrings>[,"<Options>"]] + + <String> -Split {<ScriptBlock>} [,<Max-substrings>]. + + + + + Looks up a localized string similar to Join - combine multiple strings into a single string. + -Join <String[]> + <String[]> -Join <Delimiter>. + + + + + Looks up a localized string similar to Less than or equal to - case insensitive. When the left operand is a collection, returns values from the collection that are less than or equal to the right operand, otherwise returns TRUE if the left operand is less than or equal to the right operand.. + + + + + Looks up a localized string similar to Wildcard matching operator - case insensitive. When the left operand is a collection, returns values from the collection that match the right hand operand, otherwise returns TRUE if the left operand matches the right operand.. + + + + + Looks up a localized string similar to Less than - case insensitive. When the left operand is a collection, returns values from the collection that are less than the right operand, otherwise returns TRUE if the left operand is less than the right operand.. + + + + + Looks up a localized string similar to Regular expression matching operator - case insensitive. When the left operand is a collection, returns values from the collection that match the right hand operand, otherwise returns TRUE if the left operand matches the right operand.. + + + + + Looks up a localized string similar to Not equal to - case insensitive. When the left operand is a collection, returns values from the collection that do not equal the right operand, otherwise returns TRUE if the left operand does not equal the right operand.. + + + + + Looks up a localized string similar to Cannot access properties on a null instance of the type CompletionResult.. + + + + + Looks up a localized string similar to Containment operator - case insensitive. Returns TRUE when the test value (right operand) exactly matches none of the values in the left operand.. + + + + + Looks up a localized string similar to Containment operator - case sensitive. Returns TRUE when the test value (left operand) exactly matches none of the values in the right operand.. + + + + + Looks up a localized string similar to Wildcard matching operator - case insensitive. When the left operand is a collection, returns values from the collection that do not match the right hand operand, otherwise returns TRUE if the left operand does not match the right operand.. + + + + + Looks up a localized string similar to Regular expression matching operator - case insensitive. When the left operand is a collection, returns values from the collection that do not match the right hand operand, otherwise returns TRUE if the left operand does not match the right operand.. + + + + + Looks up a localized string similar to Logical not. Negates the statement that follows it.. + + + + + Looks up a localized string similar to Logical or. TRUE when either or both statements are TRUE.. + + + + + Looks up a localized string similar to Replace operator - case insensitive. Changes the left operand. Example: (dir *.ps1).FullName -replace '.ps1$','.ps1.bak'. + + + + + Looks up a localized string similar to Shift Left bit operator. Inserts zero in right-most bit position.. + + + + + Looks up a localized string similar to Shift Right bit operator. Inserts zero in the left-most bit position. For signed values, sign bit is preserved.. + + + + + Looks up a localized string similar to Split - case insensitive. Split one or more strings into substrings. + -Split <String> + + <String> -Split <Delimiter>[,<Max-substrings>[,"<Options>"]] + + <String> -Split {<ScriptBlock>} [,<Max-substrings>]. + + + + + Looks up a localized string similar to Logical exclusive or. Returns TRUE when one of the statements is TRUE and the other is FALSE.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Starting a browser to display online Help failed. No program or browser is associated to open the URI {0}.. + + + + + Looks up a localized string similar to ForwardHelpTargetName cannot refer to the function itself.. + + + + + Looks up a localized string similar to To use the {0}, install Windows PowerShell ISE by using Server Manager, and then restart this application. ({1}). + + + + + Looks up a localized string similar to Cannot process the Help category because "{0}" is not a valid Help category.. + + + + + Looks up a localized string similar to Cannot load the Help file "{0}". Details: {1}.. + + + + + Looks up a localized string similar to Cannot access the Help file "{0}" because the current user does not have access rights to the file. Details: {1}.. + + + + + Looks up a localized string similar to The Help file "{0}" is not a valid xml document. Details: {1}.. + + + + + Looks up a localized string similar to Cannot load the Help file. The following {1} errors occurred while loading the Help file "{0}".. + + + + + Looks up a localized string similar to Get-Help could not find {0} in a help file in this session. To download updated help topics type: "Update-Help". To get help online, search for the help topic in the TechNet library at https:/go.microsoft.com/fwlink/?LinkID=107116.. + + + + + Looks up a localized string similar to The specified URI {0} is not valid.. + + + + + Looks up a localized string similar to An error occurred while loading Help content for {0} from file {1}. Details: {2}. To download updated Help topics, run the Update-Help cmdlet. To get help online, search for the Help topic in the TechNet library at https:/go.microsoft.com/fwlink/?LinkID=107116.. + + + + + Looks up a localized string similar to The node "{0}" can have a maximum of {2} child nodes of type "{1}". Node Path: {3}.. + + + + + Looks up a localized string similar to The node "{0}" cannot have "{1}" as a child node. Node Path: {2}.. + + + + + Looks up a localized string similar to Multiple Help topics were found. Use only one Help topic with the -{0} option.. + + + + + Looks up a localized string similar to No parameter matches criteria {0}.. + + + + + Looks up a localized string similar to The online version of this Help topic cannot be displayed because the Internet address (URI) of the Help topic is not specified in the command code or in the help file for the command.. + + + + + Looks up a localized string similar to {0} is not supported by the requested Help category.. + + + + + Looks up a localized string similar to The protocol specified in the Uri "{0}" is not supported. Only "{1}" and "{2}" protocols are supported.. + + + + + Looks up a localized string similar to The provider "{0}" cannot be loaded. Details: {1}.. + + + + + Looks up a localized string similar to Cannot find the registry key: "{0}{1}"; using "{2}" to load Help files.. + + + + + Looks up a localized string similar to Cannot get Help from a remote runspace, because the runspace has not been opened. Open the runspace by running an implicit remoting command, and then try running the command to get Help again.. + + + + + Looks up a localized string similar to {0} does not work in a remote session.. + + + + + Looks up a localized string similar to Access is denied. The command could not update Help topics for the Windows PowerShell core modules, or for any modules in the $pshome\Modules directory. To update these Help topics, start Windows PowerShell by using the "Run as Administrator" command, and try running Update-Help again.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Command {0} is {1}.. + + + + + Looks up a localized string similar to Engine state changed from {0} to {1}.. + + + + + Looks up a localized string similar to Fully Qualified Error ID = {0}. + + + + + Looks up a localized string similar to Error Message = {0}. + + + + + Looks up a localized string similar to Recommended Action = {0}. + + + + + Looks up a localized string similar to Execution Policy. + + + + + Looks up a localized string similar to Job Command = {0}. + + + + + Looks up a localized string similar to Job Id = {0}. + + + + + Looks up a localized string similar to Job Instance Id = {0}. + + + + + Looks up a localized string similar to Job Location = {0}. + + + + + Looks up a localized string similar to Job Name = {0}. + + + + + Looks up a localized string similar to Job State = {0}. + + + + + Looks up a localized string similar to Command Name = . + + + + + Looks up a localized string similar to Command Path = . + + + + + Looks up a localized string similar to Command Type = . + + + + + Looks up a localized string similar to Connected User = . + + + + + Looks up a localized string similar to Engine Version = . + + + + + Looks up a localized string similar to Host Application = . + + + + + Looks up a localized string similar to Host ID = . + + + + + Looks up a localized string similar to Host Name = . + + + + + Looks up a localized string similar to Host Version = . + + + + + Looks up a localized string similar to Pipeline ID = . + + + + + Looks up a localized string similar to Runspace ID = . + + + + + Looks up a localized string similar to Script Name = . + + + + + Looks up a localized string similar to Sequence Number = . + + + + + Looks up a localized string similar to Severity = . + + + + + Looks up a localized string similar to Shell ID = . + + + + + Looks up a localized string similar to Time = . + + + + + Looks up a localized string similar to User = . + + + + + Looks up a localized string similar to NULL Job. + + + + + Looks up a localized string similar to Provider name. + + + + + Looks up a localized string similar to Provider {0} changed state to {1}.. + + + + + Looks up a localized string similar to Script execution is {0}.. + + + + + Looks up a localized string similar to Variable {0} changed from {1} to {2}.. + + + + + Looks up a localized string similar to Variable {0} changed to {1}.. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to This Windows PowerShell snap-in contains cmdlets used to manage components of Windows PowerShell.. + + + + + Looks up a localized string similar to Core Windows PowerShell snap-in. + + + + + Looks up a localized string similar to Microsoft Corporation. + + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + diff --git a/packages/Mono.Cecil.0.11.6/.signature.p7s b/packages/Mono.Cecil.0.11.6/.signature.p7s new file mode 100644 index 0000000..d13b081 Binary files /dev/null and b/packages/Mono.Cecil.0.11.6/.signature.p7s differ diff --git a/packages/Mono.Cecil.0.11.6/Mono.Cecil.0.11.6.nupkg b/packages/Mono.Cecil.0.11.6/Mono.Cecil.0.11.6.nupkg new file mode 100644 index 0000000..08689df Binary files /dev/null and b/packages/Mono.Cecil.0.11.6/Mono.Cecil.0.11.6.nupkg differ diff --git a/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.Mdb.dll b/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.Mdb.dll new file mode 100644 index 0000000..8cb8390 Binary files /dev/null and b/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.Mdb.dll differ diff --git a/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.Pdb.dll b/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.Pdb.dll new file mode 100644 index 0000000..66c5459 Binary files /dev/null and b/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.Pdb.dll differ diff --git a/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.Rocks.dll b/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.Rocks.dll new file mode 100644 index 0000000..23da06b Binary files /dev/null and b/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.Rocks.dll differ diff --git a/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.dll b/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.dll new file mode 100644 index 0000000..7888b66 Binary files /dev/null and b/packages/Mono.Cecil.0.11.6/lib/net40/Mono.Cecil.dll differ diff --git a/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.Mdb.dll b/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.Mdb.dll new file mode 100644 index 0000000..55f9ee2 Binary files /dev/null and b/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.Mdb.dll differ diff --git a/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.Pdb.dll b/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.Pdb.dll new file mode 100644 index 0000000..0462a8f Binary files /dev/null and b/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.Pdb.dll differ diff --git a/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.Rocks.dll b/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.Rocks.dll new file mode 100644 index 0000000..561b0d7 Binary files /dev/null and b/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.Rocks.dll differ diff --git a/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.dll b/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.dll new file mode 100644 index 0000000..488bd5c Binary files /dev/null and b/packages/Mono.Cecil.0.11.6/lib/netstandard2.0/Mono.Cecil.dll differ