在WinCC中可以通过报警纪录来实现操作员纪录,这个需要WinCC的消息系统进行组态和配置。

利用消息系统进行实现上诉功能不但复杂而且时间久啦也不方便查询。那么有没有一种简单的方法来

实现操作员纪录呢?

  我们知道在Windows系统中可以通过批处理来实现很多功能,而且操作也比较简单,学习起来也

没有多大的难度。那么我们是否可以Windows的批处理功能来实现日志功能呢?

  

一、WinCC执行外部程序。

  在WinCC中通过

ProgramExecute("notepad.exe");

 函数可以执行外部程序。  其中函数的参数是外部程序的路径和可执行文件名。

二、cmd解释器的路径和直接启动cmd解释器传递参数

1、查看路径

我们可以通过命令行查看 cmd 解释器的路径。 默认cmd解释程序的路径为:%windir%\system32\cmd.exe

  图 利用命令行查看cmd解释的路径和可执行文件名

2、给cmd解释器传递参数

  在运行对话框中输入命令:

cmd /c start notepad.exe

  这个命令直接就可以启动记事本程序。

  图 利用cmd的方式启动记事本程序。

  这个命令需要解释一下:

cmd 是命令解释器可执行程序,后面的   /c start notepad.exe 是传递给cmd的参数, /c 表示后面的

字符串是一个命令行,是一条命令;  start 表示是要启动一个程序,  notepad.exe 是要启动的程序。

三、利用cmd解释器直接生成log文件

  在运行对话框输入:

cmd /c  echo "我是log测试行">>C:\Users\volcanol\Desktop\log.txt

  如下图所示:

  点击确定执行。在桌面生成一个文件 log.txt, 并且我们的内容也输入到了文件中,如下图所示:

  图 利用cmd解释器生成的log.txt 文件

三、WinCC脚本执行

  结合上面说的cmd解释器的执行和在WinCC中执行外部程序,我们就可以做成一个简易的操作记录

日志了。

ProgramExecute("cmd.exe /c echo ---------------------->> E:\\我是cmd命令行log.txt");
ProgramExecute("cmd.exe /c echo %date%>>E:\\我是cmd命令行log.txt");
ProgramExecute("cmd.exe /c echo %time% >>E:\\我是cmd命令行log.txt"); //Return-Type: unsigned long int
ProgramExecute("cmd.exe /c echo 我按下了按钮 >>E:\\我是cmd命令行log.txt");
ProgramExecute("cmd.exe /c echo. >>E:\\我是cmd命令行log.txt");
ProgramExecute("cmd.exe /c echo --------------------->> E:\\我是cmd命令行log.txt");

  我通过上面的代码,就在E盘符下面生成了一个日志文件。如下图所示:

  图 WinCC中利用cmd命令生成日志文件

四、结语

  上面的命令执行的时候有很多的命令行窗口,其实我们可以将这些写成一个命令行脚本,同时还可以在

WinCC中设置一个项目函数,传递参数的方式执行,这样就不会有很多命令行窗口一闪而过,项目函数执行

的方式待续。

--------------------------------------------------------------分割线---------------------------------------------------------------

1、文章均为个人原创,欢迎转载,转载请保留出处:https://www.cnblogs.com/volcanol/

2、获取工控PLC、变频器、HMI、计算机、Windows、Linux、嵌入式资料点击:获取资料

3、如果您觉得文章对您有帮助可转至页面上半部分打赏,或移步:打赏 

4、或者在页面右下角点推荐哟!!!

--------------------------------------------------------------分割线--------------------------------------------------------------

工控随笔_07_西门子_WinCC利用命令行实现操作log日志的更多相关文章

  1. 工控随笔_18_西门子_WinCC的VBS脚本_07_变量作用域和传值、传址

    在vbs脚本中也存在和其他编程语言一样的概念,那就是变量的作用域,变量的作用域决 定在什么范围内可以访问. 同样的在vbs脚本中对于变量也有一个生命周期, 变量的生命周期决定了变量的存续时间 这个主要 ...

  2. 工控随笔_02_西门子_WinCC的IO域利用C脚本返回值

    WinCC的输入输出域用来显示信息或者接受操作人员的输入.当作为显示功能时,只有直接的变量连接 才能正常的显示,如果使用动态对话框进行设置且用了表达式则不能正确显示. 但是有时候我们在WinCC变量管 ...

  3. 工控随笔_21_西门子_WinCC的VBS脚本_10_对象_01

    最近有点小忙,各种事情,心情也不是很好,烦心事特别多,因此最近更新的比较慢. 不敢再松懈了,今天正好有点时间,就继续看了一下VBScript中关于对象的一些内容. 一.对象 OOP是编程规模发展到一定 ...

  4. 工控随笔_13_西门子_WinCC的VBS脚本_04_变量类型之二

    上一个随笔说了一些关于vbs变量类型的内容,这一篇我们继续说说变量类型相关的内容. 一.NULL补充内容 '需要注意的是,NULL不能简单通过 = 来进行比较,而必须通过 'IsNull函数来实现 ' ...

  5. 工控随笔_10_西门子_WinCC的VBS脚本_01_基础入门

    很多人都认为VB语言或者VBS脚本语言是一种很low的语言,从心里看不起VB或者VBS, 但是其实VBS不仅可以做为系统管理员的利器,同样在工控领域VBS语言大有用武之地. 西门子的WinCC提供了两 ...

  6. 工控随笔_15_西门子_WinCC的VBS脚本_05_变量类型之三_VBS数组

    数组是一种复杂数据类型,不但有数组本身的数据类型: 数组,还有数组元素中存储的数据的类型. 一.vbs中的数组类型 在VBS中提供了两种数组类型,一种是固定数组,一种是动态数组. 1.固定数组 就是在 ...

  7. 工控随笔_12_西门子_WinCC的VBS脚本_03_变量类型

    说到编程语言,总是绕不开数据类型,因为数据类型决定了数据可以进行什么样的操作.同时数据类型 从广义上来说是一种数据结构,在过程式编程的过程中,曾经有过这样一种说法: 程序 = 数据结构 + 算法 可见 ...

  8. 工控随笔_11_西门子_WinCC的VBS脚本_02_运算符

    VBS脚本做为编程语言,提供了很多的运算符,通过这些运算符,可以实现不同的操作.运算符具有不同的类型 不同的运算符之间具有运算优先级. 一.运算符的分类 大体分为以下几类: 1.赋值运算符 2.算术运 ...

  9. 工控随笔_20_西门子_WinCC的VBS脚本_09_常量和流程控制_02

    vbs不但提供了分支结构,还提供了丰富的循环形式.一共有3种循环: 1.for循环 2.do...loop循环 3.while循环 各种循环有各自的特点,在使用的时候可以进行转换. 前面已经描述过Fo ...

随机推荐

  1. 使用VB6读取数据库资源并发送邮件(原创)

    Private Sub Form_Load() Call conndb End Sub Private Function conndb() Dim cn As New ADODB.Connection ...

  2. JavaScript几种常见的继承方法

    1.call() 方法 call() 方法是与经典的对象冒充方法最相似的方法.它的第一个参数用作 this 的对象.其他参数都直接传递给函数自身 function Huster(name,idNum, ...

  3. Labview笔记-创建自定义控件

    labview中的控件种类很多,但是样式或者外观有时不能满足我们的需求.如何制作一个好看酷酷的自定义控件呢? 以开关为例,我们先添加一个labview中自带的确定开关控件 之后右键该控件--高级--自 ...

  4. openSUSE XFCE桌面 多媒体解码器安装

    openSUSE15 leap 在终端命令行安装编解码器: 添加必要的软件源 zypper addrepo -f http://packman.inode.at/suse/openSUSE_Leap_ ...

  5. python小白的自述

    python语言作为目前受用面比较广泛的一种语言,具有简单易学,功能强大的特点.初次接触python完全是由于好奇心,正是因为python的出现,才让我觉得编程不是那么的神秘了.不过作为一个编程小白来 ...

  6. 路径定义前+r

    定义文件路径时前面加个r 例如 firstfolder = r"C:\Users\1261\Desktop\" 不对其中的符号进行转义

  7. Android Tools&Cmd

    1. 生成Keystore文件 keytool -genkey -v -keystore /Users/shiyantao/Desktop/xxx.keystore -alias aliasName ...

  8. 2.ReactJS基础(虚拟DOM,JSX语法)

    将脚手架(create-react-app)创建的todolist项目精简为hello world示例 即,删除自动生成的样式文件.logo.svt.App.test.js.serviceWorker ...

  9. USB接口禁用与启用

    前几天闺蜜淘了一台小本,但是发现计算机USB接口是禁用的,有点头疼,所以问了万能的度娘,找到了n种办法.不过这一种是适用于我的情况,简单记录一下. 解决方法:(主要就是修改注册表) 1.打开注册表编辑 ...

  10. flask中注册验证码和分页

    注册验证码.核心思路,替换注册页面的img标签的src属性. 1.准备好文件夹:captcha2.导包 from utils.captcha.captcha import captcha3.验证码生成 ...