Powershell Скрипт для установки программ через chocolatey [Решено]
Цитата: CEPBEP_RU56 от 01.04.2023, 13:10Приветствую всех форумчан.
Я новичок на форуме
Ребята подскажите как сделать для скрипта окна добавляющие пользователю соглашения (Да):установить программу или (Нет):не устанавливать.
Вот собственно сам скрипт это просто черновик.
[spoiler title="Скрипт"]$wshell = New-Object -ComObject Wscript.Shell
Set-ExecutionPolicy Unrestricted
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
#https://community.chocolatey.org/packages/GoogleChrome
#Google Chrome 111.0.5563.147
choco install -y "googlechrome"
#https://community.chocolatey.org/packages/vcredist-all
#Microsoft Visual C++ Runtime - All Versions 1.0.1
choco install -y "vcredist-all"
#https://community.chocolatey.org/packages/adobereader
#Adobe Acrobat Reader DC 2023.001.20093.1
choco install -y "adobereader"
#https://community.chocolatey.org/packages/notepadplusplus.install
#Notepad++ (install) 8.5.1
choco install -y "notepadplusplus.install"
#https://community.chocolatey.org/packages/7zip.install
#7-zip (install) 22.1
choco install -y "7zip.install"
#https://community.chocolatey.org/packages/winrar
#WinRAR (install) 6.21
choco install -y "winrar"
#https://community.chocolatey.org/packages/telegram.install
#Telegram (Install) 4.7.1
choco install -y "telegram.install"
#https://community.chocolatey.org/packages/TotalCommander
#Total Commander 10.52
choco install -y "totalcommander"
#https://community.chocolatey.org/packages/potplayer
#PotPlayer 23.02.07
choco install -y "potplayer"
#https://community.chocolatey.org/packages/teamspeak
#TeamSpeak 3.5.6
choco install -y "teamspeak"
#https://community.chocolatey.org/packages/mumble
#Mumble 1.4.287
choco install -y "mumble"
#https://community.chocolatey.org/packages/paint.net
#Paint.NET 5.0.3
choco install -y "paint.net"
#https://community.chocolatey.org/packages/virustotaluploader
#VirusTotal Uploader 2.2.20150420
choco install -y "virustotaluploader"
#https://community.chocolatey.org/packages/vscode.install
#Visual Studio Code (Install) 1.77.0
choco install -y "vscode.install"
#https://community.chocolatey.org/packages/javaruntime
#Java Runtime (JRE) 8.0.231
choco install -y "javaruntime"
#https://community.chocolatey.org/packages/skype
#Skype 8.96.0.207
choco install -y "skype"
#https://community.chocolatey.org/packages/filezilla
#FileZilla 3.63.2.1
choco install -y "filezilla"
#https://community.chocolatey.org/packages/powershell-core/7.3.3
#powershell-core (Install) 7.3.3
choco install -y "powershell-core"
#https://community.chocolatey.org/packages/thunderbird
#Mozilla Thunderbird 102.9.1
choco install -y "thunderbird"[/spoiler]
Приветствую всех форумчан.
Я новичок на форуме
Ребята подскажите как сделать для скрипта окна добавляющие пользователю соглашения (Да):установить программу или (Нет):не устанавливать.
Вот собственно сам скрипт это просто черновик.
Set-ExecutionPolicy Unrestricted
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
#https://community.chocolatey.org/packages/GoogleChrome
#Google Chrome 111.0.5563.147
choco install -y "googlechrome"
#https://community.chocolatey.org/packages/vcredist-all
#Microsoft Visual C++ Runtime - All Versions 1.0.1
choco install -y "vcredist-all"
#https://community.chocolatey.org/packages/adobereader
#Adobe Acrobat Reader DC 2023.001.20093.1
choco install -y "adobereader"
#https://community.chocolatey.org/packages/notepadplusplus.install
#Notepad++ (install) 8.5.1
choco install -y "notepadplusplus.install"
#https://community.chocolatey.org/packages/7zip.install
#7-zip (install) 22.1
choco install -y "7zip.install"
#https://community.chocolatey.org/packages/winrar
#WinRAR (install) 6.21
choco install -y "winrar"
#https://community.chocolatey.org/packages/telegram.install
#Telegram (Install) 4.7.1
choco install -y "telegram.install"
#https://community.chocolatey.org/packages/TotalCommander
#Total Commander 10.52
choco install -y "totalcommander"
#https://community.chocolatey.org/packages/potplayer
#PotPlayer 23.02.07
choco install -y "potplayer"
#https://community.chocolatey.org/packages/teamspeak
#TeamSpeak 3.5.6
choco install -y "teamspeak"
#https://community.chocolatey.org/packages/mumble
#Mumble 1.4.287
choco install -y "mumble"
#https://community.chocolatey.org/packages/paint.net
#Paint.NET 5.0.3
choco install -y "paint.net"
#https://community.chocolatey.org/packages/virustotaluploader
#VirusTotal Uploader 2.2.20150420
choco install -y "virustotaluploader"
#https://community.chocolatey.org/packages/vscode.install
#Visual Studio Code (Install) 1.77.0
choco install -y "vscode.install"
#https://community.chocolatey.org/packages/javaruntime
#Java Runtime (JRE) 8.0.231
choco install -y "javaruntime"
#https://community.chocolatey.org/packages/skype
#Skype 8.96.0.207
choco install -y "skype"
#https://community.chocolatey.org/packages/filezilla
#FileZilla 3.63.2.1
choco install -y "filezilla"
#https://community.chocolatey.org/packages/powershell-core/7.3.3
#powershell-core (Install) 7.3.3
choco install -y "powershell-core"
#https://community.chocolatey.org/packages/thunderbird
#Mozilla Thunderbird 102.9.1
choco install -y "thunderbird"
Цитата: Mikhail от 01.04.2023, 13:22Привет.
Попробуй.
[spoiler title="Скрипт"]$wshell = New-Object -ComObject Wscript.Shell Set-ExecutionPolicy Unrestricted Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1')) function PromptForConfirmation { while ($true) { $choice = Read-Host "Хотите установить? (да/нет)" if ($choice.ToLower() -eq "y") { return $true } elseif ($choice.ToLower() -eq "n") { return $false } else { Write-Host "Пожалуйста, введите 'да(y)' или 'нет(n)'" } } } if (PromptForConfirmation) { choco install -y "googlechrome" } if (PromptForConfirmation) { choco install -y "vcredist-all" } if (PromptForConfirmation) { choco install -y "adobereader" } if (PromptForConfirmation) { choco install -y "notepadplusplus.install" } if (PromptForConfirmation) { choco install -y "7zip.install" } if (PromptForConfirmation) { choco install -y "winrar" } if (PromptForConfirmation) { choco install -y "telegram.install" } if (PromptForConfirmation) { choco install -y "totalcommander" } if (PromptForConfirmation) { choco install -y "potplayer" } if (PromptForConfirmation) { choco install -y "teamspeak" } if (PromptForConfirmation) { choco install -y "mumble" } if (PromptForConfirmation) { choco install -y "paint.net" } if (PromptForConfirmation) { choco install -y "virustotaluploader" } if (PromptForConfirmation) { choco install -y "vscode.install" } if (PromptForConfirmation) { choco install -y "javaruntime" } if (PromptForConfirmation) { choco install -y "skype" } if (PromptForConfirmation) { choco install -y "filezilla" } if (PromptForConfirmation) { choco install -y "powershell-core" } if (PromptForConfirmation) { choco install -y "thunderbird" }[/spoiler]
Привет.
Попробуй.
$wshell = New-Object -ComObject Wscript.Shell
Set-ExecutionPolicy Unrestricted
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
function PromptForConfirmation {
while ($true) {
$choice = Read-Host "Хотите установить? (да/нет)"
if ($choice.ToLower() -eq "y") {
return $true
} elseif ($choice.ToLower() -eq "n") {
return $false
} else {
Write-Host "Пожалуйста, введите 'да(y)' или 'нет(n)'"
}
}
}
if (PromptForConfirmation) {
choco install -y "googlechrome"
}
if (PromptForConfirmation) {
choco install -y "vcredist-all"
}
if (PromptForConfirmation) {
choco install -y "adobereader"
}
if (PromptForConfirmation) {
choco install -y "notepadplusplus.install"
}
if (PromptForConfirmation) {
choco install -y "7zip.install"
}
if (PromptForConfirmation) {
choco install -y "winrar"
}
if (PromptForConfirmation) {
choco install -y "telegram.install"
}
if (PromptForConfirmation) {
choco install -y "totalcommander"
}
if (PromptForConfirmation) {
choco install -y "potplayer"
}
if (PromptForConfirmation) {
choco install -y "teamspeak"
}
if (PromptForConfirmation) {
choco install -y "mumble"
}
if (PromptForConfirmation) {
choco install -y "paint.net"
}
if (PromptForConfirmation) {
choco install -y "virustotaluploader"
}
if (PromptForConfirmation) {
choco install -y "vscode.install"
}
if (PromptForConfirmation) {
choco install -y "javaruntime"
}
if (PromptForConfirmation) {
choco install -y "skype"
}
if (PromptForConfirmation) {
choco install -y "filezilla"
}
if (PromptForConfirmation) {
choco install -y "powershell-core"
}
if (PromptForConfirmation) {
choco install -y "thunderbird"
}
Цитата: CEPBEP_RU56 от 01.04.2023, 13:44Спасибо за подсказку БРО
так не работает исполнения установки программы не происходит только вызов команд да или нет
Спасибо за подсказку БРО
так не работает исполнения установки программы не происходит только вызов команд да или нет
Цитата: Mikhail от 01.04.2023, 13:57Код выше мой работает, просто не из файла, а его сразу в powershell вставлять.
Из файла ps1 чтоб работал, попробуй этот, остальные приложения сам добавишь.
[spoiler title="Скрипт"]$wshell = New-Object -ComObject Wscript.Shell function Get-Confirmation($message) { $result = $wshell.Popup($message, 0, "Установка приложения", 4 + 32) return $result -eq 6 } Set-ExecutionPolicy Unrestricted Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1')) if (Get-Confirmation("Хотите установить Google Chrome?")) { choco install -y "googlechrome" } if (Get-Confirmation("Хотите установить Microsoft Visual C++ Runtime - All Versions?")) { choco install -y "vcredist-all" } if (Get-Confirmation("Хотите установить Adobe Acrobat Reader DC?")) { choco install -y "adobereader" }[/spoiler]
Код выше мой работает, просто не из файла, а его сразу в powershell вставлять.
Из файла ps1 чтоб работал, попробуй этот, остальные приложения сам добавишь.
$wshell = New-Object -ComObject Wscript.Shell
function Get-Confirmation($message) {
$result = $wshell.Popup($message, 0, "Установка приложения", 4 + 32)
return $result -eq 6
}
Set-ExecutionPolicy Unrestricted
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
if (Get-Confirmation("Хотите установить Google Chrome?")) {
choco install -y "googlechrome"
}
if (Get-Confirmation("Хотите установить Microsoft Visual C++ Runtime - All Versions?")) {
choco install -y "vcredist-all"
}
if (Get-Confirmation("Хотите установить Adobe Acrobat Reader DC?")) {
choco install -y "adobereader"
}
Цитата: CEPBEP_RU56 от 01.04.2023, 14:09Огромное спасибо тебе всё получилось. Я столько времени обычно устанавливал решился вот что то набросать для облегчения ещё бы скрипт InstallProgram.ps1 в файл ответов прописать AutoUnatted.xml чтобы после установки после входа в Windows начал скрипт установку программ было бы вообще круто.
Огромное спасибо тебе всё получилось. Я столько времени обычно устанавливал решился вот что то набросать для облегчения ещё бы скрипт InstallProgram.ps1 в файл ответов прописать AutoUnatted.xml чтобы после установки после входа в Windows начал скрипт установку программ было бы вообще круто.