Compartir a través de


My.Computer.FileSystem.CopyFile (Método)

Actualización: noviembre 2007

Copia un archivo en una nueva ubicación.

' Usage
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName)
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName ,overwrite)
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName ,showUI)
My.Computer.FileSystem.CopyFile(sourceFileName ,destinationFileName ,showUI ,onUserCancel)
' Declaration
Public Sub CopyFile( _
   ByVal sourceFileName As String, _
   ByVal destinationFileName As String _
)
' -or-
Public Sub CopyFile( _
   ByVal sourceFileName As String, _
   ByVal destinationFileName As String, _
   ByVal overwrite As Boolean _
)
' -or-
Public Sub CopyFile( _
   ByVal sourceFileName As String, _
   ByVal destinationFileName As String, _
   ByVal showUI As UIOption _
)
' -or-
Public Sub CopyFile( _
   ByVal sourceFileName As String, _
   ByVal destinationFileName As String, _
   ByVal showUI As UIOption, _
   ByVal onUserCancel As UICancelOption _
)

Parámetros

  • sourceFileName
    String. Archivo que se va a copiar. Requerido.

  • destinationFileName
    String. Ubicación donde debe copiarse el archivo. Requerido.

  • overwrite
    Boolean. Indica si se deben sobrescribir los archivos existentes. El valor predeterminado es False. Obligatorio.

  • showUI
    UIOption. Indica si se debe hacer un seguimiento visual del progreso de la operación. El valor predeterminado es UIOption.OnlyErrorDialogs. Obligatorio.

  • onUserCancel
    UICancelOption. Especifica qué se debe hacer si el usuario hace clic en Cancelar durante la operación. El valor predeterminado es ThrowException. Obligatorio.

Excepciones

Las condiciones siguientes pueden hacer que se produzca una excepción:

  • La ruta de acceso no es válida por una de las razones siguientes: es una cadena de longitud cero; sólo contiene un espacio en blanco; contiene caracteres no válidos o es una ruta de acceso de dispositivo (empieza por \\.\) (ArgumentException).

  • El sistema no pudo recuperar la ruta de acceso absoluta (ArgumentException).

  • destinationFileName contiene información de la ruta de acceso (ArgumentException).

  • La ruta de acceso no es válida porque es Nothing (ArgumentNullException).

  • destinationFileName es Nothing o una cadena vacía (ArgumentNullException).

  • El archivo de código fuente no es válido o no existe (FileNotFoundException).

  • La ruta de acceso combinada apunta a un directorio existente (IOException).

  • El archivo de destino existe y overwrite está establecido en False (IOException).

  • El usuario no tiene permisos suficientes para el acceso al archivo (IOException).

  • Hay un archivo en uso con el mismo nombre en el directorio de destino (IOException).

  • Un nombre de archivo o de directorio de la ruta de acceso contiene un signo de dos puntos (:) o tiene un formato no válido (NotSupportedException).

  • UICancelOption está establecido en ThrowException y el usuario ha cancelado la operación (OperationCanceledException).

  • UICancelOption está establecido en ThrowException y se produce un error de E/S no especificado (OperationCanceledException).

  • La ruta supera la longitud máxima definida por el sistema (PathTooLongException).

  • El usuario no tiene los permisos requeridos (UnauthorizedAccessException).

  • El usuario no tiene los permisos necesarios para ver la ruta de acceso (SecurityException).

Comentarios

CopyFile no conserva las entradas ACE (entradas de control de acceso). El archivo creado hereda las entradas ACE predeterminadas del directorio donde se crea.

Tareas

La tabla siguiente muestra una lista de ejemplos de tareas en las que está implicado el método My.Computer.FileSystem.CopyFile.

Para

Vea

Copiar un archivo en el mismo directorio.

Cómo: Crear una copia de un archivo en el mismo directorio en Visual Basic

Copiar un archivo en un directorio diferente.

Cómo: Crear una copia de un archivo en un directorio diferente en Visual Basic

Ejemplo

En este ejemplo se copia el archivo Test.txt en el directorio TestFiles2 sin sobrescribir los archivos existentes.

My.Computer.FileSystem.CopyFile _
("C:\UserFiles\TestFiles\test.txt", _
"C:\UserFiles\TestFiles2")

Reemplace las rutas de acceso del archivo con las rutas de acceso que desea utilizar en el código.

En este ejemplo se copia el archivo Test.txt en el directorio TestFiles2 y se le denomina NewFile.txt.

My.Computer.FileSystem.CopyFile _
("C:\UserFiles\TestFiles\test.txt", _
"C:\UserFiles\TestFiles2", "NewFile.txt", FileIO.UICancelOption.DoNothing)

Reemplace las rutas de acceso del archivo con las rutas de acceso que desea utilizar en el código.

Requisitos

Espacio de nombres:Microsoft.VisualBasic.MyServices

Clase:FileSystemProxy (proporciona acceso a FileSystem)

Ensamblado: biblioteca en tiempo de ejecución de Visual Basic (en Microsoft.VisualBasic.dll)

Disponibilidad por tipo de proyecto

Tipo de proyecto

Disponible

Aplicación para Windows

Biblioteca de clases

Aplicación de consola

Biblioteca de controles de Windows

Biblioteca de controles Web

Servicio de Windows

Sitio Web

Permisos

Los permisos siguientes pueden ser necesarios:

Permiso

Descripción

EnvironmentPermission

Controla la capacidad para tener acceso a todas las variables de entorno. Enumeración asociada: Unrestricted.

FileIOPermission

Controla la capacidad de tener acceso a archivos y carpetas. Enumeración asociada: Unrestricted.

RegistryPermission

Controla la capacidad para tener acceso a las variables de Registro. Enumeración asociada: Unrestricted.

UIPermission

Controla los permisos relacionados con interfaces de usuario y el Portapapeles. Enumeración asociada: SafeSubWindows.

Para obtener más información, vea Seguridad de acceso a código y Solicitar permisos.

Vea también

Tareas

Cómo: Copiar archivos con un modelo específico en un directorio en Visual Basic

Cómo: Crear una copia de un archivo en el mismo directorio en Visual Basic

Cómo: Copiar un directorio en otro directorio en Visual Basic

Cómo: Cambiar el nombre de un archivo en Visual Basic

Referencia

My.Computer.FileSystem (Objeto)

UICancelOption (Enumeración)