EventWaitHandleAcl.Create Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo vytvoří EventWaitHandle instanci, což umožňuje, aby EventWaitHandleSecurity instance byla volitelně určena k nastavení během vytváření události.
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
Parametry
- initialState
- Boolean
true
nastavit počáteční stav signalizovat, pokud je v důsledku tohoto volání vytvořena pojmenovaná událost; false
a nastavte ho na non-signaled.
- mode
- EventResetMode
Jedna z hodnot výčtu, která určuje, jestli se událost resetuje automaticky nebo ručně.
- name
- String
Název, pokud synchronizační objekt má být sdílen s jinými procesy; null
nebo prázdný řetězec. V názvu se rozlišují velká a malá písmena. Znak zpětného lomítka (\) je vyhrazený a lze ho použít pouze k určení oboru názvů. Další informace o oborech názvů najdete v části s poznámkami. V závislosti na operačním systému můžou existovat další omezení pro název. Například v operačních systémech se systémem Unix musí být název po vyloučení oboru názvů platný název souboru.
- createdNew
- Boolean
Když tato metoda vrátí, je tento argument vždy nastaven na true
, pokud je vytvořena místní událost, tj. když name
je null
nebo Empty. Pokud name
má platnou, neprázdnou hodnotu, je tento argument nastaven na true
při vytvoření systémové události nebo je nastaven na false
hodnotu, pokud je nalezena existující systémová událost s tímto názvem.
- eventSecurity
- EventWaitHandleSecurity
Volitelné zabezpečení řízení přístupu ve Windows, které se má použít.
Návraty
Objekt, který představuje popisovač čekání události podle požadavku.
Výjimky
Hodnota mode
výčtu byla mimo zákonný rozsah.
-nebo-
Pouze rozhraní .NET Framework: name
je delší než MAX_PATH (260 znaků).
Hodnota mode
výčtu byla mimo zákonný rozsah. V některých případech ArgumentException je místo toho vyvolán.
Formát name
je neplatný. Může to být z různých důvodů, včetně některých omezení, která může operační systém umístit, jako je neznámá předpona nebo neplatné znaky. Všimněte si, že v názvu a běžných předponách Global a Local se rozlišují velká a malá písmena.
-nebo-
Došlo k jiné chybě. Vlastnost HResult
může poskytnout další informace.
Pouze windows: name
zadaný neznámý obor názvů. Další informace najdete v tématu Názvy objektů .
Je name
moc dlouhý. Omezení délky mohou záviset na operačním systému nebo konfiguraci.
Objekt synchronizace se zadaným name
objektem nelze vytvořit. Objekt synchronizace jiného typu může mít stejný název.
Pojmenovaná událost existuje, ale uživatel nemá požadovaný přístup zabezpečení.
Pouze rozhraní .NET Framework: Délka name
přesahuje MAX_PATH (260 znaků).
Poznámky
Předpona name
Global\
může mít předponu nebo Local\
k určení oboru názvů. Při zadání Global
oboru názvů může být synchronizační objekt sdílen s libovolnými procesy v systému. Local
Pokud je zadán obor názvů, což je také výchozí, pokud není zadán žádný obor názvů, synchronizační objekt může být sdílen s procesy ve stejné relaci. V systému Windows je relace přihlášení a služby obvykle běží v jiné neinteraktivní relaci. V unixových operačních systémech má každé prostředí svoji vlastní relaci. Objekty místní synchronizace relace mohou být vhodné pro synchronizaci mezi procesy s nadřazeným a podřízeným vztahem, kde se všechny spouští ve stejné relaci. Další informace o názvech objektů synchronizace ve Windows najdete v tématu Názvy objektů.
name
Pokud je zadaný objekt synchronizace požadovaného typu již v oboru názvů existuje, otevře se existující objekt synchronizace. Pokud v oboru názvů již existuje objekt synchronizace jiného typu, WaitHandleCannotBeOpenedException
vyvolá se objekt . V opačném případě se vytvoří nový objekt synchronizace.
Upozornění
Ve výchozím nastavení není pojmenovaná událost omezena na uživatele, který ji vytvořil. Jiní uživatelé můžou událost otevřít a používat, včetně narušení události jejím nevhodným nastavením nebo resetováním. Pokud chcete omezit přístup na konkrétní uživatele, můžete předat objekt EventWaitHandleSecurity při vytváření pojmenované události. Vyhněte se používání pojmenovaných událostí bez omezení přístupu v systémech, které můžou mít nedůvěryhodné uživatele se spuštěným kódem.
Platí pro
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro