换句话说,我可以指望控件ID作为可靠的标识符吗?
从我已经完成的一些阅读中,听起来.NET控件可以拥有随每次运行而变化的控件ID,对于Win32应用程序也是如此,或者它们是否在源代码中被硬编码?
有问题的窗口/控件实际上是一个Internet Explorer对话框,如果这有帮助.
通常,运行应用程序时,win32对话框资源ID不会更改.但是,它们是内部实现细节,因此只要对应用程序进行更新(修补程序,Service Pack,主要版本),它们就会发生变化.
通常,IE的所有对话框都使用硬编码控件ID.可能有一些是动态的.如果你给出具体的控制,我可能会给你一个更好的答案.