option explicit
declare function GlobalUnlock lib "kernel32" (byVal hMem As long) As long
declare function GlobalLock lib "kernel32" (byVal hMem As long) As long
declare function GlobalAlloc lib "kernel32" (byVal wFlags as long, byVal dwBytes as long ) as long
declare function CloseClipboard lib "user32" ( ) as long
declare function OpenClipboard lib "user32" (byVal hWnd as long ) as long
declare function EmptyClipboard lib "user32" ( ) as long
declare function SetClipboardData lib "user32" (byVal wFormat as long, byVal hMem as long ) as long
declare function lstrcpy lib "kernel32" (byVal lpString1 as any, byVal lpString2 as any) as long
private const GHND = &H42
private const CF_TEXT = 1
sub clipboard_1()
call string_to_clipboard("Just check it, if it worked....")
end sub
private sub string_to_clipboard(str as string)
dim hGlobalMemory as long
hGlobalMemory = GlobalAlloc(GHND, len(str) + 1)
dim lpGlobalMemory as long
lpGlobalMemory = GlobalLock(hGlobalMemory)
lpGlobalMemory = lstrcpy(lpGlobalMemory, str)
if GlobalUnlock(hGlobalMemory) <> 0 Then
msgBox "Couldn't GlobalUnlock"
end if
if OpenClipboard(0&) = 0 Then
msgBox "Couldn't open Clipboard"
exit sub
end if
dim dummy as long
dummy = EmptyClipboard()
dim hClipMemory as long
hClipMemory = SetClipboardData(CF_TEXT, hGlobalMemory)
if CloseClipboard() = 0 Then
msgBox "Clipboard could not be closed"
end if
end sub