Visual Studio 2015默认的其他库 [英] Visual studio 2015 default additional libraries
问题描述
当我在VS 2015中创建一个空项目时,它会自动将这些库置于其他依赖项"中:
When I make an empty project in VS 2015 it automatically puts these libraries into "additional dependencies":
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)
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)
我不知道其中的大多数用途是什么,可以安全地将它们移除吗?
I have no idea what most of these are for, can they be safely removed?
推荐答案
其中许多可以安全删除.这是它们的用途的简要概述:
Many of them can be safely removed. Here's a quick rundown of what they are for:
-
kernel32
:进程和线程管理,文件和设备I/O,内存分配(请注意,C和C ++运行时库以及编译器生成的代码都在使用它) -
user32
:窗口和菜单管理(如果使用GUI,请保留此内容,对于控制台应用程序可以删除).基本的窗口小部件集(=预定义的窗口类,如按钮,复选框和滚动条)在此处. -
gdi32
:绘图(如果使用自定义呈现的图形,请保留此图形;如果仅使用小部件,则可以将其删除) -
comctl32
:精美的新小部件,例如树,列表视图和进度条 -
winspool
:GDI所不能提供的打印高级用法.我总是将其删除. -
comdlg32
:常见对话框,例如打开"和保存文件"对话框 -
advapi32
:注册表支持,用户帐户和访问控制,加密.我通常最终需要这个,您的需求可能会有所不同. -
shell32
,shlwapi
:任务栏和通知托盘UI以及更多帮助器功能,例如预定义的文件夹和路径操作功能.通常有用,但许多应用程序将不需要它. -
ole32
,oleaut32
:OLE是ActiveX,DCOM等的基础.许多较新的OS API是COM对象,因此您可能需要保留它. -
uuid
:可能不需要高级OLE使用. -
odbc32
,odbccp32
:使用非常老旧且不友好的API进行数据库访问.我总是删除这些.
kernel32
: Process and thread management, file and device I/O, memory allocation (keep this, the C and C++ runtime libraries and compiler-generated code uses it)user32
: Window and menu management (keep this if using GUI, can remove for console apps) The base set of widgets (= predefined window classes, like buttons and checkboxes and scrollbars) are here.gdi32
: Drawing (keep this if using custom rendered graphics, can remove if just using widgets)comctl32
: Fancy new widgets, like trees, listviews, and progress barswinspool
: Advanced usage of printing beyond what GDI covers. I always remove it.comdlg32
: Common dialogs, like Open and Save File Dialogsadvapi32
: Registry support, user account and access control, cryptography. I usually end up needing this one, your needs may differ.shell32
,shlwapi
: Taskbar and notification tray UI and more helper functions, like predefined folders and path manipulation functions. Often useful, but many applications won't need it.ole32
,oleaut32
: OLE is the basis for ActiveX, DCOM, etc. Many of the newer OS APIs are COM objects, so you probably need to keep this.uuid
: Advanced OLE usage, probably not needed.odbc32
,odbccp32
: Database access using a very old and unfriendly API. I always remove these.
斜体库不在默认列表中,但比一半的库有用.
Italicized libraries are not in the default list, but more useful than half the ones that are.
这篇关于Visual Studio 2015默认的其他库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!