DirectXで遊ぼう 上のページ

DirectXSetup
  1. 概要

    DirectXのセットアップを行います。
    引き渡すパラメータによって任意のドライバのみをセットアップする事が可能ですが、 通常は全てのドライバをセットアップすることが通例になっています。

    以下の内容について解説します。



  2. サンプルプログラム
    int r = DirectXSetup(hwnd,".",DSETUP_DIRECTX);
    switch(r){
    case 0:
        //
        // セットアップ成功
        //
        break;
    case 1:
        //
        // セットアップ成功(要OSリブート)
        //
        break;
    default:
        //
        // DirectXSetup失敗(r:エラーコード)
        //
        break;
    }
    
    1.概要で示したフォルダ構成でなら、上のようなプログラムで大体の事は済んでしまいます。

  3. DirectXSetupに渡すパラメータ

    サンプルプログラムでは、DirectXSetupには以下のようなパラメータを与えています。

    • HWND hwnd;
      セットアップダイアログを表示する親ウィンドゥハンドルです。

    • LPSTR root_path;
      directxフォルダが存在するパスを指定します。
      通常は、"."だけで十分だと思います。

    • DWORD dwFlags;
      セットアップを行うドライバを示します。
      サンプルでは、DSETUP_DIRECTX(全てのドライバ)となっています。

    dwFlagsの値を変更してやれば任意のドライバのみをセットアップする事は可能なのですが、 よっぽど特殊なケースでも無い限りほとんど必要は無いでしょう。

  4. リブートについて

    DirectXSetupの返値が1である場合、OSをリブートさせてやる必要があります。
    通常は、以下のようにリブートを行うという事をユーザーに伝えてやり、ExitWindowsEx関数を呼べばいいでしょう。
    if(MessageBox(hwnd,"Windowsを再起動させる必要があります。\x0d\x0a再起動を行いますか。",
        "再起動",MB_ICONINFORMATION|MB_YESNO) == IDYES){
    
        // Windowsを再起動させる
        ExitWindowsEx(EWX_REBOOT,0);
    }
    




上のページ