Beispiel #1
0
        public InputshareDataObject(List <ClipboardVirtualFileData.FileAttributes> files)
        {
            objectType           = ClipboardDataType.File;
            fileDescriptorStream = GetFileDescriptor(files);
            foreach (var file in files)
            {
                //ISLogger.Write("Creating remote file stream for " + file.FileName);
                ManagedRemoteIStream str = new ManagedRemoteIStream(file);
                streams.Add(str);
            }

            operationFiles = files;

            byte[] a = BitConverter.GetBytes((int)DragDropEffects.Copy);

            IntPtr p = Marshal.AllocHGlobal(a.Length);

            Marshal.Copy(a, 0, p, a.Length);

            SetData(NativeMethods.CFSTR_FILEDESCRIPTORW, null);
            SetData(NativeMethods.CFSTR_FILECONTENTS, null);
            SetData(NativeMethods.CFSTR_PERFORMEDDROPEFFECT, null);
            SetData(NativeMethods.CFSTR_PREFERREDDROPEFFECT, IntPtr.Zero);
            SetData("InputshareFileData", "Inputshare object");
        }
Beispiel #2
0
        public InputshareDataObject(List <ClipboardVirtualFileData.FileAttributes> files)
        {
            objectType           = ClipboardDataType.File;
            fileDescriptorStream = GetFileDescriptor(files);
            foreach (var file in files)
            {
                //ISLogger.Write("Creating remote file stream for " + file.FileName);
                ManagedRemoteIStream str = new ManagedRemoteIStream(file);
                streams.Add(str);
            }

            operationFiles = files;



            SetData(NativeMethods.CFSTR_FILEDESCRIPTORW, null);
            SetData(NativeMethods.CFSTR_FILECONTENTS, null);
            SetData(NativeMethods.CFSTR_PERFORMEDDROPEFFECT, null);
            SetData("InputshareFileData", "Inputshare object");
        }