<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>clrinterop Release Rss Feed</title><link>http://www.codeplex.com/clrinterop/Release/ProjectReleases.aspx</link><description>clrinterop Release Rss Description</description><item><title>Updated Release: Type Library Importer in Managed Code (Dec 08, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=17579</link><description>&lt;div class="wikidoc"&gt;TLBIMP is a .NET SDK tool that creates an Interop assembly from a COM type library. This project is a managed code implementation of TLBIMP. We have released this tool so developers can see what TLBIMP does and if necessary extend the tool for their specific requirements, while this is the third Tlbimp release on CodePlex. &lt;br /&gt;&lt;br /&gt;A big feature is added to this release: Tlbimp output customization. With this feature, some special needs of importing convention can be handled when a type library is being imported by creating a configuration file in xml format, instead of leaving it later by disassembling an interop assembly to update the code. The current version supports the following configuration action:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;ChangeManagedName&lt;/b&gt;: To provide a tlb type with a customized managed name instead of the default one.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;ResolveTo&lt;/b&gt;: To resolve a tlb type to a user-specified managed type.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;AddAttribute&lt;/b&gt;: To add some customized attribute to the corresponding managed types of the tlb types.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;PreserveSig&lt;/b&gt;: To apply PreserveSig attribute to a managed function instead of [out, retval] parameters.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;ConvertTo&lt;/b&gt;: To convert a tlb function parameter to the user-specified managed signature.&lt;/li&gt;&lt;/ul&gt;
The new Tlbimp in the package accept the following command-line syntax to integrate the customized rule into its importing process:&lt;br /&gt;&lt;br /&gt;&amp;gt; tlbimp ATlb.tlb /config:AXMLConfigFile.xml&lt;br /&gt;&lt;br /&gt;A UI tool, &lt;b&gt;TlbimpRuleFileEditor&lt;/b&gt;, can be found in the package for customization purpose, which help to create a configuration file without requiring knowledge of xml configuration file syntax. More introduction can be found in the document attached with the project.&lt;br /&gt;&lt;br /&gt;The package also includes some tests, which can be used with &lt;b&gt;Tlbimp Regression Test Tool&lt;/b&gt; (attached in the package as well) to validate any updates made against the original source code. More information about this tool can be found in the document in the package.&lt;br /&gt;&lt;br /&gt;Other features introduced in the previous releases, are two command-line switches as the follows:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;/v2&lt;/b&gt;: When this switch is on, the Tlbimp applies new rules when importing native types so as to get the output more as expected result. The new rule in this release is to convert &lt;i&gt;VARIANT_BOOL&lt;/i&gt; in structures to &lt;i&gt;bool&lt;/i&gt; instead of &lt;i&gt;short&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;/PreserveSig&lt;/b&gt;: If this swtich is applied, the Tlbimp doesn't apply [out, retval] parameter transformation but adds &lt;i&gt;PreserveSigAttribute&lt;/i&gt; to the imported method.&lt;/li&gt;&lt;/ul&gt;
To get the help for the command-line tool, please type in &amp;quot;tlbimp /?&amp;quot; in the command line, or check MSDN document library for the features in .NET 3.5 SDK.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update&lt;/b&gt;: Ported some bug fixes from Tlbimp in .NET framework v4.0&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>YiZhang</author><pubDate>Tue, 08 Dec 2009 06:24:38 GMT</pubDate><guid isPermaLink="false">Updated Release: Type Library Importer in Managed Code (Dec 08, 2009) 20091208062438A</guid></item><item><title>Released: Type Library Importer in Managed Code (Dec 08, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=17579</link><description>&lt;div&gt;TLBIMP is a .NET SDK tool that creates an Interop assembly from a COM type library. This project is a managed code implementation of TLBIMP. We have released this tool so developers can see what TLBIMP does and if necessary extend the tool for their specific requirements, while this is the third Tlbimp release on CodePlex. &lt;br&gt;&lt;br&gt;A big feature is added to this release: Tlbimp output customization. With this feature, some special needs of importing convention can be handled when a type library is being imported by creating a configuration file in xml format, instead of leaving it later by disassembling an interop assembly to update the code. The current version supports the following configuration action:&lt;br&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;ChangeManagedName&lt;/b&gt;: To provide a tlb type with a customized managed name instead of the default one.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;ResolveTo&lt;/b&gt;: To resolve a tlb type to a user-specified managed type.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;AddAttribute&lt;/b&gt;: To add some customized attribute to the corresponding managed types of the tlb types.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;PreserveSig&lt;/b&gt;: To apply PreserveSig attribute to a managed function instead of [out, retval] parameters.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;ConvertTo&lt;/b&gt;: To convert a tlb function parameter to the user-specified managed signature.&lt;/li&gt;&lt;/ul&gt;
The new Tlbimp in the package accept the following command-line syntax to integrate the customized rule into its importing process:&lt;br&gt;&lt;br&gt;&amp;gt; tlbimp ATlb.tlb /config:AXMLConfigFile.xml&lt;br&gt;&lt;br&gt;A UI tool, &lt;b&gt;TlbimpRuleFileEditor&lt;/b&gt;, can be found in the package for customization purpose, which help to create a configuration file without requiring knowledge of xml configuration file syntax. More introduction can be found in the document attached with the project.&lt;br&gt;&lt;br&gt;The package also includes some tests, which can be used with &lt;b&gt;Tlbimp Regression Test Tool&lt;/b&gt; (attached in the package as well) to validate any updates made against the original source code. More information about this tool can be found in the document in the package.&lt;br&gt;&lt;br&gt;Other features introduced in the previous releases, are two command-line switches as the follows:&lt;br&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;/v2&lt;/b&gt;: When this switch is on, the Tlbimp applies new rules when importing native types so as to get the output more as expected result. The new rule in this release is to convert &lt;i&gt;VARIANT_BOOL&lt;/i&gt; in structures to &lt;i&gt;bool&lt;/i&gt; instead of &lt;i&gt;short&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;/PreserveSig&lt;/b&gt;: If this swtich is applied, the Tlbimp doesn't apply [out, retval] parameter transformation but adds &lt;i&gt;PreserveSigAttribute&lt;/i&gt; to the imported method.&lt;/li&gt;&lt;/ul&gt;
To get the help for the command-line tool, please type in &amp;quot;tlbimp /?&amp;quot; in the command line, or check MSDN document library for the features in .NET 3.5 SDK.&lt;br&gt;&lt;br&gt;&lt;b&gt;Update&lt;/b&gt;: Ported some bug fixes from Tlbimp in .NET framework v4.0&lt;/div&gt;&lt;div&gt;&lt;/div&gt;</description><author></author><pubDate>Tue, 08 Dec 2009 06:24:38 GMT</pubDate><guid isPermaLink="false">Released: Type Library Importer in Managed Code (Dec 08, 2009) 20091208062438A</guid></item><item><title>Updated Release: CustomQueryInterface Sample - IMarshal on WCF (Nov 12, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=35739</link><description>&lt;div class="wikidoc"&gt;CustomQueryInterface enables users to customize the default implementation of “standard” COM interfaces provided by CLR. We already released a &lt;a href="http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=32350" class="externalLink"&gt;sample&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; to demo customized IDispatch as well as aggregation between two managed objects.&lt;br /&gt;&lt;br /&gt;To further demo the power of CustomQueryInterface and the ability to use the .Net technology (WCF) within COM world, this sample targets the customization of IMarshal interface by using WCF.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd542707(VS.85).aspx" class="externalLink"&gt;IMarshal&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; enables a COM object to define and manage the marshaling of its interface pointers. On the other hand, WCF provides serialization facilities that enable loose coupling, which significantly eases the customization of IMarshal and makes it more flexible.&lt;br /&gt;&lt;br /&gt;In this sample, we provide three important things:
&lt;ul&gt;&lt;li&gt;A managed class acts as the COM component which also implements a WCF service.&lt;/li&gt;
&lt;li&gt;A managed class acts as the COM proxy which contains the WCF client.&lt;/li&gt;
&lt;li&gt;A program that demos the usage of the two classes above by passing the IUnknown pointer through the global stream.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please note that you need to open the solution as the administrator on Vista or Windows 7.&lt;br /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>yongtai</author><pubDate>Fri, 13 Nov 2009 07:39:43 GMT</pubDate><guid isPermaLink="false">Updated Release: CustomQueryInterface Sample - IMarshal on WCF (Nov 12, 2009) 20091113073943A</guid></item><item><title>Released: CustomQueryInterface Sample - IMarshal on WCF (Nov 12, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=35739</link><description>&lt;div&gt;CustomQueryInterface enables users to customize the default implementation of “standard” COM interfaces provided by CLR. We already released a &lt;a href="http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=32350"&gt;sample&lt;span&gt;&lt;/span&gt;&lt;/a&gt; to demo customized IDispatch as well as aggregation between two managed objects.&lt;br&gt;&lt;br&gt;To further demo the power of CustomQueryInterface and the ability to use the .Net technology (WCF) within COM world, this sample targets the customization of IMarshal interface by using WCF.&lt;br&gt;&lt;br&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd542707(VS.85).aspx"&gt;IMarshal&lt;span&gt;&lt;/span&gt;&lt;/a&gt; enables a COM object to define and manage the marshaling of its interface pointers. On the other hand, WCF provides serialization facilities that enable loose coupling, which significantly eases the customization of IMarshal and makes it more flexible.&lt;br&gt;&lt;br&gt;In this sample, we provide three important things:
&lt;ul&gt;&lt;li&gt;A managed class acts as the COM component which also implements a WCF service.&lt;/li&gt;
&lt;li&gt;A managed class acts as the COM proxy which contains the WCF client.&lt;/li&gt;
&lt;li&gt;A program that demos the usage of the two classes above by passing the IUnknown pointer through the global stream.&lt;/li&gt;&lt;/ul&gt;
&lt;br&gt;Please note that you need to open the solution as the administrator on Vista or Windows 7.&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;</description><author></author><pubDate>Fri, 13 Nov 2009 07:39:43 GMT</pubDate><guid isPermaLink="false">Released: CustomQueryInterface Sample - IMarshal on WCF (Nov 12, 2009) 20091113073943A</guid></item><item><title>Updated Release: CustomQueryInterface Sample - IMarshal on WCF (Nov 12, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=35739</link><description>&lt;div class="wikidoc"&gt;CustomQueryInterface enables users to customize the default implementation of “standard” COM interfaces provided by CLR. We already released a &lt;a href="http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=32350" class="externalLink"&gt;sample&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; to demo customized IDispatch as well as aggregation between two managed objects.&lt;br /&gt;&lt;br /&gt;To further demo the power of custom QI and the ability to use the .net technology (WCF) within COM world, this sample targets on the customization of IMarshal interface by using WCF.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd542707(VS.85).aspx" class="externalLink"&gt;IMarshal&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt; enables a COM object to define and manage the marshaling of its interface pointers. On the other hand, WCF provides serialization facilities that enable loose coupling, which significantly eases the customization of IMarshal and makes it more flexible.&lt;br /&gt;&lt;br /&gt;In this sample, we provide three important things:
&lt;ul&gt;&lt;li&gt;A managed class acts as the COM component which also implements a WCF service.&lt;/li&gt;
&lt;li&gt;A managed class acts as the COM proxy which contains the WCF client.&lt;/li&gt;
&lt;li&gt;A program that demos the usage of the two classes above by passing the IUnknown pointer through the global stream.&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;Please note that you need to open the solution as the administrator on Vista or win 7.&lt;br /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>yongtai</author><pubDate>Fri, 13 Nov 2009 07:25:14 GMT</pubDate><guid isPermaLink="false">Updated Release: CustomQueryInterface Sample - IMarshal on WCF (Nov 12, 2009) 20091113072514A</guid></item><item><title>Updated Release: CustomQueryInterface - IDispatch and Aggregation (Sep 10, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=32350</link><description>&lt;div class="wikidoc"&gt;In the CLR v4 there is a new interface called &lt;b&gt;ICustomQueryInterface&lt;/b&gt;. This very cool new feature will enable developers to provide their own managed implementation of custom and standard COM interfaces (except &lt;b&gt;IUnknown&lt;/b&gt;). One interesting scenario, which will be illustrated in the sample below, is dynamic managed aggregation with a flexible implementation of &lt;b&gt;IDispatch&lt;/b&gt;. &lt;br /&gt;&lt;br /&gt;In this sample, we will show an implementation of &lt;b&gt;ICustomQueryInterface&lt;/b&gt;  through
&lt;ul&gt;&lt;li&gt;a managed &lt;b&gt;IDispatch&lt;/b&gt; implementation that overrides the default &lt;b&gt;IDispatch&lt;/b&gt; implementation by the CLR&lt;/li&gt;
&lt;li&gt;a managed COM aggregation system where both Outer and Inner objects are managed objects&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;&lt;b&gt;Note:&lt;/b&gt; This a VS2010 Beta2 solution. Please make sure you install VS2010 Beta2 or later before you open the sample. Use with VS2010 Beta1 or earlier is not supported.&lt;br /&gt;&lt;a href="http://Dev10 Beta2 download" class="externalLink"&gt;Dev10 Beta2 download&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>liji</author><pubDate>Fri, 11 Sep 2009 05:04:17 GMT</pubDate><guid isPermaLink="false">Updated Release: CustomQueryInterface - IDispatch and Aggregation (Sep 10, 2009) 20090911050417A</guid></item><item><title>Released: CustomQueryInterface - IDispatch and Aggregation (Sep 10, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=32350</link><description>&lt;div&gt;In the CLR v4 there is a new interface called &lt;b&gt;ICustomQueryInterface&lt;/b&gt;. This very cool new feature will enable developers to provide their own managed implementation of custom and standard COM interfaces (except &lt;b&gt;IUnknown&lt;/b&gt;). One interesting scenario, which will be illustrated in the sample below, is dynamic managed aggregation with a flexible implementation of &lt;b&gt;IDispatch&lt;/b&gt;. &lt;br&gt;&lt;br&gt;In this sample, we will show an implementation of &lt;b&gt;ICustomQueryInterface&lt;/b&gt;  through
&lt;ul&gt;&lt;li&gt;a managed &lt;b&gt;IDispatch&lt;/b&gt; implementation that overrides the default &lt;b&gt;IDispatch&lt;/b&gt; implementation by the CLR&lt;/li&gt;
&lt;li&gt;a managed COM aggregation system where both Outer and Inner objects are managed objects&lt;/li&gt;&lt;/ul&gt;
&lt;br&gt;&lt;b&gt;Note:&lt;/b&gt; This a VS2010 Beta2 solution. Please make sure you install VS2010 Beta2 or later before you open the sample. Use with VS2010 Beta1 or earlier is not supported.&lt;br&gt;&lt;a href="http://Dev10 Beta2 download"&gt;Dev10 Beta2 download&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;</description><author></author><pubDate>Fri, 11 Sep 2009 05:04:17 GMT</pubDate><guid isPermaLink="false">Released: CustomQueryInterface - IDispatch and Aggregation (Sep 10, 2009) 20090911050417A</guid></item><item><title>Updated Release: IL Stub Diagnostics Tool (Jul 13, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=29745</link><description>&lt;div class="wikidoc"&gt;Intermediate Language(IL) Stubs is not a brand new feature of the CLR. With the release of .NET v4, however, IL stubs for x86 and x64 will be consistent. Moreover, event tracing on Windows (ETW) will be enabled to aide developers in diagnosing issues with IL stubs.&lt;br /&gt;&lt;br /&gt;IL stubs are generated on the fly by the CLR and handle the marshalling and invocation of the target method. Since the stubs are dynamically generated, it is generally difficult for users to investigate or troubleshoot issues in the generated code---especially when it is necessary to determine if the appropriate managed/native signatures are being invoked!&lt;br /&gt;&lt;br /&gt;The &lt;b&gt;IL Stub Diagnostic&lt;/b&gt; tool was created to ease the interop debugging experience. It is a real-time monitor which shows the details of every IL stub generated by the CLR in a given process. For each stub, the tool currently displays its IL code as well as the signature of the managed/native methods. It also provides a filter for searching on the desired stub(s) and allows the user to navigate between blocks in a stub.&lt;br /&gt;&lt;br /&gt;This release is supported on Windows Vista+. Further, we plan on releasing enhancements of the tool during the Visual Studio 2010 Beta period. Stay tuned!!&lt;br /&gt;&lt;br /&gt;This release include the following contents:
&lt;ul&gt;&lt;li&gt;&lt;b&gt;IL Stub Diagnostic&lt;/b&gt; binary and sources&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Tutorial&lt;/b&gt; to demo the use of the IL Stub Diagnostic tool&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Sample&lt;/b&gt; PInvoke program and sources used in tutorial&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;We've also post two blogs about IL Stub:
&lt;ul&gt;&lt;li&gt;&lt;a href="http://blogs.msdn.com/clrteam/archive/2009/08/26/il-stub-diagnostic-tool.aspx" class="externalLink"&gt;IL Stub Diagnostic Tool&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/clrteam/archive/2009/08/10/improvements-to-interop-marshaling-in-v4-il-stubs-everywhere.aspx" class="externalLink"&gt;Improvements to Interop Marshaling in V4: IL Stubs Everywhere&lt;span class="externalLinkIcon"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>yongtai</author><pubDate>Fri, 04 Sep 2009 05:42:22 GMT</pubDate><guid isPermaLink="false">Updated Release: IL Stub Diagnostics Tool (Jul 13, 2009) 20090904054222A</guid></item><item><title>Released: IL Stub Diagnostics Tool (Jul 13, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=29745</link><description>&lt;div&gt;Intermediate Language(IL) Stubs is not a brand new feature of the CLR. With the release of .NET v4, however, IL stubs for x86 and x64 will be consistent. Moreover, event tracing on Windows (ETW) will be enabled to aide developers in diagnosing issues with IL stubs.&lt;br&gt;&lt;br&gt;IL stubs are generated on the fly by the CLR and handle the marshalling and invocation of the target method. Since the stubs are dynamically generated, it is generally difficult for users to investigate or troubleshoot issues in the generated code---especially when it is necessary to determine if the appropriate managed/native signatures are being invoked!&lt;br&gt;&lt;br&gt;The &lt;b&gt;IL Stub Diagnostic&lt;/b&gt; tool was created to ease the interop debugging experience. It is a real-time monitor which shows the details of every IL stub generated by the CLR in a given process. For each stub, the tool currently displays its IL code as well as the signature of the managed/native methods. It also provides a filter for searching on the desired stub(s) and allows the user to navigate between blocks in a stub.&lt;br&gt;&lt;br&gt;This release is supported on Windows Vista+. Further, we plan on releasing enhancements of the tool during the Visual Studio 2010 Beta period. Stay tuned!!&lt;br&gt;&lt;br&gt;This release include the following contents:
&lt;ul&gt;&lt;li&gt;&lt;b&gt;IL Stub Diagnostic&lt;/b&gt; binary and sources&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Tutorial&lt;/b&gt; to demo the use of the IL Stub Diagnostic tool&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Sample&lt;/b&gt; PInvoke program and sources used in tutorial&lt;/li&gt;&lt;/ul&gt;
&lt;br&gt;We've also post two blogs about IL Stub:
&lt;ul&gt;&lt;li&gt;&lt;a href="http://blogs.msdn.com/clrteam/archive/2009/08/26/il-stub-diagnostic-tool.aspx"&gt;IL Stub Diagnostic Tool&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/clrteam/archive/2009/08/10/improvements-to-interop-marshaling-in-v4-il-stubs-everywhere.aspx"&gt;Improvements to Interop Marshaling in V4: IL Stubs Everywhere&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;</description><author></author><pubDate>Fri, 04 Sep 2009 05:42:22 GMT</pubDate><guid isPermaLink="false">Released: IL Stub Diagnostics Tool (Jul 13, 2009) 20090904054222A</guid></item><item><title>Updated Release: IL Stub Diagnostics Tool (Jul 13, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=29745</link><description>&lt;div class="wikidoc"&gt;Intermediate Language(IL) Stubs is not a brand new feature of the CLR. With the release of .NET v4, however, IL stubs for x86 and x64 will be consistent. Moreover, event tracing on Windows (ETW) will be enabled to aide developers in diagnosing issues with IL stubs.&lt;br /&gt;&lt;br /&gt;IL stubs are generated on the fly by the CLR and handle the marshalling and invocation of the target method. Since the stubs are dynamically generated, it is generally difficult for users to investigate or troubleshoot issues in the generated code---especially when it is necessary to determine if the appropriate managed/native signatures are being invoked!&lt;br /&gt;&lt;br /&gt;The &lt;b&gt;IL Stub Diagnostic&lt;/b&gt; tool was created to ease the interop debugging experience. It is a real-time monitor which shows the details of every IL stub generated by the CLR in a given process. For each stub, the tool currently displays its IL code as well as the signature of the managed/native methods. It also provides a filter for searching on the desired stub(s) and allows the user to navigate between blocks in a stub.&lt;br /&gt;&lt;br /&gt;This release is supported on Windows Vista+. Further, we plan on releasing enhancements of the tool during the Visual Studio 2010 Beta period. Stay tuned!!&lt;br /&gt;&lt;br /&gt;This release include the following contents:
&lt;ul&gt;&lt;li&gt;&lt;b&gt;IL Stub Diagnostic&lt;/b&gt; binary and sources&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Tutorial&lt;/b&gt; to demo the use of the IL Stub Diagnostic tool&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Sample&lt;/b&gt; PInvoke program and sources used in tutorial&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;We've also post two blogs about IL Stub:
&lt;ul&gt;&lt;li&gt;&lt;a href="http://clrinterop.codeplex.com/Wiki/View.aspx?title=http%3a%2f%2fblogs.msdn.com%2fclrteam%2farchive%2f2009%2f08%2f26%2fil-stub-diagnostic-tool.aspx"&gt;ur&amp;#58;IL Stub Diagnostic Tool&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://clrinterop.codeplex.com/Wiki/View.aspx?title=http%3a%2f%2fblogs.msdn.com%2fclrteam%2farchive%2f2009%2f08%2f10%2fimprovements-to-interop-marshaling-in-v4-il-stubs-everywhere.aspx"&gt;ur&amp;#58;Improvements to Interop Marshaling in V4&amp;#58; IL Stubs Everywhere&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>yongtai</author><pubDate>Fri, 04 Sep 2009 05:41:12 GMT</pubDate><guid isPermaLink="false">Updated Release: IL Stub Diagnostics Tool (Jul 13, 2009) 20090904054112A</guid></item><item><title>Updated Release: IL Stub Diagnostics Tool (Jul 13, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=29745</link><description>&lt;div class="wikidoc"&gt;Intermediate Language(IL) Stubs is not a brand new feature of the CLR. With the release of .NET v4, however, IL stubs for x86 and x64 will be consistent. Moreover, event tracing on Windows (ETW) will be enabled to aide developers in diagnosing issues with IL stubs.&lt;br /&gt;&lt;br /&gt;IL stubs are generated on the fly by the CLR and handle the marshalling and invocation of the target method. Since the stubs are dynamically generated, it is generally difficult for users to investigate or troubleshoot issues in the generated code---especially when it is necessary to determine if the appropriate managed/native signatures are being invoked!&lt;br /&gt;&lt;br /&gt;The &lt;b&gt;IL Stub Diagnostic&lt;/b&gt; tool was created to ease the interop debugging experience. It is a real-time monitor which shows the details of every IL stub generated by the CLR in a given process. For each stub, the tool currently displays its IL code as well as the signature of the managed/native methods. It also provides a filter for searching on the desired stub(s) and allows the user to navigate between blocks in a stub.&lt;br /&gt;&lt;br /&gt;This release is supported on Windows Vista+. On Windows 7, however, the process name cannot be displayed. We will fix this as soon as possible---certainly by the time Windows 7 is released. Further, we plan on releasing enhancements of the tool during the Visual Studio 2010 Beta period. Stay tuned!!&lt;br /&gt;&lt;br /&gt;This release include the following contents:
&lt;ul&gt;&lt;li&gt;&lt;b&gt;IL Stub Diagnostic&lt;/b&gt; binary and sources&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Tutorial&lt;/b&gt; to demo the use of the IL Stub Diagnostic tool&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Sample&lt;/b&gt; PInvoke program and sources used in tutorial&lt;/li&gt;&lt;/ul&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>yongtai</author><pubDate>Tue, 14 Jul 2009 02:28:02 GMT</pubDate><guid isPermaLink="false">Updated Release: IL Stub Diagnostics Tool (Jul 13, 2009) 20090714022802A</guid></item><item><title>Released: IL Stub Diagnostics Tool (Jul 13, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=29745</link><description>&lt;div&gt;Intermediate Language(IL) Stubs is not a brand new feature of the CLR. With the release of .NET v4, however, IL stubs for x86 and x64 will be consistent. Moreover, event tracing on Windows (ETW) will be enabled to aide developers in diagnosing issues with IL stubs.&lt;br&gt;&lt;br&gt;IL stubs are generated on the fly by the CLR and handle the marshalling and invocation of the target method. Since the stubs are dynamically generated, it is generally difficult for users to investigate or troubleshoot issues in the generated code---especially when it is necessary to determine if the appropriate managed/native signatures are being invoked!&lt;br&gt;&lt;br&gt;The &lt;b&gt;IL Stub Diagnostic&lt;/b&gt; tool was created to ease the interop debugging experience. It is a real-time monitor which shows the details of every IL stub generated by the CLR in a given process. For each stub, the tool currently displays its IL code as well as the signature of the managed/native methods. It also provides a filter for searching on the desired stub(s) and allows the user to navigate between blocks in a stub.&lt;br&gt;&lt;br&gt;This release is supported on Windows Vista+. On Windows 7, however, the process name cannot be displayed. We will fix this as soon as possible---certainly by the time Windows 7 is released. Further, we plan on releasing enhancements of the tool during the Visual Studio 2010 Beta period. Stay tuned!!&lt;br&gt;&lt;br&gt;This release include the following contents:
&lt;ul&gt;&lt;li&gt;&lt;b&gt;IL Stub Diagnostic&lt;/b&gt; binary and sources&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Tutorial&lt;/b&gt; to demo the use of the IL Stub Diagnostic tool&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Sample&lt;/b&gt; PInvoke program and sources used in tutorial&lt;/li&gt;&lt;/ul&gt;
&lt;/div&gt;&lt;div&gt;&lt;/div&gt;</description><author></author><pubDate>Tue, 14 Jul 2009 02:28:02 GMT</pubDate><guid isPermaLink="false">Released: IL Stub Diagnostics Tool (Jul 13, 2009) 20090714022802A</guid></item><item><title>Updated Release: Type Library Importer in Managed Code (Mar 09, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=17579</link><description>&lt;div&gt;
TLBIMP is a .NET SDK tool that creates an Interop assembly from a COM type library. This project is a managed code implementation of TLBIMP. We have released this tool so developers can see what TLBIMP does and if necessary extend the tool for their specific requirements, while this is the third Tlbimp release on CodePlex. &lt;br&gt; &lt;br&gt;A big feature is added to this release: Tlbimp output customization. With this feature, some special needs of importing convention can be handled when a type library is being imported by creating a configuration file in xml format, instead of leaving it later by disassembling an interop assembly to update the code. The current version supports the following configuration action:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;ChangeManagedName&lt;/b&gt;: To provide a tlb type with a customized managed name instead of the default one.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ResolveTo&lt;/b&gt;: To resolve a tlb type to a user-specified managed type.&lt;/li&gt;&lt;li&gt;&lt;b&gt;AddAttribute&lt;/b&gt;: To add some customized attribute to the corresponding managed types of the tlb types.&lt;/li&gt;&lt;li&gt;&lt;b&gt;PreserveSig&lt;/b&gt;: To apply PreserveSig attribute to a managed function instead of [out, retval] parameters.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ConvertTo&lt;/b&gt;: To convert a tlb function parameter to the user-specified managed signature.&lt;/li&gt;
&lt;/ul&gt;The new Tlbimp in the package accept the following command-line syntax to integrate the customized rule into its importing process:&lt;br&gt; &lt;br&gt;&amp;gt; tlbimp ATlb.tlb /config:AXMLConfigFile.xml&lt;br&gt; &lt;br&gt;A UI tool, &lt;b&gt;TlbimpRuleFileEditor&lt;/b&gt;, can be found in the package for customization purpose, which help to create a configuration file without requiring knowledge of xml configuration file syntax. More introduction can be found in the document attached with the project.&lt;br&gt; &lt;br&gt;The package also includes some tests, which can be used with &lt;b&gt;Tlbimp Regression Test Tool&lt;/b&gt; (attached in the package as well) to validate any updates made against the original source code. More information about this tool can be found in the document in the package.&lt;br&gt; &lt;br&gt;Other features introduced in the previous releases, are two command-line switches as the follows:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;/v2&lt;/b&gt;: When this switch is on, the Tlbimp applies new rules when importing native types so as to get the output more as expected result. The new rule in this release is to convert &lt;i&gt;VARIANT_BOOL&lt;/i&gt; in structures to &lt;i&gt;bool&lt;/i&gt; instead of &lt;i&gt;short&lt;/i&gt;.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/PreserveSig&lt;/b&gt;: If this swtich is applied, the Tlbimp doesn't apply [out, retval] parameter transformation but adds &lt;i&gt;PreserveSigAttribute&lt;/i&gt; to the imported method.&lt;/li&gt;
&lt;/ul&gt;To get the help for the command-line tool, please type in &amp;quot;tlbimp /?&amp;quot; in the command line, or check MSDN document library for the features in .NET 3.5 SDK.&lt;br&gt;
&lt;/div&gt;</description><author>YiZhang</author><pubDate>Fri, 13 Mar 2009 05:56:39 GMT</pubDate><guid isPermaLink="false">Updated Release: Type Library Importer in Managed Code (Mar 09, 2009) 20090313055639A</guid></item><item><title>Released: Type Library Importer in Managed Code (Mar 09, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=17579</link><description>&lt;div&gt;
TLBIMP is a .NET SDK tool that creates an Interop assembly from a COM type library. This project is a managed code implementation of TLBIMP. We have released this tool so developers can see what TLBIMP does and if necessary extend the tool for their specific requirements, while this is the third Tlbimp release on CodePlex. &lt;br&gt; &lt;br&gt;A big feature is added to this release: Tlbimp output customization. With this feature, some special needs of importing convention can be handled when a type library is being imported by creating a configuration file in xml format, instead of leaving it later by disassembling an interop assembly to update the code. The current version supports the following configuration action:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;ChangeManagedName&lt;/b&gt;: To provide a tlb type with a customized managed name instead of the default one.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ResolveTo&lt;/b&gt;: To resolve a tlb type to a user-specified managed type.&lt;/li&gt;&lt;li&gt;&lt;b&gt;AddAttribute&lt;/b&gt;: To add some customized attribute to the corresponding managed types of the tlb types.&lt;/li&gt;&lt;li&gt;&lt;b&gt;PreserveSig&lt;/b&gt;: To apply PreserveSig attribute to a managed function instead of [out, retval] parameters.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ConvertTo&lt;/b&gt;: To convert a tlb function parameter to the user-specified managed signature.&lt;/li&gt;
&lt;/ul&gt;The new Tlbimp in the package accept the following command-line syntax to integrate the customized rule into its importing process:&lt;br&gt; &lt;br&gt;&amp;gt; tlbimp ATlb.tlb /config:AXMLConfigFile.xml&lt;br&gt; &lt;br&gt;A UI tool, &lt;b&gt;TlbimpRuleFileEditor&lt;/b&gt;, can be found in the package for customization purpose, which help to create a configuration file without requiring knowledge of xml configuration file syntax. More introduction can be found in the document attached with the project.&lt;br&gt; &lt;br&gt;The package also includes some tests, which can be used with &lt;b&gt;Tlbimp Regression Test Tool&lt;/b&gt; (attached in the package as well) to validate any updates made against the original source code. More information about this tool can be found in the document in the package.&lt;br&gt; &lt;br&gt;Other features introduced in the previous releases, are two command-line switches as the follows:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;/v2&lt;/b&gt;: When this switch is on, the Tlbimp applies new rules when importing native types so as to get the output more as expected result. The new rule in this release is to convert &lt;i&gt;VARIANT_BOOL&lt;/i&gt; in structures to &lt;i&gt;bool&lt;/i&gt; instead of &lt;i&gt;short&lt;/i&gt;.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/PreserveSig&lt;/b&gt;: If this swtich is applied, the Tlbimp doesn't apply [out, retval] parameter transformation but adds &lt;i&gt;PreserveSigAttribute&lt;/i&gt; to the imported method.&lt;/li&gt;
&lt;/ul&gt;To get the help for the command-line tool, please type in &amp;quot;tlbimp /?&amp;quot; in the command line, or check MSDN document library for the features in .NET 3.5 SDK.&lt;br&gt;
&lt;/div&gt;</description><author></author><pubDate>Fri, 13 Mar 2009 05:56:39 GMT</pubDate><guid isPermaLink="false">Released: Type Library Importer in Managed Code (Mar 09, 2009) 20090313055639A</guid></item><item><title>Updated Release: Type Library Importer in Managed Code (Mar 09, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=17579</link><description>&lt;div&gt;
TLBIMP is a .NET SDK tool that creates an Interop assembly from a COM type library. This project is a managed code implementation of TLBIMP. We have released this tool so developers can see what TLBIMP does and if necessary extend the tool for their specific requirements, while this is the third Tlbimp release on CodePlex. &lt;br&gt; &lt;br&gt;A big feature is added to this release: Tlbimp output customization. With this feature, some special needs of importing convention can be handled when a type library is being imported by creating a configuration file in xml format, instead of leaving it later by disassembling an interop assembly to update the code. The current version supports the following configuration action:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;ChangeManagedName&lt;/b&gt;: To provide a tlb type with a customized managed name instead of the default one.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ResolveTo&lt;/b&gt;: To resolve a tlb type to a user-specified managed type.&lt;/li&gt;&lt;li&gt;&lt;b&gt;AddAttribute&lt;/b&gt;: To add some customized attribute to the corresponding managed types of the tlb types.&lt;/li&gt;&lt;li&gt;&lt;b&gt;PreserveSig&lt;/b&gt;: To apply PreserveSig attribute to a managed function instead of [out, retval] parameters.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ConvertTo&lt;/b&gt;: To convert a tlb function parameter to the user-specified managed signature.&lt;/li&gt;
&lt;/ul&gt;The new Tlbimp in the package accept the following command-line syntax to integrate the customized rule into its importing process:&lt;br&gt; &lt;br&gt;&amp;gt; tlbimp ATlb.tlb /config:AXMLConfigFile.xml&lt;br&gt; &lt;br&gt;A UI tool, &lt;b&gt;TlbimpRuleFileEditor&lt;/b&gt;, can be found in the package for customization purpose, which help to create a configuration file without requiring knowledge of xml configuration file syntax. More introduction can be found in the document attached with the project.&lt;br&gt; &lt;br&gt;The package also includes some tests, which can be used with &lt;b&gt;Tlbimp Regression Test Tool&lt;/b&gt; (attached in the package as well) to validate any updates made against the original source code. More information about this tool can be found in the document in the package.&lt;br&gt; &lt;br&gt;Other features introduced in the previous releases, are two command-line switches as the follows:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;/v2&lt;/b&gt;: When this switch is on, the Tlbimp applies new rules when importing native types so as to get the output more as expected result. The new rule in this release is to convert &lt;i&gt;VARIANT_BOOL&lt;/i&gt; in structures to &lt;i&gt;bool&lt;/i&gt; instead of &lt;i&gt;short&lt;/i&gt;.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/PreserveSig&lt;/b&gt;: If this swtich is applied, the Tlbimp doesn't apply [out, retval] parameter transformation but adds &lt;i&gt;PreserveSigAttribute&lt;/i&gt; to the imported method.&lt;/li&gt;
&lt;/ul&gt;To get the help for the command-line tool, please type in &amp;quot;tlbimp /?&amp;quot; in the command line, or check MSDN document library for the features in .NET 3.5 SDK.&lt;br&gt;
&lt;/div&gt;</description><author>XiaoyingGuo</author><pubDate>Mon, 09 Mar 2009 09:49:38 GMT</pubDate><guid isPermaLink="false">Updated Release: Type Library Importer in Managed Code (Mar 09, 2009) 20090309094938A</guid></item><item><title>Released: Type Library Importer in Managed Code (Mar 09, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=17579</link><description>&lt;div&gt;
TLBIMP is a .NET SDK tool that creates an Interop assembly from a COM type library. This project is a managed code implementation of TLBIMP. We have released this tool so developers can see what TLBIMP does and if necessary extend the tool for their specific requirements, while this is the third Tlbimp release on CodePlex. &lt;br&gt; &lt;br&gt;A big feature is added to this release: Tlbimp output customization. With this feature, some special needs of importing convention can be handled when a type library is being imported by creating a configuration file in xml format, instead of leaving it later by disassembling an interop assembly to update the code. The current version supports the following configuration action:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;ChangeManagedName&lt;/b&gt;: To provide a tlb type with a customized managed name instead of the default one.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ResolveTo&lt;/b&gt;: To resolve a tlb type to a user-specified managed type.&lt;/li&gt;&lt;li&gt;&lt;b&gt;AddAttribute&lt;/b&gt;: To add some customized attribute to the corresponding managed types of the tlb types.&lt;/li&gt;&lt;li&gt;&lt;b&gt;PreserveSig&lt;/b&gt;: To apply PreserveSig attribute to a managed function instead of [out, retval] parameters.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ConvertTo&lt;/b&gt;: To convert a tlb function parameter to the user-specified managed signature.&lt;/li&gt;
&lt;/ul&gt;The new Tlbimp in the package accept the following command-line syntax to integrate the customized rule into its importing process:&lt;br&gt; &lt;br&gt;&amp;gt; tlbimp ATlb.tlb /config:AXMLConfigFile.xml&lt;br&gt; &lt;br&gt;A UI tool, &lt;b&gt;TlbimpRuleFileEditor&lt;/b&gt;, can be found in the package for customization purpose, which help to create a configuration file without requiring knowledge of xml configuration file syntax. More introduction can be found in the document attached with the project.&lt;br&gt; &lt;br&gt;The package also includes some tests, which can be used with &lt;b&gt;Tlbimp Regression Test Tool&lt;/b&gt; (attached in the package as well) to validate any updates made against the original source code. More information about this tool can be found in the document in the package.&lt;br&gt; &lt;br&gt;Other features introduced in the previous releases, are two command-line switches as the follows:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;/v2&lt;/b&gt;: When this switch is on, the Tlbimp applies new rules when importing native types so as to get the output more as expected result. The new rule in this release is to convert &lt;i&gt;VARIANT_BOOL&lt;/i&gt; in structures to &lt;i&gt;bool&lt;/i&gt; instead of &lt;i&gt;short&lt;/i&gt;.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/PreserveSig&lt;/b&gt;: If this swtich is applied, the Tlbimp doesn't apply [out, retval] parameter transformation but adds &lt;i&gt;PreserveSigAttribute&lt;/i&gt; to the imported method.&lt;/li&gt;
&lt;/ul&gt;To get the help for the command-line tool, please type in &amp;quot;tlbimp /?&amp;quot; in the command line, or check MSDN document library for the features in .NET 3.5 SDK.&lt;br&gt;
&lt;/div&gt;</description><author></author><pubDate>Mon, 09 Mar 2009 09:49:38 GMT</pubDate><guid isPermaLink="false">Released: Type Library Importer in Managed Code (Mar 09, 2009) 20090309094938A</guid></item><item><title>Updated Release: Type Library Importer in Managed Code (Mar 09, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=17579</link><description>&lt;div&gt;
TLBIMP is a .NET SDK tool that creates an Interop assembly from a COM type library. This project is a managed code implementation of TLBIMP. We have released this tool so developers can see what TLBIMP does and if necessary extend the tool for their specific requirements, while this is the third Tlbimp release on CodePlex. &lt;br&gt; &lt;br&gt;A big feature is added to this release: Tlbimp output customization. With this feature, some special needs of importing convention can be handled when a type library is being imported by creating a configuration file in xml format, instead of leaving it later by disassembling an interop assembly to update the code. The current version supports the following configuration action:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;ChangeManagedName&lt;/b&gt;: To provide a tlb type with a customized managed name instead of the default one.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ResolveTo&lt;/b&gt;: To resolve a tlb type to a user-specified managed type.&lt;/li&gt;&lt;li&gt;&lt;b&gt;AddAttribute&lt;/b&gt;: To add some customized attribute to the corresponding managed types of the tlb types.&lt;/li&gt;&lt;li&gt;&lt;b&gt;PreserveSig&lt;/b&gt;: To apply PreserveSig attribute to a managed function instead of [out, retval] parameters.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ConvertTo&lt;/b&gt;: To convert a tlb function parameter to the user-specified managed signature.&lt;/li&gt;
&lt;/ul&gt;The new Tlbimp in the package accept the following command-line syntax to integrate the customized rule into its importing process:&lt;br&gt; &lt;br&gt;&amp;gt; tlbimp ATlb.tlb /config:AXMLConfigFile.xml&lt;br&gt; &lt;br&gt;A UI tool, &lt;b&gt;TlbimpRuleFileEditor&lt;/b&gt;, can be found in the package for customization purpose, which help to create a configuration file without requiring knowledge of xml configuration file syntax. More introduction can be found in the document attached with the project.&lt;br&gt; &lt;br&gt;The package also includes some tests, which can be used with &lt;b&gt;Tlbimp Regression Test Tool&lt;/b&gt; (attached in the package as well) to validate any updates made against the original source code. More information about this tool can be found in the document in the package.&lt;br&gt; &lt;br&gt;Other features introduced in the previous releases, are two command-line switches as the follows:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;/v2&lt;/b&gt;: When this switch is on, the Tlbimp applies new rules when importing native types so as to get the output more as expected result. The new rule in this release is to convert &lt;i&gt;VARIANT_BOOL&lt;/i&gt; in structures to &lt;i&gt;bool&lt;/i&gt; instead of &lt;i&gt;short&lt;/i&gt;.&lt;/li&gt;&lt;li&gt;&lt;b&gt;/PreserveSig&lt;/b&gt;: If this swtich is applied, the Tlbimp doesn't apply [out, retval] parameter transformation but adds &lt;i&gt;PreserveSigAttribute&lt;/i&gt; to the imported method.&lt;/li&gt;
&lt;/ul&gt;To get the help for the command-line tool, please type in &amp;quot;tlbimp /?&amp;quot; in the command line, or check MSDN document library for the features in .NET 3.5 SDK.&lt;br&gt;
&lt;/div&gt;</description><author>XiaoyingGuo</author><pubDate>Mon, 09 Mar 2009 09:34:21 GMT</pubDate><guid isPermaLink="false">Updated Release: Type Library Importer in Managed Code (Mar 09, 2009) 20090309093421A</guid></item><item><title>Updated Release: Type Library Importer in Managed Code (Mar 09, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=17579</link><description>&lt;div&gt;
TLBIMP is a .NET SDK tool that creates an Interop assembly from a COM type library. This project is a managed code implementation of TLBIMP. We have released this tool so developers can see what TLBIMP does and if necessary extend the tool for their specific requirements, while this is the third Tlbimp release on CodePlex. &lt;br&gt; &lt;br&gt;A big feature is added to this release: Tlbimp output customization. With this feature, some special needs of importing convention can be handled when a type library is being imported by creating a configuration file in xml format, instead of leaving it later by disassembling an interop assembly to update the code. The current version supports the following configuration action:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;ChangeManagedName&lt;/b&gt;: To provide a tlb type with a customized managed name instead of the default one.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ResolveTo&lt;/b&gt;: To resolve a tlb type to a user-specified managed type.&lt;/li&gt;&lt;li&gt;&lt;b&gt;AddAttribute&lt;/b&gt;: To add some customized attribute to the corresponding managed types of the tlb types.&lt;/li&gt;&lt;li&gt;&lt;b&gt;PreserveSig&lt;/b&gt;: To apply PreserveSig attribute to a managed function instead of [out, retval] parameters.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ConvertTo&lt;/b&gt;: To convert a tlb function parameter to the user-specified managed signature.&lt;/li&gt;
&lt;/ul&gt;The new Tlbimp in the package accept the following command-line syntax to integrate the customized rule into its importing process:&lt;br&gt; &lt;br&gt;&amp;gt; tlbimp ATlb.tlb /config:AXMLConfigFile.xml&lt;br&gt; &lt;br&gt;A UI tool, &lt;b&gt;TlbimpRuleFileEditor&lt;/b&gt;, can be found in the package for customization purpose, which help to create a configuration file without requiring knowledge of xml configuration file syntax. More introduction can be found in the document attached with the project.&lt;br&gt; &lt;br&gt;The package also includes some tests, which can be used with &lt;b&gt;Tlbimp Regression Test Tool&lt;/b&gt; (attached in the package as well) to validate any updates made against the original source code. More information about this tool can be found in the document in the package.&lt;br&gt; &lt;br&gt;Other features introduced in the previous releases, are two command-line switches as the follows:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;/v2&lt;/b&gt;: When this switch is on, the Tlbimp applies new rules when importing native types so as to get the output more as expected result. The new rule in this release is to convert &lt;i&gt;VARIANT_BOOL&lt;/i&gt; in structures to &lt;i&gt;bool&lt;/i&gt; instead of &lt;i&gt;short&lt;/i&gt;.&lt;/li&gt;
&lt;/ul&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;/PreserveSig&lt;/b&gt;: If this swtich is applied, the Tlbimp doesn't apply [out, retval] parameter transformation but adds &lt;i&gt;PreserveSigAttribute&lt;/i&gt; to the imported method.&lt;/li&gt;
&lt;/ul&gt;To get the help for the command-line tool, please type in &amp;quot;tlbimp /?&amp;quot; in the command line, or check MSDN document library for the features in .NET 3.5 SDK.&lt;br&gt;
&lt;/div&gt;</description><author>XiaoyingGuo</author><pubDate>Mon, 09 Mar 2009 09:33:51 GMT</pubDate><guid isPermaLink="false">Updated Release: Type Library Importer in Managed Code (Mar 09, 2009) 20090309093351A</guid></item><item><title>Updated Release: Type Library Importer in Managed Code (Mar 09, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=17579</link><description>&lt;div&gt;
TLBIMP is a .NET SDK tool that creates an Interop assembly from a COM type library. This project is a managed code implementation of TLBIMP. We have released this tool so developers can see what TLBIMP does and if necessary extend the tool for their specific requirements, while this is the third Tlbimp release on CodePlex. &lt;br&gt; &lt;br&gt;A big feature is added to this release: Tlbimp output customization. With this feature, some special needs of importing convention can be handled when a type library is being imported by creating a configuration file in xml format, instead of leaving it later by disassembling an interop assembly to update the code. The current version supports the following configuration action:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;ChangeManagedName&lt;/b&gt;: To provide a tlb type with a customized managed name instead of the default one.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ResolveTo&lt;/b&gt;: To resolve a tlb type to a user-specified managed type.&lt;/li&gt;&lt;li&gt;&lt;b&gt;AddAttribute&lt;/b&gt;: To add some customized attribute to the corresponding managed types of the tlb types.&lt;/li&gt;&lt;li&gt;&lt;b&gt;PreserveSig&lt;/b&gt;: To apply PreserveSig attribute to a managed function instead of &lt;a href="http://clrinterop.codeplex.com/Wiki/View.aspx?title=out, retval"&gt;out, retval&lt;/a&gt; parameters.&lt;/li&gt;&lt;li&gt;&lt;b&gt;ConvertTo&lt;/b&gt;: To convert a tlb function parameter to the user-specified managed signature.&lt;/li&gt;
&lt;/ul&gt; &lt;br&gt;The new Tlbimp in the package accept the following command-line syntax to integrate the customized rule into its importing process:&lt;br&gt; &lt;br&gt;&amp;gt; tlbimp ATlb.tlb /config:AXMLConfigFile.xml&lt;br&gt; &lt;br&gt;A UI tool, &lt;b&gt;TlbimpRuleFileEditor&lt;/b&gt;, can be found in the package for customization purpose, which help to create a configuration file without requiring knowledge of xml configuration file syntax. More introduction can be found in the document attached with the project.&lt;br&gt; &lt;br&gt;The package also includes some tests, which can be used with &lt;b&gt;Tlbimp Regression Test Tool&lt;/b&gt; (attached in the package as well) to validate any updates made against the original source code. More information about this tool can be found in the document in the package.&lt;br&gt; &lt;br&gt;Other features introduced in the previous releases, are two command-line switches as the follows:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;/v2&lt;/b&gt;: When this switch is on, the Tlbimp applies new rules when importing native types so as to get the output more as expected result. The new rule in this release is to convert &lt;i&gt;VARIANT_BOOL&lt;/i&gt; in structures to &lt;i&gt;bool&lt;/i&gt; instead of &lt;i&gt;short&lt;/i&gt;.&lt;/li&gt;
&lt;/ul&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;/PreserveSig&lt;/b&gt;: If this swtich is applied, the Tlbimp doesn't apply [out, retval] parameter transformation but adds &lt;i&gt;PreserveSigAttribute&lt;/i&gt; to the imported method.&lt;/li&gt;
&lt;/ul&gt; &lt;br&gt;To get the help for the command-line tool, please type in &amp;quot;tlbimp /?&amp;quot; in the command line, or check MSDN document library for the features in .NET 3.5 SDK.&lt;br&gt;
&lt;/div&gt;</description><author>XiaoyingGuo</author><pubDate>Mon, 09 Mar 2009 09:32:54 GMT</pubDate><guid isPermaLink="false">Updated Release: Type Library Importer in Managed Code (Mar 09, 2009) 20090309093254A</guid></item><item><title>Updated Release: Type Library Importer in Managed Code (Mar 09, 2009)</title><link>http://clrinterop.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=17579</link><description>&lt;div&gt;
TLBIMP is a .NET SDK tool that creates an Interop assembly from a COM type library. This project is a managed code implementation of TLBIMP. We have released this tool so developers can see what TLBIMP does and if necessary extend the tool for their specific requirements, while this is the third Tlbimp release on CodePlex. &lt;br&gt; &lt;br&gt;A big feature is added to this release: Tlbimp output customization. With this feature, some special needs of importing convention can be handled when a type library is being imported by creating a configuration file in xml format, instead of leaving it later by disassembling an interop assembly to update the code. The current version supports the following configuration action:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;ChangeManagedName: To provide a tlb type with a customized managed name instead of the default one.&lt;/li&gt;&lt;li&gt;ResolveTo: To resolve a tlb type to a user-specified managed type.&lt;/li&gt;&lt;li&gt;AddAttribute: To add some customized attribute to the corresponding managed types of the tlb types.&lt;/li&gt;&lt;li&gt;PreserveSig: To apply PreserveSig attribute to a managed function instead of &lt;a href="http://clrinterop.codeplex.com/Wiki/View.aspx?title=out, retval"&gt;out, retval&lt;/a&gt; parameters.&lt;/li&gt;&lt;li&gt;ConvertTo: To convert a tlb function parameter to the user-specified managed signature.&lt;/li&gt;
&lt;/ul&gt; &lt;br&gt;The new Tlbimp in the package accept the following command-line syntax to integrate the customized rule into its importing process:&lt;br&gt; &lt;br&gt;&amp;gt; tlbimp ATlb.tlb /config:AXMLConfigFile.xml&lt;br&gt; &lt;br&gt;A UI tool, &lt;b&gt;TlbimpRuleFileEditor&lt;/b&gt;, can be found in the package for customization purpose, which help to create a configuration file without requiring knowledge of xml configuration file syntax. More introduction can be found in the document attached with the project.&lt;br&gt; &lt;br&gt;The package also includes some tests, which can be used with &lt;b&gt;Tlbimp Regression Test Tool&lt;/b&gt; (attached in the package as well) to validate any updates made against the original source code. More information about this tool can be found in the document in the package.&lt;br&gt; &lt;br&gt;Other features introduced in the previous releases, are two command-line switches as the follows:&lt;br&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;/v2&lt;/b&gt;: When this switch is on, the Tlbimp applies new rules when importing native types so as to get the output more as expected result. The new rule in this release is to convert &lt;i&gt;VARIANT_BOOL&lt;/i&gt; in structures to &lt;i&gt;bool&lt;/i&gt; instead of &lt;i&gt;short&lt;/i&gt;.&lt;/li&gt;
&lt;/ul&gt; &lt;br&gt;&lt;ul&gt;
&lt;li&gt;&lt;b&gt;/PreserveSig&lt;/b&gt;: If this swtich is applied, the Tlbimp doesn't apply [out, retval] parameter transformation but adds &lt;i&gt;PreserveSigAttribute&lt;/i&gt; to the imported method.&lt;/li&gt;
&lt;/ul&gt; &lt;br&gt;To get the help for the command-line tool, please type in &amp;quot;tlbimp /?&amp;quot; in the command line, or check MSDN document library for the features in .NET 3.5 SDK.&lt;br&gt;
&lt;/div&gt;</description><author>XiaoyingGuo</author><pubDate>Mon, 09 Mar 2009 09:31:58 GMT</pubDate><guid isPermaLink="false">Updated Release: Type Library Importer in Managed Code (Mar 09, 2009) 20090309093158A</guid></item></channel></rss>