JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.phpMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

DC nicht verfügbar?!?

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



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 28.09.2002, 17:10    Titel: DC nicht verfügbar?!? Antworten mit Zitat

Ich baue in meine neue Engine zum Test erstmal ne Text Funktion ein, dass ich später nicht immer soviel Code schreiben muss, und das alles übersichtlicher wird...in diesem Fall geht ja kein Makro oder ich finde es hier nicht so schön...

Also zu meinem Problem:

Ich starte das Programm und dann steht da:
Code:

Text||||||||||||||||||||DC ist nicht verfügbar||||||||||

Also besser gesagt, das wir trotzdem auf die PrimarySurface geschrieben, obwohl der DC ja eigentlich nicht verfügbar sei Confused

Code:

void Render(void)
{
    // Hintergrund löschen
    DDrawObjekt.Clear(0);

Text("Text");
       
    // primäre Oberfläche anzeigen
    DDrawObjekt.Flip();   
}

void Text(char* text)
{
HDC hDC;

    // DC für die Oberfläche anfordern
    if(FAILED(DDrawObjekt.GetBuffer()->GetDC(&hDC)))
    {
        Log.Log("DC ist nicht verfügbar");
    }

    // Textfarbe und Ausgabemodus setzen
    SetTextColor(hDC,RGB(255,100,20));
    SetBkMode(hDC,TRANSPARENT);

    // Text und Ellipse ausgeben
    TextOut(hDC,500,500, text,50);

    // Wichtig !!! Device Context wieder freigeben
    DDrawObjekt.GetBuffer()->ReleaseDC(hDC);


}



Das Problem ist auch, wenn ich das Log.Log() raus-kommentiere dann steht da nur noch Text|||||||||

und die Funktion Log.Log () sieht so aus
Code:
int AAS_Log::Log(char* LogMsg)
{
// in LogFile
if(LogMsg)
{
fprintf(Logfile,LogMsg);
fprintf(Logfile,"\n");
}
// und in das Ausgabefenster
    OutputDebugString(LogMsg);
    OutputDebugString("\n");

return 0;
}


Hoffe ihr könnt mir helfen ich sitze da schon 2 Tage lang dran...naja ich habe auch immer wieder Mal etwas anderes gemacht sonst wäre ich jetzt am Boden zerstört... Sad
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dietmar Ferstl
Mini JLI'ler



Anmeldedatum: 19.07.2002
Beiträge: 47
Wohnort: Regensburg/Bayern
Medaillen: Keine

BeitragVerfasst am: 28.09.2002, 17:25    Titel: Antworten mit Zitat

Schon mal ne Fehleranalyse gemacht ?
Wenn du das alles weglässt, funktioniert's dann auch :

if(FAILED(DDrawObjekt.GetBuffer()->GetDC(&hDC)))
{
Log.Log("DC ist nicht verfügbar");
}


Dietmar
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 28.09.2002, 18:05    Titel: Antworten mit Zitat

Wenn ich das DC nicht hole funzt es überhaupt nicht, schon Mal darüber nachgedacht... RazzWink
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 19.10.2002, 17:50    Titel: Antworten mit Zitat

Ich habe immer noch das Problem...hoffe ihr könnt mir helfen, wenn ihr das komplette Projekt habt...

http://mitglied.lycos.de/onlineboard/2D_ENGINE.rar
_________________
The source of all power is in its destiny...
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