/// <summary> /// This method implements the ProcessRecord method for Write-verbose command /// </summary> protected override void ProcessRecord() { // // The write-verbose command must use the script's InvocationInfo rather than its own, // so we create the VerboseRecord here and fill it up with the appropriate InvocationInfo; // then, we call the command runtime directly and pass this record to WriteVerbose(). // MshCommandRuntime mshCommandRuntime = this.CommandRuntime as MshCommandRuntime; if (mshCommandRuntime != null) { VerboseRecord record = new VerboseRecord(Message); InvocationInfo invocationInfo = GetVariableValue(SpecialVariables.MyInvocation) as InvocationInfo; if (invocationInfo != null) { record.SetInvocationInfo(invocationInfo); } mshCommandRuntime.WriteVerbose(record); } else { WriteVerbose(Message); } } //processrecord
protected override void ProcessRecord() { MshCommandRuntime commandRuntime = base.CommandRuntime as MshCommandRuntime; if (commandRuntime != null) { VerboseRecord record = new VerboseRecord(this.Message); InvocationInfo variableValue = base.GetVariableValue("MyInvocation") as InvocationInfo; if (variableValue != null) { record.SetInvocationInfo(variableValue); } commandRuntime.WriteVerbose(record, false); } else { base.WriteVerbose(this.Message); } }