Forum Clubic

Creer un service

bonsoir,

J’essaye de creer un service pour une application développée mais impossible d’y arriver

j ai essayer INSTSRV.EXE, il me répond (en fonction de l’EXE que je le ui donne) le code erreur 1053 ou bien pas d’erreur retournée mais un problème qd meme.

Avec un autre logiciel servicemill, je le cree bien…mais mon programme a l’air de tourner mais on sait pas trop ce qu il fait puisqu si on lui envoie des infos rien ne marche dc je pense qu en fait il n’est pas lancé ou mal.

dc si qq1 a une idee je suis preneur (solution gratuite merci)!!!

J’ai bien ce qu’il te faut mais dans un langage* peu utilisé (donc utilisé par moi :p) : il s’agit d’une petite lib qui se résume en une fonction qui prend en param le nom du service, la fonction callback gerant les évenement windows et une fonction pour les notifications.
Si tu n’en veux … fait moi signe :slight_smile:

  • il s’agit du Purebasic

PS : le code utilise que des API donc facilement exploitable

je suis pas contre. Y a t il des prérequis logiciels a respecter? ou bien n’importe quel PC sans installation partuculière peur executer ton code?

Tu pourras tout trouver ici : il y a le code source et les binaires de la librairie et du service en question donc aucun prérequis n’est nécéssaire.

je te remercie beaucoup!

par contre petite question…comment ca marche?

si j ai bien compris, je dois prendre mon fichier exe, et lui associer la lib? le tout en modifiant le .pb ?

bizarre pourtant j’arrive pas a creer des services avec les exemples présents sur ton site…dc mon raisonnements est incorrect

Oui, ton raisonnement est incorrecte car il te faudra comprendre le code de la lib et tout recoder dans le langage que tu utilises.
Ca à l’air d’être un grand chantier mais en fait pas tant que ça étant donné que, comme je l’ai dit, tout est basé sur les API.
Si tu as un soucis de conversion du code, fait moi signe :slight_smile:

j ai relu un peu le code mais pour l’instant c est encore un peu incompréhensible mais je le reprendrais comme il faut entre demain et lundi.

Par contre comment on peut lancer un de tes exemples pour voir ce que ca fait ? par exemple Stest (je ne sais pas du tout ce qu il fait mais peu importe je dirais) le mettre en service et tout?

parce que je pense que voir ainsi les menus m’aiderait a comprendre le code.

De plus j’ai vu qu’une icone doit apparaitre dans le systray avec un petit menu non?

up

Je n’ai pas testé mais apres avoir lu le code source, il suffit de passer le param “/install” (en ligne de commande) pour installer le service d’exemple “stest.exe”.
“/remove” le désinstallera.
Idem pour le serveur web “atomic.exe”.

exact ca marche bien, merci bien

j ai essaye avec un fichier exe en modifiant un peu les fichiers pb (en renommant en nomdufichierexe.pb mais clairement qd je fais nomdufichierexe.exe /install, il me lance betement le programme exe comme ci de rient était…

c plus complique que je ne le pensais mais je trouverais!

Le truc le plus simple à faire serait de réécrire le code de PBOSL_NTService.pb dans le langage que tu utilises, c’est lui qui simplifie la tâche de création de service.
Et comme ça n’utilise que les API, c’est l’histoire d’une heure ou deux, pépère, à tout convertir.

tu crois qu il comprendre le php?

tu veux faire un service en php ??

c le langage que j’utilise…mais je me doute bien que creer un service en php …hum je prefere pas en parler.

un service doit obligatoirement être un binaire compilé, je sais qu’il est possible de rendre le php executable via des bidouilles, mais partir d’une bidouille pour utiliser une seconde bidouille, ca me parait bancale comme méthode.
A voir.

meme pas la peine d’y penser

je serais pas contre un petit coup de main car jai vraiment du mal comprendre le code.
je me disais d’ailleurs qu il est pas vraiment utile finalement de reecrir le code je peux l’adapter avec mon exe

Je veux bien t’aider, où est ce que ça coince ?
Par contre, je ne vois pas comment tu peux utiliser le code sans le réécrire ?

qd tu dis reecrire c est en gros l’adapter mais en gardant le meme langage?

si je prends PBOSL_NTService.pb, au debut on a la declaration des variables:ok
après on a le différent listing des actions des services (installation, demarrage , arret …) : ok

après on a une partie ou regarde sur l’ordinateur considéré quels sont les services installé, on prend aussi leur description

après on a le code pour arreter, demarrer, mettre en pause un service : ok

ensuite on a la procedure pour installer un service puis celle pour le supprimer

jusqu a la je dirais que c etait facile il suffit de lire le code c est comprehensible.
après j ai plus du mal a comprendre le but du code. En effet j ai l’impression que c est des scripts pour controler l’état du service installe mais suis pas sur a 100%…

Cote adaptation du code je pense qu il faut que je garde bien tout ce qui est installation et suppression du service ainsi que sa gestion (pause, arret…)
Mais dans la totalité du code (sauf a la fin) je n ai pas vu l’endroit ou on doit indiquer le nom du script a mettre en service!
De plus a la fin il y a le “;” donc c est un commentaire!

et ca j ai vraiment du mal

Quand je dit réécrire c’est à dire, écrire le code dans ton langage en se basant sur ce qui est fait dans le code source de PBOSL_NTService.pb.
Ce fichier englobe un ensemble de fonctions facilitant la création d’un service, il faut donc obligatoirement inclure ce fichier dans le code source de ton service et appeler Installservice auquel tu passeras différentes chose concernant ton service.