我可以从Windows服务调用system()吗?

时间:2013-11-26 15:30:26

标签: c++ windows service lua

是否可以调用system()在Windows服务的上下文中执行子进程?

我使用样板工程在C ++中实现了Windows服务:A basic Windows service

该服务以本地系统帐户和桌面交互权限启动,并在基于计时器的对象中运行各种代码,包括磁盘上的文件操作。

然而,像system("C:\\bin\\sth.exe some-param");或从静态库运行lua代码之类的东西在Windows服务中不起作用。我通过在控制台应用程序中运行它们来确保它们可以正常工作。

任何线索?

1 个答案:

答案 0 :(得分:1)

使用CreateProcess以便获取错误代码。如果这没有帮助,请查看http://www.cplusplus.com/forum/windows/105447/,它有一些关于本地系统限制和解决方法链接的重要信息(特别是http://www.codeproject.com/Articles/18367/Launch-your-application-in-Vista-under-the-local-s)。