diff options
Diffstat (limited to 'ext/rpc/dotnet')
-rw-r--r-- | ext/rpc/dotnet/CREDITS | 2 | ||||
-rw-r--r-- | ext/rpc/dotnet/EXPERIMENTAL | 5 | ||||
-rw-r--r-- | ext/rpc/dotnet/README | 32 | ||||
-rw-r--r-- | ext/rpc/dotnet/dotnet.cpp | 237 | ||||
-rw-r--r-- | ext/rpc/dotnet/dotnet.dsp | 167 | ||||
-rw-r--r-- | ext/rpc/dotnet/dotnet.php | 8 | ||||
-rw-r--r-- | ext/rpc/dotnet/php_dotnet.h | 21 |
7 files changed, 0 insertions, 472 deletions
diff --git a/ext/rpc/dotnet/CREDITS b/ext/rpc/dotnet/CREDITS deleted file mode 100644 index 154522c6f8..0000000000 --- a/ext/rpc/dotnet/CREDITS +++ /dev/null @@ -1,2 +0,0 @@ -dotnet -Sam Ruby diff --git a/ext/rpc/dotnet/EXPERIMENTAL b/ext/rpc/dotnet/EXPERIMENTAL deleted file mode 100644 index 6443e99646..0000000000 --- a/ext/rpc/dotnet/EXPERIMENTAL +++ /dev/null @@ -1,5 +0,0 @@ -this extension is experimental, -its functions may change their names -or move to extension all together -so do not rely to much on them -you have been warned! diff --git a/ext/rpc/dotnet/README b/ext/rpc/dotnet/README deleted file mode 100644 index 8cad7bab8f..0000000000 --- a/ext/rpc/dotnet/README +++ /dev/null @@ -1,32 +0,0 @@ -Warning -======= - -This support is EXPERIMENTAL. In fact, it integrates code that -Microsoft labels as pre-beta. Use at your own risk. - -Build instructions -================== - -Download and install the .NET Framework SDK Technology Preview from -http://msdn.microsoft.com/net/#sdk. Once installed, copy Mscoree.h -(typically found in C:\Program Files\NGWSSDK\Include to ext\dotnet). -Do not simply add the NGWSSDK\Include directory to the include path -as this will cause compilation failures. - -Download and unzip the source to the dm.net COM Moniker from -http://staff.develop.com/jasonw/clr/readme.htm. Copy mscorlib.h -to ext\dotnet. There is no need to register the clrmonsrv.dll as -it is not used. - -At this point, the dotnet project can be built like any other -project, from either VisualStudio 6's GUI or from the command line. -Example command line invocation: - - msdev dotnet.dsp /MAKE "dotnet - Win32 Debug_TS" - -Execution instructions: -======================= - -Add "extension=php_dotnet.dll" into php.ini. - -Sample program can be found at dotnet.php diff --git a/ext/rpc/dotnet/dotnet.cpp b/ext/rpc/dotnet/dotnet.cpp deleted file mode 100644 index 75fed831e5..0000000000 --- a/ext/rpc/dotnet/dotnet.cpp +++ /dev/null @@ -1,237 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 4 | - +----------------------------------------------------------------------+ - | Copyright (c) 1997-2002 The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.02 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available at through the world-wide-web at | - | http://www.php.net/license/2_02.txt. | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sam Ruby <rubys@us.ibm.com> | - | Harald Radi <h.radi@nme.at> | - +----------------------------------------------------------------------+ - */ - -/* - * This module implements support for Microsoft .Net components. - */ - -/* - * 28.1.2001 - * use external unicode conversion functions - * - * harald radi <h.radi@nme.at> - */ - -#ifdef PHP_WIN32 - -#include <iostream> -#include <math.h> -#include <comdef.h> - -extern "C" -{ -#include "php.h" -#include "ext/standard/info.h" -} - -#include "ext/com/conversion.h" -#include "ext/com/php_COM.h" - -#include "Mscoree.h" -#include "mscorlib.h" - -using namespace mscorlib; - -static ICorRuntimeHost *pHost; -static mscorlib::_AppDomain *pDomain; - -static zend_class_entry dotnet_class_entry; -static int codepage; - -HRESULT dotnet_init() { - HRESULT hr; - - hr = CoCreateInstance(CLSID_CorRuntimeHost, NULL, CLSCTX_ALL, - IID_ICorRuntimeHost, (void **)&pHost); - if (FAILED(hr)) return hr; - - hr = pHost->Start(); - if (FAILED(hr)) return hr; - - IUnknown *uDomain; - hr = pHost->GetDefaultDomain(&uDomain); - if (FAILED(hr)) return hr; - - hr = uDomain->QueryInterface(__uuidof(_AppDomain), (void**) &pDomain); - if (FAILED(hr)) return -1; - - uDomain->Release(); - - return ERROR_SUCCESS; -} - -HRESULT dotnet_create(OLECHAR *assembly, OLECHAR *datatype, comval *obj TSRMLS_DC) { - HRESULT hr; - - _ObjectHandle *pHandle; - hr = pDomain->CreateInstance(_bstr_t(assembly), _bstr_t(datatype), &pHandle); - if (FAILED(hr)) return hr; - if (!pHandle) return hr; - - _variant_t unwrapped; - hr = pHandle->Unwrap(&unwrapped); - pHandle->Release(); - if (FAILED(hr)) return hr; - - php_COM_set(obj, &unwrapped.pdispVal, TRUE TSRMLS_CC); - return ERROR_SUCCESS; -} - -void dotnet_term() { - if (pHost) pHost->Stop(); - if (pHost) pHost->Release(); - if (pDomain) pDomain->Release(); - - pHost = 0; - pDomain = 0; -} - -/* {{{ proto int dotnet_load(string assembly_name [, string datatype_name, int codepage]) - Loads a DOTNET module */ -PHP_FUNCTION(dotnet_load) -{ - HRESULT hr; - zval **assembly_name, **datatype_name, **code_page; - OLECHAR *assembly, *datatype; - comval *obj; - - switch(ZEND_NUM_ARGS()) - { - case 2: - zend_get_parameters_ex(2, &assembly_name, &datatype_name); - codepage = CP_ACP; - break; - case 3: - zend_get_parameters_ex(3, &assembly_name, &datatype_name, &code_page); - - convert_to_long_ex(code_page); - codepage = Z_LVAL_PP(code_page); - break; - default: - WRONG_PARAM_COUNT; - break; - } - - convert_to_string_ex(assembly_name); - assembly = php_char_to_OLECHAR(Z_STRVAL_PP(assembly_name), Z_STRLEN_PP(assembly_name), codepage TSRMLS_CC); - - convert_to_string_ex(datatype_name); - datatype = php_char_to_OLECHAR(Z_STRVAL_PP(datatype_name), Z_STRLEN_PP(datatype_name), codepage TSRMLS_CC); - - ALLOC_COM(obj); - - /* obtain IDispatch */ - hr = dotnet_create(assembly, datatype, obj TSRMLS_CC); - efree(assembly); - efree(datatype); - if (FAILED(hr)) { - char *error_message; - error_message = php_COM_error_message(hr TSRMLS_CC); - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Error obtaining .Net class for %s in assembly %s: %s", datatype_name->value.str.val, assembly_name->value.str.val, error_message); - LocalFree(error_message); - efree(obj); - RETURN_FALSE; - } - if (C_DISPATCH(obj) == NULL) { - php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to locate %s in assembly %s", datatype_name->value.str.val, assembly_name->value.str.val); - efree(obj); - RETURN_FALSE; - } - - RETURN_LONG(zend_list_insert(obj, IS_COM)); -} -/* }}} */ - - -void php_DOTNET_call_function_handler(INTERNAL_FUNCTION_PARAMETERS, zend_property_reference *property_reference) -{ - pval *object = property_reference->object; - zend_overloaded_element *function_name = (zend_overloaded_element *) property_reference->elements_list->tail->data; - - if (zend_llist_count(property_reference->elements_list)==1 - && !strcmp(Z_STRVAL(function_name->element), "dotnet")) { /* constructor */ - pval *object_handle; - - PHP_FN(dotnet_load)(INTERNAL_FUNCTION_PARAM_PASSTHRU); - if (!Z_LVAL_P(return_value)) { - ZVAL_FALSE(object); - return; - } - ALLOC_ZVAL(object_handle); - *object_handle = *return_value; - pval_copy_constructor(object_handle); - INIT_PZVAL(object_handle); - zend_hash_index_update(Z_OBJPROP_P(object), 0, &object_handle, sizeof(pval *), NULL); - pval_destructor(&function_name->element); - } else { - php_COM_call_function_handler(INTERNAL_FUNCTION_PARAM_PASSTHRU, property_reference); - } -} - -void php_register_DOTNET_class(TSRMLS_D) -{ - INIT_OVERLOADED_CLASS_ENTRY(dotnet_class_entry, "DOTNET", NULL, - php_DOTNET_call_function_handler, - php_COM_get_property_handler, - php_COM_set_property_handler); - - zend_register_internal_class(&dotnet_class_entry TSRMLS_CC); -} - -function_entry DOTNET_functions[] = { - {NULL, NULL, NULL} -}; - -static PHP_MINFO_FUNCTION(DOTNET) -{ - php_info_print_table_start(); - php_info_print_table_row(2, ".NET support", "enabled"); - php_info_print_table_end(); -} - -PHP_MINIT_FUNCTION(DOTNET) -{ - HRESULT hr; - - if (FAILED(hr = dotnet_init())) { - return hr; - } - - php_register_DOTNET_class(TSRMLS_C); - return SUCCESS; -} - - -PHP_MSHUTDOWN_FUNCTION(DOTNET) -{ - dotnet_term(); - return SUCCESS; -} - - -zend_module_entry dotnet_module_entry = { - STANDARD_MODULE_HEADER, - "dotnet", DOTNET_functions, PHP_MINIT(DOTNET), PHP_MSHUTDOWN(DOTNET), NULL, NULL, PHP_MINFO(DOTNET), NO_VERSION_YET, STANDARD_MODULE_PROPERTIES -}; - -BEGIN_EXTERN_C() -ZEND_GET_MODULE(dotnet) -END_EXTERN_C() - -#endif diff --git a/ext/rpc/dotnet/dotnet.dsp b/ext/rpc/dotnet/dotnet.dsp deleted file mode 100644 index 1a7d790802..0000000000 --- a/ext/rpc/dotnet/dotnet.dsp +++ /dev/null @@ -1,167 +0,0 @@ -# Microsoft Developer Studio Project File - Name="dotnet" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-
-CFG=dotnet - Win32 Debug_TS
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "dotnet.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "dotnet.mak" CFG="dotnet - Win32 Debug_TS"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "dotnet - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "dotnet - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "dotnet - Win32 Debug_TS" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "dotnet - Win32 Release_TS" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "dotnet - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "..\..\Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release"
-# PROP Intermediate_Dir "Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /D "PHP_WIN32" /D "ZEND_WIN32" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /YX /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\.." /I "..\..\main" /I "..\..\Zend" /I "..\..\..\bindlib_w32" /I "..\..\TSRM" /D "NDEBUG" /D ZEND_DEBUG=0 /D "PHP_WIN32" /D "ZEND_WIN32" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "COMPILE_DL_JAVA" /D HAVE_JAVA=1 /YX /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x40d /d "NDEBUG"
-# ADD RSC /l 0x40d /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /out:"..\..\Release/php_dotnet.dll" /libpath:"$(JAVA_HOME)\lib" /libpath:"..\..\Release"
-
-!ELSEIF "$(CFG)" == "dotnet - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "..\..\Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug"
-# PROP Intermediate_Dir "Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /D "PHP_WIN32" /D "ZEND_WIN32" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\.." /I "..\..\main" /I "..\..\Zend" /I "..\..\..\bindlib_w32" /I "..\..\TSRM" /D "_DEBUG" /D ZEND_DEBUG=1 /D "PHP_WIN32" /D "ZEND_WIN32" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "COMPILE_DL_JAVA" /D HAVE_JAVA=1 /FR /YX /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x40d /d "_DEBUG"
-# ADD RSC /l 0x40d /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /out:"..\..\Debug/php_dotnet.dll" /pdbtype:sept /libpath:"$(JAVA_HOME)\lib" /libpath:"..\..\Debug"
-
-!ELSEIF "$(CFG)" == "dotnet - Win32 Debug_TS"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "..\..\Debug_TS"
-# PROP BASE Intermediate_Dir "Debug_TS"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug_TS"
-# PROP Intermediate_Dir "Debug_TS"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\.." /I "..\..\..\Zend" /I "$(JAVA_HOME)\include\win32" /I "$(JAVA_HOME)\include" /I "..\..\..\bindlib_w32" /D "_DEBUG" /D "PHP_WIN32" /D "ZEND_WIN32" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "COMPILE_DL_JAVA" /FR /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "..\..\\" /I "..\..\main" /I "..\..\Zend" /I "..\..\..\bindlib_w32" /I "..\..\TSRM" /D "_DEBUG" /D ZEND_DEBUG=1 /D "ZTS" /D "PHP_WIN32" /D "ZEND_WIN32" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /FR /YX /FD /D /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x40d /d "_DEBUG"
-# ADD RSC /l 0x40d /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib php4ts_debug.lib /nologo /dll /debug /machine:I386 /out:"..\..\Debug_TS/php_dotnet.dll" /pdbtype:sept /libpath:"..\..\Debug_TS"
-
-!ELSEIF "$(CFG)" == "dotnet - Win32 Release_TS"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "..\..\Release_TS"
-# PROP BASE Intermediate_Dir "Release_TS"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release_TS"
-# PROP Intermediate_Dir "Release_TS"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MD /W3 /GX /O2 /I "..\.." /I "..\..\..\Zend" /I "$(JAVA_HOME)\include\win32" /I "$(JAVA_HOME)\include" /I "..\..\..\bindlib_w32" /D "NDEBUG" /D "PHP_WIN32" /D "ZEND_WIN32" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "COMPILE_DL_JAVA" /YX /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\\" /I "..\..\main" /I "..\..\Zend" /I "..\..\..\bindlib_w32" /I "..\..\TSRM" /D "NDEBUG" /D ZEND_DEBUG=0 /D "ZTS" /D "PHP_WIN32" /D "ZEND_WIN32" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /YX /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x40d /d "NDEBUG"
-# ADD RSC /l 0x40d /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib php4ts.lib /nologo /dll /machine:I386 /out:"..\..\Release_TS/php_dotnet.dll" /libpath:"..\..\Release_TS" /libpath:"..\..\Release_TS_Inline"
-
-!ENDIF
-
-# Begin Target
-
-# Name "dotnet - Win32 Release"
-# Name "dotnet - Win32 Debug"
-# Name "dotnet - Win32 Debug_TS"
-# Name "dotnet - Win32 Release_TS"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=.\dotnet.cpp
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=.\php_dotnet.h
-# End Source File
-# End Group
-# Begin Source File
-
-SOURCE=.\README
-# End Source File
-# End Target
-# End Project
diff --git a/ext/rpc/dotnet/dotnet.php b/ext/rpc/dotnet/dotnet.php deleted file mode 100644 index 3b0b67c02f..0000000000 --- a/ext/rpc/dotnet/dotnet.php +++ /dev/null @@ -1,8 +0,0 @@ -<? - $stack = new DOTNET("mscorlib","System.Collections.Stack"); - - $stack->Push(".Net"); - $stack->Push("Hello "); - - echo $stack->Pop() . $stack->Pop(); -?> diff --git a/ext/rpc/dotnet/php_dotnet.h b/ext/rpc/dotnet/php_dotnet.h deleted file mode 100644 index 598c0b5579..0000000000 --- a/ext/rpc/dotnet/php_dotnet.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef PHP_DOTNET_H -#define PHP_DOTNET_H - -#ifdef PHP_WIN32 - -PHP_MINIT_FUNCTION(DOTNET); -PHP_MSHUTDOWN_FUNCTION(DOTNET); -PHP_FUNCTION(DOTNET_load); - -extern zend_module_entry DOTNET_module_entry; -#define DOTNET_module_ptr &DOTNET_module_entry - -#else - -#define DOTNET_module_ptr NULL - -#endif /* PHP_WIN32 */ - -#define phpext_DOTNET_ptr DOTNET_module_ptr - -#endif /* PHP_DOTNET_H */ |