• 0

[VB.NET] Display Monitor Identity


Question

Hey gang,

I am looking for the api that is used (if there is one) when the user has multiple monitors and presses the "Identify" button on the Display dialog, Settings tab. (see attached image) I'm writing a an app that can take advantage of multiple monitors and I want to be able to show the user which one is which.

Thanks,

James

post-45653-1264195925305_thumb.jpg

  • Like 1
Link to comment
https://www.neowin.net/forum/topic/867666-vbnet-display-monitor-identity/
Share on other sites

7 answers to this question

Recommended Posts

  • 0

.NET has a class called Screen (in the System.Windows.Forms namespace), which represents the screens available. However, it does not have an ID associated with it, instead it just provides a device name. In order to get this in .NET, you'll have to make use of the Windows API.

I believe the DISPLAY_DEVICE structure provides what you're looking for: http://msdn.microsoft.com/en-us/library/dd183569%28VS.85%29.aspx

You can iterate through the display devices, using the EnumDisplayDevices function: http://msdn.microsoft.com/en-us/library/dd162609%28VS.85%29.aspx

(There are relevant links on both of those pages, which should give enough information to provide you with what you need to make the necessary native calls)

In addition, here is a page that gives some C# code for using EnumDisplayDevices: http://www.pinvoke.net/default.aspx/user32/EnumDisplayDevices.html

Edited by naaward
  • 0

Thanks guys,

I already knew about the Screens and AllScreens objects, and the enumDisplays basically does the same thing. What I was hoping for was a way to call that same function that the highlighted button calls. It actually shows a "1", "2", etc on each screen. I can get the height,width,left of each screen and display a number using a transparent form... I was just hoping to use the existing function that Windows uses. (if it's public)

Thanks,

James

  • 0
  On 16/02/2016 at 11:03, Nelson Rodrigues said:

hope ;)

 

Just have tried Win API, windows register, ... Nothing work consistently

Expand  

Get the array of screens from System.Windows.Forms.Screen.AllScreens and enumerate it. The one that returns true for "Primary" is #1.

 

The DeviceName property will give you a device path that should identify the ID Windows assigned it. (e.g.: "\\\\.\\DISPLAY1")

 

This is buggy on Windows XP and returns garbage in the name so you will have to parse it somehow if you're trying to support that OS.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • PDF Shaper 15.2 by Razvan Serea PDF Shaper is a set of feature-rich PDF software that makes it simple to split, merge, watermark, sign, optimize, convert, encrypt and decrypt your PDF documents, also delete and move pages, extract text and images. The program is optimized for low CPU resource usage and operates in batch mode, allowing users to process multiple PDF files while doing other work on their computers. PDF Shaper is available in three editions - Free, Premium and Ultimate. Compare and pick edition which is suitable for you. Compatible with Windows 7, 8, 10, 11. Features: Extract text, images of other objects from single or multiple PDFs Convert PDF to Word RTF or image, or convert image to PDF Extract pages from PDF and save them as separate PDF files Combine several PDF files into single PDF Encrypt and decrypt PDF with password, set user permissions Rotate, crop and normalize pages, set meta data Add watermark or remove images from PDF Benefits: Easy-to-use, intuitive user interface Low CPU resource usage during any process, including conversion Free for personal use and for any non-commercial organization Supports Unicode characters Supports batch processing for any operation Small installation size PDF Shaper 15.2 changelog: Updated translations. Improved table positioning for better layout accuracy (DOC to PDF). Enhanced image resizing to more accurately reflect DPI settings (Image to PDF). Improved text positioning for consistent formatting (TXT to PDF). Optimized overall performance on 64-bit systems. Enhanced support for Unicode text documents. Fixed an issue where font settings were not applied correctly to text files Download: PDF Shaper 15.2 | 7.9 MB (Free for personal use only) Link: PDF Shaper Home Page | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • I kind of do not engage much with people whose first retort is an ad hominem. Nevertheless the data is there.
    • I don't know if this is helpful or not, but just something I have an opinion on... Gaming PC builds where you've specced up the parts you want, built the system, colour matched things, etc... They may well be a labour of love, but on the 2nd hand market - nobody cares.  People are looking for deals, not your passion project
    • Firefox 139.0.4 fixes browser freezes, wallpaper bugs on Windows, and more by Taras Buria Mozilla is rolling out a new update for Firefox 139. Version 139.0.4 arrived today with four fixes and security patches. With today's release, Mozilla fixes freezes that occur when switching between apps or opening certain parts of the browser, issues with drop-down menus and triple-clicking text, and a bug with incorrect file names when setting a picture as the desktop background on Windows (the image would save as a BMP file with a blank name instead of Desktop Background.bmp) Here is the changelog: Security updates in Firefox 139.0.4 include two patches for vulnerabilities of high impact: CVE-2025-49709: Memory Corruption in canvas surfaces. Certain canvas operations could have led to memory corruption. CVE-2025-49710: Integer overflow in OrderedHashTable. An integer overflow was present in OrderedHashTable used by the JavaScript engine. As usual, you can update Firefox by heading to Menu > Help > About Firefox. Alternatively, grab the browser from the official website, Microsoft Store (if you are on Windows 10 and 11), or Neowin's Software page. For reference, release notes for version 139 and its subsequent bug-fixing update, 139.0.1, are available here and here. In other Firefox news, Mozilla recently announced the end of Pocket, Fakespot, and some other services. The company says its goal is to consolidate efforts and focus on Firefox development, its primary product.
  • Recent Achievements

    • Reacting Well
      Alan- earned a badge
      Reacting Well
    • Week One Done
      IAMFLUXX earned a badge
      Week One Done
    • One Month Later
      Æhund earned a badge
      One Month Later
    • One Month Later
      CoolRaoul earned a badge
      One Month Later
    • First Post
      Kurotama earned a badge
      First Post
  • Popular Contributors

    1. 1
      +primortal
      494
    2. 2
      ATLien_0
      267
    3. 3
      +FloatingFatMan
      225
    4. 4
      +Edouard
      199
    5. 5
      snowy owl
      141
  • Tell a friend

    Love Neowin? Tell a friend!