当前位置: 首页 > news >正文

网站开发 零基础wordpress 新闻主题

网站开发 零基础,wordpress 新闻主题,网站三要素,网站怎么做查询系统上一篇#xff1a;WindowsAPI|每天了解几个winAPI接口之Iphlpapi.h网络配置相关文档详细分析二 如果有错误欢迎指正批评#xff0c;在此只作为科普和参考。 文章目录 GetTcpTableGetExtendedTcpTable#xff1a;获取TCP连接的信息GetOwnerModuleFromTcpEntry#xff1…上一篇WindowsAPI|每天了解几个winAPI接口之Iphlpapi.h网络配置相关文档详细分析二 如果有错误欢迎指正批评在此只作为科普和参考。 文章目录 GetTcpTableGetExtendedTcpTable获取TCP连接的信息GetOwnerModuleFromTcpEntry获取与特定TCP连接关联的模块信息TcpipOwnerModuleInfoBasicTcpipOwnerModuleInfoEnhanced是什么 GetUdpTableGetExtendedUdpTable用于获取UDP监听器信息MIB_UDPTABLE 结构的指针都包含什么信息 GetOwnerModuleFromUdpEntryGetTcpTable2用于获取与 UDP 和 TCP 相关的网络信息MIB_UDPROW_OWNER_MODULE 结构都包含什么信息MIB_TCPTABLE2 结构的指针都包含什么信息 GetTcpTableGetExtendedTcpTable获取TCP连接的信息 // // // // Gets TCP Connection/UDP Listener Table // // // //#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES) */ #pragma endregion#pragma region Application Family or OneCore Family or Games Family #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES)IPHLPAPI_DLL_LINKAGE ULONG WINAPI GetTcpTable(_Out_writes_bytes_opt_(*SizePointer) PMIB_TCPTABLE TcpTable,_Inout_ PULONG SizePointer,_In_ BOOL Order);IPHLPAPI_DLL_LINKAGE DWORD WINAPI GetExtendedTcpTable(_Out_writes_bytes_opt_(*pdwSize) PVOID pTcpTable,_Inout__When_(ulAf AF_INET, _Deref_in_range_(, sizeof(MIB_TCPTABLE)))_When_((TableClass TCP_TABLE_OWNER_PID_LISTENER ||TableClass TCP_TABLE_OWNER_PID_CONNECTIONS ||TableClass TCP_TABLE_OWNER_PID_ALL) ulAf AF_INET6,_Deref_in_range_(, sizeof(MIB_TCP6TABLE_OWNER_PID)))_When_((TableClass TCP_TABLE_OWNER_MODULE_LISTENER ||TableClass TCP_TABLE_OWNER_MODULE_CONNECTIONS ||TableClass TCP_TABLE_OWNER_MODULE_ALL) ulAf AF_INET6,_Deref_in_range_(, sizeof(MIB_TCP6TABLE_OWNER_MODULE)))PDWORD pdwSize,_In_ BOOL bOrder,_In_ ULONG ulAf,_In_ TCP_TABLE_CLASS TableClass,_In_ ULONG Reserved);#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES) */ #pragma endregion这段代码是Windows网络编程相关的API函数声明它们定义在Windows的IP Helper APIiphlpapi.h头文件中。GetTcpTable和GetExtendedTcpTable函数用于获取TCP连接的信息。下面是每个函数的简要说明 GetTcpTable 函数 功能获取一个包含当前所有TCP连接、监听端口和其他TCP表条目的表。参数 TcpTable指向一个MIB_TCPTABLE结构的指针该结构将接收TCP表。SizePointer一个指向变量的指针该变量在输入时表示TcpTable的大小在输出时表示填充TcpTable所需的实际大小。Order如果为TRUE则返回的TCP表将按连接状态排序如果为FALSE则不排序。 GetExtendedTcpTable 函数 功能获取一个扩展的TCP连接表可以提供比GetTcpTable更多的信息比如每个连接的进程ID或模块信息。参数 pTcpTable指向缓冲区的指针该缓冲区将接收扩展的TCP表。pdwSize指向变量的指针该变量在输入时表示pTcpTable的大小在输出时表示填充pTcpTable所需的实际大小。bOrder与GetTcpTable中的Order参数相同。ulAf指定地址族AF_INET表示IPv4AF_INET6表示IPv6。TableClass指定需要哪种类型的TCP表例如只包含监听端口的表只包含连接的表或者两者都包含。Reserved保留参数必须设置为0。 这段代码还包含了预处理指令这些指令用于确保只有在特定的Windows平台版本下才编译这些函数。WINAPI_FAMILY_PARTITION宏用于确定当前的Windows平台版本以确保代码只在一个特定的应用程序家族如桌面、系统、游戏或通用Windows平台中编译。这有助于确保API的可用性与应用程序的目标平台相匹配。 GetOwnerModuleFromTcpEntry获取与特定TCP连接关联的模块信息 #pragma region Desktop Family or OneCore Family or Games Family #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES)IPHLPAPI_DLL_LINKAGE DWORD WINAPI GetOwnerModuleFromTcpEntry(_In_ PMIB_TCPROW_OWNER_MODULE pTcpEntry,_In_ TCPIP_OWNER_MODULE_INFO_CLASS Class,_Out_writes_bytes_(*pdwSize) PVOID pBuffer,_Inout_ PDWORD pdwSize);#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES) */ #pragma endregion这段代码是Windows网络编程中用于获取与特定TCP连接相关的拥有者模块信息的API函数声明。这个函数声明位于Windows的IP Helper APIiphlpapi.h头文件中。以下是函数的详细说明 函数GetOwnerModuleFromTcpEntry 功能 此函数用于获取与指定TCP连接条目相关的拥有者模块信息。拥有者模块信息可以用来确定哪个进程或哪个网络模块拥有特定的TCP连接。 参数 pTcpEntry指向MIB_TCPROW_OWNER_MODULE结构的指针该结构包含要查询的TCP连接的索引信息。Class指定要检索的信息类型。TCPIP_OWNER_MODULE_INFO_CLASS是一个枚举类型可以是以下几种值之一 TcpipOwnerModuleInfoBasicTcpipOwnerModuleInfoEnhanced pBuffer指向一个缓冲区该缓冲区将接收请求的信息。缓冲区的内容取决于Class参数的值。pdwSize指向一个变量的指针该变量在输入时表示pBuffer的大小在输出时表示填充pBuffer所需的实际大小。 返回值 函数返回一个DWORD值表示操作的结果。常见的返回值包括 NO_ERROR成功完成操作。ERROR_INSUFFICIENT_BUFFER提供的缓冲区大小不足以存储请求的信息。ERROR_INVALID_PARAMETER一个或多个参数无效。 使用场景 当需要确定哪个网络模块或进程拥有特定的TCP连接时可以使用此函数。这对于调试网络应用、安全审计或网络监控等场景非常有用。 这段代码还包含了预处理指令这些指令用于确保只有在特定的Windows平台版本下才编译这个函数。WINAPI_FAMILY_PARTITION宏用于确定当前的Windows平台版本以确保代码只在一个特定的应用程序家族如桌面、系统、游戏中编译。这有助于确保API的可用性与应用程序的目标平台相匹配。 TcpipOwnerModuleInfoBasicTcpipOwnerModuleInfoEnhanced是什么 TcpipOwnerModuleInfoBasic 和 TcpipOwnerModuleInfoEnhanced 是 TCPIP_OWNER_MODULE_INFO_CLASS 枚举的成员用于指定在调用 GetOwnerModuleFromTcpEntry 函数时希望检索的模块信息类型。这些枚举值决定了函数返回的信息详细程度。 TcpipOwnerModuleInfoBasic这是一个基础的信息类它返回与 TCP 连接相关联的模块的基本信息。根据搜索结果TCPIP_OWNER_MODULE_BASIC_INFO 结构体包含两个成员pModuleName 和 pModulePath。这些成员分别指向模块的名称和包括模块名称的完整路径。如果模块所有者是系统内核则这些成员指向包含“System”的宽字符串。TCPIP_OWNER_MODULE_BASIC_INFO 结构在 Windows Vista 及更高版本中定义于 iprtrmib.h 头文件中。 TcpipOwnerModuleInfoEnhanced这通常表示更详细的信息类可能包括模块的所有者信息、模块路径以及其他可能与模块关联的额外数据。不过根据搜索结果TCPIP_OWNER_MODULE_INFO_CLASS 枚举中只提到了 TCPIP_OWNER_MODULE_INFO_BASIC 作为一个常量没有提及 TcpipOwnerModuleInfoEnhanced。这可能意味着在当前的上下文中只有一个基础级别的信息类可用。 需要注意的是这些信息类用于 GetOwnerModuleFromTcpEntry 函数该函数可以查询给定 TCP 连接条目的模块所有者信息。这些信息对于诊断网络问题或进行网络安全分析非常有用。由于这是一个比较专业的API使用时需要有一定的网络编程和Windows编程知识。 GetUdpTableGetExtendedUdpTable用于获取UDP监听器信息 #pragma region Application Family or OneCore Family or Games Family #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES)IPHLPAPI_DLL_LINKAGE ULONG WINAPI GetUdpTable(_Out_writes_bytes_opt_(*SizePointer) PMIB_UDPTABLE UdpTable,_Inout_ PULONG SizePointer,_In_ BOOL Order);IPHLPAPI_DLL_LINKAGE DWORD WINAPI GetExtendedUdpTable(_Out_writes_bytes_opt_(*pdwSize) PVOID pUdpTable,_Inout_ PDWORD pdwSize,_In_ BOOL bOrder,_In_ ULONG ulAf,_In_ UDP_TABLE_CLASS TableClass,_In_ ULONG Reserved);#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES) */ #pragma endregion这段代码是Windows IP Helper API中用于获取UDP监听器信息的函数声明。这些函数允许查询系统上的UDP端点信息包括监听的端口和相关的统计数据。以下是每个函数的简要说明 GetUdpTable 函数 功能获取一个包含所有UDP监听端口的表格。参数 UdpTable指向一个MIB_UDPTABLE结构的指针该结构将接收UDP表。SizePointer一个指向变量的指针该变量在输入时表示UdpTable的大小在输出时表示填充UdpTable所需的实际大小。Order如果为TRUE则返回的UDP表将按端口号排序如果为FALSE则不排序。 GetExtendedUdpTable 函数 功能获取一个扩展的UDP表可以提供比GetUdpTable更多的信息比如与每个UDP端口关联的进程ID或模块信息。参数 pUdpTable指向缓冲区的指针该缓冲区将接收扩展的UDP表。pdwSize指向一个变量的指针该变量在输入时表示pUdpTable的大小在输出时表示填充pUdpTable所需的实际大小。bOrder与GetUdpTable中的Order参数相同。ulAf指定地址族AF_INET表示IPv4AF_INET6表示IPv6。TableClass指定需要哪种类型的UDP表例如只包含监听端口的表或者包含更多详细信息的表。Reserved保留参数必须设置为0。 这些函数对于网络编程、监控网络活动、调试网络应用或进行网络安全分析等场景非常有用。它们可以帮助开发者或系统管理员了解系统上的UDP端口使用情况。 代码中的预处理指令确保只有在特定的Windows平台版本下才编译这些函数。WINAPI_FAMILY_PARTITION宏用于确定当前的Windows平台版本以确保代码只在一个特定的应用程序家族如应用程序、系统、游戏中编译。这有助于确保API的可用性与应用程序的目标平台相匹配。 MIB_UDPTABLE 结构的指针都包含什么信息 MIB_UDPTABLE 结构的指针指向一个包含本地计算机上所有 UDP 侦听器信息的表。这个表由多个 MIB_UDPROW 结构组成每个 MIB_UDPROW 结构代表一个 UDP 侦听器。以下是 MIB_UDPTABLE 结构包含的信息 dwNumEntries一个 DWORD 类型的变量表示 MIB_UDPTABLE 结构中 MIB_UDPROW 元素的数量。这个值指示了表中有多少个 UDP 侦听器。 table一个数组其中的每个元素都是 MIB_UDPROW 结构。每个 MIB_UDPROW 结构包含以下信息 dwLocalAddr一个 DWORD 类型的变量表示侦听器的本地 IP 地址。这个地址以网络字节序big-endian存储。dwLocalPort一个 DWORD 类型的变量表示侦听器的本地端口号。这个端口号以网络字节序存储。dwRemoteAddr一个 DWORD 类型的变量表示远程 IP 地址。这个地址以网络字节序存储。对于侦听器来说这个值通常是 0因为侦听器等待来自任何远程地址的连接。dwRemotePort一个 DWORD 类型的变量表示远程端口号。这个端口号以网络字节序存储。对于侦听器来说这个值通常是 0。 MIB_UDPTABLE 结构通常用于网络诊断和监控工具以获取和显示本地计算机上的 UDP 侦听器信息。这些信息可以帮助识别正在运行的服务、检测潜在的安全问题以及优化网络性能。 需要注意的是MIB_UDPTABLE 结构主要用于 IPv4 环境。对于 IPv6 环境可以使用 GetExtendedUdpTable 函数和相应的结构来获取 UDP 表信息。 GetOwnerModuleFromUdpEntryGetTcpTable2用于获取与 UDP 和 TCP 相关的网络信息 #pragma region Desktop Family or OneCore Family or Games Family #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES)IPHLPAPI_DLL_LINKAGE DWORD WINAPI GetOwnerModuleFromUdpEntry(_In_ PMIB_UDPROW_OWNER_MODULE pUdpEntry,_In_ TCPIP_OWNER_MODULE_INFO_CLASS Class,_Out_writes_bytes_(*pdwSize) PVOID pBuffer,_Inout_ PDWORD pdwSize);#if (NTDDI_VERSION NTDDI_VISTA) IPHLPAPI_DLL_LINKAGE ULONG WINAPI GetTcpTable2(_Out_writes_bytes_opt_(*SizePointer) PMIB_TCPTABLE2 TcpTable,_Inout_ PULONG SizePointer,_In_ BOOL Order); #endif // (NTDDI_VERSION NTDDI_VISTA)#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES) */ #pragma endregion这段代码展示了两个 Windows API 函数的声明它们用于获取与 UDP 和 TCP 相关的网络信息。这些函数被包裹在条件编译块中这意味着它们只在指定的 Windows API 家族中可用包括桌面Desktop、OneCore 和游戏Games家族。 GetOwnerModuleFromUdpEntry 函数 功能获取与特定 UDP 条目关联的模块的所有者信息。参数 pUdpEntry指向 MIB_UDPROW_OWNER_MODULE 结构的指针该结构包含了要查询的 UDP 条目的信息。Class指定要检索的模块信息的类别例如 TCPIP_OWNER_MODULE_INFO_BASIC。pBuffer指向一个缓冲区该缓冲区将接收模块的所有者信息。pdwSize指向一个 DWORD 类型的变量该变量在输入时指定 pBuffer 可以接收的字节数在输出时返回实际写入 pBuffer 的字节数。 返回值返回 NO_ERROR0表示成功否则返回错误代码。 GetTcpTable2 函数仅在 Windows Vista 及更高版本中可用 功能获取本地计算机上的 IPv4 TCP 连接、侦听器和绑定的端点的扩展表。参数 TcpTable指向 MIB_TCPTABLE2 结构的指针该结构将接收 TCP 表信息。SizePointer指向一个 ULONG 类型的变量该变量在输入时指定 TcpTable 可以接收的字节数在输出时返回实际写入 TcpTable 的字节数。Order一个布尔值指示是否按本地端口号排序返回的表。 返回值返回 NO_ERROR0表示成功否则返回错误代码。 这些函数提供了对网络连接和侦听器的详细信息包括模块所有者信息这对于网络诊断和安全分析非常有用。例如GetOwnerModuleFromUdpEntry 函数可以帮助确定哪个应用程序或模块拥有特定的 UDP 端口而 GetTcpTable2 函数可以提供关于 TCP 连接状态的详细信息包括连接的本地和远程端点、状态和拥塞窗口等。 MIB_UDPROW_OWNER_MODULE 结构都包含什么信息 MIB_UDPROW_OWNER_MODULE 结构包含以下信息 dwLocalAddr本地计算机上的 UDP 终结点的 IPv4 地址以网络字节序存储。如果值为零则表示 UDP 侦听器愿意接受与本地计算机关联的任何 IP 接口的数据报。 dwLocalPort本地计算机上的 UDP 终结点的端口号也以网络字节序存储。 dwOwningPid对 UDP 终结点的绑定函数发出调用的进程的进程 ID (PID)。如果 PID 不可用此成员设置为 0。 liCreateTimestamp一个 LARGE_INTEGER 类型的变量表示何时调用 UDP 终结点的绑定函数以 FILETIME 格式存储。 SpecificPortBind一个标志指示是否在上一个绑定操作中为该终结点指定了特定端口。 dwFlags一组标志当前未使用此成员。 OwningModuleInfo一个 ULONGLONG 类型的数组包含所有权信息的不透明数据。这个数组的大小由 TCPIP_OWNING_MODULE_SIZE 定义。 这些信息可以通过调用 GetExtendedUdpTable 函数获得其中 TableClass 参数设置为 UDP_TABLE_OWNER_MODULEulAf 参数设置为 AF_INET。 MIB_TCPTABLE2 结构的指针都包含什么信息 MIB_TCPTABLE2 结构包含以下信息 dwNumEntries一个 DWORD 类型的变量表示 MIB_TCPTABLE2 结构中 MIB_TCPROW2 元素的数量。这个值指示了表中有多少个 TCP 连接。 table一个数组其中的每个元素都是 MIB_TCPROW2 结构。每个 MIB_TCPROW2 结构包含以下信息 dwStateTCP 连接的状态可以是 MIB_TCP_STATE 枚举中的值之一例如 MIB_TCP_STATE_LISTEN、MIB_TCP_STATE_ESTAB 等。dwLocalAddr本地计算机上的 TCP 连接的 IPv4 地址以网络字节序存储。如果值为零则表示侦听器可以接受任何接口上的连接。dwLocalPort本地计算机上的 TCP 连接的端口号以网络字节序存储。dwRemoteAddr远程计算机上的 TCP 连接的 IPv4 地址。如果连接状态是 MIB_TCP_STATE_LISTEN则此值没有意义。dwRemotePort远程计算机上的 TCP 连接的端口号。如果连接状态是 MIB_TCP_STATE_LISTEN则此成员没有意义。dwOwningPid拥有该 TCP 连接的进程的进程 ID (PID)。dwOffloadStateTCP 连接的卸载状态指示该连接是否被卸载到网络接口卡或其他硬件以提高性能。 MIB_TCPTABLE2 结构通常由 GetTcpTable2 函数填充该函数检索本地计算机上的 IPv4 TCP 连接表并返回这些信息。这个结构提供了一种方式来枚举和检查系统上当前的 TCP 连接状态。
http://www.zqtcl.cn/news/861145/

相关文章:

  • 郑州网站推广排名公司win7上怎样卸载wordpress
  • 科技网站有哪些wordpress代码编辑器件
  • 做英文企业网站多钱钱wordpress调用外链图片
  • 自学网站查分数西双版纳傣族自治州天气
  • 网站建设一个多少钱wordpress朗读句子插件
  • 网站关键词怎么填写找代理商的渠道有哪些
  • 网站开发销售简历范文新建网站网络空间
  • 舟山外贸建站公司制作公司简介
  • 菜鸟是什么网站威海网站建设费用
  • 网站开发花费如何制作个人网页兼职
  • 网站鼠标特效用户体验最好的网站
  • 网站设计步骤图南通网站建设公司
  • 做盗版系统网站会不会开发次元世界
  • 下载爱南宁官方网站手机app开发软件有哪些
  • 云浮网站设计不收费的企业查询网站
  • 网站栏目怎么做iis网站筛选器被挂马
  • 网站开发中遇到的主要问题品牌营销策略包括哪些内容
  • 网站制作易捷网络十大社区团购平台有哪些
  • 哈尔滨口碑好的建站公司做网站制作一般多少钱
  • 河南网站网站制作华为品牌vi设计
  • 网站设置默认主页甘肃省第八建设集团公司网站
  • 自己做网站美工关键词优化排名网站
  • 淄博手机网站建设报价商业网站地方频道
  • 小说网站开发业务逻辑php 网站
  • 专业的做网站动态个人网站模板
  • 设计师网站设计网站开发试题库
  • 做网站是用c 吗东莞网络推广优化
  • 外贸soho网站建设wordpress配置搜索引擎优化
  • 嘉兴网站公司安卓优化大师2023
  • 电影网站开发影院座位问题正能量网站大全