Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

$splash$

Treue Seele

  • »$splash$« ist der Autor dieses Themas

Beiträge: 172

Wohnort: BW

Beruf: Schüler

  • Private Nachricht senden

1

18.07.2005, 13:09

Screenshot

kennt jemand von euch den befehl in c++ um einen Screenshot zu erstellen und den dan z.B.: auf C:\bilder abspeichert ???

Steven77

Alter Hase

Beiträge: 515

Wohnort: Münster - Gievenbeach

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

18.07.2005, 13:19

Ich glaube kaum, dass es da eine vom Betriebssystem bzw. von den Standardbibliotheken zur Verfügung gestellte Funktion gibt. Ich kann mich allerdings täuschen, aber ich glaube's - wie gesagt - nicht.
Also selber proggen ;) Sollte doch wohl kein Problem sein?

3

18.07.2005, 14:21

david copiert dazu , in directX, backbuffer und speichert in als bmp ab. 8)

4

18.07.2005, 15:55

GetDC(NULL);
ist ein guter Anfang

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

5

18.07.2005, 20:37

HÄ???

Was macht den deine Applikation. Ist das ein Fenster? eine DirectX Anwendung?

Eine bereitstellung vom OS gibt es nicht, wäre ja auch völliger Schwachsinn.

Wenn ein Fenster dann GetDC. Wenn eine DXAPP kann ich dir nen code posten.

6

18.07.2005, 21:43

GetDc(null) = ganzer bildschirm

koschka

Community-Fossil

Beiträge: 2 862

Wohnort: Dresden

Beruf: Student

  • Private Nachricht senden

7

18.07.2005, 21:52

... auch bei DirectX??? :o :ohoh:

8

19.07.2005, 10:58

JA:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
bool screenshotPGM(const char *fname, uint w, uint h){
    HDC     hdc;
    FILE        *stream;
    COLORREF    asd;
    stream = fopen(fname, "wt");
    if (!stream)return false;
    fprintf(stream, "P3\nw h\n255\n");
    hdc = GetDC(0);
       if (!hdc){
            fclose(stream);
            return false;
       }
    for(uint y = 0; y<h; y++){
        for(uint x = 0; x<w; x++){
            asd = GetPixel(hdc, x, y);
            fprintf(stream, "%i %i %i  ", (asd&0x00ff0000)>>16, (asd&0x0000ff00)>>8, (asd&0x000000ff));
        }
        fprintf(stream, "\n");
    }
    fclose(stream);
    ReleaseDC(0, hdc);
        return true;
}


(sry wegen der formatierung....die ist beim copy-paste etwas kaputt gegangen)

Werbeanzeige