Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
Inny

2 pytania związane z WinApi.

Inny

  • Zamknięty Temat jest zamknięty
4 odpowiedzi w tym temacie

#1 Owner123

    Wszechpomocny

  • Użytkownik

Reputacja: 146
Zaawansowany

  • Postów:331
  • Lokalizacja:Barty ;]
Offline

Napisano 27.07.2010 11:42

1. Jak zasymulować wciśnięcie lewego przycisku myszy ? Mam coś takiego ale nie wiem czemu wywala mi błąd ...
MSG msg;
while(!bQuit)
{
// check for messages
if(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
{
// handle or dispatch messages
if(msg.message == WM_QUIT)
{
bQuit = TRUE;
}
else
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}

}
else
{
if(Strzela)
{
// struktura INPUT, przechowująca nasze zdarzenie
INPUT Klik;
ZeroMemory (&Klik, sizeof(INPUT)); // zerujemy ją

// ustawiamy odpowiednie parametry
Klik.type = INPUT_MOUSE; // informujemy o tym, że zajmujemy się myszą
Klik.mi.dwFlags = MOUSEEVENTF_LEFTDOWN; // lewy przycisk "w dół"
SendInput (1, &Klik, sizeof(INPUT)); // generujemy zdarzenie
}
}
}

2. Jak sprawdzić czy proces np. hl.exe jest aktywny (posiada fokus) ?
  • +
  • -
  • 0

#2 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 981
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 27.07.2010 12:06

2 . może funkcja GetActiveWindow() w czym ci pomoże
  • +
  • -
  • 0

#3 Owner123

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 146
Zaawansowany

  • Postów:331
  • Lokalizacja:Barty ;]
Offline

Napisano 27.07.2010 12:13

Funkcja podobna do GetFocus, też zwraca uchwyt do aktywnej aplikacji. Dobra, to może inaczej skonstruuje pytanie, jak znaleźć uchwyt do danej aplikacji np. hl.exe (podaje to cały czas ponieważ pracuje nad jednym programem do CS'a ;D)?
  • +
  • -
  • 0

#4 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 981
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 27.07.2010 12:16

autobh ;F ?
uchwyt do procesu z uchwytu okna
HWND hOkno=GetForegroundWindow();
DWORD dwPid;
GetWindowThreadProcessId(hOkno, &dwPid);
HANDLE hProcess;
hProcess = OpenProcess(PROCESS_ALL_ACCESS, false, dwPid);

//tutaj operacje na procesie

CloseHandle(hProcess);

Zobacz temat - [winapi] Uchwyt okna a uchwyt procesu
  • +
  • -
  • 1

#5 Owner123

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 146
Zaawansowany

  • Postów:331
  • Lokalizacja:Barty ;]
Offline

Napisano 27.07.2010 12:24

Nieee co innego.
Dobra leci +.
Jeszcze tylko to zasymulowanie zdarzenia i będzie wszystko git.
  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: Inny

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych