Aracılığıyla paylaş


EventWaitHandleAcl.Create Yöntem

Tanım

Olay oluşturma sırasında bir örneğin isteğe bağlı olarak ayarlanmasını sağlayarak bir EventWaitHandleEventWaitHandleSecurity örneği alır veya oluşturur.

public:
 static System::Threading::EventWaitHandle ^ Create(bool initialState, System::Threading::EventResetMode mode, System::String ^ name, [Runtime::InteropServices::Out] bool % createdNew, System::Security::AccessControl::EventWaitHandleSecurity ^ eventSecurity);
public static System.Threading.EventWaitHandle Create (bool initialState, System.Threading.EventResetMode mode, string? name, out bool createdNew, System.Security.AccessControl.EventWaitHandleSecurity? eventSecurity);
static member Create : bool * System.Threading.EventResetMode * string * bool * System.Security.AccessControl.EventWaitHandleSecurity -> System.Threading.EventWaitHandle
Public Shared Function Create (initialState As Boolean, mode As EventResetMode, name As String, ByRef createdNew As Boolean, eventSecurity As EventWaitHandleSecurity) As EventWaitHandle

Parametreler

initialState
Boolean

true adlandırılmış olay bu çağrının sonucu olarak oluşturulduysa ilk durumu sinyal olarak ayarlamak için; false öğesini işaretsiz olarak ayarlayın.

mode
EventResetMode

Olayın otomatik olarak mı yoksa el ile mi sıfırlandığını belirleyen sabit listesi değerlerinden biri.

name
String

Eşitleme nesnesi diğer işlemlerle paylaşılacaksa adı; aksi takdirde veya null boş bir dize. Bu ad büyük/küçük harfe duyarlıdır. Ters eğik çizgi karakteri (\) ayrılmıştır ve yalnızca bir ad alanı belirtmek için kullanılabilir. Ad alanları hakkında daha fazla bilgi için açıklamalar bölümüne bakın. İşletim sistemine bağlı olarak ad üzerinde başka kısıtlamalar da olabilir. Örneğin, Unix tabanlı işletim sistemlerinde ad alanı dışlanmadan sonraki ad geçerli bir dosya adı olmalıdır.

createdNew
Boolean

Bu yöntem döndürdüğünde, yerel bir olay oluşturulduğunda, yani veya Emptyolduğunda namenull bu bağımsız değişken her zaman olarak ayarlanırtrue. Geçerli, boş olmayan bir değere sahipse name , bu bağımsız değişken true sistem olayı oluşturulduğunda olarak ayarlanır veya bu adla mevcut bir sistem olayı bulunursa olarak ayarlanır false .

eventSecurity
EventWaitHandleSecurity

Uygulanacak isteğe bağlı Windows erişim denetimi güvenliği.

Döndürülenler

İstenen olay bekleme tutamacını temsil eden nesne.

Özel durumlar

Sabit mode listesi değeri yasal aralığın dışındaydı.

-veya-

Yalnızca .NET Framework: name MAX_PATH'den (260 karakter) uzundur.

Sabit mode listesi değeri yasal aralığın dışındaydı. Bazı durumlarda ArgumentException bunun yerine oluşturulur.

name geçersizdir. Bu, bilinmeyen bir ön ek veya geçersiz karakterler gibi işletim sistemi tarafından konulabilecek bazı kısıtlamalar da dahil olmak üzere çeşitli nedenlerle olabilir. Adın ve ortak ön eklerin "Genel\" ve "Yerel\" büyük/küçük harfe duyarlı olduğunu unutmayın.

-veya-

Başka bir hata oluştu. Özelliği HResult daha fazla bilgi sağlayabilir.

Yalnızca Windows: name bilinmeyen bir ad alanı belirtti. Daha fazla bilgi için bkz . Nesne Adları .

name Çok uzun. Uzunluk kısıtlamaları işletim sistemine veya yapılandırmaya bağlı olabilir.

Sağlanan name ile bir eşitleme nesnesi oluşturulamıyor. Farklı türde bir eşitleme nesnesi aynı ada sahip olabilir.

Adlandırılmış olay var, ancak kullanıcının istenen güvenlik erişimi yok.

Yalnızca .NET Framework: name Uzunluk MAX_PATH (260 karakter) ötesindedir.

Açıklamalar

name bir ad alanı belirtmek için veya Local\ ön ekine Global\ sahip olabilir. Ad alanı belirtildiğinde Global , eşitleme nesnesi sistemdeki tüm işlemlerle paylaşılabilir. Local Ad alanı belirtilmediğinde de varsayılan olan ad alanı belirtildiğinde, eşitleme nesnesi aynı oturumdaki işlemlerle paylaşılabilir. Windows'da oturum, oturum açma oturumudur ve hizmetler genellikle etkileşimli olmayan farklı bir oturumda çalışır. Unix benzeri işletim sistemlerinde her kabuğun kendi oturumu vardır. Oturum yerel eşitleme nesneleri, tümü aynı oturumda çalıştırıldığı bir üst/alt ilişki ile işlemler arasında eşitleme için uygun olabilir. Windows'da eşitleme nesnesi adları hakkında daha fazla bilgi için bkz. Nesne Adları.

bir name sağlanırsa ve istenen türdeki bir eşitleme nesnesi ad alanında zaten varsa, var olan eşitleme nesnesi açılır. Ad alanında farklı türde bir eşitleme nesnesi zaten varsa, bir WaitHandleCannotBeOpenedException oluşturulur. Aksi takdirde, yeni bir eşitleme nesnesi oluşturulur.

Dikkat

Varsayılan olarak, adlandırılmış bir olay onu oluşturan kullanıcıyla sınırlı değildir. Diğer kullanıcılar, uygun olmayan bir şekilde ayarlayarak veya sıfırlayarak olaya müdahale etmek de dahil olmak üzere olayı açabilir ve kullanabilir. Belirli kullanıcılara erişimi kısıtlamak için, adlandırılmış olayı oluştururken bir EventWaitHandleSecurity geçirebilirsiniz. Kod çalıştıran güvenilmeyen kullanıcılara sahip olabilecek sistemlerde erişim kısıtlamaları olmadan adlandırılmış olayları kullanmaktan kaçının.

Şunlara uygulanır