WIN7系统的Sendkeys是不是不能用

WIN7系统的Sendkeys是不是不能用,第1张

台式机的话很可能USB的驱动没装上,笔记本的话就是键盘和鼠标驱动没装上。在其他电脑上下载一个带万能网卡驱动版驱动精灵安装包,拷贝到winpe的U盘里,用U盘winpe启动起来,再把U盘里的驱动精灵安装包拷贝到你的硬盘里面,退出winpe,用你的硬盘启动到win7里,安装驱动精灵,(安装的时候注意一下,它会夹塞默认安装第三方的“金山独霸”,这个“独霸”装上以后会和360公司的软件掐架,系统就卡卡的,有360公司的软件在,“独霸”还不能卸载,一定要把360公司的软件卸载之后,“独霸”才能卸载,真是够霸的!安装的时候注意,把“独霸”前的勾勾去掉)。运行驱动精灵之后,它会自己侦测需要安装,升级的所有驱动和管理软件,然后自己会联网去官网按照你的机型下载对应的驱动和管理程序,你只要点“是”,“下一步”,“完成”,等所有驱动和管理程序都装好了,重启一次就OK了。

似乎用SendKeys.Send无法实现发送组合键“Windows+L”。

有一个替代的方法。如下

Imports System.Diagnostics

Public Class Form1

    ' 鼠标双击窗体后锁屏!

    Private Sub Form1_DoubleClick(sender As Object, _

                    e As EventArgs) Handles Me.DoubleClick

        Process.Start("rundll32.exe", "user32.dll, LockWorkStation")

    End Sub

End Class

VB6诞生的时候,键盘上还没有那个win键(与此类似的就是那时候的鼠标是没有滚轮的),所以VB6不直接支持win键(以及鼠标滚轮),SendKeys也不能模拟win键。下面的代码在WinXP可以模拟win键,但在Win7无效:

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

Private Const VK_LWIN = &H5B

Private Sub Command1_Click()

keybd_event VK_LWIN, 0, &H1, 0

keybd_event VK_LWIN, 0, &H2, 0

End Sub

我暂时还没找到在Win7模拟win键的方法

vbNormalFocus是VB内部的一个常数,表示用Shell命令打开的外部程序窗口保持正常状态(非最大化、最小化及隐藏状态)并且使其获得焦点


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11141349.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-13
下一篇 2023-05-13

发表评论

登录后才能评论

评论列表(0条)

保存