Hi Antonio,
At this time i have just found this in BCC582\INCLUDE\WINABLE.H
about GetWindowModuleFileName(), nothing about CallDll32().
Please, where are located GetModuleFileNameExA() and CallDll32() ?
- Code: Select all Expand view
#if (WINVER < 0x0500) // these structures and functions
// are in NT 5.00 and above winuser.h
//
// In USER32
//
//
// This gets GUI information out of context. If you pass in a NULL thread ID,
// we will get the 'global' information, using the foreground thread. This
// is guaranteed to be the real active window, focus window, etc. Yes, you
// could do it yourself by calling GetForegorundWindow, getting the thread ID
// of that window via GetWindowThreadProcessId, then passing the ID into
// GetGUIThreadInfo(). However, that takes three calls and aside from being
// a pain, anything could happen in the middle. So passing in NULL gets
// you stuff in one call and hence also works right.
//
typedef struct tagGUITHREADINFO
{
DWORD cbSize;
DWORD flags;
HWND hwndActive;
HWND hwndFocus;
HWND hwndCapture;
HWND hwndMenuOwner;
HWND hwndMoveSize;
HWND hwndCaret;
RECT rcCaret;
} GUITHREADINFO, FAR * LPGUITHREADINFO;
#define GUI_CARETBLINKING 0x00000001
#define GUI_INMOVESIZE 0x00000002
#define GUI_INMENUMODE 0x00000004
#define GUI_SYSTEMMENUMODE 0x00000008
#define GUI_POPUPMENUMODE 0x00000010
BOOL
WINAPI
GetGUIThreadInfo(
DWORD idThread,
LPGUITHREADINFO lpgui
);
UINT
WINAPI
GetWindowModuleFileNameW(
HWND hwnd,
LPWSTR lpFileName,
UINT cchFileName
);
UINT
WINAPI
GetWindowModuleFileNameA(
HWND hwnd,
LPSTR lpFileName,
UINT cchFileName
);
#ifdef UNICODE
#define GetWindowModuleFileName GetWindowModuleFileNameW
#else
#define GetWindowModuleFileName GetWindowModuleFileNameA
#endif
#endif // WINVER < 0x0500
Best regards.