纽曼大学:[VB]为什么用sendkeys函数输入中文字符的时候会是???

来源:百度文库 编辑:中科新闻网 时间:2024/04/28 22:37:33
在VB中使用sendkeys函数输出文字时,
为什么字符都变成了 ????? ,而字母或数字就正常输出?请知道的高手帮忙一下,其实这问题很早就想问了.
请问有什么办法能使他发送文字字符.或者用什么函数!

Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

clipboard.SetText "总队地沪赴俄铁"
Call keybd_event(vbKeyShift, 0, 0, 0)
Call keybd_event(vbkeyv,0,0,0)
Call keybd_event(vbKeyShift, 0, 2, 2)

可用以下的办法:
Clipboard.Clear
Clipboard.SetText "这里换成你要发送的字符串"
SendKeys "^v"
就是先把你要发送的中文复制到剪帖板,再发送粘帖.

Sendkey 函数是向系统发送按键消息,它是不能发送中文的,具体的你参阅一下 MSDN 编程手册。