1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#import <Carbon/Carbon.h> void pastInfo(NSString *info){ NSPasteboard *pb = [NSPasteboard generalPasteboard]; [pb declareTypes:@[NSStringPboardType] owner:nil]; [pb setString:info forType:NSStringPboardType]; CGEventSourceRef source = CGEventSourceCreate(kCGEventSourceStateCombinedSessionState); CGEventRef pasteCommandDown = CGEventCreateKeyboardEvent(source, kVK_ANSI_V, YES); CGEventSetFlags(pasteCommandDown, kCGEventFlagMaskCommand); CGEventRef pasteCommandUp = CGEventCreateKeyboardEvent(source, kVK_ANSI_V, NO); CGEventPost(kCGAnnotatedSessionEventTap, pasteCommandDown); CGEventPost(kCGAnnotatedSessionEventTap, pasteCommandUp); CFRelease(pasteCommandUp); CFRelease(pasteCommandDown); CFRelease(source); } |