The 'extension' option tells PHP that the dll has been compiled to be a PHP-specific library... you should not do this if you are simply trying to run a dll as a COM object. To do that, you need to register the COM object as normal, and follow the instructions here (Italian):
http://www.php.net/manual/it/ref.com.php http://www.php.net/manual/it/class.com.php Also, you will need to delete these lines from your php.ini file: extension=Visqwin.dll extension=Wvqprint.dll If you dont know much about COM, Id suggest getting a good book in Italian, because there is simply too much to talk about here... but this link could get you started (English): http://www.4guysfromrolla.com/webtech/040300-1.shtml -- Brian 'Bex' Huff [EMAIL PROTECTED] Phone: 952-903-2023 Fax: 952-829-5424 Pozzer Franco wrote: > Brian, > sorry if I trouble you and thanks for read my msg. Sorry also for my > english it is not goot. > > I have a very hard problems for me. I hope that you help me. Thanks for > this. > > I must be use .dll from my PHP script. > > My env it is WinNT, Apache 1.3.24 and PHP 4.2.1. > > The dll are present in the system root like D:1winnt\system32 and in the > > extensions path of the PHP like D:\php\php-4.2.1-win32\extensions\. I > have also place it in the system root. > > My PHP work as CGI. > > MY script PHP is: > > <? > // Load the extension in > dl("Visqwin.dll"); > echo"<br>1<br>"; > $result = DoCalcVisQuad("", "c:\\tmp", "c:\\tmp","-1", "1", "1", ""); > echo"<br>$resul<br>"; > ?> > > and I have uncomment extensions PHp in the php.ini like: > > ;extension=php_sybase_ct.dll > ;extension=php_tokenizer.dll > extension=php_w32api.dll > ;extension=php_xslt.dll > ;extension=php_yaz.dll > ;extension=php_zlib.dll > extension=Visqwin.dll > extension=Wvqprint.dll > ;extension=php4ts_debug.dll > > I have also uncommend COM section in the php.ini like: > > [com] > ; path to a file containing GUIDs, IIDs or filenames of files with > TypeLibs > ;com.typelib_file = > ; allow Distributed-COM calls > com.allow_dcom = true > ; autoregister constants of a components typlib on com_load() > com.autoregister_typelib = true > ;register constants casesensitive > com.autoregister_casesensitive = false > ; show warnings on duplicate constat registrations > com.autoregister_verbose = true > > When I executed my script I have a msg error like: > > Warning: Unable to load dynamic library > 'D:/Php/php-4.2.1-Win32/extensions/Visqwin.dll' - %1 is not a valid > Windows NT application. in D:\Program Files\Apache > Group\Apache\htdocs\installazione\FreeDelivery\visqwin.php on line 3 > > 1 > > Fatal error: Call to undefined function: docalcvisquad() in D:\Program > Files\Apache Group\Apache\htdocs\installazione\FreeDelivery\visqwin.php > on line 5 > > This dll are used it the VB application and in the Client/Server IEF > application. It must be use also with a new application PHP. > > I send you a zip files with my dll. > > I hope to reply my question. In any case thanks and sorry for the > trouble. > > Ciao Franco > > www.infocamere.it -- PHP Windows Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php