Kalıcı Nesne Arabirimleri

Kalıcı nesne, bir veya daha fazlakalıcı nesne arabirimi uygular. İstemciler, bu nesnelere durumlarını ne zaman ve nerede depoacaklarını bildirmek için kalıcı nesne arabirimleri kullanır. Tüm kalıcı nesne arabirimleri IPersisttüretilir, bu nedenle herhangi bir kalıcı nesne arabirimini uygulayan tüm nesneler de IPersistuygular.

Şu anda aşağıdaki kalıcı nesne arabirimleri tanımlanmıştır:

Uygulayıcılar, nesnenin nasıl kullanılacağına bağlı olarak bir nesnenin hangi kalıcı nesne arabirimlerini desteklediğini seçer. Hiçbir kalıcı nesne arabirimini desteklemeyerek uygulayıcı etkili bir şekilde "Bu nesnenin durumu kalıcı olarak depolanamaz" diyor. Uygulayıcı, bir veya daha fazla kalıcı nesne arabirimini destekleyerek etkili bir şekilde "Bu nesnenin durumu kalıcı olarak bir veya daha fazla veri deposu aracında depolanabilir".

Örneğin, aşağıdaki tabloda farklı kalıcı nesne arabirimleri için destek sağlayan çeşitli nesne türleri listelenmiştir.

Kategori Kalıcı nesne arabirimleri genellikle desteklenir
Takma ad
IPersistStream
OLE eklenebilir nesneler
IPersistStorage, IPersistFile
ActiveX denetimleri
IPersistStreamInit, IPersistStorage, IPersistMemory, IPersistPropertyBag, IPersistMoniker
ActiveX belge nesneleri
IPersistStorage, IPersistFile

İstemci uygulayıcıları, istemcinin hangi kalıcı nesne arabirimlerini kullanabileceğini de seçebilir. İstemcinin kullandığı arabirimler genellikle istemcinin kendi verilerini depoladığı yere göre belirlenir. Verilerini yalnızca düz bir dosyada depolayan bir istemci büyük olasılıkla yalnızca IPersistStreamInit, IPersistMonikerve IPersistPropertyBagkullanır. (IPersistStreamInit çoğu uygulamada IPersistStreamdeğiştirebilir, çünkü bu tanımı içerir ve bir başlatma yöntemi ekler.) Verilerini yapılandırılmış bir depolama dosyasına kaydedebilen bir istemci ayrıca IPersistStoragekullanır.

Kalıcı Nesneleri Başlatma