本帖最后由 yurenwjq 于 2014-05-04 09:37:54 编辑

解决方案 »

  1.   

    想了想 ,看看这样是不是有这个可能,如果想在页面中显示窗口,那么这个窗口应该在 html 的一个 object中形如<object type="clsid:xxx--xxx-xxxxx">你的页面中要有多个 object 标签,你可以再 ocx 中声明多个类(coclass),然后 为每个OBJECT 制定一个 clsid。由于你的多个页面应该都在一个进程之内,所以 OCX 也处于同一个进程,这样在 SCM 激活的时候,你的各个 COCLASS 实例可以共享各种窗口句柄了。只是觉得有这种可能性,没有真正试过
      

  2.   

    还是要每个网页都嵌入你的ocx对象,然后你对应的显示某一个窗口
      

  3.   

    将你的工程做成ActiveX OCX工程,每个窗口做成OCX控件(一个工程里可以有多个OCX控件),这样,你想在网页里使用窗口都可以了
      

  4.   


    但是这样ocx会生成多个副本 而不是唯一的一个
      

  5.   


    按照想法来说,应该只嵌入一个ocx,其他的地方引用他,我们在框架内嵌入一个ocx后,其他的页面可以通过js来引用他的功能函数,但是页面是需要容器来支持的,所以就碰到纠结点了
      

  6.   


    哥,我这东西肯定是ocx控件啊, 估计你没看懂我的意思
      

  7.   


    哥,我这东西肯定是ocx控件啊, 估计你没看懂我的意思也许吧,但我不知道你是否有理解我的意思:当你5个窗口都独立的时候,你想在网页里怎么镶入应该都可以,对吧?那你在一个ocx文件中包含5个独立的ocx部件,每个部件对应于你的窗口,那你的每个窗口就可以自由的在各个网页中镶入了
      

  8.   


    哥,我这东西肯定是ocx控件啊, 估计你没看懂我的意思也许吧,但我不知道你是否有理解我的意思:当你5个窗口都独立的时候,你想在网页里怎么镶入应该都可以,对吧?那你在一个ocx文件中包含5个独立的ocx部件,每个部件对应于你的窗口,那你的每个窗口就可以自由的在各个网页中镶入了我好像懂了你说的东西, 但又不是全部!  我5个独立的ocx部件, 就算我能分开他们,那么他们怎么引入到我的网页上呢,毕竟一个网页引入一个ocx是需要一个object标签的.而这个标签正好又是一个容器,且我们的ocx也只能生活在他这个容器里面啊!!
      

  9.   

    每个OCX都有独立的GUID啊,又不是5个公用一个GUID
      

  10.   

    不知道我理解的对不对哦,  我在你说的上面理解的意思是,一个大的ocx引入以后,在其他子页面我再用object标签引用这个OCX绑定的其他5个ocx组件GUID, 那么这5个ocx其实是生存在这个大的ocx的副本里面,这样就可以将5个ocx组件分别嵌入到不同的页面,但是他们的内存实在同一块区域中的!
      

  11.   

    应该是这样的.一般ocx被引用的时候,程序部分一般是不创建副本,而是通过内存映射,将实际的代码内存映射到目标线程的逻辑空间中,因此,代码实际是多个线程共用的(如果多个线程使用同一个ocx部件的话)