79529573

Date: 2025-03-23 19:44:34
Score: 1.5
Natty:
Report link

//-------------------------------------------------

// COMPILE WITH VS: cl /EHsc PrintProcess.cpp Advapi32.lib

//-------------------------------------------------

#include <windows.h>

#include <stdio.h>

#include <tchar.h>

void PrintProcessNameAndID( DWORD processID )

{

TCHAR szProcessName\[MAX_PATH\] = TEXT("\<unknown\>");

// Get a handle to the process.

HANDLE hProcess = OpenProcess( PROCESS_QUERY_INFORMATION |

                               PROCESS_VM_READ,

                               FALSE, processID );



if (NULL == hProcess ) return;



HMODULE hMod;

DWORD cbNeeded;

if( !EnumProcessModules( hProcess, &hMod, sizeof(hMod), &cbNeeded) ) return;



// Get the process name.

GetModuleBaseName( hProcess, hMod, szProcessName, sizeof(szProcessName)/sizeof(TCHAR) );    

// Print the process name and identifier.

\_tprintf( TEXT("%s  (PID: %u)\\n"), szProcessName, processID );

// Release the handle to the process.

CloseHandle( hProcess );

}

//-------------------------------------------------------------------

void KillProcess(int MemorySize, DWORD processID)

{

if(MemorySize\<1024)

{

        //How to kill the process here??

}

}

//-------------------------------------------------------------------

int main( void )

{

// Get the list of process identifiers.

DWORD aProcesses\[1024\], cbNeeded, cProcesses;

unsigned int i;

if ( !EnumProcesses( aProcesses, sizeof(aProcesses), &cbNeeded ) ) return 1;



// Calculate how many process identifiers were returned.

cProcesses = cbNeeded / sizeof(DWORD);

// Print the name and process identifier for each process.

for ( i = 0; i \< cProcesses; i++ )

{

    if( aProcesses\[i\] != 0 )

    {

        PrintProcessNameAndID( aProcesses\[i\] ); 

        //How to get the allocated Memory here??

        KillProcess(MemorySize, aProcesses\[i\]); 

    }

}



system("Pause");

return 999,

}

//-------------------------------------------------------------------

Reasons:
  • Long answer (-1):
  • Has code block (-0.5):
  • No latin characters (1.5):
  • Filler text (0.5): -------------------------------------------------
  • Filler text (0): -------------------------------------------------
  • Filler text (0): -------------------------------------------------------------------
  • Filler text (0): -------------------------------------------------------------------
  • Filler text (0): -------------------------------------------------------------------
  • Low reputation (1):
Posted by: Daniel Lavercombe