JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=22ef9864a7aad95dced799b9591b827bMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Debug Assertion Failed

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Lokus
Mini JLI'ler


Alter: 37
Anmeldedatum: 10.01.2005
Beiträge: 30

Medaillen: Keine

BeitragVerfasst am: 07.05.2005, 11:55    Titel: Debug Assertion Failed Antworten mit Zitat

[cpp]
void CDXShow::Init()
{
CoInitialize(NULL);

CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC,
IID_IGraphBuilder, (void **)&lpGraphBuilder);

lpGraphBuilder->QueryInterface(IID_IMediaControl, (void **)&lpMediaControl);
lpGraphBuilder->QueryInterface(IID_IMediaEvent, (void **) &lpMediaEvent);


}

void CDXShow::AddFile(string File)
{
WCHAR wstrFileName[MAX_PATH];
MultiByteToWideChar(CP_ACP, 0, File.c_str(), -1, wstrFileName, MAX_PATH);

lpGraphBuilder->RenderFile(wstrFileName, NULL);
}

void CDXShow::PlayFile()
{
lpMediaControl->Run();
}

CDXShow::~CDXShow()
{
if(lpMediaControl)
{
lpMediaControl->Stop();
lpMediaControl->Release();
lpMediaControl = NULL;
}
if(lpMediaEvent)
{
lpMediaEvent->Release();
lpMediaEvent = NULL;
}

if(lpGraphBuilder)
{
lpGraphBuilder->Release();
lpGraphBuilder = NULL;
}

CoUninitialize();
}

CDXShow::CDXShow()
{
lpGraphBuilder = NULL;
lpMediaControl = NULL;
lpMediaEvent = NULL;
}[/cpp]

Hi Leutz bei diesem Quellcode, der in einer DLL steckt, habe ich so ein Problem immer wenn ich Funktion aus dieser Class aus meinem Hauptprogramm raus aufrufe, erhalte ich Fehler nach dem Motto "Debug Assertion Failed"! Könntet ihr mal den Quelltext durchschauen und gucken ob meinetwegen beim Konstruktor oder Destruktor Fehler sind!?
Denn wenn ich diese Fehler "ignoriere" dann Funktioniert diese Anwendung einwandtfrei, beim Beenden aber wiederum kommt wieder so ein Fehler!
Vielen Dank und beste Grüße
Lokus


PS: Es steckt auch noch DXAudio (wie im Buch drinn) in der DLL. Da ich dies aber vorher im Hauptprogramm hatte und es da funzte habe ich mir gedacht muss es an DXShow liegen, das ich mir irgendwie selber erschlossen habe!


Zuletzt bearbeitet von Lokus am 08.05.2005, 12:07, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Lokus
Mini JLI'ler


Alter: 37
Anmeldedatum: 10.01.2005
Beiträge: 30

Medaillen: Keine

BeitragVerfasst am: 07.05.2005, 18:25    Titel: Näheres Antworten mit Zitat

So ich hab ein bisschen gedebuggt und festgestellt, dass das Problem bei

CPP:
void CDXShow::AddFile(string File)
{
   WCHAR wstrFileName[MAX_PATH];
   MultiByteToWideChar(CP_ACP, 0, File.c_str(), -1, wstrFileName, MAX_PATH);

   if(FAILED(lpGraphBuilder->RenderFile(wstrFileName, NULL)))
   {
      MessageBox(NULL, "Datei konnte nicht gerendert werden!", "Fehler", MB_OK);
   }
}


auftritt. Und zwar genau dann wenn das Programm nach der Methode "RenderFile" versucht den String zu zerstören...

Vielleicht hilft das ja weiter (also mir hats nicht geholfen Rolling Eyes )
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum