我建了一个主窗口A,在 WINAPI WinMain中我会检测一个文本是否存在,不存在则不显示A窗口,而是弹出另一个窗口B进行生成。但是A,B窗口都有这样的问题,如果双击打开exe程序,弹出A窗口后,选择其他的运行程序,然后重新双击打开exe程序,焦点不会回到A窗口。同样如果文本不存在,弹出B窗口后,选择其他的运行程序,然后重新双击打开exe程序,焦点不会回到B窗口。后来查了下资料,大概代码如下:在WinMain中创建了互斥体
HWND hTempWnd;
hRunMutex = NULL;
if (!TCCreateMutex(&hRunMutex, MUTEX_NAME_RUN))
{
hTempWnd = FindWindow(NULL, APP_NAME); 
PostMessage(hTempWnd, APPMSG_SHELL_OPEN, 0, 0);
goto ret;
}
A窗口的问题解决了!但是B窗口我是这样在WinMain中创建的:
if (!IsExistFile())
{
MyCreatFile(MainDlg);
}void MyCreatFile(HWND hwndDlg)
{
DWORD result;
result = DialogBoxW (hInst, MAKEINTRESOURCEW (IDD_DIALOG_CREATEFILE), hwndDlg,
(DLGPROC) MyCreatFileDlgProc);
}由于MyCreatFileDlgProc中lpWindowName不知道怎么设置,再想使用FindWindow去显示窗口就不行了。求各位大牛帮助! winapiexe