Bagikan melalui


UIPermission.Intersect(IPermission) Metode

Definisi

Membuat dan mengembalikan izin yang merupakan persimpangan izin saat ini dan izin yang ditentukan.

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

Izin untuk bersinggungan dengan izin saat ini. Jenisnya harus sama dengan izin saat ini.

Mengembalikan

Izin baru yang mewakili persimpangan izin saat ini dan izin yang ditentukan. Izin baru ini adalah null jika persimpangan kosong.

Pengecualian

Parameter target bukan null dan bukan tipe yang sama dengan izin saat ini.

Contoh

Contoh kode berikut menunjukkan perilaku Intersect metode . Contoh ini adalah bagian dari contoh yang lebih besar yang disediakan untuk UIPermission kelas .

Catatan

Contoh kode dimaksudkan untuk menunjukkan perilaku metode , bukan untuk menunjukkan penggunaannya. Secara umum, metode kelas izin digunakan oleh infrastruktur keamanan; mereka biasanya tidak digunakan dalam aplikasi.

// 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

Keterangan

Persimpangan dua izin adalah izin yang menjelaskan serangkaian operasi yang mereka jelaskan secara umum. Secara khusus, ini mewakili nilai dan UIPermissionClipboard dari nilai UIPermissionWindow yang paling tidak permisif dari mereka yang berada dalam izin saat ini dan izin yang ditentukan.

Berlaku untuk