Ou dois-je placer ma DLL ? - C#/.NET managed - Programmation
Marsh Posté le 29-06-2006 à 18:58:58
Salut,
Je connais pas grand chose en COM, mais ton code en C# m'a l'air de ne rien a voir avec un objet COM!
regarde la MSDN pour savoir comment on fait un objet COM.
Marsh Posté le 29-06-2006 à 20:20:34
Berceker United a écrit : |
salut
ce que tu as créé n'est pas une dll COM, mais une simple assembly .NET qui n'a strictement rien à voir. je vais pas te faire un cours de Win32, mais une dll COM doit implémenter des interfaces héritant de IUnknown et autres joyeusetés ! je remercierais jamais assez Microsoft de nous avoir débarrassé de cet enfer en créant .NET
si tu veux utiliser une assembly .NET avec PHP, tu dois lui donner un nom fort, créer la bibliothèque de classes correspondante (via regasm), la placer dans le GAC (pour qu'elle soit accessible de n'importe quel le application de ton système, là encore merci Microsoft, fini les dll dans %SYSTEM%, tout est centralisé), bref ça ne se résume pas à créer et copier la dll.
en googlant, je suis tombé sur ça qui devrait t'éclairer : http://www.devarticles.com/c/a/PHP [...] ly-in-PHP/
Marsh Posté le 29-06-2006 à 12:07:11
Bonjour.
J'ai créé une dll simple en C# avec à l"intérieur une classe bateau.
Mon code PHP
Rien de méchant pour l'instant. De là, je génère une dll mais lorsque je veux utilisé cette dll depuis php via l'objet COM ou DOTNET les embrouilles commence.
et j'ai l'erreur suivante:
Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `test_php': Syntaxe incorrecte ' in c:\http\WWW\zorha\test.php5:2 Stack trace: #0 c:\http\WWW\zorha\test.php5(2): com->com('test_php') #1 {main} thrown in c:\http\WWW\zorha\test.php5 on line 2
Ma question c'est de savoir ou je place ma dll. /windows/ , windows/system32/
Je suis un peut perdu.
avec ça sa fonctionne.
J'ai testé avec la fonction DOTNET en php mais ça me retourne le même message d'erreur.
En faite le problème ne provient pas de php, je pense plus que c'est du au faite que je ne sais pas placer ma dll ou j'ai du rater des étapes.
Message édité par Berceker United le 29-06-2006 à 14:34:38