OCX和DLL文件必须注册才能使用吗?
在程序执行时是怎样寻找这些控件的呢?是先找 SYSTEM目录还是先找程序所在目录

解决方案 »

  1.   

    是的,先是系统目录下,System(system32)下,windows下,以及系统变量%PATH%中的所有路径,最后是程序所在目录
      

  2.   

    如果我不在系统注册,只是把多有用到的DLL,和OCS放到程序目录下,程序可以执行吗?
      

  3.   

    不可以执行
    打包安装吧还有你说的DLL是哪一种?
    如果不是com的,那么放在程序目录下就可以执行了
      

  4.   

    如果我不在系统注册,只是把多有用到的DLL,和OCS放到程序目录下,程序可以执行吗?
    ====================
    不一定!有的DLL和OCX是互相引用的,所以有时候并不成功,最好注册,这样万无一失
      

  5.   

    那么如何注册呢?注册了放在程序目录内也可以吗?
    DLL有几种?可以介绍一下吗?
    有一些控件如果SYSTEM文件夹内有,我又放了一个在我的程序目录中,并且注册了,
    这样会产生冲突吗?是不是最后一次注册把前一次抵消了呢?
    机器上所有用到这个空间的程序都到我新注册的地方来运行?
    请教。。
      

  6.   

    dll 是可以的,我常这么做。OCX 不知道了。
    计算机找到第一个,就不会再找了。你可以用FILEMON看看。
      

  7.   

    给你介绍下windows搜索DLL的顺序
    1、包含EXE文件 的目录
    2、进程的当前目录
    3、Windows的系统目录
    4、Windows目录
    5、在Path环境变量里列出的目录!!!
      

  8.   

    如果你怕你的程序出错,可以再程序最前面(最好是Sub Main过程中)每次注册一次
    运行regsvr32 DLL/ocx名 /s
    当然用安装工具打包是最好的方法例如Setup Factory
      

  9.   

    S F 原来用过一次,不是很会用,它会自动把程序放到系统目录里马?
    之所以不想注册,想放在程序目录里,是因为我有一次用VB自带大包工具打包了一个程序
    在98下安装完成需要重新启动,启动完毕98就出现错误了,死活进不去了  7456
    会不会出现不兼容问题,比如我上次那个程序在2000下开发的,装到98下实验,如果有同名的DLL或OCX,安装程序是不是不提示自动把文件给替换了啊,
    还有再问一下如何注册  cso(sjxsoft-天水是我家)  这句话是直接在程序中打吗?
    当你注册时,要写路径吗?还是必须在系统文件夹下面
      

  10.   

    注册文件执行命令:
    regsvr32 DLL或控件的全名(含路径)