标题: [系统相关] 批处理调用c#.net获取Caps Lock、Num Lock和Scroll Lock键的状态 [打印本页]
作者: pcl_test 时间: 2016-6-14 20:56 标题: 批处理调用c#.net获取Caps Lock、Num Lock和Scroll Lock键的状态
本帖最后由 pcl_test 于 2019-10-27 11:02 编辑
- /*&cls
- @echo off
- set "netpath=%systemroot%\Microsoft.NET\Framework"
- for /f "delims=" %%a in ('dir /ad /b "%netpath%\v?.*"') do (
- if exist "%netpath%\%%a\csc.exe" (
- set "cscpath=%netpath%\%%a\csc.exe"
- goto :end
- )
- )
- echo;未安装.Net Framework 2.0及其上版本组件或相关程序丢失&pause&exit
- :end
- if not exist "%tmp%\$CheckKeyLocked.exe" (
- "%cscpath%" /out:"%tmp%\$CheckKeyLocked.exe" "%~f0"
- )
- "%tmp%\$CheckKeyLocked.exe"
- pause&exit
- */
- using System;
- using System.Windows.Forms;
- class CheckKeyLocked
- {
- static void Main(string[] args)
- {
- Console.WriteLine(
- "Caps Lock: "+(Control.IsKeyLocked(Keys.CapsLock)?"ON":"OFF")+"\r\n"+
- "Num Lock: "+(Control.IsKeyLocked(Keys.NumLock)?"ON":"OFF")+"\r\n"+
- "Scroll Lock: "+(Control.IsKeyLocked(Keys.Scroll)?"ON":"OFF"));
- }
- }
复制代码
作者: codegay 时间: 2016-6-14 22:55
想了一下,哈哈,其它语言也可以直接这样调用.net。粗暴实用。
作者: codegay 时间: 2016-6-14 23:02
能把.net的源码文件搞成和批处理混编吗?
不用more了
作者: codegay 时间: 2016-6-14 23:08
好吧,我看错了。这样的写法可以不用more也可以。
作者: pcl_test 时间: 2016-6-14 23:27
本帖最后由 pcl_test 于 2017-5-12 21:39 编辑
回复 4# codegay
嗯,原本就是混编了,去掉more那行语句,"%tmp%\$"改为"%~f0"即可
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |