Commit Graph

90 Commits

Author SHA1 Message Date
Derick Rethans
a88e5c6e8d - Remove \n from error messages 2002-11-10 21:24:54 +00:00
Wez Furlong
bfdb85d1f0 Correct a copy-n-paste bug. Spotted by Michael Sisolak <msisolak@yahoo.com> 2002-10-31 08:23:55 +00:00
Harald Radi
84c9395f18 @ fixes bugs #19156 and #19544 (memleak) 2002-10-17 16:21:00 +00:00
Harald Radi
afb75a45e9 fixes bugs #19156 and #19544 2002-10-02 12:53:51 +00:00
Wez Furlong
cfb5002e0b Implement com_invoke_ex, which allows the user to specify the invoke kind
flags, so that custom invocations can be made.
Tidy up code for com_propget and com_propset, so that it can work with
objects as well as resources.
# This code is from a couple of months ago, and has been hanging around
# on my windows dev box; I'm not entirely sure where I needed com_invoke_ex,
# but the additions to propget and propset are useful.
2002-08-26 13:36:35 +00:00
Harald Radi
2007b1216a removed a possible NULL pointer referencing inside an error handler 2002-08-05 23:41:25 +00:00
Derick Rethans
8967b5725b Unify error messages 2002-06-26 07:24:47 +00:00
Harald Radi
5a6a5bc609 removed CONST_EFREE_PERSISTENT so that andi can commit his patch
# _now_ it should work
2002-06-21 10:43:45 +00:00
Harald Radi
5dbd205bf7 removed CONST_EFREE_PERSISTENT so that andi can commit his patch
# second try
2002-06-21 10:35:33 +00:00
Harald Radi
ed1b5c0388 removed CONST_EFREE_PERSISTENT so that andi can commit his patch
# this is one of these nice patches where you only remove something :)
# i still don't get what CONST_EFREE_PERSISTENT should have done
# there but the cvs log says that i can blame zeev :-P
2002-06-21 10:02:26 +00:00
Harald Radi
acc1021f0d #forgot something 2002-05-30 23:17:48 +00:00
Harald Radi
d3ca5abab7 @ Added missing AddRef() calls in the COM extension. This should
@ fix weird behaviour (in particular with ADODB). (Harald)

# waah, this suxx
2002-05-30 23:07:23 +00:00
Wez Furlong
762effcf60 Add documentation comment for properties in com_print_typeinfo 2002-05-21 22:44:10 +00:00
Wez Furlong
fbf920d9a3 Enhance com_print_typeinfo.
The main expected use is like this, for figuring out what methods
are allowed for a COM object:

$ie = new COM("InternetExplorer.Application");
// Prints class definition for IE object
com_print_typeinfo($ie, "InternetExplorer.Application", false);
// Prints class definition for default IE event handler
com_print_typeinfo($ie, "InternetExplorer.Application", true);
2002-05-21 22:41:45 +00:00
Wez Furlong
8a53a89a94 Correct usage of convert_to_string_ex which is not allowed to zval* 2002-05-21 20:57:04 +00:00
Wez Furlong
c05834fbce Reformat some comments. 2002-05-21 20:51:31 +00:00
Wez Furlong
e2b9f0d964 Fix a flag, remove an old comment. 2002-05-21 20:46:08 +00:00
Wez Furlong
e04d6ca9f7 - Make sure that COM and VARIANT resources are returned as resources
rather than longs.
- Make the IDispatch implementation a bit more generic (and
  fix my mess of pointers).
- Add new com_message_pump() function that acts like an interruptible
  usleep() that processes COM calls/events.
- Add new com_print_typeinfo() function for "decompiling" the typeinfo
  for an interface into PHP script.  This is useful for generating a
  skeleton for use as an event sink.
- Add new com_event_sink() function for sinking events from COM
  objects.  Usage is like this:

<?php

class IEEventSinker {
	var $terminated = false;

	function ProgressChange($progress, $progressmax) {
		echo "Download progress: $progress / $progressmax\n";
	}
	function DocumentComplete(&$dom, $url) {
		echo "Document $url complete\n";
	}
	function OnQuit() {
		echo "Quit!\n";
		$this->terminated = true;
	}
}

$ie = new COM("InternetExplorer.Application");

$sink =& new IEEventSinker();
com_event_sink($ie, $sink, "DWebBrowserEvents2");

$ie->Visible = true;
$ie->Navigate("http://www.php.net");

while(!$sink->terminated) {
	com_message_pump(4000);
}
$ie = null;
?>
2002-05-21 18:58:11 +00:00
Harald Radi
e47a667cc9 integrating wez's patch 2002-05-20 15:35:57 +00:00
Wez Furlong
fc964e88d3 Added generic COM wrapper for PHP objects. 2002-05-20 01:31:48 +00:00
Harald Radi
fe84a29b3f remove temporary resources immediately
return value fix

#thanks to alan for 'remote debugging'
2002-05-02 13:37:31 +00:00
Harald Radi
e72caee650 RETURN_NULL() is defined with braces while RETURN_TRUE
and RETURN_FALSE are defined without.
seems not very consistent ?
2002-04-29 17:20:15 +00:00
Harald Radi
667a0841f3 functions returned FALSE in case of error and the oo api returned NULL.
make them both behave equal (return NULL, as FALSE can be a valid value).
2002-04-29 15:50:30 +00:00
Harald Radi
a380af2247 don't set CLSCTX_REMOTE_SERVER if NULL is passed as servername 2002-04-27 10:17:46 +00:00
Alan Brown
ad9f90a223 Missing break; causes fallthrough which actually causes heap corruption in the debugging version despite being just plain wrong. Also placed a default "Unavailable" message when the object does not populate the EXCEPINFO structure. Also removed a minor memory leak. 2002-04-18 01:56:29 +00:00
Harald Radi
3a1ebd4f51 @ fixed a bug that caused php to crash in php_COM_get_ids_of_names() (Harald, Paul) 2002-03-15 20:48:26 +00:00
Sebastian Bergmann
38933514e1 Update headers. 2001-12-11 15:32:16 +00:00
Hartmut Holzgraefe
41d93ca3fd proto fixes 2001-12-05 22:38:49 +00:00
Egon Schmid
90e15c04c9 Fixed two protos. 2001-12-02 09:29:09 +00:00
Alan Brown
8ee38d9d75 Not all components populate every field in the ExceptInfo structure. Thus we sometimes would try to convert NULL strings and see php_OLECHAR_to_char errors while displaying Exception information. This version is a little smarter about the member derefencing and the resulting error string. 2001-11-09 14:20:28 +00:00
Stig Bakken
689252082c * zend_module_entry change: apino, debug and zts are moved first,
see README.EXTENSIONS file for upgrade help.
@Introduced extension version numbers (Stig)
2001-10-11 23:33:59 +00:00
Harald Radi
d1199bd2c7 fixed Z_* conversion errors 2001-09-26 22:52:17 +00:00
Frank M. Kromann
448e9d49cc Fixing Win32 build... 2001-09-26 03:24:19 +00:00
Harald Radi
23c65b60a0 no message 2001-09-25 23:39:50 +00:00
Jeroen van Wolffelaar
c033288573 Back-substitute for Z_* macro's. If it breaks some extension (the script isn't optimal, it parses for example var->zval.value incorrect) please let me know. 2001-09-25 21:58:48 +00:00
Harald Radi
a491db4e2d removed VARIANT module and put the VARIANT class into
the COM module.
also fixed a few bugs.
2001-09-24 15:56:18 +00:00
Harald Radi
d1a2dbfd9d IDispatchs got released if they were passed to another component 2001-09-10 09:22:40 +00:00
Harald Radi
9a6fe9631e com_*() functions returned an oo-resource instead of an resource id,
thus subsequent com_*() calls to com-returnvalues failed.
2001-09-08 20:40:56 +00:00
Egon Schmid
8820474d4a Fixed some protos. 2001-09-04 21:46:27 +00:00
Harald Radi
3d0ab1236f hum, wasn't $foo->bar 's property type OE_IS_METHOD ? 2001-08-20 08:52:49 +00:00
Harald Radi
c674638dd0 removed CoInitialize() and CoUninitialize() 2001-08-15 10:39:59 +00:00
Harald Radi
ed126f68d5 fixed com_invoke retval 2001-08-14 13:38:36 +00:00
Zeev Suraski
eb52f75407 - Avoid using malloc()
- Improve and fix leaks in the typelib constants registration mechanism
2001-08-14 12:47:09 +00:00
Harald Radi
0fbbadbd2f fixed bug in com_load_typelib 2001-08-14 11:50:16 +00:00
Zeev Suraski
4b3dea31e6 Whitespace and API updates (please keep code in the repository in K&R style
like the CODING_STANDARDS ask, guys...)
2001-08-14 10:04:59 +00:00
Zeev Suraski
f09302da07 Add missing break 2001-08-14 09:55:22 +00:00
Alan Brown
292d27bf6a Whenever typelibrary constants were loaded, there was a GP Fault at process exit as shutdown_memory_manager seemed to delete constants that were supposed to have been deleted earlier. It seems as though CONST_PERSISTENT is a bad thing to use. Resetting that bit on the constant creation still seems to work and the GP Fault at exit is gone. 2001-08-14 03:52:32 +00:00
Harald Radi
c4022601e2 hresult is returned if no return type is specified 2001-08-14 00:48:15 +00:00
Harald Radi
d041982a9c make next() return a single value instead of an array with one element 2001-08-14 00:28:54 +00:00
Harald Radi
9c6b9eb76b merged from EXPERIMENTAL
lots of cleanup work
2001-08-13 23:39:11 +00:00