连接php_win32api.dll
使用win32api对象调用,详细写法见手册

解决方案 »

  1.   

    例如:
    有文件:aa.dll,aa.lib,
    有接口:EXTERN_C int WINAPI Find()
      

  2.   

    手册原文<?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);
    ?>
      

  3.   

    那么你替换相应的dll库、方法名就可以了
      

  4.   

    手册里的并不是最新的,只是针对4.2.x的,楼主的需求是4.3.6,请改为如下方式:
    extension=php_w32api.dll$api = new win32;
    $api->registerfunction("int Find() From aa.dll");
    $api->Find();
      

  5.   

    另外一种方法就是使用FFI扩展代替w32api扩展
    http://pecl.php.net/package/ffi