logo

Proces Python Win32

V tem članku bomo razpravljali o procesu Python win32. Prav tako bomo razpravljali o njegovih metodah eno za drugo.

V bistvu je proces Win32 metoda v Pythonu. Prek tega modula so dostopne razširjene zmožnosti ustvarjanja in upravljanja procesov Win32. Metoda Create ustvari procesne objekte (konstruktor). Z dodatnimi metodami je mogoče uničiti, začasno ustaviti, nadaljevati in nastaviti prioriteto procesov na objektih.

Windows Management Instrumentation (WMI; prej WBEM) in razširitve WMI za Windows Driver Model služijo kot temelj za upravljanje v sistemih Windows 2019/2016/2012/2008 in Windows 10/7/XP (WDM).

Omrežni monitor ActiveXperts ponuja možnost ustvarjanja postopkov preverjanja monitorja, ki temeljijo na WMI. ActiveXperts je zbral več kot sto vzorcev WMI. Ti primeri lahko služijo kot izhodišče za povsem nove rutine preverjanja, ki jih ustvarite sami.

Na tej spletni strani je na voljo veliko vzorcev WMI.

ActiveXperts Network Monitor uporablja razred WMI Win32_Process za spremljanje vaših strežnikov.

Niz dogodkov v operacijskem sistemu Windows predstavlja razred WMI Win32_Process. Zaporedje, ki vključuje interakcijo enega ali več procesorjev ali tolmačev, nekatere izvršljive kode in nabora vhodov, kot je odjemalski program, ki se izvaja v sistemu Windows, je potomec ali član tega razreda.

Zdaj se postavlja vprašanje kaj je Python win32?

Zmožnosti aplikacijskega programskega vmesnika (API) Python win32 in Win32 se lahko uporabljajo s Pythonom z uporabo knjižnice razširitev PyWin32 za Windows.

Vzemimo kratek uvod v modul win32api.

Modul win32api ponuja različne dodatne metode za nadzor procesov. Ti vam omogočajo, da izvedete številne običajne korake, potrebne za zagon novih procesov, vendar še vedno ne nudijo najvišje ravni nadzora na nizki ravni.

V nasprotju s funkcijo os.system, ki je bila prej razložena, funkcija WinExec omogoča različne prilagoditve za programe GUI. Na primer, nobena konzola ni vzpostavljena in funkcija ne počaka, dokler se nov proces ne konča.

Funkcija zahteva ta dva vnosa:

  • Ukaz za izvedbo
  • Druga možnost je začetno stanje okna aplikacije

Vzemimo kratek uvod v win32api.ShellExecute.

Poleg tega modul win32api ponuja še eno koristno funkcijo za zagon novih procesov. V nasprotju z zagonom naključnih procesov je odpiranje dokumentov glavni namen funkcije ShellExecute. ShellExecute lahko na primer naročite, naj 'odpre MyDocument.doc'. Windows izbere, kateri proces naj zažene v vašem imenu, da odpre datoteke.doc. Klik (ali dvoklik) na datoteko a.doc povzroči, da Windows Explorer izvede isto dejanje.

Program, ki se izvaja, se imenuje proces (obdelano). Ni nujno, da je postopek tisti, ki ga uporabnik izvaja ročno; namesto tega je lahko sistemski proces, ki ga sproži operacijski sistem. Vsak program, ki se izvaja v operacijskem sistemu, mora najprej ustvariti ločen proces, preden lahko začne delovati. Večina procesov v tipični namestitvi operacijskega sistema so programi v ozadju in storitve operacijskega sistema, ki se uporabljajo za vzdrževanje strojne, programske in operacijskega sistema v dobrem delovnem stanju.

Ta objava si bo ogledala nekaj alternativnih metod Python za pridobivanje seznama trenutno aktivnih procesov operacijskega sistema Windows.

Da bi dobili želeni rezultat, bomo najprej opisali metodo Python. Nato bomo preučili ukaz iz ukaznega procesorja Windows, da bi dosegli isto stvar.

pip namestite wmi

Kopirajte to zgornjo kodo v terminalu.

Primer

 #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

    ročaj:PyHANDLE (ročka za nit, ki vas zanima)dwIdealProcessor:int (idealna številka procesorja)

Vrnitev vrste

Ta metoda vrne vrednost int

27. GetProcessAffinityMask

win32process.GetProcessAffinityMask

Sintaksa

win32process.GetProcessAffinityMask( hProcess )

Parametri

    hProcess:PyHANDLE (ročka za proces, ki vas zanima)

Vrnitev vrste

Ta metoda vrne zbirko (maska ​​afinitete procesa, maska ​​afinitete sistema).

28. NastaviteProcessAffinityMask

win32process.SetProcessAffinityMask

Sintaksa

win32process.SetProcessAffinityMask( hProcess, mask )

Nastavi masko afinitete procesorja za določen proces.

Parametri

jedrni jezik java
    hProcess:PyHANDLE (ročka za proces, ki vas zanima)maska:int (maska ​​afinitete procesorja)

Opomba: nekatere platforme nimajo te funkcije.

29. NastaviThreadAffinityMask

win32process.SetThreadAffinityMask

Sintaksa

win32process.SetThreadAffinityMask( hThread, ThreadAffinityMask )

Parametri

    hThread:PyHANDLE (ročka za nit, ki vas zanima)ThreadAffinityMask:int (maska ​​afinitete procesorja)

Vrnitev vrste

Ta metoda vrne vrednost int.

30. Začasna nit

win32process.SuspendThread

Sintaksa

int = SuspendThread( handle )

Začasno ustavi določeno nit.

Parametri

    ročaj:PyHANDLE (ročaj niti)

Povratna vrednost

Vrnjena vrednost je število prejšnjih prekinitev niti

31. ResumeThread

win32process.ResumeThread

Sintaksa

int = ResumeThread( handle )

Nadaljuje navedeno nit. Ko se števec začasne zaustavitve zmanjša na nič, se izvajanje niti nadaljuje.

Parametri

    ročaj:PyHANDLE (ročaj niti)

Povratna vrednost

Vrnjena vrednost je število prejšnjih prekinitev niti

32. Prekini proces

win32process.TerminateProcess

Sintaksa

TerminateProcess( handle, exitCode )

Parametri

    ročaj:PyHANDLE (ročka za proces)izhodna koda:int (izhodna koda za proces)

33. xitProcess

win32process.ExitProcess

    Izhodni proces:Konec procesa in vseh njegovih niti

Parametri

    izhodna koda:int (Informacije o izhodni kodi so na voljo za proces in vse niti, ki so prekinjene zaradi tega klica.)

Najboljši način za zaustavitev procesa je ExitProcess. Ta funkcija zagotavlja čisto zaustavitev procesa. To vključuje vzpostavitev stika s funkcijo vstopne točke vsake povezane knjižnice dinamičnih povezav (DLL) z vrednostjo, ki kaže, da se proces ločuje od DLL. DLL-ji, povezani s procesom, niso obveščeni o prekinitvi procesa, če se proces prekine s klicem win32process::TerminateProcess.

34. EnumProcesses

win32process.EnumProcesses

pretvori char v int java

Sintaksa

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

Zagotavlja Pids za dejavnosti, ki se dejansko izvajajo.

35. EnumProcessModules

win32process.EnumProcessModules

Sintaksa

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

Navede naložene module za ročaj procesa

Parametri

    hProcess:PyHANDLE (Ročaj procesa, kot ga vrne OpenProcess)

36. EnumProcessModulesEx

win32process.EnumProcessModulesEx

Sintaksa

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

navaja 32- ali 64-bitne module, ki jih je naložil proces.

Parametri

    hProcess:PyHANDLE ( Ročaj procesa, ki ga je vrnil OpenProcess ) FilterFlag=LIST_MODULES_DEFAULT : int ( izberite, ali želite vrniti 32-bitne ali 64-bitne module. ) potrebuje Windows Vista ali novejši.

37. GetModuleFileNameEx

win32process.GetModuleFileNameEx

Sintaksa

PyUNICODE = GetModuleFileNameEx( hProcess, hModule )

Parametri

    hProcess:PyHANDLE (Ročaj procesa, ki ga je vrnil OpenProcess)hModule:PyHANDLE (Ta parameter obravnava module)

38. GetProcessMemoryInfo

win32process.GetProcessMemoryInfo

Sintaksa

dict = GetProcessMemoryInfo( hProcess )

Dikt, ki predstavlja strukturo PROCESS_MEMORY_COUNTERS, je vrnjen kot statistika pomnilnika procesa.

Parametri

    hProcess:PyHANDLE (Ročaj procesa, kot ga vrne OpenProcess)

39. GetProcessTimes

win32process.GetProcessTimes

Sintaksa

dict = GetProcessTimes( hProcess )

Pridobite časovno statistiko za proces z uporabo njegovega ročaja. (V 100 nanosekundnih enotah za UserTime in KernelTime)

Parametri

    hProcess:PyHANDLE (Ročaj procesa, kot ga vrne OpenProcess)

40. GetProcessIoCounters

win32process.GetProcessIoCounters

Sintaksa

dict = GetProcessIoCounters( hProcess )

V/I statistika za proces je vrnjena kot slovar, ki ustreza strukturi IO_COUNTERS.

Parametri

    hProcess:PyHANDLE (Ročaj procesa, kot ga vrne OpenProcess)

41. GetProcessWindowStation

win32process.GetProcessWindowStation

Sintaksa

GetProcessWindowStation()

Vrne ročico okenski postaji za klicni proces.

42. GetProcessWorkingSetSize

win32process.GetProcessWorkingSetSize

Sintaksa

int,int = GetProcessWorkingSetSize( hProcess )

Vrnjeni sta najmanjša in največja velikost delovnega niza procesa.

Parametri

    hProcess:PyHANDLE ( Ročaj procesa, kot ga vrne win32api::OpenProcess )

43. SetProcessWorkingSetSize

win32process.SetProcessWorkingSetSize

Sintaksa

SetProcessWorkingSetSize( hProcess, MinimumWorkingSetSize, MaximumWorkingSetSize )

Nastavi najmanjšo in največjo velikost delovnega niza za proces.

Parametri

    hProcess:PyHANDLE (Ročaj procesa, kot ga vrne OpenProcess)MinimumWorkingSetSize:int (najmanjše število bajtov, ki jih je treba hraniti v fizičnem pomnilniku)MaximumWorkingSetSize:int (Največje število bajtov, ki jih je treba hraniti v fizičnem pomnilniku)

OPOMBA: Če želite popolnoma zamenjati postopek, nastavite tako min kot max na -1.

44. GetProcessShutdownParameters

win32process.GetProcessShutdownParameters

Sintaksa

int,int = GetProcessShutdownParameters()

Razkrije trenutno stopnjo zaključka procesa in sprožilce.

Razpon je 000-0FF. okna rezervirana, zadnja, 200-2FF srednja, prva, 300-3FF in četrta, 400-4FF Windows rezerve.

45. SetProcessShutdownParameters

win32process.SetProcessShutdownParameters

Sintaksa

SetProcessShutdownParameters(Level, Flags)

Nastavi zastavice procesa in prioriteto zaključka.

Parametri

    stopnja:int (ta parameter kaže, da je višja prioriteta enaka prejšnji)Zastave:int (Ta parameter prikazuje, da je trenutno veljavna le SHUTDOWN NORETRY).

Razpon je 000-0FF. 100-1FF Zadnji, 200-2FF Srednji, 300-3FF Prvi, 400-4FF in rezervirano okno okna rezervirano.

46. ​​GetGuiResources

win32process.GetGuiResources

vrzi niz kot int java

Sintaksa

int = GetGuiResources(Process, Flags )

Poda količino GDI ali uporabniških predmetov, ki jih ima proces.

Parametri

    Postopek:PyHANDLE (Ta parameter Win32api::OpenProcess vrne ročico procesa)Zastave:int (Ta parameter prikazuje GR USEROBJECTS ali GR GDIOBJECTS (iz win32con))

47. IsWow64Process

win32process.IsWow64Process

Sintaksa

bool = IsWow64Process(Process)

Ugotavlja, ali WOW64 trenutno izvaja navedeni proces.

Parametri

    Proces=Brez:PyHANDLE (Ročica procesa, ki jo vrne win32api::OpenProcess, win32api::GetCurrentProcess itd.; če je podana None (privzeto), bo uporabljena trenutna ročica procesa.)

Poglejmo njegovo povratno vrednost.

Povratna vrednost je False, če operacijski sistem ne nudi te funkcije (tj.

izjema NotImplemented ne bo nikoli vržena). Vendar pa je a

win32process.error izjema za to se običajno sproži, če je funkcija na voljo

vendar neučinkovito.

Zaključek

V tem članku smo razpravljali o procesu Python win32. Poleg tega smo eno za drugo razpravljali o različnih vrstah metod in njihovih parametrih ter vrnjenih vrednostih.