Oliver Espeter wrote:
Hi,
I have still the same problem. Because I didn't find a solution, I am
aktualy writing a php extension that wrapps around the needed functions of
the third-party com-sdk.
My plan:
- Connect to the third-party lib throuh COM direcly from my
php-source-files.
- Using all running third-party functions direcly from my php-source-files
without my extension.
- Wrapp the functions "ArcValue" and "PlotValues" with an self-made
extension, so that I can call the specified functions with C.
- Call this self-made functions from my php-source-code (as first parameter
I'll set the reference to the PIPoint)
An code-example in php could be:
1 <?php
2 $comObjPi = new COM('PISDK.PISDK');
3 $server = $comObjPi->Servers->Item("123.123.123.123");
4 $server->Open("123.123.123.123;UID=foo;pwd=bar");
5 $point = $server->PIPoints("SINUSOID");
6 com_load_typelib('PISDK.PISDK');
7 $value = myArcValueFunction($point, mktime(), rtBefore);
8 ?>
But now my problem:
Writing an php extension is not that problem. Including COM-Functions isn't
one too. But using COM from an php extension is new for me. Because I have
to use nmake (or haven't I?) I can't use the "#import' statements:
#import "pisdkcommon.dll" no_namespace
#import "piTimeServer.dll" no_namespace
#import "pisdk.dll" no_namespace
And when I didn't import that third-Party-dlls then nmake throws
compiler-errors because normaly I have to tell PHP that the first parameter
from myArcValueFunction is from type PIPointPtr (defined in one of the
DLLs).
Any suggestions?
Have you looked at some of the extensions in pecl? I would suggest
linking against the dlls you intend to use and take a gander at the php
extension build system for how to manage that - try the pecl.dev mailing
list for help in the C end of things
--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php