Dialogfenster wird mit DoModal nicht geöffnet



  • Guten Tag

    Ich will dass Vergleichprogramm von Anton Zechner ( http://members.inode.at/anton.zechner/az/index.html -> TextCompare) an meine Bedürfnisse anpassen.
    (Verwenden weiterer Vergleichskriterien,...)

    Das Projekt wurde mit VS6 erstellt.
    Ich verwende VS2008 und arbeite mit XP

    Leider habe ich dass Problem dass ich das Öffnen-Dialogfenster nicht öffnen kann.

    Folgende Zeile in dlgcore.h liefert immer NULL:
    HRSRC hResource = ::FindResource(hInst, m_lpszTemplateName, RT_DIALOG);

    Der Ausschnitt des Bereich's:

    INT_PTR CDialog::DoModal()
    {
    	// can be constructed with a resource template or InitModalIndirect
    	ASSERT(m_lpszTemplateName != NULL || m_hDialogTemplate != NULL ||
    		m_lpDialogTemplate != NULL);// m_lpDialogTemplate==NULL & m_hDialogTemplate==NULL
    
    	// load resource as necessary
    	LPCDLGTEMPLATE lpDialogTemplate = m_lpDialogTemplate;
    	HGLOBAL hDialogTemplate = m_hDialogTemplate;
    	HINSTANCE hInst = AfxGetResourceHandle();
    	if (m_lpszTemplateName != NULL)
    	{
    		hInst = AfxFindResourceHandle(m_lpszTemplateName, RT_DIALOG);
    		HRSRC hResource = ::FindResource(hInst, m_lpszTemplateName, RT_DIALOG);// Hier wird NULL zurückgegeben
    		hDialogTemplate = LoadResource(hInst, hResource);// Hier wird NULL zurückgegeben
    	}
    	if (hDialogTemplate != NULL)
    		lpDialogTemplate = (LPCDLGTEMPLATE)LockResource(hDialogTemplate);
    
    	// return -1 in case of failure to load the dialog template resource
    	if (lpDialogTemplate == NULL)
    		return -1;
    

    Weis jemand sagen was die Ursache sein könnte dass das Laden der Dialog-Template Ressourchen fehlschlägt?


  • Mod

    Dann gint es die Ressource mit dieser ID nicht in Deiner EXE/DLL.
    Lade mal die EXE ins VisualStustio und schau nach ob idese entsprechende ID wirklich vorhanden ist.



  • Ich hab wieder einmal das Byte vor lauter Bits nicht gesehen.

    Danke für deine Hilfe.


Anmelden zum Antworten