Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Encoding 437 data could not be found #441

Closed
Merglasch opened this issue Mar 17, 2019 · 5 comments
Closed

Encoding 437 data could not be found #441

Merglasch opened this issue Mar 17, 2019 · 5 comments

Comments

@Merglasch
Copy link

Got this error when using the library in a Unity Windows Standalone build with mono and l2cpp. Using the library in the editor works without problems.
Error desc.:

NotSupportedException: Encoding 437 data could not be found. Make sure you have correct international codeset assembly installed and enabled.
at System.Text.Encoding.GetEncoding (System.Int32 codepage) [0x00000] in <00000000000000000000000000000000>:0
at SharpCompress.Common.OptionsBase..ctor () [0x00000] in <00000000000000000000000000000000>:0
at SharpCompress.Readers.ReaderFactory.Open (System.IO.Stream stream, SharpCompress.Readers.ReaderOptions options) [0x00000] in <00000000000000000000000000000000>:0
at Assets.Scripts.Filesystem.PackageLoader.LoadContentPackage (System.String archivePath, System.Collections.Generic.List1[T] triggerStrings) [0x00000] in <00000000000000000000000000000000>:0 at Assets.Scripts.Filesystem.PackageLoader.LoadContentPackages (System.Collections.Generic.List1[T] contentPackageLocations) [0x00000] in <00000000000000000000000000000000>:0
at Assets.Scripts.View.MainMenueView.StartGame () [0x00000] in <00000000000000000000000000000000>:0
at System.Threading.ThreadStart.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.Events.UnityEvent.Invoke () [0x00000] in <00000000000000000000000000000000>:0
at System.Action2[T1,T2].Invoke (T1 arg1, T2 arg2) [0x00000] in <00000000000000000000000000000000>:0 at UnityEngine.EventSystems.ExecuteEvents.Execute[T] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.ExecuteEvents+EventFunction1[T1] functor) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.EventSystems.StandaloneInputModule.ProcessMousePress (UnityEngine.EventSystems.PointerInputModule+MouseButtonEventData data) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.EventSystems.StandaloneInputModule.ProcessMouseEvent (System.Int32 id) [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.EventSystems.StandaloneInputModule.Process () [0x00000] in <00000000000000000000000000000000>:0
at UnityEngine.EventSystems.EventSystem.Update () [0x00000] in <00000000000000000000000000000000>:0
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
UnityEngine.EventSystems.ExecuteEvents:Execute(GameObject, BaseEventData, EventFunction`1)
UnityEngine.EventSystems.StandaloneInputModule:ProcessMousePress(MouseButtonEventData)
UnityEngine.EventSystems.StandaloneInputModule:ProcessMouseEvent(Int32)
UnityEngine.EventSystems.StandaloneInputModule:Process()
UnityEngine.EventSystems.EventSystem:Update()

(Filename: currently not available on il2cpp Line: -1)

Could this be the same error as in #405 ? I thought this was fixed with version 0.23?

@adamhathcock
Copy link
Owner

Looks like the same issue. A fix is here:
#405 (comment)

The issue looks like Unity doesn't quite implement .NET Standard 1.3 or 2.0:

https://github.com/adamhathcock/sharpcompress/blob/master/src/SharpCompress/Common/ArchiveEncoding.cs#L31

@Merglasch
Copy link
Author

Merglasch commented Mar 19, 2019

I think I see another cause of the problem now. The directives are different. Unity defines NET_STANDARD_2_0 instead of NETSTANDARD2_0. (Source: https://docs.unity3d.com/Manual/PlatformDependentCompilation.html). Any chance you could check against that as well or should that be irrelevant?

@adamhathcock
Copy link
Owner

I don't think that will help. My DLL is already compiled.

The reference to the specific version of SharpCompress is what matters. The .NET Standard 1.3 and 2 versions will have this compiled in. The only version that won't look up via that method is .NET Standard 1.0

A brief google search found a similar answer to what was suggested for unity on the other issue:
https://answers.unity.com/questions/42955/codepage-1252-not-supported-works-in-editor-but-no.html

@adamhathcock
Copy link
Owner

adamhathcock commented Aug 21, 2019

@adamhathcock
Copy link
Owner

New release https://www.nuget.org/packages/sharpcompress/0.26.0 should fix this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants