Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Función Para Mover Un Archivo A La Papelera.
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Función Para Mover Un Archivo A La Papelera. 
 
Hola a todos.
Un compañero del foro pergunto en otro post como mover un archivo a la papelera ya que kill no lo hacia.
Bueno me pareció interesante e hice una pequeña función para hacelo.
Se las dejo aquí.

Public Function FileTrash(strInputPath As String) As Boolean ''Mueve un archivo a la papelera. Requiere que se pase la ruta del archivo y si lo logra mover a la papelera devuelve TRUE y si no lo logra devuelve FALSE.

  Dim out As Boolean

  out = False

  If Exist(strInputPath) Then
    If Stat(strInputPath).Type = gb.File Then
      Shell "gio trash '" & strInputPath & "'" Wait
      If Exist(strInputPath) = False Then
        out = True
      Endif
    Endif
  Endif

  Return out

End
 

Saludos.
 



 
tincho - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Función Para Mover Un Archivo A La Papelera. 
 
...sin usar Shell:

Library "libgio-2.0"

' GFile * g_file_new_for_path (const char *path)
' Constructs a GFile for a given path.
Private Extern g_file_new_for_path(path As String) As Pointer

' gboolean g_file_trash (GFile *file, GCancellable *cancellable, GError **error)
' Sends file to the "Trashcan".
Private Extern g_file_trash(gfile As Pointer, cancellable As Pointer, gerror As Pointer) As Boolean

' void g_object_unref (gpointer object)
' Decreases the reference count of object.
Private Extern g_object_unref(gobject As Pointer)


Public Sub Main()

  Dim s As String
  Dim fl As Pointer
  Dim bo As Boolean
  
' Ruta del archivo que queremos mover a la papelera:
  s = "/ruta/del/archivo"
  
  fl = g_file_new_for_path(s)
  
' Mueve el archivo a la papelera:
  bo = g_file_trash(fl, 0, 0)
  If bo == False Then Error.Raise("Error !")
  
' Libera la memoria:
  g_object_unref(fl)

End

 



 
última edición por vuott el Miercoles, 25 Septiembre 2019, 10:58; editado 3 veces 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Función Para Mover Un Archivo A La Papelera. 
 
vuott escribió: [Ver mensaje]
...sin usar Shell:...

Vuott, sabes que yo pensé - Esto Vuott seguro que lo hace sin shell -  y mira !  
Saludos.
 



 
tincho - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Función Para Mover Un Archivo A La Papelera. 
 
tincho escribió: [Ver mensaje]
vuott escribió: [Ver mensaje]
...sin usar Shell:...

Vuott, sabes que yo pensé - Esto Vuott seguro que lo hace sin shell -  y mira !  


    
 



 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Función Para Mover Un Archivo A La Papelera. 
 
vuott escribió: [Ver mensaje]
tincho escribió: [Ver mensaje]
vuott escribió: [Ver mensaje]
...sin usar Shell:...

Vuott, sabes que yo pensé - Esto Vuott seguro que lo hace sin shell -  y mira !  


    


vuott estas últimamente esplendido como las estrellas.
 



 
gambafeliz - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Función Para Mover Un Archivo A La Papelera. 
 
gambafeliz escribió: [Ver mensaje]
..vuott estas últimamente esplendido como las estrellas.

¿Ultimamente? Vuott siempre sale con estas cosas, una mas sorprendente que la otra.  
Saludos.
 



 
tincho - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Función Para Mover Un Archivo A La Papelera. 
 
tincho escribió: [Ver mensaje]
lo hace sin shell


...pero ahora sin Shell ni sistema GIO:    

Public Sub Main()

  Dim arch, ruta As String
  
' El nombre del archivo que queremos mover a la papelera:
  arch = "nombre_del_archivo"
  
' La ruta del archivo + el nombre del archivo:
  ruta = "/ruta/del/archivo" &/ arch

' Mueve el archivo a la papelera, identificando la ruta de esta:
  Move ruta To User.Home &/ ".local/share/Trash/files" &/ arch

End

 



 
última edición por vuott el Miercoles, 25 Septiembre 2019, 11:25; editado 2 veces 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Función Para Mover Un Archivo A La Papelera. 
 
vuott escribió: [Ver mensaje]
tincho escribió: [Ver mensaje]
lo hace sin shell


...pero ahora sin Shell ni sistema GIO:    

Public Sub Main()

  Dim arch, ruta As String
  
' El nombre del archivo que queremos mover a la papelera:
  arch = "nombre_del_archivo"
  
' La ruta del archivo + el nombre del archivo:
  ruta = "/ruta/del/archivo" &/ arch

' Mueve el archivo a la papelera, identificando la ruta de esta:
  Move ruta To User.Home &/ ".local/share/Trash/files" &/ arch

End


vuott lo dicho me quito el sombrero. Aunque siempre digo que cuando sea grande quiero ser tu, yo creo que el que vale, vale y el que no pues informático
 



 
gambafeliz - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Función Para Mover Un Archivo A La Papelera. 
 
vuott escribió: [Ver mensaje]
tincho escribió: [Ver mensaje]
lo hace sin shell

...pero ahora sin Shell ni sistema GIO:    

Que bueno Vuott. mejora continua.
Saludos.
 



 
tincho - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Mover Archivo/s A Pendrive? Agamenon General 6 Miercoles, 29 Febrero 2012, 00:19 Ver último mensaje
tururu
No hay nuevos mensajes Comando Para Mover Archivo A La Papelera 4octavio4 Shell Scripting 3 Jueves, 15 Marzo 2012, 01:46 Ver último mensaje
Shell
No hay nuevos mensajes Truncar Un Archivo A Una Determinada Dimen... vuott Aplicaciones/Fragmentos de Código 2 Domingo, 17 Julio 2016, 14:17 Ver último mensaje
vuott
No hay nuevos mensajes ¿Como Mover Un Archivo A La Papelera? v3ctor General 2 Miercoles, 25 Septiembre 2019, 09:07 Ver último mensaje
tincho
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron