草庐IT

c# - 启动 Windows 服务时找不到 app.config

我有一个在Windows7上运行的CSharpWindows服务。它从设备管理框架实例化一个dll。此dll有一些设置存储在名为“pm.config”的app.config中。我将所有程序集和pm.config文件复制到与winsvc项目文件夹同一级别的名为“bin”的文件夹中。我添加了对dll框架的引用并编译了项目。pm.config文件存在于“bin\debug”和“bin\release”子文件夹中。我使用installutil安装了winsvc并启动了winsvc。一切正常,除了当winsvc从框架dll调用“初始化”方法时,此方法尝试打开pm.config文件并生成以下异常:

c# - Windows 服务 - 启动时崩溃

我已经构建了一个Windows服务来监控我们服务器上的一些设置,我开发了很多WinForm和WPF应用程序,但在Windows服务方面我绝对是新手,这就是为什么我求助于msdn并关注关于howtocreateasimpleservice的教程.现在我可以很好地安装该服务并使其运行,但前提是我从微软教程中删除了一些零碎的内容。但我很好奇为什么当我按照教程进行操作时,我的服务在启动时出现意外错误。经过一些测试,服务似乎在SetServiceStatus()的onstart方法中崩溃publicpartialclassMyService:ServiceBase{privatestaticMa

c# - 从 Windows 服务枚举打开的窗口

我想枚举给定进程的子窗口以检查对话窗口。由于我不会在这里详述的原因,如果它找到任何东西,我想随后终止该应用程序。运行独立应用程序来执行此操作没有任何问题。该应用程序可以(通过一些P/Invoke调用)访问进程的窗口,我随后可以终止该应用程序。但是,运行与服务相同的代码并不能按预期工作。似乎运行该服务的用户无法与桌面交互(这是我只能看到本地系统帐户的设置)。有人知道解决这个问题的方法吗?我可以从Windows服务枚举进程的窗口吗?仅供引用——我正在使用的代码(至少是改编版)可在此处获得:https://stackoverflow.com/a/1405088/2115261

c# - 在 IIS 上运行 Windows 服务

我想运行一个服务,例如将在IIS上每小时运行一次的Windows服务。我不想在我的机器上本地使用该服务,因为它需要机器保持运行才能使服务正常工作。有没有办法做到这一点?我试图找到解决方案,但找不到明确的答案。 最佳答案 Windows服务和IIS应用程序是不同的。听起来您想为您的网站运行一个周期性任务,为此我推荐类似hangfire的东西或quartz.net.两者都提供持久性选项,因此即使应用程序重新启动或回收,它们也可以运行。 关于c#-在IIS上运行Windows服务,我们在Sta

c# - 如何使用c#以管理员身份运行批处理文件来安装windows服务

我创建了一个批处理文件,用于将我的程序安装为Windows服务。批处理文件内容:>C:\Project\Test\InstallUtil.exe>"C:\Project\Test\ROServerService\Server\bin\Debug\myservices.exe"目前需要用户右键单击批处理文件并选择“以管理员身份运行”才能成功。我们如何避免“以管理员身份运行”?我的意思是我们可以在批处理文件中使用一些命令来告诉Windows以管理员身份运行这个批处理文件吗? 最佳答案 这种方式过去对我有用:stringexe=@"C:\

c# - Windows 服务错误 : "Attempted to read or write protected memory. This is often an indication that other memory is corrupt."

我有一个简单的Windows服务应用程序,我试图在VS2008IDE中调试,但每次运行代码时,我都会收到错误“尝试读取或写入protected内存。这通常表明其他内存已损坏。”.此错误发生在下面的service.Stop()行:staticclassProgram{//////Themainentrypointfortheapplication.///staticvoidMain(string[]args){ServiceBase[]servicesToRun;servicesToRun=newServiceBase[]{newService1()};if(Environment.Us

windows - 从 winform 运行 windows 服务

如何从我的Windows应用程序控制(启动、停止)Windows服务? 最佳答案 //ADD"usingSystem.ServiceProcess;"afteryouaddthe//ReferencetotheSystem.ServiceProcessinthesolutionExplorerusingSystem.ServiceProcess;ServiceControllermyService=newServiceController();myService.ServiceName="ImapiService";stringsv

C++ 应用即高性能服务

我需要提供一个C++应用程序作为服务。服务的客户端和服务可以在同一台机器上,也可以根据负载分布在不同的机器上。此应用程序将~2KB字符串作为输入,并在经过一些处理后返回几乎相似大小的字符串。客户的周转时间应该非常快。实现这一点的最佳机制是什么? 最佳答案 鉴于输入大小小于本地主机上的内存页面宽度,任何机制都不太可能在这里产生可测量的差异。对于远程机器,网络延迟可能是瓶颈,而不是客户端/服务器问题。 关于C++应用即高性能服务,我们在StackOverflow上找到一个类似的问题:

windows - 来自 Windows 服务的 WNetAddConnection2

我正在尝试从以本地系统帐户运行的Windows服务连接到受密码保护的远程共享文件夹。LocalSystem帐户似乎无法使用WNetAddConnection2()或类似调用直接访问受密码保护的网络共享。谁能证实这一点?我读过冒充管理员用户可能是可行的方法。我试过在WNetAddConnection2()之前使用LogonUser()和ImpersonateLoggedOnUser(),看起来网络路径的安装成功了,但是实际访问(例如远程文件夹中的文件枚举)失败了。有什么想法吗?谢谢。 最佳答案 我刚也遇到这个问题,发现把远程计算机名放

python - 将 python 脚本作为服务运行时出现问题

我用过thisquestion学习使用ActivePython将我的python脚本安装为服务。正如我所料,我能够安装并删除我的脚本,但我的问题是,一旦我开始运行脚本,我就无法停止或删除它。它只是永久运行,我无法摆脱它。链接问题的答案提到检查标志以停止脚本。谁能解释一下如何做到这一点?现在脚本做的很少。每隔几秒就将行打印到文件中。在我继续处理更复杂的事情之前,我想让它正常工作。importpythoncomimportwin32serviceutilimportwin32serviceimportwin32eventimportservicemanagerimportsocketimp