PHP에서 COM 함수를 사용하려고하는데 잘못된 것이 무엇이 있는지 잘 모르겠습니다. 이것은 PHP 스크립트의 첫 라인Windows 2008 R2에서 UniObjects COM 개체를 PHP로로드 할 수 없습니다.
$UOSession = new COM("UniObjects.Unioiafctrl") or die("Cant instantiate UO");
내가했던 uniobjects.dll 등록 사용에 regsvr32과 성공하지만, 문제는 내가 그것을 실행이 줄 앞에 코드,이 후 코드가있는 경우 라인이 작동하지 않고 어떤 메시지도 성공적으로 인스턴스화 된 dll이 아니 었습니다. 나는 그것이 인스턴스화되지 않으면 "Cant instantiate UO"라는 메시지를 얻지 만 메시지를 얻지 못한다고 가정합니다. 그것은 그것이 성공적이라는 것을 의미 할 것이지만, 코드는 바로 멈 춥니 다. 내가 뭘 잘못하고 있는지 아는 사람이 있습니까?
윈도우 서버 2008 R2 x64의, IIS7, PHP 5.3
나는이 문제를 발견했을 때 같은 문제가있어서 다른 질문을 만들 예정입니다. – NeerPatel
몇 가지 차이점은 아파치 대신 PHP 5.4를 사용하고 있지만 같은 문제입니다. 심지어 등록을 취소하고 그것을 테스트했습니다. [ScreenShot 2] (http://screencast.com/t/l1Q9sMxdw) - 그런 다음 [ScreenShot 1] (http://screencast.com/t/vsrv5mpZpN) 불운. 내 코드 - ' php $ com = new Com ('WScript.shell') 또는 죽습니다 ("작동하지 않았습니다"); echo "It Did!"; $ UOSession = new Com ("Uniobjects.UnioaifCtrl") 또는 죽을 때 ("UO 인스턴스 생성"); ?>' – NeerPatel
이 문제를 해결하는 열쇠는 실행중인 PHP 버전입니다. 32 비트 PHP를 사용하는 경우 UniObject COM이 작동합니다. 64 비트 버전의 PHP를 사용하는 경우 UniObjects COM이 작동하지 않습니다. UniObjects COM은 32 비트 전용입니다. –