PDA

View Full Version : بستن برنامه (خروج)



teresa
شنبه 20 بهمن 1386, 08:06 صبح
سلام
من برنامه ای را نوشتم برای خارج شدن از دستور close استفاده کردم (منظورم موقعی که روی دکمه خروج کلیک می کنم) غیر از این دستور از دستور دیگری هم می شود استفاده که که برنامه را از حافظه پاک میکند ، دنبال آن دستور می گردم.

ICEMAN
شنبه 20 بهمن 1386, 08:58 صبح
halt; :)

farhad110
شنبه 20 بهمن 1386, 09:10 صبح
application.terminate رو هم من اضافه میکنم

vcldeveloper
شنبه 20 بهمن 1386, 14:57 عصر
halt
قبلا بارها توضیح داده شد که در شرایط عادی و برای خروج طبیعی از برنامه هیچوقت از Halt استفاده نشه. جستجو کنید تاپیک های مربوطه را پیدا می کنید.

m-khorsandi
یک شنبه 21 بهمن 1386, 08:51 صبح
تفاوت Halt و Terminate

Halt : منجر به خاتمه ی سریع و غیرعادی برنامه می‌شود و به همین دلیل هیچ ضمانتی هم وجود ندارد که Resource‌های مورد استفاده ی برنامه آزاد شوند و معمولاً هم در Console Application‌ها استفاده می‌شود. برای خاتمه ی یک برنامه ی Delphi VCL non-console application سعی کنید از Application.Terminate استفاده کنید.


Terminate‌: این پروسیجر تابع PostQuitMessage را فراخوانی می‌کند و به ویندوز اشاره می‌کند که این Thread(منظور این برنامه ست) درخواست خاتمه برنامه را دارد. این تابع پیغام wm_quit را به صف پیغام‌های thread ارسال می‌کند و از سیستم، درخواست خروج از برنامه را دارد و موقعیکه Threadپیغام wm_quit را از صف پیام‌ها دریافت کرد، (برنامه) از حلقه پیغام‌ها خارج می‌شود(یعنی خاتمه برنامه) و کنترل به ویندوز برگردانده می‌شود. این تابع مقداری را برنمی‌گرداند با اینکه یک تابع هست.