Kev
Kev

Reputation: 119816

How do I make Win32 API calls from PHP?

I know that I can consume COM components but is there a way to directly call into the Win32 API's (user32.dll, advapi32.dll etc) from PHP or do I need to wrap in a PHP extension or COM object?

Upvotes: 4

Views: 8407

Answers (2)

Janus Troelsen
Janus Troelsen

Reputation: 21300

See the first comment here:

The only way I've been able to call Win32 API functions with PHP5 has been through COM and DynamicWrapper.

Here's an example to play a beep sound with your computer speaker:

<?php
$com = new COM("DynamicWrapper");
$com->Register("KERNEL32.DLL", "Beep", "i=ll", "f=s", "r=l");
$com->Beep(5000, 100);
?>

You can get an updated DynamicWrapper here. You have to register it with regsvr32.

Upvotes: 6

Dave
Dave

Reputation: 185

The win32api support for php is very flaky. Have a look at this

http://php.net/manual/en/book.w32api.php

Upvotes: 1

Related Questions