@msdn=http://search.microsoft.com/search/results.aspx?qu=$$$ @pinvoke=http://pinvoke.net/$$$.htm Summary: The EnumWindowStations API !!!!C# Signature: [DllImport("user32.dll")] static extern bool EnumWindowStations(EnumWindowStationsDelegate lpEnumFunc, IntPtr lParam); !!!!VB Signature: <DllImport("user32.dll", EntryPoint:="EnumWindowStations", _ ExactSpelling:=False, CharSet:=CharSet.Auto, SetLastError:=True)> _ Public Function EnumWindowStations(ByVal lpEnumFunc As EnumWindowStationsDelegate, ByVal lParam As IntPtr) As Boolean ' Leave function empty - DLLImport attribute forwards calls End Function !!!!User-Defined Types: Public Delegate Function EnumWindowStationsDelegate(<MarshalAs(UnmanagedType.LPTStr)> ByVal windowsStation As String, ByVal lParam As IntPtr) As Boolean !!!!Notes: None. !!!!Tips & Tricks: Please add some! !!!!Sample Code: { class Program { [DllImport( "user32.dll" )] private static extern bool EnumWindowStations( EnumWindowStationsDelegate lpEnumFunc, IntPtr lParam ); private delegate bool EnumWindowStationsDelegate( string windowsStation, IntPtr lParam ); private static bool EnumWindowStationsCallback( string windowStation, IntPtr lParam ) { GCHandle gch = GCHandle.FromIntPtr( lParam ); IList<string> list = gch.Target as List<string>; if ( null == list ) { return (false); } list.Add( windowStation ); return (true); } static void Main() { IList<string> list = new List<string>(); GCHandle gch = GCHandle.Alloc( list ); EnumWindowStationsDelegate childProc = new EnumWindowStationsDelegate( EnumWindowStationsCallback ); EnumWindowStations( childProc, GCHandle.ToIntPtr( gch ) ); foreach ( string a in list ) { Console.WriteLine( a ); } Console.ReadKey(); } } !!!!Alternative Managed API: Do you know one? Please contribute it! Documentation: EnumWindowStations@msdn on MSDN
Edit user32.EnumWindows
You do not have permission to change this page. If you feel this is in error, please send feedback with the contact link on the main page.