C语言 将字符串写入剪切板

源代码

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <Windows.h>
/*将字符串写入到剪切板*/
int setClipbar(const char *data){
    int contentSize = strlen(data) + 1;
    HGLOBAL hMemory; LPTSTR lpMemory;
    if(!OpenClipboard(NULL)) return 0;/* 打开剪切板 */
    if(!EmptyClipboard()) return 0; /* 清空剪切板 */
    if(!(hMemory = GlobalAlloc(GMEM_MOVEABLE, contentSize))) return 0;/* 对剪切板分配内存 */
    if(!(lpMemory = (LPTSTR)GlobalLock(hMemory))) return 0;/* 锁定内存区域 */
    memcpy_s(lpMemory, contentSize, data, contentSize);    /* 复制数据到内存区域 */
    GlobalUnlock(hMemory);                                 /* 解除内存锁定 */
    if(!SetClipboardData(CF_TEXT, hMemory)) return 0;      /* 设置剪切板数据 */
    printf("成功复制【%s】到剪切板,字符串长度为%d。\n",data,contentSize);
    CloseClipboard();/* 关闭剪切板 */
    return 1;
}
int main(){
	setClipbar("abcdefg");
	getchar();
	return 0;
}
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值