Can't Run Excel From A Cron Job Under Windows 7
Kertz, Denis (D)** CTR **
d.kertz@alcatel-lucent.com
Wed Nov 12 16:20:00 GMT 2014
>> 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?
This run.excel script simply starts up Excel with the .xls file it is given. In this example Excel opens c:\Shared\Bin\Create_Daily_Scorecard.xls. This .xls has a Workbook_Open macro, which is automatically run whenever this .xls is opened, that reads some data files and creates another .xls as its output.
What I mean by runs fine is that when I type this command at a bash prompt:
run.excel 'c:\Shared\Bin\Create_Daily_Scorecard.xls'
it runs to completion and creates a new .xls as its output. When I run this run.excel script from a cron job it hangs.
>> 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.
Then this is just a difference between WinXP and Win7? Under WinXP it shows EXCEL.EXE in my process list even when the "Show processes from all users" isn't checked.
>> 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'm not trying to run Excel interactively from a cron job. One of the limitations with using Excel from a cron job is Excel has to run error free. If Excel does run into some error it will typically generate an error message and wait for a user response. Since Excel is running invisibly from a cron job, there is no user to give a response and Excel just sits there waiting for a response that will never come.
>> 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.
Why "of course"? Shouldn't I be able to kill my own processes? I can certainly do that under WinXP. But this isn't a major issue for me. I only pointed it out in case it was related to the issue why my Excel cron jobs hang.
--
> WBR,
> Andrey Repin (anrdaemon@yandex.ru) 11.11.2014, <22:14>
>
> Sorry for my terrible english...
Nothing wrong with your English...
Denis
--
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