Je voudrais créer ma propre dll, comme extension php.
Pour avoir à disposition sur toute page, les fonctions que je désire créer.
J'ai un editeur de C/C++ ( dev C++ ).
Quelqu'un pourzait-il me monter la marche a suivre pour créer un code "hello
world" sous forme de dll?
C'est à dire une fonction my_helloworld(), compilée dans une dll:
php_my.dll , qui fasse que
<?
echo my_helloworld();
?>
retourne la page
<h1>hello World</h1>
Est-ce qu'il suffit de faire
###### ici c'est du C (? je connais pas la syntaxe exacte )
string my_helloworld(){
return "<h1>hello world</h1>";
}
#### j'ai du zzapper quelques "include stdio.h" ??? et puis il y une
fonction main() ??
#### je voudrais connaitre le code exact et la marche à suivre
et de compiler en dll?
Pour l'instant devC++ me sort des .exe, je n'ai pas trouvé l'option pour
sortir des dll.
J'y retourne.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
John GALLET
Bonjour,
Je voudrais créer ma propre dll, comme extension php. Pour avoir à disposition sur toute page, les fonctions que je désire créer. Excellente initiative, "bienvenue chez les fous" ((C) AF 2000).
Quelqu'un pourzait-il me monter la marche a suivre pour créer un code "hello world" sous forme de dll? Ca c'est problème totalement hors charte ici d'utilisation de ton
clickodrome favori (et auquel je suis totalement incapable de répondre parce que je n'ai pas compilé sur windows depuis plusieurs années).
En revanche, le premier exercice que tu auras à faire après ça, ce sera de recompiler php complètement. Cf http://fr2.php.net/manual/en/install.windows.building.php
###### ici c'est du C (? je connais pas la syntaxe exacte ) string my_helloworld(){ return "<h1>hello world</h1>"; } Non, ça c'est du c++ car le type string n'existe pas en C ansi. Mais ce ne
sera pas aussi simple que ça, car il faut déclarer une extension Zend, donc un module, et déclarer cette fameuse my_helloworld au moteur Zend.
Cf http://fr2.php.net/manual/en/zend.php
Pour l'instant devC++ me sort des .exe, je n'ai pas trouvé l'option pour sortir des dll.
Perso, je te conseille **vivement** de commencer par faire ça sur un unix quelconque (ou cygwin peut-être), où la compilation est simple, afin de te concentrer sur les vrais problèmes de codage, avant de t'attaquer à la compilation sous windows, juste afin de séparer les problèmes. Je te conseille aussi de coder en C et non en C++ pour te simplifier le link, au moins sur tes premières fonctions exemples (quitte à faire du C++ après).
Enfin concernant des exemples de code C à utiliser, je te conseille la lecture de ext/mysql/php_mysql.c écrite par Zeev, moi c'est par là que j'ai commencé. La distrib des sources inclue aussi deux fichiers readme écris par Rasmus pour décrire le fonctionnement des zval.
HTH JG
Bonjour,
Je voudrais créer ma propre dll, comme extension php.
Pour avoir à disposition sur toute page, les fonctions que je désire créer.
Excellente initiative, "bienvenue chez les fous" ((C) AF 2000).
Quelqu'un pourzait-il me monter la marche a suivre pour créer un code "hello
world" sous forme de dll?
Ca c'est problème totalement hors charte ici d'utilisation de ton
clickodrome favori (et auquel je suis totalement incapable de répondre
parce que je n'ai pas compilé sur windows depuis plusieurs années).
En revanche, le premier exercice que tu auras à faire après ça, ce sera de
recompiler php complètement.
Cf http://fr2.php.net/manual/en/install.windows.building.php
###### ici c'est du C (? je connais pas la syntaxe exacte )
string my_helloworld(){
return "<h1>hello world</h1>";
}
Non, ça c'est du c++ car le type string n'existe pas en C ansi. Mais ce ne
sera pas aussi simple que ça, car il faut déclarer une extension Zend,
donc un module, et déclarer cette fameuse my_helloworld au moteur Zend.
Cf http://fr2.php.net/manual/en/zend.php
Pour l'instant devC++ me sort des .exe, je n'ai pas trouvé l'option pour
sortir des dll.
Perso, je te conseille **vivement** de commencer par faire ça sur un unix
quelconque (ou cygwin peut-être), où la compilation est simple, afin de te
concentrer sur les vrais problèmes de codage, avant de t'attaquer à la
compilation sous windows, juste afin de séparer les problèmes. Je te
conseille aussi de coder en C et non en C++ pour te simplifier le link, au
moins sur tes premières fonctions exemples (quitte à faire du C++ après).
Enfin concernant des exemples de code C à utiliser, je te conseille la
lecture de ext/mysql/php_mysql.c écrite par Zeev, moi c'est par là que
j'ai commencé. La distrib des sources inclue aussi deux fichiers readme
écris par Rasmus pour décrire le fonctionnement des zval.
Je voudrais créer ma propre dll, comme extension php. Pour avoir à disposition sur toute page, les fonctions que je désire créer. Excellente initiative, "bienvenue chez les fous" ((C) AF 2000).
Quelqu'un pourzait-il me monter la marche a suivre pour créer un code "hello world" sous forme de dll? Ca c'est problème totalement hors charte ici d'utilisation de ton
clickodrome favori (et auquel je suis totalement incapable de répondre parce que je n'ai pas compilé sur windows depuis plusieurs années).
En revanche, le premier exercice que tu auras à faire après ça, ce sera de recompiler php complètement. Cf http://fr2.php.net/manual/en/install.windows.building.php
###### ici c'est du C (? je connais pas la syntaxe exacte ) string my_helloworld(){ return "<h1>hello world</h1>"; } Non, ça c'est du c++ car le type string n'existe pas en C ansi. Mais ce ne
sera pas aussi simple que ça, car il faut déclarer une extension Zend, donc un module, et déclarer cette fameuse my_helloworld au moteur Zend.
Cf http://fr2.php.net/manual/en/zend.php
Pour l'instant devC++ me sort des .exe, je n'ai pas trouvé l'option pour sortir des dll.
Perso, je te conseille **vivement** de commencer par faire ça sur un unix quelconque (ou cygwin peut-être), où la compilation est simple, afin de te concentrer sur les vrais problèmes de codage, avant de t'attaquer à la compilation sous windows, juste afin de séparer les problèmes. Je te conseille aussi de coder en C et non en C++ pour te simplifier le link, au moins sur tes premières fonctions exemples (quitte à faire du C++ après).
Enfin concernant des exemples de code C à utiliser, je te conseille la lecture de ext/mysql/php_mysql.c écrite par Zeev, moi c'est par là que j'ai commencé. La distrib des sources inclue aussi deux fichiers readme écris par Rasmus pour décrire le fonctionnement des zval.