cron 脚本中有 bash,其中执行的是 wine。在 cronjob 日志中我看到:
wine: Unhandled exception 0x0eedfade in thread 9 at address 0xce99ebf0:0x7b83e6ce (thread 0009), starting debugger...
err:winediag:nulldrv_CreateWindow Application tried to create a window, but no driver could be loaded.
err:winediag:nulldrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
err:seh:setup_exception_record stack overflow 928 bytes in thread 0009 eip 7bc843a0 esp 00230f90 stack 0x230000-0x231000-0x330000
我尝试了两种方法来避免这个问题,但都没有效果。
1)在bash脚本中:
DISPLAY= wine my_program.exe
2)在 crontab 中
52 15 * * * export DISPLAY= && bash myscript.sh >> /var/log/mylog.log 2>&1
如何修复这个错误?
答案1
该二进制文件wine
适用于图形程序,需要 X 服务器才能运行。如果您的程序没有图形界面,请使用wineconsole
反而。
wineconsole my_program.exe