cs_Daemon80
Messages postés33Date d'inscriptionmercredi 21 décembre 2011StatutMembreDernière intervention21 juin 2012
-
30 mai 2012 à 10:26
cs_Daemon80
Messages postés33Date d'inscriptionmercredi 21 décembre 2011StatutMembreDernière intervention21 juin 2012
-
1 juin 2012 à 09:16
Bonjour, je débute en php et j'ai besoin de ce langage pour développer ma dll.
J'ai créer une dll écrite en VB6 sous Seven avec des fonctions qui incrémente et décrémente une variable.
En référençant cette dll dans un autre programme VB6 avec une fenêtre d'application contenant un bouton et un textbox(pour tester), j'arrive à incrémenter et décrémenter une valeur.
Maintenant pour référencer la dll en php il faut que je puisse d'abord l'enregistrer dans le système avec regsvr32 "Emplacement de la dll", aucun problème et l'enregistrement a été fait correctement.
Pour référencer une dll en php il faut utilisé les objets COM, j'ai donc pris ce bout de code dans ma page php :
Code php :
<?php
$MADLL = new COM('Project1.Class1') or die ("Impossible d'instancier la dll");
echo "dll chargé avec succés";
echo $MADLL->Increment(5)
?>
Project1 étant le nom de ma dll VB6 et class1 étant la classe utilisé en VB6 pour compiler mon programme.
Si la dll n'a pas put être appelée il me renvoi "Impossible d'instancier la dll" mais je n'ai pas ce soucis la, il me renvoi bien comme quoi il arrive bien a appeler la dll et j'ai le deuxième echo qui s'affiche mais le problème vient de la ligne d'après.
Il me renvoi l'erreur suivante :
Fatal error: Call to undefined method com::Increment(5) in C:\wamp\www\Test_dll\test.php on line 4
Apparemment il n'arrive pas à appeler la méthode "Increment" de ma dll.
Quelqu'un aurait une solution?
Merci.
J'ai compilé une DLL pour calculer quelque chose. Y a-t-il un moyen d'utiliser cette DLL sous PHP ?
Si c'est une DLL simple, il n'y a aucun moyen pour le moment de l'utiliser avec PHP. Si la DLL contient un serveur COM, vous pourrez l'utiliser si elle implémente l'interface IDispatch.
Je pense qu'au niveau de ta DDL il doit manquer quelque chose pour pouvoir ensuite communiqué avec PHP.
[Je ne suis pas spécialiste des DLL et de VB]
Sans maitrise, la puissance n'est rien
Il ne faut pas vendre la peau de l'ours, non il ne faut pas.
Drôle de hack.
Sinon écrire la dll en C (sage décision).
Ou alors directement écrire en C un module PHP: PHP a plein de modules qu'on peut charger ou pas, exemple MySQL ou GD.
cs_Daemon80
Messages postés33Date d'inscriptionmercredi 21 décembre 2011StatutMembreDernière intervention21 juin 2012 1 juin 2012 à 09:16
Ok merci pour vos réponses. Il n'y a donc aucun moyen d'exporter les fonctions de la dll VB en php, je vais essayer de trouver autre chose.
Encore merci.