del método SPBackupRestoreConsole.DiskSize
Obtiene el espacio en disco total en un volumen y la cantidad de ese espacio que está disponible para el usuario (como parámetros de out ).
Espacio de nombres: Microsoft.SharePoint.Administration.Backup
Ensamblado: Microsoft.SharePoint (en Microsoft.SharePoint.dll)
Sintaxis
'Declaración
Public Shared Function DiskSize ( _
dir As String, _
<OutAttribute> ByRef freeBytesAvailable As ULong, _
<OutAttribute> ByRef totalBytes As ULong _
) As Integer
'Uso
Dim dir As String
Dim freeBytesAvailable As ULong
Dim totalBytes As ULong
Dim returnValue As Integer
returnValue = SPBackupRestoreConsole.DiskSize(dir, _
freeBytesAvailable, totalBytes)
public static int DiskSize(
string dir,
out ulong freeBytesAvailable,
out ulong totalBytes
)
Parámetros
dir
Tipo: System.StringUna ruta de acceso, posiblemente una ruta de acceso UNC, en el volumen cuya información de espacio es necesario.
freeBytesAvailable
Tipo: System.UInt64Cuando este método devuelve, contiene un DiskSize que representa el número total de bytes disponible en el volumen donde se encuentra, el usuario en cuyo contexto DiskSize se denomina dir . Este parámetro se pasa sin inicializar.
totalBytes
Tipo: System.UInt64Cuando este método devuelve, contiene un DiskSize que representa el número total de bytes en el volumen donde se encuentra dir . Este parámetro se pasa sin inicializar.
Valor devuelto
Tipo: System.Int32
0, si se produce un error en el intento de tamaño de disco de informe; en caso contrario, algunas otras Int32, lo que significa que la operación se realizó correctamente.
Comentarios
Normalmente, dir es la ruta de acceso donde desea almacenar una copia de seguridad, pero puede utilizarse cualquier ruta de acceso válida en el mismo volumen y los parámetros de out devolverá los mismos valores.
Ejemplos
En el ejemplo siguiente se muestra el método DiskSize se usa para determinar si el volumen de copia de seguridad tiene suficiente espacio para contener los componentes para realizar copias de seguridad. Para obtener una explicación detallada de la misma y el ejemplo completo, vea How to: Programmatically Back Up Content.
private static Boolean EnsureEnoughDiskSpace(String location, Guid backup, SPBackupRestoreObject node)
{
UInt64 backupSize = SPBackupRestoreConsole.DiskSizeRequired(backup, node);
UInt64 diskFreeSize = 0;
UInt64 diskSize = 0;
Boolean hasEnoughSpace = true;
try
{
SPBackupRestoreConsole.DiskSize(location, out diskFreeSize, out diskSize);
}
catch
{
diskFreeSize = diskSize = UInt64.MaxValue;
}
if (backupSize > diskFreeSize)
{
// Report through your UI that there is not enough disk space.
Console.WriteLine("{0} bytes of space is needed but the disk hosting {1} has only {2}.", backupSize, location, diskFreeSize);
Console.WriteLine("Please try again with a different backup location or a smaller component.");
hasEnoughSpace = false;
}
else if (backupSize == UInt64.MaxValue || diskFreeSize == 0)
{
// Report through your UI that it cannot be determined whether there is enough disk space.
Console.WriteLine("Cannot determine if that location has enough disk space.");
Console.WriteLine("Please try again with a different backup location or a smaller component.");
hasEnoughSpace = false;
}
return hasEnoughSpace;
}// end EnsureEnoughDiskSpace
Private Shared Function EnsureEnoughDiskSpace(ByVal location As String, ByVal backup As Guid, ByVal node As SPBackupRestoreObject) As Boolean
Dim backupSize As UInt64 = SPBackupRestoreConsole.DiskSizeRequired(backup, node)
Dim diskFreeSize As UInt64 = 0
Dim diskSize As UInt64 = 0
Dim hasEnoughSpace As Boolean = True
Try
SPBackupRestoreConsole.DiskSize(location, diskFreeSize, diskSize)
Catch
diskSize = UInt64.MaxValue
diskFreeSize = diskSize
End Try
If backupSize > diskFreeSize Then
' Report through your UI that there is not enough disk space.
Console.WriteLine("{0} bytes of space is needed but the disk hosting {1} has only {2}.", backupSize, location, diskFreeSize)
Console.WriteLine("Please try again with a different backup location or a smaller component.")
hasEnoughSpace = False
ElseIf backupSize = UInt64.MaxValue OrElse diskFreeSize = 0 Then
' Report through your UI that it cannot be determined whether there is enough disk space.
Console.WriteLine("Cannot determine if that location has enough disk space.")
Console.WriteLine("Please try again with a different backup location or a smaller component.")
hasEnoughSpace = False
End If
Return hasEnoughSpace
End Function ' end EnsureEnoughDiskSpace
Vea también
Referencia
Miembros SPBackupRestoreConsole
Espacio de nombres Microsoft.SharePoint.Administration.Backup