+ -
当前位置:首页 → 问答吧 → apache 如何调用dll

apache 如何调用dll

时间:2011-12-06

来源:互联网

我写了一个测试dll文件和lib//VC6.0 C++
函数名为sum(a,b),返两数之和

# Begin PHP Configure of PHPnow
LoadModule php5_module "../php-5.2.14-Win32/php5apache2_2.dll"
LoadModule php5_module "../php-5.2.14-Win32/ext/testFunc.dll"
apache 说Module已经加载了,没重名
我是C++写的testFunc,也没有.c文件
请教如何解决

作者: franzhong   发布时间: 2011-12-06

报错是哪个Module已经加载了?

作者: kyzy_yy_pm   发布时间: 2011-12-06

引用 1 楼 kyzy_yy_pm 的回复:

报错是哪个Module已经加载了?

php5_module 重复,我也放在这文件夹下了

作者: franzhong   发布时间: 2011-12-06

首先 apache 是不能加载你这样的 DLL 的。如果你需要扩充 apache 的功能的话,需要按 apache 的预定书写扩充模块。你的显然不是,因为你的不知道如何加载

其次,加载模块的声明为
LoadModule 模块名 目标文件名

模块不能同名,并符合 apache 的命名约定

作者: xuzuning   发布时间: 2011-12-06

引用 2 楼 franzhong 的回复:

引用 1 楼 kyzy_yy_pm 的回复:

报错是哪个Module已经加载了?

php5_module 重复,我也放在这文件夹下了

你在配置文件中搜索下重复的那个某块名,看看是不是加载了两次,我原来就是那么回事

作者: kyzy_yy_pm   发布时间: 2011-12-06

引用 3 楼 xuzuning 的回复:

首先 apache 是不能加载你这样的 DLL 的。如果你需要扩充 apache 的功能的话,需要按 apache 的预定书写扩充模块。你的显然不是,因为你的不知道如何加载

其次,加载模块的声明为
LoadModule 模块名 目标文件名

模块不能同名,并符合 apache 的命名约定

我这是个包,能加载dll,php5_module不就是dll吗
不过多数都是加载so,可我只有dll
我稍稍有点明白了,那个模块的名称是如何来的,我新的dll该叫什么模块名

作者: franzhong   发布时间: 2011-12-06

引用 4 楼 kyzy_yy_pm 的回复:

引用 2 楼 franzhong 的回复:

引用 1 楼 kyzy_yy_pm 的回复:

报错是哪个Module已经加载了?

php5_module 重复,我也放在这文件夹下了

你在配置文件中搜索下重复的那个某块名,看看是不是加载了两次,我原来就是那么回事

是加载两次啊,因为里面就一个有加载dll的地方,所以我又复制了一句放下面
结果发现模块名不知叫啥,所以只改了文件路径

作者: franzhong   发布时间: 2011-12-06

该文件路径是没用的,只要模块名称或者没款里面的功能中有名称相同的都会出问题

作者: kyzy_yy_pm   发布时间: 2011-12-06

有人知道该如何命名模块吗

作者: franzhong   发布时间: 2011-12-06

相关阅读 更多

热门下载

更多