读书人

帮小弟我看一下小弟我自己都搞迷糊返

发布时间: 2012-01-09 21:05:41 作者: rapoo

帮我看一下,我自己都搞迷糊返回的是什么了?
public void game()
{
int proID,proid1;
proID = OpenProcess( "PROCESS_VM_READ ", false, Phandle);//它返回的是什么,我得到的总是0?
//textBox2.Text = proID.ToString();
proid1 = GetWindowThreadProcessId(Phandle,null);//它有返回值,可的返回的是进程ID,还是线程ID,或是哪个的句柄??
//textBox3.Text = proid1.ToString();
}

private void timer1_Tick(object sender, EventArgs e)
{
Phandle = FindWindow( "SciCalc ", null);
if (Phandle != 0)
{
label1.Text = "计算器运行! ";
game();
textBox1.Text = Phandle.ToString();

}
else
{
label1.Text = "计算器未运行! ";
}
}

[解决办法]
PROCESS_VM_READ
不是文本 ,有关是数值常量啊
[解决办法]
const int PROCESS_VM_READ = 16;


现在的人们要求越来越高!事情还是十画还没有一撇,就要源码!

[解决办法]
PROCESS_VM_READ是常量,值为0x10,也就是16,不是字符串
OpenProcess成功的话返回process的句柄,否则返回null
GetWindowThreadProcessId返回的是线程ID,第二个参数是接收进程ID的
MSDN上都有。。。
[解决办法]
[DllImport( "User32.dll ", EntryPoint = "GetWindowThreadProcessId ")]
private static extern int GetWindowThreadProcessId(int hWnd, ref int ProcessId);

int pid = 0;


GetWindowThreadProcessId(Phandle, ref pid);//ProcessID存入pid
int hProcess = OpenProcess(PROCESS_VM_READ, false, pid);

private void textBox1_TextChanged(object sender, EventArgs e)之类的你可以在属性窗口里的事件里面删除

读书人网 >C#

热点推荐