J'essaie de comprendre comment exécuter un programme qui nécessite un accès administrateur pour autorun.
Certains programmes tels que DuMeter , Speedfan ou ATI Tray Tools nécessitent un accès administrateur pour l’interface avec le matériel. En outre, il s’agit de tâches en arrière-plan qu’on ne voudrait pas exécuter manuellement à chaque démarrage; elles devraient donc faire partie du démarrage.
J'ai regardé autour de moi et la solution la plus proche d'une solution que je pouvais trouver était de les planifier en tâches, mais ce n'est pas une bonne chose, car elle encombre la liste des tâches, mais certains programmes doivent être exécutés dès que possible (par exemple, surveiller les octets transférés sur la carte réseau, pour régler la vitesse du ventilateur ou définir les couleurs et les fréquences de rafraîchissement du bureau).
J'ai envisagé de les convertir en services, mais cela semble excessivement inutile.
Existe-t-il un meilleur moyen de lancer automatiquement des programmes en tant qu'administrateur?
Merci.
Mise
à jour Pour être clair, la méthode pour élever les tâches d'exécution automatique ne nécessite pas l'intervention de l'utilisateur, telle que l'acceptation de l'invite UAC. Bien sûr, on pourrait désactiver le contrôle de compte d'utilisateur, mais ce n'est évidemment pas idéal.
la source
Une alternative consiste à utiliser PsExec de Microsoft - il peut transmettre le nom d'utilisateur et le mot de passe à la commande à exécuter.
la source
Faire fonctionner un speedfan en tant que tâche planifiée était une bonne idée.
Dans Windows 7, la tâche peut être planifiée non seulement par la date / heure, mais également par des déclencheurs.
Mais vous devez le configurer correctement.
Le moyen le plus simple consiste simplement à copier tous les paramètres de
la tâche d'exécution automatique de Skype.Si vous en avez un Et j'ai également ajouté un déclencheur supplémentaire pour le programme d'exécution de la tâche: exécution à l'ouverture de session. (Je traduis les paramètres de ma langue. La traduction peut donc ne pas être exacte, comme vous le voyez dans votre version anglaise)
Voici les paramètres:
"C:\Program Files (x86)\SpeedFan\speedfan.exe"
et tapez vos options de ligne de commande dans le champ situé à droite. Mes options sont-minimize -nosmbscan
. Puis cliquez sur OKla source
D'accord, j'ai trouvé un moyen de le faire sans trop de tracas ni d'exposer un mot de passe en clair .
Tout d'abord, vous devez activer le compte d'administrateur. C'est la partie la plus gênante. J'ai configuré mon compte normal pour la connexion automatique, mais il est gênant que le compte administrateur soit disponible sur l'écran de connexion, même si je ne le vois jamais vraiment. Certains pourraient se plaindre qu'en exposant le compte administrateur, le système sera un peu moins sécurisé. Toutefois, comme vous devez définir un mot de passe pour le compte afin de pouvoir l'utiliser à partir de la ligne de commande, cette préoccupation est sans objet.
La méthode que j'ai choisie nécessite l'utilisation d'une sorte de programme SHELLEXECUTE qui prend en charge les programmes en cours d'exécution minimisés. (On pourrait utiliser la commande START intégrée à l'interpréteur de commandes CMD à la place, mais cela ferait clignoter une fenêtre d'invite de commande alors qu'un programme non console sans fenêtre éviterait cela.) Il y a beaucoup de choix, mais j'en J'ai écrit il y a longtemps.
Maintenant, créez simplement une entrée de registre dans la clé RUN qui appelle ShellExecute, en spécifiant l'option de réduction et en utilisant RUNAS en tant que programme à exécuter. (Si vous préférez, certains programmes peuvent exécuter un programme avec un compte différent, mais RUNAS est fourni avec Windows et peut enregistrer le mot de passe pour éviter de l'inclure dans la ligne de commande.) Vous pouvez également créer un raccourci Windows normal et le déplacer. dans le dossier de démarrage .
Enfin, vous devrez passer le programme (et ses arguments) comme argument à RUNAS.
(N'oubliez pas de lancer le programme cible, ou n'importe quel programme, avec RUNAS, en spécifiant l'option / SAVECRED, au moins une fois sans l'exécuter minimisé afin de sauvegarder le mot de passe.)
La ligne de commande à utiliser peut devenir assez complexe car il s’agit d’un programme appelant un programme appelant un programme. Cela s'aggrave si vous devez spécifier des arguments pour le programme cible, et pire encore si vous devez inclure des espaces. La situation des guillemets peut rapidement devenir exaspérante, de sorte que de nombreuses expériences seront probablement nécessaires.
Par exemple, si vous utilisez ShelExec de PJ Naughter et souhaitez exécuter SpeedFan, vous utiliserez une ligne de commande comme celle-ci:
Je dois souligner que j’ai défini les options de SpeedFan pour un démarrage minimisé, sinon au lieu d’exécuter «directement» speedfan, je devrais exécuter un deuxième programme ShellExecute avec son option minimiser pour exécuter SpeedFan (un programme appelant un programme appelant un programme appelant un programme). Faire en sorte que cela fonctionne conduirait presque sûrement même le plus accompli des administrateurs informatiques à devenir fou furieux.
La ligne de commande peut être un peu fastidieuse, mais cela semble assez bien fonctionner pour toutes les tâches en arrière-plan à exécution automatique nécessitant un accès administrateur. Mieux encore, cela fonctionne pour les comptes d'utilisateur standard / limités. Vous pouvez donc utiliser cette méthode pour que les programmes s'exécutent automatiquement avec des privilèges élevés sans donner d'invitation UAC aux utilisateurs habituels.
(Bien que cela fonctionne bien, il a ses inconvénients, notamment parce qu’il exécute les programmes indirectement, les gestionnaires d’exécution automatique tels que Autoruns, StartupDelayer, HijackThis, etc. ne pourront pas détecter le programme en cours d’exécution automatique. fonctionne toujours et peut désactiver / supprimer / etc, mais ils n’afficheront pas les bonnes informations sur les ressources des icônes ou des fichiers.)
la source
Je pense que l'utilisation du planificateur de tâches pour lancer automatiquement des programmes n'est pas très conviviale, et parfois cela a eu des effets secondaires pour moi (par exemple, l'icône de la barre des tâches d'un programme n'est pas ajoutée).
Pour remédier à cela, j'ai créé un programme appelé Démarrage accéléré qui se relance tout d'abord avec des privilèges d'administrateur, puis lance tous les fichiers d'un répertoire. Etant donné que Elevated Startup est maintenant élevé, tous les programmes qu’il lance ensuite disposent également de privilèges d’administrateur. Le répertoire se trouve dans le menu de démarrage à côté du répertoire de démarrage classique et fonctionne pratiquement de la même manière.
Vous pouvez rencontrer une invite UAC lorsque le programme se relance, en fonction de vos paramètres UAC.
Vous pouvez obtenir le programme ici: https://stefansundin.github.io/elevatedstartup/
la source