2012-11-05 2 views
1

py2exe를 사용하여 폴더에 파일을 저장하는 방법.

안녕하세요!

나는 py2exe를 사용하여 .exe로 컴파일 된 Python으로 체스 엔진을 만들었습니다. 문제는 모든 이상한 파일들이 같은 폴더 (dist)에 함께 모일 때 매우 깔끔하게 보이지 않는다는 것입니다. 모든 도우미 파일이 들어있는 dist 폴더 안에 새 폴더를 만들고 싶습니다. 따라서 모든 dist 폴더에 도우미 파일과 기본 실행 응용 프로그램이있는 폴더가 포함되어 있습니다. 그러나, 나는 컴퓨터가 그들을 찾지 못하고 오류를 일으키기 때문에 도우미 파일을 새 폴더에 단순히 복사 할 수 없다.

어떻게 해결할 수 있습니까? 또한 inno 설치를 사용하여 설치를하고 있지만 해결책을 찾는 방법을 찾을 수 없습니다.

대단히 감사합니다!

답변

0

py2exe 구성에는 모든 파이썬 파일을 단일 library.zip 파일로 묶을 수있는 기능이 있습니다. 이렇게하면 루트 디렉토리에있는 파일의 양이 상당히 줄어들지 만 모든 파일에 관계없이 일부 파일은 남아있게됩니다.

이 파일들은 일반적으로 적어도 GUI 응용 프로그램에서 본 DLL 파일입니다. 응용 프로그램을 시작해야하기 때문에이를 제거 할 수 없습니다. 이 문제의 임시 해결책은 하위 디렉토리에있을 수있는 실제 프로그램을 실행할 배치 파일을 만드는 것입니다. 요점은 이들 파일이 실행 파일과 동일한 디렉토리 또는 현재 작업 디렉토리 또는 PATH 환경 변수에있는 경로에 있어야한다는 것입니다. 적어도 이들 대부분의 경우입니다. 또 다른 접근법은 PATH 변수 또는 cd을 다른 디렉토리로 수정하고 나중에 파일을 실행하는 배치 파일 일 수 있습니다.

결코 시도하지 않았기 때문에 몇 가지 문제가 발생할 수 있습니다. 어쨌든, IMO는 가장 좋은 방법은 설치 프로그램을 만들고 바로 가기를 추가하는 것입니다. 그러면 사용자가 이러한 파일을 엉망으로 만들지 않아도됩니다.

0

대신 pyinstaller를 사용해보세요. 사용하기 쉽고 PythonLib과 필요한 모든 Python 파일을 독립 실행 형 EXE로 컴파일합니다. 따라서 dist 파일에 파일이 엉망이되는 것에 대해 걱정할 필요가 없습니다. (단지 하나의 단일 exe).

그리고 데이터베이스, 텍스트 파일, csv와 같은 다른 외부 파일이있는 경우. etc ... inno setup [Files] 섹션에서 원하는 방식으로 배포하도록 설정할 수 있습니다. 2.x는 같은

https://stackoverflow.com/a/13259452/1339024

--Edit--

* 1.5 pyInstaller 중에 사용하십시오 :

나는이 어제에 대한 자세한 설명을 썼다, 그래서이 링크를 체크 아웃 버전이 정확히 동일하지 않음