Est -il possible de creer un service en VB6 ?
Est -il possible de creer un service en VB6 ?
Il me semble avoir vu ce sujet sur le forum et la réponse était du style : possible mais non conseillé
![]()
Alors, il me faut tenter de retrouver ce poste.
Merci.
Oui, peut-etre. J'ai recemment recuperer de l'info dessus, mais va falloir attendre un tout p'tit peu...Envoyé par WOLO Laurent
![]()
J'attends alors car ma recherche a été infructueuse. :oops:
Bon, voila à quoi on arrive...
On ne peut pas faire directement un service en VB.
Cependant, Windows NT/2000 (pas testé XP, mais ca doit etre aussi valable) offre une possibilité de transformer n'importe quel prog en service en utilisant des outils du NT Ressource Kit et sans changer le code du programme VB6 (ce qui est quand meme bien...)
Donc, il faut chercher sur le CD NT Ressource Kit les fichier suivants:
Srvany.exe
Instsrv.exe
Srvinstw.exe
et les placer dans un meme dossier, par exemple:
c:\winnt\system32\Service Installation Kit
Ensuite, la méthodo est la suivante:
1) On va dans le dossier c:\winnt\system32\Service Installation Kit
2) On execute SrvInstw.exe (c'est un wizard de configuration)
3) Cocher "Install Service", puis cliquer sur Suivant
4) Cocher "Local Machine", puis cliquer sur Suivant
5) Entrer le nom du service, puis cliquer sur Suivant
6) Cliquer sur "Parcourir" et selectionner srvany.exe (qui est dans le meme repertoire que SrvInstw.exe), puis cliquer sur Suivant
7) Choisir "Service is its own Process", puis cliquer sur Suivant
8) Choisir sous quel login le service doit tourner
9) Choisir les options de startup, puis cliquer sur Suivant
Ensuite:
10) Dans Regedit: rendez-vous dans HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
Tu trouves dans l'arbre le service que tu viens juste de créer, tu le selectionne.
11) Tu crées une nouvelle clé nommée "Application", tu l'edites et tu fixe sa valeur au chemin complet de ton prog VB6
(e.g. c:\progboulet\progboulet.exe)
12) Tu peux alors aller dans le panneau de config et demarrer le service...
Voili voilo...
Je vais ecrire un tuto là-dessus un de ces jours...![]()
Complement à ce qui precede...
Pour pouvoir detecter depuis une autre machine si ton service est vivant ou mort, la seule facon fiable consiste à mettre dans ton prog VB un mini-serveur TCP et verifier l'etat de l'appli en testant l'etat de la connexion.
C'est capilotracté, mais ca marche...
References:
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q137890
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q152460
Ce qui veut dire que lors qu'aucun user n'est logé, aucun service ne tourne ?Envoyé par grafikm_fr
En faite, j'ai l'intension de créer un programme qui va acceder à ma base de donnée SQL Serveur sans user logé.
Est - ce possible ?
Nan, ca veut dire que le programme en question va tourner avec les privilege de ce user (comme un prog SUID dans le monde UNIX).Envoyé par WOLO Laurent
Le mieux, c'est de spécifier LocalSystem (ou System, je sais plus, il y a sans doute les deux). Sinon, il faut que le login en question ait le privilege "Log On as a Service".
Donc dans ce cas, meme si personne est loggé, ca tournera quand meme...
Voila,
grafikm_fr
salut tout le monde.
j'ai lu tout le post, mais j'ai pas compris ce qu'est un service.
Pourriez vous en donner la definition ?
Est ce une routine qui permet de faire des modifs sur une base de données sans que l'utilisateur ou l'admin n'intervienne ?
Faites une recherche sur le forum et/ou sur internet et lisez la doc officielle avant de poser une question svp.
et n'oubliez pas de lire les FAQ !
FAQ Java et les cours et tutoriels Java
Doc JAVA officielle
AngularJS 1.x
Angular 2
Do it simple... and RTFM !
Merci grafikm_fr, je vais lancer me lancer dans la réalisation car les bases sont aquises.Envoyé par grafikm_fr
Grand Merci à toi
Partager