<br><font size=2 face="sans-serif">Hi everybody,</font>
<br>
<br><font size=2 face="sans-serif">I'm trying to create an object that
interfaces with our ORB object. An exception is thrown by the remote object
when we try to log in.</font>
<br><font size=2 face="sans-serif">If the remote object is configured properly
this code works but if it's not I would like to catch the exception ...
now the exception is not being passed to my code, somewhere down the line
the exception is not handled and I get an </font>
<br><font size=2 face="sans-serif">&quot;Debug assertion failed :</font><font size=2 face="Courier New">_BLOCK_TYPE_IS_VALID(pHead-&gt;nBlockUse)</font><font size=2 face="sans-serif">&quot;
error message on the dbgdel.cpp file.</font>
<br>
<br><font size=2 face="sans-serif">how can I handle the exception?</font>
<br><font size=2 face="sans-serif">any help would be appreciated.</font>
<br>
<br>
<br><font size=2 face="sans-serif">here is the code</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; </font><font size=2 color=blue face="Courier New">try</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; {</font>
<br>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; //
.... previous code</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; </font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; FK::Comkit::Service_Base_var
positionService = gate-&gt;login(UserName, Password);</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; </font><font size=2 color=blue face="Courier New">if</font><font size=2 face="Courier New">(
CORBA::is_nil(positionService) ) </font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; {</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; _RPT0(_CRT_ERROR, &quot;Login Failed.&quot;);</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; }</font>
<br>
<br>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; </font><font size=2 color=blue face="Courier New">catch</font><font size=2 face="Courier New">
(FK::Comkit::EXCEPT&amp; ex0) </font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; {</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; _RPT0(_CRT_ERROR, &quot;xxx&quot;);</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; }</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; </font><font size=2 color=blue face="Courier New">catch</font><font size=2 face="Courier New">
(CORBA::TRANSIENT&amp; ex1) </font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; {</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; _RPT0(_CRT_ERROR, &quot;xxx&quot;);</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; }</font>
<br>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; </font><font size=2 color=blue face="Courier New">catch</font><font size=2 face="Courier New">
(FK::Comkit::Comkit_Exception &amp; _exc2 )</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; {</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; _RPT0(_CRT_ERROR, &quot;xxx&quot;);</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; }</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; </font><font size=2 color=blue face="Courier New">catch</font><font size=2 face="Courier New">
(CORBA::Exception &amp;ex3)</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; {</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; _RPT0(_CRT_ERROR, &quot;xxx&quot;);</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; }</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; </font><font size=2 color=blue face="Courier New">catch</font><font size=2 face="Courier New">
(CORBA::SystemException &amp;ex4)</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; {</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; _RPT0(_CRT_ERROR, &quot;xxx&quot;);</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; }</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; </font><font size=2 color=blue face="Courier New">catch</font><font size=2 face="Courier New">
(CORBA::COMM_FAILURE &amp;ex5)</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; {</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; _RPT0(_CRT_ERROR, &quot;xxx&quot;);</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; }</font>
<br>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; </font><font size=2 color=blue face="Courier New">catch</font><font size=2 face="Courier New">
(...)</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; {</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; _RPT0(_CRT_ERROR, &quot;xxx&quot;);</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; }</font>
<br><font size=2 face="Courier New">&nbsp; &nbsp; &nbsp; &nbsp; </font><font size=2 color=blue face="Courier New">return</font><font size=2 face="Courier New">
S_OK;</font>
<br><font size=2 face="Courier New">}</font>
<br>
<br>
<br><font size=2 face="Courier New">FK::Comkit::Service_Base_ptr FK::Comkit::_objref_Service_Gate::login(</font><font size=2 color=blue face="Courier New">const</font><font size=2 face="Courier New">
</font><font size=2 color=blue face="Courier New">char</font><font size=2 face="Courier New">*
user, </font><font size=2 color=blue face="Courier New">const</font><font size=2 face="Courier New">
</font><font size=2 color=blue face="Courier New">char</font><font size=2 face="Courier New">*
password)</font>
<br><font size=2 face="Courier New">{</font>
<br><font size=2 face="Courier New">&nbsp; _0RL_cd_6C993FE03516BAC7_01000000
_call_desc(_0RL_lcfn_6C993FE03516BAC7_11000000, &quot;login&quot;, 6);</font>
<br><font size=2 face="Courier New">&nbsp; _call_desc.arg_0 = user;</font>
<br><font size=2 face="Courier New">&nbsp; _call_desc.arg_1 = password;</font>
<br>
<br><font size=2 face="Courier New">&nbsp; _invoke(_call_desc);</font>
<br><font size=2 face="Courier New">&nbsp; </font><font size=2 color=blue face="Courier New">return</font><font size=2 face="Courier New">
_call_desc.result._retn();</font>
<br>
<br><font size=2 face="Courier New">}</font>
<br>
<br>
<br><font size=2 face="Courier New">the exception is generated inside the
_invoke() function ..... Thanks again</font>