CreateProcess调用一个bat,
我想取道这个bat的句柄(HWND类型的),怎么取?
我想取道这个bat的句柄(HWND类型的),怎么取?
解决方案 »
- sp6 补丁包都适用用VC的哪些版本啊?
- AlphaBlend与TransparentBlt能组合使用
- 如何整理MFC程序源文件到一个单独的目录下面
- 请教高手:为什么在无模式对话中定义视图指针会出那么多的问题!
- 字符串为”\Device\Packet_NdisWanIpx???鶧矻葀矹???瀄矺“ ,可是其中的乱码部分“???鶧矻葀矹???瀄矺”怎样去掉????
- 高分求解:可否通过某一窗口类的名称(WNDCLASS::lpszClassName)得到相应的窗口类结构?
- 如何在win98SE对等网中自动传播文件(不是高手不要来浪费时间)
- 烟台东方电子大裁员,后来者慎重!!!
- 请教高手MCI应用问题!谢谢
- 求多线程相关教材
- 在使用CARRAY.add()成员函数时,为什么加的数据越多,程序运行的越慢?
- 一个CComboBox控件问题
返回bat的句柄?窗口句柄?呵呵,Bat就是控制台命令的集合,它有窗口吗?呵呵,除非bat文件中调用了或者启动了其他有窗口的进程!
HWND——》 Handle to a window.
但是我又不想在第6个参数用CREATE_NO_WINDOW
BOOL CreateProcess(
LPCTSTR lpApplicationName, // name of executable module
LPTSTR lpCommandLine, // command line string
LPSECURITY_ATTRIBUTES lpProcessAttributes, // SD
LPSECURITY_ATTRIBUTES lpThreadAttributes, // SD
BOOL bInheritHandles, // handle inheritance option
DWORD dwCreationFlags, // creation flags
LPVOID lpEnvironment, // new environment block
LPCTSTR lpCurrentDirectory, // current directory name
LPSTARTUPINFO lpStartupInfo, // startup information
LPPROCESS_INFORMATION lpProcessInformation // process information
);那么还有其他方法让那个cmd窗口隐藏吗?
PROCESS_INFORMATION pi;
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_HIDE;
si.cb = sizeof(si);
ZeroMemory(&si, sizeof(si));
CreateProcess(sBatPath, NULL,NULL,NULL,FALSE,CREATE_NO_WINDOW,NULL,NULL,&si,&pi);
WaitForSingleObject(pi.hProcess, INFINITE);
好像不能同时用,有了前者,就无法隐藏。所以我想用ShowWindow的方法来隐藏,这样要HWND
好像
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_HIDE;都没有用。就是隐藏不了?
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_HIDE;
好像就是不行吗!不管第6个参数怎么设置。
关键是CREATE_NO_WINDOW就可以。没CREATE_NO_WINDOW就不可以。
si.wShowWindow = SW_HIDE;
si.cb = sizeof(si);
ZeroMemory(&si, sizeof(si));
============>
ZeroMemory( &si, sizeof(si) );
si.dwFlags = STARTF_USESHOWWINDOW;
si.wShowWindow = SW_HIDE;
si.cb = sizeof(si);可以!!!
谢谢。结贴