4

私はxampを使用しています。

検索すると、php 4.xのように見えますが、php_w32api.dllという拡張子がありましたが、php 5.xでは消えたようです。それにもかかわらず、それはまだ php.net のドキュメントにありますが、実験的なものとしてマークされています。

代わりに pecl で win32std を使用することを提案する人もいますが、それは win32 API の一部の関数をラップするだけで、独自の dll 関数を呼び出すことはできません。:/

ffi はありますが、pecl サイトのリンクが切れており、2004 年に開発が停止したようです。

自分のphp拡張機能を書かずにこれを行う方法はありますか?

よろしくマーク

4

1 に答える 1

4

COM 関数は、Windows バージョンの PHP でのみ使用できます。.Net サポートには、PHP 5 と .Net ランタイムが必要です。これらの機能を使用するためにインストールは必要ありません。これらは PHP コアの一部です。

最初に ActiveX dll (Visual Basic) を作成します。プロジェクトに「foo」、クラスに「bar」という名前を付けます。

'---start VB code---
Public Function hello() As String
   hello = "Hello World!"
End Function
'---end VB code---

次に、dll を作成し、regsvr32.exe に登録します。次に、PHP スクリプトを作成します。

 <?php
    $obj = new COM("foo.bar");
    $output=$obj->hello(); // Call the "hello()" method
    // once we created the COM object this can be used like any other php classes.
    echo $output; // Displays Hello World! (so this comes from the dll!)
    ?>
于 2009-12-23T21:35:49.833 に答える