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

Windows Discussion :

Contourner UAC windows


Sujet :

Windows

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 223
    Points : 47
    Points
    47
    Par défaut Contourner UAC windows
    Bonjour à tous,

    Dans le cadre d'un projet d'étude je dois réaliser un petit programme qui doit tourner en tache de fond et qui doit se lancer au démarrage de windows, ceci sans aucune intervention de l'utilisateur.
    Or l'UAC de windows demande confirmation à chaque fois que l'on lance le logiciel et le bloque au démarrage de windows.
    Je sais qu'il est possible de contourner ce problème mais je ne sais pas comment procéder.

    Pour information je crée une entrée dans la base de registre pour le démarrage du logiciel.

    Pouvez vous m'éclairer ? Je vous en remercie 1000 fois

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Il ne s'agit pas là de contourner l'UAC, mais tout d'abord de répondre au questions suivantes:
    • Ton programme doit-il se lancer à l'ouverture de session, ou au démarrage de l'ordinateur? Ce n'est pas la même chose. Et si deux utilisateurs ouvrent une session, ce programme doit-il tourner pour chacun d'eux?
    • Ce programme nécessite-t-il vraiment les droits d'administration?

    Si en fait le programme doit tourner en un seul exemplaire au démarrage de l'ordinateur, alors qu'il ait besoin des droits d’administration ou non, ce programme devrait être un service Windows.

    Selon le langage et le framework utilisé, c'est plus ou moins facile de faire un programme service.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 223
    Points : 47
    Points
    47
    Par défaut
    Tout d'abord merci pour ton message Médinoc et ton explication.

    Mon programme doit se lancer au démarrage, si possible pour tout les utilisateurs mais si cela est trop compliqué pour un seul utilisateur suffira.

    Mon application doit être un service alors et non un executable ?
    Je n'ai pas précisé mais il s'agit d'un véritable programme avec un menu principal etc ... qui doit pouvoir être en tache de fond lorsqu'on le décide (un peu comme un keylogger ou un truc du genre). Si je me trompe pas cela n'est pas possible avec un service ?

    Encore merci pour votre aide

  4. #4
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Si c'est un programme avec UI (et probablement icône dans la zone de notification), alors pas besoin de le lancer au démarrage de l'ordi, il suffit de le lancer à l'ouverture de session.

    Ensuite, je répète, ce programme a-t-il vraiment besoin des droits administratifs? À quoi sert-il?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 223
    Points : 47
    Points
    47
    Par défaut
    Le programme sert à afficher une alerte quand un programme choisi en paramètre est lancé par l'utilisateur, c'est pourquoi une fois paramétré et lancé il ne doit pas être visible et accessible.

    Il à besoin des droits admin je suppose car il écrit dans le registre pour lui permettre de se lancer au démarrage (HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ Run).

  6. #6
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Tu peux faire ça dans HKEY_CURRENT_USER.

    Sauf si tu veux qu'un admin puisse l'activer de force pour tous les utilisateurs, auquel cas tu devrais faire un programme dédié pour l'administration de ton programme de surveillance; seul le programme d'administration nécessiterait les droits d'admin, et lui ne serait pas lancé au démarrage.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 223
    Points : 47
    Points
    47
    Par défaut
    Autant pour moi je me suis trompé ma clé est bien dans HKEY_CURRENT_USER (car j'ai testé les deux). Pourtant j'ai toujours une demande d'autorisation

  8. #8
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Il faut que tu change une option dans le projet, de "requireAdministrator" à "asInvoker".
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 223
    Points : 47
    Points
    47
    Par défaut
    Je n'ai pas vraiment cette option mais je crois que tu veux parler des options que je te montre en piece jointe.
    Si c'est bien cela j'ai peur de te désespérer lol car j'ai essayé les 3 options, la première j'ai une erreur de l'application, les deux autres l'UAC se met en marche lors de l'éxecution.

    Merci pour ton sang froid
    Images attachées Images attachées  

  10. #10
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Il faut mettre l'option du haut, utiliser HKEY_CURRENT_USER, et identifier les autres endroits où est faite une tentative d'user de droits administratifs, pour:
    • soit les corriger,
    • soit s'apercevoir que finalement, on a bel et bien besoin des droits administratifs. Auquel cas, il faudra regarder de plus près encore pour voir si on ne peut pas séparer le programme.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 223
    Points : 47
    Points
    47
    Par défaut
    Ok je vais essayer cela mais si je me trompe pas à partir du moment ou j'écris dans la base de registre il faut les droits d'admin ?

  12. #12
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Seulement si tu écris autre part que dans HKEY_CURRENT_USER.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 223
    Points : 47
    Points
    47
    Par défaut
    Ok je vais regarder ça et je te/vous tiens au courant.

    Merci en tout cas pour ton aide et ta patience cela m'aide à comprendre déjà un peu mieux tout ça.


  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 223
    Points : 47
    Points
    47
    Par défaut
    je viens de faire un test, en effet c'est beaucoup mieux au niveau de l'UAC, il ne s'affole plus.

    Par contre j'ai un problème de droit car lors du premier lancement du programme un fichier de donnée est créer (et ensuite utilisé pour stocké les paramètre du logiciel). Mon programme m'affiche dont une belle fenêtre d'erreur me disant qu'il est impossible de créer le fichier.
    Ce fichier se créer dans C:/Windows, mais je peux le changer d'endroit si il le faut.

    J'ai donc essayé de copier ce fichier préalablement créer "manuellement", mais une autre erreur mais ce coup ci d'écriture.

    Faut il un accès admin pour créer un fichier et écrire dessus ?

  15. #15
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Il faut être admin pour écrire dans C:\Windows.

    Les fichiers de config "utilisateur" d'un logiciel doivent être dans le dossier contenu dans la variable d'environnement %APPDATA%.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 223
    Points : 47
    Points
    47
    Par défaut
    Après de multiples essais toujours le meme problème, il ne veux pas créer le fichier dans le répertoire d'utilisateur.
    J'ai essayé de "fournir" ce fichier lors de l'installation, il se met bien dans le répertoire utilisateur mais il ne peut pas écrire dedans.


  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 223
    Points : 47
    Points
    47
    Par défaut
    Solution trouvée !

    Il s'agissait en fait de supprimer le fichier de la bibliothèque de mon projet.

    Pas facile à trouver mais à force de faire des essais et de toucher à tout j'y suis parvenu grâce à vous.

    Merci mille fois pour votre aide, je connais un peu plus de choses sur les droits windows ^^.


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

Discussions similaires

  1. Image en transparent comme UAC Windows
    Par Fredman dans le forum Excel
    Réponses: 2
    Dernier message: 20/02/2015, 17h36
  2. Réponses: 2
    Dernier message: 10/03/2014, 22h13
  3. Blocage modules BO par l'UAC Windows 7
    Par JuniorBI dans le forum Autres produits SAP BO
    Réponses: 0
    Dernier message: 24/04/2013, 17h40
  4. Delphi, Utilisateur standard de XP et UAC Windows 7
    Par Andry dans le forum API, COM et SDKs
    Réponses: 1
    Dernier message: 23/05/2011, 14h37

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