Nasıl yapılır: Yeniden Başlatma Yöneticisi Desteği Ekleme
Yeniden başlatma yöneticisi, Windows Vista veya sonraki işletim sistemleri için Visual Studio'ya eklenen bir özelliktir. Yeniden başlatma yöneticisi, beklenmedik bir şekilde kapanırsa veya yeniden başlatılırsa uygulamanız için destek ekler. Yeniden başlatma yöneticisinin davranışı uygulamanızın türüne bağlıdır. Uygulamanız bir belge düzenleyicisiyse, yeniden başlatma yöneticisi uygulamanızın açık belgelerin durumunu ve içeriğini otomatik olarak kaydetmesini etkinleştirdi ve beklenmeyen bir kapatmadan sonra uygulamanızı yeniden başlatır. Uygulamanız bir belge düzenleyicisi değilse, yeniden başlatma yöneticisi uygulamayı yeniden başlatır, ancak varsayılan olarak uygulamanın durumunu kaydedemez.
Yeniden başlatıldıktan sonra uygulama Unicode ise bir görev iletişim kutusu görüntüler. Bu bir ANSI uygulamasıysa, uygulama bir Windows İletisi kutusu görüntüler. Bu noktada, kullanıcı otomatik olarak kaydedilen belgelerin geri yüklenip geri yüklenmeyeceğini seçer. Kullanıcı otomatik olarak kaydedilen belgeleri geri yüklemezse, yeniden başlatma yöneticisi geçici dosyaları atar.
Dekont
Verileri kaydetmek ve uygulamayı yeniden başlatmak için yeniden başlatma yöneticisinin varsayılan davranışını geçersiz kılabilirsiniz.
Varsayılan olarak, Visual Studio'daki proje sihirbazı kullanılarak oluşturulan MFC uygulamaları, uygulamalar Windows Vista veya sonraki bir işletim sistemine sahip bir bilgisayarda çalıştırıldığında yeniden başlatma yöneticisini destekler. Uygulamanızın yeniden başlatma yöneticisini desteklemesini istemiyorsanız, yeni proje sihirbazında yeniden başlatma yöneticisini devre dışı bırakabilirsiniz.
Mevcut Bir Uygulamaya Yeniden Başlatma Yöneticisi Desteği Eklemek için
Visual Studio'da var olan bir MFC uygulamasını açın.
Ana uygulamanız için kaynak dosyayı açın. Varsayılan olarak bu, uygulamanızla aynı ada sahip .cpp dosyasıdır. Örneğin, MyProject için ana uygulama kaynak dosyası MyProject.cpp'dir.
Ana uygulamanız için oluşturucuyu bulun. Örneğin, projeniz MyProject ise oluşturucu olur
CMyProjectApp::CMyProjectApp()
.Oluşturucunuza aşağıdaki kod satırını ekleyin.
m_dwRestartManagerSupportFlags = AFX_RESTART_MANAGER_SUPPORT_ALL_ASPECTS;
Uygulamanızın yönteminin
InitInstance
üstInitInstance
yöntemini çağırdığından emin olun: CWinApp::InitInstance veyaCWinAppEx::InitInstance
.InitInstance
yöntemi, m_dwRestartManagerSupportFlags parametresini denetlemekle sorumludur.Uygulamanızı derleyin ve çalıştırın.
Ayrıca bkz.
CDataRecoveryHandler Sınıfı
CWinApp::m_dwRestartManagerSupportFlags
CWinApp Sınıfı
CWinApp::m_nAutosaveInterval
CDocument::OnDocumentEvent