Aracılığıyla paylaş


durdur

Geçerli işlemi iptal eder ve hata kodu döndürür.

[!NOT]

Test veya hata ayıklama senaryoları dışında, bir Windows Mağazası uygulamasını kapatmak için bu yöntemi kullanmayın.Bir Windows Mağazası uygulamasını kapatmak için program niteliğinde veya UI yollarına Windows 8 uygulama sertifika gereksinimlerine göre izin verilmez.Daha fazla bilgi için bkz: Uygulama yaşam döngüsü (Windows Mağazası uygulamaları).

void abort( void );

Dönüş Değeri

abort denetimi çağırma işlemine döndürmez.Varsayılan olarak, iptal sinyali işleyicisini denetler ve biri ayarlanmışsa SIGABRT oluşturur.Sonra abort geçerli işlemi sonlandırır ve üst işleme çıkış kodu döndürür.

Notlar

Microsoft'a Özgü

Varsayılan olarak bir uygulama hata ayıklama çalışma zamanı kitaplığıyla oluşturulduğunda abort rutini SIGABRT oluşturmadan önce bir hata iletisi gösterir.Konsol modunda çalışan konsol uygulamaları için mesaj STDERR öğesine gönderilir.Pencereli modda çalışan Windows masaüstü uygulamaları ve konsol uygulamaları, iletiyi bir ileti kutusunda görüntüler._WRITE_ABORT_MSG bayrağını temizlemek amacıyla iletiyi göstermek için _set_abort_behavior seçeneğini kullanın.Görüntülenen ileti kullanılan çalışma zamanı ortamının sürümüne bağlıdır.En son Visual C++ sürümü kullanılarak oluşturulan uygulamalar için mesaj bunu yeniden birleştirir:

R6010

- abort() has been called

C çalışma zamanı kitaplığının önceki sürümlerinde bu ileti görüntülendi:

"This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information."

Program hata ayıklama modunda derlendiğinde, ileti kutusu İptal, Yeniden Dene veya Yoksay seçeneklerini görüntüler.Kullanıcı İptal seçerse, program hemen sonlanır ve bir 3 çıkış kodu döndürür.Kullanıcı Yeniden dene'yi seçerse, bir hata ayıklayıcı varsa zamanında hata ayıklama için çağrılır.Kullanıcı Yoksay'ı seçerse, abort normal işleme devam eder.

Hem tekil hem de hata ayıklama yapılarında, abort daha sonra iptal sinyal tutucusunun ayarlanıp ayarlanmadığını denetler.Varsayılan olmayan bir sinyal işleyici ayarlanırsa abort, raise(SIGABRT) çağırır.SIGABRT sinyaliyle bir iptal sinyal işleyicisi işlevini ilişkilendirmek için sinyal işlevini kullanın.Özel eylemler gerçekleştirebilir (örneğin, kaynakları veya oturum bilgilerini temizleme), kendi işleyici işlevindeki hata koduyla uygulamayı sonlandırabilirsiniz.Hiçbir özel sinyal tutucusu tanımlanmazsa, abortSIGABRT sinyalini yükseltmez.

Varsayılan olarak masaüstü veya konsol uygulamaların hata ayıklama olmayan yapılarında abort Windows hata raporlama mekanizmasını çağırır (Dr.Watson) Microsoft'a rapor hataları için.Bu çalışma biçimi _set_abort_behavior öğesi çağrılarak ve _CALL_REPORTFAULT bayrağı ayarlanarak veya maskelenerek etkinleştirilebilir veya devre dışı bırakılabilir.Bayrak ayarlandığında, Windows "Programın düzgün çalışmasını durduran bir sorun oluştu" gibi bir metnin bulunduğu ileti kutusunu görüntüler. Kullanıcı bir Hata Ayıkla düğmesiyle hata ayıklayıcı çağırmayı veya işletim sistemi tarafından tanımlanmış bir hata kodunu veren uygulamayı Programı kapat düğmesiyle sonlandırmayı seçebilir.

Windows hata bildirimi işleyicisi çağrılmıyorsa, abort, işlemi çıkış kodu 3 ile sonlandırmak için _exit çağırır ve denetimi üst işleme ya da işletim sistemine döndürür._exit akış arabelleklerini temizlemez veya atexit/_onexit işlemez.

CRT hata ayıklaması hakkında daha fazla bilgi için bkz: CRT Hata Ayıklama Teknikleri.

End Microsoft Özgü

Gereksinimler

Yordam

Gerekli başlık

abort

<process.h> veya <stdlib.h>

Örnek

Aşağıdaki program bir dosyayı açmaya çalışır ve deneme başarısız olursa iptal eder.

// crt_abort.c
// compile with: /TC
// This program demonstrates the use of
// the abort function by attempting to open a file
// and aborts if the attempt fails.

#include  <stdio.h>
#include  <stdlib.h>

int main( void )
{
    FILE    *stream = NULL;
    errno_t err = 0;

    err = fopen_s(&stream, "NOSUCHF.ILE", "r" );
    if ((err != 0) || (stream == NULL))
    {
        perror( "File could not be opened" );
        abort();
    }
    else
    {
        fclose( stream );
    }
}
  

.NET Framework Eşdeğeri

Uygulanamaz. Standart C işlevini çağırmak için PInvoke kullanın. Daha fazla bilgi için bkz. Platform Çağırma Örnekleri.

Ayrıca bkz.

Başvuru

abort Kullanma

abort İşlevi (C)

Süreç ve Ortam Denetimi

_exec, _wexec İşlevleri

çıkış, _exit

tetikle

sinyal

_spawn, _wspawn İşlevleri

_DEBUG

_set_abort_behavior