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 :

Accéder à un fichier avec un autre utilisateur


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 48
    Par défaut Accéder à un fichier avec un autre utilisateur
    Bonjour,

    Je développe une application qui consiste à lancer une application avec un compte administrateur, voici mon code:

    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
                Dim theProcessStartInfo As New System.Diagnostics.ProcessStartInfo()
                theProcessStartInfo.Verb = "runas"
     
                If FileLocation.Text.EndsWith(".msi") Then
                    theProcessStartInfo.FileName = "msiexec "
                    theProcessStartInfo.Arguments = "/i " & FileLocation.Text & Arguments.Text
                Else
                    theProcessStartInfo.FileName = FileLocation.Text
                    theProcessStartInfo.Arguments = Arguments.Text
                End If
     
                theProcessStartInfo.UseShellExecute = False
     
                theProcessStartInfo.UserName = Identifiants.login
     
                theProcessStartInfo.Password = Identifiants.password
     
                System.Diagnostics.Process.Start(theProcessStartInfo)
    Le problème est que Process.Start me renvoie une exception en me disant "nom de répertoire non valide". Or, le chemin est correct j'ai donc fouillé un peu...

    Je me suis connecté avec la session de l'administrateur et quand j'essaye d'accéder au dossier de l'utilisateur (où se trouve l'application) Windows me dit que je n'ai pas accès au dossier et je dois cliquer sur continuer (c'est le contrôle UAC il me semble, corrigez moi si je me trompe).

    Il se trouve qu'une fois que j'ai fait "continuer", que je me reconnecte en tant qu'utilisateur et que je relance mon programme il fonctionne correctement!

    Est-il possible de contourner ce problème sans avoir à se connecter en tant qu'administrateur? Parce que cette manip fait perdre tout son sens à mon programme

    Merci.

    Cordialement,

    Fabien

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    google : .net impersonation
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Pol63 Voir le message
    google : .net impersonation
    et achète un tube d'aspirine en prévision

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 48
    Par défaut
    Ok! Merci bien!
    J'ai trouvé quelques trucs et j'ai de l'aspirine sous la main, je vais pouvoir m'y coller

  5. #5
    Membre éclairé Avatar de lukeni2
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Finance

    Informations forums :
    Inscription : Février 2008
    Messages : 92
    Par défaut
    Tu trouvera un exemple complet ici
    Cet exemple utilise la classe System.Security.Permissions.WindowsImpersonationContext, il suffit de l'adapter à ses bésoins.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 48
    Par défaut
    J'ai réussi à régler mon problème, c'est complexe mais ça marche =)

    Merci bien!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Copier un fichier sur le réseau avec un autre utilisateur du domaine
    Par Corben dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 30/01/2008, 16h19
  2. "se connecter avec un autre utilisateur"
    Par Hooyz dans le forum ASP.NET
    Réponses: 2
    Dernier message: 17/09/2007, 08h55
  3. Ouverture d'un fichier avec droit d'utilisateur
    Par drekkii dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 14/09/2007, 15h57
  4. Lancer Weblogic avec un autre utilisateur que weblo
    Par ujoodha dans le forum Weblogic
    Réponses: 3
    Dernier message: 08/06/2007, 15h09
  5. Copie de fichier avec un autre utilisateur
    Par cretindezalpes dans le forum Delphi
    Réponses: 7
    Dernier message: 02/04/2007, 17h01

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