Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: C#
hi,
Access denied error rise while get a path some processes. How I resolve it. Please help me.
This is my code:
foreach (Process p in Process.GetProcesses())
            {
                if (p.MainModule.FileName == "App.exe")
                {
                    string procFile;
                    try
                    {
                        procFile = p.Modules[0].FileName;
                    }
                    catch (Win32Exception)
                    {
                        procFile = "n/a";
                    }
 
                textBox1.Text+=(string.Format("Process {0}: {1}", p.ProcessName, procFile));
                }
            }
Posted 28-Nov-12 6:03am

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

Some processes run so deep in the operating system that .Net cannot get information about them. This is a security measure, to prevent possibly malicious apps from getting data no app should be allowed to get.
 
Added: Out of curiosity, I ran your code. The second process failed just like you described. I could get ProcessName, HPClientServices, but most of the other properties returned a string value of "Access is denied".
  Permalink  
v2
Comments
neranjan pradeep at 28-Nov-12 11:40am
   
Gregory.Gadow
Thanks...

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 Kornfeld Eliyahu Peter 169
1 George Jonsson 145
2 Zoltán Zörgő 139
3 PIEBALDconsult 130
4 OriginalGriff 120
0 OriginalGriff 6,165
1 DamithSL 4,658
2 Maciej Los 4,107
3 Kornfeld Eliyahu Peter 3,649
4 Sergey Alexandrovich Kryukov 3,382


Advertise | Privacy | Mobile
Web01 | 2.8.141220.1 | Last Updated 28 Nov 2012
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100