DLL注册问题,如何使DLL能用regsvr32正常注册?(100分)

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

hyby

Unregistered / Unconfirmed
GUEST, unregistred user!
为什么我做的DLL在使用regsvr32进行注册时提示说:
“e:/mydll.dll was loade, but the DllRegisterServer entry point was not found.”
以至于我的程序无法在WIN2000中正常运行。但在WIN9X中和XP中不需注册DLL却可正常运行在程序。是否我的DLL制作有问题,关键出在哪?
 
也不是所有的DLL都需要注册啊,只有基于COM的需要注册
 
to hyby:
你知不知道regsvr32在注册一个dll时其实就是调用在dll中声明的DllRegisterServer函数
这个函数在ActiveX框架中由delphi自动处理了,但在普通如你所写的dll中却没有声明该
函数,当然要出现你看到的提示了。
你的编写的dll程序连同调用它的程序最好到win2000中全部重新编译后在运行看看。
 
To windbell:我知道应该有一个DllRegisterServer函数(出错提示已很清楚了),但我
不知如何设置这个函数,我查考的几本书里都根本没提到这个函数,我想可能因为不用它
在WIN9X和XP中也没有任何问题。我在WIN2000中重新编译了这个DLL,问题照旧!
你有空能否给我传一个在WIN2000下能用的DLL框架吗?非常感谢!
hyb518@vip.sina.com
 
我写了静态和动态的有关DLL的代码,想生成DLL的文件,供其他的程序调用,怎么做啊,直接运行不行,
说要run->parameters,??谢谢
 
同意楼上
 
如果你只想用dll共享你的函数或其它的数据,就不注册.只有作为com服务器时才要注册.
在delphi中制作dll很方便,细节不用你考虑,它会根据你要生成的dll类型来自动生成的必
要框架.
 
to wendball:我的DLL就是共享一些函数和功能模块的,不是COM,我也用Delphi中的DLL
模板生成过一个标准DLL,只用了一个Hello界面,但在WIN2000中问题依旧!实在不明白。
 
结束了!
 
后退
顶部