通过URL获取网页信息
CVI操作比较简单,几句话就可以实现:
1、创建一个DataSocket对象并将其连接到数据源,函数如下
DS_Open (URL, DSConst_ReadAutoUpdate, DSCallback, NULL, &dsHandle);
其中DSCallback是回调函数
2、在回调函数中调用DS_GetDataValue 即可获取数据
void CVICALLBACK DSCallback (DSHandle dsHandle, int event, void *callbackData)
{
char buffer[10000];
int slength;
switch (event)
{
case DS_EVENT_DATAUPDATED:
DS_GetDataValue (dsHandle, CAVT_CSTRING, &buffer, 10000,
&slength, NULL);
SetCtrlVal (panelHandle, PANEL_TEXTBOX, buffer);
DS_DiscardObjHandle (dsHandle);
SetWaitCursor(0);
break;
}
return;
}
3、同时我们可以调用DS_GetLastMessage (dsHandle, message, 1000)函数来获取连接信息。
值得注意的是网页端是需要带HTML标签的,不然该回调函数根本进不了DS_EVENT_DATAUPDATED事件。