إنشاء برنامج في Python 3 لمستخدمي Windows، لا يمكن استخدام PIL؟

StackOverflow https://stackoverflow.com/questions/8987639

سؤال

كتبت برنامجا واجهة المستخدم الرسومية بسيطة إلى حد ما لأتمتة عدد قليل من العمليات لمستخدمي Windows في Python (كما هي لغة البرمجة الوحيدة التي سأفعلها إلى حد ما مع ذلك سيتم تشغيلها على Windows). وأود أن غير مثالي لا أريد أن يضطر المستخدم إلى تشغيل برنامج تثبيت على جهازهم، حيث أن خطتي هي لتشغيلها ذاتيا في محرك أقراص USB.

ذلك يعتمد على نظام التشغيل، SUTIL، سلسلة، SYS، TKINT، WebBrowser، PIL، FTPLIB، و Glob.

يبدو كما لو أن جميع التبعيات تم استيرادها عندما ركضت CX_FREZE على ذلك، باستثناء PIL. لم أستخدم قط CX_FREESE من قبل، لذلك يمكنني أن أفعل شيئا خاطئا، لكن لا يبدو الأمر كذلك. تشغيل البرنامج من البرنامج النصي .py Ulrogzen يعمل بشكل جيد فقط.

ها هي رسالة الخطأ التي أتلقاها عند محاولة استخدام أمر PIS: giveacodicetagpre.

شكرا لأي مساعدة يمكنك تقديمها. أرى أنه لا يزال يشير إلى C: \ Python32 مما قد يكون جزءا من المشكلة، لأنه لا ينبغي أن يكون (إذا لم أكن مخطئا).

تحديث:

نظرت إلى الأسئلة الشائعة PIS ويبدو أن GIST من هذه الإجابة هو أنني بحاجة إلى التأكد من صحة قائمة Sys.Path الخاصة بي. أمسك بشكل أساسي بجميع ملفات Python ل Windows وتضمينها في محرك أقراص USB الذي أحاول استخدامه لاحتواء كل شيء، واضبط طريقي مثل ذلك: giveacodicetagpre.

جميع المسارات تبدو صحيحة، ولكن لسبب ما ما زلت أحصل على نفس الخطأ. عندما أقوم بتشغيل ملف .py كل شيء يعمل بنسبة 100٪، ولكن يبدو أن هذا يكسره بطريقة أو بأخرى. يبدو أن وحدات أخرى تعمل على ما يرام مثل Shutil و OS و SYS، على سبيل المثال.

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

المحلول

أعتقد أن مشكلتك الرئيسية قد تكون أن مكتبة تصوير الثعبون (PIS) لا تدعم بعد Python 3.x.

إذا نظرت إلى pil التنزيلات الصفحة سترى ذلكهناك تنزيلات ويندوز ل Python 2.4 و 2.5 و 2.6 و 2.7 ولكن لا شيء ل Python 3.x.

p> هذا السؤال لديه إجابة تفاصيل المنافذ غير الرسمية من PIL لبثون 3.س والتي قد تكون تستحق المحاولة.

إذا كان ذلك يعمل، فيمكنك إلقاء نظرة على السؤال الأول على الأسئلة الشائعة PIS وهو ما يدور حول "وحدة _Imaging C غير مثبتة" وتسرد الأشياء المختلفة التي يمكنك القيام بها لتحديد المشكلة.

نصائح أخرى

في الماضي لقد وجدت cx_freeze أن يكون لديك مشاكل في سحب dlls الصحيح تحت ويندوز.

اعتدت عملية مستكشف العمليات لتتبع ما تم البحث عنه DLLولكن لم يتم العثور عليها، ثم أضفتها إلى المشروع يدويا، وهذا حصل عليه يعمل.كما تفعل الشيء نفسه بالنسبة لأي ملف، أتصور نفس الشيء يمكن القيام به في قضيتك.

كان هذا لاستخدامي باستخدام pysfml، لذلك قد يختلف الأميال الخاص بك.

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