zoukankan      html  css  js  c++  java
  • activex控件开发时如何用ie8进行调试

    这阵子在搞一个activex的项目,发现dll型的输出控件比较难调试,导致我郁闷了几天了,调试不进去的话就定位不到错误,后面的工作就受阻了。试了好多种方法都不行,原来是不了解ie所致的。好像自从4.0以后,ie在我们打开一个网页时,会启动一个主的进程,和一个副进程,ie的调试器只touch到副进程是不行的,还得touch到主进程才可以。这个我也不确定是否正确,不过要使vs调试到activex工程里面去的话,我们还得按照下面的方法做。

    第一步:选择activex项目,打开项目属性,在“configuration properties”-> “debugging”中的command 中选择ie浏览器所在位置,一般是C:\Program Files\Internet Explorer\iexplore.exe;在下面的command arguments里面输入你写的html测试页面。
    第二步:选择菜单中的“debug“->”start debugging“,或者直接F5;这样调试就开始了,但是我们光这样的话我们调试不进去,我们还需要做下面关键的一步。
    第三步:选择菜单中的”debug“->”attacch to process“,在下面的”available processes“中,你可以看到一个ieexplore的进程已被选中,但是还有一个ieexplore进程未被选中,我们选择未被选择ieexplore进程,然后选择”attach“将该进程附加到调试器上,这样我们就能调试activex内部的代码了。


    至于如何调试,很简单,在你想要调试的代码前打上断点就可以了。

    ATL 无窗口 ActiveX 控件中,得到容器窗口句柄的方法
    2010-11-03 19:31
    CComPtr < IOleClientSite > spClientSite;
    GetClientSite( &spClientSite );
    CComQIPtr < IOleInPlaceSite > spSite = spClientSite;

    HWND hwnd;
    spSite->GetWindow( &hwnd );

  • 相关阅读:
    原型与原型链
    数据类型与计算
    JavaScript实现版本号比较
    vue依赖
    vue
    面试经验
    第十一节课 课堂总结
    第十一次作业
    第十课课堂总结
    第十次作业
  • 原文地址:https://www.cnblogs.com/zdxster/p/1945874.html
Copyright © 2011-2022 走看看