Hi Jean, <br /><br />

here is an example of redirecting the output to a file and additionally catch the error via an event handler:<br /><br />

<font FACE="Consolas" SIZE="3">
<p>void RedirectVTKOutput() {</p>
<p><font FACE="Consolas" SIZE="3" COLOR="#2b91af">&nbsp;&nbsp;&nbsp; 
vtkFileOutputWindow </font>_FileOutputWindow = </font>
<font FACE="Consolas" SIZE="3" COLOR="#2b91af">vtkFileOutputWindow</font><font FACE="Consolas" SIZE="3">.New();</p>
<p>&nbsp;&nbsp;&nbsp; _FileOutputWindow.SetFileName(@&quot;c:\vtkerror.txt&quot;);</p>
<p>&nbsp;&nbsp;&nbsp; _FileOutputWindow.SetFlush(1);</p>
<p></font><font FACE="Consolas" SIZE="3" COLOR="#0000ff">&nbsp;&nbsp;&nbsp; if</font><font FACE="Consolas" SIZE="3">(</font><font FACE="Consolas" SIZE="3" COLOR="#2b91af">vtkOutputWindow</font><font FACE="Consolas" SIZE="3">.GetInstance() 
!= </font><font FACE="Consolas" SIZE="3" COLOR="#0000ff">null</font><font FACE="Consolas" SIZE="3">) 
{</p>
<p></font><font FACE="Consolas" SIZE="3" COLOR="#2b91af">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
vtkOutputWindow</font><font FACE="Consolas" SIZE="3">.SetInstance(_FileOutputWindow);</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _FileOutputWindow.ErrorEvt +=
</font><font FACE="Consolas" SIZE="3" COLOR="#0000ff">new</font><font FACE="Consolas" SIZE="3">
</font><font FACE="Consolas" SIZE="3" COLOR="#2b91af">vtkObject</font><font FACE="Consolas" SIZE="3">.</font><font FACE="Consolas" SIZE="3" COLOR="#2b91af">vtkObjectEventHandler</font><font FACE="Consolas" SIZE="3">(outputWindow_ErrorEvt);</p>
<p>&nbsp;&nbsp;&nbsp; }</p>
<p>}</p>
<p>&nbsp;</p>
<p></font><font FACE="Consolas" SIZE="3" COLOR="#0000ff">void</font><font FACE="Consolas" SIZE="3"> 
outputWindow_ErrorEvt(</font><font FACE="Consolas" SIZE="3" COLOR="#2b91af">vtkObject</font><font FACE="Consolas" SIZE="3"> 
sender, </font><font FACE="Consolas" SIZE="3" COLOR="#2b91af">vtkObjectEventArgs</font><font FACE="Consolas" SIZE="3"> 
e) {</p>
<p></font><font FACE="Consolas" SIZE="3" COLOR="#0000ff">&nbsp;&nbsp;&nbsp; 
string</font><font FACE="Consolas" SIZE="3"> s = </font>
<font FACE="Consolas" SIZE="3" COLOR="#a31515">&quot;ERROR: unknown&quot;</font><font FACE="Consolas" SIZE="3">;</p>
<p></font><font FACE="Consolas" SIZE="3" COLOR="#0000ff">&nbsp;&nbsp;&nbsp; try</font><font FACE="Consolas" SIZE="3"> 
{</p>
<p>&nbsp;&nbsp;&nbsp; </font><font FACE="Consolas" SIZE="3" COLOR="#0000ff">&nbsp;&nbsp;&nbsp; 
if</font><font FACE="Consolas" SIZE="3">(e.CallData != </font>
<font FACE="Consolas" SIZE="3" COLOR="#2b91af">IntPtr</font><font FACE="Consolas" SIZE="3">.Zero) 
{</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; s = 
System.Runtime.InteropServices.</font><font FACE="Consolas" SIZE="3" COLOR="#2b91af">Marshal</font><font FACE="Consolas" SIZE="3">.PtrToStringAnsi(e.CallData);</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp; }</p>
<p></font><font FACE="Consolas" SIZE="3" COLOR="#0000ff">&nbsp;&nbsp;&nbsp; 
catch </font><font FACE="Consolas" SIZE="3">{</font></p>
<p><font FACE="Consolas" SIZE="3">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // 
handle error</p>
<p>&nbsp;&nbsp;&nbsp; }</p>
<p>&nbsp;&nbsp;&nbsp; System.Diagnostics.</font><font FACE="Consolas" SIZE="3" COLOR="#2b91af">Debug</font><font FACE="Consolas" SIZE="3">.Write(System.</font><font FACE="Consolas" SIZE="3" COLOR="#2b91af">String</font><font FACE="Consolas" SIZE="3">.Format(</p>
<p></font><font FACE="Consolas" SIZE="3" COLOR="#a31515">&nbsp;&nbsp;&nbsp; &quot;outputWindow_ErrorEvt 
called: sender='{0}' e='{1}' s='{2}'&quot;</font><font FACE="Consolas" SIZE="3">, 
sender, e, s));</p>
<p>}</p>
<p></p>
</font>
<br /><br /><br />
with best regards<br />
Jochen
        
<br/><hr align="left" width="300" />
View this message in context: <a href="http://vtk.1045678.n5.nabble.com/Activiz-vtkOutputWindow-tp5711412p5713288.html">Re: Activiz / vtkOutputWindow</a><br/>
Sent from the <a href="http://vtk.1045678.n5.nabble.com/VTK-Users-f1224199.html">VTK - Users mailing list archive</a> at Nabble.com.<br/>