盒子
盒子
文章目录
  1. 写入

剪切板

写入

# coding=gbk
"""
清空剪切板,读取 / 写入字符串:win10, python3 校验有效
"""
import datetime
from ctypes import *

user32 = windll.user32
kernel32 = windll.kernel32

def get_clipboard():
user32.OpenClipboard(c_int(0))
contents = c_char_p(user32.GetClipboardData(c_int(1))).value
user32.CloseClipboard()
return contents

def empty_clipboard():
user32.OpenClipboard(c_int(0))
user32.EmptyClipboard()
user32.CloseClipboard()

def set_clipboard(data):
# 打开剪切板
user32.OpenClipboard(c_int(0))
# 清空
user32.EmptyClipboard()
# 写入
alloc = kernel32.GlobalAlloc(0x2000, len(bytes(data, encoding='utf_8')) + 1)
lock = kernel32.GlobalLock(alloc)
cdll.msvcrt.strcpy(c_char_p(lock), bytes(data, encoding='utf_8'))
kernel32.GlobalUnlock(alloc)
user32.SetClipboardData(c_int(1), alloc)
# 关闭
user32.CloseClipboard()

if __name__ == '__main__':
# 写入
set_clipboard(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
# 获取
text_raw = get_clipboard()
print('{0} {1}'.format(text_raw, type(text_raw)))
支持一下
扫一扫,支持一下
  • 微信扫一扫
  • 支付宝扫一扫