wincc脚本写入多行txt
❶ Wincc 如何实现把变量写到指定TXT文件中,从TXT文件中读取数据写入到相应变量中
void dispRecords::deleteAcount(int retrieve_AccNo)//根据指定的账号删除newrecords.dat中删除相应的记录 { fstream filename; filename.open("newrecords.dat",ios::in); //打开输入流用于读取newrecords.dat fstream temp; temp.open("calculations.txt",ios::out); //打开输出流用于创建临时文件calculations.txt filename.seekg(0,ios::beg); while(!filename.eof()) { filename.read((char*)this,sizeof(dispRecords)); //读取一条record;看这写法dispRecords这类应该只有一个char指针或数组的成员变量 if(filename.eof()) //如果已经读完整个文件,退出循环;这里应该去掉,不然最后一条record就永远不可能删掉了 { break; } if(AcountNumber!=retrieve_AccNo) // 如果读到的record的帐号不是要删除的,就写到临时文件calculations.txt里面去 { temp.write((char*)this,sizeof(dispRecords)); } } filename.close(); // 关闭newrecords.dat对应的输入流 temp.close(); // 关闭临时文件calculations.txt对应的输出流 filename.open("newreords.dat",ios::out); // 打开输出流用于写newreords.dat文件;原来的文件应该会被清空 temp.read((char*)this,sizeof(disRecords)); // 从临时文件读取一条record;这行不对,应该删掉并且换成temp.open("calculations.txt",ios::in);
❷ wincc中怎样实现读取TXT文件
VBS中并不区分数据类型,统一都是变体类型。贴出你的程序代码……
❸ 如何用wincc的c脚本操作文件
说的不清楚哦,一行行读取文件,这个文件指的是windows文件,还是指的是某一个文件里面的数据?
❹ wincc中创建一个文本窗口,要求用变量连接控制,可以显示不同的文字,用VBS脚本做,文字内容在脚本中修改
在文本窗口 右击 属性 字体 右击 选择 vbs
Function Text_Trigger(Byval Item)
Dim a
Set a=HMIRuntime.Tags("变量")
a.read
If "a= " Then
Item.Text="内容1"
End If
If "a= " Then
Item.Text="内容2"
End If
......
End Function
希望能帮到你
❺ 利用WINCC的VB脚本写入变量到自定义的数据库方法
WinCC的VBS虽可以声明Public变量,但作用域仅限于本画面,如下:
如果WinCC版本>=V6.0SP3,则可以使用Dataset对象,该对象可以在不同的VBS脚本中进行访问,下面是个简单的例子:
1、连接
DimobjConnection,strConnectionString
strConnectionString="Driver={SQLServer};Server=.WINCC;uid=;pass=;database=guowincc"
SetobjConnection=CreateObject("ADODB.Connection")
objConnection.ConnectionString=strConnectionString
objConnection.open
HMIRuntime.DataSet.Add"objConnection",objConnection
2、全局动作中引用
DimobjConnection
objConnection=HMIRuntime.DataSet("objConnection").Value
withobjCommand
.ActiveConnection=objConnection
xxxxxxxx
3、关闭连接:
DimobjConnection
objConnection=HMIRuntime.DataSet("objConnection").Value
objConnection.Close
SetobjConnection=Nothing
❻ PCS7中的wincc怎么写脚本
可以用脚本控制,如设置画面start的图层2为隐藏,可以使用VBS:
Hmiruntime.Screen("start").Layer(3).Visible = vbFalse
如果想在组态模式配置Layer,可以用BVA:
Dim objLayer As HMILayer
Set objLayer = ActiveDocument.Layers(1)
With objLayer
'configure "Layer 0"
.MinZoom = 10
.MaxZoom = 100
.Name = "Configured with VBA"
End With
End Sub
❼ wincc的“组显示”和“多行文本”是做什么用的怎么用呢请大侠详细解释一下,谢谢!
多看些案例对你会有帮助!我刚开始也是小白!找来也些案例或者官方教程!不懂的就自己把它编出来模拟运行一下看看结果就知道原理了
❽ 如何用wincc 的C脚本将3个实数变量值写入TXT,中间以逗号隔开
全局动作中设置执行间隔为1S,贴入以下代码,GetTagFloat函数中改成你需要:
FILE*fp=fopen("C:\DATA.txt","w+");
fprintf(fp,"%.1f,%.1f,%.1f",GetTagFloat("floatValte1"),GetTagFloat("floatValue2"),GetTagFloat("floatValue3"));
fclose(fp);
❾ WINCC 脚本高手进。。。。。。
SetVisible(lpszPictureName,"PIC",0);
给你说下原理吧
公用一个画面窗口,建立一个
公用一个比如电机启停画面,建立一个
在电机启停画面里面的变量只填后缀
你说的情况为 复制按钮只需改变标题名就能弹出相应的电机画面
这种情况下,脚本大体思路为,读取本对象(按钮)的标题(或文字)赋给画面窗口的“画面”属性或变量前缀,你这个的画面窗口名是PIC不需要赋,直接赋给“变量前缀”属性