草庐IT

进程注入

全部标签

c# - WCF 自定义行为的依赖注入(inject)

在我的WCF服务中,我有一个自定义消息检查器,用于根据XML模式将传入消息验证为原始XML。消息检查器有一些它需要的依赖项(例如记录器和XML模式集合)。我的问题是,我可以使用依赖注入(inject)框架(我目前正在使用Ninject)来实例化这些自定义行为并自动注入(inject)依赖项吗?我做了一个简单的例子来演示这个概念:usingSystem.ServiceModel.Channels;usingSystem.ServiceModel.Description;usingSystem.ServiceModel.Dispatcher;usingNinject.Extensions.

C#:重定向已在运行的进程的标准输出

我一直很难获得“子进程”的输出(一个由我通过c#System.Diagnostics.Process监视的黑盒进程在内部启动)我采纳了我之前帖子的回答中给出的建议:here.在那里你可以找到我所经历的细节。此时,虽然我能够找到由process1.exe生成的ssh进程,但我正在监视它。我无法将输出重定向到我的C#程序,因为它是一个“已经在运行的进程”,并且不是直接从C#启动的。看起来,您在System.Diagnostics.Process对象上设置的所有属性,只有在您从C#应用程序显式启动该进程时才会生效;如果其他一些“非托管进程”启动了该进程,则设置此重定向无效,因为该进程已经由未

c# - 从 Windows 服务创建交互式提升进程并显示给登录用户

我有一个在用户登录时生成WPF应用程序进程的服务。但出于某种原因,WPF应用程序在创建后大约10分钟就被终止了?立即终止,事件日志中未发现任何痕迹,WPF应用程序中也未调用任何正常的关闭/退出事件。事实上,当终止发生时,Windows7似乎挂起一秒钟,鼠标变得无响应,然后在短暂的延迟后执行鼠标手势(当它正常化时,但现在缺少创建的进程)。什么时候publicpartialclassService1:ServiceBase{publicService1(){InitializeComponent();CanHandleSessionChangeEvent=true;}protectedov

c# - 在运行时将接口(interface)的不同实现注入(inject)命令

我的项目中有一个接口(interface),有2个类实现它:publicinterfaceIService{intDoWork();}publicclassService1:IService{publicintDoWork(){return1;}}publicclassService2:IService{publicintDoWork(){return2;}}我有一个依赖于IService的命令处理程序也是:publicCommandHandler1:ICommandHandler{IService_service;publicCommandHandler1(IServiceservi

c# - 使用进程的实时控制台输出重定向

我正在使用VBOXMANAGE来“导出”guest计算机。VBOXManage是一个控制台应用程序,可以从主机控制guest计算机的行为。由于导出命令是一个很长的过程,它会像这样返回过程更新:0%...10%...20%...30%...100%我正在编写一个C#应用程序,它将使用Process调用VBOXManage。这是我的代码:ProcessVBOXProc=newProcess();VBOXProc.StartInfo.FileName=VBOXMANAGE;VBOXProc.StartInfo.Arguments=Arguments;VBOXProc.StartInfo.Us

C# - 启动不可见进程(CreateNoWindow 和 WindowStyle 不起作用?)

我有2个在.NET中创建的程序(.exe)。我们称他们为主人和worker。Master启动1个或多个Worker。Worker不会与用户交互,但它是一个WinForms应用程序,可以接收命令并根据从Master接收到的命令运行WinForms组件。我希望Worker应用完全隐藏运行(当然除了出现在任务管理器中)。我认为我可以使用StartInfo.CreateNoWindow和StartInfo.WindowStyle属性来完成此操作,但我仍然在窗体中看到Client.exe窗口和组件。但是,它不会显示在任务栏中。Processprocess=newProcess{EnableRai

c# - 连接 NLog 并将其注入(inject) .NET Core 控制台应用程序

我创建了一个消费者/工作,我将在Linux上以C#编写的进程运行。该过程将:从RabbitMQ读取消息修改数据库记录任何错误NLog上所有关于.NETCore的文档都在ASP.NETCore上。当我尝试获取ILogger实现时,它返回null。这里是接线和使用的异常(exception)情况:staticvoidConfigureServices(){stringenvironment=Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT");varbuilder=newConfigurationBuilder().Set

c# - 如何使用通过依赖注入(inject)使用泛型的存储库接口(interface)?

我正在尝试使用以下通用存储库接口(interface)进行DI和构造函数注入(inject):publicinterfaceIRepository:IDisposablewhereTEntity:class问题是为了定义接口(interface)的实例,我必须像这样提供类类型:privateIRepository_personRepository;这个问题是如果我使用DI(并且我使用Unity作为IoC框架),那么我必须在我的构造函数中定义多个实例来获取我需要使用的所有存储库接口(interface),如下所示:publicMyClass(IRepositorypersonReposi

c# - Autofac 属性注入(inject)在属性上失败

我发现了一些关于此的问题,但它们往往指向我正在关注的确切文档......但它仍然无法正常工作。我正在构建一个相当简单的ASP.NETMVC4站点,计划使用基于ActionFilterAttribute的日志记录。我有一个DataAccessProvider类,它打开与数据库的事务并提供工作单元实例,我试图将它注入(inject)过滤器属性。documentation表示只需调用RegisterFilterProvider(),并确保相关类型已注册。它明确表示不需要注册该属性,但我已经尝试过使用和不使用。我的代码目前看起来像这样:varbuilder=newContainerBuilde

c# - WebApi + 简单注入(inject)器 + OWIN

我正在尝试在WebAPI项目中将SimpleInjector与OWIN结合使用。但是,ConfigureAuth中的以下行失败app.CreatePerOwinContext(container.GetInstance);异常(exception)情况是ApplicationUserManager注册为“WebAPI请求”生活方式,但该实例是在WebAPI请求的上下文之外请求的。我正在使用container.RegisterWebApiRequest();在容器初始化中。(如果我使用Register而不是RegisterWebApiRequest不会有任何异常(exception),但