Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 2, 2009 06:39:06

st00nsa
От:
Зарегистрирован: 2009-01-14
Сообщения: 36
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставить py2exe создать не консольный exe.

Написал программу , в среде разработки(aptana - это как ecplips + pydev) отлично запускается и работает, а вот в консоли ругается на кодировку: UnicodeDecodeError: ‘ascii’ codec can't decode byte 0xd0 in position 0: ordinal not in range(128). Я перегуглил гугл и этот форум в частности но проблема так и осталась: или ошибка, или каракули в qlabel. Ну я махнул уже на это рукой, запаковал все с помощью py2exe :

setup( 
windows=["main.pyw"],
options={"py2exe": {"includes": ["sip"], "compressed": 0,
"optimize": 0,
"includes": ["sip"]}})
и все равно та же ошибка :(((( при запуске ехе, как я понимаю это как-будто его запускают python.exe а не pythonw.exe(что как я понимаю и делает ide), но я могу ошибаться. Очень хотелось бы совет или ссылку.



Офлайн

#2 Дек. 16, 2009 12:28:39

Renji
От:
Зарегистрирован: 2009-12-14
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставить py2exe создать не консольный exe.

Эту проблему решает
# -*- coding: твоя_кодировка -*-
в начале скрипта.



Отредактировано (Дек. 16, 2009 12:29:45)

Офлайн

#3 Дек. 17, 2009 05:16:55

st00nsa
От:
Зарегистрирован: 2009-01-14
Сообщения: 36
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставить py2exe создать не консольный exe.

# -*- coding: utf-8 -*- в начале любого файла я ставлю уже давно, и потом преобразовываю в notepad++ в utf8, это проблему не решает



Офлайн

#4 Дек. 17, 2009 06:53:08

hellslade
От:
Зарегистрирован: 2008-01-28
Сообщения: 240
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставить py2exe создать не консольный exe.

st00nsa
Попробуйте так в начале исходника.

if hasattr(sys, "frozen"):
sys.setdefaultencoding('cp1251')
+ пропишите локаль
import locale
locale.setlocale(locale.LC_ALL,'Russian_Russia.1251')



Офлайн

#5 Дек. 17, 2009 16:49:04

DHT
От:
Зарегистрирован: 2009-09-24
Сообщения: 119
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставить py2exe создать не консольный exe.

хз то ли советую, но может поможет простое изменение расширения у файлов с .py на .pyw?



Офлайн

#6 Дек. 17, 2009 19:18:50

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Заставить py2exe создать не консольный exe.

DHT
хз то ли советую, но может поможет простое изменение расширения у файлов с .py на .pyw?
Совсем не то. Пальцем в небо



Офлайн

#7 Дек. 17, 2009 19:56:56

DHT
От:
Зарегистрирован: 2009-09-24
Сообщения: 119
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставить py2exe создать не консольный exe.

Ну тогда простите за флуд :) Старался ответить больше на тему топика, а не на сам пост “Заставить py2exe создать не консольный exe”.



Офлайн

#8 Дек. 20, 2009 14:15:44

st00nsa
От:
Зарегистрирован: 2009-01-14
Сообщения: 36
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставить py2exe создать не консольный exe.

DHT
хз то ли советую, но может поможет простое изменение расширения у файлов с .py на .pyw?
Это и мне пришло в голову в первые же минуты, но нет. Хотя на название топика вы ответили.



Офлайн

#9 Дек. 21, 2009 06:25:33

hellslade
От:
Зарегистрирован: 2008-01-28
Сообщения: 240
Репутация: +  0  -
Профиль   Отправить e-mail  

Заставить py2exe создать не консольный exe.

st00nsa, проблема-то в чем? У вас в гуи каракули вместо русского текста и ошибка валится в консоль? Я правильно понимаю?
Что вы хотите? Убрать консоль? А каракули вас, в принципе, не смущают?



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version