J'ai écrit trois applications Windows à instance unique (appelons-les A1,A2
et A3), publiée sur un serveur de fichiers. L'une d'entre elles (A1) est un
menu qui permet de lancer les autres :
Dim proc As Process = New Process()
proc.StartInfo = New ProcessStartInfo(CheminExecutable)
proc.Start()
Quand A1 lance A2, aucun problème. Mais quand A1 lance A3, j'ai le temps de
voir le chargement de A3, qui aussitôt se termine.
Si je lance A3 seule, à partir du même CheminExecutable, pas de problème. Si
je republie A3 après avoir décoché la case «Application à instance unique»,
A1 peut la lancer !
Tout se passe donc comme si A3 reconnaissait en A1 un double d'elle-même,
alors que ce n'est pas le cas pour A2.
À la main, je peux aussi lancer A3 après avoir lancé A2. Par contre, je ne
peux pas lancer A1 si A3 est déjà chargé (au moins il y a une certaine
cohérence dans cette symétrie !).
Quelqu'un a-t-il une idée d'explication ? de solution ? Cela pourrait-il
avoir un lien avec la création d'une application Windows à partir d'un
modèle ?
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
Gilles TOURREAU [MVP]
Le Thu, 10 Jan 2008 12:15:58 +0100, Gilbert Tordeur a écrit:
Bonjour,
J'ai écrit trois applications Windows à instance unique (appelons-les A1,A2 et A3), publiée sur un serveur de fichiers. L'une d'entre elles (A1) est un menu qui permet de lancer les autres :
Dim proc As Process = New Process() proc.StartInfo = New ProcessStartInfo(CheminExecutable) proc.Start()
Quand A1 lance A2, aucun problème. Mais quand A1 lance A3, j'ai le temps de voir le chargement de A3, qui aussitôt se termine.
Si je lance A3 seule, à partir du même CheminExecutable, pas de problème. Si je republie A3 après avoir décoché la case «Application à instance unique», A1 peut la lancer !
Tout se passe donc comme si A3 reconnaissait en A1 un double d'elle-même, alors que ce n'est pas le cas pour A2.
À la main, je peux aussi lancer A3 après avoir lancé A2. Par contre, je ne peux pas lancer A1 si A3 est déjà chargé (au moins il y a une certaine cohérence dans cette symétrie !).
Quelqu'un a-t-il une idée d'explication ? de solution ? Cela pourrait-il avoir un lien avec la création d'une application Windows à partir d'un modèle ?
Merci d'avance, Gilbert Tordeur
Bonjour,
Vous avez sans doute fait un copier/coller du .vbproj de A1 et A3... Il doivent donc avoir le même GUID, pensez donc à changer le GUID d'un des 2 projets (Propriétés du Projet -> Application -> Assembly Information)
Pour générer un GUID, utilisez le p'tit logiciel présent dans le menu Tools : "Create GUID"
-- Gilles TOURREAU - MVP C#
S.A.R.L. P.O.S Le spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr
Le Thu, 10 Jan 2008 12:15:58 +0100, Gilbert Tordeur
<gilbert.tordeur@jci.com> a écrit:
Bonjour,
J'ai écrit trois applications Windows à instance unique (appelons-les
A1,A2
et A3), publiée sur un serveur de fichiers. L'une d'entre elles (A1) est
un
menu qui permet de lancer les autres :
Dim proc As Process = New Process()
proc.StartInfo = New ProcessStartInfo(CheminExecutable)
proc.Start()
Quand A1 lance A2, aucun problème. Mais quand A1 lance A3, j'ai le temps
de
voir le chargement de A3, qui aussitôt se termine.
Si je lance A3 seule, à partir du même CheminExecutable, pas de
problème. Si
je republie A3 après avoir décoché la case «Application à instance
unique»,
A1 peut la lancer !
Tout se passe donc comme si A3 reconnaissait en A1 un double d'elle-même,
alors que ce n'est pas le cas pour A2.
À la main, je peux aussi lancer A3 après avoir lancé A2. Par contre, je
ne
peux pas lancer A1 si A3 est déjà chargé (au moins il y a une certaine
cohérence dans cette symétrie !).
Quelqu'un a-t-il une idée d'explication ? de solution ? Cela pourrait-il
avoir un lien avec la création d'une application Windows à partir d'un
modèle ?
Merci d'avance,
Gilbert Tordeur
Bonjour,
Vous avez sans doute fait un copier/coller du .vbproj de A1 et A3...
Il doivent donc avoir le même GUID, pensez donc à changer le GUID d'un des
2 projets (Propriétés du Projet -> Application -> Assembly Information)
Pour générer un GUID, utilisez le p'tit logiciel présent dans le menu
Tools : "Create GUID"
Le Thu, 10 Jan 2008 12:15:58 +0100, Gilbert Tordeur a écrit:
Bonjour,
J'ai écrit trois applications Windows à instance unique (appelons-les A1,A2 et A3), publiée sur un serveur de fichiers. L'une d'entre elles (A1) est un menu qui permet de lancer les autres :
Dim proc As Process = New Process() proc.StartInfo = New ProcessStartInfo(CheminExecutable) proc.Start()
Quand A1 lance A2, aucun problème. Mais quand A1 lance A3, j'ai le temps de voir le chargement de A3, qui aussitôt se termine.
Si je lance A3 seule, à partir du même CheminExecutable, pas de problème. Si je republie A3 après avoir décoché la case «Application à instance unique», A1 peut la lancer !
Tout se passe donc comme si A3 reconnaissait en A1 un double d'elle-même, alors que ce n'est pas le cas pour A2.
À la main, je peux aussi lancer A3 après avoir lancé A2. Par contre, je ne peux pas lancer A1 si A3 est déjà chargé (au moins il y a une certaine cohérence dans cette symétrie !).
Quelqu'un a-t-il une idée d'explication ? de solution ? Cela pourrait-il avoir un lien avec la création d'une application Windows à partir d'un modèle ?
Merci d'avance, Gilbert Tordeur
Bonjour,
Vous avez sans doute fait un copier/coller du .vbproj de A1 et A3... Il doivent donc avoir le même GUID, pensez donc à changer le GUID d'un des 2 projets (Propriétés du Projet -> Application -> Assembly Information)
Pour générer un GUID, utilisez le p'tit logiciel présent dans le menu Tools : "Create GUID"
-- Gilles TOURREAU - MVP C#
S.A.R.L. P.O.S Le spécialiste en motoculture depuis + de 30 ans ! http://www.pos.fr