2

私は Windows プログラミングの初心者で、Forger の Win32 API プログラミング チュートリアルに従っています。ウィンドウ内に画像を描画しようとしています。

同様の問題を調べたところ、このコードはビットマップのロードに適しているようです。

HBITMAP testImage == NULL;
case WM_CREATE:
    testImage = (HBITMAP)LoadImage(NULL, L"C:\\ScreenSnip.bmp", IMAGE_BITMAP, 498, 304, LR_LOADFROMFILE);
    if(testImage == NULL) {
        MessageBox(NULL, L"NO IMAGE LOADED!", L"Error!",  MB_ICONEXCLAMATION | MB_OK);
    }
break;

上記の場所に ScreenSnip.bmp という画像があり、そのサイズは 498*304 です。ただし、LoadImage は機能せず、testImage の値は常に null です。

LoadBitmap() を使用して画像をリソースとしてロードしようとしましたが、それが機能するため、残りのコードを含めていません。上記の LoadImage() が問題を引き起こしているようですが、理由がわかりません。

誰にもアイデアはありますか?Windows 7 64ビットでVC ++を使用してこれを実行しています。

4

1 に答える 1

-1

L"C:.." で wide を使用 testImage = (HBITMAP)LoadImage(NULL, L"C:\\ScreenSnip.bmp", IMAGE_BITMAP, 498, 304, LR_LOADFROMFILE); するので、LoadImageW を使用する必要があります。

于 2013-04-04T15:04:10.097 に答える