Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C#
  4. Video card/screen resolution question...

Video card/screen resolution question...

Scheduled Pinned Locked Moved C#
questionbeta-testingcode-review
9 Posts 4 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • N Offline
    N Offline
    new_phoenix
    wrote on last edited by
    #1

    I would appreciate it if somebody could kindly provide the current settings for modern video cards with regard to screen resolution? The values that I currently have are as follows: 640 x 480 800 x 600 1024 x 768 1152 x 864 1280 x 1024 Would appreciate a listing for more modern video card settings. My video card was made circa 1997. To provide the requested assistance, please go to the Start menu, select Control Panel, select Display, select Settings, then look in the control group Screen Area, and then drag the slider control from left to right. The values for the screen areas of the video card should be displayed in the control group area for each setting of the video card at each place that the slider control stops. At least, that is my understanding of how it is done on my computer given my O/S of Windows 2000 Professional. Would appreciate knowledgeable feedback regarding current screen resolutions of modern video cards. New_Phoenix

    D D 2 Replies Last reply
    0
    • N new_phoenix

      I would appreciate it if somebody could kindly provide the current settings for modern video cards with regard to screen resolution? The values that I currently have are as follows: 640 x 480 800 x 600 1024 x 768 1152 x 864 1280 x 1024 Would appreciate a listing for more modern video card settings. My video card was made circa 1997. To provide the requested assistance, please go to the Start menu, select Control Panel, select Display, select Settings, then look in the control group Screen Area, and then drag the slider control from left to right. The values for the screen areas of the video card should be displayed in the control group area for each setting of the video card at each place that the slider control stops. At least, that is my understanding of how it is done on my computer given my O/S of Windows 2000 Professional. Would appreciate knowledgeable feedback regarding current screen resolutions of modern video cards. New_Phoenix

      D Offline
      D Offline
      Dave Kreskowiak
      wrote on last edited by
      #2

      Mine is capable of about 45 different resolutions all the way up to 1920 x 1440. No, i'm not listing them here. A better bet woul;d be to use DirectX and interrogate the driver that the user has installed to see what it supports, instead of taking a Poll... RageInTheMachine9532 "...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome

      N 1 Reply Last reply
      0
      • D Dave Kreskowiak

        Mine is capable of about 45 different resolutions all the way up to 1920 x 1440. No, i'm not listing them here. A better bet woul;d be to use DirectX and interrogate the driver that the user has installed to see what it supports, instead of taking a Poll... RageInTheMachine9532 "...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome

        N Offline
        N Offline
        new_phoenix
        wrote on last edited by
        #3

        The reason that I need them in a hard-coded fashion is that the application requires them to be hard coded for calculation purposes. While the application in development does not require direct interpretation of the user's video card settings at this point, it may be a useful technique as the application evolves. I would really appreciate somebody to provide me with the current video card settings for modern computers, even if there are 45 settings. While I understand that makes sense for some applications to do as you suggest and to use DirectX and to thereby interrogate the driver that the user has installed to see what it supports, this approach tends to introduce a whole host of uncontrollable variables into the equasion upon which the application depends. In developing an application, it makes sense to try to control as many variables as possible so that the application behaves in an expected manner. That is not an unreasonable request, is it? I would rather prefer to have all of the resolution settings up front to perform the calculations so that the application could behave in an expected manner rather than taking my chances with the results of an interrogation of a user's installed drivers for this application's purpose. This better ensures the development of an application that has a successful outcome, wouldn't it? However, since I personally do not understand how to use DirectX, and since you do have that understanding, would really appreciate it if you would kindly provide a more detailed explanation as to how to implement the technique of utilizing DirectX to interrogate the driver that the user has installed? At some point, I do indeed believe that this information would be very valuable in the development of applications, and others on the board might be interested in hearing about the method as well. Another alternative to my request would be to provide a listing that might just include the more common settings that video cards could have, that is, settings that most video cards support. To keep the list smaller, I would request that weeds out the video card resolution settings in which the drivers don't support the higher resolutions with a higher color depth. It should only take a few minutes when you are not busy. Thanks

        D 1 Reply Last reply
        0
        • N new_phoenix

          The reason that I need them in a hard-coded fashion is that the application requires them to be hard coded for calculation purposes. While the application in development does not require direct interpretation of the user's video card settings at this point, it may be a useful technique as the application evolves. I would really appreciate somebody to provide me with the current video card settings for modern computers, even if there are 45 settings. While I understand that makes sense for some applications to do as you suggest and to use DirectX and to thereby interrogate the driver that the user has installed to see what it supports, this approach tends to introduce a whole host of uncontrollable variables into the equasion upon which the application depends. In developing an application, it makes sense to try to control as many variables as possible so that the application behaves in an expected manner. That is not an unreasonable request, is it? I would rather prefer to have all of the resolution settings up front to perform the calculations so that the application could behave in an expected manner rather than taking my chances with the results of an interrogation of a user's installed drivers for this application's purpose. This better ensures the development of an application that has a successful outcome, wouldn't it? However, since I personally do not understand how to use DirectX, and since you do have that understanding, would really appreciate it if you would kindly provide a more detailed explanation as to how to implement the technique of utilizing DirectX to interrogate the driver that the user has installed? At some point, I do indeed believe that this information would be very valuable in the development of applications, and others on the board might be interested in hearing about the method as well. Another alternative to my request would be to provide a listing that might just include the more common settings that video cards could have, that is, settings that most video cards support. To keep the list smaller, I would request that weeds out the video card resolution settings in which the drivers don't support the higher resolutions with a higher color depth. It should only take a few minutes when you are not busy. Thanks

          D Offline
          D Offline
          Dave Kreskowiak
          wrote on last edited by
          #4

          And, somehow, values obtained from the video card driver are not usable in your calculations??? This doesn't make any sense... On top of that, some drivers don't support higher resolutions with a higher color depth. RageInTheMachine9532 "...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome

          N 1 Reply Last reply
          0
          • D Dave Kreskowiak

            And, somehow, values obtained from the video card driver are not usable in your calculations??? This doesn't make any sense... On top of that, some drivers don't support higher resolutions with a higher color depth. RageInTheMachine9532 "...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome

            N Offline
            N Offline
            new_phoenix
            wrote on last edited by
            #5

            The reason that I need the video card's resolution settings in a "hard-coded" format is that the application requires them to be hard coded for calculation purposes. While the application in development does not require direct interpretation of the user's video card settings at this point, it may be a useful technique as the application evolves. I would really appreciate somebody to provide me with the current video card settings for modern computers, even if there are 45 settings, preferably the resolution settings that are most common to all video cards and not those that are specific to individual video card manufacturers. While I understand that makes sense for some applications to do as you suggest and to use DirectX and to thereby interrogate the driver that the user has installed to see what it supports, this approach tends to introduce a whole host of uncontrollable variables into the equasion upon which the application depends. In developing an application, it makes sense to try to control as many variables as possible so that the application behaves in an expected manner. That is not an unreasonable request, is it? You could see what I mean, that if the variables were left to chance interpretation by a driver DirectX interrogation, that it could potentially compromise the integrity and even the viability of the application itself? I would rather prefer to have all of the resolution settings up front to perform the calculations so that the application could behave in an expected manner rather than taking my chances with the results of an interrogation of a user's installed drivers for this application's purpose. This better ensures the development of an application that has a successful outcome, wouldn't it? However, since I personally do not understand how to use DirectX, and since you do have that understanding, would really appreciate it if you would kindly provide a more detailed explanation as to how to implement the technique of utilizing DirectX to interrogate the driver that the user has installed? At some point, I do indeed believe that this information would be very valuable in the development of applications, and others on the board might be interested in hearing about the method as well. Another alternative to my request would be to provide a listing that might just include the more common settings that video cards could have, that is, settings that most video cards support. To keep the list smaller, I would request that weeds out the video card resolution settings in which the d

            S 1 Reply Last reply
            0
            • N new_phoenix

              The reason that I need the video card's resolution settings in a "hard-coded" format is that the application requires them to be hard coded for calculation purposes. While the application in development does not require direct interpretation of the user's video card settings at this point, it may be a useful technique as the application evolves. I would really appreciate somebody to provide me with the current video card settings for modern computers, even if there are 45 settings, preferably the resolution settings that are most common to all video cards and not those that are specific to individual video card manufacturers. While I understand that makes sense for some applications to do as you suggest and to use DirectX and to thereby interrogate the driver that the user has installed to see what it supports, this approach tends to introduce a whole host of uncontrollable variables into the equasion upon which the application depends. In developing an application, it makes sense to try to control as many variables as possible so that the application behaves in an expected manner. That is not an unreasonable request, is it? You could see what I mean, that if the variables were left to chance interpretation by a driver DirectX interrogation, that it could potentially compromise the integrity and even the viability of the application itself? I would rather prefer to have all of the resolution settings up front to perform the calculations so that the application could behave in an expected manner rather than taking my chances with the results of an interrogation of a user's installed drivers for this application's purpose. This better ensures the development of an application that has a successful outcome, wouldn't it? However, since I personally do not understand how to use DirectX, and since you do have that understanding, would really appreciate it if you would kindly provide a more detailed explanation as to how to implement the technique of utilizing DirectX to interrogate the driver that the user has installed? At some point, I do indeed believe that this information would be very valuable in the development of applications, and others on the board might be interested in hearing about the method as well. Another alternative to my request would be to provide a listing that might just include the more common settings that video cards could have, that is, settings that most video cards support. To keep the list smaller, I would request that weeds out the video card resolution settings in which the d

              S Offline
              S Offline
              Skynyrd
              wrote on last edited by
              #6

              U could use managed directx to get the available modes. I'm no DirectX guru so maybe there's a much easier way to do this, but using DirectDraw its pretty straightforward and didnt take too long to figure out a way:

              using Dd=Microsoft.DirectX.DirectDraw;
              
              public void GetModes()
              {
                  Dd.DisplayModesCollection modes=new Dd.DisplayModesCollection(Dd.GetDisplayModeFlags.StandardVgaModes | 
              Dd.GetDisplayModeFlags.RefreshRates,null,new Dd.Device(Dd.CreateFlags.Default));
                  modes.MoveNext();
                  for (int i=0;i!=modes.Count;i++)
                  {
                      Dd.SurfaceDescription desc=(Dd.SurfaceDescription)modes.Current;
              	Console.WriteLine(desc.Width.ToString() + " * " + desc.Height.ToString() + " "
               + desc.RefreshRate.ToString() + " " + (desc.PixelFormatStructure.AlphaBitDepth).ToString()
               + "bpp");
              	modes.MoveNext();
                  }
                  Console.ReadLine();
              

              }

              N 1 Reply Last reply
              0
              • N new_phoenix

                I would appreciate it if somebody could kindly provide the current settings for modern video cards with regard to screen resolution? The values that I currently have are as follows: 640 x 480 800 x 600 1024 x 768 1152 x 864 1280 x 1024 Would appreciate a listing for more modern video card settings. My video card was made circa 1997. To provide the requested assistance, please go to the Start menu, select Control Panel, select Display, select Settings, then look in the control group Screen Area, and then drag the slider control from left to right. The values for the screen areas of the video card should be displayed in the control group area for each setting of the video card at each place that the slider control stops. At least, that is my understanding of how it is done on my computer given my O/S of Windows 2000 Professional. Would appreciate knowledgeable feedback regarding current screen resolutions of modern video cards. New_Phoenix

                D Offline
                D Offline
                Daniel Turini
                wrote on last edited by
                #7

                Sorry, but I have two GeForce FX 5200. An el-cheapo video card, whose chipset is made by NVidia. I can create almost any resolution I want on each of these cards, as long as the monitor supports it. And don't forget that I have two monitors plugged on my computer. I know people who use 3 and 4 monitors. Your application don't need to support multiple monitors, but should at least not crash when run on a multiple monitor computer. Yes, even I am blogging now!

                1 Reply Last reply
                0
                • S Skynyrd

                  U could use managed directx to get the available modes. I'm no DirectX guru so maybe there's a much easier way to do this, but using DirectDraw its pretty straightforward and didnt take too long to figure out a way:

                  using Dd=Microsoft.DirectX.DirectDraw;
                  
                  public void GetModes()
                  {
                      Dd.DisplayModesCollection modes=new Dd.DisplayModesCollection(Dd.GetDisplayModeFlags.StandardVgaModes | 
                  Dd.GetDisplayModeFlags.RefreshRates,null,new Dd.Device(Dd.CreateFlags.Default));
                      modes.MoveNext();
                      for (int i=0;i!=modes.Count;i++)
                      {
                          Dd.SurfaceDescription desc=(Dd.SurfaceDescription)modes.Current;
                  	Console.WriteLine(desc.Width.ToString() + " * " + desc.Height.ToString() + " "
                   + desc.RefreshRate.ToString() + " " + (desc.PixelFormatStructure.AlphaBitDepth).ToString()
                   + "bpp");
                  	modes.MoveNext();
                      }
                      Console.ReadLine();
                  

                  }

                  N Offline
                  N Offline
                  new_phoenix
                  wrote on last edited by
                  #8

                  Skynyrd: With regard to the DirectX video card driver interrogation approach, it appears that the aforementioned code provides ALL of the resolutions provided by the end user's video card driver. Would you also kindly write the above code using windows/object code rather than the command console? I would also appreciate it if you would also write the code so that the code provides the "current" screen resolution that was "chosen" by the end user? Both could be very useful for addition to a code library at some point. Also, what variable would I use to utilize the above code, would I use the variable "modes" and does the variable "modes" contain an array of the screen resolutions, and in what format, since the screen resolution contains the width and the height? New_Phoenix

                  S 1 Reply Last reply
                  0
                  • N new_phoenix

                    Skynyrd: With regard to the DirectX video card driver interrogation approach, it appears that the aforementioned code provides ALL of the resolutions provided by the end user's video card driver. Would you also kindly write the above code using windows/object code rather than the command console? I would also appreciate it if you would also write the code so that the code provides the "current" screen resolution that was "chosen" by the end user? Both could be very useful for addition to a code library at some point. Also, what variable would I use to utilize the above code, would I use the variable "modes" and does the variable "modes" contain an array of the screen resolutions, and in what format, since the screen resolution contains the width and the height? New_Phoenix

                    S Offline
                    S Offline
                    Skynyrd
                    wrote on last edited by
                    #9

                    Would you also kindly write the above code using windows/object code rather than the command console? The DirectX.DirectDraw.DisplayModesCollection collection contains all the information u need of the available modes of ur gfx card. U simply have to iterate through its members. These members are DirectX.DirectDraw.SurfaceDescription objects which have all the information you are looking for through its properties: Hieght (in pixels) Width (in pixels) RefreshRate etc. Basically each DirectX.DirectDraw.SurfaceDescription in the collection represents a possible screen mode in the clients computer. I just used the console so u could visibly see some of the output the collection can give u, but its up to you and how you manage the DisplayModesCollection collection and the SurfaceDescription objects contained within to extract the information u need. would also appreciate it if you would also write the code so that the code provides the "current" screen resolution that was "chosen" by the end user? I think u are referring to the screen resolution the user is using when running ur app? If so, u dont need directX for that: System.Windows.Forms.Screen.PrimaryScreen.Bounds or System.Windows.Forms.SystemInformation.PrimaryMonitorSize will give u the resolution (through Width and Height) of ur primary system monitor.

                    1 Reply Last reply
                    0
                    Reply
                    • Reply as topic
                    Log in to reply
                    • Oldest to Newest
                    • Newest to Oldest
                    • Most Votes


                    • Login

                    • Don't have an account? Register

                    • Login or register to search.
                    • First post
                      Last post
                    0
                    • Categories
                    • Recent
                    • Tags
                    • Popular
                    • World
                    • Users
                    • Groups