IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

[VB.NET] Comment créer un Mutex ?


Sujet :

VB.NET

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2012
    Messages : 15
    Par défaut [VB.NET] Comment créer un Mutex ?
    Bonjour à tous !

    Voilà mon soucis. J'utilise Inno Setup pour installer mon application et j'aurais souhaiter utiliser un mutex pour demander de fermer l'application lors d'une mise à jour par exemple. J'ai pour le moment tenté 2 méthodes qui ne sont pas concluantes.
    J'utilise Process Explorer pour visualiser la liste des mutex.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     Private Declare Function CreateMutex Lib "kernel32" _
                Alias "CreateMutexA" _
               (ByVal lpMutexAttributes As Long, _
                ByVal bInitialOwner As Long, _
                ByVal lpName As String) As Long
     
     
    ' dans la fenêtre principal 
            CreateMutex(0&, 0&, "monAppliMutex")
    => Ne fait RIEN, je ne vois aucun mutex créé.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Dim m As Threading.Mutex = Nothing
     
            Const mutexName As String = "monAppliMutex"
            Dim mutexWasCreated As Boolean '
            Dim user As String = Environment.UserDomainName _
                & "\" & Environment.UserName
            Dim mSec As New MutexSecurity()
     
            Dim rule As New MutexAccessRule(user, _
                MutexRights.Synchronize Or MutexRights.Modify, _
                AccessControlType.Deny)
            mSec.AddAccessRule(rule)
     
            rule = New MutexAccessRule(user, _
                MutexRights.ReadPermissions Or _
                MutexRights.ChangePermissions, _
                AccessControlType.Allow)
            mSec.AddAccessRule(rule)
     
            m = New Mutex(True, mutexName, mutexWasCreated, mSec)
    => Un mutex est effectivement créé mais pour seulement quelques secondes avec une sécurité où tout est refusé.


    Donc ma question : est-ce que quelqu'un connaitrait une troisième méthode qui serait la bonne ?
    En fait il y aurait juste besoin de changer le Handle et d'ajuster la sécurité. Dans ma seconde méthode je vois bien qu'il est question de règle, droit et permission mais ces classes me parlent pas du tout.

  2. #2
    Membre averti
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2012
    Messages : 15
    Par défaut
    J'ai finalement trouvé ma réponse sur un autre forum.
    C'était tout simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ' dans Public Class
    Dim m As New Mutex(True, "MyMutex")

Discussions similaires

  1. [VB.Net] Comment créer dynamiquement un contrôle bouton ?
    Par robert.michel9 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 19/01/2006, 13h49
  2. [VB.Net] Comment créer un fichier .mdb ?
    Par smedini dans le forum Accès aux données
    Réponses: 6
    Dernier message: 31/12/2005, 10h56
  3. Réponses: 13
    Dernier message: 06/11/2005, 21h37
  4. [VB.NET] Comment créer boutons windows???
    Par fdiedler dans le forum Windows Forms
    Réponses: 11
    Dernier message: 21/02/2005, 18h57
  5. [VB.NET] Comment créer un aboutBox ?
    Par mpascolo dans le forum Windows Forms
    Réponses: 3
    Dernier message: 06/01/2005, 13h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo