Set-SPDebug -trace 1 not working in PowerShell host
I have a few PowerShell hosts, and in these hosts Set-SPDebug -trace 1 does not work.
I tested PoshConsole, here it works, but for example the Host6 in the PowerShell SDK does not work.
Any idea what is required in a host 开发者_C百科to get this working?
My smart collegue Jan Pieter Guelen found the answer after going through the PowerShell automation api using Reflector. You have to enable history in CreatePipeline with the following code:
pipeline = runspace.CreatePipeline("", true);
Now the tracing works!Even the Wrox book "Windows PowerShell Programming" does not mention this:-( The PowerShell SDK sample (Host6) should include this as well... PoshConsole does this as well, but I never thought that this would be the problem.
In what way isn't it working? If you aren't seeing any output, did you override the WriteDebugLine() method of the PSHostUserInterface base class e.g.:
public override void WriteDebugLine(string message)
{
this.WriteLine(ConsoleColor.DarkYellow, ConsoleColor.Black,
String.Format(CultureInfo.CurrentCulture, "DEBUG: {0}", message));
}
精彩评论