


Comment démarrer un processus PowerShell avec des privilèges d'administrateur et rediriger stdin (os.exec)
L'éditeur PHP Zimo partagera aujourd'hui avec vous une méthode pour démarrer le processus PowerShell avec les privilèges d'administrateur et rediriger stdin. Dans certains cas, nous devons exécuter le script PowerShell avec des droits d'administrateur, mais son exécution directe peut rencontrer des problèmes d'autorisation. À ce stade, nous pouvons utiliser la fonction os.exec pour y parvenir. La fonction os.exec démarre un processus et redirige les entrées vers un script. De cette façon, nous pouvons exécuter des commandes avec des droits d'administrateur dans le script et recevoir des entrées. Dans cet article, nous présenterons en détail comment utiliser cette méthode pour résoudre les problèmes d'autorisation, nous espérons qu'elle sera utile à tout le monde.
Contenu de la question
Je souhaite démarrer un processus PowerShell avec des droits d'administrateur et rediriger stdin vers l'écrivain, j'ai tout qui fonctionne sauf comment l'exécuter en tant qu'administrateur.
// Start powershell powershell := exec.Command("powershell") // Add something that will open UAC and give the process admin priviliges powershell.SysProcAttr = &syscall.SysProcAttr{HideWindow: true} powershell.Env = os.Environ() // Create pipe to write to it later stdin, err := powershell.StdinPipe() if err != nil { log.Fatal(err) } defer stdin.Close()
Comme il ne semble pas y avoir quelque chose comme process.verb
qui puisse être défini sur "runas", j'ai essayé de créer un PowerShell à l'aide de la commande PowerShell start-process ... -verb runas
Le processus et l'obtention du pid du processus ont réussi, mais il semble que je ne pourrai pas utiliser le pid plus tard pour faire fonctionner stdin et stdout. process.verb
这样的东西可以设置为“runas”,所以我尝试使用 powershell 命令 start-process ... -verb runas
创建一个 powershell 进程并获取了该进程的 pid成功了,但似乎无法稍后使用 pid 来操作 stdin 和 stdout。
解决方法
感谢@jeroen-mostert,我有点明白了。我以管理员身份启动了 go 可执行文件,并使用了 StartProcess powershell.exe -verb RunAs
StartProcess powershell.exe -verb RunAs
et cela n'a pas fonctionné comme je le voulais en premier lieu, mais au moins cela ne fonctionne plus pour PowerShell. UAC. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds



Comment exécuter le fichier .sh sur le système Linux ? Dans les systèmes Linux, un fichier .sh est un fichier appelé script Shell, utilisé pour exécuter une série de commandes. L'exécution de fichiers .sh est une opération très courante. Cet article explique comment exécuter des fichiers .sh dans les systèmes Linux et fournit des exemples de code spécifiques. Méthode 1 : utiliser un chemin absolu pour exécuter un fichier .sh Pour exécuter un fichier .sh dans un système Linux, vous pouvez utiliser un chemin absolu pour spécifier l'emplacement du fichier. Voici les étapes spécifiques : Ouvrez le terminal

Un fichier esd est un format de compression utilisé dans les systèmes d'exploitation Windows, tandis qu'un fichier ISO est un fichier image disque utilisé pour créer une copie de disque ou un lecteur optique virtuel. Lorsque nous devons convertir des fichiers esd en fichiers iso, cela peut être dû au fait que les fichiers ISO sont plus couramment utilisés et plus faciles à utiliser. Ce qui suit vous présentera quelques méthodes courantes pour terminer ce processus de conversion. Méthode 1 : Utiliser ESDDecrypter ESDDecrypter est un programme spécialement utilisé pour décrypter et convertir les fichiers esd en fichiers iso.

sblk est une commande utilisée pour répertorier toutes les informations sur les périphériques de bloc disponibles dans un système Linux. Les périphériques de bloc font référence aux périphériques qui peuvent transmettre des données en blocs, tels que les disques durs, les lecteurs optiques, les clés USB, etc. La commande lsblk peut afficher les dépendances entre les périphériques blocs, ainsi que divers attributs tels que la taille, le type, le système de fichiers, le point de montage, etc. La commande lsblk obtient des informations du système de fichiers virtuel /sys et de la base de données udev. S'il n'y a pas de base de données udev ou si lsblk n'est pas compilé avec le support udev, elle essaiera de lire l'étiquette, l'UUID et le type de système de fichiers à partir du périphérique bloc. ce qui nécessite les privilèges root. Dans cet article, nous expliquerons comment utiliser la commande lsblk pour lister les périphériques bloc d'un système Linux à

Linux est un système d'exploitation open source, portable et personnalisable, largement utilisé dans divers domaines, tels que les serveurs, les ordinateurs de bureau, les appareils embarqués, etc. Le cœur de Linux est le noyau, chargé de gérer les ressources matérielles et de fournir les services de base. Cependant, le noyau n'est pas une entité indépendante et nécessite un système de fichiers pour stocker et accéder à diverses données et programmes. Un système de fichiers est une méthode d'organisation et de gestion de fichiers. Il définit le nom, l'emplacement, les attributs, les autorisations et d'autres informations du fichier. Sous Linux, il existe de nombreux types de systèmes de fichiers, tels que ext4, xfs, btrfs, etc., chacun ayant ses propres caractéristiques et avantages. Cependant, parmi tous les systèmes de fichiers, il existe un système de fichiers spécial, qui constitue la base et le cœur du système Linux, qui est

Pourquoi Win7 ne peut-il pas exécuter les fichiers bat ? Récemment, de nombreux utilisateurs utilisant le système d'exploitation Windows7 ont signalé qu'ils ne pouvaient pas exécuter les fichiers .bat. Cela a suscité de nombreuses discussions et confusions. Pourquoi un système d'exploitation qui fonctionne bien ne peut-il pas exécuter un simple fichier .bat ? Tout d’abord, nous devons comprendre l’arrière-plan du fichier .bat. Un fichier .bat, également appelé fichier batch, est un fichier texte brut contenant une série de commandes pouvant être utilisées par l'interpréteur de commandes Windows (cmd.ex

Nous avons conçu ce didacticiel de script Windows PowerShell pour les débutants, que vous soyez un passionné de technologie ou un professionnel cherchant à améliorer vos compétences en matière de script. Si vous n'avez aucune connaissance préalable des scripts PowerShell, cet article commencera par les bases et sera adapté à vos besoins. Nous vous aiderons à maîtriser les étapes d'installation d'un environnement PowerShell et vous guiderons à travers les principaux concepts et fonctionnalités des scripts PowerShell. Si vous êtes prêt à en savoir plus sur les scripts PowerShell, embarquons ensemble dans ce passionnant voyage d'apprentissage ! Qu’est-ce que WindowsPowerShell ? PowerShell est un système de commande hybride développé par Microsoft

Si vous êtes un administrateur informatique ou un expert en technologie, vous devez être conscient de l'importance de l'automatisation. Surtout pour les utilisateurs de Windows, Microsoft PowerShell est l'un des meilleurs outils d'automatisation. Microsoft propose une variété d'outils pour vos besoins d'automatisation, sans qu'il soit nécessaire d'installer des applications tierces. Ce guide détaillera comment exploiter PowerShell pour automatiser les tâches. Qu'est-ce qu'un script PowerShell ? Si vous avez de l'expérience avec PowerShell, vous avez peut-être utilisé des commandes pour configurer votre système d'exploitation. Un script est une collection de ces commandes dans un fichier .ps1. Les fichiers .ps1 contiennent des scripts exécutés par PowerShell, tels que Get-Help de base

Les méthodes d'utilisation des fichiers URL pour ouvrir des ressources Internet incluent : double-cliquer pour ouvrir à l'aide d'un navigateur Web. Ouvrez-le avec un éditeur de texte, copiez l'adresse du lien et collez-la dans la barre d'adresse du navigateur. Via la ligne de commande, utilisez la commande "start" ou "open" pour spécifier le chemin du fichier URL. Créez un fichier de script contenant la commande pour ouvrir le fichier URL.
