怎么模拟在一个文件上,进行Ctrl+C的操作。

时间:2022-12-16 23:17:05
例如,现在有一个文件,D:\1.txt

现在要实现的操作是,Ctrl+C这个文件。


怎么用程序实现,不是手动操作。

10 个解决方案

#1


发中断信号呗,不过windows貌似只有raise,没有kill,只能给自己发

#2


我不清楚你的意图,如果你仅仅想是复制一个文件,可以用windows的系统api,如CopyFile或者CopyFileEx等

#3


如果是真么简单就好了。

我想把一个文件,复制到QQ对话框中。

引用 2 楼 lilin007007 的回复:
我不清楚你的意图,如果你仅仅想是复制一个文件,可以用windows的系统api,如CopyFile或者CopyFileEx等

#4


引用 3 楼 u012727530 的回复:
如果是真么简单就好了。

我想把一个文件,复制到QQ对话框中。

Quote: 引用 2 楼 lilin007007 的回复:

我不清楚你的意图,如果你仅仅想是复制一个文件,可以用windows的系统api,如CopyFile或者CopyFileEx等

你说明意图就好办了哇,可以调用系统的剪切板,你查下资料,这个应该可以解决

#5


SendInput发送按键消息行不

#7


要看什么环境了,windows我不懂。
linux下的话,获得那个进程ID之后,直接调用kill函数就可以了。

#8


怎么还没结贴给分啊,我又来了,楼上的几位都没明白楼主的意图,他的Ctrl+c是想复制,并不是终止进程,这个用剪切板是可以实现的,ctrl+c就是把东西放进系统的剪切板中,ctrl+v就是把剪切板中的东西放到目标位置,而剪切板也提供了这两个快捷键类似的api

#9


SetClipboardData
The SetClipboardData function places data on the clipboard in a specified clipboard format. The window must be the current clipboard owner, and the application must have called the OpenClipboard function. (When responding to the WM_RENDERFORMAT and WM_RENDERALLFORMATS messages, the clipboard owner must not call OpenClipboard before calling SetClipboardData.) 

HANDLE SetClipboardData(
  UINT uFormat, // clipboard format
  HANDLE hMem   // data handle
);
 
Parameters
uFormat 
Specifies a clipboard format. This parameter can be a registered format or any of the standard clipboard formats. For more information, see Registered Clipboard Formats and Standard Clipboard Formats. 
hMem 
Handle to the data in the specified format. This parameter can be NULL, indicating that the window provides data in the specified clipboard format (renders the format) upon request. If a window delays rendering, it must process the WM_RENDERFORMAT and WM_RENDERALLFORMATS messages. 
After SetClipboardData is called, the system owns the object identified by the hMem parameter. The application can read the data, but must not free the handle or leave it locked. If the hMem parameter identifies a memory object, the object must have been allocated using the GlobalAlloc function with the GMEM_MOVEABLE and GMEM_DDESHARE flags. 

Return Values
If the function succeeds, the return value is the handle of the data.

If the function fails, the return value is NULL. To get extended error information, call GetLastError. 

Remarks
The uFormat parameter can identify a registered clipboard format, or it can be one of the standard clipboard formats. For more information, see Registered Clipboard Formats and Standard Clipboard Formats. 

The system performs implicit data format conversions between certain clipboard formats when an application calls the GetClipboardData function. For example, if the CF_OEMTEXT format is on the clipboard, a window can retrieve data in the CF_TEXT format. The format on the clipboard is converted to the requested format on demand. For more information, see Synthesized Clipboard Formats. 

Windows CE: The data to be set into the clipboard should be allocated using the LocalAlloc function. 

Windows CE does not support the following uFormat values: 

CF_GDIOBJFIRST through CF_GDIOBJLAST 

CF_DSPBITMAP 

CF_DSPENHMETAFILE 

CF_DSPMETAFILEPICT 

CF_DSPTEXT 

CF_HDROP 

CF_LOCALE 

CF_OWNERDISPLAY 

CF_PRIVATEFIRST through CF_PRIVATELAST 

Windows CE does not perform any implicit conversions between formats. 

QuickInfo
  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Requires version 1.0 or later.
  Header: Declared in winuser.h.
  Import Library: Use user32.lib.

See Also
Clipboard Overview, Clipboard Functions,BITMAPINFO, GetClipboardData, GlobalAlloc, GlobalFree, METAFILEPICT, OpenClipboard,RealizePalette, RegisterClipboardFormat,SelectPalette, WM_ASKCBFORMATNAME, WM_DESTROYCLIPBOARD, WM_HSCROLLCLIPBOARD, WM_PAINTCLIPBOARD, WM_RENDERFORMAT, WM_RENDERALLFORMATS, WM_SIZECLIPBOARD, WM_VSCROLLCLIPBOARD 

 

#1


发中断信号呗,不过windows貌似只有raise,没有kill,只能给自己发

#2


我不清楚你的意图,如果你仅仅想是复制一个文件,可以用windows的系统api,如CopyFile或者CopyFileEx等

#3


如果是真么简单就好了。

我想把一个文件,复制到QQ对话框中。

引用 2 楼 lilin007007 的回复:
我不清楚你的意图,如果你仅仅想是复制一个文件,可以用windows的系统api,如CopyFile或者CopyFileEx等

#4


引用 3 楼 u012727530 的回复:
如果是真么简单就好了。

我想把一个文件,复制到QQ对话框中。

Quote: 引用 2 楼 lilin007007 的回复:

我不清楚你的意图,如果你仅仅想是复制一个文件,可以用windows的系统api,如CopyFile或者CopyFileEx等

你说明意图就好办了哇,可以调用系统的剪切板,你查下资料,这个应该可以解决

#5


SendInput发送按键消息行不

#6


#7


要看什么环境了,windows我不懂。
linux下的话,获得那个进程ID之后,直接调用kill函数就可以了。

#8


怎么还没结贴给分啊,我又来了,楼上的几位都没明白楼主的意图,他的Ctrl+c是想复制,并不是终止进程,这个用剪切板是可以实现的,ctrl+c就是把东西放进系统的剪切板中,ctrl+v就是把剪切板中的东西放到目标位置,而剪切板也提供了这两个快捷键类似的api

#9


SetClipboardData
The SetClipboardData function places data on the clipboard in a specified clipboard format. The window must be the current clipboard owner, and the application must have called the OpenClipboard function. (When responding to the WM_RENDERFORMAT and WM_RENDERALLFORMATS messages, the clipboard owner must not call OpenClipboard before calling SetClipboardData.) 

HANDLE SetClipboardData(
  UINT uFormat, // clipboard format
  HANDLE hMem   // data handle
);
 
Parameters
uFormat 
Specifies a clipboard format. This parameter can be a registered format or any of the standard clipboard formats. For more information, see Registered Clipboard Formats and Standard Clipboard Formats. 
hMem 
Handle to the data in the specified format. This parameter can be NULL, indicating that the window provides data in the specified clipboard format (renders the format) upon request. If a window delays rendering, it must process the WM_RENDERFORMAT and WM_RENDERALLFORMATS messages. 
After SetClipboardData is called, the system owns the object identified by the hMem parameter. The application can read the data, but must not free the handle or leave it locked. If the hMem parameter identifies a memory object, the object must have been allocated using the GlobalAlloc function with the GMEM_MOVEABLE and GMEM_DDESHARE flags. 

Return Values
If the function succeeds, the return value is the handle of the data.

If the function fails, the return value is NULL. To get extended error information, call GetLastError. 

Remarks
The uFormat parameter can identify a registered clipboard format, or it can be one of the standard clipboard formats. For more information, see Registered Clipboard Formats and Standard Clipboard Formats. 

The system performs implicit data format conversions between certain clipboard formats when an application calls the GetClipboardData function. For example, if the CF_OEMTEXT format is on the clipboard, a window can retrieve data in the CF_TEXT format. The format on the clipboard is converted to the requested format on demand. For more information, see Synthesized Clipboard Formats. 

Windows CE: The data to be set into the clipboard should be allocated using the LocalAlloc function. 

Windows CE does not support the following uFormat values: 

CF_GDIOBJFIRST through CF_GDIOBJLAST 

CF_DSPBITMAP 

CF_DSPENHMETAFILE 

CF_DSPMETAFILEPICT 

CF_DSPTEXT 

CF_HDROP 

CF_LOCALE 

CF_OWNERDISPLAY 

CF_PRIVATEFIRST through CF_PRIVATELAST 

Windows CE does not perform any implicit conversions between formats. 

QuickInfo
  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Requires version 1.0 or later.
  Header: Declared in winuser.h.
  Import Library: Use user32.lib.

See Also
Clipboard Overview, Clipboard Functions,BITMAPINFO, GetClipboardData, GlobalAlloc, GlobalFree, METAFILEPICT, OpenClipboard,RealizePalette, RegisterClipboardFormat,SelectPalette, WM_ASKCBFORMATNAME, WM_DESTROYCLIPBOARD, WM_HSCROLLCLIPBOARD, WM_PAINTCLIPBOARD, WM_RENDERFORMAT, WM_RENDERALLFORMATS, WM_SIZECLIPBOARD, WM_VSCROLLCLIPBOARD 

 

#10