中国开发网: 论坛: Delphi/BCB: 贴子 778055
pcplayer
用 D7 做了一个 WEB SERVICE 的 CGI,放到服务器底下,调用出错
错误提示:soap receive content of invalid.....

似乎是接收到的 soap 包格式有错误。查这个错误字符串,得到的结果都是D7的 ISAP 程序会可能导致这个错误,解决方法是把 ISAPI 的工程里的两个单元的 USES 顺序颠倒一下。有人说颠倒一下虽然解决问题,但导致 ISAPI 不能多线程同时处理多个请求,解决办法是把 D6 的 ISAPITHREADPOOL 单元拷贝过来覆盖掉 D7 的。

但这个不是我的问题。我的问题是 CGI。

反复浪费很多时间,最后发现服务器里我放在 CGI 目录底下的 FBClient.dll 是 440K的,这个是 FB2.1的。用 D7 的 DBEXPRESS 调用 FireBird 应该用 380K,也就是 FireBird2.0 带来的 FBClient.dll。

换掉这个 DLL,再次用客户端访问,这次的异常是提示无法调用 MIDAS.DLL,多半是因为 MIDAS.DLL 没有 IIS 的执行权导致的。最简单的解决办法是直接在 CGI 的工程里 USES MIDASLIB,加上,编译,放到服务器里,再次访问,正常了。

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录