如何在Visual C ++中构建导入库(.lib)和DLL? [英] How do I build an import library (.lib) AND a DLL in Visual C++?

查看:208
本文介绍了如何在Visual C ++中构建导入库(.lib)和DLL?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想要一个单独的Visual Studio项目,它构建一个DLL文件和一个导入库(.lib)文件。 (导入库是一个静态链接库,负责在使用它的其他项目中加载该DLL文件)。

I want to have a single Visual Studio project that builds a DLL file and an import library (.lib) file. (An import library is a statically-linked library that takes care of loading that DLL file in other projects that use it).

所以我去了Visual Studio C ++ 2008 Express版本,创建类型类库的新项目,并将配置类型设置为Dyanamic库(.dll)。

So I went to Visual Studio C++ 2008 Express Edition, created a New Project of type Class Library, and set the "Configuration Type" to be "Dyanamic Library (.dll)".

但是当我构建解决方案,我看到的唯一相关的输出文件是一个DLL文件;我没有看到任何LIB文件生成。我查看了项目目录和所有子目录(发布和调试)。

But when I build the solution, the only relevant output file I see is a DLL file; I don't see any LIB file getting generated. I looked in the project directory and all subdirectories (Release and Debug).

我相信可以同时构建一个LIB和一个DLL文件,因为<在MSDN上的一个href =http://msdn.microsoft.com/en-us/library/d14wsce5.aspx>链接器创建导入库时构建DLL。另外, 此用户的其他用户网站正在使用Visual C ++ 同时创建LIB和DLL文件。

I believe that it is possible to build a LIB and a DLL file at the same time because on the MSDN it says "The linker creates the import library when the DLL is built." Also, another user of this website is creating LIB and DLL files at the same time using Visual C++.

那么我该如何做呢?

推荐答案

通过选择类库,你意外地告诉它使用C ++的CLI(托管)扩展来创建.Net库。

By selecting 'Class Library' you were accidentally telling it to make a .Net Library using the CLI (managed) extenstion of C++.

而是创建一个Win32项目,并在下一页的应用程序设置中选择DLL。

Instead, create a Win32 project, and in the Application Settings on the next page, choose 'DLL'.

MFC DLL或ATL DLL从这些库选择,如果你想去那条路线,但它听起来像你不。

You can also make an MFC DLL or ATL DLL from those library choices if you want to go that route, but it sounds like you don't.

这篇关于如何在Visual C ++中构建导入库(.lib)和DLL?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆