<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>陈锋-TechBlog - COM Interop P/Invoke</title><link>http://blog.csdn.net/sukhoeing/category/314792.aspx</link><description /><dc:language>zh-CN</dc:language><lastUpdateTime>Tue, 25 Dec 2007 21:31:17 GMT</lastUpdateTime><ttl>60</ttl><item><dc:creator>陈锋</dc:creator><title>如何得知一个__ComObject对象的实际类型</title><link>http://blog.csdn.net/sukhoeing/archive/2007/12/25/1967139.aspx</link><pubDate>Tue, 25 Dec 2007 21:31:00 GMT</pubDate><guid>http://blog.csdn.net/sukhoeing/archive/2007/12/25/1967139.aspx</guid><wfw:comment>http://blog.csdn.net/sukhoeing/comments/1967139.aspx</wfw:comment><comments>http://blog.csdn.net/sukhoeing/archive/2007/12/25/1967139.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/sukhoeing/comments/commentRss/1967139.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=1967139</trackback:ping><description>如何得知一个__ComObject对象的实际类型&lt;img src ="http://blog.csdn.net/sukhoeing/aggbug/1967139.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>陈锋</dc:creator><title>P/Invoke传递的callback中会用到的一个很有用的属性</title><link>http://blog.csdn.net/sukhoeing/archive/2007/11/17/1890661.aspx</link><pubDate>Sat, 17 Nov 2007 23:43:00 GMT</pubDate><guid>http://blog.csdn.net/sukhoeing/archive/2007/11/17/1890661.aspx</guid><wfw:comment>http://blog.csdn.net/sukhoeing/comments/1890661.aspx</wfw:comment><comments>http://blog.csdn.net/sukhoeing/archive/2007/11/17/1890661.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/sukhoeing/comments/commentRss/1890661.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=1890661</trackback:ping><description>就像这个帖子中提到的，如果要调用C/C++ dll export出来的一个函数，并且要传一个callback的delegate进去，就会产生一个问题: delegate默认的函数调用约定是stdcall，但是C++端一般会要求这个callback是cdecl的。这个问题在.net 1.1中没有好的解决方法，只能反汇编你的assembly然后手动修改对应delegate的属性。在.net 2.0中，可以使用UnmanagedFunctionPointer Attribute来解决这个问题。因为它可以控制delegate中函数调用的calling convention。这个在.net CF编程中应该会比较有用，希望能够帮助有此需求的朋友。&lt;img src ="http://blog.csdn.net/sukhoeing/aggbug/1890661.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>陈锋</dc:creator><title>Getting IErrorInfo part of com error in Managed Code</title><link>http://blog.csdn.net/sukhoeing/archive/2007/09/11/1780612.aspx</link><pubDate>Tue, 11 Sep 2007 14:49:00 GMT</pubDate><guid>http://blog.csdn.net/sukhoeing/archive/2007/09/11/1780612.aspx</guid><wfw:comment>http://blog.csdn.net/sukhoeing/comments/1780612.aspx</wfw:comment><comments>http://blog.csdn.net/sukhoeing/archive/2007/09/11/1780612.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/sukhoeing/comments/commentRss/1780612.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=1780612</trackback:ping><description>有个客户问了如下的问题：How to Getting IErrorInfo part of com error in Managed Code?经过一番调查发现，在托管应用程序中，如果想要得到IErrorInfo中成员函数所对应的信息，就必须从产生的异常的字段中取得相应的信息。&lt;img src ="http://blog.csdn.net/sukhoeing/aggbug/1780612.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>陈锋</dc:creator><title>如何在托管环境下释放COM对象</title><link>http://blog.csdn.net/sukhoeing/archive/2007/07/23/1703246.aspx</link><pubDate>Mon, 23 Jul 2007 17:00:00 GMT</pubDate><guid>http://blog.csdn.net/sukhoeing/archive/2007/07/23/1703246.aspx</guid><wfw:comment>http://blog.csdn.net/sukhoeing/comments/1703246.aspx</wfw:comment><comments>http://blog.csdn.net/sukhoeing/archive/2007/07/23/1703246.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/sukhoeing/comments/commentRss/1703246.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=1703246</trackback:ping><description> 如何在托管环境下释放COM对象 Shanny同学介绍了DataGridView数据导出到Excel的几个方法，其中讲到的使用Microsoft.Office.Core.dll即 Microsoft Office 11.0 Object Library.代码大概如下：private void ExecuteTransfer(){&amp;nbsp;ApplicationClass app；&amp;nbsp;try&amp;nbsp;{&amp;nbsp; app = new ApplicationClass();&amp;nbsp; WorkBooks wbs = app.Workbooks;&amp;nbsp; WorkBook wb = wbs.Add(XlWBATemplate.xlWBATWorksheet);&amp;nbsp; ...&amp;nbsp; //Use 'app' to generate Excel Object&amp;nbsp;}&amp;nbsp;catch&amp;nbsp;{}&amp;nbsp;finally&amp;nbsp;{&amp;nbsp; app.Quit();&amp;nbsp; app = null;&amp;nbsp;} &amp;nbsp;//GC.Colle&lt;img src ="http://blog.csdn.net/sukhoeing/aggbug/1703246.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>陈锋</dc:creator><title>_TypePtr error</title><link>http://blog.csdn.net/sukhoeing/archive/2007/07/13/1687992.aspx</link><pubDate>Fri, 13 Jul 2007 10:28:00 GMT</pubDate><guid>http://blog.csdn.net/sukhoeing/archive/2007/07/13/1687992.aspx</guid><wfw:comment>http://blog.csdn.net/sukhoeing/comments/1687992.aspx</wfw:comment><comments>http://blog.csdn.net/sukhoeing/archive/2007/07/13/1687992.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/sukhoeing/comments/commentRss/1687992.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=1687992</trackback:ping><description>After importing a managed class's tlb&amp;nbsp;in an unmanaged C++ application, you've a good chance to get several compling errors about _TypePtr. To work around this issue, You’ll need to add the path to mscorlib.tlb to %PATH%, or just copy it to the current directory. Type library dependencies are only resolved in the %PATH% including current directory, which is why mscorlib.tlb is not found. &lt;img src ="http://blog.csdn.net/sukhoeing/aggbug/1687992.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>陈锋</dc:creator><title>VB 2005 中用P/Invoke进行windows HOOK 的方法</title><link>http://blog.csdn.net/sukhoeing/archive/2007/06/29/1671603.aspx</link><pubDate>Fri, 29 Jun 2007 15:53:00 GMT</pubDate><guid>http://blog.csdn.net/sukhoeing/archive/2007/06/29/1671603.aspx</guid><wfw:comment>http://blog.csdn.net/sukhoeing/comments/1671603.aspx</wfw:comment><comments>http://blog.csdn.net/sukhoeing/archive/2007/06/29/1671603.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/sukhoeing/comments/commentRss/1671603.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=1671603</trackback:ping><description>Visual Basic.net 中用P/Invoke设置windows hook&lt;img src ="http://blog.csdn.net/sukhoeing/aggbug/1671603.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>陈锋</dc:creator><title>BE.P/Invoke.net addin for visual studio</title><link>http://blog.csdn.net/sukhoeing/archive/2007/06/23/1663839.aspx</link><pubDate>Sat, 23 Jun 2007 20:04:00 GMT</pubDate><guid>http://blog.csdn.net/sukhoeing/archive/2007/06/23/1663839.aspx</guid><wfw:comment>http://blog.csdn.net/sukhoeing/comments/1663839.aspx</wfw:comment><comments>http://blog.csdn.net/sukhoeing/archive/2007/06/23/1663839.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blog.csdn.net/sukhoeing/comments/commentRss/1663839.aspx</wfw:commentRss><trackback:ping>http://tb.blog.csdn.net/TrackBack.aspx?PostId=1663839</trackback:ping><description>&amp;nbsp;BE.pinvoke is the PINVOKE.NET Add-In for Visual Studio 2005. I failed getting the old PINVOKE Add-In to work with VS 2005, so i wrote my own from the scratch. The UI looks very similar to original PINVOKE.NET Addin for Visual Studio 2003 (1.0), but it is totally new designed and it takes advantage from the new features of the .NET Framework 2.0. Have fun inserting PInvoke signatures into your Visual Studio Project. BE.pinoke - Visual Studio 2005 的P/invoke插件。这个插件可以方便的在你的代码中插入Platform Invoke&lt;img src ="http://blog.csdn.net/sukhoeing/aggbug/1663839.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>