יום שני, 18 ביוני 2018

יצירת קובץ EXE עם כל הספריות dll הדרושות (#C)

קבצי dll ב-Visual Studio

לפעמים אנחנו צריכים לעשות שימוש בספריות חיצוניות בפרויקט שלנו (לדוגמה DotNetZip.dll לעבודה עם קבצי זיפ).
ספריות אלו נותנות לנו כלים נוחים לשימוש, מבלי שנצטרך לממש אותם בעצמנו.

- כל הספריות בפרויקט שלנו שמורות תחת References.
- רק אחרי שנוסיף את הספרייה לפרויקט נוכל לקרוא לה על ידי using.




הוספת ספרייה לפרויקט:
דרך 1: להוריד את ה-dll ולהוסיף אותו ידנית.
דרך 2: אם מדובר בספרייה מוכרת, יתכן שניתן בעזרת NuGet להגיע אליה ישירות באמצעות חיפוש אונליין בויזואל סטודיו.
אפשר להגיע אל NuGet כך: TOOLS->Library Package Manager->Manage NuGet Packages for Solution.
או כפי שמתואר כאן.










יצירת קובץ EXE שמכיל את כל הספריות שעשינו בהן שימוש:

ראשית עלינו ליצור קובץ EXE רגיל של התוכנית.

לשם כך יש ללחוץ על F6, מה שלמעשה עושה "BUILD" לפרויקט.
אחר כך צריך להגיע לתיקייה בווינדוס שבה שמור הפרויקט שלנו. אפשר להגיע אליה בחיפוש ידני בסייר הקבצים, או ישירות על ידי העתקת הנתיב מהויזואל סטודיו (לחצן ימיני על ה-Solution ואז על Copy Path. יש למחוק מהנתיב את שם הקובץ sln שבסופו).
בתוך התיקייה הזו קיימת תיקייה בעלת שם זהה לשם הפרויקט, ובה תיקייה בשם bin.

בתוך התיקייה bin יתכן שקיימת התיקייה "Release".
אם כן, נבחר בקובץ ה-EXE שנמצא בתוכה.
אם לא, וודאי קיימת התיקייה "Debug", נבחר בקובץ ה-EXE שבתוכה.
(אם קיימים כמה קבצי EXE שימו לב שאתם בוחרים באחד ששמו זהה לשם הפרויקט).


בסוף כל זה אמור להיות לנו ביד קובץ EXE של הפרויקט.

שימו לב: אם בפרויקט שלנו אין ספריות שייבאנו במיוחד, כנראה שה-EXE כבר מוכן לפרסום.
אך אם כן ייבאנו ספריות מיוחדות נותר עוד שלב אחד...



איחוד קבצי ה-DLL החיצוניים עם קובץ ה-EXE.

כפי שמתואר כאן ישנן כמה דרכים לעשות זאת, אני אמליץ על דרך אחת.

1. תתקינו את התוכנה ILMerge.
2. תורידו את התוכנה ILMergeGUI.

(תוכלו להוריד את שני הקבצים גם מכאן)

כעת פשוט תגררו את קובץ ה-EXE ואת קבצי ה-DLL אל החלון של ILMergeGUI.
ביחרו יעד, ובצעו מיזוג (Merge).
והנה לכם קובץ EXE סופי!











בהצלחה.

אין תגובות:

הוסף רשומת תגובה