使用ShellExecute或ShellExecuteEx打开一个应用程序,好像能获得HINSTANCE,
本来用HINSTANCE是可以获得窗口句柄的,不过不成功,不知道哪里出错了,请教!
本来用HINSTANCE是可以获得窗口句柄的,不过不成功,不知道哪里出错了,请教!
解决方案 »
- VC++文件简单的读写问题
- 求助一个非常怪异的崩溃问题,请高手回答,在线等。。。
- 请问如何在combobox中加入不同的字符串?
- 我想做一个雷达的显示屏一样的东东,如何实现阿
- 关于如何使用树形控件来显示、修改XML文件
- 一个关于两个类之间的函数的相互调用问题?(在先等待)急!!
- 哪位高手知道邮件群发是用什么协议?肯定不是用SMTP.这个问题可能VB人员才懂.
- unix C++ 和 windows C++,求助
- 如何把打印对话框中打印方向的最初值设为水平方向?
- 怎样在VC下更改网卡MAC地址,以让Windows认更改后的网卡MAC地址
- 请问在VC中如何查询注册表中是否有某一个值?
- 如何把源代码里面的相对地址转换成绝对地址?
MSDN的解释:
hProcess
Handle to the newly started application. This member is set on return and is always NULL if fMask is not set to SEE_MASK_NOCLOSEPROCESS.
HWND FindWindow(
LPCTSTR lpClassName, // pointer to class name
LPCTSTR lpWindowName // pointer to window name
);
根据窗口类名和窗口名
如何"用CreateProcess创建一个进程后用OpenProcess可以获得该进程句柄。"
贴个例子好吗?
STARTUPINFO si;
PROCESS_INFORMATION pi; ZeroMemory( &si, sizeof(si) );
si.cb = sizeof(si);
ZeroMemory( &pi, sizeof(pi) );
char path[50]="d:\\myexe.ext";
BOOL nRet =CreateProcess(NULL,path,NULL,NULL,FALSE,NORMAL_PRIORITY_CLASS, NULL,NULL, &si,&pi);
HANDLE hProcess = pi.hProcess;//这句柄了。