Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Fair_Lord Mini JLI'ler
Anmeldedatum: 25.04.2004 Beiträge: 36
Medaillen: Keine
|
Verfasst am: 26.01.2005, 15:57 Titel: Assert?? |
|
|
dlg.h:
Code: |
class CDlg : public CDialog
{
public:
CDlg(CWnd* pParent = NULL);
protected:
HICON m_hIcon;
virtual BOOL OnInitDialog();
}; |
dlg.cpp
Code: |
#include <afxwin.h>
#include "prog.h"
#include "Dlg.h"
CDlg::CDlg(CWnd* pParent)
{
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}
BOOL CDlg::OnInitDialog()
{
CDialog::OnInitDialog();
SetIcon(m_hIcon, TRUE);
SetIcon(m_hIcon, FALSE);
return TRUE;
}
|
prog.h
Code: |
class CApp : public CWinApp
{
public:
virtual BOOL InitInstance();
};
|
prog.cpp
Code: |
#include <afxwin.h>
#include "prog.h"
#include "Dlg.h"
CApp theApp;
BOOL CApp::InitInstance()
{
CDlg dlg;
m_pMainWnd = &dlg;
int nResponse = dlg.DoModal();
return FALSE;
}
|
resource.h:
Code: |
#define IDD_DIALOGFELD 101
#define IDR_MAINFRAME 200
|
Das gibt ne fehlermeldung:
Screenshot
Waran liegt's??
hab schon alles zigmal überprüft!
mfg
Fair_Lord |
|
Nach oben |
|
|
Patrick Dark JLI Master
Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
|
Nach oben |
|
|
Fair_Lord Mini JLI'ler
Anmeldedatum: 25.04.2004 Beiträge: 36
Medaillen: Keine
|
Verfasst am: 26.01.2005, 16:02 Titel: |
|
|
das was ich gepostet habe ist alles. gibt keine zeile 494!! |
|
Nach oben |
|
|
Patrick Dark JLI Master
Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
|
Nach oben |
|
|
Fair_Lord Mini JLI'ler
Anmeldedatum: 25.04.2004 Beiträge: 36
Medaillen: Keine
|
Verfasst am: 26.01.2005, 16:06 Titel: |
|
|
was? |
|
Nach oben |
|
|
C++Builder Senior JLI'ler
Anmeldedatum: 04.10.2003 Beiträge: 235
Medaillen: Keine
|
Verfasst am: 26.01.2005, 16:17 Titel: |
|
|
du sollst deinen Code Stück für Stück auskommentieren damit du sehen kannst in welchem Teil der Fehlerauftritt |
|
Nach oben |
|
|
Fair_Lord Mini JLI'ler
Anmeldedatum: 25.04.2004 Beiträge: 36
Medaillen: Keine
|
Verfasst am: 26.01.2005, 16:18 Titel: |
|
|
meckert da nicht der compiler? |
|
Nach oben |
|
|
Patrick Dark JLI Master
Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
Verfasst am: 26.01.2005, 16:20 Titel: |
|
|
Fair_Lord hat Folgendes geschrieben: | meckert da nicht der compiler? |
Wenn Du mist baust, ja, aber sonst? Nö, ist eine sehr bewährte Debugmethode.
Oder geh mit dem Debugger drüber und such den Fehler _________________ 'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ] |
|
Nach oben |
|
|
Fair_Lord Mini JLI'ler
Anmeldedatum: 25.04.2004 Beiträge: 36
Medaillen: Keine
|
Verfasst am: 26.01.2005, 16:36 Titel: |
|
|
es ist diese zeile:
Code: | int nResponse = dlg.DoModal(); |
ich kann sie weder streichen, noch ist daran etwas falsch
verweis auf das:
Code: | int CDialog::DoModal()
{
// can be constructed with a resource template or InitModalIndirect
ASSERT(m_lpszTemplateName != NULL || m_hDialogTemplate != NULL ||
m_lpDialogTemplate != 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);
hDialogTemplate = LoadResource(hInst, hResource);
}
if (hDialogTemplate != NULL)
lpDialogTemplate = (LPCDLGTEMPLATE)LockResource(hDialogTemplate);
// return -1 in case of failure to load the dialog template resource
if (lpDialogTemplate == NULL)
return -1;
// disable parent (before creating dialog)
HWND hWndParent = PreModal();
AfxUnhookWindowCreate();
BOOL bEnableParent = FALSE;
if (hWndParent != NULL && ::IsWindowEnabled(hWndParent))
{
::EnableWindow(hWndParent, FALSE);
bEnableParent = TRUE;
}
TRY
{
// create modeless dialog
AfxHookWindowCreate(this);
if (CreateDlgIndirect(lpDialogTemplate,
CWnd::FromHandle(hWndParent), hInst))
{
if (m_nFlags & WF_CONTINUEMODAL)
{
// enter modal loop
DWORD dwFlags = MLF_SHOWONIDLE;
if (GetStyle() & DS_NOIDLEMSG)
dwFlags |= MLF_NOIDLEMSG;
VERIFY(RunModalLoop(dwFlags) == m_nModalResult);
}
// hide the window before enabling the parent, etc.
if (m_hWnd != NULL)
SetWindowPos(NULL, 0, 0, 0, 0, SWP_HIDEWINDOW|
SWP_NOSIZE|SWP_NOMOVE|SWP_NOACTIVATE|SWP_NOZORDER);
}
}
CATCH_ALL(e)
{
DELETE_EXCEPTION(e);
m_nModalResult = -1;
}
END_CATCH_ALL
if (bEnableParent)
::EnableWindow(hWndParent, TRUE);
if (hWndParent != NULL && ::GetActiveWindow() == m_hWnd)
::SetActiveWindow(hWndParent);
// destroy modal window
DestroyWindow();
PostModal();
// unlock/free resources as necessary
if (m_lpszTemplateName != NULL || m_hDialogTemplate != NULL)
UnlockResource(hDialogTemplate);
if (m_lpszTemplateName != NULL)
FreeResource(hDialogTemplate);
return m_nModalResult;
} |
|
|
Nach oben |
|
|
Cyianor Super JLI'ler
Anmeldedatum: 23.12.2002 Beiträge: 452
Medaillen: Keine
|
Verfasst am: 26.01.2005, 18:04 Titel: |
|
|
Wenn da ein NULL Pointer erscheint könnte es sein, dass noch kein Speicher für die Variable dlg allokiert wurde und sie deshalb auch kein gültiger Pointer ist. Überprüf das mal! |
|
Nach oben |
|
|
Fair_Lord Mini JLI'ler
Anmeldedatum: 25.04.2004 Beiträge: 36
Medaillen: Keine
|
Verfasst am: 27.01.2005, 16:03 Titel: |
|
|
Code: |
BOOL CApp::InitInstance()
{
CDlg dlg; // {CDlg hWnd=0xcccccccc}
m_pMainWnd = &dlg; // {CDlg hWnd=0x00000000}
int nResponse = dlg.DoModal();
return FALSE;
} |
Warum das? |
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 27.01.2005, 16:07 Titel: |
|
|
weil dlg nur ne lokale variable der funktion InitInstance() ist und daher nicht sicher gestellt ist was mit der variable passiert wenn die funktion verlassen wird. _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
Fair_Lord Mini JLI'ler
Anmeldedatum: 25.04.2004 Beiträge: 36
Medaillen: Keine
|
Verfasst am: 28.01.2005, 13:49 Titel: |
|
|
aha
und wie kann ich jetzt machen dass es geht? |
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 28.01.2005, 13:52 Titel: |
|
|
CDlg dlg entweder global machen oder aber das in eine klasse legen CApp is doch deine Klasse oder ? Dann packs da rein, dann gehts. _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
|