= Calling Managed Code (.NET C#) from Unmanaged Code (Any language) = == Creating a COM Library == * [[swdev:dotnet:Creating COM Library|Create COM library (managed code)]]. == Registering a COM Library == * Assembly to be deployed to GAC: C:\>CD C:\MyLibProj\ C:\>"%WinDir%\Microsoft.NET\Framework64\v4.0.30319\regasm.exe" MyLib.dll C:\>"%ProgramFiles(x86)%\Microsoft SDKs\Windows\v7.0A\Bin\gacinstall.exe" /i MyLib * Assembly to be deployed in application's directory (not in GAC): C:\>CD C:\MyLibProj\ C:\>"%WinDir%\Microsoft.NET\Framework64\v4.0.30319\regasm.exe" /CodeBase MyLib.dll * To create Type Library from Assembly: C:\>CD C:\MyLibProj\ C:\>"%WinDir%\Microsoft.NET\Framework64\v4.0.30319\regasm.exe" MyLib.dll /tlb:MyLib.tlb == Calling a Library from Unmanaged Code == * Create calls (unmanaged code) to library.