分发dll:如何处理.lib文件?

时间:2013-04-10 06:23:04

标签: c# visual-studio-2010 dll linker

我在Visual Studio中使用C#创建了dll。它的依赖项中有六个.lib个文件。

通过阅读此处的其他一些问题,我收集了.lib个文件在运行时链接,这让我觉得这些文件不包含在我制作的.dll文件中。

如何分发dll文件呢?我是否必须将.lib文件与.dll文件一起发送,或者是否有某种方法可以静态编译它以便所有内容都包含在.dll个文件中?

2 个答案:

答案 0 :(得分:4)

要查看哪些文件应随DLL一起分发,您可以使用Dependency Walker。只需将您的DLL文件拖到应用程序中,看看它是否有任何依赖项。

另请注意,您可能需要分发Visual C ++运行时(“Visual C ++ Redistributable Package”)。

答案 1 :(得分:1)

对于C#,您不需要包含任何.lib文件。 它们在链接步骤由C / C ++编译器使用,但C#使用DLL 而不是链接(动态加载和GetProcAddress)与[DLLImport()]属性。

只需将DLL与您的应用程序一起分发即可。