mirror of
https://github.com/sigmasternchen/php-doc-en
synced 2025-03-19 02:18:56 +00:00

to examples. Some minor problems may be in my observations, but in general IMHO what I have written down is right. I worked from the C source... git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@89206 c90b9560-bf6c-de11-be94-00142212c4b1
129 lines
3.3 KiB
XML
129 lines
3.3 KiB
XML
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
<!-- $Revision: 1.5 $ -->
|
|
<reference id="ref.w32api">
|
|
<title>W32api functions</title>
|
|
<titleabbrev>W32api</titleabbrev>
|
|
|
|
<partintro>
|
|
<section id="w32api.intro">
|
|
&reftitle.intro;
|
|
<para>
|
|
This extension is a generic extension API to DLLs. This was originally
|
|
written to allow access to the Win32 API from PHP, although you can also
|
|
access other functions exported via other DLLs.
|
|
</para>
|
|
<para>
|
|
Currently supported types are generic PHP types (strings, booleans, floats,
|
|
integers and nulls) and types you define with <function>w32api_deftype</function>.
|
|
</para>
|
|
&warn.experimental;
|
|
</section>
|
|
|
|
<section id="w32api.requirements">
|
|
&reftitle.required;
|
|
<para>
|
|
This extension will only work on Windows systems.
|
|
</para>
|
|
</section>
|
|
|
|
<section id="w32api.installation">
|
|
&reftitle.install;
|
|
&no.install;
|
|
</section>
|
|
|
|
<section id="w32api.configuration">
|
|
&reftitle.runtime;
|
|
&no.config;
|
|
</section>
|
|
|
|
<section id="w32api.resources">
|
|
&reftitle.resources;
|
|
<para>
|
|
This extension defines one resource type, used for user defined types.
|
|
The name of this resource is <literal>"dynaparm"</literal>.
|
|
</para>
|
|
</section>
|
|
|
|
&reference.w32api.constants;
|
|
|
|
<section id="w32api.examples">
|
|
&reftitle.examples;
|
|
<para>
|
|
This example gets the amount of time the system has been running and
|
|
displays it in a message box.
|
|
</para>
|
|
<example>
|
|
<title>Get the uptime and display it in a message box</title>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?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);
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
</example>
|
|
</section>
|
|
</partintro>
|
|
|
|
&reference.w32api.functions;
|
|
|
|
</reference>
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"../../../manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|
|
|