1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| #include <windows.h>
#include <stdio.h>
#include "Presse_Papier.h"
void BailOut(char *msg)
{
fprintf(stderr, "Exiting: %s\n", msg);
exit(1);
}
const char* Lire_du_PressePapier()
{
HANDLE h;
if (!OpenClipboard(NULL)) BailOut("Presse-Papier impossible à ouvrir");
h = GetClipboardData(CF_TEXT);
CloseClipboard();
return (char *) h;
}
void Ecrire_dans_PressePapier(const char* w)
{
const size_t len = strlen(w) + 1;
HGLOBAL hMem = GlobalAlloc(GMEM_MOVEABLE, len);
memcpy(GlobalLock(hMem), w, len);
GlobalUnlock(hMem);
OpenClipboard(0);
EmptyClipboard();
SetClipboardData(CF_TEXT, hMem);
CloseClipboard();
} |
Partager