当前位置: 首页 > article >正文

go+powershell脚本实现预填写管理凭据安装软件

这里使用了powershell脚本进行操作,使用golang进行简单的封装,实现普通用户下安装软件
powershell命令解释

$securePassword = ConvertTo-SecureString "yourpasswd" -AsPlainText -Force #转换密码为SecureString格式
$credential = New-Object System.Management.Automation.PSCredential("administrator", $securePassword) #创建PSCredential对象
$programPath = "C:\PAClient.exe"
Start-Process -FilePath $programPath -Credential $credential
package main

import (
	"fmt"
	"os/exec"
)

func main() {
	// 管理员账号和密码
	username := "Administrator"
	password := "yourpasswd"

	// 要安装的应用程序路径
	programPath := "C:\\PAClient.exe"

	// 创建PowerShell命令字符串
	psCommand := fmt.Sprintf(`
    $securePassword = ConvertTo-SecureString '%s' -AsPlainText -Force;
    $credential = New-Object System.Management.Automation.PSCredential('%s', $securePassword);
    Start-Process -FilePath '%s' -Credential $credential;
    `, password, username, programPath)

	// 执行PowerShell命令
	cmd := exec.Command("powershell", "-Command", psCommand)
	output, err := cmd.CombinedOutput()
	if err != nil {
		fmt.Println("Error executing PowerShell command:", err)
		fmt.Println(string(output))
		return
	}

	fmt.Println("Process installed successfully")

}

http://www.kler.cn/a/394444.html

相关文章:

  • zabbix监控山石系列Hillstone监控模版(适用于zabbix7及以上)
  • 绕组识别标签规范
  • SWIFT基本使用
  • ShardingSphere第10讲:ShardingJDBC 在网络货运项目中的使用
  • ESP32应用开发-Webserver
  • Java/JDK下载、安装及环境配置超详细教程【Windows10、macOS和Linux图文详解】
  • 【WRF后处理】提取某要素数据并绘制地图
  • 基于Java Springboot剧本杀管理系统
  • webSocket的使用文档
  • MySQL【四】
  • 【.GetConnectionTimeoutException的2种情况分析】
  • 打包python代码为exe文件
  • Flutter:Widget生命周期
  • Spring MVC进阶
  • R语言基础| 机器学习
  • 改扩配系列:浪潮英政服务器CS5280H2、IR5280H2——后置SATA、NVME硬盘安装
  • SpringBoot实战:AI大模型+亮数据代理高效获取视频资源
  • 【Apache Paimon】-- 1 -- Apache Paimon 是什么?
  • Python Pandas 结构之 Series 和 DataFrame
  • NFS存储基础操作
  • PostgreSQL 行转列实现
  • 存储大挑战:如何在可靠性与大容量之间玩转平衡术?
  • LabVIEW 使用 Snippet
  • 【Excel】数据透视表分析方法大全
  • 【C++进阶实战】基于linux的天气预报系统
  • CTF攻防世界小白刷题自学笔记15