我想用VB建立一activeX控件供ASP调用.现在问题如下,此DLL里要用到webserver控件,但ASP调用时不能任何界面控件,请问怎么实现??(也就是我要在一个类里面自己生成webserver控件,并且使它正常工作)

解决方案 »

  1.   

    不太明白.如果那样你只要不启动带控件的form好了实际我很怀疑你这样设计是否合理
      

  2.   

    在ActiveX DLL工程里面添加一个Form用来作为WebBrowser的容器,在该窗体中添加引用WebBrowser的公共接口(属性/方法等)
    在类模块中需要使用到WebBrowser功能的地方,定义该Form的窗体变量,Show窗体,将该窗体Visible设为False,然后可直接调用该窗体对象的上面定义好的属性方法等。
      

  3.   

    "在ActiveX DLL工程里面添加一个Form用来作为WebBrowser的容器,在该窗体中添加引用WebBrowser的公共接口(属性/方法等)
    在类模块中需要使用到WebBrowser功能的地方,定义该Form的窗体变量,Show窗体,将该窗体Visible设为False,然后可直接调用该窗体对象的上面定义好的属性方法等。"===================================================
    问题是在ASP中调用DLL的话,一执行到窗体的方法事件,就会出错.比如 form.visible=hide.
    asp不支持任何界面元素接口.
      

  4.   

    我问问题的时候没说清楚.是ASP不能执行任何带界面元素的控件,并不是程序要求.我怎样在这种前提下,在类模块里实例化一个webbrowser控件,并调用它的事件?
      

  5.   

    //是ASP不能执行任何带界面元素的控件,并不是程序要求.我怎样在这种前提下,在类模块里实例化一个webbrowser控件,并调用它的事件?实例化webbrowser控件干什么,我建议你说明一下你的项目需求,我怀疑你的思路有问题
      

  6.   

    to: rainstormmaster(暴风雨 v2.0) 分析网页结构用的.
    自己写好像比较麻烦,想偷偷懒.
    第一,这样是否可行?
    第二,不可行的话,能不能讲讲你的思路?
      

  7.   

    可以用界面的的
    这样:<OBJECT classid=clsid:AB578B51-EBD6-44C7-844B-9AC40082A11E></OBJECT>
    其中classid=clsid:后面的号码是在注册表HKEY_CLASSES_ROOT中按你的工程名.控件名找到的
    [email protected]
    我以前做过这个,如果需要的话联系我