スクリーンセーバー作成講座


[コメントツリー表示を見る] [発言時刻順表示を見る]

Posted by こーちん on 2000/09/21 03:09:55

    今、スクリーンセーバーを作っているんですが、
    ちょっと報告したい事がありましたので、書きます。

    スクリーンセーバーのアイコンと設定画面を作るの所で、

    BOOL WINAPI RegisterDialogClasses(HANDLE hInst)
    {
    PROC lpDialogProc;

    lpDialogProc = MakeProcInstance((FARPROC)DConfig, hMainInstance);
    DialogBox(hInst, MAKEINTRESOURCE(IDD_DIALOG), 0, lpDialogProc);
    FreeProcInstance(lpDialogProc);

    return TRUE;
    }

    ってありますよね。

    このままだとビルドした時にエラーが出ました。
    (一応6.0を使ってるんですが)

    調べてみたら、
    どうやら MakeProcInstance 関数と
    FreeProcInstance 関数は使わない方が良いらしいです。

    DialogBox((HINSTANCE)hInst, MAKEINTRESOURCE(IDD_DIALOG), 0, DConfig);
    と書いてみると上手く動きました。

    それから、oldbmp = SelectObject(memdc, bitmap);の所でも
    エラーが出たので、SelectObject(memdc, bitmap);とし、
    SelectObject(memdc, oldbmp);を消しました。

    するとちゃんと動くようになりました。


記事スレッド一覧