CM_Get_Device_ID_List_Size_ExA 函数是 Windows 操作系统提供的 Win32 API 函数之一,位于 Cfgmgr32.h 头文件中。该函数用于获取设备实例的设备 ID 列表所需的缓冲区大小。以下是该函数的基本信息:CONFIGRET CM_Get_Device_ID_List_Size_ExA( PULONG pulLen, DEVINST dnDevInst, ULONG ulFlags, HMACHINE hMachine);参数说明: pulLen:用于接收设备 ID 列表所需缓冲区大小的指针。 dnDevInst:设备实例的句柄。 ulFlags:标志,指定函数的行为。 hMachine:远程计算机的句柄。传入 NULL 表示本地计算机。该函数的主要作用是计算给定设备实例的设备 ID 列表所需的缓冲区大小,并将结果存储在提供的指针中。通过首先调用这个函数来获取所需的缓冲区大小,然后分配足够的内存来存储设备 ID 列表,可以有效地避免缓冲区溢出。同样,使用该函数需要在编译时链接 Cfgmgr32.l...
CM_Get_Device_ID_List_ExW 函数同样是 Windows 操作系统提供的 Win32 API 函数之一,位于 Cfgmgr32.h 头文件中。该函数用于获取设备实例的设备 ID 列表,与先前提到的 CM_Get_Device_ID_List_ExA 相比,主要的区别在于字符集的处理。以下是该函数的基本信息:CONFIGRET CM_Get_Device_ID_List_ExW( DEVINST dnDevInst, PWSTR Buffer, ULONG BufferLen, ULONG ulFlags, HMACHINE hMachine);参数说明: dnDevInst:设备实例的句柄。 Buffer:用于存储设备 ID 列表的缓冲区(Unicode 字符串)。 BufferLen:缓冲区的大小,以字节为单位。 ulFlags:标志,指定函数的行为。 hMachine:远程计算机的句柄。传入 NULL 表示本地计算机。该函数的作用与先前提到的函数类似,都是根据给定的设备实例句柄,将相应设备的...
CM_Get_Device_ID_List_ExA 函数同样是 Windows 操作系统提供的 Win32 API 函数之一,也位于 Cfgmgr32.h 头文件中。该函数用于获取设备实例的设备 ID 列表。以下是该函数的基本信息:CONFIGRET CM_Get_Device_ID_List_ExA( DEVINST dnDevInst, PCHAR Buffer, ULONG BufferLen, ULONG ulFlags, HMACHINE hMachine);参数说明: dnDevInst:设备实例的句柄。 Buffer:用于存储设备 ID 列表的缓冲区。 BufferLen:缓冲区的大小,以字节为单位。 ulFlags:标志,指定函数的行为。 hMachine:远程计算机的句柄。传入 NULL 表示本地计算机。该函数的主要作用是根据给定的设备实例句柄,将相应设备的设备 ID 列表存储到提供的缓冲区中。设备 ID 列表是一个以 NULL 分隔的字符串,其中包含一个或多个设备 ID。同样地,使用该函数需要在编...
CM_Get_Device_ID_ExW 函数是 Windows 操作系统提供的 Win32 API 函数之一,位于 Cfgmgr32.h 头文件中。该函数用于获取指定设备实例的设备 ID。以下是该函数的基本信息:CONFIGRET CM_Get_Device_ID_ExW( DEVINST dnDevInst, PWSTR Buffer, ULONG BufferLen, ULONG ulFlags, HMACHINE hMachine);参数说明: dnDevInst:设备实例的句柄。 Buffer:用于存储设备 ID 的缓冲区。 BufferLen:缓冲区的大小,以字节为单位。 ulFlags:标志,指定函数的行为。 hMachine:远程计算机的句柄。传入 NULL 表示本地计算机。该函数的主要作用是根据给定的设备实例句柄,将相应设备的设备 ID 存储到提供的缓冲区中。设备 ID 是用于唯一标识设备的字符串,通常基于设备的硬件信息。请注意,使用该函数需要在编译时链接 Cfgmgr32.lib 库。如果在代码中...
在 Win32 API 的 Cfgmgr32.h 头文件中,CM_Get_Class_Registry_PropertyW 函数用于获取指定设备类的注册表属性。以下是该函数的原型:CMAPI CONFIGRET WINAPI CM_Get_Class_Registry_PropertyW( _In_ LPGUID ClassGuid, _In_ ULONG ulProperty, _Out_ PULONG pulRegDataType, // 可选 _Out_writes_bytes_opt_(*pulLength) PVOID Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine);函数参数说明如下: ClassGuid: 指向设备类的 GUID 的指针。 ulProperty: 指定要获取的注册表属性,如 CM_DRP_DEVICEDESC。 pulRegDa...
在 Win32 API 的 Cfgmgr32.h 头文件中,CM_Get_Class_Registry_PropertyA 函数用于获取指定设备类的注册表属性。以下是该函数的原型:CMAPI CONFIGRET WINAPI CM_Get_Class_Registry_PropertyA( _In_ LPGUID ClassGuid, _In_ ULONG ulProperty, _Out_ PULONG pulRegDataType, // 可选 _Out_writes_bytes_opt_(*pulLength) PVOID Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine);函数参数说明如下: ClassGuid: 指向设备类的 GUID 的指针。 ulProperty: 指定要获取的注册表属性,如 CM_DRP_DEVICEDESC。 pulRegDa...
在 Win32 API 的 Cfgmgr32.h 头文件中,CM_Get_Class_PropertyW 函数用于获取指定设备类的属性。以下是该函数的原型:CMAPI CONFIGRET WINAPI CM_Get_Class_PropertyW( _In_ LPGUID ClassGuid, _In_ DEVPROPKEY PropertyKey, _Out_ PDEVPROPTYPE PropertyType, _Out_writes_bytes_opt_(*PropertyBufferSize) PBYTE PropertyBuffer, _Inout_ PULONG PropertyBufferSize, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine);函数参数说明如下: ClassGuid: 指向设备类的 GUID 的指针。 PropertyKey: 设备属性键,标识要获取的设备类属性。 PropertyType: 用于接收属性值类型的指针。 ...
CM_Get_Class_NameW 函数是 Windows 配置管理器 (Configuration Manager) 提供的一个函数,用于获取指定设备类 GUID 的友好名称。在 Cfgmgr32.h 头文件中,CM_Get_Class_NameW 函数的原型通常如下:CMAPI CONFIGRET WINAPI CM_Get_Class_NameW( _In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) LPWSTR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags);其中: ClassGuid 是指向设备类 GUID 的指针。 Buffer 是指向接收设备类友好名称的缓冲区的指针。可以为 NULL,用于查询所需缓冲区大小。 pulLength 是指向一个变量,用于输入缓冲区大小和输出实际缓冲区大小。 ulFlags 是保留参数,必须为0。这个函数的作用是获取设备类的友好名称。如果成功,返回 CR_SUCCESS;否则,返回相应的错误码,可以使用 CM_Get_L...
在 Windows 的 Cfgmgr32.h 头文件中,确实存在 CM_Get_Class_NameA 函数。以下是其原型:CMAPI CONFIGRET WINAPI CM_Get_Class_NameA( _In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) LPSTR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags);这个函数的作用是获取指定设备类 GUID 的友好名称。其中参数含义如下: ClassGuid: 指向设备类的 GUID 的指针。 Buffer: 指向接收设备类友好名称的缓冲区的指针。可以为 NULL,用于查询所需缓冲区大小。 pulLength: 指向一个变量,用于输入缓冲区大小和输出实际缓冲区大小。 ulFlags: 保留,必须为0。示例用法:#include <windows.h>#include <Cfgmgr32.h>#include <tchar.h>int main() { CONFIGRET...
在Windows的 Cfgmgr32.h 头文件中,确实存在 CM_Get_Class_Name_ExW 函数。以下是其原型:CMAPI CONFIGRET WINAPI CM_Get_Class_Name_ExW( _In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) LPWSTR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags, _In_opt_ HMACHINE hMachine);这个函数的作用是获取指定设备类 GUID 的友好名称。其中参数含义如下: ClassGuid: 指向设备类的 GUID 的指针。 Buffer: 指向接收设备类友好名称的缓冲区的指针。可以为NULL,用于查询所需缓冲区大小。 pulLength: 指向一个变量,用于输入缓冲区大小和输出实际缓冲区大小。 ulFlags: 保留,必须为0。 hMachine: 机器句柄,指示函数在哪台机器上执行。可以为 NULL,表示本地机器。示例用法:#include <windows.h&g...
在Windows的 Cfgmgr32.h 头文件中,确实存在 CM_Get_Class_Key_NameW 函数。以下是其原型:CMAPI CONFIGRET WINAPI CM_Get_Class_Key_NameW( _In_ LPGUID ClassGuid, _Out_writes_opt_(*pulLength) LPWSTR Buffer, _Inout_ PULONG pulLength, _In_ ULONG ulFlags);这个函数的作用是获取指定设备类 GUID 的注册表键名。其中参数含义如下: ClassGuid: 指向设备类的 GUID 的指针。 Buffer: 指向接收设备类键名的缓冲区的指针。可以为NULL,用于查询所需缓冲区大小。 pulLength: 指向一个变量,用于输入缓冲区大小和输出实际缓冲区大小。 ulFlags: 保留,必须为0。示例用法:#include <windows.h>#include <Cfgmgr32.h>#include <tchar.h>int main() { CONF...
CM_Get_Child 函数是 Windows 配置管理器 (Configuration Manager) 提供的一个函数,用于获取指定设备实例的子设备实例。在 Cfgmgr32.h 头文件中,CM_Get_Child 函数的原型通常如下:CMAPI CONFIGRET WINAPI CM_Get_Child( OUT PDEVINST pdnDevInst, IN DEVINST dnDevInst, IN ULONG ulFlags);其中: pdnDevInst 是输出参数,用于接收子设备实例的指针。 dnDevInst 是输入参数,表示父设备实例。 ulFlags 是输入参数,指定一些标志,通常为0。这个函数的作用是通过提供的父设备实例获取其第一个子设备实例。如果成功,返回 CR_SUCCESS;否则,返回相应的错误码,可以使用 CM_Get_Last_Error 函数获取详细的错误信息。以下是一个示例代码:#include <windows.h>#include <Cfgmgr32.h>#include <tchar.h>...
在 Win32 API 的 Cfgmgr32.h 头文件中,确实有名为 CM_Free_Res_Des_Handle 的函数。这个函数用于释放先前通过 CM_Get_Next_Res_Des 获取的资源描述符资源句柄。以下是该函数的基本信息:CMAPI CONFIGRET WINAPI CM_Free_Res_Des_Handle( RES_DES rdResDes, ULONG ulFlags);参数说明: rdResDes: 要释放的资源描述符句柄。 ulFlags: 保留字段,必须为零。函数返回一个 CONFIGRET 类型的值,用于指示操作的成功与否。可能的返回值包括: CR_SUCCESS: 操作成功。 其他值表示发生了错误,可以通过 CM_Get_Last_Error 函数获取详细的错误信息。这个函数通常在设备配置信息管理中用于释放先前获取的资源描述符资源句柄。在使用这类底层的系统函数时,确保了解其在系统中的影响和正确使用方式。最好查阅相关的官方文档以获取详细信息。
在 Win32 API 的 Cfgmgr32.h 头文件中,确实有名为 CM_Free_Res_Des 的函数。这个函数用于释放先前通过 CM_Get_Next_Res_Des 获取的资源描述符资源。以下是该函数的基本信息:CMAPI CONFIGRET WINAPI CM_Free_Res_Des( PRES_DES prdResDes, RES_DES rdResDes, ULONG ulFlags);参数说明: prdResDes: 指向要释放的资源描述符结构的指针。 rdResDes: 要释放的资源描述符句柄。 ulFlags: 保留字段,必须为零。函数返回一个 CONFIGRET 类型的值,用于指示操作的成功与否。可能的返回值包括: CR_SUCCESS: 操作成功。 其他值表示发生了错误,可以通过 CM_Get_Last_Error 函数获取详细的错误信息。这个函数通常在设备配置信息管理中用于释放先前获取的资源描述符资源。在使用这类底层的系统函数时,确保了解其在系统中的影响和正确使用方式。最好查阅相关的官方文档以获取详细信息。
在 Win32 API 的 Cfgmgr32.h 头文件中,确实有名为 CM_Free_Range_List 的函数。这个函数用于释放先前通过 CM_Query_Range_List 获取的范围列表资源。以下是该函数的基本信息:CMAPI CONFIGRET WINAPI CM_Free_Range_List( RANGE_LIST rlh, ULONG ulFlags);参数说明: rlh: 要释放的范围列表句柄。 ulFlags: 保留字段,必须为零。函数返回一个 CONFIGRET 类型的值,用于指示操作的成功与否。可能的返回值包括: CR_SUCCESS: 操作成功。 其他值表示发生了错误,可以通过 CM_Get_Last_Error 函数获取详细的错误信息。这个函数通常在设备配置信息管理中用于释放先前获取的资源。在使用这类底层的系统函数时,确保了解其在系统中的影响和正确使用方式。最好查阅相关的官方文档以获取详细信息。
在 Win32 API 的 Cfgmgr32.h 头文件中,确实有名为 CM_Free_Log_Conf 的函数。这个函数用于释放先前由 CM_Get_First_Log_Conf 或 CM_Get_Next_Log_Conf 获取的资源。以下是该函数的基本信息:CMAPI CONFIGRET WINAPI CM_Free_Log_Conf( LOG_CONF lcLogConfToBeFreed, ULONG ulFlags);参数说明: lcLogConfToBeFreed: 要释放的逻辑配置句柄。 ulFlags: 保留字段,必须为零。函数返回一个 CONFIGRET 类型的值,用于指示操作的成功与否。可能的返回值包括: CR_SUCCESS: 操作成功。 其他值表示发生了错误,可以通过 CM_Get_Last_Error 函数获取详细的错误信息。这个函数通常在设备配置信息管理中用于释放先前获取的逻辑配置资源。在使用这类底层的系统函数时,确保了解其在系统中的影响和正确使用方式。最好查阅相关的官方文档以获取详细信息。
在 Win32 API 的 Cfgmgr32.h 头文件中,确实有 CM_Enumerate_EnumeratorsW 函数。这个函数与 CM_Enumerate_EnumeratorsA 函数类似,用于列举系统中的设备枚举器(Device Enumerators)。不同之处在于 W 版本使用宽字符(Unicode)。以下是 CM_Enumerate_EnumeratorsW 函数的基本信息:CMAPI CONFIGRET WINAPI CM_Enumerate_EnumeratorsW( ULONG ulFlags, PDEVINSTID_W pszEnumerator, ULONG ulDeviceIDSize, PULONG pulLength, ULONG ulReserved);参数说明: ulFlags: 保留字段,必须为零。 pszEnumerator: 指向一个宽字符数组的指针,用于接收设备枚举器的设备实例标识符(Device Instance Identifier)。 ulDeviceIDSize: pszEnumerator 缓冲区的大小,以...
在 Win32 API 的 Cfgmgr32.h 头文件中确实有 CM_Enumerate_EnumeratorsA 函数。这个函数用于列举系统中的设备枚举器(Device Enumerators)。以下是该函数的基本信息:CMAPI CONFIGRET WINAPI CM_Enumerate_EnumeratorsA( ULONG ulFlags, PDEVINSTID_A pszEnumerator, ULONG ulDeviceIDSize, PULONG pulLength, ULONG ulReserved);参数说明: ulFlags: 保留字段,必须为零。 pszEnumerator: 指向一个字符数组的指针,用于接收设备枚举器的设备实例标识符(Device Instance Identifier)。 ulDeviceIDSize: pszEnumerator 缓冲区的大小,以字节为单位。 pulLength: 指向一个变量的指针,用于接收实际返回的设备实例标识符的大小,以字节为单位。 ulReserved: 保留字段,必须为零。函数返回一个 CO...
在 Win32 API 中,CM_Enable_DevNode 函数是 Cfgmgr32.h 头文件中的一个函数。这个函数用于启用指定的设备节点(Device Node)。以下是该函数的基本信息:CMAPI CONFIGRET WINAPI CM_Enable_DevNode( DEVINST dnDevInst, ULONG ulFlags);参数说明: dnDevInst: 要启用的设备节点的设备实例句柄。 ulFlags: 保留字段,必须为零。函数返回一个 CONFIGRET 类型的值,用于指示操作的成功与否。可能的返回值包括: CR_SUCCESS: 操作成功。 其他值表示发生了错误,可以通过 CM_Get_Last_Error 函数获取详细的错误信息。这个函数通常用于在某些情况下重新启用之前禁用的设备节点。在使用这类底层的系统函数时,确保了解其在系统中的影响和正确使用方式。最好查阅相关的官方文档以获取详细信息。
在 Win32 API 中,CM_Disconnect_Machine 函数是 Cfgmgr32.h 头文件中的一个函数。这个函数用于断开与远程计算机的连接。以下是该函数的基本信息:CMAPI CONFIGRET WINAPI CM_Disconnect_Machine( HMACHINE hMachine);参数说明: hMachine: 要断开连接的远程计算机的句柄。如果要断开与本地计算机的连接,可以传递 NULL。函数返回一个 CONFIGRET 类型的值,用于指示操作的成功与否。可能的返回值包括: CR_SUCCESS: 操作成功。 其他值表示发生了错误,可以通过 CM_Get_Last_Error 函数获取详细的错误信息。此函数通常用于在使用 CM_Connect_Machine 函数与远程计算机建立连接后,完成相关的配置操作后断开连接。在使用这类底层的系统函数时,确保了解其在系统中的影响和正确使用方式。最好查阅相关的官方文档以获取详细信息。
最新文章