(共150分)用Active Server Object编写的ocx文件,为什么在有的机子上无法注册? (100分)

  • 主题发起人 Hunter04
  • 开始时间
H

Hunter04

Unregistered / Unconfirmed
GUEST, unregistred user!
测了六台机子,只两台不能通过。
提示错误:“找不到指定的模块。”

另一帖在:
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2363922
 
操作系统一样吗?
 
注册通过的四台中,两台是win2k professional版,两台是Server版,通不过的两台,
全都是Server版。
 
你看看补丁有没有关系
 
什么补丁?
 
可能要有权限,最好用administrator登录
 
不关权限的事啦。
 
现在基本上可以确定应该是少了Delphi的什么包了,因为我又测了一台,可以通过,5台可
以通过的机子有4台装了delphi,两台通不过的都没有装。
我的ocx里使用了IdTcpClient控件,应该是该控件使用到的包的问题。有没有谁可以告诉
该使用什么包?我自己也找找。
 
使用 project->options
里面有一个包的列表
你选中 indy 组件,就会看到都使用什么 bpl 了
把相应 bpl 放到系统的dll搜索目录里可能就行了
 
在project->options->packages下找不到indy组件,不知道是使用什么bpl。
我把delphi6/projects/bpl目录下的所有文件都拷到ocx所在目录,仍然不行。
系统的dll搜索目录该怎样设置?/winnt/system32目录应该是可以的,但我不想把这么多
文件都拷到该目录下,希望能另设一个搜索目录,再逐个从中删除,以判断到底是哪个文件。
 
找到了Indy组件使用的dclindy60.bpl,在delphi6/bin目录下,但仍然不行。
将文件放到winnt/system32目录下也不行。
难道是其它的原因?
 
在project->options->packages
有一个 Internet Direct(INDY) for d6 Property and Components
这个就是 indy 的包

你机器里的名字可能有点差别,因为我装的indy是d7里的
 
把你的OCX按照带RunTime package的方式编译,才会查找相应的Bpl文件的。因此,你可以先用带package方式编译一下,然后再向楼上几位说的,拷贝bpl到相应目录下,试试。
 
没得到答案,时间久了,结帖算了。
 
顶部