OVH Cloud OVH Cloud

services pour windows

17 réponses
Avatar
dark poulpo
bonjour,

est il possible de faire un service pour win, qui puisse afficher une
fenetre dans win et un menu dans le systray?
je voudrais reprendre un ancien projet, mais avant de menfoncer vers une
piste, je voudrais verifier si c'est possible (de mémoire il m'avait semblé
lire que non )

merci d'avance.

par contre si c possible, le fait quele service demarre avant que le bureau
saffiche , cela ne va t'il pas poser de probleme pour le systray?

--
-----
http://dark.freezee.org/

10 réponses

1 2
Avatar
Arnaud Debaene
dark poulpo wrote:
bonjour,

est il possible de faire un service pour win, qui puisse afficher une
fenetre dans win et un menu dans le systray?


C'est possible mais c'est une mauvaise raison pour des questions de
sécurité, et il est possible et probable que ce soit rendu impossible dans
les prochaines versions de Windows.

je voudrais reprendre un ancien projet, mais avant de menfoncer vers
une piste, je voudrais verifier si c'est possible (de mémoire il
m'avait semblé lire que non )


Goggle sur "shatter attack" pour comprendre pourquoi c'est une mauvaise
idée.

La solution "canonique", c'est d'avoir une application GUI qui démarre quand
un client se logge (en la mettant dans le folder "démarrage automatique" du
menu démarrer par exemple). Cette application sert d'interface utilisteur au
service et communique avec lui par n'importe quel mécanisme IPC que tu veux
: Event, memory mapped file, COM, pipe, etc...
Ca te résoud du même coup la question de la détection du logging/delogging
de l'utilisateur (et donc de la création/destruction du systray), la gestion
des utilisateurs multiples loggés en même temps, etc....

Arnaud
Avatar
dark poulpo
> Goggle sur "shatter attack" pour comprendre pourquoi c'est une mauvaise
idée.



merci je vais lire ca desuite

La solution "canonique", c'est d'avoir une application GUI qui démarre


quand
un client se logge (en la mettant dans le folder "démarrage automatique"


du
menu démarrer par exemple).



oué à la normal quoi. dommage, en service sa aurait fait plus stylé pour ce
type d'appli!!! snifff
ah , et si je le met dans /run de la base de registre ca va la? normalment
oui je crois deja lavoir fait a lépoque pour autre chose.


--
-----
http://dark.freezee.org/
Avatar
Dominique Vaufreydaz
Salut,

oué à la normal quoi. dommage, en service sa aurait fait plus stylé
pour ce type d'appli!!! snifff
ah , et si je le met dans /run de la base de registre ca va la?
normalment oui je crois deja lavoir fait a lépoque pour autre chose.



T'as mal compris. Tu as un service qui tourne et simplement une interface
que lance le client quand il veut discuter avec le service. Tu peux regarder
Hamster ou dans l'une de ses versions, il utilise ce mecanisme...

Doms.
--
Impose ta chance, serre ton bonheur et va vers ton risque.
A te regarder, ils s'habitueront.
René Char, Les Matinaux.
----
http://Dominique.Vaufreydaz.free.fr/
http://TitchKaRa.free.fr/
http://logiciels.ntfaqfr.com/
Avatar
Jean-Claude BELLAMY
Dans le message news:41e5c4fc$0$7126$ ,
dark poulpo s'est ainsi exprimé:

bonjour,

est il possible de faire un service pour win, qui puisse afficher une
fenetre dans win et un menu dans le systray?
je voudrais reprendre un ancien projet, mais avant de menfoncer vers
une piste, je voudrais verifier si c'est possible (de mémoire il
m'avait semblé lire que non )



Oui c'est possible, un des exemples les plus célèbres qui fait cela étant
VNC !
(lancé en tant que service)


--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
*
Avatar
dark poulpo
> > oué à la normal quoi. dommage, en service sa aurait fait plus stylé
> pour ce type d'appli!!! snifff
> ah , et si je le met dans /run de la base de registre ca va la?
> normalment oui je crois deja lavoir fait a lépoque pour autre chose.

T'as mal compris. Tu as un service qui tourne et simplement une


interface
que lance le client quand il veut discuter avec le service. Tu peux


regarder
Hamster ou dans l'une de ses versions, il utilise ce mecanisme...




oui comme communiquer avec les sockets ou autre. bp de prog utilises les
socket pour communiquer entre eux en local, perso je prefere utiliser cela
pour les com distante. mais bon, si c kan meme une bonne idee, je le ferait
malgres mon avis perso.

merci.


--
-----
http://dark.freezee.org/
Avatar
Dominique Vaufreydaz
Re,

oui comme communiquer avec les sockets ou autre. bp de prog utilises
les socket pour communiquer entre eux en local, perso je prefere
utiliser cela pour les com distante. mais bon, si c kan meme une
bonne idee, je le ferait malgres mon avis perso.



Oui, mais c'est pratique parceque si un jour tu veux deporter
ton programme ca marche encore... Notons quand meme
qu'un service qui tourne avec le compte system n'a pas
acces au reseaux (peut-etre local). Dans ton cas, un pipe
serait plus a propos...

Doms.
--
Impose ta chance, serre ton bonheur et va vers ton risque.
A te regarder, ils s'habitueront.
René Char, Les Matinaux.
----
http://Dominique.Vaufreydaz.free.fr/
http://TitchKaRa.free.fr/
http://logiciels.ntfaqfr.com/
Avatar
Remi Thomas
"dark poulpo" écrivit

oui comme communiquer avec les sockets ou autre. bp de prog utilises les
socket pour communiquer entre eux en local, perso je prefere utiliser cela
pour les com distante. mais bon, si c kan meme une bonne idee, je le
ferait
malgres mon avis perso.

merci.




Bonjour,

Il y a plus simple, regarde le thread du 5 janvier intitulé "EnumWindow API
insuffisante ..."
Je donne une solution avec le code complet pour faire communiquer deux
applications simplement.

Rémi

--
Rémi Thomas - MVP Visual Studio .NET
Développeur Windows indépendant
http://www.xtware.com/cv
Avatar
adebaene
dark poulpo wrote:
> Goggle sur "shatter attack" pour comprendre pourquoi c'est une


mauvaise
> idée.

merci je vais lire ca desuite

> La solution "canonique", c'est d'avoir une application GUI qui


démarre
quand
> un client se logge (en la mettant dans le folder "démarrage


automatique"
du
> menu démarrer par exemple).

oué à la normal quoi. dommage, en service sa aurait fait plus


stylé pour ce
type d'appli!!! snifff




Elle fait quoi cette appli?
Un service tourne en permanence, qu'un utilisateur soit loggé ou non
sur la machine, alors qu'un appli dans le menu démarrer, (ou bien dans
le "run" de la base de registre...) ne tourne que durant la session de
l'utilisateur (tant qu'il est loggé).
Le choix d'une solution ou d'une autre ne dépend donc pas d'un "style"
plus ou moins propre, mais de la durée de vie nécessaire à l'appli,
selon ce qu'elle fait.

Arnaud
Avatar
dark poulpo
> Il y a plus simple, regarde le thread du 5 janvier intitulé "EnumWindow


API
insuffisante ..."
Je donne une solution avec le code complet pour faire communiquer deux
applications simplement.



merci, hum, enumwindow, la comm c surement par message alors!!!

--
-----
http://dark.freezee.org/
Avatar
Thierry
Bonjour,

Dominique Vaufreydaz a écrit :

ans ton cas, un pipe
serait plus a propos...



Et mieux vaut eviter TCP/IP avec la recrudescence de FW.
Apres avoir longtemps utilisé un serveur TCP/IP j'ai du utiliser les pipe
parce ZoneAlarm foutait la merde (bien que le service n'ecoutait que sur
localhost).


--
« Le travail est probablement ce qu'il y a sur cette terre de plus bas et
de plus ignoble. Il n'est pas possible de regarder un travailleur sans
maudire ce qui a fait que cet homme travaille, alors qu'il pourrait nager,
dormir dans l'herbe ou simplement lire ou faire l'amour avec sa femme. »
Boris VIAN
Mon blog RSS : http://yarglah.free.fr/monblog_rss.php <<




1 2