在Windows中加载php扩展

时间:2012-09-23 11:09:29

标签: windows dll php-extension

我在Windows 7中加载我的扩展程序时遇到问题。 我已经在我的Windows上安装了php和IIS,当我检查phpinfo()页面时,我发现我的extension_dir是c:/ php / ext。所以我将我的dll文件复制到该目录,并将extension=php_mylib.dll添加到php.ini文件,然后重新启动IIS并检查我的扩展是否已加载:

<?PHP
if (dl('php_mylib.dll')){ print ("YES")}
else{ print ("NO")}
?>

但每次运行此代码时我都会收到“NO”。我感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

今天在略有不同的系统上遇到类似的问题 - Win 2008 R2 / IIS 7.5 / PHP 5.3.9 nts

我希望启用php_printer.dll进行网络打印。没有找到不涉及编译dll的解决方案,但我确实知道有人启用了安全模式。

此信息来自手册@ function.dl.php

7年前发布的信息帮助了我,似乎适合我的系统。

以下是我发现有用的部分,来自前面点ru的mag_2000:

//make sure that we are ABLE to load libraries
if( !(bool)ini_get( "enable_dl" ) || (bool)ini_get( "safe_mode" ) ) {
  die( "dh_local(): Loading extensions is not permitted.\n" );
}

//check to make sure the file exists
if( !file_exists( $extensionFile ) ) {
 die( "dl_local(): File '$extensionFile' does not exist.\n" );
}

//check the file permissions
if( !is_executable( $extensionFile ) ) {
  die( "dl_local(): File '$extensionFile' is not executable.\n" );
}

希望有所帮助!