Windows SIG: It works! - Direct calls into unmanaged code w/Managed C++
The Monthly Meeting of the Windows SIG
Joel Sarch, Sr Software Developer, MetaLINCS Corporation
Platform Invoke has usually been touted as the only way to access legacy components from within C#. However, PInvoke can often be cumbersome, and may entail unnecessary overhead. One of the advantages of .NET is that code written in one .NET language may access classes written in any other .NET language, provided that certain basic rules are followed. Furthermore, two .NET languages, Managed C++ and Intermediate Language (IL), permit managed and unmanaged code to be mixed in the same module and permit more direct invocation of unmanaged code in a mode that has been dubbed "It Just Works", or IJW, for short.
Putting these ideas together, the speaker presents a simple method of invoking unmanaged C++ or C-language code from a C# assembly with the aid of a managed C++ wrapper. This can be a powerful approach to harnessing legacy components within .NET applications. However, one particular pitfall, the Loader Lock Bug, imposes certain limitations and cautions. After a brief introduction to Managed C++, the speaker demonstrates the utility of IJW invocation of legacy code, and discusses the infamous Loader Lock Bug and how to avoid or minimize its effects.
About our Speaker:
Joel Sarch has more than 30 years' experience in software design and development. Joel's specialties include interoperability between .NET and legacy frameworks, and between managed and unmanaged components. He is currently a senior software developer with MetaLINCS Corporation, where he recently implemented a proprietary IJW solution for interoperability with a legacy vendor offering. Based in Mountain View, MetaLINCS specializes in software for message analysis and EDiscovery.
Cubberly Community Center
4000 Middlefield Road, Room H-1
Palo Alto, CA 94105
6:30 - 7:00 Informal Q&A with Pizza
7:00 - 7:15 Announcements
7:15 - 9:00 Presentations
$15 at the door for non-SDForum members
No charge for SDForum members
Please call 408.494.8378 for student memberships
No registration required
More on the Windows SIG