什么是Visual Studio创build.NET窗体时分配的窗口类名称?

就像在VC ++创build窗口时一样,我们需要创build一个窗口类并使用RegisterClass或RegisterClassEx来注册。 但在.NET中,我们没有这一步。

所以我想知道在创build窗体时由Visual Studio分配的默认窗口类名是什么?

正如我追踪到的,由Visual Studio分配的窗口类名称有点类似于这个:
WindowsForms10.Window.8.app.0.1ca0192_r13_ad1

我想改变这个默认的窗口类名称,任何想法?

Solutions Collecting From Web of "什么是Visual Studio创build.NET窗体时分配的窗口类名称?"

窗口类名称是自动生成的。 即使CreateParams允许您设置ClassName属性,也无法更改它们。 外部程序也不能正确猜测自动生成的名称,它的一部分是从AppDomain.CurrentDomain.GetHashCode()生成的。

您需要另一种方法来识别窗口。 没有多少可用的,但你可以Pinvoke SetProp()将一个任意的字符串关联到一个窗口。 并测试它是否与GetProp()一起出现。 SDK文章在这里 。