24小时热门版块排行榜    

查看: 248  |  回复: 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) Then
CloseHandle 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 ]
周杰伦粉丝团团长!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

无声黑白破东风

银虫 (正式写手)

周杰伦粉丝团团长!
8楼2007-09-04 10:43:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 9 个回答

liaoyongpi

木虫 (正式写手)

没明白什么意思?
要看命令格式好像命令后面+“?”就可以吧。
2楼2007-08-29 17:45:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

无声黑白破东风

银虫 (正式写手)

up              
3楼2007-08-30 10:34:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ihlw

★ ★ ★ ★ ★
无声黑白破东风(金币+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
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
不应助 确定回帖应助 (注意:应助才可能被奖励,但不允许灌水,必须填写15个字符以上)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 一志愿厦门大学化学学硕307求调剂 +3 y7czhao 2026-03-26 3/150 2026-03-26 10:23 by yeahyou
[考研] 315分求调剂 +4 26考研上岸版26 2026-03-26 4/200 2026-03-26 10:20 by king123!
[考研] 08工学调剂 +13 用户573181 2026-03-20 18/900 2026-03-25 22:00 by zbssa
[考研] 一志愿中南大学化学学硕0703总分337求调剂 +7 niko- 2026-03-22 7/350 2026-03-25 20:14 by qingfeng258
[考研] 081700 调剂 267分 +10 迷人的哈哈 2026-03-23 10/500 2026-03-25 12:12 by userper
[考研] 271求调剂 +4 生如夏花… 2026-03-22 4/200 2026-03-25 11:25 by userper
[考研] 一志愿北化315 求调剂 +3 akrrain 2026-03-24 3/150 2026-03-24 19:35 by 了了了了。。
[考研] 070300化学求调剂 +9 苑豆豆 2026-03-20 9/450 2026-03-24 17:15 by licg0208
[材料工程] 一志愿C9材料与化工专业总分300求调剂 +4 曼111 2026-03-24 5/250 2026-03-24 15:44 by 星空星月
[考研] 工科0856求调剂 +5 沐析汀汀 2026-03-21 5/250 2026-03-23 17:56 by 海瑟薇-
[考研] 263求调剂 +6 yqdszhdap- 2026-03-22 9/450 2026-03-23 12:57 by yqdszhdap-
[考研] 求老师收我 +3 zzh16938784 2026-03-23 3/150 2026-03-23 12:56 by ztnimte
[考研] 315分,诚求调剂,材料与化工085600 +3 13756423260 2026-03-22 3/150 2026-03-22 20:11 by edmund7
[考研] 一志愿华中农业071010,总分320求调剂 +5 困困困困坤坤 2026-03-20 6/300 2026-03-22 17:41 by hxsm
[考研] 260求调剂 +3 朱芷琳 2026-03-20 4/200 2026-03-22 15:12 by 朱芷琳
[考研] 考研调剂 +3 呼呼?~+123456 2026-03-21 3/150 2026-03-21 20:04 by 无际的草原
[考研] 297求调剂 +3 喜欢还是不甘心 2026-03-20 3/150 2026-03-21 18:33 by 学员8dgXkO
[考研] 336求调剂 +5 rmc8866 2026-03-21 5/250 2026-03-21 17:24 by 学员8dgXkO
[考研] 材料与化工(0856)304求 B区 调剂 +3 邱gl 2026-03-21 3/150 2026-03-21 13:47 by lature00
[考研] 一志愿西安交通大学 学硕 354求调剂211或者双一流 +3 我想要读研究生 2026-03-20 3/150 2026-03-20 20:13 by JourneyLucky
信息提示
请填处理意见