מה שקורה בעצם, שאנחנו סוגרים תוכנית בטאסק מנג'ר, הTM שולח הודעת WM_CLOSE לט'רד messagequeue של ה UI, או CTRL_CLOSE_EVENT לתוכנית קונסול.כמובן, שהתוכנית לא יכולה להתנגד להם. יש כמה פתרונות כמו תוכנית מקבילה שבודקת האם נסגרת התוכנית השניה שמפעילה אותה, אפשר גם להעלים מה TM כמו שאמרו, אפשר גם "להתנגד" ל TM ולעשות לו OVERRIDE אבל זה מאוד לא פשוט ומומלץ רק כאשר מדובר בנושאים הרבה יתר מתקדמים(בגדול זה כבר להתעסק עם קוד unsafe כי לא לא ידוע אופציה לעשות את זה אחרת).
פעם היה אפשר לגרום לתוכנית לא להגיב לזמן מסוים ואז ה WIN היה "עוזב" את התכנית והיה אפשר באמצעות טריק קטן(עניין של 2 שורות) לגרום לו לבטל את הפעולה. בגסראות של הWIN בשנים האחרונות יש לזה כבר הגנה כי ברגע שהתוכנית לא מגיבה ל WM_CLOSE, הTM שולח פקודת TerminateProcess של WIN32 ופה בעצם נחרץ גורלנו.
זהו בגדול, ועל קצה המזלג.
בהצלחה!
\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser