win7下intouch的alarm db logger以服务启动
1、在弄个intouch的项目时,升级到WIN7,发现没办法用服务来启动。而原来是在代码中控制启动服务的。也有问到别人说,那就应用启动,代码中加一条启动,当然也不是行,只是单纯的不想改代码。还是想以服务来启动
2、后来想了个办法,在设置里把启动改成服务,然后手写了一段注册表信息来启动服务,看起来也可以了,以为妥了。但连到PLC后 发现并没有得到报警信息,没搞懂为什么
3、于是只能想其它办法了
这下面是一段官方的原文,但我也没找到它提到的服务软件包的下载
Tech Note
InTouch: 10.1
All Tech Notes, Tech Alerts and KBCD documents and software are provided "as is" without warranty of any kind. See the Terms of Use for more information.
Topic#: 00xxxx
Created: April 2011
Running AlarmDBLogger as Windows Service on Windows2008 and Windows7 (32 & 64-Bit)
Introduction
Currently, InTouch’s Alarm DB Logger is not able to run as a Windows service on Windows 2008, Windows 7. This limit puts many restrictions on the design of a SCADA system using Alarm DB Logger, in some cases, making alarm logging completely impossible. For example, when there is no platform deployed, nor is there an InTouch application (WindowViewer) running, starting Alarm DB Logger on Windows 2008 and Windows 7 becomes impossible without user login.
Application Versions
InTouch 10.1 and later
Windows 2008, Windows 7 and other Windows operating systems
Install aaAlarmDbLogger Service
1. Download “AlarmLoggerServiceSetup.zip” file from here. (No link yet) (这个HERE真的坑,还备注一个目前没有链接)
2. Unzip the files, and run AlarmLoggerService Setup.
3. In the setup wizard, choose the default settings for all screens and press next until the setup completes.
4. If InTouch is installed at default directory, that is, “C:\Program Files (x86)\Wonderware\InTouch”, you are ready to start the service. If not, please go to Windows registry by Registry Editor and create a key as below and assign the FilePath (String) the actual path of your wwAlmLogger.exe file.
[HKEY_LOCAL_MACHINE\SOFTWARE\ArchestrA\aaAlarmDbLoggerService]
"FilePath"="C:\\Program Files (x86)\\Wonderware\\InTouch\\wwalmlogger.exe"
Start/Stop aaAlarmDbLogger Service
To Star AlarmDBLogger Service
1- Go to the Start menu >> All Programs >>Wonderware>>InTouch>> Alarm Logger Service>> Start Service.
2- The command prompt should appear.
3- Make sure the “service was started successfully” message appears.
4- Press any key to finish the command.
To Stop AlarmDBLogger Service
1- Go to Start menu >> All Programs >>Wonderware>>InTouch>> Alarm Logger Service>> Stop Service.
2- The command prompt should appear.
3- Make sure the “service was stopped successfully” message appears.
4- Press any key to finish the command.
以上就是原文,在百度还有其它文库里也有看到相应的文档,只是没有图片,今天我补上
难道真的没有办法了吗?也不至于
我找到了一个别人的系统,装的intouch2012,里面就有装的这个服务,于是搬过来,然后把它的服务名称直接改成了我原来代码中的服务名称
现在通过控制这个服务就可以实现以WINDOWS服务来启动alarm db logger了
另外,有这个服务设置里还是要设置以应用来启动,我的代码applicationCONFIG里有一段初始化这个,开始没注意,一启动就变成服务。找半天才找到。烦的不行
{ --- CONFIGURAZIONE ALARM LOGGER ------------------------------------------------------------------------------------------------------------------------------------------ }
DBRunAs = "Normal";
pdAlarmDBLoggerInit (DBSQLName,DBAlarmName, DBMasterUser, DBMasterPassword, DBLoggingMode, DBRunAs , 0, 1000 );
后来把上面的SERVICE改成Normal就好了