草庐IT

user_pid

全部标签

c - 确定进程是否已死 - 通过 PID

我有两种不同的方法来检查进程是否仍在运行:1)使用GetExitCodeProcess()2)使用CreateToolhelp32Snapshot()遍历进程列表并检查PID现在,在这两种情况下,我仍然知道我用TerminateProcess终止的进程仍然存在,即使它不是。有没有办法通过PID明确知道进程是活着还是死了?谢谢! 最佳答案 不要将PID用于这样的事情。PID被重复使用并且具有非常的范围,具有非常高的冲突概率。换句话说,您会发现一个正在运行的进程,但它是一个不同进程。 关于c

c - 将 User32 与 gcc 链接起来

我有一个C程序,它有一个在windows.h中定义的函数调用(我已经包含了),但是,当我尝试用gcc编译它时>,我得到错误:warning:implicitdeclarationoffunction`LockWorkStation'我查看了MSDN文档,发现此函数是User32库文件,我想知道如何将它链接到我的文件。 最佳答案 LockWorkstation可在Windows2000及更高版本上使用。您必须声明您的目标Windows版本。让它看起来像这样:#define_WIN32_WINNT0x500#include

windows - 德尔福 : Call user selection interface

我可以使用WindowsAPI调用此屏幕吗?我想使用此界面来选择具有域的正确用户。谢谢! 最佳答案 此对话框称为对象选取器对话框。您可以使用IDsObjectPicker从Delphi调用接口(interface)和InvokeDialog方法。这是一个示例,说明如何使用Delphi中的此对话框。implementation{$R*.dfm}usesActiveX;constCLSID_DsObjectPicker:TGUID='{17D6CCD8-3B7B-11D2-B9E0-00C04FD8DBF7}';IID_IDsObjec

Python:给定pid获取用户进程的开始时间

继续问题标题,假设我有2个正在进行的ftp传输并且我想有选择地杀死(在使用taskkill的Windows中)旧的。我将在解析tasklist命令的输出后得到pids。我不知道如何根据开始时间来区分它们-用户过去启动它们的时间。这可以在python中完成吗?我所知道的是pid可以是随机的,即较新的进程可能比旧进程具有更小/更大的pid。所以必须看到开始时间。请帮忙 最佳答案 你可以用psutils做到这一点:直接来自文档:>>>importos,psutil,datetime>>>p=psutil.Process(os.getpid

windows - 在 Windows 中 : How do you programatically launch a process in administrator mode under another user context?

场景我有一台远程计算机,我想以编程方式在其上运行安装程序(任意可执行文件)。这些安装程序需要两件事:它们必须以管理员模式运行。它们必须在特定用户环境下运行(具体来说,是管理员组成员的本地用户)。事实证明这非常具有挑战性。似乎有一些外部工具可以执行此操作,但我正在寻找Windows附带的解决方案。这个问题的有效解决方案是什么样的从提升的上下文(例如,提升的批处理文件或可执行程序),有效的解决方案应该能够以编程方式在另一个用户上下文下以管理员模式启动进程。假设另一个用户的id和密码可用,并且另一个用户是Administrators组的成员。附加限制:有效的解决方案不能依赖外部工具。由于较新

windows - 如何在 Windows 上检索 cmd.exe 的 PID?

windows下如何获取cmd.exe的PID?我正在尝试找出cmd.exe的PID,就像在Unix中一样,我可以使用“ps”命令获得Windows的等效项应该是什么? 最佳答案 任务列表|找到“cmd.exe”总是会返回带有PID的cmd.exe列表如果你想知道特定终端的PID,那么从终端执行:-wmic进程获取parentprocessid,name|找到“WMIC”WMIC.exe11348它应该返回父PID,它永远是你的cmd.exe的PID 关于windows-如何在Windo

windows - Windows Server 2008 R2 中的最大进程 ID (pid)

我如何知道WindowsServer2008R2中进程ID(pid)的最大可能值?据我所知,pids存储为unsignedint(DWORD)。但是在我的服务器中观察到的每个实际pids都低于65535。如果可能的话,我想将其处理为unsignedshort。 最佳答案 没有这样的限制,或者我可以看到不同的进程有不同的范围可以出现,我还没有看到一个大于5位数的。由于pids存储在DWORD中,我会说限制是4294967295,这是可以存储的最大值,因此为了安全起见,我会使用DWORD。

c# - Windows 上的 OpenVPN --auth-user-pass FILE 选项

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。这个问题似乎不是关于aspecificprogrammingproblem,asoftwarealgorithm,orsoftwaretoolsprimarilyusedbyprogrammers的.如果您认为这个问题是关于anotherStackExchangesite的主题,您可以发表评论,说明问题可能在哪里得到解答。关闭5年前。Improvethisquestion如果您尝试通过--auth-user-pass开关将用户名/密码从文件传递到OpenVPN,您会收到以下错误:"Sorry,'Aut

c++ - 从 ShellExecute 获取 PID

我正在从ShellExecuteEx启动一个进程,我确实需要获取ProcessID(这是此类要求的一部分)。不知何故,所有重要的SHELLEXECUTEINFO都返回null。因此,例如,如果我使用此代码:exInfo.lpVerb="open";exInfo.lpFile="C:\\Windows\\system32\\cmd.exe";exInfo.nShow=5;ShellExecuteExA(exInfo);它启动了CMD.exe。但现在我需要得到它的PID。exInfo.hwnd返回0,exInfo.hProcess返回null。这是正常行为吗?我真的不想使用CreatePr

java - 如何在命令行上获取 Windows Pid 的 cpu% 使用率?

我知道有很多方法可以通过进程名称获取此信息,但我有许多进程具有相同的名称(Java),因此需要使用PID。乐于使用任何可以完成此任务的工具/语言。最终这将使用Cygwin调用。谢谢 最佳答案 这个VB脚本似乎可以解决问题,在命令行上传递pid:(初始for循环可以省略)ForEachProcessinGetObject("winmgmts:").ExecQuery("Select*fromWin32_ProcesswhereHandle="&WScript.Arguments.Item(0)&"")WScript.echoProce