AutoHotKey写一个改键的小脚本
应D君邀请写一个小的改键软件,用了一上午选择使用的脚本语言,下午开始去写。晚饭的时候,基本的功能完成了。先所说我要完成的脚本的功能吧。软件有一定编程基础的D君用,用户比较特定,功能越简单越好。因此,软件实现了手动添加快捷键打开和关闭改键,修改AutoHotKey脚本设置修改键。当然为了易用编写一个自动安装(软件自启动)和自动卸载的功能,这个功能自然是通过修改注册表实现的啦。
废话不多说,直接上干货!!
1 脚本语言的选择
2 改建功能的实现
^j::
Send, !f4
Return
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.;在这里设置快捷键 比如讲小键盘Numpad7 修改成Alt键可以添加:Numpad7::AltNumpad7::Alt
Numpad8::Control
Numpad9::Del
脚本代码将小键盘的7,8,9修改成了Alt,Control和Delete键。控制键(Ctrl,Home等)对应的表示方式见:https://autohotkey.com/docs/Hotkeys.htm
3 改键开关功能实现
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.#NoTrayIcon ; 隐藏托盘图标;如果已经存在alterKeys.exe,结束进程
Process,Exist,alterKeys.exe ;获取alterKeys.exe的PID
if (ErrorLevel !=0) ;等于0, 说明A进程不存在
{Process,Close,alterKeys.exe
};替换F1为对应的打开快捷键
F1:: ;快捷激活改建
Run alterKeys.exe
Return;替换F2为对应的打开快捷键
F2:: ;快捷取消改建
Process,Exist,alterKeys.exe ;获取alterKeys.exe的PID
if (ErrorLevel !=0) ;等于0, 说明A进程不存在
{Process,Close,alterKeys.exe
}
Return
加上#NoTrayIcon不让autoRun的壳程序在托盘显示。使用Run命令运行autoKey.exe,使用Process,Exist,alterKeys.exe 可以知道alterKeys.exe文件是不是已经运行,使用Process,Close,alterKeys.exe 结束alterKeys.exe进程。
4 加入开机启动
@echo off
echo 正在安装程序....
echo 程序当前路径为:%~dp0
echo 写入注册表
set exePath=%~dp0autoRun.exe
echo %exePath%
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /v alterKeys /d %exePath% /t REG_SZ /f
echo 安装完成
(echo 安装成功,5秒后关闭 & echo 使用说明:& echo **默认使用F1启动改建功能 &echo **使用F2关闭改建功能. &echo 如需修改请修改源代码后编译运行.) | msg %username% /TIME:5 /w
顺势又写了一个自动卸载的脚本,就是将选项从注册表中删除就行了。核心代码就一句 reg delete "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /v alterKeys /f
什么是架构设计?架构设计看这篇文章就够了
Redis为什么这么快?
重磅:解读2020年最新JVM生态报告
BIO,NIO,AIO 总结
JDK8的新特性,你知道多少?
回复“资料”,免费获取 一份独家呕心整理的技术资料!
AutoHotKey写一个改键的小脚本相关推荐
- 用C#钩子写一个改键外挂
我的微信群--软件开发测试工程师交流群,欢迎扫码: 改键是一种习惯,比如在玩儿lol或者dota的时候.理论上玩儿什么游戏都可以改键. 做一个窗体(点击Install--应用改键,点击Uninstal ...
- 利用python来自己写一个服务器台账统计小工具
利用python来自己写一个服务器台账统计小工具 前言 无奈呀,压力创造成品 背景是这样的,相信在看的各位在管理服务器密码的时候,肯定会有个台账啥的,当然咱也有,但是吧,为了安全期间,不允许出现在服务 ...
- 教你用Python写一个京东自动下单抢购脚本(Python实现京东自动抢购)
很多朋友都有网购抢购限量商品的经历,有时候蹲点抢怎么也抢不到,今天小编带你们学习怎么用Python写一个京东自动下单抢购脚本,以后再也不用拼手速拼网速啦,快来一起看看吧 1 问题背景 经过无数次抢购失 ...
- python软件代码示例-用Python写一个模拟qq聊天小程序的代码实例
Python 超简单的聊天程序 客户端: import socket, sys host = '10.248.27.23' # host = raw_input("Plz imput des ...
- 用 C# 写一个 Redis 数据同步小工具
用 C# 写一个 Redis 数据同步小工具 Intro 为了实现 redis 的数据迁移而写的一个小工具,将一个实例中的 redis 数据同步到另外一个实例中.(原本打算找一个已有的工具去做,找了一 ...
- 能不能用python开发qq_用Python写一个模拟qq聊天小程序的代码实例
用Python写一个模拟qq聊天小程序的代码实例 发布时间:2020-09-09 07:49:29
- Python:教你如何写一个测量网速的小工具
hello,大家好,我是wangzirui32,今天我们来学习如何写一个测量网速的小工具,开始学习吧! 1. pip安装 这个项目主要依赖speedtest_cli模块,pip安装: pip inst ...
- 用Python写一个模拟qq聊天小程序的代码实例
前言 今天小编就为大家分享一篇关于用Python写一个模拟qq聊天小程序的代码实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧 Python 超简单的聊天 ...
- 利用random 的randint 方法写一个猜数字的小游戏
学习python第二天,编写的一款数字小游戏 昨天学习完条件语句和while循环,老师留下的作业:利用random 的randint 方法写一个猜数字的小游戏. 第一次在CSDN上记录,小白一枚.希望 ...
最新文章
- 服务器技术综述(四)
- 求过去9天的相同时刻的平均值的sql(MYSQL)语句(去掉最大值,最小值)
- CentOS7下的Django2集成部署五:Jenkins的流水线部署pipeline-job
- PgwSlideshow-基于Jquery的图片轮播插件
- Cloud Programming Simplifie : A Berkeley View on Serverless Computing
- Velocity语法大全
- java反多态的代码_Java多态性代码详解
- Facebook 约十亿美元收购脑机技术公司,助攻AR研发;苹果宣布新款 Mac Pro 在美国生产;谷歌称已实现量子霸权…...
- springboot templates读取不到_精通 Spring Boot 系列 04
- vs2008与oracle数据库连接
- ubuntu 的重要一课
- zabbix2.4.6升级zabbix3.0.8后无法发送报警邮件
- php 多选按钮,单选和多选按钮如何给图片加样式
- Android 自定义viewGroup实现淘宝二楼及处理多指触控事件
- 微软也招 Java!
- 树莓派4B连接PCF8591模块
- 10月25日 c语言 读取7个数(1—50)的整数值,每读取一个值,程序打印出该值个数的*
- Java虚拟机不能满足_深入理解Java虚拟机--读书笔记1/3
- 玩《Minecraft我的世界》学python编程,可免费领|取电子学习版本
- 10月11日 驱动开发
热门文章
- 解决使用yum安装软件时出现GPG-Key的问题
- 【实战操作】使用FFmpeg将一个视频文件中音频合成到另一个视频中 只需三秒
- 罗杰斯的创新扩散模型
- 电压和电流反馈判别及例子,绝对让你通透,其实也没有那么难,一次就看懂!从此终于搞懂了电压反馈和电流反馈!
- status_breakpoint谷歌浏览器如何解决?
- IT售前方法技能实战培训
- 音视频从入门到精通——FFmpeg之swr_convert音频重采样函数分析
- 雷电2接口_雷电3和TYPE-C都是干什么的?一文读懂全部
- 技术人攻略访谈四十|刘睿民:数据库战国时代,我不跟你们玩政治!
- Unity 实现图标的拖拽功能