Can't Run Excel From A Cron Job Under Windows 7

Andrey Repin anrdaemon@yandex.ru
Tue Nov 11 19:20:00 GMT 2014


Greetings, Kertz, Denis (D)** CTR **!

> I am trying to port a cygwin application that uses cron from a WinXP PC to
> a Win7 Pro PC and I find some cron jobs won't run.  Specifically, I need to
> run an Excel program from a cron job and this doesn't work on my Win7 PC.

> In order to run an Excel program from cygwin I have this run.excel bash
> script with an embedded VB script that executes an Excel program:

>         excel=$1
>         vbscript=/usr/tmp/$$.vbs
>         cat <<-! >$vbscript
>                         Dim xlApp
>                         Set xlApp = CreateObject("Excel.application")
>                         Set xlWb = xlApp.workbooks.Open("$excel")
>                         xlApp.Quit
>                         Set xlWb = Nothing
>                         Set xlApp = Nothing
>         !
>         chmod 777  $vbscript
>         c:/Windows/System32/wscript.exe  'c:\cygwin64\usr\tmp\$$.vbs'

> An excel program is run like this:

>         run.excel  'c:\Shared\Bin\Create_Daily_Scorecard.xls'

> When I run an Excel program interactively with this run.excel script it
> runs just fine but when I run it via a cron job Excel just hangs.

Define "runs fine" please?
What exactly that excel script is doing?

> When Excel hangs I can look at the processes running on the PC using the
> Windows Task Manager and I don't see the EXCEL.EXE process.  But when I
> check the option to show processes from all users I see the hung EXCEL.EXE
> process, AND the user name displayed is my login.  So I am running this under the
> Upar2 login and Task Manager doesn't display EXCEL.EXE as a Upar2 process
> but when I check 'Show processes from all users' it shows EXCEL.EXE running
> under user name Upar2 - a contradiction.

Task manager display processes started in your current session.
Not processes started under your credentials. That's an important difference.

> What I suspect is happening is Excel is attempting to do something that
> requires Upar2 permission but it isn't really running as Upar2 so Excel
> displays some error message and is waiting for the user to respond.  But
> Excel is running invisibly so this can't be seen.

More like you expect to run Excel interactively from service.
Not possible. Period.

> I also suspect this Upar2 "confusion" isn't limited to running an Excel
> program.  I can run a cron job with regular UNIX commands (cut, sort, etc)
> and see they are running with the ps command.  But when I try to kill them
> (kill -9) I get permission denied.  If I want to kill a process running via
> the cron I have to start cygwin with 'Run as administrator' and then I can
> kill processes running under the cron.

Of course.


--
WBR,
Andrey Repin (anrdaemon@yandex.ru) 11.11.2014, <22:14>

Sorry for my terrible english...


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list