Find Media Center Process : Process « Development Class « C# / C Sharp

Home
C# / C Sharp
1.2D Graphics
2.Class Interface
3.Collections Data Structure
4.Components
5.Data Types
6.Database ADO.net
7.Date Time
8.Design Patterns
9.Development Class
10.Event
11.File Stream
12.Generics
13.GUI Windows Form
14.Internationalization I18N
15.Language Basics
16.LINQ
17.Network
18.Office
19.Reflection
20.Regular Expressions
21.Security
22.Services Event
23.Thread
24.Web Services
25.Windows
26.Windows Presentation Foundation
27.XML
28.XML LINQ
C# Book
C# / C Sharp by API
C# / CSharp Tutorial
C# / CSharp Open Source
C# / C Sharp » Development Class » ProcessScreenshots 
Find Media Center Process
        
// (c) Copyright Damian Mehers http://damianblog.com/
// This source is subject to the Microsoft Public License.
// See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx.
// All other rights reserved.

using System;
using System.Diagnostics;
using System.Runtime.InteropServices;
using System.Text;
using System.IO;

namespace MceFM.Last
{
    public class Util
    {

        public static Process FindMediaCenterProcess()
        {
            // Could be more than one if an extender is running too
            foreach (Process process in Process.GetProcessesByName("ehshell"))
            {
                if (process.SessionId == Process.GetCurrentProcess().SessionId)
                {
                    return process;
                }
            }
            return null;
        }

        public static bool IsWindowsMediaPlayerRunning()
        {
            foreach (Process process in Process.GetProcessesByName("wmplayer"))
            {
                if (process.SessionId == Process.GetCurrentProcess().SessionId)
                {
                    return true;
                }
            }
            return false;
        }


        public static bool IsMediaCenterForeground()
        {
            Process mediaCenterProcess = FindMediaCenterProcess();
            return mediaCenterProcess == null false : mediaCenterProcess.MainWindowHandle == GetForegroundWindow();
        }

        public static string ToHexString(byte[] bytes)
        {
            StringBuilder sb = new StringBuilder(bytes.Length * 2);
            foreach (byte b in bytes)
            {
                sb.AppendFormat("{0:x2}", b);
            }
            return sb.ToString();
        }

        static readonly int port = 2792;

        static string basePath = "MceFM";

        static Util()
        {
            // If we are running on an extender 
            if (Environment.UserName.StartsWith("Mcx"))
            {
                basePath += "/" + Environment.UserName;
            }
            else
            {
                basePath += "/" "Main";
            }
        }

        public static string GetTraceFileName()
        {
            return string.Format("{0}MceFM_{1}.log", Path.GetTempPath(), Process.GetCurrentProcess().Id);
        }


        public static string LocalBaseUrl
        {
            get
            {
                return string.Format("http://localhost:{0}/{1}/", port, basePath);
            }
        }


        public static string ServerStartUrl
        {
            get
            {
                return string.Format("http://+:{0}/{1}/", port, basePath);
            }
        }


        public static int Port
        {
            get
            {
                return port;
            }
        }


        public static string BasePath
        {
            get
            {
                return basePath;
            }
        }

        [DllImport("user32.dll")]
        static extern IntPtr GetForegroundWindow();
    }
}

   
    
    
    
    
    
    
    
  
Related examples in the same category
1.Get current Process Name
2.Start And Kill Process
3.Running another program from your own.
4.CloseMainWindow,WaitForExit
5.Enum Modules For Pid
6.Build up a list of the running processes
7.Input Output:Starting ProcessesInput Output:Starting Processes
8.Redirecting Process OutputRedirecting Process Output
9.Detecting Process CompletionDetecting Process Completion
10.Get Process propertyGet Process property
11.Get ThreadsGet Threads
12.List ProcessList Process
13.List ThreadsList Threads
14.Listing all threads for a process inn a ListView
15.Start Process With File name
16.Create Process As User
17.Open Url In Browser
18.Navigate to page
19.Browse a folder
20.Start and kill process (2)
21.Launches the winsat program
java2s.com  |  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.