[GH-ISSUE #1686] Auto Updater - Expand-Archive : A parameter cannot be found that matches parameter name 'DestinationPath'. #576

Closed
opened 2026-02-27 21:06:59 +03:00 by kerem · 8 comments
Owner

Originally created by @blackstar0 on GitHub (Dec 7, 2024).
Original GitHub issue: https://github.com/shadps4-emu/shadPS4/issues/1686

Whenever I try to use the auto-updater, it gives me this error

Starting Update...
Expand-Archive : A parameter cannot be found that matches parameter name 'DestinationPath'.
At C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user\temp_download_update\update.ps1:9 char:136
+ ... mp_download_update\temp_download_update.zip' -DestinationPath 'C:\Use ...
+                                                  ~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Expand-Archive], ParameterBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Pscx.Commands.IO.Compression.ExpandArchiveCommand

I'm on 8eacb88 and I am trying to update 941a668. I also am not sure how to expand the output if it would be helpful.

Edit: Just tried to update Pscx and it doesn't seem to have helped unless I am doing something wrong.

Originally created by @blackstar0 on GitHub (Dec 7, 2024). Original GitHub issue: https://github.com/shadps4-emu/shadPS4/issues/1686 Whenever I try to use the auto-updater, it gives me this error ``` Starting Update... Expand-Archive : A parameter cannot be found that matches parameter name 'DestinationPath'. At C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user\temp_download_update\update.ps1:9 char:136 + ... mp_download_update\temp_download_update.zip' -DestinationPath 'C:\Use ... + ~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) [Expand-Archive], ParameterBindingException + FullyQualifiedErrorId : NamedParameterNotFound,Pscx.Commands.IO.Compression.ExpandArchiveCommand ``` I'm on 8eacb88 and I am trying to update 941a668. I also am not sure how to expand the output if it would be helpful. Edit: Just tried to update Pscx and it doesn't seem to have helped unless I am doing something wrong.
kerem 2026-02-27 21:06:59 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@DanielSvoboda commented on GitHub (Dec 7, 2024):

Which Windows are you using?

Try running as administrator

<!-- gh-comment-id:2525274043 --> @DanielSvoboda commented on GitHub (Dec 7, 2024): Which Windows are you using? Try running as administrator
Author
Owner

@blackstar0 commented on GitHub (Dec 7, 2024):

I'm on Windows 10 and running as admin didn't work

<!-- gh-comment-id:2525276897 --> @blackstar0 commented on GitHub (Dec 7, 2024): I'm on Windows 10 and running as admin didn't work
Author
Owner

@DanielSvoboda commented on GitHub (Dec 7, 2024):

C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user\temp_download_update\update.ps1
If you have this file in this path, open it as text and send it here to see where it was registered, as it apparently cannot locate the destination location that the emulator saved.

<!-- gh-comment-id:2525278231 --> @DanielSvoboda commented on GitHub (Dec 7, 2024): C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user\temp_download_update\update.ps1 If you have this file in this path, open it as text and send it here to see where it was registered, as it apparently cannot locate the destination location that the emulator saved.
Author
Owner

@blackstar0 commented on GitHub (Dec 7, 2024):

Set-ExecutionPolicy Bypass -Scope Process -Force
$binaryStartingUpdate = '000000000101001100000000011101000000000001100001000000000111001000000000011101000000000001101001000000000110111000000000011001110000000000100000000000000101010100000000011100000000000001100100000000000110000100000000011101000000000001100101000000000010111000000000001011100000000000101110'
$chars = @()
for ($i = 0; $i -lt $binaryStartingUpdate.Length; $i += 16) {
    $chars += [char]([convert]::ToInt32($binaryStartingUpdate.Substring($i, 16), 2))
}
$startingUpdate = -join $chars
Write-Output $startingUpdate
Expand-Archive -Path 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user/temp_download_update\temp_download_update.zip' -DestinationPath 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user/temp_download_update' -Force
Start-Sleep -Seconds 3
Copy-Item -Recurse -Force 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user/temp_download_update\*' 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\'
Start-Sleep -Seconds 2
Remove-Item -Force 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\update.ps1'
Remove-Item -Force 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\temp_download_update.zip'
Start-Process 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\shadps4.exe'
Remove-Item -Recurse -Force 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user/temp_download_update'

It and the folder itself are removed after the update, which seems like what its supposed to be doing, but without performing the update.

<!-- gh-comment-id:2525285049 --> @blackstar0 commented on GitHub (Dec 7, 2024): ``` Set-ExecutionPolicy Bypass -Scope Process -Force $binaryStartingUpdate = '000000000101001100000000011101000000000001100001000000000111001000000000011101000000000001101001000000000110111000000000011001110000000000100000000000000101010100000000011100000000000001100100000000000110000100000000011101000000000001100101000000000010111000000000001011100000000000101110' $chars = @() for ($i = 0; $i -lt $binaryStartingUpdate.Length; $i += 16) { $chars += [char]([convert]::ToInt32($binaryStartingUpdate.Substring($i, 16), 2)) } $startingUpdate = -join $chars Write-Output $startingUpdate Expand-Archive -Path 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user/temp_download_update\temp_download_update.zip' -DestinationPath 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user/temp_download_update' -Force Start-Sleep -Seconds 3 Copy-Item -Recurse -Force 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user/temp_download_update\*' 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\' Start-Sleep -Seconds 2 Remove-Item -Force 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\update.ps1' Remove-Item -Force 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\temp_download_update.zip' Start-Process 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\shadps4.exe' Remove-Item -Recurse -Force 'C:\Users\hblac\Downloads\shadps4-win64-qt-2024-12-06-8eacb88\user/temp_download_update' ``` It and the folder itself are removed after the update, which seems like what its supposed to be doing, but without performing the update.
Author
Owner

@DanielSvoboda commented on GitHub (Dec 7, 2024):

The code is being generated correctly.
The only requirement would be powershell 5.1, but all Windows 10 already comes with it.
I really don't know what could have caused this, try updating using Windows Update...

<!-- gh-comment-id:2525288468 --> @DanielSvoboda commented on GitHub (Dec 7, 2024): The code is being generated correctly. The only requirement would be powershell 5.1, but all Windows 10 already comes with it. I really don't know what could have caused this, try updating using Windows Update...
Author
Owner

@blackstar0 commented on GitHub (Dec 7, 2024):

I just tried to run the script by specifying Microsoft.PowerShell.Archive for Expand-Archive and it seemed to work as intended, so I guess it's trying to use Pscx and its not supposed to?

Edit: i just ended up uninstalling PSCX and its working fine now, I don't know if it was important but it's quite old at this point and most of it has been implemented. I don't know if it is worthwhile to account for it in the install script or not

<!-- gh-comment-id:2525289235 --> @blackstar0 commented on GitHub (Dec 7, 2024): I just tried to run the script by specifying Microsoft.PowerShell.Archive for Expand-Archive and it seemed to work as intended, so I guess it's trying to use Pscx and its not supposed to? Edit: i just ended up uninstalling PSCX and its working fine now, I don't know if it was important but it's quite old at this point and most of it has been implemented. I don't know if it is worthwhile to account for it in the install script or not
Author
Owner

@Hermiten commented on GitHub (Dec 22, 2024):

@blackstar0 You've opened it up again, is it still relevant?

<!-- gh-comment-id:2558606481 --> @Hermiten commented on GitHub (Dec 22, 2024): @blackstar0 You've opened it up again, is it still relevant?
Author
Owner

@blackstar0 commented on GitHub (Dec 22, 2024):

Didn’t mean to

<!-- gh-comment-id:2558621975 --> @blackstar0 commented on GitHub (Dec 22, 2024): Didn’t mean to
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/shadPS4#576
No description provided.