鸟叔叔不吃菜 2021-04-26 18:45 采纳率: 25%
浏览 202

windows 10 c++获取补丁列表有什么方法 ?

我尝试用访问注册表的方式 获取了补丁,目录是这个 “HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\Windows\\CurrentVersion\\Component Based Servicing\\Packages” 但是 该目录下巨多 ,我应该如何筛选?

我对照了一下腾讯电脑管家的已安装补丁,有13个 ,我在命令行下 使用“systemInfo | find "KB"” 的到的是12个 (腾讯电脑管家多了一个KB2504637)

请问 应该怎么做?

struct SoftInfo softinfo;
    HKEY RootKey;            // 主键
    LPCTSTR lpSubKey;        // 子键名称
    HKEY hkResult;            // 将要打开键的句柄 
    HKEY hkRKey;
    LONG lReturn;            // 记录读取注册表是否成功
    CString strBuffer;
    CString strMidReg;

    DWORD index = 0;
    TCHAR szKeyName[255] = { 0 };        // 注册表项名称
    TCHAR szBuffer[255] = { 0 };
    DWORD dwKeyLen = 255;
    DWORD dwNameLen = 255;
    DWORD dwType = REG_BINARY | REG_DWORD | REG_EXPAND_SZ | REG_MULTI_SZ | REG_NONE | REG_SZ;
     RootKey = HKEY_LOCAL_MACHINE;
lpSubKey = L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Component Based Servicing\\Packages";

    //下面是打开注册表, 只有打开后才能做其他操作
    //主键和子键共同组成了注册表中的目录
    lReturn = RegOpenKeyEx(RootKey, lpSubKey, 0, KEY_WOW64_64KEY |KEY_ALL_ACCESS, &hkResult);

    if (lReturn == ERROR_SUCCESS)
    {

        while (ERROR_NO_MORE_ITEMS != RegEnumKeyEx(hkResult, index, szKeyName, &dwKeyLen, 0, NULL, NULL, NULL))
        {
            index++;
            strBuffer.Format(_T("%s"), szKeyName);
            if (!strBuffer.IsEmpty())
            {
                strMidReg = (CString)lpSubKey + _T("\\") + strBuffer;
                auto aa = RegOpenKeyEx(HKEY_LOCAL_MACHINE, strMidReg, 0, KEY_WOW64_64KEY | KEY_ALL_ACCESS, &hkRKey);

这是部分代码 下面的都是多余部分

  • 写回答

1条回答 默认 最新

  • 源代码大师 博客专家认证 2021-04-26 20:33
    关注

    C和C++完整教程:https://blog.csdn.net/it_xiangqiang/category_10581430.html
    C和C++算法完整教程:https://blog.csdn.net/it_xiangqiang/category_10768339.html

    评论

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?