سؤال

وكيفية إنشاء محرك المساعد جيدة لالتنفيذية مستقل تم إنشاؤها باستخدام pyInstaller، py2exe أو أدوات مماثلة؟

وليس لدي تجربة مع py2exe، ولكن يستخدم pyInstaller هوك استيراد لاستيراد حزم من أنه مضغوط مستودع. بالطبع أنا قادرة على استيراد حيوي مستودع مضغوط آخر تم إنشاؤها باستخدام pyInstaller وتنفيذ التعليمات البرمجية - وهذا قد يكون المحرك المساعد بسيط

.

ومشاكل تظهر عند البرنامج المساعد (هذا ما يتم استيرادها بشكل حيوي) يستخدم مكتبة غير موجودة في المستودع الأصلي (المستوردة أبدا). وذلك لأن ربط الاستيراد للتطبيق الأصلي والبحث عن الحزم في مستودع الأصلي - ليست واحدة المستوردة في وقت لاحق (المساعد حزمة مستودع).

هل هناك طريقة سهلة لحل هذه المشكلة؟ ربما توجد هذا المحرك؟

هل كانت مفيدة؟

المحلول

عند تجميع لاكس، ذهابك لهذه المسألة.

والخيار الوحيد الذي يمكنني أن أفكر للسماح للمستخدمين الوصول مع الإضافات جدارتنا لاستخدام أي مكتبة الثعبان لتشمل جميع المكتبات في حزمة إكس.

وانها ربما تكون فكرة جيدة للحد من مكتبات الدعم لمجموعة فرعية، وقائمة في الوثائق. متروك لكم.

ولقد استعملت فقط py2exe.

في py2exe يمكنك تحديد المكتبات التي لم يتم العثور عليها في البحث في <القوي> setup.py ملف.

إليك عينة:

from distutils.core import setup
import py2exe

setup (name = "script2compile",
       console=['script2compile.pyw'],
       version = "1.4",
       author = "me",
       author_email="somemail@me.com",
       url="myurl.com",
       windows = [{
                    "script":"script2compile.pyw",
                    "icon_resources":[(1,"./ICONS/app.ico")]  # Icon file to use for display
                 }],
       # put packages/libraries to include in the "packages" list
       options = {"py2exe":{"packages": [   "pickle",
                                            "csv",
                                            "Tkconstants",
                                            "Tkinter",
                                            "tkFileDialog",
                                            "pyexpat",
                                            "xml.dom.minidom",
                                            "win32pdh",
                                            "win32pdhutil",
                                            "win32api",
                                            "win32con",
                                            "subprocess", 
                                        ]}} 

       )

import win32pdh
import win32pdhutil
import win32api

نصائح أخرى

وPyInstaller <م> لا لديها نظام المساعد للتعامل مع واردات الخفية، ويأتي مع العديد من تلك بالفعل في انظر صفحة الويب (<لأ href = "http://www.pyinstaller.org" يختلط = "noreferrer نوفولو"> http://www.pyinstaller.org ) التي تقول:

<اقتباس فقرة>   

والهدف الرئيسي من PyInstaller هو أن تكون متوافقة مع الحزم 3rd الطرف الخروج من مربع. وهذا يعني أنه مع PyInstaller، كل الحيل المطلوبة لجعل تتكامل حزم الخارجية العمل بالفعل في PyInstaller نفسها حتى لا يكون هناك أي تدخل من المستخدم المطلوبة. عليك أبدا تكون هناك حاجة للبحث عن الحيل في الويكي وتطبيق العرف تعديل على الملفات أو البرامج النصية الإعداد. تحقق لدينا قائمة التوافق SupportedPackages.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top