Bonjour à tous ,
je vais essayer d'expliquer mon problème, j'ai une application métier qui avant de ce lancer lit des clé de regedit et après les met en cache.
Le souci ,cette application métier est installée sur un serveur RDS W2008R2 , mais celle-ci n'est pas optimisée pour cette utilisation.
Chaque client a ses propres clé regedit,
voici le processus de lancement de l'application :
- le client lance un RemoteAPP sur le serveur distant , celui-ci est compilé en autoit. dans ce script j'écris les clés de regedit et après l'appli s'exécute. Tout ça ds un seul script (identifiant unique), processus unique côté serveur.
- il est possible que 2 utilisateurs lancent en même temps l'appli ( pas de bol) , comment faire pour les 2 script n’écrivent pas en même temps les clés de regedit.
merci pour vos remarques et début de piste.
[R] Gestion Processus multi-utilisateurs
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
-
ludoo
- Niveau 4

- Messages : 89
- Enregistré le : lun. 11 août 2008 09:25
- Localisation : Drôme 26
- Status : Hors ligne
[R] Gestion Processus multi-utilisateurs
Modifié en dernier par ludoo le mar. 26 mars 2013 14:54, modifié 1 fois.
Ludo
- Tlem
- Site Admin

- Messages : 11830
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] Gestion Processus multi-utilisateurs
Le plus simple serait d'utiliser la fonction _Singleton() afin que le script ne puisse être lancé qu'une seule fois.
Après, on peut envisager une solution de sérialisation, mais au prix d'une complexité plus importante.
Après, on peut envisager une solution de sérialisation, mais au prix d'une complexité plus importante.
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
-
ludoo
- Niveau 4

- Messages : 89
- Enregistré le : lun. 11 août 2008 09:25
- Localisation : Drôme 26
- Status : Hors ligne
Re: [..] Gestion Processus multi-utilisateurs
Chaque script est identifier comme ceci : REG_App_RDS_0001 , REG_App_RDS_0002
Comment faire avec la fonction _Singleton() ,car chaque Processus a un nom bien distinct.
Ou découper le script en 2 , le premier pour écrire le regedit et le 2eme pour lancer le programme.
je suis partie dans cette technique , je test le un processus REG_App_RDS_0001 si il existe le script REG_App_RDS_0002 ne se lance pas .
c'est pas tres optimisé comme script , heureusement que j'ai pas 1000 scripts à faire.
je suis preneur d'une solution plus optimisée.
Comment faire avec la fonction _Singleton() ,car chaque Processus a un nom bien distinct.
Ou découper le script en 2 , le premier pour écrire le regedit et le 2eme pour lancer le programme.
je suis partie dans cette technique , je test le un processus REG_App_RDS_0001 si il existe le script REG_App_RDS_0002 ne se lance pas .
c'est pas tres optimisé comme script , heureusement que j'ai pas 1000 scripts à faire.
je suis preneur d'une solution plus optimisée.
Ludo
- Tlem
- Site Admin

- Messages : 11830
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] Gestion Processus multi-utilisateurs
ha, vous n'aviez pas précisé qu'il y avait un script par utilisateur.
Si vous voulez simplifier la chose, utilisez le même script mais en utilisant des variables internes qui correspondrons au client en cours. Au moins comme ça, vous n'aurez qu'un seul et unique script et donc en cas de modification la maintenance sera bien plus simple.
Si vous voulez simplifier la chose, utilisez le même script mais en utilisant des variables internes qui correspondrons au client en cours. Au moins comme ça, vous n'aurez qu'un seul et unique script et donc en cas de modification la maintenance sera bien plus simple.
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
-
ludoo
- Niveau 4

- Messages : 89
- Enregistré le : lun. 11 août 2008 09:25
- Localisation : Drôme 26
- Status : Hors ligne
Re: [..] Gestion Processus multi-utilisateurs
oui c'est exactement cela que je voudrais faire , mais je vois pas comment .
un début de piste pour les variables ?
un début de piste pour les variables ?
Ludo
- Tlem
- Site Admin

- Messages : 11830
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] Gestion Processus multi-utilisateurs
Ben, il y a le choix : http://www.autoitscript.fr/autoit3/docs/macros.htm
@Username est déjà un bon début pour vos besoins.
@Username est déjà un bon début pour vos besoins.
Thierry
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...
Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
-
ludoo
- Niveau 4

- Messages : 89
- Enregistré le : lun. 11 août 2008 09:25
- Localisation : Drôme 26
- Status : Hors ligne
Re: [..] Gestion Processus multi-utilisateurs
oui , avec la variable username , ça devrait le faire.
merci.
merci.
Ludo
