最近、古いホーム サーバー システムを 64 ビット システム (Win 7) にアップグレードしましたが、PHP で 32 ビット ホーム オートメーション DCOM オブジェクトにアクセスする際に問題が発生しました。私は 32 ビットの Apache を実行しており、私の知る限り、32 ビットの PHP を実行しています (64 ビット版は利用できないと思います)。このセットアップと私の古い (しかし動作している) セットアップの唯一の違いは、32 ビットではなく 64 ビットの Windows 7 を実行していることです。
すべてを再インストールしたとき、最初は、dcomcnfg.exe で DCOM オブジェクトへのアクセスが表示されず、DCOM オブジェクトへのアクセスを構成できないことに戸惑いました。DCOM オブジェクト ( ) を表示するには、32 ビット バージョンの dcomcnfg.exe を起動する必要があることにしばらく時間がかかりましたmmc comexp.msc /32
。
PHP でこの 32 ビット DCOM オブジェクトにアクセスしようとしていますが、うまくいきません。Apache と PHP が 32 ビットであることを考えると、この COM オブジェクトにアクセスするために PHP でスクリプトを作成できないことに奇妙に驚いています。
PHPでこの(非常に古い)32ビットCOMオブジェクトにアクセスする方法を知っている人はいますか?
私がやろうとしていることのコードスニペットをここに示します:
$hs = new COM("HomeSeer.clsString") or die("Unable to get DCOM object");
$hs->ExecX10("a5","on","0","0");
unset($hs);
誰かが助けてくれることを心から願っています。そうでなければ、この 64 ビット Windows への移行は私にとってちょっとした惨事になるでしょう!
c:\windows\syswow64\ フォルダーにファイルを配置することが回避策になる可能性があることをさまざまな場所で読みましたが、そこにどのファイルを配置すればよいかわかりません。ホーム オートメーション ソフトウェアをそのフォルダにインストールする必要があるということですか? まさか…!
ありがとう!