Найти - Пользователи
Полная версия: py2exe
Начало » Python для новичков » py2exe
1 2
beelze
>Не помогает. Запускаю из Aptana Studio – работает, запускаю из командной строки – работает, делаю exe – не работает.
потому что Вы, вероятно, невнимательно читаете или вообще не читаете. Это Вам зачем было приведено?
os.path.abspath(sys.executable if hasattr(sys, "frozen") else sys.modules['__main__'].__file__)
reclosedev
beelze
путь до “исполняемого файла” я получаю примерно так:
Нужно еще учитывать кодировку путей. Если на Win будет папка с русскими буквами, будут проблемы.

У меня обычно так:
import os
import sys
 
def executable_path():
    self_file = unicode(sys.argv[0], sys.getfilesystemencoding())
    return os.path.realpath(os.path.dirname(self_file))
Но тут возвращается папка со скриптом/.exe файлом, а не файл, и симлинки не учитываются.

n2b
Не помогает. Запускаю из Aptana Studio – работает, запускаю из командной строки – работает, делаю exe – не работает.
У меня есть такое предположение, что вы не положили папку data в директорию с .exe файлом
beelze
>Нужно еще учитывать кодировку путей. Если на Win будет папка с русскими буквами, будут проблемы.
этот фрагмент был взят из чего-то, живущего в /etc. Про exe там как напоминание осталось с неких прошлых времен.

…я вообще-то долго и безуспешно толкую о HowToDetermineIfRunningFromExe, но ТС меня не слышит
igor
n2b
Вообщем я сделал вот так:
self.path = os.path.join(os.path.dirname(__file__),'data','oracle')
И py2exe все равно ругается так словно, она видит этот файл…


From http://www.py2exe.org/index.cgi/Py2exeEnvironment
misc:
__file__ is not defined (you might want to use sys.argv instead)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB