Re: Show a login dialog box before the main application
Thanks Ali,
It worked after I followed your steps.
How should
#1I restrict the user from entering the wrong user name and in order to
do that I placed this code in InitInstance but if you click OK 3 times
without enetring the user name and pwd ,the main application window
will pop up.
How shoudl I restrict the user to enter correct user name and pwd and
after validation show the main window
#2After enetring the username and pwd ,The login dialog box disappears
and messageBox appears ,After i clcik OK the login dialog box appears
again.
How shoudl I show both the message box and the dialog box ?
code for the above 2 steps
in CWinApp() :: InitInstance ()
{
CLoginDialog login;
login.DoModal();
if ((login.m_strUserName != "abc" ) || (login.m_strPassword != "abc"
))
{
AfxMessageBox("Wrong UserName/Pwd-Enter Again ",0,0);
login.DoModal();
//return FALSE;
}
if(login.DoModal()!=IDOK)
{
return FALSE;
}
....
....
// InitCommonControlsEx() is required on Windows XP if an application
// manifest specifies use of ComCtl32.dll version 6 or later to enable
// visual styles. Otherwise, any window creation will fail.
INITCOMMONCONTROLSEX InitCtrls;
InitCtrls.dwSize = sizeof(InitCtrls);
// Set this to include all the common control classes you want to use
// in your application.
InitCtrls.dwICC = ICC_WIN95_CLASSES;
InitCommonControlsEx(&InitCtrls);
CWinApp::InitInstance();
...
.....
}
thanks
Kavitha
AliR wrote:
Maybe something is happening in the InitApplication method.
I personally put splash screens and login screen in InitInstance and it
comes up before anything else.
BOOL CMyApp::InitInstance()
{
CSplashDlg Splash;
Splash.Create(CSplashDlg::IDD,NULL);
Splash.ShowWindow(SW_SHOW);
InitCommonControls();
CWinApp::InitInstance();
CLoginDialog Login;
if (Login.DoModal() != IDOK)
{
return FALSE;
}
.....
}
AliR.
<kavitha_tongadi@hotmail.com> wrote in message
news:1149111976.487404.4150@h76g2000cwa.googlegroups.com...
Ali
Tried that too ,but could not show up the dialog before the main
window.
What should be done.
There are 3 windows actually
1. 3rd party diaolg box
2.My dialog box
3. The main window
It will be okay even if I could show the my dialog box first and then
the other 2 windows.
Any guesses please
Kavitha
AliR wrote:
Why don't you do your login dialog before you initialize the third party
control? (put your login code higher up in InitInstance)
AliR.
<kavitha_tongadi@hotmail.com> wrote in message
news:1149110839.439279.44240@y43g2000cwc.googlegroups.com...
Hi I am using 3rd party SomeABC tools.
I want to show a login dialog box before the main SDI app
(CFormView).
After I placed the code in initInstance and called before creating the
Template
The third part diaolg box is getting popped up and over that I am able
to see a part of my dialog box.
How to hide the 3rd party dialog box and show my dialog box and then
show the main application window .
Please guide.
kavitha_tongadi@hotmail.com wrote:
Hi
I want to show a login dialog box before the main SDI app
(CFormView).
I dont even the see the dialog box and the main app runs in the
background
Now here is the code ,Where I am missing ?Can anyone point the
error?
CMyWinApp ::InitInstance()
{
..
..
..
// The one and only window has been initialized, so show and update
it
m_pMainWnd->ShowWindow(SW_HIDE);
m_pMainWnd->UpdateWindow();
//int i = AfxMessageBox(_TEXT("HEllo"),MB_OK,0);
CLoginDlg login;
if(login.DoModal() ==IDOK )
{
m_pMainWnd->ShowWindow(SW_SHOWMAXIMIZED);
m_pMainWnd->UpdateWindow();
}
// call DragAcceptFiles only if there's a suffix
// In an SDI app, this should occur after ProcessShellCommand
return TRUE;
}
Kavitha