Lancer une application en service.

Le
Patricklbs
Bonjour,

Je souhaiterai que des clients windows 2000 se connectant en 3G puissent
avoir les lecteurs réseaux qui remontent au login.
Pour cela je voudrai que le "dashboard" de la 3G se lance en tant que
services afin que la connexion s'effectue par avance et ainsi
se connecter au LAN et que le login script s'effectue.

Je me suis servi de l'excellente explication de JCB pour lancer une appli en
service avec instsrv.exe et srvany.exe, cela fonctionne je l'ai testé
avec une autre appli (n'étant pas au bureau je ne l'ai pas encore testé avec
la 3G), mais je pense que l'appli se lance trop tard.
Y a t'il un moyen de la faire démarrer bien avant de donner une priorité à
cette appli par exemple ?

Merci de vos réponses, bon week-end.

Cordialement,

Patrick Le Bas
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jean-Claude BELLAMY
Le #1177147
"Patricklbs" news:47c96de5$0$17777$
Bonjour,

Je souhaiterai que des clients windows 2000 se connectant en 3G puissent
avoir les lecteurs réseaux qui remontent au login.
Pour cela je voudrai que le "dashboard" de la 3G se lance en tant que
services afin que la connexion s'effectue par avance et ainsi
se connecter au LAN et que le login script s'effectue.

Je me suis servi de l'excellente explication de JCB pour lancer une appli
en service avec instsrv.exe et srvany.exe, cela fonctionne je l'ai testé
avec une autre appli (n'étant pas au bureau je ne l'ai pas encore testé
avec la 3G), mais je pense que l'appli se lance trop tard.
Y a t'il un moyen de la faire démarrer bien avant de donner une priorité à
cette appli par exemple ?



Oui, les dépendances entre services, c'est fait pour çà !

c'est stocké dans les clefs :

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesnom-du-serviceDependOnService
qui contient, comme son nom l'indique, la liste des services dont dépend le
service concerné

cf. http://www.bellamyjc.org/fr/windowsnt.html#serviceBDR


Le problème est que la clef "DependOnService" n'est pas modifiable
directement dans la BDR, p.ex; avec REGEDIT (si on le fait, l'effet sera nul
et non avenu!)
"You cannot change the prerequisite services for a service by editing
this entry."
(http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/regentry/46710.mspx?mfr=true)

Elle doit être définie par le programme qui va installer le service, à
l'aide de l'API "ChangeServiceConfig".
Or ce n'est généralement pas prévu par les services habituels, et encore
moins par "instsrv" qui est un outil "passe-partout".

On peut utiliser l'outil SC.EXE, inclus dans le Reskit de W2K, (et aussi
dans XP et VISTA), par la commande :
SC CONFIG nom-du-service DEPEND=nom-du-service1/nom-du-service2/.../...

Donc il faudra modifier les services que tu veux faire dépendre de celui
créé par inststr + srvany


--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP]
http://www.bellamyjc.org ou http://jc.bellamy.free.fr

Patricklbs
Le #1183689



Merci Jean-Claude, je décode tout ça et je te (vous) tiens informé !
Je te souhaite un bon week-end et merci de ce que tu fais..

Patrick


Oui, les dépendances entre services, c'est fait pour çà !

c'est stocké dans les clefs :

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesnom-du-serviceDependOnService
qui contient, comme son nom l'indique, la liste des services dont dépend
le service concerné

cf. http://www.bellamyjc.org/fr/windowsnt.html#serviceBDR


Le problème est que la clef "DependOnService" n'est pas modifiable
directement dans la BDR, p.ex; avec REGEDIT (si on le fait, l'effet sera
nul et non avenu!)
"You cannot change the prerequisite services for a service by editing
this entry."
(http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/regentry/46710.mspx?mfr=true)

Elle doit être définie par le programme qui va installer le service, à
l'aide de l'API "ChangeServiceConfig".
Or ce n'est généralement pas prévu par les services habituels, et encore
moins par "instsrv" qui est un outil "passe-partout".

On peut utiliser l'outil SC.EXE, inclus dans le Reskit de W2K, (et aussi
dans XP et VISTA), par la commande :
SC CONFIG nom-du-service DEPEND=nom-du-service1/nom-du-service2/.../...

Donc il faudra modifier les services que tu veux faire dépendre de celui
créé par inststr + srvany


--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP]
http://www.bellamyjc.org ou http://jc.bellamy.free.fr


Patricklbs
Le #1195439



Bonjour Jean-Claude,


Cela veut dire que je dois faire dépendre le service que je viens de créer à
un service qui démarre au login ?

Par exemple je veux lancer le dashboard de la 3G :

Je crée le service 3GTEST avec un batch car je vais le faire sur plusieurs
postes c'est un test bien évidemment :

copy /Y instsrv.exe %systemroot%system32

copy /Y srvany.exe %systemroot%system32

%systemroot%system32instsrv.exe 3GTEST %systemroot%system32srvany.exe

Ensuite je rentre les paramètres dans la bdr :

echo Windows Registry Editor Version 5.00 > temp.reg

echo
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices3GTESTParameters] >>
temp.reg
echo "Application"="C:Program Files3Gdashboard.exe" >> temp.reg

regedit.exe /s temp.reg

del temp.reg

Et c'est là que je me perd avec sc :
Je dois faire sc config 3GTEST depend= ?? et là je sais pas à quel service
le faire dépendre...

Peux tu m'éclairer s'il te plait ? Je te remercie.

Patrick







Oui, les dépendances entre services, c'est fait pour çà !

c'est stocké dans les clefs :

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesnom-du-serviceDependOnService
qui contient, comme son nom l'indique, la liste des services dont dépend
le service concerné

cf. http://www.bellamyjc.org/fr/windowsnt.html#serviceBDR


Le problème est que la clef "DependOnService" n'est pas modifiable
directement dans la BDR, p.ex; avec REGEDIT (si on le fait, l'effet sera
nul et non avenu!)
"You cannot change the prerequisite services for a service by editing
this entry."
(http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/regentry/46710.mspx?mfr=true)

Elle doit être définie par le programme qui va installer le service, à
l'aide de l'API "ChangeServiceConfig".
Or ce n'est généralement pas prévu par les services habituels, et encore
moins par "instsrv" qui est un outil "passe-partout".

On peut utiliser l'outil SC.EXE, inclus dans le Reskit de W2K, (et aussi
dans XP et VISTA), par la commande :
SC CONFIG nom-du-service DEPEND=nom-du-service1/nom-du-service2/.../...

Donc il faudra modifier les services que tu veux faire dépendre de celui
créé par inststr + srvany


Jean-Claude BELLAMY
Le #1204393
"Patricklbs" news:47ca927a$0$14655$

Cela veut dire que je dois faire dépendre le service que je viens de créer
à un service qui démarre au login ?


Non, réfléchis, c'est tout le contraire, d'après ce que tu nous as dit ...
Tu dois faire dépendre un ou plusieurs services du service que tu viens de
créer.

Par exemple je veux lancer le dashboard de la 3G :

Je crée le service 3GTEST avec un batch car je vais le faire sur plusieurs
postes c'est un test bien évidemment :
[...]
Et c'est là que je me perd avec sc :
Je dois faire sc config 3GTEST depend= ?? et là je sais pas à quel service
le faire dépendre...

Peux tu m'éclairer s'il te plait ? Je te remercie.


Si tu veux que le service "B" démarre AVANT le service "A", tu doit donc
faire dépendre "A" de "B" !
Donc cela se traduira par la commande
sc config A depend=B

Donc c'est à TOI de déduire qui doit dépendre de "3GTEST"

Et pour chacun des services que tu auras identifés, tu devras exécuter :
sc config XXXXXX depend=3GTEXT
sc config YYYYYY depend=3GTEXT
sc config ZZZZZZ depend=3GTEXT
...
NB: si un des services dépend d'un déjà énuméré, c'est inutile de configurer
sa dépendance à 3GTEXT, puisqu'elle se fera par transitivité
(Si A dépend de B, et si C dépend de A, C dépend forcément de B)


--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org

Patricklbs
Le #1206977


Cela veut dire que je dois faire dépendre le service que je viens de
créer à un service qui démarre au login ?


Non, réfléchis, c'est tout le contraire, d'après ce que tu nous as dit ...
Tu dois faire dépendre un ou plusieurs services du service que tu viens de
créer.

Par exemple je veux lancer le dashboard de la 3G :

Je crée le service 3GTEST avec un batch car je vais le faire sur
plusieurs postes c'est un test bien évidemment :
[...]
Et c'est là que je me perd avec sc :
Je dois faire sc config 3GTEST depend= ?? et là je sais pas à quel
service le faire dépendre...

Peux tu m'éclairer s'il te plait ? Je te remercie.


Si tu veux que le service "B" démarre AVANT le service "A", tu doit donc
faire dépendre "A" de "B" !
Donc cela se traduira par la commande
sc config A depend=B

Donc c'est à TOI de déduire qui doit dépendre de "3GTEST"

Et pour chacun des services que tu auras identifés, tu devras exécuter :
sc config XXXXXX depend=3GTEXT
sc config YYYYYY depend=3GTEXT
sc config ZZZZZZ depend=3GTEXT
...
NB: si un des services dépend d'un déjà énuméré, c'est inutile de
configurer sa dépendance à 3GTEXT, puisqu'elle se fera par transitivité
(Si A dépend de B, et si C dépend de A, C dépend forcément de B)




Merci Jean-Claude !

J'ai enfin compris loll... Le problème réside maintenant dans ce maudit
dashboard qui es super lourd, il détecte d'abord le matériel (clé usb 3G) et
ensuite il est prêt à se connecter. Et c'est là que ça merde...
Il faudrait que je trouve une appli moins lourde qui puisse se connecter
avant le login.... Je continue donc mes investigations car c'est un projet
qui me tient à coeur..

Merci encore de tes explications, bonne continuation !

Patrick


Publicité
Poster une réponse
Anonyme