Hello,
I have written a program with C#, that creates a logfile and fills this by using log4net. This program starts powershell-scripts. The scripts use log4net, too. It works:
> C#:
> ps.Runspace.SessionStateProxy.SetVariable("myMethod",(Action<Level,string>)myMethod);
> ps.AddCommand(System.IO.Path.Combine(pathScripts, testSkripte[i].ToString()));
> ps.Invoke();
> Powershell:
> $ScriptLog.Invoke([log4net.Core.Level]::Debug, "TestFile_Debug")
> $ScriptLog.Invoke([log4net.Core.Level]::Warn, "TestFile_Warn") $ScriptLog
> $ScriptLog.Invoke([log4net.Core.Level]::Error, "TestFile_Error")
Now I want add to use the standard Write-Error, Write-Debug, etc. CMDlets in my Script.
(looks like here - answer of Hinek).
Powershell:
Write-Warning "Write-Warning"
AND
Write-Error "Write-Error"
works, but the following doesn´t work:
Write-Debug "Write-Debug" (I don´t get an item in my logfile) OR
Write-Debug "Write-Debug" -debug (for this I get an item in my logfile, but ...)
... I get an error in my logfile, too. The error looks like this:
[2010-10-22 13:10:58,097] DEBUG : Write-Debug
[2010-10-22 13:10:58,113] ERROR : Cannot invoke this function because the current
host does not implement it
(I think to have all namespaces.)
What the error-message means and what can I do again this?
thanks