用的是Visual C++ 2010学习版,按网上介绍的方法在点击一个按钮后,自动调用webBrowser中InvokeScript方法,但没成功。例如点击button1后,模拟自动点击网页中购买书本。代码如下:
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
array <Object^,1> ^objArray;
objArray[0] = (Object ^)"Book";
// 自动点击webBrowser1中的Book
this->webBrowser1->Document->InvokeScript("Buy", objArray);
}
代码编译通过,但运行到下面的代码时出错。
objArray[0] = (Object ^)"Book";
出错信息如下:
System.NullReferenceException”类型的未经处理的异常出现在 CPI抢票.exe 中。其他信息: 未将对象引用设置到对象的实例。
如果将array <Object^,1> ^objArray 改为以下任一种编译都无法通过:
- array <Object,1> objArray
- array <Object^,1> objArray
- array <Object,1> ^ objArray
- Object objArray[2]
- Object ^objArray[2]
- Object *objArray[2]
不知道objArray具体应该如何定义和赋值才能达到目标?谢谢各位的解答. 运行环境是XP和Visual C++ 2010 Express.