Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
Quellcode |
|
1 |
iNumModes = g_pD3D->GetAdapterModeCount(iAdapter, D3DFMT_R5G6B5); |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 |
#include <windows.h> #include <d3d9.h> #include <stdio.h> int g_iNumAdapters; D3DADAPTER_IDENTIFIER9* g_pAdapters; PDIRECT3D9 g_pD3D = NULL; int iAdapter; int WINAPI WinMain(HINSTANCE hInstace, HINSTANCE hPrevInstance, char* pcCmdLine, int iShowCmd) { char acAdapterInfo[1024]; g_pD3D = Direct3DCreate9(D3D_SDK_VERSION); if (g_pD3D == NULL) { MessageBox (NULL, "Fehler beim Erzeugen der Direct3D-Schnittstelle!", "Fehler", MB_OK | MB_ICONEXCLAMATION); return 1; } g_iNumAdapters = g_pD3D->GetAdapterCount(); g_pAdapters = new D3DADAPTER_IDENTIFIER9[g_iNumAdapters]; for (iAdapter = 0; iAdapter < g_iNumAdapters; iAdapter++) { if (FAILED(g_pD3D->GetAdapterIdentifier(iAdapter, 0, &g_pAdapters[iAdapter]))) { MessageBox(NULL, "Adapterinformationen konnten nicht abgefragt werden!", "Fehler", MB_OK | MB_ICONEXCLAMATION); g_pD3D->Release(); delete[] g_pAdapters; return 1; } sprintf(acAdapterInfo, "Adapter-ID: %d\nName: %s\nTreiber: %s\nTreiberversion: %d", iAdapter, g_pAdapters[iAdapter].Description, g_pAdapters[iAdapter].Driver, g_pAdapters[iAdapter].DriverVersion); MessageBox(NULL, acAdapterInfo, "Adapter gefunden", MB_OK | MB_ICONINFORMATION); } g_pD3D->Release(); delete[] g_pAdapters; //Die Variable iAdapter enthält die ID des gerade aufgelisteten Adapters. int iNumModes; D3DDISPLAYMODE* pModes; char acModes[16384]; //16 Bit verfügbar? iNumModes = g_pD3D->GetAdapterModeCount(iAdapter, D3DFMT_R5G6B5); if(iNumModes > 0) { //Speicherplatz reservieren pModes = new D3DDISPLAYMODE[iNumModes]; strcpy(acModes, ""); //JEden Modus durchgehen for (int iMode=0; iMode < iNumModes; iMode++) { //Infos g_pD3D->EnumAdapterModes(iAdapter, D3DFMT_R5G6B5, iMode, &pModes[iMode]); //Nummer, Breite, Höhe, und hz in String schreiben sprintf (acModes, "%s\nModus %d: %dx%d bei %d Hz (0: Standard)", acModes, iMode, pModes[iMode].Width, pModes[iMode].Height, pModes[iMode].RefreshRate); } //Display Modi MessageBox(NULL, acModes, "Verfügbare 16-Bit-Videomodi", MB_OK |MB_ICONINFORMATION); delete[] pModes; } return 0; } |
Quellcode |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
#include <windows.h> #include <d3d9.h> #include <stdio.h> int g_iNumAdapters; D3DADAPTER_IDENTIFIER9* g_pAdapters; PDIRECT3D9 g_pD3D = NULL; int iAdapter; int WINAPI WinMain(HINSTANCE hInstace, HINSTANCE hPrevInstance, char* pcCmdLine, int iShowCmd) { char acAdapterInfo[1024]; g_pD3D = Direct3DCreate9(D3D_SDK_VERSION); if (g_pD3D == NULL) { MessageBox (NULL, "Fehler beim Erzeugen der Direct3D-Schnittstelle!", "Fehler", MB_OK | MB_ICONEXCLAMATION); return 1; } g_iNumAdapters = g_pD3D->GetAdapterCount(); g_pAdapters = new D3DADAPTER_IDENTIFIER9[g_iNumAdapters]; for (iAdapter = 0; iAdapter < g_iNumAdapters; iAdapter++) { if (FAILED(g_pD3D->GetAdapterIdentifier(iAdapter, 0, &g_pAdapters[iAdapter]))) { MessageBox(NULL, "Adapterinformationen konnten nicht abgefragt werden!", "Fehler", MB_OK | MB_ICONEXCLAMATION); g_pD3D->Release(); delete[] g_pAdapters; MessageBox(NULL, "AUS!", "Verfügbare 16-Bit-Videomodi", MB_OK |MB_ICONINFORMATION); return 1; } sprintf(acAdapterInfo, "Adapter-ID: %d\nName: %s\nTreiber: %s\nTreiberversion: %d", iAdapter, g_pAdapters[iAdapter].Description, g_pAdapters[iAdapter].Driver, g_pAdapters[iAdapter].DriverVersion); MessageBox(NULL, acAdapterInfo, "Adapter gefunden", MB_OK | MB_ICONINFORMATION); } int iNumModes=5; D3DDISPLAYMODE* pModes; char acModes[16384]; iNumModes = g_pD3D->GetAdapterModeCount(iAdapter-1, D3DFMT_R5G6B5); if(iNumModes > 0) { //Speicherplatz reservieren pModes = new D3DDISPLAYMODE[iNumModes]; strcpy(acModes, ""); //JEden Modus durchgehen for (int iMode=0; iMode < iNumModes; iMode++) { //Infos g_pD3D->EnumAdapterModes(iAdapter, D3DFMT_R5G6B5, iMode, &pModes[iMode]); //Nummer, Breite, Höhe, und hz in String schreiben sprintf (acModes, "%s\nModus %d: %dx%d bei %d Hz (0: Standard)", acModes, iMode, pModes[iMode].Width, pModes[iMode].Height, pModes[iMode].RefreshRate); } //Display Modi MessageBox(NULL, acModes, "Verfügbare 16-Bit-Videomodi", MB_OK |MB_ICONINFORMATION); delete [] pModes; } g_pD3D->Release(); delete[] g_pAdapters; return 0; } |
Werbeanzeige