Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

코딩 노트

Unity3D Windows 빌드 후, CodePage 437 not supported 에러 본문

DevMemo/Etc

Unity3D Windows 빌드 후, CodePage 437 not supported 에러

youn_ 2016. 9. 21. 15:32

Unity3D에서 ICsharpCode.SharpZipLib.dll을 사용하여 Unzip할 때,

GetNextEntry 를 사용 시 "CodePage 437 not supported"라는 에러가 남.


=> 결론 :

C:\Program Files (x86)\Unity\Editor\Data\Mono\lib\mono\unity 에서

I18N.dll 과 I18N.West.dll을 빌드 경로의 (BuildName)_Data\Managed에 복사한다. 

(참조 : http://answers.unity3d.com/questions/42955/codepage-1252-not-supported-works-in-editor-but-no.html)







해결 과정

1. C:\Program Files (x86)\Unity\Editor\Data\MonoBleedingEdge\lib\mono\2.0에 보면 ICsharpCode.SharpZipLib.dll이 있다. 가지고있던 dll보다 용량이 적은 파일인데, 이걸 사용하니 되더라 라고 해서 해봤더니 압축 푼 사이즈가 터무니없이 크다. int.MaxSize의 두배가량;;; 그래서 우선 최신버전 ICsharpCode.SharpZipLib.dll을 받기로 했다. 

(참조 : http://answers.unity3d.com/questions/519382/the-type-or-namespace-name-icsharpcode-could-not-b.html)


2. https://icsharpcode.github.io/SharpZipLib/ 에서 다운로드 받을 수 있는데 압축을 풀면 세가지 버전의 dll들이 폴더에 들어있다. 두가지는 평소대로 437에러가 나는데. netcf-20 버전은 "CodePage 1252 not supported" 에러가 발생, 결론에 써둔 해결 방법으로 I18N dll들을 추가하니 제대로 작동한다. 그리고 다시 원래쓰던 버전으로 dll을 바꿔 넣어봐도 제대로 작동했다. 


3. 참조 페이지에선 프로젝트에 추가하라고 되어있지만, 빌드경로의 _Data\Managed 폴더에만 넣어도 잘 된다.