繁体   English   中英

从Windows Service运行没有UI的可执行程序

[英]Running executable program with no UI from windows service

我正在运行没有UI的控制台应用程序,并从pdf文件生成拇指邮件图像。 此应用程序的编译文件工作正常。 但是,我必须从实现FileSystemWatcher类的Windows Service应用程序中调用此编译文件,以检测何时将新的pdf文件上载到目录中。

并且我正在使用此链接中的建议如何从Windows Service运行控制台应用程序?

ProcessStartInfo info = new ProcessStartInfo(appName);
info.UseShellExecute = false;
info.RedirectStandardError = true;
info.RedirectStandardInput = true;
info.RedirectStandardOutput = true;
info.CreateNoWindow = true;
info.ErrorDialog = false;
info.WindowStyle = ProcessWindowStyle.Hidden;

Process process = Process.Start(info);

if (!process.HasExited)
{
   LogEvent(process.ProcessName + "has started and called Thumbnail application");
}
 else
{ LogEvent(process.ProcessName + "has been terminated"); }

我可以看到该进程涉及“ pdfThumbnail.exe”,但是当应用程序尝试执行时出现此错误。

“ System.Exception:无法在Microsoft.VisualBasic.Interaction.CreateObject(String ProgId,String ServerName)处创建ActiveX组件,在PDFThumbnailCsharp.Main(String [] args)处”

正如我上面所说的,当我运行exe文件时,pdfThumbnail.exe可以很好地执行。

更新

这是来自SysInternals的进程监视器的错误

机器默认的权限设置不授予用户使用CLSID {FF76CB60-2E68-101B-B02E-04021C009402}和APPID对用户NT AUTHORITY \\ LOCAL SERVICE SID不可用的COM Server应用程序本地激活权限(S-1-5-19 )从地址LocalHost(使用LRPC)。 可以使用组件服务管理工具来修改此安全权限。

我已将此CLSID的所有权更改为具有完全控制权的管理员,如此链接http://social.technet.microsoft.com/Forums/en-US/windowsserver2008r2general/thread/e303c7e1-16de-42fd-a1a4-7512c1261957所述

但是我仍然遇到相同的错误。

任何帮助将不胜感激。

谢谢

此CLSID {FF76CB60-2E68-101B-B02E-04021C009402}用于我的计算机注册表上的Acrobat.Excha.PDDoc。 与Acrobat对此链接https://forums.adobe.com/thread/1467460进行的进一步调查显示,无法从服务运行Acrobat。

在获得更好的方法之前,我现在要做的是创建一个Windows任务计划程序,该任务计划程序在创建新的pdf时侦听Windows服务引发的事件,然后触发创建缩略图的控制台应用程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM