Top Method Summary
Options Name Purpose
INTEGER ConvertFileSize (int64) Transforms a file size and returns this as INTEGER array to be converted into a System.Byte[]
INTEGER ConvertFileSize (longchar) Calculates the file size (size of LONGCHAR) and returns this as an INTEGER array to be converted into a System.Byte[]
System.Windows.Forms.DataObject CreateVirtualFileDataObject (character, Byte[]) Creates a Drag & Drop DataObject for a virtual file (a file that is not existing as a real file) from the file name and the bytes of the file contents
System.Windows.Forms.DataObject GetDragDropDataObject (character, longchar) Creates a Drag & Drop DataObject for a File Drop Operation (Progress/WinForms application to Windows Explorer)
System.Windows.Forms.DataObject GetDragDropDataObject (character, memptr) Creates a Drag & Drop DataObject for a File Drop Operation (Progress/WinForms application to Windows Explorer)
System.Windows.Forms.DataObject GetDragDropDataObject (character[]) Creates a Drag & Drop DataObject for a File Drop Operation (Progress/WinForms application to Windows Explorer)
CHARACTER GetDropFileNames (IDataObject) Returns an ABL CHARACTER array of file names in the passed in IDataObject
INTEGER IntToByteArray (int64) Converts the given INT64 value to an Array of Bytes (INTEGER 0..255)
LOGICAL IsFileDrop (IDataObject) Returns TRUE when the IDataObject contains File Drop data.
LOGICAL IsTextDrop (IDataObject) Returns TRUE when the IDataObject contains Text Drop data.

Top Constructor Summary
Options Name Purpose
DragAndDropHelper () Protected default constructor.


Method Detail
Top

INTEGER ConvertFileSize (int64)

Purpose: Transforms a file size and returns this as INTEGER array to be
converted into a System.Byte[]
Notes:

Parameters:
piFileSize INT64
The actual file size in bytes
Returns INTEGER
The file size in bytes as a INTEGER array
Top

INTEGER ConvertFileSize (longchar)

Purpose: Calculates the file size (size of LONGCHAR) and returns this as an
INTEGER array to be converted into a System.Byte[]
Notes: The size is the number of characters of the LONGCHAR, which equals
the number of bytes for single byte data only. SCL-5958:
GetDragDropDataObject does no longer use this method, it takes the
file size from the length of the encoded (UTF-8) byte array

Parameters:
plcContents LONGCHAR
The LONGCHAR to return the file size for
Returns INTEGER
The file size in bytes as a INTEGER array
Top

System.Windows.Forms.DataObject CreateVirtualFileDataObject (character, Byte[])

Purpose: Creates a Drag & Drop DataObject for a virtual file (a file that is
not existing as a real file) from the file name and the bytes of
the file contents
Notes: SCL-5958: The FileGroupDescriptor format is the ANSI structure
FILEGROUPDESCRIPTORA, so the file name is encoded with the ANSI code
page of the system (System.Text.Encoding:Default). The cFileName
member of the FILEDESCRIPTORA starts at byte 76 of the 336 byte
structure and holds 260 bytes including the terminating null byte,
so the file name must not exceed 259 bytes. The file size is taken
from the length of the byte array

Parameters:
pcFileName CHARACTER
The file name for the target of the drag and drop operation
poContents System.Byte[]
The byte array with the contents of the file
Returns System.Windows.Forms.DataObject
The System.Windows.Forms.DataObject with the data for the drag and drop operation
Top

System.Windows.Forms.DataObject GetDragDropDataObject (character, longchar)

Purpose: Creates a Drag & Drop DataObject for a File Drop Operation
(Progress/WinForms application to Windows Explorer)
Notes: The file is not already existing as a real file and the file contents
will be passed to the receiving application
When dragging to the Windows Explorer, the Drag & Drop operation should
be started with the Link DragDropEffect
SCL-5958: The file contents are encoded as UTF-8 (without byte order
mark), the file name with the ANSI code page of the system. The file
name must not exceed 259 bytes in the ANSI code page

Parameters:
pcFileName CHARACTER
The file name for the target of the drag and drop operation
plcFileContents LONGCHAR
The longchar with the contents of the file
Returns System.Windows.Forms.DataObject
The System.Windows.Forms.DataObject with the data for the drag and drop operation
Top

System.Windows.Forms.DataObject GetDragDropDataObject (character, memptr)

Purpose: Creates a Drag & Drop DataObject for a File Drop Operation
(Progress/WinForms application to Windows Explorer)
Notes: The file is not already existing as a real file and the file contents
will be passed to the receiving application
When dragging to the Windows Explorer, the Drag & Drop operation should
be started with the Link DragDropEffect
SCL-5958: The file name is encoded with the ANSI code page of the
system and must not exceed 259 bytes in that code page

Parameters:
pcFileName CHARACTER
The file name for the target of the drag and drop operation
pmFileContents MEMPTR
The MEMPTR with the data for the contents of the file
Returns System.Windows.Forms.DataObject
The System.Windows.Forms.DataObject with the data for the drag and drop operation
Top

System.Windows.Forms.DataObject GetDragDropDataObject (character[])

Purpose: Creates a Drag & Drop DataObject for a File Drop Operation
(Progress/WinForms application to Windows Explorer)
Notes: The file names are supposed to be already existing as real files
on the file system

Parameters:
pcFileNames CHARACTER
The ABL Character Array of file names for the drag and drop operation
Returns System.Windows.Forms.DataObject
The System.Windows.Forms.DataObject with the data for the drag and drop operation
Top

CHARACTER GetDropFileNames (IDataObject)

Purpose: Returns an ABL CHARACTER array of file names in the passed in
IDataObject
Notes:

Parameters:
poData System.Windows.Forms.IDataObject
The IDataObject with the data of a receiving drag and drop operation
Returns CHARACTER
The ABL Character array with the file names
Top

INTEGER IntToByteArray (int64)

Purpose: Converts the given INT64 value to an Array of Bytes (INTEGER 0..255)
Notes: The maximum supported extent of the array is 8

Parameters:
piInteger INT64
The INT64 value to convert
Returns INTEGER
The ABL Integer array with which can be converted into a .NET byte array
Top

LOGICAL IsFileDrop (IDataObject)

Purpose: Returns TRUE when the IDataObject contains File Drop data.
Notes:

Parameters:
poData System.Windows.Forms.IDataObject
The IDataObject with the data of a receiving drag and drop operation
Returns LOGICAL
True when the IDataObject contains file drop data
Top

LOGICAL IsTextDrop (IDataObject)

Purpose: Returns TRUE when the IDataObject contains Text Drop data.
Notes:

Parameters:
poData System.Windows.Forms.IDataObject
The IDataObject with the data of a receiving drag and drop operation
Returns LOGICAL
True when the IDataObject contains text drop data


Constructor Detail
Top

DragAndDropHelper ()

Purpose: Protected default constructor.
Notes: There's no need to create instances of the helper classes



©2006-2026 Consultingwerk Ltd.         info@consultingwerk.de         http://www.consultingwerk.de       10.10.2026 15:35:23