FileIOPermission.Copy-Methode
Erstellt eine identische Kopie der aktuellen Berechtigung und gibt die Kopie zurück.
Namespace: System.Security.Permissions
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Overrides Function Copy As IPermission
'Usage
Dim instance As FileIOPermission
Dim returnValue As IPermission
returnValue = instance.Copy
public override IPermission Copy ()
public:
virtual IPermission^ Copy () override
public IPermission Copy ()
public override function Copy () : IPermission
Rückgabewert
Eine Kopie der aktuellen Berechtigung.
Hinweise
Eine Kopie der Berechtigung stellt den gleichen Ressourcenzugriff dar wie die ursprüngliche Berechtigung.
Beispiel
Private Function CopyDemo() As Boolean
Dim returnValue As Boolean = True
Dim fileIO1 As String = ""
Dim fileIOPerm1, fileIOPerm2 As FileIOPermission
Dim fileIOGen1 As New FileIOGenerator()
Dim fileIOGen2 As New FileIOGenerator()
fileIOGen1.ResetIndex()
While fileIOGen1.CreateFilePath(fileIO1)
If fileIO1 = "" Then
fileIOPerm1 = New FileIOPermission(PermissionState.None)
Else
fileIOPerm1 = New FileIOPermission(FileIOPermissionAccess.Read, fileIO1)
End If
Console.WriteLine("**********************************************************" & ControlChars.Lf)
fileIOGen2.ResetIndex()
Try
fileIOPerm2 = CType(fileIOPerm1.Copy(), FileIOPermission)
If Not (fileIOPerm2 Is Nothing) Then
Console.WriteLine(("Result of copy = " & fileIOPerm2.ToString() & ControlChars.Lf))
Else
Console.WriteLine("Result of copy is null. " & ControlChars.Lf)
End If
Catch e As Exception
If (True.ToString()) Then
If fileIO1 = "" Then
Console.WriteLine("The target FileIOPermission is empty, copy failed.")
Else
Console.WriteLine(e.ToString())
End If
End If
GoTo ContinueWhile1
End Try
ContinueWhile1:
End While
Return returnValue
End Function 'CopyDemo
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;
}
bool CopyDemo()
{
bool returnValue = true;
String^ fileIO1;
FileIOPermission^ fileIOPerm1;
FileIOPermission^ fileIOPerm2;
FileIOGenerator^ fileIOGen1 = gcnew FileIOGenerator;
FileIOGenerator^ fileIOGen2 = gcnew FileIOGenerator;
fileIOGen1->ResetIndex();
while ( fileIOGen1->CreateFilePath( &fileIO1 ) )
{
if (fileIO1 == "")
fileIOPerm1 = gcnew FileIOPermission(PermissionState::None);
else
fileIOPerm1 = gcnew FileIOPermission(FileIOPermissionAccess::Read, fileIO1);
Console::WriteLine( "**********************************************************\n" );
fileIOGen2->ResetIndex();
try
{
fileIOPerm2 = dynamic_cast<FileIOPermission^>(fileIOPerm1->Copy());
if ( fileIOPerm2 != nullptr )
{
Console::WriteLine( "Result of copy = {0}\n", fileIOPerm2 );
}
else
{
Console::WriteLine( "Result of copy is null. \n" );
}
}
catch ( Exception^ e )
{
{
if ( fileIO1->Equals( "" ) )
{
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
Plattformen
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
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
FileIOPermission-Klasse
FileIOPermission-Member
System.Security.Permissions-Namespace