logo

Python Win32 proces

U ovom ćemo članku raspravljati o Python win32 procesu. Također ćemo raspravljati o njegovim metodama jednu po jednu.

U osnovi, Win32 proces je metoda u Pythonu. Kroz ovaj modul dostupne su proširene mogućnosti stvaranja i upravljanja Win32 procesima. Metoda Create stvara procesne objekte (konstruktor). Moguće je ukinuti, obustaviti, nastaviti i postaviti prioritet procesa na objektima pomoću dodatnih metoda.

Windows Management Instrumentation (WMI; bivši WBEM) i WMI proširenja za Windows Driver Model služe kao temelji za upravljivost u sustavima Windows 2019/2016/2012/2008 i Windows 10/7/XP (WDM).

ActiveXperts Network Monitor nudi mogućnost stvaranja procedura provjere monitora temeljenih na WMI-ju. ActiveXperts je prikupio više od stotinu WMI uzoraka. Ovi primjeri mogu poslužiti kao polazište za potpuno nove rutine provjere koje sami kreirate.

Mnogi WMI uzorci dostupni su na ovoj web stranici.

ActiveXperts Network Monitor koristi klasu Win32_Process WMI za nadzor vaših poslužitelja.

Niz događaja na operacijskom sustavu Windows predstavljen je klasom Win32_Process WMI. Niz koji uključuje interakciju jednog ili više procesora ili tumača, nekog izvršnog koda i skupa ulaza, kao što je klijentski program koji se izvodi na Windows sustavu, je potomak ili član ove klase.

osi referentni model u umrežavanju

Sada se postavlja pitanje što je Python win32?

Dakle, mogućnosti Python win32 i Win32 programskog sučelja (API) mogu se koristiti s Pythonom korištenjem PyWin32 biblioteke proširenja za Windows.

Uzmimo mali uvod u win32api modul.

Modul win32api nudi razne dodatne metode za kontrolu procesa. Oni vam daju mogućnost provođenja mnogih uobičajenih koraka potrebnih za pokretanje novih procesa, ali još uvijek ne nude najvišu razinu kontrole niske razine.

Za razliku od funkcije os.system, koja je prethodno objašnjena, funkcija WinExec čini različite prilagodbe za GUI programe. Na primjer, konzola nije uspostavljena, a funkcija ne čeka dok novi proces ne završi.

Funkcija zahtijeva ova dva ulaza:

  • Zapovijed izvršiti
  • Alternativno, početno stanje prozora aplikacije

Uzmimo mali uvod u win32api.ShellExecute.

Osim toga, modul win32api nudi još jednu korisnu značajku za pokretanje novih procesa. Za razliku od pokretanja slučajnih procesa, otvaranje dokumenata glavna je svrha funkcije ShellExecute. Na primjer, možete uputiti ShellExecute da 'otvori MyDocument.doc'. Windows odabire koji će proces pokrenuti u vaše ime kako bi otvorio .doc datoteke. Klik (ili dvostruki klik) na a.doc datoteku uzrokuje da Windows Explorer izvrši istu radnju.

Program koji se izvodi naziva se procesom (obrađenim). Proces ne mora biti onaj koji korisnik pokreće ručno; to bi umjesto toga mogao biti sistemski proces koji pokreće operativni sustav. Svaki program koji radi na operativnom sustavu mora prvo generirati zaseban proces prije nego što može početi raditi. Većina procesa u tipičnoj instalaciji OS-a su pozadinski programi i usluge operativnog sustava koji se koriste za održavanje hardvera, softvera i operativnog sustava u dobrom radnom stanju.

Ovaj post će pogledati nekoliko alternativnih Python metoda za dobivanje popisa trenutno aktivnih procesa Windows OS-a.

Da bismo dobili željeni rezultat, prvo ćemo opisati Python metodu. Zatim ćemo ispitati naredbu iz Windows procesora naredbi kako bismo postigli istu stvar.

pip instalirati wmi

Kopirajte ovaj gornji kod u terminal.

Primjer

 #import wmi module import wmi # Initializise the wmi constructor f = wmi.WMI() # Print the header print(&apos;Printing the pid Process name&apos;) # all the running processes for process in f.Win32_Process(): print(f&apos;{process.ProcessId:<5} {process.name}') < pre> <p> <strong>Output:</strong> </p> <img src="//techcodeview.com/img/python-tutorial/88/python-win32-process.webp" alt="Python Win32 Process"> <br> <img src="//techcodeview.com/img/python-tutorial/88/python-win32-process-2.webp" alt="Python Win32 Process"> <p>The WMI() function of the wmi library is first initialized. This enables us to access its internal functions, such as WMI.Win32_Service, WMI.Win32_Process, and WMI.Win32_Printjob, each of which is intended to carry out a certain duty. To obtain a list of the system&apos;s active processes, we would use the WMI.Win32_Process function. After that, we iterated through all the running processes and placed them in the variable process by calling the function WMI.Win32_Process(). The corresponding attributes were then used to derive the process&apos;s ProcessID (pid) and ProcessName (name). To add padding to the output and properly align it, we used F-strings for the output.</p> <p>Now let&apos;s go through different methods of module Win32process.</p> <h3>1. STARTUPINFO</h3> <p>In this method, we create a new STARTUPINFO object.</p> <p>Let&apos;s understand how to create this, which is given below:</p> <p>win32process.STARTUPINFO</p> <p>PySTARTUPINFO = STARTUPINFO()</p> <h3>2. beginthreadex</h3> <p>In this method, we create a new thread.</p> <p>Let&apos;s understand how to create this, which is given below:</p> <p>win32process.beginthreadex</p> <p>PyHANDLE, int = beginthreadex(sa, stackSize , entryPoint , args , flags )</p> <p>Let&apos;s understand its parameters is given below</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>sa:</td> PySECURITY_ATTRIBUTES(The security attributes, or None) </tr><tr><td>stackSize :</td> int (The new thread&apos;s stack size, or 0 for the default size.) </tr><tr><td>entryPoint :</td> function (It is a thread function) </tr><tr><td>args :</td> tuple </tr><tr><td>flags :</td> int </tr></ul> <p>CREATE_SUSPENDED is an option for delaying the start of a thread.</p> <p> <strong>The thread handle and thread ID are returned as a tuple as the outcome.</strong> </p> <h3>3. CreateProcess</h3> <p>win32process.CreateProcess PyHANDLE, PyHANDLE, int, int = CreateProcess(appName, commandLine , processAttributes , threadAttributes , bInheritHandles , dwCreationFlags , newEnvironment , currentDirectory , startupinfo ) establishes a new process and the main thread for it. The newly created process runs the designated executable file.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>appName:</td> string (executable module&apos;s name, or None) </tr><tr><td>Commandline:</td> string (command-line argument, or Nothing) </tr><tr><td>processAttributes:</td> PySECURITY_ATTRIBUTES (attributes of process security, or None) </tr><tr><td>threadAttributes:</td> PySECURITY_ATTRIBUTES (aspects of thread security, or None) </tr><tr><td>bInheritHandles:</td> int </tr><tr><td>dwCreationFlags:</td> int </tr></ul> <h3>4. CreateRemoteThread</h3> <p>win32process.CreateRemoteThread PyHANDLE, int = CreateRemoteThread(hprocess, sa , stackSize , entryPoint , Parameter , flags ) establishes a thread that executes in another process&apos;s virtual address space.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hprocess :</td> PyHANDLE (the remote process&apos;s handle) </tr><tr><td>sa :</td> PySECURITY_ATTRIBUTES (Security characteristics, or None) </tr><tr><td>stackSize :</td> int (The new thread&apos;s stack size, or 0 for the default size.) </tr><tr><td>entryPoint :</td> function (The address of the thread function.) </tr><tr><td>Parameter :</td> int (a void pointer that served as the argument given to the function) </tr><tr><td>flags :</td> int </tr></ul> <p>The thread handle and thread ID are returned as a tuple as the outcome.</p> <h3>5. CreateProcessAsUser</h3> <p>win32process.CreateProcessAsUser creates a new process with the provided user as its context.</p> <p>PyHANDLE, PyHANDLE, int, int = CreateProcessAsUser(hToken, appName , commandLine , processAttributes , threadAttributes , bInheritHandles , dwCreationFlags , newEnvironment , currentDirectory , startupinfo )</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hToken:</td> PyHANDLE (Handle to a token that indicates a user who is currently logged in) </tr><tr><td>appName:</td> string (executable module&apos;s name, or None) </tr><tr><td>commandLine:</td> string (command-line argument, or Nothing) </tr><tr><td>processAttributes:</td> PySECURITY_ATTRIBUTES (attributes of process security, or None) </tr><tr><td>threadAttributes:</td> PySECURITY_ATTRIBUTES (aspects of thread security, or None) </tr><tr><td>bInheritHandles:</td> int (the inheritance flag handle) </tr><tr><td>dwCreationFlags:</td> int (creating of flags) </tr><tr><td>newEnvironment:</td> None (A dictionary of stringor Unicode pair definitions to specify the process environment, or None to use the default environment.) </tr><tr><td>currentDirectory:</td> string (name of the current directory, or None) </tr><tr><td>startupinfo:</td> PySTARTUPINFO (a STARTUPINFO object that describes the appearance of the new process&apos;s main window.) </tr></ul> <p> <strong>Consequently, a tuple of (hProcess, hThread, dwProcessId, dwThreadId)</strong> </p> <h3>6. GetCurrentProcess</h3> <p>win32process.GetCurrentProcess obtains a fictitious handle for the active process.</p> <p>int = GetCurrentProcess()</p> <h3>7. GetCurrentProcessId</h3> <p>win32process.GetCurrentProcessId reveals the caller process&apos;s unique process identification.</p> <p>int = GetCurrentProcessId()</p> <h3>8. GetProcessVersion</h3> <p>win32process.GetProcessVersion reveals the system&apos;s main and minor version numbers, which are needed to conduct a specific process.</p> <p>int = GetProcessVersion(processId)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>processId:</td> int (a designation for the desired process.) </tr></ul> <h3>9. GetCurrentProcessId</h3> <p>win32process.GetCurrentProcessId reveals the caller process&apos;s unique process identification.</p> <p>int = GetCurrentProcessId()</p> <h3>10. GetStartupInfo</h3> <p>win32process.GetStartupInfo reveals the STARTUPINFO structure&apos;s contents, which were supplied when the caller process was established.</p> <p>PySTARTUPINFO = GetStartupInfo()</p> <h3>11. GetPriorityClass</h3> <p>win32process.GetPriorityClass</p> <p>int = GetPriorityClass(handle)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>handle:</td> PyHANDLE (to the thread&apos;s handle) </tr></ul> <h3>12. GetExitCodeThread</h3> <p>win32process.GetExitCodeThread</p> <p>int = GetExitCodeThread(handle)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>handle:</td> PyHANDLE (to the thread&apos;s handle) </tr></ul> <h3>13. GetExitCodeProcess</h3> <p>win32process.GetExitCodeProcess</p> <p>int = GetExitCodeProcess(handle)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>handle:</td> PyHANDLE (to the thread&apos;s handle) </tr></ul> <h3>14. GetWindowThreadProcessId</h3> <p>win32process.GetWindowThreadProcessId returns the thread and process IDs that were responsible for the provided window&apos;s creation.</p> <p>int, int = GetWindowThreadProcessId(hwnd)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hwnd:</td> int (this parameter handles the window) </tr></ul> <p> <strong>Consequently, a tuple of (threadId, processId)</strong> </p> <h3>15. SetThreadPriority</h3> <p>win32process.SetThreadPriority</p> <p>SetThreadPriority(handle, nPriority)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>handle:</td> PyHANDLE (This parameter handles the thread) </tr><tr><td>nPriority:</td> int (This parameter thread the priority level) </tr></ul> <h3>16. GetThreadPriority</h3> <p>win32process.GetThreadPriority</p> <p>int = GetThreadPriority(handle)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>handle:</td> PyHANDLE (this parameter handles the threads) </tr></ul> <h3>17. GetProcessPriorityBoost</h3> <p>win32process.GetProcessPriorityBoost determines whether a process&apos;s dynamic priority adjustment is enabled.</p> <p>bool = GetProcessPriorityBoost(Process)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>Process:</td> PyHANDLE (This parameter handles to a process) </tr></ul> <h3>18. SetProcessPriorityBoost</h3> <p>win32process.SetProcessPriorityBoost enables or disables a process&apos;s dynamic priority adjustment.</p> <p>SetProcessPriorityBoost(Process, DisablePriorityBoost)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>Process:</td> PyHANDLE (This parameter handles a process) </tr><tr><td>DisablePriorityBoost:</td> boolean (This parameter indicates True to disable and False to enable) </tr></ul> <h3>19. GetThreadPriorityBoost</h3> <p>win32process.GetThreadPriorityBoost</p> <p>determines whether a thread&apos;s dynamic priority adjustment is enabled.</p> <p>bool = GetThreadPriorityBoost(Thread)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>Thread:</td> PyHANDLE (This parameter handles to a thread) </tr></ul> <h3>20. SetThreadPriorityBoost</h3> <p>win32process.SetThreadPriorityBoost enables or disables a thread&apos;s dynamic priority adjustment.</p> <p>SetThreadPriorityBoost(Thread, DisablePriorityBoost)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>Thread:</td> PyHANDLE (This parameter handles to a thread) </tr><tr><td>DisablePriorityBoost:</td> boolean ((This parameter indicates True to disable and False to enable) </tr></ul> <h3>21. GetThreadIOPendingFlag</h3> <p>win32process.GetThreadIOPendingFlag determines whether a thread has any open IO requests.</p> <p>bool = GetThreadIOPendingFlag(Thread)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>Thread:</td> PyHANDLE (This parameter handles to a thread) </tr></ul> <h3>22. GetThreadTimes</h3> <p>win32process.GetThreadTimes</p> <p>It returns the time statistics for a thread.</p> <p>dict = GetThreadTimes(Thread)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>Thread:</td> PyHANDLE (This parameter handles to a thread) </tr></ul> <h3>23. GetProcessId</h3> <p>int = GetProcessId(Process)</p> <p>It returns the Pid for a process handle.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>Process:</td> PyHANDLE (This parameter handles to a thread) </tr></ul> <h3>24. SetPriorityClass</h3> <p>win32process.SetPriorityClass</p> <p>SetPriorityClass(handle, dwPriorityClass)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>handle:</td> PyHANDLE (This parameter handles to the process) </tr><tr><td>dwPriorityClass:</td> int (This parameter gives priority class value) </tr></ul> <h3>25. AttachThreadInput</h3> <p>win32process.AttachThreadInput connects and disconnects the input of two threads.</p> <p>AttachThreadInput(idAttach, idAttachTo, Attach)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>idAttach:</td> int (This parameter shows id of a thread) </tr><tr><td>idAttachTo:</td> int (This parameter shows the id of the thread) </tr><tr><td>Attach:</td> bool (determines whether a thread should be joined or disconnected.) </tr></ul> <h3>26. SetThreadIdealProcessor</h3> <p>win32process.SetThreadIdealProcessor</p> <p> <strong>Syntax</strong> </p> <pre>win32process.SetThreadIdealProcessor( handle, dwIdealProcessor )</pre> <p> <strong>Parameters</strong> </p> <ul> <tr><td>handle:</td> PyHANDLE ( handle to the thread of interest ) </tr><tr><td>dwIdealProcessor:</td> int ( ideal processor number ) </tr></ul> <p> <strong>Return type</strong> </p> <p>This method return the int value</p> <h3>27. GetProcessAffinityMask</h3> <p>win32process.GetProcessAffinityMask</p> <p> <strong>Syntax</strong> </p> <pre>win32process.GetProcessAffinityMask( hProcess )</pre> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hProcess:</td> PyHANDLE ( handle to the process of interest ) </tr></ul> <p> <strong>Return type</strong> </p> <p>This method returns a tuple of ( process affinity mask, system affinity mask ).</p> <h3>28. SetProcessAffinityMask</h3> <p>win32process.SetProcessAffinityMask</p> <p> <strong>Syntax</strong> </p> <pre>win32process.SetProcessAffinityMask( hProcess, mask )</pre> <p>Sets a processor affinity mask for a specified process.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hProcess:</td> PyHANDLE ( handle to the process of interest ) </tr><tr><td>mask:</td> int ( a processor affinity mask ) </tr></ul> <h4>Note: Some platforms do not have this feature.</h4> <h3>29. SetThreadAffinityMask</h3> <p>win32process.SetThreadAffinityMask</p> <p> <strong>Syntax</strong> </p> <pre>win32process.SetThreadAffinityMask( hThread, ThreadAffinityMask )</pre> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hThread:</td> PyHANDLE ( handle to the thread of interest ) </tr><tr><td>ThreadAffinityMask:</td> int ( a processor affinity mask ) </tr></ul> <p> <strong>Return type</strong> </p> <p>This method returns an int value.</p> <h3>30. SuspendThread</h3> <p>win32process.SuspendThread</p> <p> <strong>Syntax</strong> </p> <pre>int = SuspendThread( handle )</pre> <p>Suspends the specified thread.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>handle:</td> PyHANDLE ( handle to the thread ) </tr></ul> <p> <strong>Return value</strong> </p> <p>The return value is the thread&apos;s previous suspend count</p> <h3>31. ResumeThread</h3> <p>win32process.ResumeThread</p> <p> <strong>Syntax</strong> </p> <pre>int = ResumeThread( handle )</pre> <p>Resumes the specified thread. When the suspend count is decremented to zero, the execution of the thread is resumed.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>handle:</td> PyHANDLE ( handle to the thread ) </tr></ul> <p> <strong>Return value</strong> </p> <p>The return value is the thread&apos;s previous suspend count</p> <h3>32. TerminateProcess</h3> <p>win32process.TerminateProcess</p> <p> <strong>Syntax</strong> </p> <pre>TerminateProcess( handle, exitCode )</pre> <p> <strong>Parameters</strong> </p> <ul> <tr><td>handle:</td> PyHANDLE ( handle to the process ) </tr><tr><td>exitCode:</td> int ( The exit code for the process ) </tr></ul> <h3>33. xitProcess</h3> <p>win32process.ExitProcess</p> <ul> <tr><td>ExitProcess:</td> The process&apos;s end and all of its threads </tr></ul> <p> <strong>Parameters</strong> </p> <ul> <tr><td>exitCode:</td> int (Exit code information is provided for the process, and all threads that are terminated as a result of this call.) </tr></ul> <p>The best way to stop a process is with ExitProcess. A clean process shutdown is provided by this function. This includes contacting each associated dynamic-link library&apos;s (DLL) entry-point function with a value indicating that the process is separating from the DLL. The DLLs associated with the process are not informed of the process termination if a process terminates by invoking win32process::TerminateProcess.</p> <h3>34. EnumProcesses</h3> <p>win32process.EnumProcesses</p> <p> <strong>Syntax</strong> </p> <pre>( long,.... ) = EnumProcesses()</pre> <p>Provides Pids for activities that are actually running.</p> <h3>35. EnumProcessModules</h3> <p>win32process.EnumProcessModules</p> <p> <strong>Syntax</strong> </p> <pre>( long,.... ) = EnumProcessModules( hProcess )</pre> <p>Lists loaded modules for a process handle</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hProcess:</td> PyHANDLE ( Process handle as returned by OpenProcess ) </tr></ul> <h3>36. EnumProcessModulesEx</h3> <p>win32process.EnumProcessModulesEx</p> <p> <strong>Syntax</strong> </p> <pre>( long,.... ) = EnumProcessModulesEx( hProcess, FilterFlag )</pre> <p>lists the 32- or 64-bit modules that a process has loaded.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hProcess :</td> PyHANDLE ( The process handle that OpenProcess returned ) FilterFlag=LIST_MODULES_DEFAULT : int ( choose whether to return 32-bit or 64-bit modules. ) needs Windows Vista or later. </tr></ul> <h3>37. GetModuleFileNameEx</h3> <p>win32process.GetModuleFileNameEx</p> <p> <strong>Syntax</strong> </p> <pre>PyUNICODE = GetModuleFileNameEx( hProcess, hModule )</pre> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hProcess:</td> PyHANDLE ( The process handle that OpenProcess returned ) </tr><tr><td>hModule:</td> PyHANDLE ( This parameter handles the modules ) </tr></ul> <h3>38. GetProcessMemoryInfo</h3> <p>win32process.GetProcessMemoryInfo</p> <p> <strong>Syntax</strong> </p> <pre>dict = GetProcessMemoryInfo( hProcess )</pre> <p>A dict representing a PROCESS_MEMORY_COUNTERS struct is returned as the process memory statistics.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hProcess:</td> PyHANDLE ( Process handle as returned by OpenProcess ) </tr></ul> <h3>39. GetProcessTimes</h3> <p>win32process.GetProcessTimes</p> <p> <strong>Syntax</strong> </p> <pre>dict = GetProcessTimes( hProcess )</pre> <p>Obtain time statistics for a process using its handle. (In 100 nanosecond units for UserTime and KernelTime)</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hProcess:</td> PyHANDLE ( Process handle as returned by OpenProcess ) </tr></ul> <h3>40. GetProcessIoCounters</h3> <p>win32process.GetProcessIoCounters</p> <p> <strong>Syntax</strong> </p> <pre>dict = GetProcessIoCounters( hProcess )</pre> <p>I/O statistics for a process are returned as a dictionary corresponding to an IO_COUNTERS struct.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hProcess:</td> PyHANDLE ( Process handle as returned by OpenProcess ) </tr></ul> <h3>41. GetProcessWindowStation</h3> <p>win32process.GetProcessWindowStation</p> <p> <strong>Syntax</strong> </p> <pre>GetProcessWindowStation()</pre> <p>Returns a handle to the window station for the calling process.</p> <h3>42. GetProcessWorkingSetSize</h3> <p>win32process.GetProcessWorkingSetSize</p> <p> <strong>Syntax</strong> </p> <pre>int,int = GetProcessWorkingSetSize( hProcess )</pre> <p>A process&apos;s minimum and maximum working set sizes are returned.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hProcess:</td> PyHANDLE ( Process handle as returned by win32api::OpenProcess ) </tr></ul> <h3>43. SetProcessWorkingSetSize</h3> <p>win32process.SetProcessWorkingSetSize</p> <p> <strong>Syntax</strong> </p> <pre>SetProcessWorkingSetSize( hProcess, MinimumWorkingSetSize, MaximumWorkingSetSize )</pre> <p>Sets minimum and maximum working set sizes for a process.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>hProcess :</td> PyHANDLE ( Process handle as returned by OpenProcess ) </tr><tr><td>MinimumWorkingSetSize :</td> int ( Minimum number of bytes to keep in physical memory ) </tr><tr><td>MaximumWorkingSetSize :</td> int ( Maximum number of bytes to keep in physical memory ) </tr></ul> <h4>NOTE: To entirely swap out the procedure, set both min and max to -1.</h4> <h3>44. GetProcessShutdownParameters</h3> <p>win32process.GetProcessShutdownParameters</p> <p> <strong>Syntax</strong> </p> <pre>int,int = GetProcessShutdownParameters()</pre> <p>Reveals the process&apos;s current termination level and triggers.</p> <p>The range is 000-0FF. windows reserved, Last, 200-2FF Middle, First, 300-3FF, and Fourth, 400-4FF Windows reserves.</p> <h3>45. SetProcessShutdownParameters</h3> <p>win32process.SetProcessShutdownParameters</p> <p> <strong>Syntax</strong> </p> <pre>SetProcessShutdownParameters(Level, Flags)</pre> <p>Sets the process&apos;s flags and termination priority.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>Level:</td> int (This parameter shows higher priority equals earlier) </tr><tr><td>Flags:</td> int (This parameter shows only SHUTDOWN NORETRY is valid at the moment). </tr></ul> <p>The range is 000-0FF. 100-1FF Last, 200-2FF Middle, 300-3FF First, 400-4FF, and reserved by windows window reserved.</p> <h3>46. GetGuiResources</h3> <p>win32process.GetGuiResources</p> <p> <strong>Syntax</strong> </p> <pre>int = GetGuiResources(Process, Flags )</pre> <p>Gives the amount of GDI or user object handles that a process is holding.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>Process:</td> PyHANDLE (This parameter Win32api::OpenProcess&apos;s returned handle to a process) </tr><tr><td>Flags:</td> int (This parameter shows either GR USEROBJECTS or GR GDIOBJECTS (from win32con)) </tr></ul> <h3>47. IsWow64Process</h3> <p>win32process.IsWow64Process</p> <p> <strong>Syntax</strong> </p> <pre>bool = IsWow64Process(Process)</pre> <p>Identifies whether WOW64 is currently running the specified process.</p> <p> <strong>Parameters</strong> </p> <ul> <tr><td>Process=None:</td> PyHANDLE (Process handle returned by win32api::OpenProcess, win32api::GetCurrentProcess, etc.; if None (the default) is given, the current process handle will be used.) </tr></ul> <p>Let&apos;s see its Return Value.</p> <p>The return value is False if the operating system does not provide this function (ie,</p> <p>a NotImplemented exception will never be thrown). However, a</p> <p>win32process.error exception to this is normally thrown if the function is available</p> <p>but ineffective.</p> <h2>Conclusion</h2> <p>In this article, we have discussed Python win32 process. And also, we have discussed the different types of methods and their parameters and return values one by one.</p> <hr></5}>

Parametri

    ručka:PyHANDLE (rukovanje niti od interesa)dwIdealProcessor:int (idealni broj procesora)

Vrsta povrata

Ova metoda vraća int vrijednost

27. GetProcessAffinityMask

win32process.GetProcessAffinityMask

Sintaksa

win32process.GetProcessAffinityMask( hProcess )

Parametri

    hProces:PyHANDLE (rukovanje procesom od interesa)

Vrsta povrata

Ova metoda vraća torku (maska ​​afiniteta procesa, maska ​​afiniteta sustava).

28. PostaviteProcessAffinityMask

win32process.SetProcessAffinityMask

Sintaksa

win32process.SetProcessAffinityMask( hProcess, mask )

Postavlja masku afiniteta procesora za određeni proces.

Parametri

    hProces:PyHANDLE (rukovanje procesom od interesa)maska:int (maska ​​afiniteta procesora)

Napomena: neke platforme nemaju ovu značajku.

29. Postavite ThreadAffinityMask

win32process.SetThreadAffinityMask

Sintaksa

win32process.SetThreadAffinityMask( hThread, ThreadAffinityMask )

Parametri

    hThread:PyHANDLE (rukovanje niti od interesa)ThreadAffinityMask:int (maska ​​afiniteta procesora)

Vrsta povrata

Ova metoda vraća int vrijednost.

30. SuspendThread

win32process.SuspendThread

Sintaksa

int = SuspendThread( handle )

Obustavlja navedenu nit.

Parametri

    ručka:PyHANDLE (ručka za nit)

Povratna vrijednost

Povratna vrijednost je prethodni broj obustava niti

31. ResumeThread

win32process.ResumeThread

bash duljina niza

Sintaksa

int = ResumeThread( handle )

Nastavlja navedenu nit. Kada se brojač obustave smanji na nulu, izvođenje niti se nastavlja.

Parametri

    ručka:PyHANDLE (ručka za nit)

Povratna vrijednost

Povratna vrijednost je prethodni broj obustava niti

32. Završi proces

win32process.TerminateProcess

Sintaksa

TerminateProcess( handle, exitCode )

Parametri

    ručka:PyHANDLE ( rukovanje procesom )izlazni kod:int (izlazni kod za proces)

33. xitProcess

win32process.ExitProcess

    Izlazni proces:Kraj procesa i svih njegovih niti

Parametri

    izlazni kod:int (Informacije o izlaznom kodu dane su za proces i sve niti koje su prekinute kao rezultat ovog poziva.)

Najbolji način za zaustavljanje procesa je ExitProcess. Ova funkcija omogućuje čisto gašenje procesa. To uključuje kontaktiranje funkcije ulazne točke svake pridružene biblioteke dinamičke veze (DLL) s vrijednošću koja pokazuje da se proces odvaja od DLL-a. DLL-ovi povezani s procesom nisu obaviješteni o prekidu procesa ako se proces prekine pozivanjem win32process::TerminateProcess.

34. EnumProcesses

win32process.EnumProcesses

Sintaksa

( long,.... ) = EnumProcesses()

Pruža Pids za aktivnosti koje se stvarno izvode.

35. EnumProcessModules

win32process.EnumProcessModules

Sintaksa

( long,.... ) = EnumProcessModules( hProcess )

Popisuje učitane module za rukovanje procesom

Parametri

    hProces:PyHANDLE ( Ručka procesa koju je vratio OpenProcess )

36. EnumProcessModulesEx

win32process.EnumProcessModulesEx

Sintaksa

( long,.... ) = EnumProcessModulesEx( hProcess, FilterFlag )

navodi 32- ili 64-bitne module koje je proces učitao.

Parametri

    hProces:PyHANDLE ( Ručka procesa koju je OpenProcess vratio ) FilterFlag=LIST_MODULES_DEFAULT : int ( odaberite želite li vratiti 32-bitne ili 64-bitne module. ) treba Windows Vista ili noviji.

37. GetModuleFileNameEx

win32process.GetModuleFileNameEx

Sintaksa

PyUNICODE = GetModuleFileNameEx( hProcess, hModule )

Parametri

    hProces:PyHANDLE ( Ručka procesa koju je OpenProcess vratio )hModul:PyHANDLE (Ovaj parametar upravlja modulima)

38. GetProcessMemoryInfo

win32process.GetProcessMemoryInfo

Sintaksa

dict = GetProcessMemoryInfo( hProcess )

Dikt koji predstavlja strukturu PROCESS_MEMORY_COUNTERS vraća se kao statistika memorije procesa.

Parametri

    hProces:PyHANDLE ( Ručka procesa koju je vratio OpenProcess )

39. GetProcessTimes

win32process.GetProcessTimes

Sintaksa

dict = GetProcessTimes( hProcess )

Pribavite vremensku statistiku za proces koristeći njegovu ručicu. (U jedinicama od 100 nanosekundi za UserTime i KernelTime)

Parametri

    hProces:PyHANDLE ( Ručka procesa koju je vratio OpenProcess )

40. GetProcessIoCounters

win32process.GetProcessIoCounters

Sintaksa

dict = GetProcessIoCounters( hProcess )

I/O statistika za proces vraća se kao rječnik koji odgovara strukturi IO_COUNTERS.

Parametri

    hProces:PyHANDLE ( Ručka procesa koju je vratio OpenProcess )

41. GetProcessWindowStation

win32process.GetProcessWindowStation

Sintaksa

GetProcessWindowStation()

Vraća oznaku prozorskoj stanici za proces pozivanja.

42. GetProcessWorkingSetSize

win32process.GetProcessWorkingSetSize

Sintaksa

int,int = GetProcessWorkingSetSize( hProcess )

Vraćaju se minimalna i maksimalna veličina radnog skupa procesa.

Parametri

    hProces:PyHANDLE ( Ručka procesa koju vraća win32api::OpenProcess )

43. SetProcessWorkingSetSize

win32process.SetProcessWorkingSetSize

Sintaksa

SetProcessWorkingSetSize( hProcess, MinimumWorkingSetSize, MaximumWorkingSetSize )

Postavlja minimalne i maksimalne veličine radnog skupa za proces.

Parametri

    hProces:PyHANDLE ( Ručka procesa koju je vratio OpenProcess )MinimumWorkingSetSize:int (Minimalni broj bajtova za čuvanje u fizičkoj memoriji)MaximumWorkingSetSize:int (Maksimalni broj bajtova za čuvanje u fizičkoj memoriji)

NAPOMENA: Za potpuno izmjenu postupka, postavite min i maks na -1.

44. GetProcessShutdownParameters

win32process.GetProcessShutdownParameters

Sintaksa

int,int = GetProcessShutdownParameters()

Otkriva trenutnu razinu završetka procesa i okidače.

Raspon je 000-0FF. prozori rezervirani, Zadnji, 200-2FF Srednji, Prvi, 300-3FF, i Četvrti, 400-4FF Windows rezerve.

45. Postavite parametre za isključivanje procesa

win32process.SetProcessShutdownParameters

Sintaksa

SetProcessShutdownParameters(Level, Flags)

Postavlja zastavice procesa i prioritet prekida.

Parametri

    Razina:int (Ovaj parametar pokazuje viši prioritet jednak ranije)Zastavice:int (Ovaj parametar pokazuje samo SHUTDOWN NORETRY koji je trenutno važeći).

Raspon je 000-0FF. 100-1FF Posljednji, 200-2FF Srednji, 300-3FF Prvi, 400-4FF, i rezerviran od strane Windows prozora rezerviran.

46. ​​GetGuiResources

win32process.GetGuiResources

Sintaksa

java niz.format
int = GetGuiResources(Process, Flags )

Daje količinu rukovanja GDI-jem ili korisničkim objektom koje proces drži.

Parametri

    Postupak:PyHANDLE (ovaj parametar Win32api::OpenProcess vratio je ručku procesu)Zastavice:int (Ovaj parametar prikazuje GR USEROBJECTS ili GR GDIOBJECTS (iz win32con))

47. IsWow64Process

win32process.IsWow64Process

Sintaksa

bool = IsWow64Process(Process)

Identificira da li WOW64 trenutno izvodi navedeni proces.

Parametri

    Proces=Ništa:PyHANDLE (Ručica procesa koju vraća win32api::OpenProcess, win32api::GetCurrentProcess, itd.; ako je zadan None (zadano), koristit će se ručica trenutnog procesa.)

Pogledajmo njegovu povratnu vrijednost.

Povratna vrijednost je False ako operativni sustav ne nudi ovu funkciju (tj.

iznimka NotImplemented nikada neće biti bačena). Međutim, a

win32process.error iznimka za ovo se obično javlja ako je funkcija dostupna

ali neučinkovito.

Zaključak

U ovom smo članku raspravljali o Python win32 procesu. Također, raspravljali smo o različitim vrstama metoda i njihovim parametrima i povratnim vrijednostima jednu po jednu.