T
Ich hab das mal gemacht um von WinAMP die Playlist-Item-Name zubekommen, weil die WinAMP API gibt nur Pointer für seinen eigenen Prozess zurück(also für Einsatz in DLLs gedacht)
also hier der Code:
#include <tlhelp32.h> // Toolhelp 32
DWORD pid = NULL;
HANDLE snapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
PROCESSENTRY32 proc;
Process32First(snapshot, &proc);
CString s;
do{
s = proc.szExeFile;
if(s.Right(10) == "WINAMP.EXE"){ // 10 und ExeName anpassen pid = proc.th32ProcessID;
break;
}
}while (TRUE == Process32Next(snapshot, &proc) );
ASSERT(pid != NULL);
CloseHandle(snapshot);
HANDLE hAmp = OpenProcess(PROCESS_VM_READ,false, pid);
DWORD size;
#define BUFF_SIZE 80
char tmp_buffer[BUFF_SIZE];
ReadProcessMemory( hAmp, 0x0050138C, tmp_buffer, BUFF_SIZE, NULL);