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

SHELL32!CDefView::_OnFSNotify函数是如何被调用的


第一部分:

void CRegisteredClient::_SendNotification(CNotifyEvent *pne, BOOL fNeedsCallbackEvent, SENDASYNCPROC pfncb)
{


        if (!SendMessageCallback(_hwnd, _wMsg,
                                        (WPARAM)pme->hChange,
                                        (LPARAM)_dwProcId,
                                        pfncb,
                                        (DWORD_PTR)pme))
        {


第二部分:

1: kd> g
Breakpoint 26 hit
SHELL32!CDefView::s_WndProc:
001b:77315328 6a10            push    10h
1: kd> dv
           hWnd = 0x0004005c
           uMsg = 0x4a0
         wParam = 0x5e4
         lParam = 0n1508
           lres = 0n0
         cookie = 0x13bd5a8


   case WM_DSV_FSNOTIFY:
        {
            LPITEMIDLIST *ppidl;
            LONG lEvent;

            LPSHChangeNotificationLock pshcnl = SHChangeNotification_Lock((HANDLE)wParam, (DWORD)lParam, &ppidl, &lEvent);
            if (pshcnl)


第三部分:


    case WM_DSV_FSNOTIFY:
        {
            LPITEMIDLIST *ppidl;
            LONG lEvent;

            LPSHChangeNotificationLock pshcnl = SHChangeNotification_Lock((HANDLE)wParam, (DWORD)lParam, &ppidl, &lEvent);
            if (pshcnl)
            {
                if (_fDisabled ||
                    (CallCB(SFVM_FSNOTIFY, (WPARAM)ppidl, (LPARAM)lEvent) == S_FALSE))
                {
                    lParam = 0;
                }
                else
                {
                    lParam = _OnFSNotify(lEvent, (LPCITEMIDLIST*)ppidl);        SHELL32!CDefView::_OnFSNotify
                }
                SHChangeNotification_Unlock(pshcnl);
            }
        }
        return lParam;

相关文章:

  • MySQLvs Redis 事务:核心差异详解(简单易懂)
  • 49.日常算法
  • 深入解析MyBatis中一对一与一对多映射的实现方法与区别
  • Golang的代码注释规范指南
  • 计算机毕业设计SpringBoot+Vue.js众筹网站系统(源码+文档+PPT+讲解)
  • JavaScript实现著名的“两数之和”问题
  • C# Enumerable类 之 数据(类型)转换
  • Linux之kernel(1)系统基础理论(5)
  • 详细探索如何用脚本实现M小ySQL一键安装与配置,提升运维效率!
  • # 【Unity】【游戏开发】赛车游戏中碰撞加速的实现方法
  • LeetCode 692. 前K个高频单词:多种解法与实现技巧
  • YOLO11改进-模块-引入多尺度小波池化变压器MWPT 通过结合小波变换、多尺度池化以及门控机制等技术解决多尺度、小目标、边缘模糊等问题
  • 【GNN】第二章:图数据
  • 【电路笔记 TMS320C6***DSP】外部存储器接口 A EMIFA向FPGA(作为异步存储器)写入数据的示例
  • Python学习(十四)pandas库入门手册
  • 自学Java-JavaSE基础加强(File、IO流)
  • 市场趋势解析与交易策略优化
  • C# Unity 面向对象补全计划 之 [反射]自动处理带有自定义[特性]的类
  • 对celery的,路径,任务路径问题。
  • QDBus:Qt对DBus的封装支持
  • 设计兼职网站推荐/宁波seo网络推广优化价格
  • 湖南建设人社网/济南seo网站关键词排名
  • wordpress企业官网主题/seo查询百科
  • 苏州360推广网站建设/线上宣传渠道
  • 怎样做网站静态/负面口碑营销案例
  • wordpress网页设计价格设计/宁波关键词排名优化