请教一个关于IntPtr初始化的怪异问题
晚上在做实验的时候,用 IntPtr iWnd = new IntPtr(0)的语句来初始化一个实例。
如上语句在编译的时候没有任何问题,可是当运行的时候就报错,报错消息如下:
“未处理的“System.IndexOutOfRangeException”类型的异常出现在 GetSamples.exe 中。
其他信息: 索引超出了数组界限”。
不知何故,请指点!
谢谢
楼上两位抱歉,今天笔记本硬盘坏了(哭ing),没能上网,网上回家刚刚看到回帖。
除了上面的问题而外,今天发现了一个更为怪异的问题。
下面先说第一个问题的背景
上面的问题出现的背景:在程序中访问另一个窗体的控件,并修改其内容。由于我把昨天的写那段程序改掉了,我只记得部分内容。
.....
string[] ControlText = new string[3]{"AT","BT","DT"}; //需要查找的Button的标题
IntPtr ParenthWnd = new IntPtr(0);(??????)
IntPtr EdithWnd = new IntPtr(0);
.......
编译时没有任何问题,但是当运行的时候,问题就发生在(?????)语句处,错误提示为:“未处理的“System.IndexOutOfRangeException”类型的异常出现在 GetSamples.exe 中。
其他信息: 索引超出了数组界限”。
今天发生的怪异问题是:
依然是如上的语句,我把string[] ControlText那一行注销后,程序就没发生任何问题。最开始的时候我怀疑是不是string[] ControlText那一行语句的字体出了什么问题,可是将其全部删除重写之后依然有如上的问题。
百思不得其解,请大家一起来讨论讨论。