Visual Basic - Papelera de reciclaje

Life is soft - evento anual de software empresarial
 
Vista:

Papelera de reciclaje

Publicado por Nicolas (20 intervenciones) el 04/02/2001 10:10:25
Hola! Necesito saber la ubicacion original de un archivo (o directorio) que esta en la papelera (la ubicacion que tenia antes de ser eliminado obviamente). Supongo que hay alguna forma de hacerlo pero no encuentro ninguna funcion del API para esto. Si alguien sabe como hacerlo le agradeceria si me da una mano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Papelera de reciclaje

Publicado por ERNESTO (7 intervenciones) el 05/02/2001 18:30:30
Mover un Archivo a la Papelera en lugar de usar KILL

Crear un formulario y escribir el siguiente código (en las declaraciones Generales):
Private Type SHFILEOPSTRUCT
hWnd As Long
wFunc As Long
pFrom As String
pTo As String
fFlags As Integer
fAnyOperationsAborted As Boolean
hNameMappings As Long
lpszProgressTitle As String
End Type

Private Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long

Private Const FO_DELETE = &H3
Private Const FOF_ALLOWUNDO = &H40

Public Sub PapeleraDeReciclaje(ByVal Fichero As String)
Dim SHFileOp As SHFILEOPSTRUCT
Dim RetVal As Long
With SHFileOp
.wFunc = FO_DELETE
.pFrom = Fichero
.fFlags = FOF_ALLOWUNDO
End With
RetVal = SHFileOperation(SHFileOp)
End Sub

Private Sub CommandButton1_Click()
PapeleraDeReciclaje "c:\a.txt"
End Sub

El programa preguntará si deseamos o no eliminar el archivo y enviarlo a la papelera de reciclaje. El parámetro .fFlags nos permitirá recuperar el fichero de la papelera si lo deseamos. Si eliminamos esta línea, el fichero no podrá ser recuperado.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar