Announcement

Collapse
No announcement yet.

Datei öffnen bei Programmstart/Kommandozeile

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Datei öffnen bei Programmstart/Kommandozeile

    Ich möchte dass - sofern eine Datei mit dem Programm verküpft wurde /öffnen mit... verwendet wurde - die Datei natürlich geöffnet wird
    Die Dokument-Klasse enthält ja dann den Dateinamen.
    Dazu versuchte ich folgendes:
    Code:
    BOOL CEMFBetrachter_MFCDoc::OnNewDocument()
    {
    	if (!CDocument::OnNewDocument())
    		return FALSE;
    	
    HENHMETAFILE H;
    	H=GetEnhMetaFile(CDocument::GetPathName());
    	
    	(((CMainFrame *)AfxGetMainWnd())->hMFile)=H;
    
    	ENHMETAHEADER Metaheader;
    	
    
    	GetEnhMetaFileHeader(H, sizeof(ENHMETAHEADER), &Metaheader);
    	(((CMainFrame *)AfxGetMainWnd())->MFileHeader)=Metaheader;
    	
    	(((CMainFrame *)AfxGetMainWnd())->viertelgr)=true;
    	(((CMainFrame *)AfxGetMainWnd())->Originalgr)=false;
    	(((CMainFrame *)AfxGetMainWnd())->Fenstergr)=false;
    Der Handle H ist eine globale Variable in der MainFrame-Klasse. Doch der Code verursacht eine Zugriffsverletzung.

    Ein anderer Versuch ging über pDoc->GetDocument() in der View-Klasse, doch dort fand ich keine Methode welche beim Programmstart ausgeführt wird (es ist ein CView ohne Spezialisierung, daher auch kein automatisches Öffnen durch die Doc-Klasse). Drucken funktioniert lustigerweise automatisch (es handelt sich um Bilder).

    Gibt es einen anderen Weg?
Working...
X