Back to main

 

Function 54 and its subfunctions (0-4, 55)

 

Subfunction 0 - Find out the number of slots in the clipboard.

 

Options:

·         eax = 54 - function number

·         ebx = 0 - number of subfunction

Return value:

·         eax = number of slots in the buffer

·         eax = -1 - the main list area is missing

 

Constants for registers:

  eax - SF_CLIPBOARD (54)

  ebx - SSF_GET_SLOT_COUNT (0)

 

Subfunction 1 - Read data from the clipboard.

 

Options:

·         eax = 54 - function number

·         ebx = 1 - number of subfunction

·         ecx = slot number

Return value:

·         eax = if successful - a pointer to the memory area with data

·         eax = 1 - error

·         eax = -1 - the main list area is missing

Remarks:

·         the buffer pointed to by eax contains the following information:

o   + 0: dword: total data length

o   +4: dword: defines the type of data:

§  0 = Text

§  1 = Text with block selection

§  2 = Image

§  3 = RAW

§  4 and above reserved

o   +8: See the clipboard_container_rus.txt file for more details.

·         The function should be used in conjunction with 68.11. An application must first initialize the local heap by calling 68.11.

        

Constants for registers:

  eax - SF_CLIPBOARD (54)

  ebx - SSF_READ_CB (1)

 

Subfunction 2 - Write data to the clipboard.

 

Options:

·         eax = 54 - function number

·         ebx = 2 - subfunction number

·         ecx = number of bytes copied

·         edx = pointer to buffer for copied data

Return value:

·         eax = 0 - successful

·         eax = 1 - error

·         eax = -1 - the main list area is missing

 

Constants for registers:

  eax - SF_CLIPBOARD (54)

  ebx - SSF_WRITE_CB (2)

 

Subfunction 3 - Delete the last slot with data in the clipboard

 

Options:

·         eax = 54 - function number

·         ebx = 3 - subfunction number

Return value:

·         eax = 0 - successful

·         eax = 1 - error

·         eax = -1 - the main list area is missing

 

Constants for registers:

  eax - SF_CLIPBOARD (54)

  ebx - SSF_DEL_SLOT (3)

 

Subfunction 4 - Failure buffer lock

 

Options:

·         eax = 54 - function number

·         ebx = 4 - subfunction number

Return value:

·         eax = 0 - successful

·         eax = -1 - the main list area is missing or there is no lock.

 

Remarks:

·         It is used in exceptional cases when a frozen application or a dead application has blocked work with the clipboard.

 

Constants for registers:

  eax - SF_CLIPBOARD (54)

  ebx - SSF_UNLOCK_BUFFER (4)