Copy and Paste Files to and from the Clipboard

  • Thread starter Thread starter DraguVaso
  • Start date Start date
D

DraguVaso

Hi,

I'm looking for a way to Copy and Paste Files to the clipboard.
I found a lot of articles to copy pieces of text and bitmaps etc, but nog
whole files.

Whay I need is like you have in windows explorer: when you do a right-click
on a file and choose Copy, and than paste it somewhere in my application and
vice versa.

Anybody knows how to do this?

Thanks in advance,

Pieter
 
Hi Pieter,

The place with information

http://msdn.microsoft.com/library/en-us/vbcon/html/vbconDragDropClipboardSupport.asp

And a sample from a paste

I hope this helps

Cor

\\\
'Copy with windows explore some files and than this
Private Sub Button1_Click(ByVal sender _
As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim folderbrowserDialog1 As New FolderBrowserDialog
Dim iData As IDataObject = Clipboard.GetDataObject()
If iData.GetDataPresent(DataFormats.FileDrop) Then
Dim clipbrd As String() = DirectCast(iData.GetData(DataFormats.FileDrop),
String())
Dim i As Integer
folderbrowserDialog1.ShowDialog()
For i = 0 To clipbrd.Length - 1
If System.IO.File.Exists(folderbrowserDialog1.SelectedPath _
& System.IO.Path.GetFileName(clipbrd(i))) Then
System.IO.File.Move(folderbrowserDialog1.SelectedPath & _
"\" & _
System.IO.Path.GetFileName(clipbrd(i)), _
folderbrowserDialog1.SelectedPath & "temptemptemp.temp")
End If
System.IO.File.Copy(clipbrd(i), folderbrowserDialog1.SelectedPath & _
"\" & _
System.IO.Path.GetFileName(clipbrd(i)))
If System.IO.File.Exists(folderbrowserDialog1.SelectedPath _
& "temptemptemp.temp") Then
System.IO.File.Delete(folderbrowserDialog1.SelectedPath & _
"temptemptemp.temp")
End If
Next
End If
End Sub
///
 
Thanks a lot, the pasting is working.
Unfortunately I'm not able to copy a file to the clipboard. any idea?
 
The following code can be used to place file data on the clipboard (it will
not just be the name, nor will it be
the contents of the file). The "DataFormats" parameter controls how other
applications deal with the
clipboard data. The file(s) to be copied must be placed on the clipboard as
an array of strings...

(VB.NET)
Dim DataObject As New DataObject()
Dim file(0) As String
file(0) = "C:\Test.txt"
DataObject.SetData(DataFormats.FileDrop, True, file)
Clipboard.SetDataObject(DataObject)
 
Hi DraguVaso,
When drag-and-drop or copies files to the clipboard windows explorer doesn't
drag or copy the entire file to the clipboard. It just move a structure of
data called DROPFILES which carry path names of the files you want to move
or copy as well as flag whether these strings are in UNICODE or ANSI and the
point on the screen where the drag begun. The clipboard uses the same
structure but the point field is not used.

However thanks to the .net framework and DataObject class placing that
structure in the clipboard is as easy as creating array of strings, puting
the array in a data object and put the data object in the clipboard.

the following is a code that do this:

Clipboard.SetDataObject(new DataObject(DataFormats.FileDrop, new
string[]{"C:\\Temp\\TestFile.txt"}));

HTH
B\rgds
100
 
Thanks louri and 100! it worked fine!

100 said:
Hi DraguVaso,
When drag-and-drop or copies files to the clipboard windows explorer doesn't
drag or copy the entire file to the clipboard. It just move a structure of
data called DROPFILES which carry path names of the files you want to move
or copy as well as flag whether these strings are in UNICODE or ANSI and the
point on the screen where the drag begun. The clipboard uses the same
structure but the point field is not used.

However thanks to the .net framework and DataObject class placing that
structure in the clipboard is as easy as creating array of strings, puting
the array in a data object and put the data object in the clipboard.

the following is a code that do this:

Clipboard.SetDataObject(new DataObject(DataFormats.FileDrop, new
string[]{"C:\\Temp\\TestFile.txt"}));

HTH
B\rgds
100

DraguVaso said:
Thanks a lot, the pasting is working.
Unfortunately I'm not able to copy a file to the clipboard. any idea?
http://msdn.microsoft.com/library/en-us/vbcon/html/vbconDragDropClipboardSup
 
Back
Top