C#更改另一个运行的应用程序窗口的属性

时间:2011-04-24 07:17:55

标签: c# properties intptr

如果我有正在运行的程序的IntPtr,是否有任何方法可以更改该窗口的属性---例如:FormBorderStyle,ShowInTaskbar甚至BackColor等属性?

我对C#很陌生,如果可能的话,我真的很好奇。

非常感谢您的时间和帮助!

1 个答案:

答案 0 :(得分:0)

不,您无法直接操纵其他进程的窗口的托管属性。然而,通过一点点诡计,你可以实现这一点。

您需要做的是将一段托管代码注入正在运行的进程中,然后这段注入的代码将负责实际操作该进程中托管窗口/控件的属性。

不要反复回流大量的信息,而是看看这个旧的代码项目文章,该文章实现了您所寻找的几乎所有内容。请记住,这仅用于管理另一个.NET进程中托管窗口的属性,并且您可能在使用不同版本的.NET时遇到问题。

http://www.codeproject.com/KB/dotnet/wfspy.aspx