Thursday, March 5, 2015

batch - FileMaker Pro 13 Advanced and Windows Server 2008 R2?



What do we not understand about interaction between FileMaker Pro 13 Advanced and Windows Server 2008 R2?




The problem to solve: At unpredictable intervals (perhaps averaging 3-5 days), the FileMaker Pro client crashes. (We need it to run a script every 9 minutes or so (different from the one below); maybe the crash is due to a memory leak or something similar.)



The solution we're pursuing: Via Task Scheduler, check each 15 minutes whether FileMaker has crashed. If it has, start it.



We wrote a batch file that queries Windows’ tasklist.exe whether FileMaker is running and restarts it via a call to FileMaker Pro 13 with a parameter pointing to a “.fmp12” file that's a shortcut to a particular FileMaker database. If we call the batch file manually from the command prompt, the batch file works well. (If FileMaker isn’t running, the batch file starts both a FileMaker process and an application window; if FileMaker is running, the batch file takes no action.)



When we call the same batch file from the Task Scheduler, the batch file starts the FileMaker 13 process, but does not start the FileMaker application window. (We can see the process we want listed in the Task Manager; we have no application window on the screen.)



What can we do (whether in the batch file or elsewhere) to reliably start both a FileMaker 13 process and application window from calls made by the Task Scheduler? For that matter, any suggestions as to why FileMaker crashes?




Related background. Read, skim, or skip at will.:



https://stackoverflow.com/questions/33250595/tasklist-exe-win-server-2008-r2-file-name-has-spaces



https://stackoverflow.com/questions/33456866/filemaker-pro-13-advanced-and-windows-server-2008-r2



https://community.spiceworks.com/topic/210126-windows-server-2008-r2-task-scheduler-and-batches-oh-my



https://community.filemaker.com/thread/77088?start=15&tstart=0




Here's the batch file.



@echo off
setlocal ENABLEEXTENSIONS
set target=FileMaker Pro Advanced.exe
set startWith1=C:\Program Files (x86)\\FileMaker Pro Advanced.exe
set startWith2=C:\Users\Administrator\Desktop\Splunkopener.fmp12
tasklist /fi "IMAGENAME eq %target%" /fi "USERNAME eq administrator" /fo csv 2>NUL | find /I "%target%" 2>NUL
if "%ERRORLEVEL%"=="1" goto StartFileMaker

if "%ERRORLEVEL%"=="0" goto EOF

:StartFileMaker
call "%startWith1%" "%startWith2%"
:EOF
exit


We filter for "administrator" because this computer routinely lists three tasks in Task Manager for "FileMaker Pro Advanced.exe". Only one is for "administrator" and it turns out to be the one we need to have running.




Thanks in advance ...


Answer



After some tests. What worked was simply changing the task schedule General Tab



"Run Whether user is logged on or note" to "Run only when user is logged on". The Run with highest privileges was already set.


No comments:

Post a Comment

linux - How to SSH to ec2 instance in VPC private subnet via NAT server

I have created a VPC in aws with a public subnet and a private subnet. The private subnet does not have direct access to external network. S...