什么去火效果最好| 为什么老是出汗| khaki是什么颜色| 戈美其鞋子是什么档次| 洗面奶什么好| gap是什么意思| 中国的国菜是什么| 什么叫传统文化| 田野是什么意思| 卯是什么生肖| 为什么怀孕前三个月不能说| 为什么会得玫瑰糠疹| 雾灯什么时候开| 月经不来吃什么药| 什么叫脑白质病变| 下巴下面长痘痘是什么原因| 夏天可以种什么花| up主是什么意思| 薄荷绿是什么颜色| 什么叫打气 是吸毒吗| 窦性心律t波改变是什么意思| 骨折吃什么好的快| 细菌感染发烧吃什么药| 冈本是什么| c13阳性是什么意思| 破釜沉舟是什么生肖| 粘人是什么意思| 子宫什么样子图片| 梦到鹦鹉预示着什么| 什么学习机好| 眼睛眼屎多是什么原因| 钝感力什么意思| 银耳什么时候吃最好| 卖萌什么意思| 建议随诊是什么意思| 锦鲤什么意思| 阳痿吃什么药好| 什么茶叶好喝| 身体水肿是什么原因引起的| 轻度异常脑电图是什么意思| 肝脏的作用是什么| 六味地黄丸治什么病| 为什么会手抖| 玉树临风是什么意思| 霉菌有什么症状| 5月26日是什么星座| 酱酱酿酿是什么意思| 拉姆是什么意思| 肝内胆管轻度扩张是什么意思| 阴道炎用什么洗| 隐翅虫咬到擦什么药膏| slogan什么意思| 食管反流用什么药效果好| 更年期什么时候| 流产挂什么科| 什么是炎症| 吴亦凡属什么| 狗狗蛋蛋红肿是什么原因| 胰岛素是干什么用的| 凤梨跟菠萝有什么区别| 痔疮什么样子| 射手男和什么座最配对| 贵人多忘事是什么意思| 花胶有什么功效| 古代男子成年叫什么| 阴茎溃疡用什么药| 耄耋之年是什么意思| 榴莲坏了是什么味道| 尿液检查红细胞高是什么原因| 肝脏的作用是什么| 吃什么水果减肥最快| 什么叫做t| 穿刺是检查什么的| 小孩小便红色是什么原因| 有齿痕吃什么药| 付之东流是什么意思| 子宫附件包括什么| lam是什么意思| 病毒性扁桃体炎吃什么药| 7月1日什么星座| 山西属于什么地区| 鸡肉和什么不能一起吃| 海螺什么地方不能吃| 覃读什么| 梦见抓鱼是什么预兆| 梦见梯子是什么意思| 钾低吃什么| 中秋节送礼送什么| 什么情况需要打破伤风| 归元寺求什么最灵验| 余的部首是什么| 梦见蛀牙掉是什么预兆| 知了猴什么时候出土| 北京为什么是首都| 家字是什么结构| 乳头变大是什么原因| 核酸是什么| 4月1日什么星座| 外阴苔癣是一种什么病| 男人小腹疼痛是什么原因| 耳鸣吃什么| 什么人容易老年痴呆| 银杯子喝水有什么好处| 丁香泡水喝有什么功效和作用| 奶瓶pp和ppsu有什么区别| 前列腺炎吃什么| 根基是什么意思| 海绵体供血不足吃什么药| 培根肉是什么肉| 扁桃体发炎吃什么药效果最好| 草龟吃什么| 鼻干眼干口干属于什么症状| 7月26是什么星座| 大肠在人体什么位置图| 喝什么粥养胃| 泛醇是什么| 蜘蛛结网预示着什么| 纵欲什么意思| 大地色眼影是什么颜色| 懈怠是什么意思| 邓紫棋为什么叫gem| 泥鳅喜欢吃什么| 孕妇喝什么茶对胎儿好| 活碱是什么| 做噩梦被吓醒预示什么| 5月13号是什么星座| 腰疼吃什么药好| 什么是低保| 地藏菩萨是管什么的| 为什么会得血管瘤| 吃完杏不能吃什么| 黄体回声是什么意思| 拥趸是什么意思| fpa是什么意思| 慢性胰腺炎吃什么药| 小狗感冒了吃什么药| 凯撒沙拉酱是什么口味| 什么是尿失禁| 补气血喝什么汤| 女人吃槐花有什么好处| 斛什么意思| 什么是早教| 阳虚是什么意思| 草莓什么季节种植| 炖牛肉不放什么调料| 囊肿里面是什么东西| 什么是高潮| 烫伤挂什么科室| 乐话提醒业务是什么意思| 晚上尿多是什么原因| 糖尿病筛查做什么检查| 心什么什么什么| 6月27是什么星座| 检查视力挂什么科| 女人身体发热预示什么| 中蛊的人有什么症状| 早期复极是什么意思| 哮喘吃什么药管用| 世界上有什么花| 骏五行属什么| 冻雨是什么| 坐骨神经痛是什么症状| 巨细胞病毒igg阳性是什么意思| 十一月九号是什么星座| 十的偏旁有什么字| 淋病吃什么药| 吃什么补大脑记忆力| 睡觉后脑勺出汗多是什么原因| 猫怕什么气味| 尿蛋白低是什么原因| 跑步有什么好处| 物理压榨油是什么意思| 两肺纹理增重什么意思| 盥洗室什么意思| 12月13号是什么星座| 助理研究员是什么职称| 荔枝肉是什么菜系| 消化不好吃什么药| 肺慢性炎症是什么意思| 婴儿老是放屁是什么原因| 揶揄什么意思| 什么可以代替人体润滑油| 立秋那天吃什么| 吃维生素b2有什么好处和副作用| 维生素h是什么| 为什么想到一个人会心痛| 英国用什么货币| 宫外孕出血是什么颜色| 属猴的跟什么属相最配| 男的纹般若有什么寓意| 冷面是用什么面做的| 艾滋病初期什么症状| 对辣椒过敏有什么症状| 杠是什么意思| 脚脖子粗是什么原因| 扁平苔藓是什么原因引起的| 生肖猴和什么生肖最配| dvf是什么品牌| 膻是什么意思| 晚来天欲雪能饮一杯无什么意思| 3月3日什么星座| 一千年前是什么朝代| bkg是什么意思| 牛肉配什么菜包饺子好吃| 金国人是现在的什么人| 小样什么意思| 贵州有什么特产| 家里有蜈蚣是什么原因| 正品行货是什么意思| 晚上睡觉脚酸痛什么原因| 什么是脱脂牛奶| 喝什么能解酒| 师奶是什么意思| 尿隐血是什么意思| 为什么没有win9| 篮子是什么意思| alienware是什么牌子| 嘴巴里面起泡是什么原因引起的| 今年83岁属什么生肖| 为什么要延迟退休| 什么眼霜去皱效果好| 突然心跳加快是什么原因| 早上起来嘴苦口臭是什么原因| 手足口挂什么科| 病毒是什么生物| 20岁长白头发是什么原因造成的| 吃什么降血压最快最好方法| 兔唇是什么原因造成的| 什么样的智齿不需要拔| 五液是指什么| 1990年1月属什么生肖| 学海无涯苦作舟的上一句是什么| 一什么小船| 非私营单位是什么| 什么是编外人员| 康斯坦丁是什么意思| 什么是科学| 正师级是什么军衔| 7月1号是什么节| 什么是预防医学| 什么是胆红素| 头汗特别多是什么原因| 血小板计数高是什么原因| 36年属什么生肖| 肝区疼痛吃什么药| 甲状腺结节吃什么药好| 肛痈是什么病| 聪明的动物是什么生肖| 尿液检查白细胞高是什么原因| fsa是什么意思| 割包皮属于什么科室| 辽宁古代叫什么| 海狗是什么| 乳腺钙化是什么意思| 原住民是什么意思| 为什么不孕不育| 眉毛变白是什么原因| 身份证末尾x代表什么| 早饭吃什么好| 脸上长痘痘用什么药膏效果好| 一命呜呼是什么意思| 小拇指有痣代表什么| 什么什么的大树| 猫爪草有什么功效| 百度Jump to content

未央宫街道朱宏路社区举办文艺“进社区”活动

From Wikipedia, the free encyclopedia
百度 项目位于由市中心向北70公里的密云水库南岸,地处北部经济发展带最北端,大北京生态环境的钻石点。

The Microsoft Windows operating system and Microsoft Windows SDK support a collection of shared libraries that software can use to access the Windows API. This article provides an overview of the core libraries that are included with every modern Windows installation, on top of which most Windows applications are built.

Library sources

[edit]

The Windows operating system contains compiled versions of these libraries known as dynamically-linked libraries (.dll), which are executable libraries that can be used by multiple programs while only one copy of the library is loaded into memory. These are canonically referred to as system libraries and all programs installed on the system can utilize them.

The Windows SDK additionally distributes compiled versions of these libraries known as statically-linked libraries (.lib), which are non-executable libraries that, in whole or in part, can be embedded into a program when it is compiled.[disputeddiscuss] The most common Windows compilers being Microsoft Visual Studio and MinGW.

Internal components

[edit]

NTDLL.DLL

[edit]

NTDLL.DLL exports the Windows Native API. The Native API is the interface used by user-mode components of the operating system that must run without support from Win32 or other API subsystems. Most of this API is implemented in NTDLL.DLL and at the upper edge of ntoskrnl.exe (and its variants), and the majority of exported symbols within these libraries are prefixed Nt, for example NtDisplayString. Native APIs are also used to implement many of the "kernel APIs" or "base APIs" exported by KERNEL32.DLL.[1][2][3] The large majority of Windows applications do not call NTDLL.DLL directly.[4]

Applications that are linked directly against this library are said to use the native subsystem; the primary reason for their existence is to perform tasks that must run early in the system startup sequence before the Win32 subsystem is available. An obvious but important example is the creation of the Win32 subsystem process, csrss.exe. Before the csrss.exe process exists, no Win32 processes may be created, therefore the process that creates it (Smss.exe, the "session manager") must use the native subsystem. csrss.exe itself is such an application.

Despite having an ".exe" file extension, native applications cannot be executed by the user (or any program in the Win32 or other subsystems). An example is the autochk.exe binary that runs chkdsk during the system initialization "Blue Screen". Other prominent examples are the services that implement the various subsystems, such as csrss.exe.

Unlike Win32 applications, native applications instantiate within the Kernel runtime code (ntoskrnl.exe) and so they must have a different entry point (NtProcessStartup, rather than (w)(Win)MainCRTStartup as is found in a Win32 application),[2] obtain their command-line arguments via a pointer to an in-memory structure, manage their own memory using the Rtl heap API, (which the Win32 heap APIs are just wrappers around—no real difference there) and return execution with a call to RtlExitUserProcess (as opposed to ExitProcess). A common library linked with Native applications is nt.lib, which contains startup code for Native applications, similar to how the C runtime provides startup code for Win32 apps.[2]

Most of the Native API is not publicly documented or supported. This allows the API to evolve without having to guarantee backwards compatibility, and breaking changes are thus possible without notification. Native Applications can be built using the Windows Driver Development Kit.[5]

Win32 API

[edit]

The libraries in this section each implement various subsets of the Win32 API.

KERNEL32.DLL

[edit]

KERNEL32.DLL exposes to applications most of the Win32 base APIs, such as memory management, input/output (I/O) operations, process and thread creation, and synchronization functions.[6]

GDI32.DLL

[edit]

GDI32.DLL exports Graphics Device Interface (GDI) functions that perform primitive drawing functions for output to video displays and printers. It is used, for example, in the XP version of Paint. Applications call GDI functions directly to perform low-level drawing (line, rectangle, ellipse), text output, font management, and similar functions.[6][7]

Initially, GDI supported 16 and 256 color EGA/VGA display cards and monochrome printers. The functionality has expanded over the years, and now includes support for things like TrueType fonts, alpha channels, and multiple monitors.[8]

USER32.DLL

[edit]

USER32.DLL implements the Windows USER component that creates and manipulates the standard elements of the Windows user interface, such as the desktop, windows, and menus. It thus enables programs to implement a graphical user interface (GUI) that matches the Windows look and feel. Programs call functions from Windows USER to perform operations such as creating and managing windows, receiving window messages (which are mostly user input such as mouse and keyboard events, but also notifications from the operating system), displaying text in a window, and displaying message boxes.

Many of the functions in USER32.DLL call upon GDI functions exported by GDI32.DLL to do the actual rendering of the various elements of the user interface. Some types of programs will also call GDI functions directly to perform lower-level drawing operations within a window previously created via USER32 functions.

COMCTL32.DLL

[edit]

COMCTL32.DLL implements a wide variety of standard Windows controls, such as File Open, Save, and Save As dialogs, progress bars, and list views. It calls functions from both USER32.DLL and GDI32.DLL to create and manage the windows for these UI elements, place various graphic elements within them, and collect user input.

COMDLG32.DLL

[edit]

COMDLG32.DLL, the Common Dialog Box Library, implements a wide variety of Windows dialog boxes intended to perform what Microsoft deems 'common application tasks'. Starting with the release of Windows Vista, Microsoft considers the "Open" and "Save as" dialog boxes provided by this library as deprecated and replaced by the 'Common Item Dialog API'.[9]

WS2_32.DLL

[edit]

WS2_32.DLL implements the Winsock API, which provides TCP/IP networking functions and provides partial, broken compatibility with other network APIs. wsock.dll and wsock32.dll are older versions for Win3.11 and Win95 compatibility.

ADVAPI32.DLL

[edit]

ADVAPI32.DLL, the Advanced Windows 32 Base API DLL,[10] provides security calls and functions for manipulating the Windows Registry.

NETAPI32.DLL

[edit]

NETAPI32.DLL provides functions for querying and managing network interfaces.

OLE32.DLL

[edit]

OLE32.DLL provides the Component Object Model, as well as Object Linking and Embedding.

Other APIs

[edit]

SHSCRAP.DLL

[edit]

SHSCRAP.DLL is part of the Object Linking and Embedding (OLE) mechanism. It implements support for shell scrap files, which are automatically created when you drag selected content from an OLE-capable application into an Explorer window or desktop,[11] but you can also use the Object Packager to create them. They can then be dragged into another OLE-capable application.

This functionality was removed from Windows Vista (and therefore later versions) to improve security and rid the operating system of generally unused functionality.[12] Scrap (.shs) files have been used by viruses because they can contain a wide variety of files (including executable code), and the file extension is not shown even when "Hide file extensions from known file types" is disabled.[13] The functionality can be restored by copying registry entries and the DLL from a Windows XP system.[14]

WINMM.DLL

[edit]

WINMM.DLL provides access to the original WinMM audio API.

IMM32.DLL

[edit]

IMM32 is responsible for invoking and interacting with the Input Method Editor.

Runtime libraries

[edit]

MSVCRT.DLL, MSVCP*.DLL and CRTDLL.DLL

[edit]

MSVCRT.DLL is the C standard library for the Visual C++ (MSVC) compiler from version 4.2 to 6.0. It provides programs compiled by these versions of MSVC with most of the standard C library functions. These include string manipulation, memory allocation, C-style input/output calls, and others. MSVCP*.DLL is the corresponding C++ library.

It has shipped with Windows versions since Windows 95 OSR2.5 for use by other Windows components; earlier versions shipped with the CRTDLL.DLL library instead. In older versions of Windows, programs which linked against MSVCRT.DLL were expected to install a compatible copy in the System32 folder, but this contributed to DLL Hell because many installers failed to check the library version against the installed version before replacing it.

Versions of MSVC before 4.0 and from 7.0 to 12.0 used differently named DLLs for each version (MSVCR20.DLL, MSVCR70.DLL, MSVCR71.DLL, MSVCP110.DLL, etc.). Applications are required to install the appropriate version,[15] and Microsoft offers Visual C++ Redistributable packages for this purpose, though Windows typically comes with one version already installed.

This runtime library is used by programs written in Visual C++ and a few other compilers (e.g. MinGW). Some compilers have their own runtime libraries.

UCRT

[edit]

With Version 14.0 (Visual Studio 2015), most of the C/C++ runtime was moved into a new DLL, UCRTBASE.DLL, which conforms closely with C99.[16] Universal C Run Time (UCRT) from Windows 10 onwards become a component part of Windows,[16] so every compiler (either non MS, like GCC or Clang/LLVM) can link against UCRT.[17] Additionally, C/C++ programs using UCRTBASE.DLL need to link against another new DLL, the Visual C++ Runtime. At Version 14.0, this was VCRUNTIME140.DLL.[18] The name has the potential to change at future versions, but has not done so as far as of Version 17.0.

Source code for runtime libraries is included in Visual C++[19] for reference and debugging (e.g. in C:\Program Files\Microsoft Visual Studio 11.0\VC\crt\src).

Other runtime libraries

[edit]
  • ATL*.DLLActive Template Library
  • MFC*.DLLMicrosoft Foundation Classes
  • MSVBVM60.DLLVisual Basic 6.0 Virtual Machine (Visual Basic.NET programs require .NET Framework instead)
  • VCOMP*.DLL – Microsoft OpenMP runtime
  • VCRUNTIME*.DLL – Microsoft Visual C++ Runtime, for MSVC 14.0+
  • MSVCIRT.DLL – Microsoft C++ Library, contains the deprecated C++ classes from <iostream.h> (note the file extension) for MS C 9 and 10 (MSVC 2.x, 4.x) (Back then, the draft C++ Standard Library was integrated within MSVCRT.DLL. It was split up with the release of Visual C++ 5.0)

.NET Framework libraries

[edit]

Programs written in C#, Visual Basic.NET, C++/CLI and other .NET languages require the .NET Framework. It has many libraries (one of them is mscorlib.dll – Multilanguage Standard Common Object Runtime Library, formerly Microsoft Common Object Runtime Library[20]) and so-called assemblies (e.g. System.Windows.Forms.dll).

See also

[edit]

References

[edit]
  1. ^ Eilam, Eldad (2011). Reversing: Secrets of Reverse Engineering. John Wiley & Sons. pp. 68–69. ISBN 978-1-118-07976-8.
  2. ^ a b c "Inside Native Applications". Microsoft Learn. Retrieved 2025-08-07.
  3. ^ Russinovich, Mark A. & Solomon, David A. (2009). Windows? Internals. O'Reilly Media. p. 136. ISBN 978-0-7356-3796-2.
  4. ^ Marceau, Carla & Stillerman, Matt (2006). "Modular behavior profiles in systems with shared libraries". In Neng, Peng; et al. (eds.). Information and Communications Security: 8th International Conference, ICICS 2006 – Raleigh, NC, USA, December 4–7, 2006 – proceedings. Springer. p. 371. ISBN 978-3-540-49496-6.
  5. ^ "Windows Server 2003 DDK". Microsoft.
  6. ^ a b "Identifying Functions in DLLs". .NET Framework documentation. Microsoft. 2025-08-07 – via Microsoft Learn.
  7. ^ See also, the documentation for the Wine implementation of GDI32.DLL: Wine API: gdi32.dll
  8. ^ Yuan, Feng (2001). Windows graphics programming: Win32 GDI and DirectDraw. Prentice Hall Professional. p. 71. ISBN 978-0-13-086985-2.
  9. ^ "Common Dialog Box Library - Win32 apps". Microsoft Learn. Retrieved 2025-08-07.
  10. ^ Microsoft (8 October 2009). "How RPC Works: Remote Procedure Call (RPC) | Microsoft Learn". Retrieved 11 September 2023.
  11. ^ "WD: What is a Scrap (.shs) file?". Microsoft Knowledge Base. Archived from the original on 2025-08-07.
  12. ^ Raymond Chen. "Windows Confidential: Scrapping the Scraps". Retrieved 2025-08-07.
  13. ^ "VBS.Stages.A". Symantec. Archived from the original on November 10, 2006.
  14. ^ "How to open SHS files". Retrieved 2025-08-07.
  15. ^ "C Run-Time Libraries". Archived from the original on 2025-08-07. Retrieved 2025-08-07.
  16. ^ a b "Upgrade your code to the Universal CRT".
  17. ^ "MSYS2 - Environments".
  18. ^ "C++ binary compatibility 2015-2022". 30 January 2025.
  19. ^ "Source Code for the C Run-Time Functions". 15 September 2006.
  20. ^ "What does the "ms" in "mscorlib" stand for - hint: It's not "Microsoft"". 31 January 2004.
[edit]
人为什么会抽筋 拉肚子吃什么食物 慢性宫颈炎是什么原因引起的 肱骨头小囊变什么意思 护照是什么意思
趣味是什么意思 od什么意思 12年义务教育什么时候实行 过敏嘴唇肿是什么原因 低压高吃什么中成药
什么是低碳生活 3.3是什么星座 hardly什么意思 尿素是什么肥 梦见吃酒席是什么预兆
肾虚有什么症状 起湿疹是什么原因造成的 精索炎吃什么药最好 尿潴留吃什么药 vr眼镜是什么
天时地利人和什么意思hcv9jop0ns0r.cn fsh是什么hcv9jop4ns6r.cn 舌头有齿痕吃什么药hcv7jop6ns8r.cn 甲状腺是什么引起的hcv9jop1ns1r.cn 海蓝之谜适合什么年龄hcv7jop6ns3r.cn
感冒咳嗽吃什么药好hcv9jop4ns3r.cn 什么发什么强hcv9jop4ns5r.cn 二月一号是什么星座hcv8jop3ns5r.cn 阴道流黄水是什么病hcv9jop5ns0r.cn 热痱子用什么药hcv9jop3ns2r.cn
脚底抽筋是什么原因引起的hcv7jop5ns6r.cn 过敏吃什么药最有效hcv8jop8ns6r.cn gm是什么单位hcv7jop5ns1r.cn 湿疹用什么药最好hcv9jop1ns0r.cn 李子是什么颜色1949doufunao.com
益母草煮鸡蛋有什么功效hcv8jop0ns1r.cn 血常规crp是什么意思hcv8jop4ns0r.cn 豌豆什么时候种最好zsyouku.com 料油是什么油hcv8jop0ns4r.cn 梦见自己捡钱是什么意思hcv9jop1ns3r.cn
百度