Documentation
¶
Overview ¶
cliprdr_linux.go
Index ¶
- Constants
- func ClipWatcher(c *CliprdrClient)
- func CloseClipboard() bool
- func CountClipboardFormats() int32
- func EmptyClipboard() bool
- func EnumClipboardFormats(formatId uint32) uint32
- func GetClipboardData(formatId uint32) string
- func GetClipboardFormatName(id uint32) string
- func GetFileInfo(sys interface{}) (uint32, []byte, uint32, uint32)
- func GetFileNames() []string
- func GlobalLock(hMem uintptr) uintptr
- func GlobalSize(hMem uintptr) int
- func GlobalUnlock(hMem uintptr)
- func HmemAlloc(data []byte) uintptr
- func IsClipboardFormatAvailable(id uint32) bool
- func IsClipboardOwner(h int) bool
- func OpenClipboard(hwnd uintptr) bool
- func RegisterClipboardFormat(format string) uint32
- func SetClipboardData(formatId uint32, hmem uintptr) bool
- type ClipboardFormats
- type CliprdrCapabilitiesPDU
- type CliprdrCapabilitySets
- type CliprdrClient
- type CliprdrCtrlClipboardData
- type CliprdrFileContentsRequest
- type CliprdrFileContentsResponse
- type CliprdrFormat
- type CliprdrFormatDataRequest
- type CliprdrFormatDataResponse
- type CliprdrFormatList
- type CliprdrGeneralCapabilitySet
- type CliprdrMonitorReady
- type CliprdrPDUHeader
- type CliprdrTempDirectory
- type Control
- type DROPFILES
- type DwFlags
- type FileDescriptor
- type FileGroupDescriptor
- type GeneralFlags
- type MsgFlags
- type MsgType
Constants ¶
View Source
const ( ChannelName = plugin.CLIPRDR_SVC_CHANNEL_NAME ChannelOption = plugin.CHANNEL_OPTION_INITIALIZED | plugin.CHANNEL_OPTION_ENCRYPT_RDP | plugin.CHANNEL_OPTION_COMPRESS_RDP | plugin.CHANNEL_OPTION_SHOW_PROTOCOL )
View Source
const ( CB_MONITOR_READY = 0x0001 CB_FORMAT_LIST = 0x0002 CB_FORMAT_LIST_RESPONSE = 0x0003 CB_FORMAT_DATA_REQUEST = 0x0004 CB_FORMAT_DATA_RESPONSE = 0x0005 CB_TEMP_DIRECTORY = 0x0006 CB_CLIP_CAPS = 0x0007 CB_FILECONTENTS_REQUEST = 0x0008 CB_FILECONTENTS_RESPONSE = 0x0009 CB_LOCK_CLIPDATA = 0x000A CB_UNLOCK_CLIPDATA = 0x000B )
View Source
const ( CB_RESPONSE_OK = 0x0001 CB_RESPONSE_FAIL = 0x0002 CB_ASCII_NAMES = 0x0004 )
View Source
const ( FILECONTENTS_SIZE = 0x00000001 FILECONTENTS_RANGE = 0x00000002 )
View Source
const ( /* CLIPRDR_GENERAL_CAPABILITY.generalFlags */ CB_USE_LONG_FORMAT_NAMES = 0x00000002 CB_STREAM_FILECLIP_ENABLED = 0x00000004 CB_FILECLIP_NO_FILE_PATHS = 0x00000008 CB_CAN_LOCK_CLIPDATA = 0x00000010 CB_HUGE_FILE_SUPPORT_ENABLED = 0x00000020 )
View Source
const ( /* CLIPRDR_GENERAL_CAPABILITY.version */ CB_CAPS_VERSION_1 = 0x00000001 CB_CAPS_VERSION_2 = 0x00000002 )
View Source
const ( FD_CLSID = 0x00000001 FD_SIZEPOINT = 0x00000002 FD_ATTRIBUTES = 0x00000004 FD_CREATETIME = 0x00000008 FD_ACCESSTIME = 0x00000010 FD_WRITESTIME = 0x00000020 FD_FILESIZE = 0x00000040 FD_PROGRESSUI = 0x00004000 FD_LINKUI = 0x00008000 )
View Source
const ( CB_FORMAT_HTML = 0xD010 CB_FORMAT_PNG = 0xD011 CB_FORMAT_JPEG = 0xD012 CB_FORMAT_GIF = 0xD013 CB_FORMAT_TEXTURILIST = 0xD014 CB_FORMAT_GNOMECOPIEDFILES = 0xD015 CB_FORMAT_MATECOPIEDFILES = 0xD016 )
View Source
const ( CFSTR_SHELLIDLIST = "Shell IDList Array" CFSTR_SHELLIDLISTOFFSET = "Shell Object Offsets" CFSTR_NETRESOURCES = "Net Resource" CFSTR_FILECONTENTS = "FileContents" CFSTR_FILENAMEA = "FileName" CFSTR_FILENAMEMAPA = "FileNameMap" CFSTR_FILEDESCRIPTORA = "FileGroupDescriptor" CFSTR_INETURLA = "UniformResourceLocator" CFSTR_SHELLURL = CFSTR_INETURLA CFSTR_FILENAMEW = "FileNameW" CFSTR_FILENAMEMAPW = "FileNameMapW" CFSTR_FILEDESCRIPTORW = "FileGroupDescriptorW" CFSTR_INETURLW = "UniformResourceLocatorW" CFSTR_PRINTERGROUP = "PrinterFriendlyName" CFSTR_INDRAGLOOP = "InShellDragLoop" CFSTR_PASTESUCCEEDED = "Paste Succeeded" CFSTR_PERFORMEDDROPEFFECT = "Performed DropEffect" CFSTR_PREFERREDDROPEFFECT = "Preferred DropEffect" )
View Source
const ( CF_TEXT = 1 CF_BITMAP = 2 CF_METAFILEPICT = 3 CF_SYLK = 4 CF_DIF = 5 CF_TIFF = 6 CF_OEMTEXT = 7 CF_DIB = 8 CF_PALETTE = 9 CF_PENDATA = 10 CF_RIFF = 11 CF_WAVE = 12 CF_UNICODETEXT = 13 CF_ENHMETAFILE = 14 CF_HDROP = 15 CF_LOCALE = 16 CF_DIBV5 = 17 CF_MAX = 18 )
View Source
const ( /* File attribute flags */ FILE_SHARE_READ = 0x00000001 FILE_SHARE_WRITE = 0x00000002 FILE_SHARE_DELETE = 0x00000004 FILE_ATTRIBUTE_READONLY = 0x00000001 FILE_ATTRIBUTE_HIDDEN = 0x00000002 FILE_ATTRIBUTE_SYSTEM = 0x00000004 FILE_ATTRIBUTE_DIRECTORY = 0x00000010 FILE_ATTRIBUTE_ARCHIVE = 0x00000020 FILE_ATTRIBUTE_DEVICE = 0x00000040 FILE_ATTRIBUTE_NORMAL = 0x00000080 FILE_ATTRIBUTE_TEMPORARY = 0x00000100 FILE_ATTRIBUTE_SPARSE_FILE = 0x00000200 FILE_ATTRIBUTE_REPARSE_POINT = 0x00000400 FILE_ATTRIBUTE_COMPRESSED = 0x00000800 FILE_ATTRIBUTE_OFFLINE = 0x00001000 FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 0x00002000 FILE_ATTRIBUTE_ENCRYPTED = 0x00004000 FILE_ATTRIBUTE_INTEGRITY_STREAM = 0x00008000 FILE_ATTRIBUTE_VIRTUAL = 0x00010000 FILE_ATTRIBUTE_NO_SCRUB_DATA = 0x00020000 FILE_ATTRIBUTE_EA = 0x00040000 )
View Source
const (
CB_CAPSTYPE_GENERAL = 0x0001
)
View Source
const (
CB_CAPSTYPE_GENERAL_LEN = 12
)
View Source
const DVASPECT_CONTENT = 0x1
View Source
const (
OLE_SETCLIPBOARD = 1
)
Variables ¶
This section is empty.
Functions ¶
func ClipWatcher ¶
func ClipWatcher(c *CliprdrClient)
func CloseClipboard ¶
func CloseClipboard() bool
func CountClipboardFormats ¶
func CountClipboardFormats() int32
func EmptyClipboard ¶
func EmptyClipboard() bool
func EnumClipboardFormats ¶
func GetClipboardData ¶
func GetClipboardFormatName ¶
func GetFileNames ¶
func GetFileNames() []string
func GlobalLock ¶
func GlobalSize ¶
func GlobalUnlock ¶
func GlobalUnlock(hMem uintptr)
func IsClipboardOwner ¶
func OpenClipboard ¶
func RegisterClipboardFormat ¶
func SetClipboardData ¶
Types ¶
type ClipboardFormats ¶
type ClipboardFormats uint16
type CliprdrCapabilitiesPDU ¶
type CliprdrCapabilitiesPDU struct {
CCapabilitiesSets uint16 `struc:"little,sizeof=CapabilitySets"`
Pad1 uint16 `struc:"little"`
CapabilitySets []CliprdrGeneralCapabilitySet `struc:"little"`
}
type CliprdrCapabilitySets ¶
type CliprdrClient ¶
type CliprdrClient struct {
Files []FileDescriptor
Control
// contains filtered or unexported fields
}
func NewCliprdrClient ¶
func NewCliprdrClient() *CliprdrClient
func (*CliprdrClient) GetType ¶
func (c *CliprdrClient) GetType() (string, uint32)
func (*CliprdrClient) Process ¶
func (c *CliprdrClient) Process(s []byte)
func (*CliprdrClient) Sender ¶
func (c *CliprdrClient) Sender(f core.ChannelSender)
type CliprdrCtrlClipboardData ¶
type CliprdrCtrlClipboardData struct {
ClipDataId uint32
}
lock or unlock
type CliprdrFileContentsRequest ¶
type CliprdrFileContentsRequest struct {
StreamId uint32 `struc:"little"`
Lindex uint32 `struc:"little"`
DwFlags uint32 `struc:"little"`
NPositionLow uint32 `struc:"little"`
NPositionHigh uint32 `struc:"little"`
CbRequested uint32 `struc:"little"`
ClipDataId uint32 `struc:"little"`
}
file contents
func FileContentsSizeRequest ¶
func FileContentsSizeRequest(i uint32) *CliprdrFileContentsRequest
type CliprdrFileContentsResponse ¶
func (*CliprdrFileContentsResponse) Unpack ¶
func (resp *CliprdrFileContentsResponse) Unpack(b []byte)
type CliprdrFormat ¶
format list
func GetFormatList ¶
func GetFormatList(hwnd uintptr) []CliprdrFormat
type CliprdrFormatDataRequest ¶
type CliprdrFormatDataRequest struct {
RequestedFormatId uint32
}
format data
type CliprdrFormatDataResponse ¶
type CliprdrFormatDataResponse struct {
RequestedFormatData []byte
}
type CliprdrFormatList ¶
type CliprdrFormatList struct {
NumFormats uint32
Formats []CliprdrFormat
}
type CliprdrMonitorReady ¶
type CliprdrMonitorReady struct {
}
type CliprdrPDUHeader ¶
type CliprdrPDUHeader struct {
MsgType uint16 `struc:"little"`
MsgFlags uint16 `struc:"little"`
DataLen uint32 `struc:"little"`
}
func NewCliprdrPDUHeader ¶
func NewCliprdrPDUHeader(mType, flags uint16, ln uint32) *CliprdrPDUHeader
type CliprdrTempDirectory ¶
type CliprdrTempDirectory struct {
SzTempDir []byte `struc:"[260]byte"`
}
temp dir
type Control ¶
type Control struct {
// contains filtered or unexported fields
}
func (*Control) SendCliprdrMessage ¶
func (c *Control) SendCliprdrMessage()
type FileDescriptor ¶
type FileDescriptor struct {
Flags uint32 `struc:"little"`
Clsid [16]byte `struc:"little"`
Sizel [8]byte `struc:"little"`
Pointl [8]byte `struc:"little"`
FileAttributes uint32 `struc:"little"`
CreationTime [8]byte `struc:"little"`
LastAccessTime [8]byte `struc:"little"`
LastWriteTime []byte `struc:"[8]byte"` //8
FileSizeHigh uint32 `struc:"little"`
FileSizeLow uint32 `struc:"little"`
FileName []byte `struc:"[512]byte"`
}
type FileGroupDescriptor ¶
type FileGroupDescriptor struct {
CItems uint32 `struc:"little"`
Fgd []FileDescriptor `struc:"sizefrom=CItems"`
}
func (*FileGroupDescriptor) Unpack ¶
func (f *FileGroupDescriptor) Unpack(b []byte) error
type GeneralFlags ¶
type GeneralFlags uint32
Click to show internal directories.
Click to hide internal directories.