关于程序多开的尝试。CreateMutex,OpenMuxtex,ReleaseMutex「建议收藏」

关于程序多开的尝试。CreateMutex,OpenMuxtex,ReleaseMutex「建议收藏」因为偶尔会遇到对那些不能支持双开的程序进行多开。。根据前一阵转的一篇文件了解到,现在大多程序都用CreateMutex方式来限制多开,于是有个想法:它Create了,我Release它,然后不就可以多开了吗?然而。。。经过一些小程序的验证及网上的搜索,我失败了。原因是:对于一个Mutex来说,只有Create它的进程才可以Release它。所以想用这种方式是不可能了。不过并不是…

大家好,又见面了,我是你们的朋友全栈君。

因为偶尔会遇到对那些不能支持双开的程序进行多开。。
根据前一阵转的一篇文件了解到,现在大多程序都用CreateMutex方式来限制多开,
于是有个想法:它Create了,我Release它,然后不就可以多开了吗?
然而。。。经过一些小程序的验证及网上的搜索,我失败了。
原因是:对于一个Mutex来说,只有Create它的进程才可以Release它。所以想用这种方式是不可能了。
不过并不是没有收获,经过这次“失败”的试验对Mutex的认识也增加了一些。基本的用法也了解了~
一些小总结:
CreateMutex和OpenMutex在该Mutex已存在时,结果一样,都会返回一个副本HANDLE。
当该Muxtex不存在时,OpenMutex会返回0出错,并可用GetLastError得到错误信息。
ReleaseMutex只能由创建该Mutex的进程执行,不然总是返回错误。
用CloseHandle来释放Mutex时,只是释放当前进程获得的副本句柄,而不会删除该Mutex内核对象。

另:虽然不能用其它进程对某个Mutex进行Release,但可以通过特殊的方式进行。如远程注入,不过远程注入后更方便使用API Hook的方法对CreateMutex进行Hook,那样原则上可以是个“万能”多开了。等有时间了去验证实现一下吧。

转载于:https://www.cnblogs.com/gakusei/archive/2009/02/21/1395462.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/153189.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • netty 权威指南勘误[通俗易懂]

    netty 权威指南勘误[通俗易懂]近日就netty库的使用,试读了netty权威指南一书,就书中的编码问题进行以下校正1、我使用的是4.1.2版本的netty库2、IDE为netbeans8.1E1. handler适配器应使用ChannelInboundHandlerAdapter。 E2. 在私有协议开发一章:     编码器中函数encode中设置帧长度应为以下代码

    2022年9月1日
  • Linux 环境变量配置汇总

    Linux 环境变量配置汇总Linux环境变量配置汇总01、Linux环境变量配置02、Linux读取环境变量03、Linux环境变量配置方法一:exportPATH或者把PATH放在前面04、Linux环境变量配置方法二:vim~/.bashrc在最后一行加上05、Linux环境变量配置方法三:vim~/.bash_profile06、Linux环境变量配置方法四:vim/etc/bashrc07、Linux环境变量配置方法五:vim/etc/profile在最后一行加上08、Linux环境变量配置方法六:vim/et

    2022年5月30日
  • jsp+servlet实现简单登录页面功能Demo

    jsp+servlet实现简单登录页面功能Demo小白新路历程-1[转载请联系本人]实现功能:模拟简单登录功能,登录成功跳转新页面,登录失败在原登录界面提示登录失败信息开发环境:eclipseTomcat-8.0预备知识:HTML标签,Servlet相关知识——请求的转发与重定向,jsp相关知识,EL表达式思路实现:共2个jsp,一个servlet1.登录界面login.jsp:采用jsp,不采用html的原因是因为要进行登录…

    2022年6月18日
  • js查询手机号码归属地[通俗易懂]

    js查询手机号码归属地[通俗易懂]js查询手机号码归属地

    2022年7月22日
  • c# savefiledialog_game是什么意思中文

    c# savefiledialog_game是什么意思中文1、这里通过一个例子来讲解saveFileDialog的使用方法,首先创建一个小的winform程序,然后在主界面中放入一个按钮、一个textbox,按钮用来弹出saveFileDialog,然后textbox用来接收saveFileDialog选择之后的文件路径,如下图:2、下图中的代码就是程序的全部代码了,对其中重要的代码进行解释:InitialDirectory方法:设置save…

    2022年9月25日
  • 锂电池管理芯片_锂电池充放电一体芯片

    锂电池管理芯片_锂电池充放电一体芯片‍FS4001‍4.2/4.354.25-10线性降压充电。FS406‍28.4/8.7/8.8/12.6/13.25开关升压充电。FS40‍08A4.2/8.4/12.69-23开关降压充电。FS406‍38.45-9自适应自适应5V升压和9V降压充电。FS40564.2/4.354.25-6.5线性降压充电。FS40674.2/4.354.25-24线性降压充电。FS40664.2/4.354.25-24线性降压充电。…

    2022年9月27日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号