logo

Python Win32 -prosessi

Tässä artikkelissa keskustelemme Python win32 -prosessista. Ja myös keskustelemme sen menetelmistä yksitellen.

Pohjimmiltaan Win32-prosessi on menetelmä Pythonissa. Laajennetut Win32-prosessien luonti- ja hallintaominaisuudet ovat käytettävissä tämän moduulin kautta. Luo-menetelmä luo prosessiobjekteja (konstruktori). On mahdollista tappaa, keskeyttää, jatkaa ja asettaa kohteiden prosessien prioriteetti lisämenetelmillä.

instanssi javassa

Windows Management Instrumentation (WMI; entinen WBEM) ja WMI-laajennukset Windows Driver Model -käyttöjärjestelmään toimivat Windows 2019/2016/2012/2008- ja Windows 10/7/XP (WDM) -käyttöjärjestelmien hallittavuuden perustana.

ActiveXperts Network Monitor tarjoaa mahdollisuuden luoda WMI:hen perustuvia monitorin tarkistusmenettelyjä. ActiveXpertsin keräämiä WMI-näytettä on yli sata. Nämä esimerkit voivat toimia lähtökohtana upouusille tarkistusrutiineille, jotka luot itse.

Tältä verkkosivustolta on saatavilla useita WMI-näytteitä.

ActiveXperts Network Monitor käyttää Win32_Process WMI -luokkaa palvelimien valvontaan.

Windows-käyttöjärjestelmän tapahtumien sarjaa edustaa Win32_Process WMI -luokka. Sarja, joka sisältää yhden tai useamman prosessorin tai tulkin, suoritettavan koodin ja syötteiden joukon vuorovaikutuksen, kuten Windows-järjestelmässä toimiva asiakasohjelma, on tämän luokan jälkeläinen tai jäsen.

Nyt herää kysymys mikä on Python win32?

Python win32- ja Win32 Application Programming Interface (API) -ominaisuuksia voidaan siis käyttää Pythonin kanssa käyttämällä PyWin32-laajennusten kirjastoa Windowsille.

Otetaan pieni johdatus asiaan win32api moduuli.

Win32api-moduuli tarjoaa useita lisämenetelmiä prosessien ohjaamiseen. Nämä antavat sinulle mahdollisuuden suorittaa monia tavallisia vaiheita, joita tarvitaan uusien prosessien käynnistämiseen, mutta ne eivät silti tarjoa korkeinta matalan tason ohjausta.

Toisin kuin aiemmin selitetty os.system-toiminto, WinExec-toiminto tekee erilaisia ​​mukautuksia GUI-ohjelmille. Esimerkiksi konsolia ei ole perustettu, eikä toiminto odota, kunnes uusi prosessi on valmis.

Toiminto vaatii nämä kaksi tuloa:

  • Suoritettava määräys
  • Vaihtoehtoisesti sovelluksen ikkunan alkutila

Otetaan pieni johdatus asiaan win32api.ShellExecute.

Lisäksi win32api-moduuli tarjoaa toisen hyödyllisen ominaisuuden uusien prosessien käynnistämiseen. Toisin kuin satunnaisten prosessien käynnistäminen, asiakirjojen avaaminen on ShellExecute-funktion päätarkoitus. Voit esimerkiksi ohjeistaa ShellExecutea avaamaan MyDocument.doc. Windows valitsee, mikä prosessi käynnistetään puolestasi avatakseen.doc-tiedostoja. Napsauttaminen (tai kaksoisnapsautus) a.doc-tiedostossa saa Windowsin Resurssienhallinnan suorittamaan saman toiminnon.

Ohjelmaa, jota ajetaan, kutsutaan prosessiksi (käsiteltyksi). Prosessin ei tarvitse olla sellainen, jota käyttäjä suorittaa manuaalisesti; Se voi sen sijaan olla järjestelmäprosessi, jonka käyttöjärjestelmä synnyttää. Kaikkien käyttöjärjestelmässä suoritettavien ohjelmien on ensin luotava erillinen prosessi ennen kuin se voi alkaa toimia. Suurin osa tyypillisen käyttöjärjestelmän asennuksen prosesseista on taustaohjelmia ja käyttöjärjestelmäpalveluita, joita käytetään pitämään laitteisto, ohjelmisto ja käyttöjärjestelmä hyvässä toimintakunnossa.

Tässä viestissä tarkastellaan muutamia vaihtoehtoisia Python-menetelmiä luettelon saamiseksi Windows-käyttöjärjestelmän tällä hetkellä aktiivisista prosesseista.

Halutun tuloksen saavuttamiseksi kuvataan ensin Python-menetelmä. Tutkimme sitten Windowsin komentoprosessorin komentoa saman asian suorittamiseksi.

pip asentaa wmi

Kopioi tämä yllä oleva koodi terminaaliin.

Esimerkki

 #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}>

Parametrit

    kahva:PyHANDLE ( käsittelee kiinnostavaa säiettä )dwIdealProcessor:int ( ihanteellinen prosessorinumero )

Palautustyyppi

Tämä menetelmä palauttaa int-arvon

27. GetProcessAffinityMask

win32process.GetProcessAffinityMask

Syntaksi

win32process.GetProcessAffinityMask( hProcess )

Parametrit

    hProsessi:PyHANDLE ( käsittelee kiinnostavaa prosessia )

Palautustyyppi

Tämä menetelmä palauttaa joukon (prosessin affiniteettimaski, järjestelmän affiniteettimaski).

28. SetProcessAffinityMask

win32process.SetProcessAffinityMask

Syntaksi

win32process.SetProcessAffinityMask( hProcess, mask )

Asettaa suorittimen affiniteettimaskin tietylle prosessille.

Parametrit

    hProsessi:PyHANDLE ( käsittelee kiinnostavaa prosessia )naamio:int ( prosessorin affiniteettimaski )

Huomautus: Joillakin alustoilla ei ole tätä ominaisuutta.

29. SetThreadAffinityMask

win32process.SetThreadAffinityMask

Syntaksi

win32process.SetThreadAffinityMask( hThread, ThreadAffinityMask )

Parametrit

    hTread:PyHANDLE ( käsittelee kiinnostavaa säiettä )ThreadAffinityMask:int ( prosessorin affiniteettimaski )

Palautustyyppi

Tämä menetelmä palauttaa int-arvon.

30. SuspendThread

win32process.SuspendThread

Syntaksi

int = SuspendThread( handle )

Keskeyttää määritetyn säikeen.

Parametrit

    kahva:PyHANDLE ( kahva langalle )

Palautusarvo

Palautusarvo on säikeen edellinen keskeytysmäärä

31. ResumeThread

win32process.ResumeThread

Syntaksi

int = ResumeThread( handle )

Jatkaa määritettyä säiettä. Kun keskeytysmäärä pienennetään nollaan, säikeen suoritusta jatketaan.

Parametrit

    kahva:PyHANDLE ( kahva langalle )

Palautusarvo

Palautusarvo on säikeen edellinen keskeytysmäärä

32. Lopeta prosessi

win32process.TerminateProcess

Syntaksi

TerminateProcess( handle, exitCode )

Parametrit

    kahva:PyHANDLE ( prosessin kahva )exitCode:int ( prosessin poistumiskoodi )

33. xitProcess

win32process.ExitProcess

    Poistumisprosessi:Prosessin loppu ja kaikki sen säikeet

Parametrit

    exitCode:int (Prosessille annetaan poistumiskooditiedot ja kaikki tämän kutsun seurauksena päättyvät säikeet.)

Paras tapa pysäyttää prosessi on ExitProcess. Tämä toiminto tarjoaa puhtaan prosessin sammutuksen. Tämä sisältää yhteyden ottamista kunkin liittyvän dynaamisten linkkien kirjaston (DLL) aloituspistefunktioon arvolla, joka osoittaa, että prosessi eroaa DLL:stä. Prosessiin liittyvät DLL:t eivät saa tietoa prosessin päättymisestä, jos prosessi päättyy kutsumalla win32process::TerminateProcess.

34. EnumProcesses

win32process.EnumProcesses

Syntaksi

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

Tarjoaa Pidit toiminnalle, joka todella on käynnissä.

35. EnumProcessModules

win32process.EnumProcessModules

Syntaksi

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

Luetteloi ladatut moduulit prosessikahvaa varten

Parametrit

    hProsessi:PyHANDLE (OpenProcessin palauttama prosessikahva)

36. EnumProcessModulesEx

win32process.EnumProcessModulesEx

Syntaksi

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

luetteloi 32- tai 64-bittiset moduulit, jotka prosessi on ladannut.

Parametrit

    hProsessi:PyHANDLE ( OpenProcessin palauttama prosessikahva ) FilterFlag=LIST_MODULES_DEFAULT : int ( valitse palautetaanko 32- vai 64-bittiset moduulit. ) vaatii Windows Vistan tai uudemman.

37. GetModuleFileNameEx

win32process.GetModuleFileNameEx

Syntaksi

PyUNICODE = GetModuleFileNameEx( hProcess, hModule )

Parametrit

    hProsessi:PyHANDLE (prosessikahva, jonka OpenProcess palautti)hModuuli:PyHANDLE (Tämä parametri käsittelee moduuleja)

38. GetProcessMemoryInfo

win32process.GetProcessMemoryInfo

Syntaksi

dict = GetProcessMemoryInfo( hProcess )

PROCESS_MEMORY_COUNTERS-rakennetta edustava sanelu palautetaan prosessimuistitilastoksi.

muuttaa hakemiston nimeä linux

Parametrit

    hProsessi:PyHANDLE (OpenProcessin palauttama prosessikahva)

39. GetProcessTimes

win32process.GetProcessTimes

Syntaksi

dict = GetProcessTimes( hProcess )

Hanki aikatilastot prosessille sen kahvan avulla. (100 nanosekunnin yksiköissä UserTimelle ja KernelTimelle)

Parametrit

    hProsessi:PyHANDLE (OpenProcessin palauttama prosessikahva)

40. GetProcessIoCounters

win32process.GetProcessIoCounters

Syntaksi

dict = GetProcessIoCounters( hProcess )

Prosessin I/O-tilastot palautetaan IO_COUNTERS-rakennetta vastaavana sanakirjana.

Parametrit

    hProsessi:PyHANDLE (OpenProcessin palauttama prosessikahva)

41. GetProcessWindowStation

win32process.GetProcessWindowStation

Syntaksi

GetProcessWindowStation()

Palauttaa kahvan ikkunaasemalle kutsuprosessia varten.

42. GetProcessWorkingSetSize

win32process.GetProcessWorkingSetSize

Syntaksi

int,int = GetProcessWorkingSetSize( hProcess )

Prosessin minimi- ja enimmäistyöjoukon koot palautetaan.

Parametrit

merkkijono split bash
    hProsessi:PyHANDLE ( win32api::OpenProcessin palauttama prosessikahva)

43. SetProcessWorkingSetSize

win32process.SetProcessWorkingSetSize

Syntaksi

SetProcessWorkingSetSize( hProcess, MinimumWorkingSetSize, MaximumWorkingSetSize )

Asettaa prosessin työsarjojen vähimmäis- ja enimmäiskoot.

Parametrit

    hProsessi:PyHANDLE (OpenProcessin palauttama prosessikahva)MinimiWorkingSetSize:int (Fyysisessä muistissa säilytettävien tavujen vähimmäismäärä)Suurin WorkingSetSize:int (Fyysisessä muistissa säilytettävien tavujen enimmäismäärä)

HUOMAA: Jos haluat vaihtaa menettelyn kokonaan, aseta sekä min että max arvoon -1.

44. GetProcessShutdownParameters

win32process.GetProcessShutdownParameters

Syntaksi

int,int = GetProcessShutdownParameters()

Paljastaa prosessin nykyisen lopetustason ja liipaisimet.

Alue on 000-0FF. ikkunat varattu, viimeinen, 200-2FF Keski, Ensimmäinen, 300-3FF ja neljäs, 400-4FF Ikkunavarat.

45. SetProcessShutdownParameters

win32process.SetProcessShutdownParameters

Syntaksi

SetProcessShutdownParameters(Level, Flags)

Asettaa prosessin liput ja lopetusprioriteetin.

Parametrit

    Taso:int (Tämä parametri näyttää korkeamman prioriteetin, joka on yhtä suuri kuin aikaisempi)Liput:int (Tämä parametri näyttää, että vain SHUTDOWN NORETRY on voimassa tällä hetkellä).

Alue on 000-0FF. 100-1FF Viimeinen, 200-2FF Keski, 300-3FF Ensimmäinen, 400-4FF ja ikkunoiden varaama ikkuna varattu.

46. ​​GetGuiResources

win32process.GetGuiResources

Syntaksi

int = GetGuiResources(Process, Flags )

Antaa prosessin hallussa olevien GDI- tai käyttäjäobjektien kahvojen määrän.

Parametrit

    Käsitellä asiaa:PyHANDLE (Tämä parametri Win32api::OpenProcessin palautti kahvan prosessille)Liput:int (Tämä parametri näyttää joko GR USEROBJECTS tai GR GDIOBJECTS (win32conista))

47. IsWow64Process

win32process.IsWow64Process

Syntaksi

bool = IsWow64Process(Process)

Tunnistaa, suorittaako WOW64 tällä hetkellä määritettyä prosessia.

Parametrit

    Prosessi=Ei mitään:PyHANDLE (win32api::OpenProcess, win32api::GetCurrentProcess jne. palauttama prosessikahva; jos None (oletus) on annettu, käytetään nykyistä prosessikahvaa.)

Katsotaanpa sen palautusarvoa.

Palautusarvo on False, jos käyttöjärjestelmä ei tarjoa tätä toimintoa (esim.

ei-toteutettua poikkeusta ei koskaan hylätä). Kuitenkin a

win32process.error poikkeus tästä annetaan yleensä, jos toiminto on käytettävissä

mutta tehotonta.

Johtopäätös

Tässä artikkelissa olemme keskustelleet Python win32 -prosessista. Lisäksi olemme keskustelleet erityyppisistä menetelmistä ja niiden parametreista ja palautusarvoista yksitellen.