[阅读: 354] 2005-11-03 07:46:30
一个DLL,因为输出的函数有String类型的参数和返回值,所以DLL的工程文件首先引用了ShareMem单元,调用这个DLL的工程同样也第一个uses了这个单元,测试没问题.
现在要在一个COM里调用这个DLL, 运行起来也没什么问题,但是如果使用静态连接方式,在使用regsvr32注册这个com组件的时候会在报注册成功之后报0x000000000内存不能为read的错误,如果DLL工程不引用ShareMem单元则没问题,, 或者改为动态链接的方式也没有问题,用delphi的Run-->Register ActiveX Server菜单来注册也没有问题,这会是什么原因?大家帮忙分析下
......... @@@@@ @@@@@.........
........ @ @ @ @.........
....... @@@ @ @ .........
...... @@ @ @ .........
...... @@@@@@@ @@@@@ th .......
.... ----------------------- ......
... C E N T U R Y ....
... ----------------------- ...
.. @@@@@ @@@@@ @ @ @@@@@ ..
== @ @ @ @ @ ==
__||__ @ @@@@ @ @ __||__
| | @ @ @ @ @ | |
_________|______|_____ @ @@@@@ @ @ @ _____|______|____