Encoding 437 data could not be found #345

Closed
opened 2026-01-29 22:10:27 +00:00 by claunia · 5 comments
Owner

Originally created by @Merglasch on GitHub (Mar 17, 2019).

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?

Originally created by @Merglasch on GitHub (Mar 17, 2019). 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.List`1[T] triggerStrings) [0x00000] in <00000000000000000000000000000000>:0 at Assets.Scripts.Filesystem.PackageLoader.LoadContentPackages (System.Collections.Generic.List`1[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.Action`2[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+EventFunction`1[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?
Author
Owner

@adamhathcock commented on GitHub (Mar 18, 2019):

Looks like the same issue. A fix is here:
https://github.com/adamhathcock/sharpcompress/issues/405#issuecomment-470327832

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

@adamhathcock commented on GitHub (Mar 18, 2019): Looks like the same issue. A fix is here: https://github.com/adamhathcock/sharpcompress/issues/405#issuecomment-470327832 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
Author
Owner

@Merglasch commented on GitHub (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?

@Merglasch commented on GitHub (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?
Author
Owner

@adamhathcock commented on GitHub (Mar 19, 2019):

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 commented on GitHub (Mar 19, 2019): 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
Author
Owner

@adamhathcock commented on GitHub (Aug 21, 2019):

Maybe https://stackoverflow.com/questions/38160192/mono-cannot-load-encoding-437#43532921

#473

@adamhathcock commented on GitHub (Aug 21, 2019): Maybe https://stackoverflow.com/questions/38160192/mono-cannot-load-encoding-437#43532921 #473
Author
Owner

@adamhathcock commented on GitHub (Jul 26, 2020):

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

@adamhathcock commented on GitHub (Jul 26, 2020): New release https://www.nuget.org/packages/sharpcompress/0.26.0 should fix this
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/sharpcompress#345