מדריך | מדריך | קמפול תוכנות ל EXE
-
מדריך קמפול תוכנות מ python ל EXE עם סביבה ווירטואלית.
- לתוכנות בסיסיות! בווינדואוס
דבר ראשון: יש את הקובץ של סמל התוכנה: (לא חובה)
הקובץ של סמל התוכנה זה לא קובץ תמונה רגיל אלא זה קובץ ico כדי שקובץ תמונה רגיל יהפך ל ico- צריך קודם שהתמונה תהיה מרובעת ולא מלבנית, אחרת היא "תמעך"....
אחרי שהתמונה נמצאת בידכם, יש מלא ממירים באינטרנט ולא באינטרנט להמרה קובץ רגיל של תמונה ל ico
אני אישית ממליץ על זה:
https://imagetostl.com/il/convert/file/jpg/to/ico- אחרי שהתמונה נמצאת בידכם, יש לשים אותה בתיקיה הראשית של הפרויקט.
מפה הדרך הכי מומלצת זה הפעלה של סביבה ווירטואלית
כך: יש לפתוח CMD בתיקית הפרויקט ולהקליד בו את הקוד הבא:
python -m venv venvאחרי שזה יגמור לרוץ יש להפעיל את הסביבה הווירטואלית ע"י הקוד:
venv\Scripts\activateאחרי זה יש כמובן להתקין את הספריות של הפרויקט (מחדש! כי זה סביבה חדשה!)
אחרי זה יש את פקודת הקמפול שפה כל אחד צריך להתאים לפרויקט שלו אז יש לשים לב:
אם התוכנה שלך היא קוד בלבד ללא תמונות או רקעים:
pyinstaller --onefile --windowed --name "MyProgramName" שם קובץ התוכנה.pyקמפול עם סמל התוכנה בלבד - ללא קבצים נוספים
pyinstaller --noconfirm --onefile --windowed --icon "שם סמל התוכנה.ico" --name "MyProgram" קובץ התוכנה.pyקמפול עם סמל, ותמונה (כגון תמונת רקע)
ישמדריך בסוף הפוסט מה צריך לעשות בקוד כדי שהתוכנה תדע לקרוא את התמונות נכון:pyinstaller --noconfirm --onefile --windowed --icon "שם קובץ הסמל.ico" --add-data "שם התמונה לקמפול.png;." --name "MyProgram" שם קובץ התוכנה.pyקמפול עם תיקית משאבים שלמה
pyinstaller --noconfirm --onefile --windowed --icon "שם קובץ הסמל.ico" --add-data "שם התיקיה כפי שהיא מפיע אצלך/*;שם התיקיה כפי שיופיע בקמפול" --name "MyProgram" שם קובץ התוכנה.pyבהצלחה...
הקוד הנדרש לטיפול בקבצים חיצוניים (חובה אם יש תמונות/נתונים)
אם התוכנה שלך משתמשת בקבצים חיצוניים (כמו תמונת רקע או DLL), עליך להוסיף את הפונקציה הבאה לקוד כדי שהיא תדע למצוא אותם בתוך התיקייה הזמנית ש-PyInstaller יוצר בזמן הריצה:
import sys import os def resource_path(relative_path): # מחזירה נתיב אבסולוטי שמתאים גם להרצה רגילה וגם ל-EXE try: # PyInstaller יוצר תיקייה זמנית ושומר את הנתיב ב-_MEIPASS base_path = sys._MEIPASS except Exception: base_path = os.path.abspath(".") return os.path.join(base_path, relative_path) # שימוש לדוגמה: # background_path = resource_path("bg.png")נ"ב התוכנה בקובץ exe תופיע בתוך תיקיה בשם - "dist"
יש כמובן עוד הרבה סוגים של קמפול אבל אלו הכי נפוצים
-
מדריך קמפול תוכנות מ python ל EXE עם סביבה ווירטואלית.
- לתוכנות בסיסיות! בווינדואוס
דבר ראשון: יש את הקובץ של סמל התוכנה: (לא חובה)
הקובץ של סמל התוכנה זה לא קובץ תמונה רגיל אלא זה קובץ ico כדי שקובץ תמונה רגיל יהפך ל ico- צריך קודם שהתמונה תהיה מרובעת ולא מלבנית, אחרת היא "תמעך"....
אחרי שהתמונה נמצאת בידכם, יש מלא ממירים באינטרנט ולא באינטרנט להמרה קובץ רגיל של תמונה ל ico
אני אישית ממליץ על זה:
https://imagetostl.com/il/convert/file/jpg/to/ico- אחרי שהתמונה נמצאת בידכם, יש לשים אותה בתיקיה הראשית של הפרויקט.
מפה הדרך הכי מומלצת זה הפעלה של סביבה ווירטואלית
כך: יש לפתוח CMD בתיקית הפרויקט ולהקליד בו את הקוד הבא:
python -m venv venvאחרי שזה יגמור לרוץ יש להפעיל את הסביבה הווירטואלית ע"י הקוד:
venv\Scripts\activateאחרי זה יש כמובן להתקין את הספריות של הפרויקט (מחדש! כי זה סביבה חדשה!)
אחרי זה יש את פקודת הקמפול שפה כל אחד צריך להתאים לפרויקט שלו אז יש לשים לב:
אם התוכנה שלך היא קוד בלבד ללא תמונות או רקעים:
pyinstaller --onefile --windowed --name "MyProgramName" שם קובץ התוכנה.pyקמפול עם סמל התוכנה בלבד - ללא קבצים נוספים
pyinstaller --noconfirm --onefile --windowed --icon "שם סמל התוכנה.ico" --name "MyProgram" קובץ התוכנה.pyקמפול עם סמל, ותמונה (כגון תמונת רקע)
ישמדריך בסוף הפוסט מה צריך לעשות בקוד כדי שהתוכנה תדע לקרוא את התמונות נכון:pyinstaller --noconfirm --onefile --windowed --icon "שם קובץ הסמל.ico" --add-data "שם התמונה לקמפול.png;." --name "MyProgram" שם קובץ התוכנה.pyקמפול עם תיקית משאבים שלמה
pyinstaller --noconfirm --onefile --windowed --icon "שם קובץ הסמל.ico" --add-data "שם התיקיה כפי שהיא מפיע אצלך/*;שם התיקיה כפי שיופיע בקמפול" --name "MyProgram" שם קובץ התוכנה.pyבהצלחה...
הקוד הנדרש לטיפול בקבצים חיצוניים (חובה אם יש תמונות/נתונים)
אם התוכנה שלך משתמשת בקבצים חיצוניים (כמו תמונת רקע או DLL), עליך להוסיף את הפונקציה הבאה לקוד כדי שהיא תדע למצוא אותם בתוך התיקייה הזמנית ש-PyInstaller יוצר בזמן הריצה:
import sys import os def resource_path(relative_path): # מחזירה נתיב אבסולוטי שמתאים גם להרצה רגילה וגם ל-EXE try: # PyInstaller יוצר תיקייה זמנית ושומר את הנתיב ב-_MEIPASS base_path = sys._MEIPASS except Exception: base_path = os.path.abspath(".") return os.path.join(base_path, relative_path) # שימוש לדוגמה: # background_path = resource_path("bg.png")נ"ב התוכנה בקובץ exe תופיע בתוך תיקיה בשם - "dist"
יש כמובן עוד הרבה סוגים של קמפול אבל אלו הכי נפוצים