UIPermission.Intersect(IPermission) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Geçerli iznin ve belirtilen iznin kesişimi olan bir izin oluşturur ve döndürür.
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
Parametreler
- target
- IPermission
Geçerli izinle kesişmek için bir izin. Geçerli izinle aynı türde olmalıdır.
Döndürülenler
Geçerli iznin ve belirtilen iznin kesişimini temsil eden yeni bir izin. Bu yeni izin, null
kesişim boşsa olur.
Özel durumlar
target
parametresi geçerli null
izinle aynı türde değil ve değil.
Örnekler
Aşağıdaki kod örneği yönteminin Intersect davranışını gösterir. Bu örnek, sınıfı için UIPermission sağlanan daha büyük bir örneğin parçasıdır.
Not
Kod örneği, yönteminin kullanımını göstermek için değil davranışını göstermek için tasarlanmıştır. Genel olarak, izin sınıflarının yöntemleri güvenlik altyapısı tarafından kullanılır; bunlar genellikle uygulamalarda kullanılmaz.
// 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
Açıklamalar
İki iznin kesişimi, her ikisinin de ortak olarak açıkladıkları işlem kümesini açıklayan bir izindir. Özellikle, geçerli izindeki ve belirtilen izindekilerin UIPermissionWindow ve UIPermissionClipboard değerlerinin en az izin veren değerlerini temsil eder.