Aracılığıyla paylaş


CDataRecoveryHandler Sınıfı

Bir CDataRecoveryHandler uygulama beklenmedik şekilde çıkarsa belgeler otomatik olarak depolanır ve geri yüklenir.

Sözdizimi

class CDataRecoveryHandler : public CObject

Üyeler

Oluşturucular

Veri Akışı Adı Açıklama
CDataRecoveryHandler::CDataRecoveryHandler Bir CDataRecoveryHandler nesne oluşturur.

Yöntemler

Veri Akışı Adı Açıklama
CDataRecoveryHandler::AutosaveAllDocumentInfo Sınıfına CDataRecoveryHandler kayıtlı her dosyayı otomatik olarak açıklar.
CDataRecoveryHandler::AutosaveDocumentInfo Belirtilen belgeyi otomatik olarak açıklar.
CDataRecoveryHandler::CreateDocumentInfo Açık belgeler listesine belge ekler.
CDataRecoveryHandler::D eleteAllAutosavedFiles Geçerli otomatik kaydedilen tüm dosyaları siler.
CDataRecoveryHandler::D eleteAutosavedFile Belirtilen otomatik kaydedilen dosyayı siler.
CDataRecoveryHandler::GenerateAutosaveFileName Sağlanan belge dosyası adıyla ilişkilendirilmiş bir otomatik kaydetme dosyasının adını oluşturur.
CDataRecoveryHandler::GetAutosaveInterval Otomatik kaydetme denemeleri arasındaki aralığı döndürür.
CDataRecoveryHandler::GetAutosavePath Otomatik olarak kaydedilen dosyaların yolunu döndürür.
CDataRecoveryHandler::GetDocumentListName Nesneden CDocument belge adını alır.
CDataRecoveryHandler::GetNormalDocumentTitle Belirtilen belge için normal başlığı alır.
CDataRecoveryHandler::GetRecoveredDocumentTitle Kurtarılan belgenin başlığını oluşturur ve döndürür.
CDataRecoveryHandler::GetRestartIdentifier Uygulamanın benzersiz yeniden başlatma tanımlayıcısını alır.
CDataRecoveryHandler::GetSaveDocumentInfoOnIdle öğesinin CDataRecoveryHandler geçerli boşta döngüsünde otomatik kaydetme gerçekleştirip gerçekleştirmediğini gösterir.
CDataRecoveryHandler::GetShutdownByRestartManager Yeniden başlatma yöneticisinin uygulamanın çıkışa neden olup olmadığını gösterir.
CDataRecoveryHandler::Initialize CDataRecoveryHandleröğesini başlatır.
CDataRecoveryHandler::QueryRestoreAutosavedDocuments Otomatik olarak kaydedilen her belge CDataRecoveryHandler için kullanıcıya bir iletişim kutusu görüntüler. İletişim kutusu, kullanıcının otomatik olarak kaydedilen belgeyi geri yüklemek isteyip istemediğini belirler.
CDataRecoveryHandler::ReadOpenDocumentList Açık belge listesini kayıt defterinden yükler.
CDataRecoveryHandler::RemoveDocumentInfo Sağlanan belgeyi açık belge listesinden kaldırır.
CDataRecoveryHandler::ReopenPreviousDocuments Daha önce açık olan belgeleri açar.
CDataRecoveryHandler::RestoreAutosavedDocuments Kullanıcı girişlerine göre otomatik olarak kaydedilen belgeleri geri yükler.
CDataRecoveryHandler::SaveOpenDocumentList Açık belgelerin geçerli listesini Windows kayıt defterine kaydeder.
CDataRecoveryHandler::SetAutosaveInterval Otomatik kaydetme döngüleri arasındaki süreyi milisaniye cinsinden ayarlar.
CDataRecoveryHandler::SetAutosavePath Otomatik kaydedilen dosyaların depolandığı dizini ayarlar.
CDataRecoveryHandler::SetRestartIdentifier bu örneği için benzersiz yeniden başlatma tanımlayıcısını CDataRecoveryHandlerayarlar.
CDataRecoveryHandler::SetSaveDocumentInfoOnIdle geçerli boşta kalma döngüsü sırasında açık belge bilgilerinin Windows kayıt defterine kaydedilip kaydedilmeyeceğini CDataRecoveryHandler ayarlar.
CDataRecoveryHandler::SetShutdownByRestartManager Uygulamanın önceki çıkışının yeniden başlatma yöneticisinden kaynaklanıp kaynaklandığını ayarlar.
CDataRecoveryHandler::UpdateDocumentInfo Kullanıcı belgeyi kaydettiğinden, belgenin bilgilerini güncelleştirir.

Veri Üyeleri

Veri Akışı Adı Açıklama
m_bRestoringPreviousOpenDocs Veri kurtarma işleyicisinin daha önce açık olan belgeleri yeniden açıp açmadığını gösterir.
m_bSaveDocumentInfoOnIdle Veri kurtarma işleyicisinin sonraki boşta döngüde belgeleri otomatik olarak alıp alınmadığını gösterir.
m_bShutdownByRestartManager Yeniden başlatma yöneticisinin uygulamanın çıkmasına neden olup olmadığını gösterir.
m_dwRestartManagerSupportFlags Yeniden başlatma yöneticisinin uygulama için sağladığı desteği gösteren bayraklar.
m_lstAutosavesToDelete Özgün belgeler kapatıldığında silinmeyen otomatik olarak kaydedilen dosyaların listesi. Uygulamadan çıkıldığında, yeniden başlatma yöneticisi dosyaları silmeyi yeniden denenir.
m_mapDocNameToAutosaveName Belge adlarının otomatik olarak kaydedilen dosya adlarıyla bir eşlemesi.
m_mapDocNameToDocumentPtr Belge adlarının CDocument işaretçileriyle eşleştirilmesi.
m_mapDocNameToRestoreBool Belge adlarının, otomatik olarak kaydedilen belgenin geri yüklenip geri yüklenmeyeceğini gösteren boole parametresiyle eşlenmiş olması.
m_mapDocumentPtrToDocName İşaretçilerin CDocument belge adlarına eşlem.
m_mapDocumentPtrToDocTitle İşaretçilerin CDocument belge başlıklarına eşlem. Bu başlıklar dosyaları kaydetmek için kullanılır.
m_nAutosaveInterval Otomatik tasdikler arasındaki milisaniye cinsinden süre.
m_nTimerID Otomatik kaydetme zamanlayıcısının tanımlayıcısı.
m_strAutosavePath Otomatik kaydedilen belgelerin depolandığı konum.
m_strRestartIdentifier Yeniden başlatma yöneticisi için bir GUID'nin dize gösterimi.

Açıklamalar

Yeniden başlatma yöneticisi, tüm açık belgeleri izlemek ve gerektiğinde otomatik kaydetmek için sınıfını kullanır CDataRecoveryHandler . Otomatik kaydetmeyi etkinleştirmek için CDataRecoveryHandler::SetSaveDocumentInfoOnIdle yöntemini kullanın. Bu yöntem, bir CDataRecoveryHandler sonraki boşta döngüsünde otomatik kaydetme gerçekleştirmeye yönlendirir. Yeniden başlatma yöneticisi, otomatik kaydetme gerçekleştirmesi CDataRecoveryHandler gerektiğinde öğesini çağırırSetSaveDocumentInfoOnIdle.

sınıfının tüm yöntemleri CDataRecoveryHandler sanaldır. Kendi özel veri kurtarma işleyicinizi oluşturmak için bu sınıftaki yöntemleri geçersiz kılın. Kendi veri kurtarma işleyicinizi oluşturmadığınız veya yeniden başlatma yöneticiniz olmadığı sürece CDataRecoveryHandler örneği oluşturmayın. CWinApp Sınıfı, gerektiğinde bir CDataRecoveryHandler nesne oluşturur.

Bir CDataRecoveryHandler nesneyi kullanabilmeniz için önce CDataRecoveryHandler::Initialize'ı çağırmanız gerekir.

Sınıfı yeniden CDataRecoveryHandler başlatma yöneticisine yakından bağlı olduğundan, CDataRecoveryHandler genel parametresine m_dwRestartManagerSupportFlagsbağlıdır. Bu parametre, yeniden başlatma yöneticisinin sahip olduğu izinleri ve uygulamanızla nasıl etkileşim kurdığını belirler. Yeniden başlatma yöneticisini mevcut bir uygulamaya eklemek için, ana uygulamanızın oluşturucusunda uygun değeri atamanız m_dwRestartManagerSupportFlags gerekir. Yeniden başlatma yöneticisini kullanma hakkında daha fazla bilgi için bkz . Nasıl yapılır: Yeniden Başlatma Yöneticisi Desteği Ekleme.

Gereksinimler

Üst bilgi: afxdatarecovery.h

CDataRecoveryHandler::AutosaveAllDocumentInfo

Sınıfına CDataRecoveryHandler kayıtlı her dosyayı otomatik olarak açıklar.

virtual BOOL AutosaveAllDocumentInfo();

Dönüş Değeri

Tüm belgeler kaydedildiyse CDataRecoveryHandler TRUE; Herhangi bir belge kaydedilmediyse YANLIŞ.

Açıklamalar

Kaydedilmesi gereken belge yoksa bu yöntem TRUE döndürür. Uygulama için veya CDocManager alınırken CWinApp hata oluşuyorsa, herhangi bir belge kaydetmeden DE TRUE döndürür.

Bu yöntemi kullanmak için AFX_RESTART_MANAGER_AUTOSAVE_AT_RESTART veya AFX_RESTART_MANAGER_AUTOSAVE_AT_INTERVAL içinde m_dwRestartManagerSupportFlagsayarlanmalıdır. Daha fazla bilgi için bkz . Nasıl yapılır: Yeniden Başlatma Yöneticisi Desteği Ekleme.

CDataRecoveryHandler::AutosaveDocumentInfo

Belirtilen belgeyi otomatik olarak açıklar.

virtual BOOL AutosaveDocumentInfo(
    CDocument* pDocument,
    BOOL bResetModifiedFlag = TRUE);

Parametreler

pDocument
[in] Kaydedilecek öğesinin CDocument işaretçisi.

bResetModifiedFlag
[in] TRUE, pDocument'ın CDataRecoveryHandler değiştirilmesini göz önünde bulundurduğunu belirtir; YANLIŞ, çerçevenin pDocument'ı değiştirilmemiş olarak kabul ettiğini belirtir. Bu bayrağın etkisi hakkında daha fazla bilgi için Açıklamalar bölümüne bakın.

Dönüş Değeri

Uygun bayraklar ayarlanırsa ve pDocument geçerli CDocument bir nesneyse TRUE.

Açıklamalar

Her CDocument nesnenin, son kaydetmeden sonra değişip değişmediğini gösteren bir bayrağı vardır. Bu bayrağın durumunu belirlemek için CDocument::IsModified kullanın. Son kaydetme işleminden sonra bir CDocument değişmediyse, AutosaveDocumentInfo bu belge için otomatik olarak kaydedilen dosyaları siler. Son kaydetmeden sonra bir belge değiştiyse, belge kapatıldıktan sonra kullanıcıdan kapatmadan önce belgeyi kaydetmesi istenir.

Not

Belgenin durumunu değiştirilmemiş olarak değiştirmek için bResetModifiedFlag kullanılması kullanıcının kaydedilmemiş verileri kaybetmesine neden olabilir. Çerçeve bir belgeyi değiştirilmemiş olarak kabul ederse, belgenin kapatılması kullanıcıdan kaydetmesini istemez.

pDocument geçerli CDocument bir nesne değilse, bu yöntem ASSERT makrosunun bir özel durumu oluşturur.

Bu yöntemi kullanmak için AFX_RESTART_MANAGER_AUTOSAVE_AT_RESTART veya AFX_RESTARTMANAGER_AUTOSAVE_AT_INTERVAL m_dwRestartManagerSupportFlags olarak ayarlanmalıdır.

CDataRecoveryHandler::CDataRecoveryHandler

Bir CDataRecoveryHandler nesne oluşturur.

CDataRecoveryHandler(
    DWORD dwRestartManagerSupportFlags,
    int nAutosaveInterval);

Parametreler

dwRestartManagerSupportFlags
[in] Yeniden başlatma yöneticisinin hangi seçeneklerinin destekleneceğini gösterir.

nAutosaveInterval
[in] Otomatik tasdikler arasındaki süre. Bu parametre milisaniye cinsindendir.

Açıklamalar

MFC çerçevesi, Yeni Proje sihirbazını kullandığınızda uygulamanız için otomatik olarak bir CDataRecoveryHandler nesne oluşturur. Veri kurtarma davranışını veya yeniden başlatma yöneticisini özelleştirmediğiniz sürece bir CDataRecoveryHandler nesne oluşturmamalısınız.

CDataRecoveryHandler::CreateDocumentInfo

Açık belgeler listesine belge ekler.

virtual BOOL CreateDocumentInfo(CDocument* pDocument);

Parametreler

pDocument
[in] bir işaretçisi CDocument. Bu yöntem, bu CDocumentiçin belge bilgilerini oluşturur.

Dönüş Değeri

Varsayılan uygulama TRUE döndürür.

Açıklamalar

Bu yöntem, belgeyi eklemeden önce pDocument'ın zaten belge listesinde olup olmadığını denetler. pDocument zaten listedeyse, bu yöntem pDocument ile ilişkili otomatik kaydedilen dosyayı siler.

Bu yöntemi kullanmak için AFX_RESTART_MANAGER_AUTOSAVE_AT_RESTART veya AFX_RESTARTMANAGER_AUTOSAVE_AT_INTERVAL m_dwRestartManagerSupportFlags olarak ayarlanmalıdır.

CDataRecoveryHandler::D eleteAllAutosavedFiles

Geçerli otomatik kaydedilen tüm dosyaları siler.

virtual BOOL DeleteAllAutosavedFiles();

Dönüş Değeri

Varsayılan uygulama her zaman TRUE döndürür.

CDataRecoveryHandler::D eleteAutosavedFile

Belirtilen otomatik kaydedilen dosyayı siler.

virtual BOOL DeleteAutosavedFile(const CString& strAutosavedFile);

Parametreler

strAutosavedFile
[in] Otomatik olarak kaydedilen dosya adını içeren bir dize.

Dönüş Değeri

Varsayılan uygulama her zaman TRUE döndürür.

Açıklamalar

Bu yöntem otomatik kaydedilen dosyayı silemiyorsa, dosyanın adını bir listeye kaydeder. için yıkıcı, CDataRecoveryHandler bu listede belirtilen otomatik olarak kaydedilen her dosyayı silmeye çalışır.

CDataRecoveryHandler::GenerateAutosaveFileName

Sağlanan belge dosyası adıyla ilişkilendirilmiş bir otomatik kaydetme dosyasının adını oluşturur.

virtual CString GenerateAutosaveFileName(const CString& strDocumentName) const;

Parametreler

strDocumentName
[in] Belge adını içeren bir dize. GenerateAutosaveFileName ilgili otomatik kaydetme dosya adını oluşturmak için bu belge adını kullanır.

Dönüş Değeri

strDocumentName öğesinden oluşturulan otomatik kaydetme dosyası adı.

Açıklamalar

Her belge adının otomatik kaydetme dosya adıyla bire bir eşlemesi vardır.

CDataRecoveryHandler::GetAutosaveInterval

Otomatik kaydetme denemeleri arasındaki aralığı döndürür.

virtual int GetAutosaveInterval() const;

Dönüş Değeri

Otomatik kaydetme denemeleri arasındaki milisaniye sayısı.

CDataRecoveryHandler::GetAutosavePath

Otomatik olarak kaydedilen dosyaların yolunu döndürür.

virtual CString GetAutosavePath() const;

Dönüş Değeri

Otomatik kaydedilen belgelerin depolandığı konum.

CDataRecoveryHandler::GetDocumentListName

Nesneden CDocument belge adını alır.

virtual CString GetDocumentListName(CDocument* pDocument) const;

Parametreler

pDocument
[in] bir işaretçisi CDocument. GetDocumentListName belge adını bu CDocumentkonumundan alır.

Dönüş Değeri

pDocument'dan belge adı.

Açıklamalar

m_mapDocNameToAutosaveNameCDataRecoveryHandler, m_mapDocNameToDocumentPtr ve m_mapDocNameToRestoreBool anahtar olarak belge adını kullanır. Bu parametre nesneleri izlemesiniCDocument, dosya adını otomatik kaydetmeyi ve otomatik kaydetme ayarlarını etkinleştirirCDataRecoveryHandler.

CDataRecoveryHandler::GetNormalDocumentTitle

Belirtilen belge için normal başlığı alır.

virtual CString GetNormalDocumentTitle(CDocument* pDocument);

Parametreler

pDocument
[in] bir işaretçisi CDocument.

Dönüş Değeri

Belirtilen belge için normal başlık.

Açıklamalar

Belgenin normal başlığı genellikle yolu olmayan belgenin dosya adıdır. Bu, Farklı Kaydet iletişim kutusunun Dosya adı alanındaki başlıktır.

CDataRecoveryHandler::GetRecoveredDocumentTitle

Kurtarılan belgenin başlığını oluşturur ve döndürür.

virtual CString GetRecoveredDocumentTitle(const CString& strDocumentTitle) const;

Parametreler

strDocumentTitle
[in] Belgenin normal başlığı.

Dönüş Değeri

Kurtarılan belge başlığı.

Açıklamalar

Varsayılan olarak, bir belgenin kurtarılan başlığı, sonuna [kurtarılan] eklenmiş normal başlıktır. Kurtarılan başlık, otomatik kaydedilen belgeleri geri yüklemek için kullanıcıyı sorguladığında CDataRecoveryHandler kullanıcıya görüntülenir.

CDataRecoveryHandler::GetRestartIdentifier

Uygulamanın benzersiz yeniden başlatma tanımlayıcısını alır.

virtual CString GetRestartIdentifier() const;

Dönüş Değeri

Benzersiz yeniden başlatma tanımlayıcısı.

Açıklamalar

Yeniden başlatma tanımlayıcısı, uygulamanın her yürütmesi için benzersizdir.

, CDataRecoveryHandler şu anda açık olan belgelerle ilgili bilgileri kayıt defterinde depolar. Yeniden başlatma yöneticisi bir uygulamadan çıkıp uygulamayı yeniden başlattığınızda, yeniden başlatma tanımlayıcısını öğesine CDataRecoveryHandlersağlar. , CDataRecoveryHandler daha önce açık olan belgelerin listesini almak için yeniden başlatma tanımlayıcısını kullanır. Bu, öğesinin CDataRecoveryHandler otomatik kaydedilen dosyaları bulmayı ve geri yüklemeyi denemesini sağlar.

CDataRecoveryHandler::GetSaveDocumentInfoOnIdle

öğesinin CDataRecoveryHandler geçerli boşta döngüsünde otomatik kaydetme gerçekleştirip gerçekleştirmediğini gösterir.

virtual BOOL GetSaveDocumentInfoOnIdle() const;

Dönüş Değeri

TRUE, geçerli boşta döngüsündeki otomatik doğrulamaları gösterir CDataRecoveryHandler ; YANLIŞ, olmadığını gösterir.

CDataRecoveryHandler::GetShutdownByRestartManager

Yeniden başlatma yöneticisinin uygulamanın çıkışa neden olup olmadığını gösterir.

virtual BOOL GetShutdownByRestartManager() const;

Dönüş Değeri

TRUE, yeniden başlatma yöneticisinin uygulamanın çıkışa neden olduğunu gösterir; YANLIŞ, olmadığını gösterir.

CDataRecoveryHandler::Initialize

CDataRecoveryHandleröğesini başlatır.

virtual BOOL Initialize();

Dönüş Değeri

Başlatma başarılı olursa TRUE; aksi takdirde YANLIŞ.

Açıklamalar

Başlatma işlemi, kayıt defterinden otomatik kaydetme dosyalarını depolama yolunu yükler. Initialize Yöntem bu dizini bulamazsa veya yol NULL ise başarısız Initialize olur ve döndürürFALSE.

Uygulamanız tarafından başlatıldıktan CDataRecoveryHandlersonra otomatik kaydetme yolunu değiştirmek için CDataRecoveryHandler::SetAutosavePath kullanın.

Yöntemi ayrıca Initialize bir sonraki otomatik kaydetme işlemi gerçekleştiğinde izlemek için bir zamanlayıcı başlatır. Uygulamanız tarafından başlatıldıktan CDataRecoveryHandlersonra otomatik kaydetme aralığını değiştirmek için CDataRecoveryHandler::SetAutosaveInterval kullanın.

CDataRecoveryHandler::QueryRestoreAutosavedDocuments

Otomatik olarak kaydedilen her belge CDataRecoveryHandler için kullanıcıya bir iletişim kutusu görüntüler. İletişim kutusu, kullanıcının otomatik olarak kaydedilen belgeyi geri yüklemek isteyip istemediğini belirler.

virtual void QueryRestoreAutosavedDocuments();

Açıklamalar

Uygulamanız Unicode ise, bu yöntem kullanıcıya bir CTaskDialog görüntüler. Aksi takdirde, çerçeve kullanıcıyı sorgulamak için AfxMessageBox kullanır.

Kullanıcıdan gelen tüm yanıtları topladıktan sonra QueryRestoreAutosavedDocuments bilgileri m_mapDocNameToRestoreBool üye değişkeninde depolar. Bu yöntem, otomatik olarak kaydedilen belgeleri geri yüklemez.

CDataRecoveryHandler::ReadOpenDocumentList

Açık belge listesini kayıt defterinden yükler.

virtual BOOL ReadOpenDocumentList();

Dönüş Değeri

DOĞRU, kayıt defterinden en az bir belgenin bilgilerini yüklediğini ReadOpenDocumentList gösterir; YANLIŞ, hiçbir belge bilgisinin yüklenmediğini gösterir.

Açıklamalar

Bu işlev, açık belge bilgilerini kayıt defterinden yükler ve m_mapDocNameToAutosaveName üye değişkeninde depolar.

Tüm verileri yükledikten sonra ReadOpenDocumentList , belge bilgilerini kayıt defterinden siler.

CDataRecoveryHandler::RemoveDocumentInfo

Sağlanan belgeyi açık belge listesinden kaldırır.

virtual BOOL RemoveDocumentInfo(CDocument* pDocument);

Parametreler

pDocument
[in] Kaldırılacak belge işaretçisi.

Dönüş Değeri

pDocument listeden kaldırıldıysa TRUE; Hata oluştuysa YANLIŞ.

Açıklamalar

Kullanıcı bir belgeyi kapattığında, çerçeve bu yöntemi kullanarak belgeyi açık belgeler listesinden kaldırır.

Açık belgeler listesinde pDocument bulunamazsa RemoveDocumentInfo hiçbir şey yapmaz ve TRUE döndürür.

Bu yöntemi kullanmak için AFX_RESTART_MANAGER_REOPEN_PREVIOUS_FILES m_dwRestartManagerSupportFlags olarak ayarlanmalıdır.

CDataRecoveryHandler::ReopenPreviousDocuments

Daha önce açık olan belgeleri açar.

virtual BOOL ReopenPreviousDocuments();

Dönüş Değeri

En az bir belge açıldıysa DOĞRU; aksi takdirde YANLIŞ.

Açıklamalar

Bu yöntem, daha önce açık olan belgelerin en son kaydetmesini açar. Bir belge kaydedilmediyse veya otomatik olarak kaydedilmediyse, ReopenPreviousDocuments bu dosya türünün şablonunu temel alan boş bir belge açar.

Bu yöntemi kullanmak için AFX_RESTART_MANAGER_REOPEN_PREVIOUS_FILES m_dwRestartManagerSupportFlags olarak ayarlanmalıdır. Bu parametre ayarlanmazsa hiçbir ReopenPreviousDocuments şey yapmaz ve YANLIŞ döndürür.

Daha önce açık olan belgeler listesinde depolanan belge yoksa, ReopenPreviousDocuments hiçbir şey yapmaz ve YANLIŞ döndürür.

CDataRecoveryHandler::RestoreAutosavedDocuments

Kullanıcı girişlerine göre otomatik olarak kaydedilen belgeleri geri yükler.

virtual BOOL RestoreAutosavedDocuments();

Dönüş Değeri

Bu yöntem belgeleri başarıyla geri yüklerse TRUE.

Açıklamalar

Bu yöntem, kullanıcının hangi belgeleri geri yüklemek istediğini belirlemek için CDataRecoveryHandler::QueryRestoreAutosavedDocuments öğesini çağırır. Kullanıcı otomatik kaydedilen bir belgeyi geri yüklememeye karar verirse, RestoreAutosavedDocuments otomatik kaydetme dosyasını siler. Aksi takdirde, RestoreAutosavedDocuments açık belgeyi otomatik olarak kaydedilen sürümle değiştirir.

Bu yöntemi kullanmak için AFX_RESTART_MANAGER_REOPEN_PREVIOUS_FILES veya AFX_RESTART_MANAGER_RESTORE_AUTOSAVED_FILES içinde m_dwRestartManagerSupportFlagsayarlanmalıdır.

CDataRecoveryHandler::SaveOpenDocumentList

Açık belgelerin geçerli listesini Windows kayıt defterine kaydeder.

virtual BOOL SaveOpenDocumentList();

Dönüş Değeri

Kaydedilecek açık belge yoksa veya başarıyla kaydedildiyse TRUE. Kayıt defterine kaydedilecek belgeler varsa, ancak bir hata oluştuğundan kaydedilmemişse YANLIŞ.

Açıklamalar

Yeniden başlatma yöneticisi, uygulama beklenmedik bir şekilde çıktığında veya yükseltme için çıktığında çağırır SaveOpenDocumentList . Uygulama yeniden başlatıldığında, açık belgelerin listesini almak için CDataRecoveryHandler::ReadOpenDocumentList kullanır.

Bu yöntem yalnızca açık belgelerin listesini kaydeder. CDataRecoveryHandler::AutosaveDocumentInfo yöntemi, belgeleri kaydetmekle sorumludur.

CDataRecoveryHandler::SetAutosaveInterval

Otomatik kaydetme döngüleri arasındaki süreyi milisaniye cinsinden ayarlar.

Virtual void SetAutosaveInterval(int nAutosaveInterval);

Parametreler

nAutosaveInterval
[in] Milisaniye cinsinden yeni otomatik kaydetme aralığı.

CDataRecoveryHandler::SetAutosavePath

Otomatik kaydedilen dosyaların depolandığı dizini ayarlar.

virtual void SetAutosavePath(const CString& strAutosavePath);

Parametreler

strAutosavePath
[in] Otomatik kaydetme dosyalarının depolandığı yol.

Açıklamalar

Otomatik kaydetme dizininin değiştirilmesi, otomatik olarak kaydedilen dosyaları taşımaz.

CDataRecoveryHandler::SetRestartIdentifier

bu örneği için benzersiz yeniden başlatma tanımlayıcısını CDataRecoveryHandlerayarlar.

virtual void SetRestartIdentifier(const CString& strRestartIdentifier);

Parametreler

strRestartIdentifier
[in] Yeniden başlatma yöneticisinin benzersiz tanımlayıcısı.

Açıklamalar

Yeniden başlatma yöneticisi, kayıt defterindeki açık belgeler hakkındaki bilgileri kaydeder. Bu bilgiler anahtar olarak benzersiz yeniden başlatma tanımlayıcısıyla depolanır. Yeniden başlatma tanımlayıcısı bir uygulamanın her örneği için benzersiz olduğundan, bir uygulamanın birden çok örneği beklenmedik bir şekilde çıkabilir ve yeniden başlatma yöneticisi bunların her birini kurtarabilir.

CDataRecoveryHandler::SetSaveDocumentInfoOnIdle

geçerli boşta kalma döngüsü sırasında açık belge bilgilerinin Windows kayıt defterine kaydedilip kaydedilmeyeceğini CDataRecoveryHandler ayarlar.

virtual void SetSaveDocumentInfoOnIdle(BOOL bSaveOnIdle);

Parametreler

bSaveOnIdle
[in] Geçerli boşta kalma döngüsü sırasında belge bilgilerini kaydetmek için TRUE; Kaydetme işlemi gerçekleştirmemek için YANLIŞ.

CDataRecoveryHandler::SetShutdownByRestartManager

Uygulamanın önceki çıkışının yeniden başlatma yöneticisinden kaynaklanıp kaynaklandığını ayarlar.

virtual void SetShutdownByRestartManager(BOOL bShutdownByRestartManager);

Parametreler

bShutdownByRestartManager
[in] Uygulamanın çıkışa yeniden başlatma yöneticisinin neden olduğunu belirtmek için TRUE; Uygulamanın başka bir nedenle çıktığını belirtmek için YANLIŞ.

Açıklamalar

Çerçeve, önceki çıkışın beklenmeyen olmasına veya yeniden başlatma yöneticisi tarafından başlatılıp başlatılmadığına bağlı olarak farklı davranır.

CDataRecoveryHandler::UpdateDocumentInfo

Kullanıcı belgeyi kaydettiğinden, belgenin bilgilerini güncelleştirir.

virtual BOOL UpdateDocumentInfo(CDocument* pDocument);

Parametreler

pDocument
[in] Kaydedilen belgenin işaretçisi.

Dönüş Değeri

Bu yöntem otomatik olarak kaydedilen belgeyi silip belge bilgilerini güncelleştirdiyse TRUE; Hata oluştuysa YANLIŞ.

Açıklamalar

Kullanıcı belgeyi kaydettiğinde, uygulama artık gerekli olmadığından otomatik olarak kaydedilen dosyayı kaldırır. UpdateDocumentInfoCDataRecoveryHandler::RemoveDocumentInfo çağrısı yaparak otomatik kaydedilen dosyayı siler. UpdateDocumentInfoardından pDocument'dan bilgileri açık olan belgeler listesine ekler çünkü RemoveDocumentInfo bu bilgiler silinir, ancak kaydedilen belge hala açık durumdadır.

Bu yöntemi kullanmak için AFX_RESTART_MANAGER_REOPEN_PREVIOUS_FILES m_dwRestartManagerSupportFlags olarak ayarlanmalıdır.

Ayrıca bkz.

Sınıflar
Hiyerarşi Grafiği
CObject Sınıfı
Nasıl yapılır: Yeniden Başlatma Yöneticisi Desteği Ekleme