zoukankan      html  css  js  c++  java
  • Windows GUI代码与Windows消息问题调试利器

    Windows GUI代码与Windows消息问题调试利器

    记得很久前有这么一种说法: 人类区别于动物的标准就是工具的使用。同样在软件开发这个行业里面,对于工具的使用也是高手和入门级选手的主要区别,
    高手往往靠工具的使用在关键的时候打开局面,在适当的时候使用适当的工具就往往可以事半功倍。

    首先让我们来讨论如下两个简单的问题。

    1. 如果你写的一个软件出了一个问题,这个问题只有在关闭程序的时候出现,你怎么调试呢?
    2. 如果你写的一个软件出了一个问题,这个问题只有在关闭机器的时候出现,你怎么调试呢?
    3. 如果你写的一个软件出了一个问题,你怀疑可能是这个程序消息处理有问题,你怎么调试呢?
    3. 如果你写的一个软件出了一个问题,你怀疑可能是这个程序的资源文件属性可能有问题,你怎么调试呢?

    你不会真的想一次一次的去重启电脑来重现问题吧?呵呵..

     

    对于这些问题我首先想介绍的是SPY++, 这个伴随Visual Studio多个版本的工具其实很多人并没有很好的利用,更有甚者竟然还造轮子,
    不是说不可以造轮子,如果你因为不知道有这个东西去造轮子,我就要鄙视你了,呵呵,不要瞧不起Visual Studio自带的工具,他们往往可以干很多NB的事,只是你可能

    还不太会用。

    不多说了,下面上图,打开spy++ 将查找窗口的小圆圈拖拽到你感兴趣的小圆圈上面去,选择属性,你可以看到所有有关这个窗口的属性,选择消息,你就可以捕获到这个

    窗口接收到的所有的消息,对于消息相关的问题,消息的追踪,资源属性问题的调试,说SPY++是神器,一点都不为过。

    虽然SPY++对于消息的捕获称的上是神器,但是他有一个功能的缺失,他只能捕获消息,不能给窗口发消息,这对于很多问题的模拟和分析就很是不方便

    于是有了下面一个我要介绍的工具: SendMessage, 是个open source的小工具,你可以从下面的链接下载:

     

    http://sourceforge.net/projects/stefanstools/files/SendMessage/

    SendMessage这个小工具的使用方法和SPY++特别像,所以说他们配合在一起使用也就是水到渠成的事,通过这个工具选择某个窗口,

    你可以对这个窗口send message, post message, 直接选择不同时期的消息进行发送,包括关机前才会有系统发出的消息模拟。

     

    小节

    通过对这两个小工具的介绍,我相信开篇的几个问题读者已经有了答案,但是我还是想说的是,作为软件工程师,遇到问题千万不要蛮干,

    对的时候使用对的工具太重要了,否则就算你加再多的班也是徒劳,希望对大家有所帮助,兄弟们加油!

  • 相关阅读:
    python中xrange和range的异同
    Python:使用threading模块实现多线程编程
    python Queue模块
    Python中pass语句的作用
    Python的作用域
    eclipse颜色配置
    protobuf
    python调试总结
    chardet安装
    Windows下搭建PHP开发环境
  • 原文地址:https://www.cnblogs.com/pugang/p/3776665.html
Copyright © 2011-2022 走看看