UIPermission.Intersect(IPermission) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt eine Berechtigung als Schnittmenge der aktuellen und der angegebenen Berechtigung und gibt diese zurück.
public:
override System::Security::IPermission ^ Intersect(System::Security::IPermission ^ target);
public override System.Security.IPermission Intersect (System.Security.IPermission target);
override this.Intersect : System.Security.IPermission -> System.Security.IPermission
Public Overrides Function Intersect (target As IPermission) As IPermission
Parameter
- target
- IPermission
Eine Berechtigung für die Überschneidung mit der aktuellen Berechtigung. Sie muss vom selben Typ wie die aktuelle Berechtigung sein.
Gibt zurück
Eine neue Berechtigung, die die Schnittmenge der aktuellen und der angegebenen Berechtigung darstellt. Diese neue Berechtigung ist null
, wenn die Schnittmenge leer ist.
Ausnahmen
Der target
-Parameter ist nicht null
und weist nicht denselben Typ wie die aktuelle Berechtigung auf.
Beispiele
Das folgende Codebeispiel zeigt das Verhalten der Intersect -Methode. Dieses Beispiel ist Teil eines größeren Beispiels, das für die UIPermission -Klasse bereitgestellt wird.
Hinweis
Das Codebeispiel soll das Verhalten der Methode und nicht deren Verwendung veranschaulichen. Im Allgemeinen werden die Methoden der Berechtigungsklassen von der Sicherheitsinfrastruktur verwendet. sie werden in der Regel nicht in Anwendungen verwendet.
// Intersect creates and returns a new permission that is the intersection of the
// current permission and the permission specified.
void IntersectDemo()
{
Console::WriteLine("\n********************** Intersect() Demo ***********************\n");
UIPermission ^ uiPerm1 = gcnew UIPermission(UIPermissionWindow::SafeTopLevelWindows,UIPermissionClipboard::OwnClipboard);
UIPermission ^ uiPerm2 = gcnew UIPermission(UIPermissionWindow::SafeSubWindows,UIPermissionClipboard::NoClipboard);
UIPermission ^ p3 = (UIPermission^)uiPerm1->Intersect(uiPerm2);
Console::WriteLine(" The intersection of {0} and \n\t{1} = {2} ", uiPerm1->Window,
uiPerm1->Window, (nullptr != p3)?p3->Window.ToString():"null");
Console::WriteLine(" The intersection of " + uiPerm1->Clipboard.ToString() + " and \n\t" +
uiPerm2->Clipboard.ToString() + " is " + p3->Clipboard.ToString());
}
// Intersect creates and returns a new permission that is the intersection of the
// current permission and the permission specified.
private static void IntersectDemo()
{
UIPermission uiPerm1 = new UIPermission(UIPermissionWindow.SafeTopLevelWindows, UIPermissionClipboard.OwnClipboard);
UIPermission uiPerm2 = new UIPermission(UIPermissionWindow.SafeSubWindows, UIPermissionClipboard.NoClipboard);
UIPermission p3 = (UIPermission)uiPerm1.Intersect(uiPerm2);
Console.WriteLine("The intersection of " + uiPerm1.Window.ToString() + " and \n\t" +
uiPerm2.Window.ToString() + " is " + p3.Window.ToString() + "\n");
Console.WriteLine("The intersection of " + uiPerm1.Clipboard.ToString() + " and \n\t" +
uiPerm2.Clipboard.ToString() + " is " + p3.Clipboard.ToString() + "\n");
}
' Intersect creates and returns a new permission that is the intersection of the
' current permission and the permission specified.
Private Shared Sub IntersectDemo()
Dim uiPerm1 As New UIPermission(UIPermissionWindow.SafeTopLevelWindows, UIPermissionClipboard.OwnClipboard)
Dim uiPerm2 As New UIPermission(UIPermissionWindow.SafeSubWindows, UIPermissionClipboard.NoClipboard)
Dim p3 As UIPermission = CType(uiPerm1.Intersect(uiPerm2), UIPermission)
Console.WriteLine("The intersection of " + uiPerm1.Window.ToString() + " and " + vbLf + vbTab + uiPerm2.Window.ToString() + " is " + p3.Window.ToString() + vbLf)
Console.WriteLine("The intersection of " + uiPerm1.Clipboard.ToString() + " and " + vbLf + vbTab + uiPerm2.Clipboard.ToString() + " is " + p3.Clipboard.ToString() + vbLf)
End Sub
Hinweise
Die Schnittmenge von zwei Berechtigungen ist eine Berechtigung, die den Satz von Vorgängen beschreibt, die beide gemeinsam beschreiben. Insbesondere stellt es die am wenigsten freizügigen Werte von UIPermissionWindow und UIPermissionClipboard in der aktuellen Berechtigung und der angegebenen Berechtigung dar.