Comunidad de diseño web y desarrollo en internet online

Ayuda clase DOTNET de php

Citar            
MensajeEscrito el 31 Mar 2020 01:11 am
Buenas noches,
Necesito ayuda, desde hace semanas estoy tratando de configurar una Dll hecha con C#.net con la clase DOTNET y no logro el objetivo cada ves me muestra errores que e venido solucionando pero me estanque con un error y es el siguiente: mensaje del error: Failed to instantiate .Net object [CreateInstance] [0x80131047]

les comento que por el lado del .net al crear la biblioteca de clase coloque visible el COM, y la DLL generada la coloque a la altura del php.exe, los parámetros de necesarios que necesita el DOTNET los ubique con el developer powershell for vs 2019:
([system.reflection.assembly]::loadfile("C:\php\ClassPrueba.dll")).FullName
ClassPrueba, Version=1.0.0.0, Culture=neutral, PublicKeyToken=127996ce8df6b6e1

por el lado de php tengo esto:

$form = new DOTNET('ClassPrueba, Version=1.0.0.0, Culture=neutral PublicKeyToken=127996ce8df6b6e1','Jph.HK.HK');

intente con la clase COM de php, pero me muetra este error:

mensaje del error: Failed to create COM object `ClassPrueba.HK': Sintaxis no v�lida

Nota: tengo php 7.0.20

alguna sugerencia o pasos a seguir para configurar bien la DLL?

Por davr17

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 31 Mar 2020 09:32 am
PHP es un lenguaje de programación y .Net (que comprende bvarios lenguajes, entre ellos C#) es otro sistema, no entiendo cual es tu objetivo

Jorge

Por solisarg

BOFH

13640 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 31 Mar 2020 10:31 am

solisarg escribió:

PHP es un lenguaje de programación y .Net (que comprende bvarios lenguajes, entre ellos C#) es otro sistema, no entiendo cual es tu objetivo

Jorge


Hola, el objetivo es usar las DLL de .NET en PHP, ya que existe SDK solo hechas en .NET, lo que se quiere es usar PHP para la lógica y usar las DLL cuando sea necesaria

Por davr17

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 31 Mar 2020 01:49 pm
Corriendo en windows, todo es DLL, PHP usa DLL tambien. Pero cada una tiene que ser interpretada por un engine distinto, dentro del directorio de PHP solo van las DLL de PHP, no soy muy conocedor de .Net, pero seguro que las DLL de .Net van en otro lado.

Jorge

Por solisarg

BOFH

13640 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 01 Abr 2020 12:25 am

solisarg escribió:

Corriendo en windows, todo es DLL, PHP usa DLL tambien. Pero cada una tiene que ser interpretada por un engine distinto, dentro del directorio de PHP solo van las DLL de PHP, no soy muy conocedor de .Net, pero seguro que las DLL de .Net van en otro lado.

Jorge


hola,
yo la Biblioteca de clase la hice en .net y puse visible el COM luego la DLL generada la coloque en El Global Assembly Cache (GAC), pero asi cuando ejecutaba el DOTNET el error que me tiraba era que no encontraba el archivo, googleando, conseguí que para que php lea el archivo tenia que colocarlo a la altura del ejecutable PHP.exe que no era necesario hacerlo global (GAC), así se corrigió el error de no encontrar el archivo, `pero apareció el error antes mencionado que no he conseguido corregirlo

Por davr17

1 de clabLevel



 

chrome

   Página 1 de 1

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.