Aracılığıyla paylaş


InprocServer32

32 bit işlem içi sunucuyu kaydeder ve sunucunun çalıştırabileceği dairenin iş parçacığı modelini belirtir.

Kayıt Defteri Girdisi

HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID
   {CLSID}
      InprocServer32
         (Default) = path
         ThreadingModel = value

Açıklamalar

ThreadingModel, iş parçacığı modelini belirten REG_SZ bir değerdir. Olası değerler aşağıdaki tabloda gösterilmiştir.

Değer Açıklama
Daire Tek iş parçacıklı daire
Her ikisi Tek iş parçacıklı veya çok iş parçacıklı daire
Serbest Çok iş parçacıklı daire
Nötr Nötr daire

 

İşlem içi sunucu tarafından sağlanan her nesne için aynı değeri kullanmanız gerekir.

ThreadingModel yoksa veya bir değere ayarlanmadıysa, sunucu işlemde başlatılan ilk daireye yüklenir. Bu daire bazen ana tek iş parçacıklı daire (STA) olarak adlandırılır. Bir işlemdeki ilk STA, CoInitializeveya CoInitializeExiçin açık bir çağrı yerine COM tarafından başlatılırsa, buna konak STA adı verilir. Örneğin, yüklenecek bir işlem içi sunucu STA gerektiriyorsa ancak şu anda işlemde STA yoksa, COM bir konak STA oluşturur.

Mümkün olduğunda, işlem içi sunucu, onu yükleyen istemciyle aynı daireye yüklenir. İstemci dairesinin iş parçacığı modeli belirtilen modelle uyumlu değilse, sunucu aşağıdaki tabloda gösterildiği gibi yüklenir.

Sunucunun iş parçacığı modeli Apartman sunucusu içinde çalıştırılıyor
belirtilen <\n> Ana STA
Her ikisi Müşteriyle aynı daire
Serbest Çok iş parçacıklı daire
Nötr Nötr daire

 

Sunucunun iş parçacığı modeli Apartment ise, sunucunun yüklendiği daire, aşağıdaki tabloda belirtildiği gibi istemcinin içinde çalıştığı daireye bağlıdır.

Apartman istemcisi içinde çalıştırılıyor Apartman sunucusu içinde çalıştırılıyor
Okuyuculu Ana Bilgisayar STA'sı
Nötr (STA iş parçacığında) Müşteriyle aynı daire
Nötr (MTA iş parçacığında) Ana Bilgisayar STA'sı

 

COM ayrıca bir konak çok iş parçacıklı daire (MTA) oluşturabilir. Tek iş parçacıklı bir apartmandaki bir istemci, işlemde MTA olmadığında iş parçacığı modeli Ücretsiz olan işlem içi bir sunucu isterse, COM bir konak MTA oluşturur ve sunucuyu buna yükler.

32 bit işlem içi sunucu için InprocHandler32, InprocServer, InprocServer32ve Eklenebilir anahtarları kaydedilmelidir. InprocServer girdisi yalnızca geriye dönük uyumluluk için gereklidir. Eksikse, sınıf çalışmaya devam eder ancak 16 bit uygulamalarda yüklenemez.

Kapsayıcı kayıt defterinde işlem içi sunucu arıyorsa, 16 bit sürümün önceliği 16 bit kapsayıcıdadır ve 32 bit sürümün önceliği 32 bit kapsayıcıdır.

InprocServer