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 :

Créer une clé de registre visible pour tous les utilisateurs


Sujet :

VB.NET

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Août 2012
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Créer une clé de registre visible pour tous les utilisateurs
    Bonjour,

    je voudrais créer une clé de registre pour stocker quelques informations qui soient visibles par tous les utilisateurs du PC.

    j'essaye de créer cette clé dans LocalMachine\Software ou dans Users\.DEFAULT\Software mais j'obtiens un message d'erreur (à priori un problème de permission ou de droit d'accès), je suis pourtant administrateur de mon PC.

    Auriez-vous un exemple de code qui marcherait (y compris si la création se fait sous un User qui ne serait pas administrateur.

    je développe avec Visual Studio Express 2013.

    merci d'avance
    Marc

  2. #2
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par Overcils Voir le message
    Bonjour,

    je voudrais créer une clé de registre pour stocker quelques informations qui soient visibles par tous les utilisateurs du PC.

    j'essaye de créer cette clé dans LocalMachine\Software ou dans Users\.DEFAULT\Software mais j'obtiens un message d'erreur (à priori un problème de permission ou de droit d'accès), je suis pourtant administrateur de mon PC.

    Auriez-vous un exemple de code qui marcherait (y compris si la création se fait sous un User qui ne serait pas administrateur.

    je développe avec Visual Studio Express 2013.

    merci d'avance
    Marc
    Bonjour,

    --> 2 choses l'une :

    - Il ne faut pas croire qu'être membre du groupe administrateur te permet de tout faire sur un PC surtout avec le registre !
    - Je serais curieux de voir quelle est la personne qui va te pondre en quelque ligne de code un exemple permettant d'écrire dans le registre aux emplacements cités supra et surtout avec un simple compte utilisateur sans aucun droit admin.

    --> Enfin, plus raisonnablement :

    - Les ACL sur Windows c'est quoi et comment ça fonctionne ? https://fr.wikipedia.org/wiki/Access_Control_List
    - Doit-on être membre du groupe admin pour modifier les ACL ? Oui nécessairement ! Ce qu implique de paramétrer son projet sous VS avec un niveau d'exécution de privilèges en : RequireAdministrator !
    - Existe-t-il un outil en ligne de commande permettant de créer/supprimer/modifier les ACL (Windows) ? https://helgeklein.com/setacl/docume...on-setacl-exe/

    Bonne lecture et surtout bon courage

    A+

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Février 2012
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2012
    Messages : 37
    Points : 59
    Points
    59
    Par défaut
    salut
    voila une methode pour ecrire dans le registre j ai prit l exemple du dossier de demarrage
    cureent user car dans les dossier que tu demande c est possible mais faut des droit admin
    sans les droit admin tu peut ecrire la vu par tous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim Registry As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.CurrentUser
            Dim Key As Microsoft.Win32.RegistryKey = Registry.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Run", True)
            Key.SetValue("NomDeVotreClé", "CheminDeVotreFichierALancer", Microsoft.Win32.RegistryValueKind.String)
            Key.Close()
    voila dit moi si ca aide

  4. #4
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Août 2012
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    merci pour vos deux réponses, mais ça ne règle pas mon problème.

    j'utilise les registres CurrentUser depuis bien longtemps, je n'ai donc pas de soucis avec.

    Je distribue un logiciel via internet qui nécessite une clé d'activation qui est sauvegardée dans la base de registre CurrentUser.
    le problème est qu'aujourd'hui, seul l'utilisateur qui a installé le logiciel peut l’exécuter. je voudrais que le logiciel soit utilisable par tous les utilisateurs.

    c'est pourquoi je cherche une méthode pour que certains paramètres soient stockés dans des registres visibles par tous les utilisateurs,
    les paramètres spécifiques restant dans les registres CurrentUser comme actuellement.

    merci d'avance pour vos réponses

  5. #5
    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 : 42
    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
    Points : 39 749
    Points
    39 749
    Par défaut
    Pour pouvoir écrire dans HKEY_LOCAL_MACHINE, il faut non seulement que l'utilisateur soit admin, mais également que l'application soit exécutée en tant qu'admin (clic doit, exécuter en tant qu'administrateur).

    Est-ce que ton application a un installeur ? Si oui, celui-ci s'exécute probablement avec les privilèges admin ; peut-être que tu pourrais gérer dans l'installeur l'écriture dans HKLM ?

    Sinon, il faut que tu le fasses dans un programme qui est lancé en tant qu'admin (en spécifiant le verbe "runas"). Cela affichera le dialogue UAC pour autoriser l'exécution.

  6. #6
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Août 2012
    Messages : 4
    Points : 4
    Points
    4
    Par défaut
    Merci Tomlev,

    je développe avec Visual Studio 2013 et publie par ClickOnce via le WEB, ce qui fait que je ne peux être en confiance totale.
    après vérification, je ne pourrai pas créer de clés dans Local_Machine.
    Mon logiciel s'adresse à des musiciens qui ne sont pas forcements experts en sécurité^^
    je vais contourner mon problème avec une autre solution, moins élégante, mais qui marchera.

    merci pour vos réponses.
    Marc

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 17/07/2021, 16h16
  2. Une imprimante partagée pour tous les utilisateurs
    Par iubito dans le forum Windows Serveur
    Réponses: 6
    Dernier message: 24/09/2009, 10h18
  3. Installation d'une imprimante pour tous les utilisateurs
    Par chobol dans le forum Windows XP
    Réponses: 4
    Dernier message: 04/09/2007, 22h28
  4. Réponses: 10
    Dernier message: 02/05/2007, 10h19
  5. Réponses: 6
    Dernier message: 06/06/2006, 13h22

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