找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 14646|回复: 7

初学者的一段第三方代码。[C语言]

[复制链接]
发表于 2015-10-19 22:28:43 | 显示全部楼层 |阅读模式

  1. #include <Windows.h>
  2. int main(int argc,char *argv[])
  3. {
  4.         HWND wnd;   
  5.             if(strcmp(argv[1],"/a") == 0){   //判断批处理的参数是否为-a
  6.                  wnd = FindWindow(NULL,argv[2]);   //API调用第三个参数。获取第三个参数的句柄
  7.              EnableWindow(wnd,NULL);    //API禁止窗口活动。
  8.                  puts("窗口已经上锁!");    //显示窗口文本。
  9.         }
  10.         else if(strcmp(argv[1],"/b") == 0){
  11.                  wnd = FindWindow(NULL,argv[2]);
  12.              EnableWindow(wnd,TRUE);
  13.                  puts("窗口已经解锁!");
  14.         }else{
  15.                 puts("请输入正确的参数");
  16.         }
  17.     return 0;
  18. }
复制代码
功能 禁止窗口活动。

代码更改了一下,加了三个参数。/a和/b还有/help。/a是禁止窗口行为的,/b是取消窗口行为的。/help是帮助文件

软件在Vs2010下测试通过。谢谢CrLf朋友,将EXE静态编译,文件大小大大减少。

Enable [/aAnd/b] [hwmd]

/a和/b  参数,/a为禁止窗口活动参数,/b为允许窗口活动参数。

hwnd    句柄,一般来说为标题内容,如计算器的句柄为计算器!也可用工具获取。

示例:  Enable /a QQ 此处命令为禁止QQ窗口一切运行。

评分

参与人数 2技术 +2 收起 理由
CrLf + 1 感谢分享
依山居 + 1 1

查看全部评分

发表于 2015-10-19 23:05:56 | 显示全部楼层
本帖最后由 CrLf 于 2015-10-19 23:09 编辑

可静态编译,或改用 gcc 或 tcc 编译,就不需要携带笨重的 vs 库了
 楼主| 发表于 2015-10-19 23:20:58 | 显示全部楼层
回复 2# CrLf


    果真大神,我找找,谢谢了,现在给别人发程序都还带个DLL,也是够 恶心的
 楼主| 发表于 2015-10-19 23:30:40 | 显示全部楼层
回复 2# CrLf


尝试了一下,果真好用
发表于 2015-10-20 00:09:10 | 显示全部楼层
用CodeBlocks也行,集成编辑器,可以切换编译器
发表于 2015-10-20 03:45:15 | 显示全部楼层
测试了还是需要 dll,建议用 gcc 编译,然后用 strip 精简体积,本机最终结果为 15kb
另外,建议加上参数不足二个或参数错误时显示帮助的功能,等功能全面且稳定后,我把它上传到 batch-cn
 楼主| 发表于 2015-10-20 05:57:24 | 显示全部楼层

标题

回复 6# CrLf

昨天躺在床上才想到,测试的电脑也安装了vs,也是醉了,我跑完早操在改一下。
 楼主| 发表于 2015-10-20 20:57:07 | 显示全部楼层
回复 6# CrLf


    好了,已经静态编译完了,我在虚拟机上测试可用。有帮助参数.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-16 22:03 , Processed in 0.018126 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表