pneumann
asked on
failed to create empty document
I have developed an application on Windows 95 (MFC 4.0).
Now I started my program on Win 3.11, but I get the
errormessage 'failed to create empty document'.
I get the message after the ProcessShellCommand(cmdInf o) call in initInstance().
I have found that I get the message because the CFrameWnd::OnCreate(lpCrea teStruct) function returns the value -1.
But I don't know why.
Now I started my program on Win 3.11, but I get the
errormessage 'failed to create empty document'.
I get the message after the ProcessShellCommand(cmdInf
I have found that I get the message because the CFrameWnd::OnCreate(lpCrea
But I don't know why.
Your program is a 32 bit program (Win95, VC++4.0) that cannot run under Win3.11. Or is there something you didn't told us?
ASKER
I use win32s on Win 3.11 !!!!
I have developed already programms with VC++ 4.0 and they
run under Win3.11 without problems.
I have developed already programms with VC++ 4.0 and they
run under Win3.11 without problems.
Please let us have a look at some code (e.g. InitInstance).
ASKER
Here the following code:
The application consist of an CFormView and some CDialogs which
are called from the menu or with buttons from the CFormView dialog resource. Is it possible that there is a connection between the error and the MAINFRAME menu configuration?
BOOL CMessungApp::InitInstance( )
{
// Standard initialization
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
CFrameWnd* pFrame = NULL;
SetRegistryKey("Messung und Sortierung");
LoadStdProfileSettings(); // Load standard INI file options (including MRU)
// Register the application's document templates. Document templates
// serve as the connection between documents, frame windows and views.
CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CMessungDoc) ,
RUNTIME_CLASS(CMainFrame), // main SDI frame window
RUNTIME_CLASS(CMessungView ));
AddDocTemplate(pDocTemplat e);
// Parse command line for standard shell commands, DDE, file open
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);
// Dispatch commands specified on the command line
if (!ProcessShellCommand(cmdI nfo))
return FALSE;
// ProcessShellCommand() return FALSE ??!!!
// after displaying "failed to create empty document"
OpenDocumentFile("messung. dat");
return TRUE;
}
The application consist of an CFormView and some CDialogs which
are called from the menu or with buttons from the CFormView dialog resource. Is it possible that there is a connection between the error and the MAINFRAME menu configuration?
BOOL CMessungApp::InitInstance(
{
// Standard initialization
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
CFrameWnd* pFrame = NULL;
SetRegistryKey("Messung und Sortierung");
LoadStdProfileSettings(); // Load standard INI file options (including MRU)
// Register the application's document templates. Document templates
// serve as the connection between documents, frame windows and views.
CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CMessungDoc)
RUNTIME_CLASS(CMainFrame),
RUNTIME_CLASS(CMessungView
AddDocTemplate(pDocTemplat
// Parse command line for standard shell commands, DDE, file open
CCommandLineInfo cmdInfo;
ParseCommandLine(cmdInfo);
// Dispatch commands specified on the command line
if (!ProcessShellCommand(cmdI
return FALSE;
// ProcessShellCommand() return FALSE ??!!!
// after displaying "failed to create empty document"
OpenDocumentFile("messung.
return TRUE;
}
Maybe your error has something to do with this line:
CFrameWnd* pFrame = NULL;
In my projects there are this lines that create the main frame window.
CMainFrame* pMainFrame = new CMainFrame;
if (!pMainFrame->LoadFrame(ID R_MAINFRAM E))
return FALSE;
m_pMainWnd = pMainFrame;
Try to create a new project with appwizzard and compare the InitInstance() with the one you have.
CFrameWnd* pFrame = NULL;
In my projects there are this lines that create the main frame window.
CMainFrame* pMainFrame = new CMainFrame;
if (!pMainFrame->LoadFrame(ID
return FALSE;
m_pMainWnd = pMainFrame;
Try to create a new project with appwizzard and compare the InitInstance() with the one you have.
ASKER
Sorry, but I tried it, and I get the same output.
But now I have found the failure !!!!!
I use a CFormView with an attached dialog, and in the dialog
there was an TextItem and I have enabled the Static edge in the
Extended Styles. This works only on win95.
Normaly a message appears that an unsupported component was found.
But in this case it does not !! ???
But now I have found the failure !!!!!
I use a CFormView with an attached dialog, and in the dialog
there was an TextItem and I have enabled the Static edge in the
Extended Styles. This works only on win95.
Normaly a message appears that an unsupported component was found.
But in this case it does not !! ???
ok that's fine. Don't forget to set the points for your question to 0 and send a mail that your question can be removed.
ok that's fine. Don't forget to set the points for your question to 0 and send a mail that your question can be removed.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.