Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

FileIOPermission.Copy Method

Creates and returns an identical copy of the current permission.

Namespace: System.Security.Permissions
Assembly: mscorlib (in mscorlib.dll)

public override IPermission Copy ()
public IPermission Copy ()
public override function Copy () : IPermission

Return Value

A copy of the current permission.

A copy of the permission represents the same access to resources as the original permission.

private bool CopyDemo()
{
    bool returnValue = true;
    string fileIO1;
    FileIOPermission fileIOPerm1, fileIOPerm2;
    FileIOGenerator fileIOGen1 = new FileIOGenerator();
    FileIOGenerator fileIOGen2 = new FileIOGenerator();

    fileIOGen1.ResetIndex();
    while (fileIOGen1.CreateFilePath( out fileIO1 ))
    {
        if (fileIO1 == "")
            fileIOPerm1 = new FileIOPermission(PermissionState.None);
        else
            fileIOPerm1 = new FileIOPermission(FileIOPermissionAccess.Read, fileIO1);

        Console.WriteLine("**********************************************************\n");
        fileIOGen2.ResetIndex();
        try
        {
            fileIOPerm2 = (FileIOPermission)fileIOPerm1.Copy();
            if (fileIOPerm2 != null)
            {
                Console.WriteLine("Result of copy = " + fileIOPerm2.ToString() + "\n");
            }
            else
            {
                Console.WriteLine("Result of copy is null. \n");
            }
        }
        catch (Exception e)
        {
            {
                if (fileIO1 == "")
                {
                    Console.WriteLine("The target FileIOPermission is empty, copy failed.");

                }
                else
                    Console.WriteLine(e);
            }
            continue;
        }
    }
    return returnValue;
}

//Copy creates and returns an identical copy of the current permission.
private boolean CopyDemo() 
{
    boolean returnValue = true;
    String fileIO1[] = new String[1];
    FileIOPermission fileIOPerm1[] = new FileIOPermission[1];
    FileIOPermission fileIOPerm2[] = new FileIOPermission[1];
    FileIOGenerator fileIOGen1 =  new FileIOGenerator();
    FileIOGenerator fileIOGen2 =  new FileIOGenerator();
    
    fileIOGen1.ResetIndex();
    while(fileIOGen1.CreateFilePath(fileIOPerm1, fileIO1, 
        FileIOPermissionAccess.Read)) {
            if (fileIO1 == null) {
                continue ;
            }
            Console.WriteLine("**********************************" 
            + "************************\n");
            fileIOGen2.ResetIndex();
            try {
                fileIOPerm2[0] =((FileIOPermission)(fileIOPerm1[0].Copy()));
                if (fileIOPerm2[0]  != null) {
                    Console.WriteLine(("Result of copy = " 
                    + fileIOPerm2[0].ToString() + "\n"));
                }
                else {
                    Console.WriteLine("Result of copy is null. \n");
                }
            }
            catch(System.Exception e) {
                if (fileIO1[0].Equals("")) {
                    Console.WriteLine("The target FileIOPermission " 
                        + "is empty, copy failed.");
                }
                else {
                    Console.WriteLine(e);
                }
            }
            continue ;
        }
    return returnValue ;
} //CopyDemo   

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

Show:
© 2014 Microsoft