mirror of
https://github.com/mrpond/BlockTheSpot.git
synced 2025-05-19 15:54:13 +02:00
116 lines
No EOL
3.1 KiB
Batchfile
116 lines
No EOL
3.1 KiB
Batchfile
;;;===,,,@echo off
|
|
;;;===,,,findstr /v "^;;;===,,," "%~f0" > "%~dp0ps.ps1"
|
|
;;;===,,,PowerShell.exe -ExecutionPolicy Bypass -Command "& '%~dp0ps.ps1'"
|
|
;;;===,,,del /s /q "%~dp0ps.ps1" >NUL 2>&1
|
|
;;;===,,,pause
|
|
# Ignore errors from `Stop-Process`
|
|
$PSDefaultParameterValues['Stop-Process:ErrorAction'] = 'SilentlyContinue'
|
|
|
|
write-host @'
|
|
*****************
|
|
Author: @rednek46
|
|
*****************
|
|
'@
|
|
|
|
$SpotifyDirectory = "$env:APPDATA\Spotify"
|
|
$SpotifyExecutable = "$SpotifyDirectory\Spotify.exe"
|
|
|
|
Write-Host 'Stopping Spotify...'`n
|
|
Stop-Process -Name Spotify
|
|
Stop-Process -Name SpotifyWebHelper
|
|
|
|
if (Get-AppxPackage -Name SpotifyAB.SpotifyMusic) {
|
|
Write-Host @'
|
|
The Microsoft Store version of Spotify has been detected which is not supported.
|
|
'@`n
|
|
$ch = Read-Host -Prompt "Uninstall Spotify Windows Store edition (Y/N) "
|
|
if ($ch -eq 'y'){
|
|
Write-Host @'
|
|
Uninstalling Spotify.
|
|
'@`n
|
|
Get-AppxPackage -Name SpotifyAB.SpotifyMusic | Remove-AppxPackage
|
|
} else{
|
|
Write-Host @'
|
|
Exiting...
|
|
'@`n
|
|
Pause
|
|
exit
|
|
}
|
|
}
|
|
|
|
Push-Location -LiteralPath $env:TEMP
|
|
try {
|
|
# Unique directory name based on time
|
|
New-Item -Type Directory -Name "BlockTheSpot-$(Get-Date -UFormat '%Y-%m-%d_%H-%M-%S')" `
|
|
| Convert-Path `
|
|
| Set-Location
|
|
} catch {
|
|
Write-Output $_
|
|
Pause
|
|
exit
|
|
}
|
|
|
|
Write-Host 'Downloading latest patch (chrome_elf.zip)...'`n
|
|
$webClient = New-Object -TypeName System.Net.WebClient
|
|
try {
|
|
$webClient.DownloadFile(
|
|
# Remote file URL
|
|
'https://github.com/mrpond/BlockTheSpot/releases/latest/download/chrome_elf.zip',
|
|
# Local file path
|
|
"$PWD\chrome_elf.zip"
|
|
)
|
|
} catch {
|
|
Write-Output $_
|
|
Sleep
|
|
}
|
|
Expand-Archive -Force -LiteralPath "$PWD\chrome_elf.zip" -DestinationPath $PWD
|
|
Remove-Item -LiteralPath "$PWD\chrome_elf.zip"
|
|
|
|
$spotifyInstalled = (Test-Path -LiteralPath $SpotifyExecutable)
|
|
if (-not $spotifyInstalled) {
|
|
Write-Host @'
|
|
Spotify installation was not detected.
|
|
Downloading Latest Spotify full setup, please wait...
|
|
'@
|
|
try {
|
|
$webClient.DownloadFile(
|
|
# Remote file URL
|
|
'https://download.scdn.co/SpotifyFullSetup.exe',
|
|
# Local file path
|
|
"$PWD\SpotifyFullSetup.exe"
|
|
)
|
|
} catch {
|
|
Write-Output $_
|
|
Pause
|
|
exit
|
|
}
|
|
mkdir $SpotifyDirectory >$null 2>&1
|
|
Write-Host 'Running installation...'
|
|
Start-Process -FilePath "$PWD\SpotifyFullSetup.exe"
|
|
Write-Host 'Stopping Spotify...Again'
|
|
while ((Get-Process -name Spotify -ErrorAction SilentlyContinue) -eq $null){
|
|
#waiting until installation complete
|
|
}
|
|
Stop-Process -Name Spotify >$null 2>&1
|
|
Stop-Process -Name SpotifyWebHelper >$null 2>&1
|
|
Stop-Process -Name SpotifyFullSetup >$null 2>&1
|
|
}
|
|
|
|
#if (!(test-path $SpotifyDirectory/chrome_elf.dll.bak)){
|
|
# move $SpotifyDirectory\chrome_elf.dll $SpotifyDirectory\chrome_elf.dll.bak >$null 2>&1
|
|
#}
|
|
|
|
Write-Host 'Patching Spotify...'
|
|
$patchFiles = "$PWD\dpapi.dll", "$PWD\config.ini"
|
|
Copy-Item -LiteralPath $patchFiles -Destination "$SpotifyDirectory"
|
|
|
|
$tempDirectory = $PWD
|
|
Pop-Location
|
|
|
|
Remove-Item -Recurse -LiteralPath $tempDirectory
|
|
|
|
Write-Host 'Patching Complete, starting Spotify...'
|
|
Start-Process -WorkingDirectory $SpotifyDirectory -FilePath $SpotifyExecutable
|
|
Write-Host 'Done.'
|
|
|
|
exit |