Beispiel Verwendung WINAPI...
10.01.2007 12:04:53
windalf
Wenn ich einfach nur Funktionen verwenden will bekomme ich das bei sowas wie Sleep noch hin aber was muss man machen, wenn die Parameter komplexe datentypen sind (structs)...
Kann mir jemand z.B. für dieses C-Programm (ja das ist nur ein Beispiel in einem echten Programm würde ich TerminateProcess nicht verwenden) den Code in VBA liefern bzw. ein wenig Unterstüzung geben wie ich die C-Datentypen in VBA verwenden kann?
#include
#include
typedef BOOL(__stdcall *THFUNC)(HANDLE,LPPROCESSENTRY32);
void stop(){
DWORD dw;
HANDLE hSysSnapshot = NULL;
HANDLE h_pro;
PROCESSENTRY32 proc;
THFUNC pProcess32First=(THFUNC)GetProcAddress(GetModuleHandle("kernel32.dll"),"Process32First");
THFUNC pProcess32Next=(THFUNC)GetProcAddress(GetModuleHandle("kernel32.dll"),"Process32Next");
if(pProcess32First&&pProcess32Next)
{
proc.dwSize = sizeof(proc);
hSysSnapshot = CreateToolhelp32Snapshot ( TH32CS_SNAPPROCESS, 0 );
pProcess32First(hSysSnapshot,&proc);
proc.dwSize = sizeof(proc);
do{
if(!strcmp(proc.szExeFile,"EXCEL.EXE")){//oder halt th32ProcessID verwenden
h_pro=OpenProcess(PROCESS_ALL_ACCESS, TRUE, proc.th32ProcessID);
GetExitCodeProcess(h_pro,&dw);
TerminateProcess(h_pro,dw);
}
}while(pProcess32Next(hSysSnapshot,&proc));
}
}
//---------------------------------------------------------------------------------
int main()
{
stop();
return 0;
}
Danke Gruß Windi