שיתוף | רוצים לעזור לי לבנות את התוכנה הכי קטנה בעולם?
-
@מתכנת-חובב כתב בשיתוף | יכול להיות שכתבתי את התוכנה הכי קטנה בעולם?:
לאחרונה לעולם של התוכנות הזעירות - אמנות שבה דוחסים שדות בקובץ exe אחד על השני
יפה, ככה היו כותבים פעם כשהיו תוכנות על דיסקטים?
-
@מתכנת-חובב

זה עובד???????@אלישע-מואב-0 כתבתי בפוסט שזה קורה לפעמים
תנסה לפתוח עוד פעם ותראה אם זה הסתדר
עוד לא בדקתי מה גורם לזה לקרוס ככה אבל אני משער שזה איזה שהוא race condition
כשאבדוק אעדכן -
@מויטיו כתבתי שיש גודל מינימלי של 268 בתים אז אין עניין להקטין את הטקסט אם בין כה אני אצטרך להכניס אפסים ואדרבה - דחפתי אותו בשדה שבין כה תפוס ואי אפשר לצמצם אותו
אם כבר הייתי מפנה את זה כדי להרוויח פונקציונליות אבל אז זה כבר לא היה hello world אלא סתם תוכנה שפותחת הודעה ומצפצפת (לדוגמה)ובאמת נראה לך שאני מסוגל לכתוב opcodes אבל לא לעלות על הטריק הגאוני הזה?
-
@מויטיו כתבתי שיש גודל מינימלי של 268 בתים אז אין עניין להקטין את הטקסט אם בין כה אני אצטרך להכניס אפסים ואדרבה - דחפתי אותו בשדה שבין כה תפוס ואי אפשר לצמצם אותו
אם כבר הייתי מפנה את זה כדי להרוויח פונקציונליות אבל אז זה כבר לא היה hello world אלא סתם תוכנה שפותחת הודעה ומצפצפת (לדוגמה)ובאמת נראה לך שאני מסוגל לכתוב opcodes אבל לא לעלות על הטריק הגאוני הזה?
@מתכנת-חובב זה היה בשביל להבין
והנה הסברת.....
באמת שאפו -
@מתכנת-חובב זה היה בשביל להבין
והנה הסברת.....
באמת שאפו@מויטיו כתב בשיתוף | יכול להיות שכתבתי את התוכנה הכי קטנה בעולם?:
והנה הסברת.....
כתב בשיתוף | יכול להיות שכתבתי את התוכנה הכי קטנה בעולם?:
הגודל המינימלי של התוכנות האלו נכון להיום הוא 268 בתים בגלל דרישות יישור ולכאורה מבנה ה struct שה loader של ווינדוס מחפש לקרוא כשהוא פותח קובץ
-
פעם ראשונה שגיאה
פעם שניה עבד! -
@מתכנת-חובב

זה עובד???????@אלישע-מואב-0 @אביגדור-ברמן מתברר שדרסתי בטעות את ה data dirctory ומכיוון שזה קובץ קצת מוזר ווינדוס ניסה לתקן אותו בריצה הראשונה דרך קובץ dll שנקרא apphelp וספציפית בפונקציה SepRouterHookIAT שמשמשת כ hook לקריאה חיצונית של ה IAT ומכיוון שכתבתי עליו טקסט (הכותרת של החלון) שבקריאה שלו ככתובת יוצא כתובת של זיכרון רחוק שלא הוקצה קופצת שגיאת access violation בפעם הראשונה
בדרך כלל אחרי הקריסה הראשונה ווינדוס מסמן את הקובץ כקובץ שאין עניין לתקן והקובץ רץ
אפשר לנסות להגדיר Size Of Image לערך עצום שאולי יכלול בתוכו את אותה כתובת אבל אז זה עלול ליפול שם
בקיצור מה שעשיתי זה לאפס את השדה של הגודל של אותה כניסת IAT וכך ווינדוס לא מנסה לטעון אותה אבל זה עלה לי במחיר צמצום הכותרת
החלפתי את הקובץ לעיל בקובץ מתוקן -
@אלישע-מואב-0 @אביגדור-ברמן מתברר שדרסתי בטעות את ה data dirctory ומכיוון שזה קובץ קצת מוזר ווינדוס ניסה לתקן אותו בריצה הראשונה דרך קובץ dll שנקרא apphelp וספציפית בפונקציה SepRouterHookIAT שמשמשת כ hook לקריאה חיצונית של ה IAT ומכיוון שכתבתי עליו טקסט (הכותרת של החלון) שבקריאה שלו ככתובת יוצא כתובת של זיכרון רחוק שלא הוקצה קופצת שגיאת access violation בפעם הראשונה
בדרך כלל אחרי הקריסה הראשונה ווינדוס מסמן את הקובץ כקובץ שאין עניין לתקן והקובץ רץ
אפשר לנסות להגדיר Size Of Image לערך עצום שאולי יכלול בתוכו את אותה כתובת אבל אז זה עלול ליפול שם
בקיצור מה שעשיתי זה לאפס את השדה של הגודל של אותה כניסת IAT וכך ווינדוס לא מנסה לטעון אותה אבל זה עלה לי במחיר צמצום הכותרת
החלפתי את הקובץ לעיל בקובץ מתוקן -
@בנימין-מחשבים מעניין בארבעה מחשבים שבדקתי זה היה בסדר
אשמח אם יש עוד מישהו שיוכל לבדוק ולעדכן -
לא עובד לי

-
לא עובד לי

@יאיר-דניאל אני בודק את זה
אולי מדובר ב build לא תואם אבל מעניין -
@יאיר-דניאל אני בודק את זה
אולי מדובר ב build לא תואם אבל מעניין@מתכנת-חובב עבד להפליא כבר בפעם הראשונה

-
@מתכנת-חובב מאוד יפה!
אהבתי את הרעיון. -
@מתכנת-חובב עבד להפליא כבר בפעם הראשונה

