2013-10-31 23 views
5

Ben mac osx 10.8.5 üzerinde python bir uygulama yapıyorum py2app kullanarak python komut dosyasını bir uygulamaya dönüştürdüm. Ancak, uygulama içinde, Show Package Contents-->Contents-->Resources Orijinal kod mevcut. Uygulamamı güvenlik sorunu olarak dağıtarak kodumu başkalarına göstermek istemiyorum. (.py) kodunu (.pyc) koduyla kaldırdım, bu durumda uygulama düzgün çalışmadı. Lütfen bunun için bir yol önerin. Diğer soruları da araştırıyorum, ancak istenen sonucu almadım. Benim setup.pyPy2app tarafından yapılan uygulamada mevcut Python kodu

from setuptools import setup 

APP=['myapp.py'] 
DATA_FILES= [('',['config.cfg'])] 
OPTIONS={'iconfile':'cc.icns','argv_emulation': True,'plist':{'CFBundleShortVersionString':'1.0'}} 

setup(
    app=APP, 
    data_files=DATA_FILES, 
    options={'py2app': OPTIONS}, 
    setup_requires=['py2app'] 
    ) 

cevap

1

en kolay çözüm başka modülüne myapp.py kod taşımak ve myapp.py içinde bu modülü ithal içindir.

Ana komut dizisinden başka modüllerin yalnızca byte-compiled (.pyc dosyaları gibi) olduğunu ve bu dosyaların kaynak koduna kolayca dönüşebileceğini unutmayın.

Byte-derleme komut dosyası benim yapılacaklar listesinde bulunan, ancak :-)

+0

noticted olarak sadece .pyc dosyası tarafından .py dosyası yerine bunu yapmanın başka bir yolu var mı olduğunu daha karmaşıktır. Daha fazla güvenlik istiyorum. Modülü alırken, time.sleep (2) 'Attribute error (hata)' olarak görüntülenen hata var: 'NoneType' nesnesinde – imp

+0

numaralı özniteliği yok "Daha fazla güvenlik istiyorum." - "Güvenli" kod diye bir şey olmadığının farkında olun. Onu gizleyebilir, derleyebilir, istediğiniz herhangi bir dilde yazabilirsin, ama eğer içinde ne olduğunu bulmak için birileri yeterince umurunda olursa, her zaman onu yeniden derleyip tekrar engelleyebilir. Basit bir 'dizgiler' komutu bile herhangi İnsanın okuyabileceği metin: En çok umduğun, daha fazla sorun çıkarmaya çalışmaktır. – foo

+0

@foo ok Modülü içe aktarırken, time.sleep (2) 'de' Attribute error '(hata): HiçbiriType 'nesnesinde hiçbir özellik uykusu yok, neden gösteriliyor? – imp

İlgili konular