我有一个需要使用 PHP 访问 DLL 的项目。服务器是 Windows 机器,Apache 服务器由 XAMPP 提供。
我在网上阅读了多个答案,例如
- 在 PHP 中使用 DLL?
- php与dll通信?
- 通过php调用dll
- http://ca.php.net/manual/en/class.com.php
- http://ca2.php.net/manual/en/book.w32api.php
- http://www.talkphp.com/absolute-beginners/3340-php-how-load-com-dll-file.html
这是我在 HTA
/ Javascript
中调用 DLL 的方式:
<object style="display:none" id="SOME_ID" classid="clsid:SOME_CLASS_ID" codebase="./somePath.dll"></object>
有人有工作的例子吗?
到目前为止,这是我在 PHP 中尝试过的:
$obj = new COM('pathTo.dll');
DLL 的相关信息:
- 使用 Delphi 编译
- 它(当然)是自制的
- 我收到以下错误
the DllRegister Server entry point was not found
当我尝试使用regsvr32
它可以在不注册的情况下使用 regsvr32
吗?
原文由 David Laberge 发布,翻译遵循 CC BY-SA 4.0 许可协议
创建 DLL 文件时,需要使用 模块定义文件。它将包含类似于此的内容:
该定义允许 regsvr32 找到 DllRegisterServer 入口点。
您可以尝试的另一个选项是将 /n 标志传递给 regsvr32。
最后,在您尝试使 DLL 与 PHP 一起工作之前,您需要确保您的 DLL 通常可以正常工作。