DirectX 9.0 ÀÇ ¼Ò°³ DirectX SDK ÀÇ »ç¿ë¹ý C ¶Ç´Â C++ ¿¡ ÀÇÇÑ DirectX ÇÁ·Î±×·¡¹Ö ¹öÁ¯ üũ   [¸ñÂ÷¿­¶÷] [ÁÖ¼Òº¹»ç] [½½·Ôºñ¿ì±â]
¹öÀü üũ
 
Microsoft DirectX 9.0

¹öÀü üũ


¾ÖÇø®ÄÉÀ̼ǿ¡¼­´Â, ½Ã½ºÅÛÀ¸·Î ÇöÀç ÀÌ¿ë °¡´ÉÇÑ Microsoft® DirectX® ÀÇ ¹öÀü Á¤º¸°¡ ÇÊ¿äÇÏ°Ô µÇ´Â °æ¿ì°¡ ÀÖ´Ù. ¿¹¸¦ µé¾î, ½Ã½ºÅÛ¿¡ ³°Àº ¹öÀüÀÇ DirectX °¡ Á¸ÀçÇÏ´Â °æ¿ì, ¾ÖÇø®ÄÉÀ̼ÇÀº ±× ¹öÀü¿¡ ±â´ÉÀÇ ¹üÀ§¸¦ ¸ÂÃß´ÂÁö, ÃÖ½ÅÀÇ ¹öÀüÀ» ÀνºÅç ÇÒ Çʿ䰡 »ý±â´Â ÀÏÀÌ ÀÖ´Ù.

DirectX 9.0 ¿¡¼­´Â, ´ÙÀ½ÀÇ ¿ÀÆÛ·¹ÀÌÆÃ(operating)¡¤½Ã½ºÅÛÀ» Áö¿ø Çϰí ÀÖ´Ù. Ç¥´Â, °¢ ¿ÀÆÛ·¹ÀÌÆÃ(operating)¡¤½Ã½ºÅÛ¿¡ ºÎ¼ÓµÇ´Â DirectX ÀÇ ¹öÀüÀ» ³ªÅ¸³»°í ÀÖ´Ù.

operating systemDirectX ÀÇ ¹öÀü
Microsoft Windows® 98 GoldDirectX 5.2
Windows 98 SEDirectX 6.1a
Windows 2000DirectX 7.0
Windows Millennium Edition (Windows Me)DirectX 7.1
Windows XPDirectX 8.1

DirectX ÀÇ ¹öÀü ¹øÈ£¸¦ Á÷Á¢ ¾ò¾î¿À´Â ¹æ¹ýÀº ¾ø´Ù. ´Ù¸¸, °¢ ¹öÀüÀº, °íÀ¯ÀÇ °³Ã¼ ¹× ÀÎÅÍÆäÀ̽º¸¦ Æ÷ÇÔÇϰí ÀÖ´Ù. DirectX ÀÇ ¸ðµç ¹öÀüÀº, ÀÌÀüÀÇ ¸ðµç ¹öÀüÀ» Áö¿ø Çϰí ÀÖ´Ù. ÀÌ ¶§¹®¿¡, ƯÁ¤ÀÇ ¹öÀü °íÀ¯ÀÇ ÀÎÅÍÆäÀ̽º ¹× °³Ã¼´Â, ±×°ÍµéÀ» µµÀÔÇÑ ¹öÀü°ú ¸ðµç ÈÄ¼Ó ¹öÀüÀ¸·Î Áö¿ø µÈ´Ù. µû¶ó¼­, ÇÊ¿äÇÑ ¹öÀüÀÌ ÀÌ¿ë °¡´ÉÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÏ·Á¸é , ±× ¹öÀü °íÀ¯ÀÇ °³Ã¼ ¶Ç´Â ÀÎÅÍÆäÀ̽º°¡ Á¸ÀçÇÒÁö ¾î¶³Áö¸¦ Å×½ºÆ® ÇÑ´Ù. ±×·¯ÇÑ °³Ã¼ ¶Ç´Â ÀÎÅÍÆäÀ̽º°¡ Á¸ÀçÇÏ´Â ÇÑ, ±×°Íº¸´Ù »õ·Î¿î ¹öÀüÀÇ DirectX ¸¦ »ç¿ëÇϰí À־, ¾ÖÇø®ÄÉÀ̼ÇÀº Á¤»óÀûÀ¸·Î ±â´ÉÇÑ´Ù.

¿¹¸¦ µé¾î, DirectX 6.1 ÀÇ Áö¿øÀÌ ÇÊ¿äÇÏ´Ù¶ó°í ÇÑ´Ù. Microsoft DirectMusic® °³Ã¼ (CLSID_DirectMusic)´Â, DirectX 6.1 À¸·ÎºÎÅÍ µµÀÔµÈ °³Ã¼ÀÌ´Ù. DirectMusic °³Ã¼ÀÇ Á¸Àç´Â,CoCreateInstance ¸¦ »ç¿ëÇØ ÀÌ °³Ã¼ÀÇ »ý¼ºÀ» ½ÃµµÇÏ´Â °ÍÀ¸·Î Å×½ºÆ®ÇÒ ¼ö ÀÖ´Ù. ¼º°øÇßÀ» °æ¿ì´Â, ¹öÀü 6.1 ÀÌÈİ¡ ÀνºÅç µÇ°í ÀÖÀ¸¹Ç·Î, DirectX 6.1 ÀÇ ¸ðµç ±â´ÉÀ» »ç¿ëÇÒ ¼ö ÀÖ´Ù.

¿©±â¿¡¼­´Â, °¢ ¹öÀü °íÀ¯ÀÇ ÀÎÅÍÆäÀ̽º ¹× °³Ã¼ÀÇ »ó¼¼ÇÑ ¸®½ºÆ®´Â °¡¸®Å°Áö ¾Ê±â ¶§¹®¿¡, DirectX ¼ÒÇÁÆ®¿þ¾î °³¹ß Ŷ (SDK)ÀÇ »ùÇÃÀÇ ¼½¼ÇÀ» ÂüÁ¶ÇÒ°Í. »ùÇÃÀÇ 1 °³ÀÇ GetDXVersion ¶ó°í ÇÏ´Â ÇÔ¼ö¿¡´Â, DirectX ÀÇ ¸ðµç ¹öÀü¿¡ °üÇÑ Å×½ºÆ®°¡ Æ÷ÇԵǾî ÀÖ´Ù. GetDXVersion ´Â, ±× ½Ã½ºÅÛ¿¡ Á¸ÀçÇÏ´Â DirectX ÀÇ ¹öÀü¿¡ ´ëÀÀÇÏ´Â Á¤¼ö¸¦ µ¹·ÁÁØ´Ù. ÀÌ Á¤¼ö°¡ ÇÊ¿äÇÑ ¹öÀüÀÇ ¹øÈ£¿Í °°Àº°¡, ±×°Íº¸´Ù Å©¸é, ¾ÖÇø®ÄÉÀ̼ÇÀº Á¤»óÀûÀ¸·Î µ¿ÀÛÇÑ´Ù. »ùÇà ÄÚµå´Â, SDK ÀÇ ·çÆ® Æú´õÀÇ \Samples\Multimedia\DXMisc\GetDXVer ¿¡ ÀÖ´Ù.

operating systemÀÇ ¹öÀüÀÇ Ã¼Å©

¾ÖÇø®ÄÉÀ̼ǿ¡¼­´Â, DirectX ÀÇ ¹öÀü »Ó¸¸ÀÌ ¾Æ´Ï¶ó, ±×°ÍÀÌ ½ÇÇàµÇ°í ÀÖ´Â operating system³ª ÀνºÅç µÇ°í ÀÖ´Â ¼­ºñ½º ÆÑÀÇ Á¤º¸°¡ ÇÊ¿äÇÏ°Ô µÇ´Â °æ¿ì°¡ ÀÖ´Ù. operating systemÀÇ ¹öÀüÀ» Á¶»çÇÏ·Á¸é , Windows ÇÔ¼öÀÇ GetVersionEx ¸¦ »ç¿ëÇϸé ÁÁ´Ù. ÀÌ ÇÔ¼ö´Â, ´ÙÀ½ÀÇ °¢Á¾ Á¤º¸¸¦ Æ÷ÇÔÇÑ OSVERSIONINFO ±¸Á¶Ã¼¸¦ µ¹·ÁÁØ´Ù.

¾ÖÇø®ÄÉÀ̼ÇÀÌ ´ëÀÀÇϰí ÀÖ´Â °¡Àå ³°Àº operating system¿¡ ´ëÇØ Á¶»çÇÏ´Â °ÍÀÌ ÀϹÝÀûÀÌ´Ù. ±× ¹öÀü ÀÌÈİ¡ ÀνºÅç µÇ°í ÀÖÀ¸¸é, ÀνºÅç ÇÑ ¾ÖÇø®ÄÉÀ̼ÇÀº Á¤»óÀûÀ¸·Î ½ÇÇàµÈ´Ù.

ÁÖ  GetVersionEx ¿¡ ÀÇÇØ µ¹·Á¹Þ´Â operating system Á¤º¸´Â, DirectX ÀÇ Á¸Àç ¶Ç´Â ¹öÀü ¹øÈ£¸¦ Á¶»çÇÏ´Â Å×½ºÆ®¿¡´Â »ç¿ëÇÒ ¼ö ¾ø´Ù. ƯÈ÷, ½Ã½ºÅÛÀÌ Windows NT º£À̽ºÀÌ´Ù°í ÇØµµ, DirectX °¡ Á¸ÀçÇÏÁö ¾Ê´Ù°í´Â ÇÒ ¼ö ¾ø´Ù. ¿¹¸¦ µé¾î, Windows 2000 operating system¿¡´Â DirectX 7.0 ÀÌÈİ¡ Æ÷ÇԵǾî ÀÖ´Ù. Windows NT º£À̽ºÀÇ operating systemÀÇ ÇâÈÄÀÇ ¹öÀü¿¡¼­µµ, DirectX ÀÇ ¹öÀüÀÌ Æ÷ÇԵǴ °ÍÀ̶ó°í ¿¹ÃøµÈ´Ù. DirectX ÀÇ Á¸Àç¿Í ¹öÀü ¹øÈ£´Â, ÀüÀÇ ÁÖÁ¦·Î ¼³¸íÇÑ ¼ø¼­·Î Á¶»çÇÒ Çʿ䰡 ÀÖ´Ù.

´ÙÀ½ »ùÇà ÇÔ¼ö´Â,GetVersionEx ¸¦ »ç¿ëÇØ operating systemÀÇ ¹öÀüÀ» Å×½ºÆ®ÇÏ´Â ¹æ¹ýÀ» ³ªÅ¸³»°í ÀÖ´Ù. ÀνºÅç µÇ°í ÀÖ´Â ¹öÀüÀÌ ÆÄ¶ó¹ÌÅÍ ¸®½ºÆ®·Î ÁöÁ¤µÇ°í ÀÖ´Â ¹öÀü ÀÌÈÄÀ̸é, ÇÔ¼ö´Â TRUE ¸¦ µ¹·ÁÁØ´Ù. ÀÌ °æ¿ì, ÀνºÅç ÇÑ ¾ÖÇø®ÄÉÀ̼ÇÀº Á¤»óÀûÀ¸·Î ½ÇÇàµÈ´Ù. ±× ÀÌ¿ÜÀÇ °æ¿ì, ÇÔ¼ö´Â FALSE ¸¦ µ¹·ÁÁØ´Ù. À̰ÍÀº, ¾ÖÇø®ÄÉÀ̼ÇÀ» ÀνºÅç ÇØµµ ¿Ã¹Ù¸£°Ô ½ÇÇàµÇÁö ¾Ê´Â °ÍÀ» ÀǹÌÇÑ´Ù.

#include <windows.h>
#include <stdio.h>
#include <tchar.h>

BOOL bIsWindowsVersionOK(DWORD dwWin9xMajor,
                         DWORD dwWin9xMinor,
                         DWORD dwWinNTMajor,
                         DWORD dwWinNTMinor,
                         WORD wWinNTSPMajor )

{
    OSVERSIONINFO           osvi;
	
    // Initialize the OSVERSIONINFO structure.

    ZeroMemory( &osvi, sizeof( osvi ) );
    osvi.dwOSVersionInfoSize = sizeof( osvi );

    GetVersionEx( &osvi );  // Assume this function succeeds.

    // Split code paths for NT and Windows 9x    
    if( osvi.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS )
    {
        // Check the major version.
        if( osvi.dwMajorVersion > dwWin9xMajor )
            return TRUE;

        else if( osvi.dwMajorVersion == dwWin9xMajor )
        {
            // Check the minor version.
            if( osvi.dwMinorVersion >= dwWin9xMinor )
                return TRUE;
        }
    }

    else if( osvi.dwPlatformId == VER_PLATFORM_WIN32_NT )
    {
        // Check the major version.
        if( osvi.dwMajorVersion > dwWinNTMajor )
            return TRUE;

        else if( osvi.dwMajorVersion == dwWinNTMajor )
        {
            // Check the minor version.
            if( osvi.dwMinorVersion > dwWinNTMinor )
                return TRUE;

            else if( osvi.dwMinorVersion == dwWinNTMinor )
            {
                // Check the service pack.

                DWORD dwServicePack = 0;

                if( osvi.szCSDVersion )
                {
                    _stscanf(osvi.szCSDVersion,
                             _T("Service Pack %d"),
                             &dwServicePack );
                }
                return ( dwServicePack >= wWinNTSPMajor );
            }
        }
    }
    return FALSE;
}


© 2002 Microsoft Corporation. All rights reserved.
¡èTOP