Delphi를 사용하여 Minecraft 버전을 설치할 수 있습니까?
재미있는 부분은 %appdata%\.minecraft\bin\minecraft.jar
버전을 읽어야한다는 것입니다.
그러나 META-INF\MANIFEST.MF
독서없이.Delphi로 Minecraft 버전을 설치하십시오
답변
저는 실제로이 ZIP 파일이라고 생각합니다. 델파이의 최신 버전에는 Zip 파일에 액세스 할 수있는 도구가 있다고 들었습니다. 필자는 JAR 파일의 내부 구조에 익숙하지 않지만 찾고있는 버전 정보가 어딘가에 있다면이 방법으로 압축을 풀 수 있어야합니다.
Java 프로그램은 Manifest 파일에 지정되어 있지 않으면 버전이 없습니다.
아마도 개발자는 일부 README 텍스트 파일이나 JAR 파일 내부의 다른 리소스에 버전 번호를 남겨 두었을 것입니다. 아시다시피 ZIP 아카이브 일뿐입니다.
그 중 어떤 것도 작동하지 않는다면 파일 크기에 따라 Minefield 버전의 카탈로그를 작성해야합니다. System FileSize() 함수를 사용하여 JAR 파일의 파일 크기를 가져 와서 카탈로그에서 찾으십시오.
상황에 따라 카탈로그에서 파일 크기를 찾을 수없는 경우 사용자가 카탈로그 한 최신 버전보다 새로운 것으로 가정 할 수 있습니다.
카탈로그의 파일 크기에 의존하는 것보다 더 나은 것은 해시를 생성하는 것입니다. CRC32조차도 충분할 것입니다.
정확히 맞지 않으면 java.lang.Package.getImplementationVersion'을보십시오 – OnTheFly
@ user539484, 정보 주셔서 감사합니다. 문서에는, java.lang.Package.getImplementationVersion가 매니페스트 파일로부터 정보를 취득한다고 기재되어 있습니다. –
매니 페스트가 없거나 훼손 될 수 있으므로 (매니페스트의 버전 태그는 선택적 임) 무작위 관찰 :'> java -jar IDL2Pas.jar -version' print'[XFEIDL] 03.03.03.C1.A2 [XBEJAV]'브래킷 된 문자열은 Messages.properties 파일에서 나오지만 그 5 옥텟은 어떨까요? ? – OnTheFly
예, 가능합니다. 모잠비크에서 제공하는 this xml data을 사용할 수 있습니다. 예를 들어
:
<Contents>
<Key>11w47a/minecraft.jar</Key>
<LastModified>2011-11-24T13:20:06.000Z</LastModified>
<ETag>"2ad75c809570663ec561ca707983a45b"</ETag>
<Size>2242242</Size>
<Owner>...</Owner>
<StorageClass>STANDARD</StorageClass>
</Contents>
당신이 그들이 <Key>
태그 버전 및 파일 이름을 볼 수 있듯이. 바이너리의 md5 합계는 <ETag>
태그에 저장됩니다. 항아리를 수정하지 않으면 버전을 확인하기에 충분합니다.
- 1. 우분투에 Python 버전을 설치하십시오.
- 2. gcc의 이전 버전을 설치하십시오
- 3. CouchDB 여러 버전을 나란히 설치하십시오.
- 4. Aptana 플러그인의 이전 버전을 설치하십시오.
- 5. 페이지의 최신 버전을 얻으려면 브라우저를 설치하십시오.
- 6. 두 대의 PHP 버전을 하나의 시스템에 설치하십시오.
- 7. C에서 Delphi로
- 8. C++ 클래스를 Delphi로 변환
- 9. Minecraft Renderengine에 대한 설명
- 10. Redmon & Delphi로 표준 입력하기
- 11. 충돌과 같은 Minecraft
- 12. C를 Delphi로 변환 - 지침
- 13. Python Parse Minecraft 패킷
- 14. Java Minecraft Plugin
- 15. Delphi로 런타임에 TWebBrowser 만들기
- 16. Minecraft 연결 오류
- 17. .NET에서 Delphi로 이미지 전송
- 18. 버전을 확인하고 apk OTA를 설치하십시오. 버전이 다른 경우
- 19. Django Python : virtualenv 내에 동일한 패키지의 여러 버전을 설치하십시오.
- 20. android app의 이름을 변경하여 두 번째 수정 버전을 동시에 설치하십시오.
- 21. 이전 버전의 Cygwin을 설치하십시오
- 22. Minecraft Modding Java 컴파일 오류
- 23. c 선언을 delphi로 변환하는 방법?
- 24. vb 애플리케이션을 delphi로 마이그레이션 했습니까?
- 25. Minecraft modding에서 Missingtexture 오류가 발생합니다.
- 26. Minecraft 서버 패킷을 보내려면 어떻게해야합니까?
- 27. Delphi로 IDataObject 인스턴스를 만들려면 어떻게해야합니까?
- 28. vb6에서 delphi로 WM_COPYDATA가있는 SendMessage가 깨졌습니다.
- 29. Xcode와 별도로 Git을 설치하십시오.
- 30. iphone에 릴리스 앱을 설치하십시오.
버전 번호를 알아 내려고 시도하고 계시나요? – thedaian
예. 나는 Minecraft를 모른다. 그러나 주 EXE가 모든 버전에서 같은 경로를 가지고 있다면,이 EXE에서 버전 정보를 간단히 읽을 수있다. [그렇게] (http://stackoverflow.com/questions/5539316/how -can-i-read-details-of-file). 파일 경로가 다른 경우 마이그레이션 경로는 앱 경로 레지스트리 키를 사용하여 찾을 수 있습니다. –
@JohnRiselvato 링크는 무엇입니까? – GolezTrol