Checking if a process is running (problems including psapi.dll i think...)


Posted on 16th Feb 2014 07:03 pm by admin

Ok, so all I'm trying to do is check if a program is running...

I've found out that I need to include psapi.dll (to use the EnumProcesses() & GetModuleBaseName() functions)...now, I'm not too knowledgeable with including dll's...but I researched it and believe I have it right.

But for some reason I'm getting this error :/ (I'm using code blocks compiler btw):
Quote: main.cpp|26|error: invalid initialization of non-const reference of type 'DWORD&' from a temporary of type 'DWORD (*)[1024]
I don't really understand this message...although I think it's something to do with my typedef that's attempting to load the DLL function EnumProcesses()...

Anywho, here's my code.

Code: #include #include #include using namespace std; bool proc(string process_name) { //type definition for paspi.lib typedef int (__stdcall *process_dll)(DWORD &processes, DWORD process_size, DWORD &process); //load the psapi library HINSTANCE dll = LoadLibrary("psapi.lib"); process_dll _processes; _processes = (process_dll) GetProcAddress(dll, "EnumProcesses"); if(_processes == 0) { return _processes; } //define process vars DWORD processes[1024], process; //get current processes if(!_processes(&processes, sizeof(processes), &process)) { return false; } //iterate through each process for(unsigned int i = 0; i < process / sizeof(DWORD); i++) { if(processes[i] == 0) { continue; } HANDLE ph = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, 0, processes[i]); char buffer[50]; GetModuleBaseName(ph, 0, buffer, sizeof(buffer)); CloseHandle(ph); if(process_name == (string) buffer) { return true; } } return false; } int main(int argc, char *argv[]) { if(proc("some proc name")) cout << "process is running"; else cout << "process is not running"; return 0; }

Any help would be greatly appreciated

Thanks a lot,

No comments posted yet

Your Answer:

Login to answer
120 Like 17 Dislike
Previous forums Next forums
Other forums

Pre-Fill out a PHP form...??
This is for work actually (geek squad). We have to fill out this online php form at work over and ov

how to hide input fields on selection screen using variant attribute
Hello all,

I want to know how to hide input fields on selection screen using variant attr

what business processes?
Hi,

A general question. What business processes (like OTC - Order to Cach, P2P, R2R etc)

convert PHP array to Javascript array
I have a page that gets a request sent from AJAX, and I am trying to convert a PHP array to a javasc

retrieving images from mysql database using php
So I've been trying to figure out how to store images in a mysql database, and as far as i can tell

[RESOLVED] Socket/Port remains open after app crashes
I'm having this problem with a networked app in vb.net.

If the program exits normally the por

Switch letters in message (basic cryptology)...
I am trying to switch letters around in a message for an application on my site (see here). The prob

First root of a number
Hi,

I can't find any function in php to give me the first root of a number.
Is there any

AJAX form submit
I recently built a form that submits data to my database with an ajax function that is called throug

Multi image upload
I have a gallery to build and want to build a dynamic upload form to allow for $var number of fields

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash