Resourcen Auslesen.



  • Hallo.
    Ich benutze den VC6.
    Ich habe schon eine rc. gemacht wo ich die bmp datei eingebunden habe.
    IDB_BITMAP1 heißt sie in der rc datei.Normal heißt sie Bitmap.bmp (Ich hab sie so genant.) Ich versuche die Bitmap in einer Dos Konsole zu zeigen.
    Ich weiß bloß nicht wie. Könnt ihr mir helfen?
    Danke im Voraus.
    Gruß, Siegfried75 🙂 .



  • #include <windows.h>
    #include <stdio.h>
    
    #pragma comment(lib,"gdi32.lib")
    
    int LoadBmp2Console(char *szBitmap, int PosX, int PosY)
    {
      HWND hwnd;
      HBITMAP hBitmap = (HBITMAP) LoadImage(NULL,szBitmap, IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
      if (!hBitmap) return 1;
    
      BITMAP bmp;
      GetObject(hBitmap,sizeof(bmp),&bmp);
    
      HDC hDC = GetDC(hwnd);
      if (!hDC) return 3;
    
      HDC hBitmapDC = CreateCompatibleDC(hDC);
      if (!hBitmapDC) return 4;
    
      SelectObject(hBitmapDC,hBitmap);
      BitBlt(hDC,PosX,PosY,bmp.bmHeight,bmp.bmWidth,hBitmapDC,0,0,SRCCOPY);
    
      DeleteObject(hBitmap);
      ReleaseDC(hwnd,hBitmapDC);
      ReleaseDC(hwnd,hDC);
      return 0;
    }
    
    int main()
    {
      int Status = LoadBmp2Console("DeinBitmap.bmp",10,10);
    
      if(Status!=0)
        printf("Fehler: %i",Status);
    
      getchar();
      return 0;
    }
    


  • Funktioniert nicht.
    Also er ließt sie nicht aus der rc. bzw ese datei sondern die bitmap muss im gleichen verzeichnis sein wie die exe.
    Gruß, Siegfried75.



  • Der Code benötigt keine Ressource. Er liest das Bitmap direkt ein, das sich im Ordner der exe befindet. Eine andere Lösung habe ich nicht da.



  • ja, den Code habe ich auch selber fällt mir gleich ein ich möchte sie aus der rc. datei einlesen steht oben auch noch.
    Gruß, Siegfried75.


Anmelden zum Antworten