控件是自定义控件,单独编译的ocx,在win2000系统及xp系统下编译,运行均正常,在98环境下编译通过后,调试运行都通不过!

解决方案 »

  1.   

    应该不会是控件太多.
    你注册一下你控件吧.
    用regsvr32
      

  2.   

    控件注册了,在加载时控件数组load 了一半,剩下的给"溢出"了.郁闷中!
      

  3.   

    你先测试一下.选不要在LOAD事件中加载控件.
    另外找个按钮来加载这个控件看一下会不会溢出,再分析.
      

  4.   

    我刚刚 做完测试 ,在xp下,我load到了5000没有问题,98下vb+sp6,textbox加载到945,自定义的ocx为475个出现内存溢出.
      

  5.   

    98下128m,xp下256m,另外在xp下做测试内存负荷并不大.
      

  6.   

    自己顶一下,控件数目在win98里好像真的有限制,有没有哪位老兄帮帮忙?
      

  7.   

    不仅在98下有限制,在XP也是有限制的
    准备地说,应是VB对一个窗口所使用的控件有限制,不能超过128个,如果超过28个,只有使用控件数组的办法解决。
    如果每个窗口都没有超过128个,那就只受内存的限制了
      

  8.   

    "textbox加载到945,自定义的ocx为475个出现内存溢出."你这样做下测试,可能会找到更具体的原因。
    1. 只加载textbox控件数组,加载2000个,看是否有问题。
    2. 如果没问题,将你的控件换为其他的一个标准控件,为了加快测试速度,你最好加载image或lable这样的轻量控件。
    如果也没问题,那么我的猜想可能是正确的。因为这个数量已超过你出错时的控件数量了。那你就应该检查你的控件了。
      

  9.   

    我加载的就是vb里的textbox,在98+vbsp6环境下的,98se系统是新装的,没有打任何sp,在64M内存和128M内存环境下测试结果是不一样的,所以我猜测98里系统分配程序内存与2000或者xp的差别很大.我不想再做测试了,原来以为win98可以有sp打,昨天使用windowsupdate 发现了13项关键更新,但没有与内存有关的,所以我就没有装.songyaowu(韧恒)老兄,您的第一个测试在我的环境下就通不过.
      

  10.   

    实在不行,只好说服领导所有客户机换win2000或者xp了.又是一笔不小的开销!
      

  11.   

    我用的大控件更多,不必.窗体确实容纳控件有限,但一般情况下用不着那么多.我曾在一个窗体放了五个预览发票的样式,再加TOLLBAR,VIEWTREE等一大堆控件,到一定数量,再放就放不下了,说已经超出控所能容控件的最大数目.我只好把一些线换成SHAPE.把几个LABEL换成一个,这是问题一,但只会出现在设计阶段.楼主遇到的确实是内存(管理)的问题,我经常在调试情况下,出现这个问题,2K和XP下不遇到只有98下遇到,但98也不是所有的都遇到,正版刻录光盘总遇到,重启机就好了.再改一会又完了(256M内存).而市面上的盗版98就很少遇到.说明绝不是内存大小的问题,因为我是256M的.而且出现这情况用魔法免子整理出80M来也不好使.就是98操作系统的问题.有一种可能情况但不好说.可能是.