Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Andrzejek on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

retrieve source for py2exe application

Status
Not open for further replies.

JustinEzequiel

Programmer
Jul 30, 2001
1,192
PH
Greetings all,

We're trying to retrieve the code for an old python 2.4 program that was converted into a single-file executable using py2exe.
Programmer left without updating the files in SVN.

Using Seven Zip, I was able to retrieve from the .EXE file the *.pyo files for the imported modules.
(The main script however is not so easily retrieved.)

These .PYO files convert easily back to the .PY source using easypythondecompiler.

Using resourcesviewer, I am able to retrieve what I thought was the main script.
screenshot

However, easypythondecompiler complains with "Invalid pyc/pyo file - Magic value mismatch!"
leading me to think I "retrieved" the main script incorrectly.

Do you have any idea that may help?

 
getting closer... following the code at build_exe.py of the py2exe package I got the following
Python:
import inspect
import marshal

p = r"C:\Users\justin\Desktop\processdownloadedfiles_pythonscript_1.bin"
f = open(p, 'rb')
s = f.read()
f.close()

o = marshal.loads(s[17:-2])
print o
code = o[-1]
print dir(code)

x = marshal.dumps(code)
print len(x)
pp = r"C:\Users\justin\Desktop\processdownloadedfiles.pyc"
f = open(pp, 'wb')
f.write(x)
f.close()

however, easypythondecompiler still complains with the same error.
now to figure out how to turn a code object (see code variable above) back to source or to a proper .PYC file.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top