Atitit,通过pid获取进程文件路径 java php c#.net版本大总结
Atitit,通过pid获取进程文件路径 java php c#.net版本大总结
1. 通过PID获取进程路径的几种方法2
1.1. GetModuleFileNameEx 想获得进程可执行文件的路径最常用的方法是通过GetModuleFileNameEx函数获得可执行文件的模块路径这个函数从Windows NT 4.0开始到现在的Vista系统都能使用,向后兼容性比较好。2
1.2. 第二种方法是GetProcessImageFileName函数,这个函数在Windows XP及其以后的系统中都能使用,使用此函数返回的路径不是通常的系统盘符,如"C:\...",而是驱动层的表示方式"\Device\HarddiskVolume1\...",所以使用起来不是很方便。2
1.3. 第三种方法是使用Windows Vista新增的函数QueryFullProcessImageName,由于是Vista新增的,所以兼容性不好。2
2. 使用powershell 相等于调用System.Diagnostics.Process2
2.1. Get-Process -id 6712 -FileVersionInfo2
2.1.1. -FileVersionInfo3
2.2. C#.net版本3
2.3. Note3
3. 获取加载的dll模块列表 Get-Process -id 6712 -Module3
4. 参考10
1. 通过PID获取进程路径的几种方法
1.1. GetModuleFileNameEx
想获得进程可执行文件的路径最常用的方法是通过GetModuleFileNameEx函数获得可执行文件的模块路径这个函数从Windows NT 4.0开始到现在的Vista系统都能使用,向后兼容性比较好。
1.2. 第二种方法是GetProcessImageFileName函数,这个函数在Windows XP及其以后的系统中都能使用,使用此函数返回的路径不是通常的系统盘符,如"C:\...",而是驱动层的表示方式"\Device\HarddiskVolume1\...",所以使用起来不是很方便。
1.3. 第三种方法是使用Windows Vista新增的函数QueryFullProcessImageName,由于是Vista新增的,所以兼容性不好。
2. 使用powershell 相等于调用System.Diagnostics.Process
2.1. Get-Process -id 6712 -FileVersionInfo
PS C:\Windows\winsxs\amd64_microsoft-windows-gpowershell-exe_31bf3856ad364e35_6.1.7600.16385_none_94861149bb66249c> Get-Process -id 6712 -FileVersionInfo
ProductVersion FileVersion FileName
-------------- ----------- --------
C:\eclipse\eclipse.exe
2.1.1. -FileVersionInfo
获取进程中运行的程序的文件版本信息。
在 Windows Vista 以及更高版本的 Windows 上,必须使用“以管理员身份运行”选项打开 Windows PowerShell,才能对您不具有所有权的进程使用此参数。
使用此参数等效于获取每个进程对象的 MainModule.FileVersionInfo 属性。如果使用此参数,则 Get-Process 返回 FileVersionInfo 对象 (System.Diagnostics.FileVersionInfo),而非进程对象。因此,不能通过管道将命令输出传递到需要进程对象的 cmdlet(例如 Stop-Process)。
作者:: 绰号:老哇的爪子 ( 全名::Attilax akbar al rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙, EMAIL:1466519819@qq.com
2.2. C#.net版本
//根据名称获取进程
Process[] ps = Process.GetProcessesByName("NameStr");
foreach (Process p in ps)
{
//输出进程路径
Console.WriteLine(p.MainModule.FileName);
}
2.3. Note
需要先设置权限RemoteSigned前面有空格与set-ExecutionPolicy 隔开
set-ExecutionPolicy RemoteSigned
3. 获取加载的dll模块列表 Get-Process -id 6712 -Module
PS C:\Windows\winsxs\amd64_microsoft-windows-gpowershell-exe_31bf3856ad364e35_6.1.7600.16385_none_94861149bb66249c> Get-Process -id 6712 -Module
Size(K) ModuleName FileName
------- ---------- --------
316 eclipse.exe C:\eclipse\eclipse.exe
1700 ntdll.dll C:\Windows\SYSTEM32\ntdll.dll
1152 kernel32.dll C:\Windows\system32\kernel32.dll
432 KERNELBASE.dll C:\Windows\system32\KERNELBASE.dll
1000 USER32.dll C:\Windows\system32\USER32.dll
412 GDI32.dll C:\Windows\system32\GDI32.dll
56 LPK.dll C:\Windows\system32\LPK.dll
808 USP10.dll C:\Windows\system32\USP10.dll
636 msvcrt.dll C:\Windows\system32\msvcrt.dll
2000 COMCTL32.dll C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.18837_none_fa3b1e3d17594757\COMCTL32.dll
452 SHLWAPI.dll C:\Windows\system32\SHLWAPI.dll
184 IMM32.DLL C:\Windows\system32\IMM32.DLL
1060 MSCTF.dll C:\Windows\system32\MSCTF.dll
72 eclipse_1608.dll C:\eclipse\plugins\org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20150204-1316\eclipse_1608.dll
876 ADVAPI32.dll C:\Windows\system32\ADVAPI32.dll
124 sechost.dll C:\Windows\SYSTEM32\sechost.dll
1204 RPCRT4.dll C:\Windows\system32\RPCRT4.dll
48 VERSION.dll C:\Windows\system32\VERSION.dll
344 uxtheme.dll C:\Windows\system32\uxtheme.dll
2060 ole32.dll C:\Windows\system32\ole32.dll
60 CRYPTBASE.dll C:\Windows\system32\CRYPTBASE.dll
8552 jvm.dll C:\eclipse\jre\bin\server\jvm.dll
36 WSOCK32.dll C:\Windows\system32\WSOCK32.dll
308 WS2_32.dll C:\Windows\system32\WS2_32.dll
32 NSI.dll C:\Windows\system32\NSI.dll
236 WINMM.dll C:\Windows\system32\WINMM.dll
28 PSAPI.DLL C:\Windows\system32\PSAPI.DLL
840 MSVCR100.dll C:\Windows\system32\MSVCR100.dll
60 verify.dll C:\eclipse\jre\bin\verify.dll
160 java.dll C:\eclipse\jre\bin\java.dll
88 zip.dll C:\eclipse\jre\bin\zip.dll
13860 SHELL32.dll C:\Windows\system32\SHELL32.dll
60 profapi.dll C:\Windows\system32\profapi.dll
96 CRYPTSP.dll C:\Windows\system32\CRYPTSP.dll
284 rsaenh.dll C:\Windows\system32\rsaenh.dll
120 USERENV.dll C:\Windows\system32\USERENV.dll
104 net.dll C:\eclipse\jre\bin\net.dll
1036 AcSpi64.dll C:\Windows\system32\AcSpi64.dll
860 OLEAUT32.dll C:\Windows\system32\OLEAUT32.dll
68 WTSAPI32.dll C:\Windows\system32\WTSAPI32.dll
452 WINHTTP.dll C:\Windows\system32\WINHTTP.dll
400 webio.dll C:\Windows\system32\webio.dll
1200 PROPSYS.dll C:\Windows\system32\PROPSYS.dll
340 mswsock.dll C:\Windows\system32\mswsock.dll
28 wship6.dll C:\Windows\System32\wship6.dll
1884 SETUPAPI.dll C:\Windows\system32\SETUPAPI.dll
216 CFGMGR32.dll C:\Windows\system32\CFGMGR32.dll
104 DEVOBJ.dll C:\Windows\system32\DEVOBJ.dll
156 IPHLPAPI.DLL C:\Windows\system32\IPHLPAPI.DLL
44 WINNSI.DLL C:\Windows\system32\WINNSI.DLL
68 dhcpcsvc6.DLL C:\Windows\system32\dhcpcsvc6.DLL
96 dhcpcsvc.DLL C:\Windows\system32\dhcpcsvc.DLL
68 nio.dll C:\eclipse\jre\bin\nio.dll
84 NLAapi.dll C:\Windows\system32\NLAapi.dll
84 napinsp.dll C:\Windows\system32\napinsp.dll
100 pnrpnsp.dll C:\Windows\system32\pnrpnsp.dll
364 DNSAPI.dll C:\Windows\system32\DNSAPI.dll
44 winrnr.dll C:\Windows\System32\winrnr.dll
152 mdnsNSP.dll C:\Program Files\Bonjour\mdnsNSP.dll
28 wshtcpip.dll C:\Windows\System32\wshtcpip.dll
32 rasadhlp.dll C:\Windows\system32\rasadhlp.dll
332 fwpuclnt.dll C:\Windows\System32\fwpuclnt.dll
672 swt-win32-4430.dll C:\eclipse\configuration\org.eclipse.osgi\869\0\.cp\swt-win32-4430.dll
604 comdlg32.dll C:\Windows\system32\comdlg32.dll
452 WINSPOOL.DRV C:\Windows\system32\WINSPOOL.DRV
1388 WININET.dll C:\Windows\system32\WININET.dll
12 Normaliz.dll C:\Windows\system32\Normaliz.dll
2120 iertutil.dll C:\Windows\system32\iertutil.dll
1372 urlmon.dll C:\Windows\system32\urlmon.dll
1460 CRYPT32.dll C:\Windows\system32\CRYPT32.dll
60 MSASN1.dll C:\Windows\system32\MSASN1.dll
96 dwmapi.dll C:\Windows\system32\dwmapi.dll
612 CLBCatQ.DLL C:\Windows\system32\CLBCatQ.DLL
48 LINKINFO.dll C:\Windows\system32\LINKINFO.dll
120 swt-gdip-win32-4430.dll C:\eclipse\configuration\org.eclipse.osgi\869\0\.cp\swt-gdip-win32-4430.dll
2136 gdiplus.dll C:\Windows\WinSxS\amd64_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.19061_none_2b299db671e86e03\gdiplus.dll
1192 WindowsCodecs.dll C:\Windows\system32\WindowsCodecs.dll
72 localfile_1_0_0.dll C:\eclipse\configuration\org.eclipse.osgi\72\0\.cp\os\win32\x86_64\localfile_1_0_0.dll
68 jWinHttp-1.0.0.dll C:\eclipse\configuration\org.eclipse.osgi\75\0\.cp\jWinHttp-1.0.0.dll
336 oleacc.dll C:\Windows\system32\oleacc.dll
28 msimg32.dll C:\Windows\system32\msimg32.dll
236 mlang.dll C:\Windows\system32\mlang.dll
144 sunec.dll C:\eclipse\jre\bin\sunec.dll
80 RpcRtRemote.dll C:\Windows\system32\RpcRtRemote.dll
348 apphelp.dll C:\Windows\system32\apphelp.dll
1832 explorerframe.dll C:\Windows\system32\explorerframe.dll
268 DUser.dll C:\Windows\system32\DUser.dll
968 DUI70.dll C:\Windows\system32\DUI70.dll
180 ntmarta.dll C:\Windows\system32\ntmarta.dll
328 WLDAP32.dll C:\Windows\system32\WLDAP32.dll
512 ntshrui.dll C:\Windows\system32\ntshrui.dll
140 srvcli.dll C:\Windows\system32\srvcli.dll
60 cscapi.dll C:\Windows\system32\cscapi.dll
44 slc.dll C:\Windows\system32\slc.dll
48 netutils.dll C:\Windows\system32\netutils.dll
10704 ieframe.dll C:\Windows\System32\ieframe.dll
580 SXS.DLL C:\Windows\system32\SXS.DLL
44 Secur32.dll C:\Windows\system32\Secur32.dll
148 SSPICLI.DLL C:\Windows\system32\SSPICLI.DLL
17492 mshtml.dll C:\Windows\System32\mshtml.dll
56 msimtf.dll C:\Windows\system32\msimtf.dll
232 msls31.dll C:\Windows\system32\msls31.dll
904 d2d1.dll C:\Windows\system32\d2d1.dll
1532 DWrite.dll C:\Windows\system32\DWrite.dll
668 dxgi.dll C:\Windows\system32\dxgi.dll
236 WINTRUST.dll C:\Windows\system32\WINTRUST.dll
208 d3d10_1.dll C:\Windows\system32\d3d10_1.dll
340 d3d10_1core.dll C:\Windows\system32\d3d10_1core.dll
1856 D3D10Warp.dll C:\Windows\system32\D3D10Warp.dll
1268 d3d10.dll C:\Windows\system32\d3d10.dll
300 d3d10core.dll C:\Windows\system32\d3d10core.dll
4016 GOOGLEPINYIN2.IME C:\Windows\system32\GOOGLEPINYIN2.IME
1172 dbghelp.dll C:\Windows\system32\dbghelp.dll
136 bcrypt.dll C:\Windows\System32\bcrypt.dll
304 bcryptprimitives.dll C:\Windows\system32\bcryptprimitives.dll
152 360CloudShellExt64.dll C:\Program Files (x86)\360WangPan\CloudMini\360CloudShellExt64.dll
468 QMGCShellExt64.dll C:\Program Files (x86)\QQPCMgr\11.2.17063.223\QMGCShellExt64.dll
1060 MSVCP80.dll C:\Windows\WinSxS\amd64_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.6229_none_88dcc0bf2fb1b808\MSVCP80.dll
804 MSVCR80.dll C:\Windows\WinSxS\amd64_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.6229_none_88dcc0bf2fb1b808\MSVCR80.dll
664 exnscan64.dll C:\Program Files (x86)\QQPCMgr\11.2.17063.223\exnscan64.dll
88 NETAPI32.dll C:\Windows\system32\NETAPI32.dll
84 wkscli.dll C:\Windows\system32\wkscli.dll
212 EhStorShell.dll C:\Windows\system32\EhStorShell.dll
1428 jd-eclipse.dll C:\eclipse\configuration\org.eclipse.osgi\761\0\.cp\win32\x86_64\jd-eclipse.dll
652 MSVCR90.dll C:\Windows\WinSxS\amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.7523_none_08e1eaf5a83f8ea2\MSVCR90.dll
4. 参考
通过PID获取进程路径的几种方法 - 安静的主页.htm
paip. c++ 调用.net dll 最好方式powershell 使用总结. - attilax的专栏 - 博客频道 - CSDN.NET.htm
Atitit,通过pid获取进程文件路径 java php c#.net版本大总结相关推荐
- 简单介绍Linux进程文件路径的获取方法
Linux进程文件路径在哪里才能找得到呢,有时会让Linux系统管理员费些心思,这里小编说一个简单的案例,相信会让不少管理员有所收获,帮助轻松获得想要的Linux进程文件路径,完成指定任务. 进入/p ...
- 获取进程全路径方法(支持xp、win7、win10系统)
获取进程全路径方法(支持xp.win7.win10系统) 获取进程的全路径的函数包括GetModuleFileNameEx.GetProcessImageFileName.QueryFullProce ...
- ubuntu18.04.4 获取当前文件路径
ubuntu18.04.4 获取当前文件路径 打开文件夹 右键–>在终端打开 pwd 复制上面地址
- Atitit onvif协议获取rtsp地址播放java语言 attilx总结
Atitit onvif协议获取rtsp地址播放java语言 attilx总结 1.1. 获取rtsp地址的算法与流程1 1.2. Onvif摄像头的发现,ws的发现机制,使用xcf类库1 2. 调用 ...
- linux c 通过 pid 获取 进程相关信息 cmdline
linux系统命令ps和top都是通过读取/proc/$PID 目录下的信息获取进程的相关信息, 它遍历/proc目录下的首字符为数字的目录,获取系统进程的信息. 我们经常会把pid写到/var/ru ...
- python获取某文件路径_Python获取当前文件路径
一. Python 获取当前文件路径方法 2. sys.path[0] 获取文件当前工作目录路径(绝对路径) sys.argv[0]|获得模块所在的路径(由系统决定是否是全名) 若显示调用python ...
- python 当前文件路径获取方式_Python获取当前文件路径
一. Python 获取当前文件路径方法 2. sys.path[0] 获取文件当前工作目录路径(绝对路径) sys.argv[0]|获得模块所在的路径(由系统决定是否是全名) 若显示调用python ...
- MFC从字体名获取字库文件路径(从宋体获取到simsun.ttc)
上一篇有讲到在QT中从字体名获取文字的路径,这个是MFC版本的: #QT从字体名获取字库文件路径#include <string> using namespace std;void wch ...
- NT5/NT6上的获取进程全路径
前面说过使用一大堆函数获取全路径 PID->eprocess->KeStackAttachProcess->ZwQueryInformationProcess->Process ...
- java 获取ftp 文件路径_java在浏览器上获取FTP读文件路径
展开全部 问一下,你是62616964757a686964616fe4b893e5b19e31333337623437想做ftp上传下载么? 首先你需要安装一个ftp服务端程序,启动起来,然后下载一个 ...
最新文章
- 信息大脑如何从物理大脑中涌现?
- 【算法数据结构Java实现】递归的简单剖析及时间复杂度计算
- 《STL源码剖析》学习-- 1.9-- 可能令你困惑的C++语法2
- BI和大数据你能分清吗?
- Android开源项目发现---ProgressBar 篇(持续更新)
- C# 数据适配器之 DataAdapter 对象
- CSS 匿名文本和匿名框
- java jdbc jar包_通过 Spring 框架如何进行JDBC操作呢?
- CentOS 7.4安装postgresql96
- x86汇编指令:EIP、ESP、EBP
- 纯净菜单栏优化管理:Bartender 4 for Mac支持 Monterey
- spring 4.x下让http请求返回json串
- Layui在表格中无法显示进度条(layui-progress)的值
- 【javascript】字符串逆序输出
- 感谢Python,让我又在同学面前装了一次逼
- 2018-2019年江苏省高等学校“阿里云大数据技术实战训练营”大学生万人计划学术冬令营开营... 1
- Ubuntu系统下的实用软件推荐
- 微信小程序登录获取手机号获取不到偶发性问题
- Wind万得PythonAPI量化接口常用小工具——时序数据处理及工作日前推查询
- 苹果白屏一直显示苹果_苹果一直白屏怎么办?试试这个办法