PHP マニュアル
前のページ |  | 次のページ

# CXVII. W32api関数

# 導入

この拡張モジュールは、DLLへの一般的な拡張APIです。この拡張モジュー ルはもともとPHPからWin32 APIにアクセスできるようにするために作 成されましたが、他のDLLによりエクスポートされている他の関数にもア クセスすることができます。

現在、サポートされている型は一般のPHP型(文字列, boolean, float, 整数, NULL)とw32api_deftype()で定義した型です。

警告
このモジュールは、 実験的なものです。これは、これらの関数の動作、関 数名は、このドキュメントに書かれて事項と同様に告知なく将来的なPHPのリ リースで変更される可能性があります。注意を喚起するとともに、このモジュー ルは使用者のリスクで使用して下さい。

# 要件

この拡張モジュールはWindowsシステムでのみ動作します。

# インストール手順

これらの関数はPHPコアに含まれるため、使用す る際にインストールは不要です。

# 実行用の設定

この拡張モジュールは設定ディレクティブを全く定義しません。

# リソース型

この拡張モジュールは、1種類のリソース型を定義し、ユーザ定義型で使 用されます。このリソースの名前は、"dynaparm"で す。

# 定義済みの定数

これらの定数は、この拡張モジュールで定義されており、 この拡張モジュールがPHP内部にコンパイルされているか実行時に動的にロー ドされるかのどちらかの場合のみ使用可能です。

`DC_MICROSOFT` (integer)

`DC_BORLAND` (integer)

`DC_CALL_CDECL` (integer)

`DC_CALL_STD` (integer)

`DC_RETVAL_MATH4` (integer)

`DC_RETVAL_MATH8` (integer)

`DC_CALL_STD_BO` (integer)

`DC_CALL_STD_MS` (integer)

`DC_CALL_STD_M8` (integer)

`DC_FLAG_ARGPTR` (integer)

# 例

以下の例は、システムの実行時間を取得し、メッセージボックスに表示 するものです。

例 1. uptimeを取得し、メッセージボックスに表示する
`<?php // Define constants needed, taken from // Visual Studio/Tools/Winapi/WIN32API.txt define("MB_OK", 0); // Load the extension in dl("php_w32api.dll"); // Register the GetTickCount function from kernel32.dll w32api_register_function("kernel32.dll", "GetTickCount", "long"); // Register the MessageBoxA function from User32.dll w32api_register_function("User32.dll", "MessageBoxA", "long"); // Get uptime information $ticks = GetTickCount(); // Convert it to a nicely displayable text $secs = floor($ticks / 1000); $mins = floor($secs / 60); $hours = floor($mins / 60); $str = sprintf("You have been using your computer for:". "\r\n %d Milliseconds, or \r\n %d Seconds". "or \r\n %d mins or\r\n %d hours %d mins.", $ticks, $secs, $mins, $hours, $mins - ($hours*60)); // Display a message box with only an OK button and the uptime text MessageBoxA(NULL, $str, "Uptime Information", MB_OK); ?>`

前のページ | ホーム | 次のページ
vpopmail_set_user_quota | 上に戻る | w32api_deftype