[wxPython-users] ANN: GUI2Exe for wxPython :-D
Andrea Gavana
andrea.gavana at gmail.com
Sun Apr 1 15:12:55 PDT 2007
Hi Roee,
On 4/1/07, roee shlomo wrote:
> The windows binary gives:
> Traceback (most recent call last):
> File "wx\_misc.pyo", line 1341, in Notify
> File "wx\_core.pyo", line 14189, in Notify
> File "GUI2Exe.py", line 1183, in ShowMain
> File " GUI2Exe.py", line 106, in __init__
> File "DataBase.pyo", line 31, in __init__
> File "bsddb\__init__.pyo", line 323, in btopen
> bsddb.db.DBNoSuchFileError: (2, 'No such file or directory')
It looks like on PCs other than the 2 I tried Python doesn'like these
lines of code:
def CheckForDatabase(self):
""" Checks if a database exists. If it doesn't, creates one anew. """
# We build the database inside the user config folder, where we
# also create a sub-directory called /.GUI2Exe
standardPath = wx.StandardPaths.Get()
configDir = opj(standardPath.GetUserConfigDir() + "/.GUI2Exe")
configDb = opj(configDir + "/GUI2Exe_Database.db")
if not os.path.isfile(configDb):
# No database
if not os.path.isdir(configDir):
# And no directory. Create a new one.
os.mkdir(configDir)
return configDb
So, it doesn't create the directory and bsddb is right in
complaining... I don't really know why, I was just trying to create a
directory called /.GUI2Exe under the user configuration directory
which for me is:
C:\Documents and Settings\Andrea\Dati applicazioni
Curiously enough, it works well here :-( :-(
BTW, I noticed I forgot to include the manifest file for Windows
(!!!!!), so the executable didn't look that much XP-style :-( . I
re-uploaded another version right now. However, I still don't know the
reason why the program can't create that particular directory. Maybe
someone more knowledgeable than me can explain it.
> Running from source gave me an error saying setuptools is missing (I saw the
> comment on the source code. Why would anyone have py2app installed on
> windows?),
I tried to install il to see if could be acutally __import__ed,
because, for example, on Windows cx_freeze and PyInstaller can not be
imported, do not live under site-packages and so on... cx_Freeze is an
executable on Windows!!!
> so I installed setuptools anyway and I got this error:
> Traceback (most recent call last):
> File
> "C:\Python25\Lib\site-packages\wx-2.8-msw-unicode\wx\_misc.py",
> line 1341
> , in Notify
> self.notify()
> File
> "C:\Python25\Lib\site-packages\wx-2.8-msw-unicode\wx\_core.py
> ", line 1418
> 9, in Notify
> self.result = self.callable(*self.args, **self.kwargs)
> File "C:\Download\GUI2Exe_source\GUI2Exe.py", line 1183,
> in ShowMain
> frame = GUI2Exe(None, -1, "", size=(xvideo, yvideo))
> File "C:\Download\GUI2Exe_source\GUI2Exe.py", line 106,
> in __init__
> self.dataBase = DataBase(self, dbName)
> File "C:\Download\GUI2Exe_source\DataBase.py", line 31,
> in __init__
> self.db = bsddb.btopen(dbName, "c")
> File "C:\Python25\lib\bsddb\__init__.py", line 323, in
> btopen
> d.open(file, db.DB_BTREE, flags, mode)
> UnicodeEncodeError: 'ascii' codec can't encode characters in position 26-29:
> ord
> inal not in range(128)
>
> My default system encoding is hebrew, must be something in bsddb's unicode
> support.
I have no idea about that... surely Robin knows the answer, he has
developed bsddb for quite long time... but maybe is just my fault, I
never worked with bsddb before :-D
Andrea.
"Imagination Is The Only Weapon In The War Against Reality."
http://xoomer.virgilio.it/infinity77/
More information about the wxpython-users
mailing list