Articles of windows services

使用自定义名称安装Windows服务

我有一个Windows服务的exe文件。 要安装它,我使用命令: installutil myService.exe / ShowCallStack 然后,我可以看到服务窗口中列出的“service1”。 我的问题是,如果有可能安装2个相同的服务(使用相同的exe),但具有不同的名称的实例。 我想在不改变源代码的情况下做到这一点。 谢谢

如何确定Windows服务是否使用(最好)仅批量安装?

我需要检查是否从batch file安装Windows服务。 如果需要的话,我可以深入其他方面,但是我不想。 有没有办法做到这一点?

Windows XP的服务什么时候开始?

当一台计算机重新启动时,在用户login之前,所有在帐户(系统/服务/networking服务)下运行的服务都会运行吗? JD。

从非交互式进程(Windows服务,计划任务等)在WinServer 2008中打印PDF

我正在尝试编写一个打印PDF的非交互式过程,并且需要关于如何在Windows Server 2008(和Vista / 7)上构build这个过程的build议。 以前,我们有一个计划的任务(设置为运行,无论用户帐户是否login),将打印目录内的所有PDF。 (一个单独的过程会将PDF移动到目录中。)在运行时,这将启动另一个进程(Adobe Reader或Foxit Reader)来打印PDF。 Adobe Reader和Foxit Reader都具有静默打印function,因此所有内容都将发送到计划任务运行的用户的默认打印机。 没有用户界面曾经产生,所有的文件将被打印顺利。 这在Server 2003上工作。 该过程不再在Server 2008上运行。我不完全确定,但我相信这与会话0隔离有关。 我无法certificate这一点。 但是,我可以说当设置为“仅在用户login时运行”时 , 该过程作为计划任务运行 。 现在,虽然这工作,它迫使用户login到机器,因此不符合我的要求。 (我的第一个线索是在这个前面的问题 。) 我无法确定如何在这方面前进。 有什么办法可以满足我的要求吗? 一些注意事项: 我见过的每个解决scheme似乎都是使用login用户的凭据。 看到我上面链接的问题 – 列出的解决scheme似乎是抓住login用户的令牌,并使用它来运行该程序。 (查看GetCurrentUserToken()过程 – 稍后将在API调用CreateProcessAsUser()中使用返回值。 我目前的stream程就像我所知道的那样,没有用户界面。 我已经使用ProcMonvalidation了读卡器进程(Adobe或Foxit)显示正确打印,并且打印驱动程序本身似乎有问题。 这是通过尝试使用“打印到文件”驱动程序来备份的 – “打印到文件”驱动程序以三个可见的步骤运行,并明确地完成了所有文件的第一个文件,而无需启动第二个文件。 那么会话0隔离如何影响打印机驱动程序? 这个我不清楚。 ( 关于这个问题,我可以find的最好的文档只提到打印机驱动程序可能会受到影响,即使打印后台处理程序在会话0中运行。 打印为Windows服务将无法使用,即使该进程已选中“允许服务与桌面交互”。 粗体文本添加到对抗文本墙效果。

在Windows窗体应用程序中托pipeWCF服务

我需要在Windows窗体应用程序中托pipeWCF服务,并从Windows服务调用WCF服务,该服务将数据发送到WCF服务,WCF服务将在Windows窗体应用程序(桌面应用程序)中显示它。 我怎样才能实现呢? 我需要以前正确工作的代码。

使用Debug视图和Windows服务

我在远程计算机上实时debuggingWindows服务时遇到了问题。 本机位于防火墙之后,只能通过远程桌面访问。 我通过代码包含Debug.WriteLine语句,代替Console.WriteLine。 不久之前,我碰到了一个名为Debug View的微软应用程序。 它在debugging窗体和WPF应用程序方面很有帮助,但不会显示正在运行的服务的Debug.WriteLine语句。 如果我能看到这些debugging语句,我会非常高兴。 有没有办法做到这一点? 请注意,项目是以debugging模式编译的,因为我可以在服务安装期间看到Debug View中的debugging语句。

某些服务如果没有被其他服务使用,则会自动停止

在尝试启动Windows服务时出现“某些服务自动停止,如果这些服务未被其他服务使用”错误。 我有一个服务,不使用Windows服务configuration文件,并使用静态属性 – 它工作正常 现在,我使用app.config文件并重build我的安装项目+服务项目。 现在我安装服务,然后尝试启动服务 – 我得到以下错误: 某些服务会自动停止,如果这些服务没有被其他服务使用 服务以本地系统login。 欢迎任何投入! 谢谢。

Tomcat 6.0.35 Windows 32b服务useSystemProxies

我一直试图让Tomcat6使用系统代理设置。 尝试了各种方式,约200个不同的版本 tomcat6 //US/Tomcat6 ++JvmOptions "-Djava.net.useSystemProxies=true" 我试图设置service.bat中的“安装”部分中的属性(也有很多类似的版本): … :foundJvm echo Using JVM: "%PR_JVM%" "%EXECUTABLE%" //IS//%SERVICE_NAME% –StartClass org.apache.catalina.startup.Bootstrap –StopClass org.apache.catalina.startup.Bootstrap –StartParams start –StopParams stop –JvmOptions "-Djava.net.useSystemProxies=true" 我用tomcat6w GUI尝试了这个设置。 不知道它是否做了任何事情。 还尝试将JAVA_HOME为JRE和JDK。 没有不同。 尝试设置-Dhttp.proxyHost=proxyhostURL和-Dhttp.proxyPort=proxyPortNumber 。 那些至less似乎不被忽略,因为连接然后失败(使用随机的本地IP和端口)。 现在有趣的事实是:我可以通过catalina.bat运行它,在那里设置参数( CATALINA_OPTS=… ),它就像一个魅力。 那么那里在做什么? 我想把它作为一个更方便用户的服务,但如果没有办法实现它,我愿意考虑只是把catalina.bat放到autorun中。 所以……有没有人得到这个工作? 还是有人有想法/build议?

处理Windows服务停止/暂停请求期间的延迟

我有一个从ServiceBase派生的Windows服务类,它使用System.Timers.Timer以频繁的间隔运行代码。 OnStop和OnPause处理程序使用一些信号与定时器线程一起检查定时器是否仍在运行并等待它结束。 在这种情况下是否有推荐的处理延迟错误的方法,例如处理程序是否在等待计时器线程停止的不可接受的长时间? 我应该继续等待,直到SCM放弃(但是这将使服务进入一种状态,除了杀死进程之外,对服务不能做任何事情,有时候重启是唯一的方法)。 或者我可能会抛出一个exception(这会使其处于类似的状态,还是放弃停止/暂停请求)? 如果我可以拒绝暂停/停止的请求,并让SCM将其保留在用户可以尝试暂停/再次停止的状态,我宁愿这样做。 我可以中止计时器线程,但是有时它会locking在其他资源上,我宁愿等待直到完成,并且只有在pipe理员能够稍后尝试停止时logging错误。

使用C#检查在远程计算机上运行的服务的状态

我正在使用下面的代码。 ServiceController MyController = new ServiceController(); MyController.MachineName = server_txt.Text.Trim(); MyController.ServiceName = "Service1"; string msg = MyController.Status.ToString(); Label1.Text = msg; 此代码适用于有权访问的networking计算机。 如何改变这个,使它适用于使用凭证的不同域中的系统?