草庐IT

Stop-Process

全部标签

c# - Process.Start ("IIS Manager.lnk") 失败,返回 "The system cannot find the file specified"

我正在通过Process.Start启动路径C:\ProgramData\Microsoft\Windows\StartMenu\Programs\AdministrativeTools\IISManager.lnk,但是它失败并显示系统找不到指定的文件。链接显示在dir中,因此它存在。可以是权限吗?注意事项:路径是通过遍历开始菜单目录自动发现的。我可以通过资源管理器和命令行启动它。说明:代码如下:publicvoidExecute(){Process.Start(_shortcut.FullName);_shortcut是FileInfo类型_shortcut.Exists为真,所以

c# - 为什么 Process.Start 会意外返回 false

在使用Process.Start时外壳另一个可执行文件(不是文件类型)为什么它会返回false并且无法启动可执行文件而不是抛出异常?更清楚地说,文档提到“如果进程资源已启动,则返回为true;如果没有启动新的进程资源,则为false(例如,如果现有进程被重用)”。“重用现有进程”的所有解释似乎都是为了启动在处理它们的程序的现有实例中打开的文件(例如启动在现有图像编辑器实例中打开的.jpg)。在此上下文中启动的可执行文件是内部编写的,不会阻止新实例的执行。不存在应用程序甚至尝试启动的日志记录或其他迹象。无法找到有关流程未启动原因的反馈。值得注意的是,快速连续启动的可执行文件数量越多,问题

Windows 中的 java.io.IOException : The process cannot access the file because another process has locked a portion - when using IOUtils. copyLarge()

问题源于此tryblock中的特定代码行:try{fInputStream=newFileInputStream(path);#thisLinebyteCount+=IOUtils.copyLarge(fInputStream,fOutputStream);fileCount++;}堆栈跟踪看起来像这样:java.io.IOException:Theprocesscannotaccessthefilebecauseanotherprocesshaslockedaportionofthefileatjava.io.FileInputStream.readBytes(NativeMetho

Windows 命令行 : open file with active process?

我希望能够理想地告诉事件进程使用Windows命令行打开文件——但任何使用内置Windows(7+)功能(例如powershell或vbscript)的解决方案也可以。例如,如果我打开了一个记事本实例并且知道它的processid是1234,那么能够执行如下操作会很棒:notepad.exe"myfile.txt"/pid=1234并让记事本尝试在现有进程的窗口中打开文件。这可能吗? 最佳答案 你应该为此使用Autohotkey。虽然这也可以在powershell中完成,但它比在专用工具中复杂得多。在AHK中,您将模拟打开文件(通常

c++ - Cygwin 安装说明 :Hand installation over to elevated child process

我正在尝试安装Cygwin作为在Windows1064位计算机上安装gcc6.3.0的前身。我正在按照我找到的说明进行操作here.当我使用以下行安装Cygwin包时(上述链接中的第2步):C:\cygwin64>setup-x86_64.exe-q-Pwget-Pgcc-g++-Pmake-Pdiffutils-Plibmpfr-devel-Plibgmp-devel-Plibmpc-devel我在Windows命令窗口中收到以下消息:C:\cygwin64>note:Handinstallationovertoelevatedchildprocess._如上图,光标位于C:\cyg

c - GetProcessMemoryInfo PROCESS_MEMORY_COUNTERS_EX.PrivateUsage 始终为 0

我正在使用GetProcessMemoryInfo函数通过其PID确定进程内存使用情况。使用常规PROCESS_MEMORY_COUNTERS一切正常,但我需要PrivateUsage成员,它仅存在于扩展结构PROCESS_MEMORY_COUNTERS_EX中。有几个文档促使我强制将扩展类型转换为基本类型,否则我的示例将无法编译。我仍然能够从基本成员获取值,例如PeakWorkingSetSize,但PrivateUsage始终为0。我什至尝试重新定义PSAPI_VERSION-仍然没有。无法使用PSAPI_VERSION这是我的例子。#include#include#include

c++ - Boost::process 在 Windows 上隐藏控制台

最近发布了boost1.64,包括boost::process。这为启动进程提供了一个简单的界面。之前我使用了独立版本的boost::process库(参见here)。这很好用。我想换到新版本,这样我就可以放弃独立的依赖。API有点不同,但一切正常,除了onthing。在旧版本中,我能够传递特定于Windows的上下文对象,这允许我隐藏进程打开的任何控制台窗口。boost::process::win32_contextctx;ctx.environment=boost::process::self::get_environment();STARTUPINFOAstup;ZeroMemo

windows - Windows 上的 "System"和 "System Idle Process"PID 是否常量?

在我看过的几个WindowsXP系统上,“系统空闲进程”的PID始终为0,而“系统”进程的PID始终为4。在枚举进程的Windows程序中,是否安全通过这些PID识别这些进程,或者它们在某些情况下会有所不同吗? 最佳答案 我有假定这些PID是静态的生产代码,它可以在XP、Vista和Win7上运行。但不确定它是否是官方支持的方法!另外两种解决问题的方法:按升序对事件PID列表进行排序-SystemIdle和Systemprocesses应该是前两个。检查给定进程的父PID-SystemIdle和System进程的父PID均为0。

c# - 如何从 C#、Process.Start ("shutdown"关闭)在 Windows XP 中不起作用

在研究了如何从C#中重置我的计算机和/或关闭它之后,我找到了关于如何执行此操作的解释:ManagementBaseObjectoutParameters=null;ManagementClasssysOS=newManagementClass("Win32_OperatingSystem");sysOS.Get();//Enablesrequiredsecurityprivilege.sysOS.Scope.Options.EnablePrivileges=true;//GetourinparametersManagementBaseObjectinParameters=sysOS.G

python - process.communicate 和 getche() 失败

我正在尝试自动执行用C++编写的交互式命令行工具。启动时,二进制文件等待字母S、Q或P(状态、退出或暂停)。它使用非标准的msvcrt函数“getche”来获取击键(而不是例如gets()),而无需用户按回车键。我尝试以标准方式与进程通信(写入标准输入并使用process.communicate[]),但它没有获得输入。在尝试不同的事情几个小时后,我在VisualStudio中创建了两个小示例项目来重现问题并确保我是理智的(大概)。这是用于调用二进制文件的python脚本:importsubprocessimporttimecmd=["test-getch.exe"]process=s