广州菱控|三菱
当前位置:首页 >> 技术支持 >> 三菱MX Component肯定有bug,请教解决方案
三菱MX Component肯定有bug,请教解决方案  时间:2013/10/9 6:36:00
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
int iRet = -1;

while (!backgroundWorker1.CancellationPending)
{
short[] PriShortChamberRecipeArray = GetRecipeDataFromXml(@"C:\HuaYing\test.xml");
iRet = axActQJ71E71TCP1.WriteDeviceBlock2("R0", PriShortChamberRecipeArray.Length, ref PriShortChamberRecipeArray[0]);
}

}
//////////////////////////////////////////////////////////////////////////

private void button3_Click(object sender, EventArgs e)
{
int iRet = -1;

while (true)
{
System.Threading.Thread.Sleep(100);
short[] PriShortChamberRecipeArray = GetRecipeDataFromXml(@"C:\HuaYing\test.xml");
iRet = axActQJ71E71TCP1.WriteDeviceBlock2("R0", PriShortChamberRecipeArray.Length, ref PriShortChamberRecipeArray[0]);

}
}
//////////////////////////////////////////////////////////////////////////

上面的代码是C#代码,即使换成VB效果也是一样的。
第一段代码是用C#里面的异步控件backgroundWorker1_DoWork去发送WriteDeviceBlock2一组数据到PLC,发送的数据到PLC里面监控看到的居然是一组随机数。

第二段是用单纯的循环去发送WriteDeviceBlock2一组数据到PLC,没有问题

我可以保证发送的数据绝对没有问题,但是为什么异步调用WriteDeviceBlock2就发送了随机的数据到PLC,不解?请教怎么解决?

我的软件框架决定我必须用backgroundWorker1_DoWork类似的程序。
请教解决方案
Re:续:三菱MX Component肯定有bug,请教解决方案  时间:2013/10/9 17:32:00
非常抱歉,上述问题还无法解答。



相关问题
相关下载