1. 程式人生 > >C++,開啟關閉與使用,剪下板ClipBoard

C++,開啟關閉與使用,剪下板ClipBoard

為了解決程序間通訊,比寫txt更小巧的一種方式。
C++裡邊如果不close的話,ctrl+v是用不了剪貼簿的。

#define _AFXDLL
#include <iostream>
#include <assert.h>
#include <string>
#include <stdlib.h>
#include <afx.h>

using namespace std;


void toClipboard(const std::string &s) {
    OpenClipboard(0);
    EmptyClipboard();
    HGLOBAL hg = GlobalAlloc(GMEM_MOVEABLE, s.size());
    if
(!hg) { CloseClipboard(); return; } memcpy(GlobalLock(hg), s.c_str(), s.size()); GlobalUnlock(hg); SetClipboardData(CF_TEXT, hg); CloseClipboard(); GlobalFree(hg); } int main(char argc, char *argv) { string a = "f:\\9949.jpgt"; //toClipboard(a); HANDLE h; if
(OpenClipboard(NULL)) { h = GetClipboardData(CF_TEXT); printf("%s\n", (char *)h); CloseClipboard(); } system("pause"); return 0; }