<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="http://code.msdn.microsoft.com/rss.xsl"?><rss version="2.0"><channel><title>Exception Filter Inject - Provides C# dll/exe's with execption filter support.</title><link>http://code.msdn.microsoft.com/ExceptionFilterInjct/Project/ProjectRss.aspx</link><description>ExceptionFilterInject is a tool which modifies the IL in a managed-only dll to provide exception filter support for languages &amp;#40;such as C&amp;#35;&amp;#41; which do not have exception filter support.      Exception fil...</description><item><title>CREATED RELEASE: v1.0 (Apr 21, 2008)</title><link>http://code.msdn.microsoft.com/ExceptionFilterInjct/Release/ProjectReleases.aspx?ReleaseId=943</link><description>The v1 release includes all the support that I expect to add.</description><author></author><pubDate>Mon, 21 Apr 2008 21:35:19 GMT</pubDate><guid isPermaLink="false">CREATED RELEASE: v1.0 (Apr 21, 2008) 20080421P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://code.msdn.microsoft.com/ExceptionFilterInjct/Wiki/View.aspx?title=Home&amp;version=3</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Resource Page Description&lt;/b&gt;&lt;br /&gt;ExceptionFilterInject is a tool which modifies the IL in a managed-only dll to provide exception filter support for languages &amp;#40;such as C&amp;#35;&amp;#41; which do not have exception filter support.&lt;br /&gt;&lt;br /&gt;Exception filters provide the ability to run arbitrary code during the &amp;#39;handler search&amp;#39; phase of exception processing. This is especially useful to allow you to &amp;#40;1&amp;#41; catch all non-critical exceptions in your top-level exception filter without needing to also catch exceptions that should be reported as bugs &amp;#40;such as NullReferenceException&amp;#41; -and- &amp;#40;2&amp;#41; allow you to save a minidump of the exception or report the exception to Watson.&lt;br /&gt;&lt;br /&gt;This project also contains a sample which uses exception filters in managed code to control which exceptions are caught and to save a minidump.&lt;br /&gt;
&lt;br /&gt; &lt;br /&gt;&lt;b&gt;How to use this tool:&lt;/b&gt;&lt;br /&gt;1. In any place where you would like to add an exception filter, simply add a try/catch, and catch System.Execption (in other words, create a try/catch which catches all exceptions).&lt;br /&gt;2. Define a static public or internal function which returns a 'bool' and takes the Exception as an argument (ex: static bool MyFunction(Exception exception)). The bool indicates if the exception filter should be caught.&lt;br /&gt;3. Build your assembly&lt;br /&gt;4. Run your assembly though this tool&lt;br /&gt; &lt;br /&gt;&lt;b&gt;Tool Syntax&lt;/b&gt;: ExceptionFilterInject.exe &amp;lt;input&lt;i&gt;assembly&amp;gt; &amp;lt;filter&lt;/i&gt;function&amp;gt; &amp;lt;output_directory&amp;gt; &lt;a href="http://code.msdn.microsoft.com/ExceptionFilterInjct/Wiki/View.aspx?title=intermediate_directory&amp;amp;referringTitle=Home"&gt;intermediate_directory&lt;/a&gt;&lt;br /&gt;filter_function uses the IL Assembly syntax for function names (ex: MyNamespace.MyClass::MyFunction).&lt;br /&gt; &lt;br /&gt;&lt;b&gt;Example&lt;/b&gt;: ExceptionFilterInject.exe c:\myproj\myassembly.dll MyNamespace.MyClass::MyFunction c:\myproj\bin %tmp%&lt;br /&gt;
&lt;/div&gt;</description><author>greggm</author><pubDate>Mon, 21 Apr 2008 21:26:59 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080421P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://code.msdn.microsoft.com/ExceptionFilterInjct/Wiki/View.aspx?title=Home&amp;version=2</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Resource Page Description&lt;/b&gt;&lt;br /&gt;ExceptionFilterInject is a tool which modifies the IL in a managed-only dll to provide exception filter support for languages &amp;#40;such as C&amp;#35;&amp;#41; which do not have exception filter support.&lt;br /&gt;&lt;br /&gt;Exception filters provide the ability to run arbitrary code during the &amp;#39;handler search&amp;#39; phase of exception processing. This is especially useful to allow you to &amp;#40;1&amp;#41; catch all non-critical exceptions in your top-level exception filter without needing to also catch exceptions that should be reported as bugs &amp;#40;such as NullReferenceException&amp;#41; -and- &amp;#40;2&amp;#41; allow you to save a minidump of the exception or report the exception to Watson.&lt;br /&gt;&lt;br /&gt;This project also contains a sample which uses exception filters in managed code to control which exceptions are caught and to save a minidump.&lt;br /&gt;
&lt;br /&gt; &lt;br /&gt;How to use this tool:&lt;br /&gt;1. In any place where you would like to add an exception filter, simply add a try/catch, and catch System.Execption (in other words, create a try/catch which catches all exceptions).&lt;br /&gt;2. Define a static public or internal function which returns a 'bool' and takes the Exception as an argument (ex: static bool MyFunction(Exception exception)). The bool indicates if the exception filter should be caught.&lt;br /&gt;3. Build your assembly&lt;br /&gt;4. Run your assembly though this tool&lt;br /&gt; &lt;br /&gt;Tool Syntax: ExceptionFilterInject.exe &amp;lt;input&lt;i&gt;assembly&amp;gt; &amp;lt;filter&lt;/i&gt;function&amp;gt; &amp;lt;output_directory&amp;gt; &lt;a href="http://code.msdn.microsoft.com/ExceptionFilterInjct/Wiki/View.aspx?title=intermediate_directory&amp;amp;referringTitle=Home"&gt;intermediate_directory&lt;/a&gt;&lt;br /&gt;     filter_function uses the IL Assembly syntax for function names (ex: MyNamespace.MyClass::MyFunction).&lt;br /&gt; &lt;br /&gt;Example: ExceptionFilterInject.exe c:\myproj\myassembly.dll MyNamespace.MyClass::MyFunction c:\myproj\bin %tmp%&lt;br /&gt;
&lt;/div&gt;</description><author>greggm</author><pubDate>Mon, 21 Apr 2008 21:26:15 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080421P</guid></item></channel></rss>