[ Shadowed @ 21.09.2003. 00:46 ] @
Stvarno nisam znao koji bi naziv teme bio adekvatan...
Imam jednostavnu konzolnu aplikaciju. Kod je:
Code:
Imports System.Diagnostics
Module Module1

    Sub Main()
        Dim MyProcess As Process

        Console.WriteLine("Geting process...")
        MyProcess = Process.GetProcessesByName("csrss")(0)
        Console.WriteLine("Seting normal priority...")
        MyProcess.PriorityClass = ProcessPriorityClass.Normal
        Console.WriteLine()
        Console.WriteLine("Done.")
    End Sub

End Module

Ono sto je problem je sto kada iz VS-a pokrenem program on radi a kada pokrenem sam .exe fajl ne radi. Prijavljuje gresku:

Unhandled Exception: System.ComponentModel.Win32Exception: Access is denied
at System.Diagnostics.ProcessManager.OpenProcess(Int32 processId, Int32 acces
s, Boolean throwIfExited)
at System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfE
xited)
at System.Diagnostics.Process.GetProcessHandle(Int32 access)
at System.Diagnostics.Process.set_PriorityClass(ProcessPriorityClass value)
at AtStartUp.Module1.Main()

To se ocigledno desava pri: MyProcess.PriorityClass = ProcessPriorityClass.Normal
ali ne kontam kakva je razlika pri ovim pokretanjima...
[ degojs @ 21.09.2003. 01:13 ] @
Ne znam u čemu je problem ali mogu da ti kažem kako stvari stoje na mom računaru.
Ako se ulogujem kao Power User program neće da radi ni iz VS ni iz komandne linije.
Ako se ulogujem kao Administrator radi kako god probaš.

[ Shadowed @ 21.09.2003. 01:31 ] @
Ja sam probao kao Administrator. Inace u izvesnoj ima smisla ova greska jer na primer iz Task Manager-a nije moguce promeniti prioritet ovog procesa ali je to TM-ova provera a ne sistemsko ogranicenje (iz drugih programa je moguce menjati). U svakom slucaju ne bi trebalo da se razlikuje u pomenutim slucajevima.