2012-07-27 70 views
4

我跟着這個問題的答案信:找不到php_sqlsrv擴展 - 5.3,線程

Connection between MSSQL and PHP 5.3.5 on IIS is not working

我使用的XAMPP與線程5.3。我已經將文件複製到擴展目錄(而在/ PHP文件夾離開他們),我已經添加了延伸線:

extension=php_sqlsrv_53_ts.dll 
extension=php_pdo_sqlsrv_53_ts.dll 

當我這樣做,阿帕奇無法啓動,給我的錯誤中eventvwr喜歡:

Application popup: Warning : PHP Startup: Unable to load dynamic library 
'C:\xampp\php\ext\php_sqlsrv_53_ts.dll' 
- The specified module could not be found. 

除此之外,很明顯,這是文件在指定的點存在,php.ini中指出,在該分機目錄。

有什麼問題?

+0

無法加載也意味着無法訪問。確保無論在UID下運行的PHP都具有對文件的訪問權限。 – 2012-07-27 20:16:34

+0

剛剛檢查。相關文件與目錄中的其他擴展名具有相同的權限。 – 2012-07-27 20:18:20

+0

庫是否使用相同的編譯器編譯?如果你檢查phpinfo();你應該能夠看到用於PHP的編譯器。 – williamvicary 2012-07-30 20:13:27

回答

1

可悲的是,沒有一個答案解決問題,或者是我已經探索的途徑。

我決定使用SQL Server連接字符串的ODBC驅動程序,這似乎工作正常,減去事實我不能使用MSSQL和SQLSRV本機功能。

1

當您正在加載缺少共享庫依賴項時,Windows會報告此問題。使用depends.exe來查看php_sqlsrv_53_ts.dll的依賴關係,並確保它是先前加載的或共享庫搜索路徑中的。

http://www.dependencywalker.com/

+0

FYI ::我對我的ext/php_ibm_db2 <它在我們的服務器上工作>運行這個,它產生了大約50個依賴關係。這些依賴關係幾乎都不在/ ext文件夾中。這讓我想知道該工具的準確程度,或者我不能正確理解它的使用。 – adam 2012-07-31 13:06:54

+0

這似乎沒有幫助(實際上當我撞到相關文件時發生崩潰),但感謝您的回答。 (#mtgpro4L,BTW) – 2012-08-06 22:55:41

0

錯誤的技術,但我是有越來越WAMP連接MSSQL,與同類型的錯誤的問題。

我通過安裝32位版本的WAMP(而不是64,即使我們在64位系統上)來解決此問題。

即使這不是適用於OP,我希望有人認爲這很有幫助!

+0

這對這個問題沒有幫助,但是謝謝你加入! – 2012-08-06 22:56:36

+0

@Kyle - 只是爲了確保你所有的東西(特別是xampp)是32位的,因爲這會導致我們的錯誤。祝您好運,找到答案! – 2012-08-06 23:06:19

1

我寫了一個頁面安裝SQLSRV驅動程序時,可能會幫助: http://robsphp.blogspot.co.uk/2012/09/how-to-install-microsofts-sql-server.html

不幸的是,說明得到了複雜,當MSFT刪除下載舊XP/2003的驅動程序(版本2.0),所以讀取整個頁面開始之前。

+0

謝謝,如果我需要它,我會研究你的答案。我切換到Linux/FreeTDS設置。 – 2012-09-21 20:46:49

0

我得到了同樣的錯誤消息時,我開始安裝後,Drupal 7的堆棧。我用Win 7 x64和acquia-drupal-win-7.31.36-6159.54300使用VM Ware。

我去了PHP站點http://php.net/manual/en/sqlsrv.requirements.php並安裝了x64包。 步驟 1)停止Drupal堆棧 2)運行文件:sqlncli.msi 3)重新啓動Drupal,並且沒有錯誤消息。