草庐IT

c# - 在 C# .NET 中启动和停止进程

我正在尝试编写一个简单的程序,它有两种方法,一种启动进程,另一种关闭同一进程。如:publicProcessStartProc(stringprocname){Processproc=newProcess();proc.StartInfo.FileName=procname;proc.Start();returnproc;}publicvoidStopProc(Processproc){proc.Close();}这样可以吗? 最佳答案 是的,你所追求的方法叫做Kill,而不是关闭:publicvoidStopProc(Proces

c# - 如何检查应用程序是否正在运行

这个问题在这里已经有了答案:CheckingifmyWindowsapplicationisrunning(9个回答)关闭9年前。我只想检查是否有任何所需的应用程序已经在运行例如,假设我有VLC或iTunes或任何Windows应用程序,那么我如何通过C#代码确定它是否正在运行。

c# - 杀死远程机器上的进程

我正试图终止远程机器上的进程。但我得到错误。我做错了什么,我该如何解决这个问题?我的代码:variu=newImpersonateUser();try{iu.Impersonate(Domain,_userName,_pass);foreach(varprocessinProcess.GetProcessesByName("notepad","RemoteMachine")){stringprocessPath=pathToExe;//Issetasconstant(andiscorrect)process.Kill();Thread.Sleep(3000);Process.Start

c# - 检索进程描述信息

我正在尝试检索进程信息并且我知道我可以使用:Process[]myProcesses=Process.GetProcesses();但是如何检索过程描述?是通过某些Win32API调用吗?我运行的是Vista,当我在任务管理器中单击“进程”选项卡时,我看到了描述。 最佳答案 您在任务管理器中看到的实际上是可执行镜像的描述字段。您可以使用GetFileVersionInfo()和VerQueryValue()WinAPI调用来访问各种版本信息,例如公司名称或文件说明。对于.Net方式,使用FileVersionInfo的FileDes

c# - 使用 Process.Start() 通过快捷方式运行应用程序

有没有办法通过C#应用程序的快捷方式运行应用程序?我正在尝试从我的C#应用程序运行.lnk。该快捷方式包含大量参数,我希望应用程序不必记住这些参数。尝试通过Process.Start()运行快捷方式会导致异常。Win32Exception:ThespecifiedexecutableisnotavalidWin32application这是我正在使用的代码。ProcessStartInfoinfo=newProcessStartInfo("example.lnk");info.CreateNoWindow=true;info.UseShellExecute=false;info.Red

c# - 泛型类中的方法重载

我正在使用包含以下泛型类重载方法的代码:publicclassA{publicvoidProcess(Titem){/*impl*/}publicvoidProcess(stringitem){/*impl*/}}当为string参数化类时,我是否失去了使用通用参数调用版本的可能性?vara=newA();a.Process("");//Alwayscallsthenon-genericProcess(string) 最佳答案 特定类型优先于通用类型。例如,这是我在LINQPad中测试的内容。voidMain(){newA().Pr

c# - react 性扩展 : Process events in batches + add delay between every batch

我有一个应用程序,它有时几乎同时引发1000个事件。我想做的是将事件批处理为50个项目的block,并开始每10秒处理一次。在开始新的批处理之前无需等待批处理完成。例如:10:00:00:10000neweventsreceived10:00:00:StartProcessing(events.Take(50))10:00:10:StartProcessing(events.Skip(50).Take(50))10:00:15:StartProcessing(events.Skip(100).Take(50))有什么想法可以实现吗?我想ReactiveExtensions是可行的方法,

c# - 无论如何在生成进程时指定 PrintTo 打印机?

我有什么我目前正在编写一个程序,它接受一个指定的文件并对其执行一些操作。目前它打开它,和/或将它附加到电子邮件并将其邮寄到指定地址。文件可以是以下格式:Excel、ExcelReport、Word或PDF。我目前正在做的是使用文件路径生成一个进程,然后启动该进程;然而,我也在尝试修复我添加的bug功能,该功能将动词“PrintTo”添加到启动信息中,具体取决于指定的设置。我需要什么我要完成的任务是我想打开文档,然后将其自身打印到程序本身指定的指定打印机。之后,文件应该会自动关闭。如果没有办法通用地执行此操作,我们也许可以想出一种方法来为每种单独的文件类型执行此操作。你需要什么这是我使用

c# - 如何确保 C# 的 Process.Start 会扩展环境变量?

我正在尝试创建一个这样的流程:varpsi=newProcessStartInfo{FileName=@"%red_root%\bin\texturepreviewer.exe",UseShellExecute=true};varprocess=Process.Start(psi);process.WaitForExit();现在环境变量“red_root”肯定存在于派生进程的环境变量中,但执行似乎没有扩展环境变量,因此找不到文件。如何获取Process.Start展开文件名中的环境变量? 最佳答案 Environment.Expa

c# - 从 System.Diagnostics.Process 调用 dism.exe 失败

为了在Windows2008R2Server(64位)中启用Microsoft-Hyper-V和Microsoft-Hyper-V-Management,我将dism.exe作为进程调用。我使用的命令是Dism.exe/online/Get-FeatureInfo/FeatureName:Microsoft-Hyper-VDism.exe/online/Get-FeatureInfo/FeatureName:Microsoft-Hyper-V-Management-Clients当我从命令行执行它时它工作正常但当我尝试通过我的代码执行它时它失败了。我已经在C:\Windows\SysW