| 查看: 219 | 回复: 8 | |||
| 当前主题已经存档。 | |||
| 【悬赏金币】回答本帖问题,作者无声黑白破东风将赠送您 10 个金币 | |||
[求助]
懂VB的请进:如何查看一个程序运行后,记录的命令格式。
|
|||
|
比如调用RNAstructure.exe后,输入的是rna.seq,得到的结果是rna.ct 命令记录就是: D:\Program Files\RNAstructure 4.11\RNAstructure.exe"" /fold -s rna.seq -c rna.ct 网上找到了有人编好的,可是看不懂,有高手帮我看看,如何用吗? 编好的在http://community.csdn.net/Expert/TopicView3.asp?id=5601470 “hotus“的 ***************************************************************** 模块中 Private Declare Function NtQueryInformationProcess Lib "ntdll" (ByVal ProcessHandle As Long, ByVal ProcessInformationClass As Long, ByRef ProcessInformation As Any, ByVal lProcessInformationLength As Long, ByRef lReturnLength As Long) As Long Private Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByRef lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long Public Const PROCESS_ALL_ACCESS = &H1F0FFF Public Const PROCESS_TERMINATE = &H1 Public Const PROCESS_VM_READ = 16 Public Const PROCESS_QUERY_INFORMATION = 1024 Public Const PROCESS_SET_INFORMATION = 612 Private Type PROCESS_BASIC_INFORMATION ExitStatus As Long PebBaseAddress As Long AffinityMask As Long BasePriority As Long UniqueProcessId As Long InheritedFromUniqueProcessId As Long End Type Public Function GetCmdLine(ByVal plngPID As Long) As String Dim strBuffer As String Dim hProcess As Long Dim offset1 As Long Dim offset2 As Long Dim Dummy As Long Dim Info As PROCESS_BASIC_INFORMATION Const STATUS_SUCCESS As Long = 0 offset1 = 1 offset2 = 0 hProcess = OpenProcess(PROCESS_QUERY_INFORMATION Or PROCESS_VM_READ, 0, plngPID) If (hProcess = 0) Then Exit Function End If If (NtQueryInformationProcess(hProcess, 0, Info, Len(Info), ByVal 0& <> STATUS_SUCCESS) ThenCloseHandle hProcess Exit Function End If If (ReadProcessMemory(hProcess, (Info.PebBaseAddress + &H10), offset1, 4, Dummy) = STATUS_SUCCESS) Then CloseHandle hProcess Exit Function End If If (ReadProcessMemory(hProcess, (offset1 + &H44), offset2, 4, Dummy) = STATUS_SUCCESS) Then CloseHandle hProcess Exit Function End If strBuffer = String(256, " " ![]() If (ReadProcessMemory(hProcess, offset2, ByVal strBuffer, 256, Dummy) = STATUS_SUCCESS) Then CloseHandle hProcess Exit Function End If CloseHandle hProcess strBuffer = Left$(strBuffer, InStr(strBuffer, Chr(0) & Chr(0))) GetCmdLine = StrConv(strBuffer, vbFromUnicode) End Function 使用 msgbox getcmdline(进程PID) **************************************************************** [ Last edited by 无声黑白破东风 on 2007-8-30 at 10:33 ] |
» 猜你喜欢
拟解决的关键科学问题还要不要写
已经有8人回复
最失望的一年
已经有14人回复
求助一下有机合成大神
已经有3人回复
存款400万可以在学校里躺平吗
已经有30人回复
求推荐英文EI期刊
已经有5人回复
请教限项目规定
已经有4人回复
26申博
已经有3人回复
基金委咋了?2026年的指南还没有出来?
已经有10人回复
基金申报
已经有6人回复
疑惑?
已经有5人回复

liaoyongpi
木虫 (正式写手)
- 博学EPI: 1
- 应助: 0 (幼儿园)
- 金币: 4214.1
- 红花: 3
- 帖子: 800
- 在线: 60.1小时
- 虫号: 70697
- 注册: 2005-05-27
- 性别: GG
- 专业: 冶金物理化学与冶金原理
2楼2007-08-29 17:45:10
up ![]() |
3楼2007-08-30 10:34:44
★ ★ ★ ★ ★
无声黑白破东风(金币+5,VIP+0):你好,我试用了一下,输入了pid后,只看见方法一里有了exe文件的位置,但是点击后,总是报run-time error: '438'...这是为啥呢? xixi...
无声黑白破东风(金币+5,VIP+0):你好,我试用了一下,输入了pid后,只看见方法一里有了exe文件的位置,但是点击后,总是报run-time error: '438'...这是为啥呢? xixi...
|
程序见: http://ihlw.ys168.com/ 里面“临时”目录。 包含源文件和编译好的程序。 直接运行“GetCommandLine.exe”后,点击方法1就行。方法2需要知道程序的pid值。打开任务管理器,菜单-》查看=》选择列-》选中pid,然后输入相对应的pid,按“方法2”也行。 |
4楼2007-08-31 12:26:31
★ ★ ★ ★ ★
无声黑白破东风(金币+2,VIP+0):不知为啥,还是不行,我把Rnastructure程序放到http://wshbpdf.ys168.com/了,辛苦你了
无声黑白破东风(金币+3,VIP+0):嘿嘿,我在winxp下试了,可以运行了,可惜看不到RNAstructure.exe的参数 【/fold -s rna.seq -c rna.ct】,估计比较难做吧^_^
无声黑白破东风(金币+2,VIP+0):不知为啥,还是不行,我把Rnastructure程序放到http://wshbpdf.ys168.com/了,辛苦你了
无声黑白破东风(金币+3,VIP+0):嘿嘿,我在winxp下试了,可以运行了,可惜看不到RNAstructure.exe的参数 【/fold -s rna.seq -c rna.ct】,估计比较难做吧^_^
| 请试试新版 |
5楼2007-09-03 23:25:24
gyh
至尊木虫 (著名写手)
- 应助: 6 (幼儿园)
- 金币: 16540.2
- 红花: 2
- 帖子: 1140
- 在线: 1088.7小时
- 虫号: 97093
- 注册: 2005-11-08
- 专业: 计算机应用技术
6楼2007-09-04 07:30:34

7楼2007-09-04 10:41:09

8楼2007-09-04 10:43:14













<> STATUS_SUCCESS) Then
回复此楼
