Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iis使用system.diagnostics.process打开excel宏_Excel_Iis_Process.start - Fatal编程技术网

iis使用system.diagnostics.process打开excel宏

iis使用system.diagnostics.process打开excel宏,excel,iis,process.start,Excel,Iis,Process.start,我们有一个托管在iis 6.0上的web服务,它打开一个指定的excel模板文件。宏“t.xla”应该在excel打开后从数据库中检索数据,以便客户端下载。 问题是宏似乎没有运行。代码如下(我现在不在公司,所以我只写伪代码): 当我运行这个代码时, 1) 无法看到excel.exe是从任务管理器启动的。 2) excel.exe不会在桌面上创建任何窗口,有人说应该是这样,因为iis有限。 3) 我确信宏“t.xla”没有运行,因为不存在应由宏编写的日志。当我双击任何一个excel模板时,都会找到

我们有一个托管在iis 6.0上的web服务,它打开一个指定的excel模板文件。宏“t.xla”应该在excel打开后从数据库中检索数据,以便客户端下载。 问题是宏似乎没有运行。代码如下(我现在不在公司,所以我只写伪代码):

当我运行这个代码时, 1) 无法看到excel.exe是从任务管理器启动的。 2) excel.exe不会在桌面上创建任何窗口,有人说应该是这样,因为iis有限。 3) 我确信宏“t.xla”没有运行,因为不存在应由宏编写的日志。当我双击任何一个excel模板时,都会找到日志

现在iis工作进程在本地系统帐户中运行,并且已经启用iis管理服务与桌面交互。此外,每个人都可以编写模板文件和日志文件所在的目录


谁能给我一些建议吗?提前感谢。

您可能希望使用本地系统以外的其他帐户,这样您就可以以该帐户的身份登录,并尝试同样的操作,以查看是否出现了任何对话框或错误,这些对话框或错误可能会阻止事情进一步发展,例如宏安全设置。Microsoft不支持以这种方式运行Excel,但这并不意味着您不能让它工作。看看这篇文章,它涵盖了更多需要考虑的细节:

是的,当我将管理员帐户添加到iis\u wpg组中,将本地系统更改为管理员时,它就可以工作了。尽管如此,谢谢。
System.Diagnostics.ProcessStartInfo pStartInfo = new ProcessStartInfo(excelAppPath, excelTemplatePath);
//nomal window is in debug mode, createNoWindow will be used in product envirionment
pStartInfo.WindowStyle = ProcessWindowStyle.Nomal;

System.Diagnostics.Process process = new Process();
process.Start(pStartInfo);
log.Info("Excel Process was started");