C# 如何把另一个进程里hiden掉的窗口show出来

woshinia 2012-09-24 11:11:10
我现在在做一个C#程序,利用Mutex检测程序是否被多开了,如果多开就要把之前已经开启的程序show出来,然后关闭自己。

程序的显示状态有2种,1是程序任务栏(开始按钮那一行)有图标,但不是顶层窗口,那么就需要置顶。

2是,程序被最小化到托盘,也就是被hiden掉了,那么需要让它show出来。

如何做到这2种处理方式呢,需要用到进程间通信么,还是有更简单的方法。请赐教。
...全文
380 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
baidu_28602209 2015-05-30
  • 打赏
  • 举报
回复
楼主您好,我也遇到了跟您这个完全相同的问题,能否赐教?不甚感激
woshinia 2012-11-09
  • 打赏
  • 举报
回复
好吧,可以利用COPYDATA这个消息传递,还是很好用的
woshinia 2012-09-24
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 的回复:]

Setup1.msi
你把这个名字改一下吧。360以名字认是不是病毒的。
360依然是这么垃圾。
[/Quote]

求帮我反编译一下,有代码就好了,这个exe我也不知道怎么编译,谢谢了。
足球中国 2012-09-24
  • 打赏
  • 举报
回复
Setup1.msi
你把这个名字改一下吧。360以名字认是不是病毒的。
360依然是这么垃圾。
足球中国 2012-09-24
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

引用 3 楼 的回复:

http://files.cnblogs.com/dataexcel/yufb.rar
7年前vb.net写的垃圾东东。(最初是vb写的)应该可以反编译出c#代码
里面有你要的。
介绍一下主要功能。有启动项理管理,进程管理。进程的暂停还是比较好用的。
还有一键关机。还有服务管理,窗口管理,有一键隐藏窗口。

里面有把隐藏窗口显示出来的。
代码很烂。没……
[/Quote]

不是木马。
这东东可以编译出源码的有没有木马自己看呗。。。
你如果用360的话。那不是我的问题哦。
SocketUpEx 2012-09-24
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

进程间通信,或者两个软件都打开一个tcp端口,一个服务端,一个客户端,
软件默认打开服务端,如果已经启动,打开服务端失败,那么说明软件已经存在,通过tcp客户端给服务端发送一条信息,然后退出.原来的软件收到信息后就自动显示.
当然,这只是一个思路.进程通信可以采取其它更简便的方法.或者干脆监视配置文件,
增加一个变量a,默认打开为true.第二个进程打开的时候,遍历发现如果有相同进程,则修……
[/Quote]

没这么严重
其实只要找到窗口句柄就行了
FindWindow

tudiy 2012-09-24
  • 打赏
  • 举报
回复
                Form fm=new Form();                
fm.Hide();
///////////////////////////////////////
fm.Show();
fm.Activate();

???
火星大能猫 2012-09-24
  • 打赏
  • 举报
回复
进程间通信,或者两个软件都打开一个tcp端口,一个服务端,一个客户端,
软件默认打开服务端,如果已经启动,打开服务端失败,那么说明软件已经存在,通过tcp客户端给服务端发送一条信息,然后退出.原来的软件收到信息后就自动显示.
当然,这只是一个思路.进程通信可以采取其它更简便的方法.或者干脆监视配置文件,
增加一个变量a,默认打开为true.第二个进程打开的时候,遍历发现如果有相同进程,则修改为false并退出.
同时软件监视文件修改后的值等.
woshinia 2012-09-24
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

http://files.cnblogs.com/dataexcel/yufb.rar
7年前vb.net写的垃圾东东。(最初是vb写的)应该可以反编译出c#代码
里面有你要的。
介绍一下主要功能。有启动项理管理,进程管理。进程的暂停还是比较好用的。
还有一键关机。还有服务管理,窗口管理,有一键隐藏窗口。

里面有把隐藏窗口显示出来的。
代码很烂。没有啥条理性。看看功能就可以。
[/Quote]

还发我个木马,你真牛
足球中国 2012-09-24
  • 打赏
  • 举报
回复
http://files.cnblogs.com/dataexcel/yufb.rar
7年前vb.net写的垃圾东东。(最初是vb写的)应该可以反编译出c#代码
里面有你要的。
介绍一下主要功能。有启动项理管理,进程管理。进程的暂停还是比较好用的。
还有一键关机。还有服务管理,窗口管理,有一键隐藏窗口。

里面有把隐藏窗口显示出来的。
代码很烂。没有啥条理性。看看功能就可以。
woshinia 2012-09-24
  • 打赏
  • 举报
回复
这是有要求的,不是我能决定的,所以必须要啊
xiehuangda 2012-09-24
  • 打赏
  • 举报
回复
不用那样做。直接做成,这个程序,只能打开一个。
如果,同一个软件,打开2次,就提示,程序已经运行。
就可以了。

110,500

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧