Visual Studio 2015默认附加库

时间:2016-03-15 17:17:05

标签: c++ visual-studio-2015 include libraries

当我在VS 2015中创建一个空项目时,它会自动将这些库放入"其他依赖项":

KERNEL32.LIB; USER32.LIB; GDI32.LIB; winspool.lib; comdlg32.lib; advapi32.lib; SHELL32.LIB; ole32.lib; oleaut32.lib; UUID.LIB; odbc32.lib; odbccp32.lib ;%(AdditionalDependencies)

我不知道其中大部分内容是什么,可以安全删除吗?

2 个答案:

答案 0 :(得分:6)

其中许多都可以安全删除。以下简要介绍了它们的用途:

  • kernel32:进程和线程管理,文件和设备I / O,内存分配(保持这一点,C和C ++运行时库以及编译器生成的代码使用它)
  • user32:窗口和菜单管理(如果使用GUI,请保留此信息,可以删除控制台应用程序)小部件的基本集(=预定义的窗口类,如按钮,复选框和滚动条)在这里。
  • gdi32:绘图(如果使用自定义渲染图形,请保留此项,如果只使用小部件则可以删除)
  • comctl32 :花哨的新小部件,例如树,列表视图和进度条
  • winspool:超出GDI涵盖范围的高级印刷用途。我总是把它删除。
  • comdlg32:常用对话框,如“打开和保存文件对话框”
  • advapi32:注册表支持,用户帐户和访问控制,加密。我通常最终需要这个,你的需求可能会有所不同。
  • shell32 shlwapi :任务栏和通知托盘UI以及更多辅助功能,如预定义文件夹和路径操作功能。通常很有用,但很多应用程序都不需要它。
  • ole32oleaut32:OLE是ActiveX,DCOM等的基础。许多较新的OS API都是COM对象,因此您可能需要保留它。
  • uuid:可能不需要使用高级OLE。
  • odbc32odbccp32:使用非常旧且不友好的API访问数据库。我总是删掉这些。

斜体库不在默认列表中,但比一半的库更有用。

答案 1 :(得分:1)

不,你无法删除它们。这些是与Windows连接的库。

您无需担心。 .lib非常小,他们引用的.dll已经作为Windows安装的一部分出现。