PDA

View Full Version : [VB .NET] Copia incolla app vb.net


_mike_
24-05-2012, 17:45
Ciao a tutti,
avevo bisogno di una applicazione che gestisse una sola directory nel filesystem e che permettesse le funzioni copia/incolla in tale directory, una sorta di folderbrowsedialog con la property rootfolder personalizzabile, un esplora risorse di windows limitato alla visualizzazione di una sola directory (perchè il cliente non può accedere alle altre)...sembra una richiesta banale ma in giro per internet e tra le infinite funzioni e controlli che esistono in visual studio 2010 non ho trovato nulla che fa al caso mio...allora mi sono messo a creare una windows form con una treeview e una listview per elencare file e cartelle di una sola cartella che voglio io....fino a qui, a parte certe complicazioni dovute al fatto che il metodo onNodeClick nel treeview non viene mai richiamato (boo), tutto liscio...adesso però mi tocca implementare il copia incolla all'interno della listview. Allora per iniziare ho scritto due righe per copiare un singolo file:

Private Sub ListView1_KeyUp(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles ListView1.KeyUp

Dim cFileToCopy As String
If Control.ModifierKeys = Keys.Control Then
Select Case e.KeyCode
Case Keys.X
'MsgBox("X")
Case Keys.C
'MsgBox("C")
Case Keys.V
'Dim i As Integer
'For i = 1 To Clipboard.GetFileDropList().Count
cFileToCopy = Clipboard.GetFileDropList().Item(0)
Dim cFile As New System.IO.FileInfo(cFileToCopy)
FileCopy(cFileToCopy, String.Concat(cPath, cFile.Name))
ListView1.Refresh()
'Next
End Select
End If

End Sub

E fino a qui tranne il fatto che il CTRL+V a volte viene riconosciuto e a volte no per ragioni sconosciute tutto bene...il problema però è che io non devo copiare semplicemente da cFileToCopy (percorso file da copiare) a String.Concat(cPath, cFile.Name) (percorso file in cui sono posizionato) ma dovendo copiare da un client ad un server in desktop remoto ho bisogno che nella clipboard ci sia il file fisico (o binario che sia) del client per poi copiarlo nell'applicazione che girerà sul server. Una sorta di copia appunti da client a remoto (che già windows permette) Come si può fare??
grazie mille delle eventuali risposte