• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1817
  • Last Modified:

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(cmdInfo) call in initInstance().

I have found that I get the message because the CFrameWnd::OnCreate(lpCreateStruct) function returns the value -1.
But I don't know why.



0
pneumann
Asked:
pneumann
  • 5
  • 3
1 Solution
 
TKIICommented:
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?
0
 
pneumannAuthor Commented:
I use win32s on Win 3.11 !!!!
I have developed already programms with VC++ 4.0 and they
run under Win3.11 without problems.

0
 
TKIICommented:
Please let us have a look at some code (e.g. InitInstance).
0
Cloud Class® Course: C++ 11 Fundamentals

This course will introduce you to C++ 11 and teach you about syntax fundamentals.

 
pneumannAuthor Commented:
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(pDocTemplate);

      // Parse command line for standard shell commands, DDE, file open
      CCommandLineInfo cmdInfo;
      
      ParseCommandLine(cmdInfo);

      // Dispatch commands specified on the command line
         if (!ProcessShellCommand(cmdInfo))
            return FALSE;
       
        // ProcessShellCommand() return FALSE ??!!!
        // after displaying "failed to create empty document"        

      OpenDocumentFile("messung.dat");
      
      return TRUE;
}

0
 
TKIICommented:
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(IDR_MAINFRAME))
     return FALSE;
m_pMainWnd = pMainFrame;

Try to create a new project with appwizzard and compare the InitInstance() with the one you have.
0
 
pneumannAuthor Commented:
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 !! ???

0
 
TKIICommented:
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.
0
 
TKIICommented:
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.
0
 
gelbertCommented:
Usually this message is displayed when something went wrong in CSingleDocTemplate constructor like it can not find menu or create toolbar in OnCreate. So check if IDs in your resource file match IDs in the rest of the code.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Cloud Class® Course: Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.

  • 5
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now