How to use *.lib file in C# application?
Asked Answered
M

1

6

So I have some .lib file (generated like this one) How to use it from my C# WPF application?

Matthieu answered 17/5, 2010 at 10:17 Comment(0)
N
7

When you want to use native libraries from C# you won't need a .lib file. The way this is handled in .NET is by using Platform Invoke (P/Invoke). I suggest you follow the tutorial on MSDN, it will get you started:

Platform Invoke Tutorial

If you want to generate a wrapper you might want to have a look at the P/Invoke Interop Assistant on CodePlex. Please note that this tool works on the original C/C++ code. Using a .dll file to create a wrapper is not feasible because native DLLs don't store the signature of the exported functions (as described in this thread) and a lib file will store the signature in a compiler specific way.

Nomenclator answered 17/5, 2010 at 10:21 Comment(3)
and can .lib file at least help me in creating a wraper?Matthieu
If all you have is a .lib and .h file, you can create a dll wrapper for the lib, exporting the functions you need.Doubloon
@Stephen Cleary: As this is about using native code from C# the lib file will not be needed. All you will need is the method signature and the name of the native dll that contains the method.Nomenclator

© 2022 - 2024 — McMap. All rights reserved.