09-09-24 03:00 PM
Hi,
We are facing issue with one of our project after upgrade Blue Prism to version 7.3.1.
We have a large zip file to unzip (>2GB), and we utilize "Extract All from Zip" from VBO "Utility - Windows Compressed File".
On previous 7.1.1 Blue Prism version, file was successfully unzipped, but now for the same file we receive below error:
"Internal : Could not execute code stage because exception thrown by code stage: The archive entry was compressed using an unsupported compression method."
I have checked compression method for this file and it is "Deflate64". I found that this method may be unsupported in some .NET versions, but not sure if this is the issue in this case.
From the "About Blue Prism" popup I see that:
Blue Prism 7.1.1 utilize .NET Framework 4.7, while Blue Prism 7.3.1 utilize version 4.8.4744.0
Did anyone have similar issue and found the solution?
I have already tried to workaround it and unzip using CMD command "tar -xf" and Powershell command "Expand-Archive", but I get similar error. What is interesting, simple right-click on file and "Extract All..." works good...
4 weeks ago
Hello @mateusz.karpik - usually it should be working with PowerShell "Expand-Archive -Path yourfile.zip -DestinationPath yourDestinationPath"
(If your machines have) - Try to do the front-end automation with 7 zip or winrar? (It's a basic desktop applciation)
4 weeks ago
Cheers,
Eric
3 weeks ago
Hi @ManojKothapalli_G ,
I tried PowerShell Expand-Archive command, but it gives me the same error:
I tried also 7zip, it works but much, much longer than "Extract All from Zip" from VBO "Utility - Windows Compressed File" with BluePrism 7.1.1 for the same file.
And I would like to avoid calling external app for this, as long as it could be done within VBO / code stage.
Thanks,
Mateusz
3 weeks ago
Hi Eric,
Thanks,
Mateusz
3 weeks ago
Thanks for the feedback. I can't explain how this worked for you previously unless the previous zip file was compressed using Deflate instead of Deflate64. Deflate64 has never been supported by the .NET Framework. In fact, I believe there are only a few libraries out there (all commercial if I'm not mistaken) that have implemented support for it because it's a proprietary format owned by PKWare. It's not a true open standard. Microsoft have licensed it for File Explorer but it seems they didn't extend that support to .NET, the CMD prompt or PowerShell for some reason.
I'm researching this a bit more to see if I can find out exactly what File Explorer does when you click "Extract All". If I can figure that out, we may be able to add that capability to the VBO. Alternatively, you could create a VBO with an App Model for File Explorer and actions for performing the "Extract All" via the menu.
Cheers,
Eric
3 weeks ago
Hi Eric,
This is not possible that we using Deflate instead of Deflate64 for previous version because we use exactly the same zip file and the same code to perform unzipping. We still have previous environment 7.1.1 operative to compare. What I see, the differences are with .NET Framework, and 7.1.1 was 32-bit while 7.3.1 is 64-bit.
Please find below screenshot containing both environments details and unzipping action:
Thank you,
Mateusz
3 weeks ago
Interesting. 🤔 Unfortunately, I don't have an answer for you. Your test shows that it's not an issue within the VBO itself because the same code was used. According to all the Microsoft developer documentation and multiple support boards that I've reviewed (including Microsoft's own) Deflate64 is not supported in the .NET Framework, so I really can't say how this worked for you.
As I mentioned before, Deflate64 is supported within the Windows core for use by File Explorer, but for whatever reason they haven't extended it to PowerShell or the regular CMD prompt.
I saw that you tested with 7-zip, but you said it was pretty slow. I believe the are some command line properties you can pass into 7-zip that are supposed to help influence (i.e. speed up) the process of compressing/decompressing files. Have you looked into that?
Cheers,
Eric