Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Zugriff auf programm

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
18.07.2003, 17:45 Uhr
~Daniel
Gast


hey,

Ist es eigentlic möglivh mit vc++ aus meinem programm heraus auf andere Anwendungen zuzugreifen und eine funktion der Anwendung auszuführenn
(z.b.: im menü datei öffnen usw)??

mfg daniel
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
18.07.2003, 23:03 Uhr
mike
Pinguinhüpfer
(Operator)


Hi!
Eigentlich brauchst du nur einen Zeiger aufs Fenster. Dann kannst du mal zumindestens die MessageMaps Funktionen mit SendMessage aufrufen. Wenn die Funktionen unbekannt sind, kannst du nur, z.B. beim Öfnnen, SendMessage(WM_KEYDOWN,...,...); schreiben. Leider bin ich mir jetzt nicht sicher, wie die Params für 2 Tasten lauten - eigentlich gibts Konstaten dafür (VK_HOME,...).

mfg
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
19.07.2003, 12:40 Uhr
~Daniel
Gast


danke

Wie bekomm ich denn einen Zeiger aufs fenster???

mfg daniel
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
20.07.2003, 16:45 Uhr
mike
Pinguinhüpfer
(Operator)


Hi!
Probier mal

C++:
CWnd* pWnd = FindWindow(NULL,"XXX");
if(pWnd) {
}


Es könnte passieren, dass du eventuell nmicht den vollen Zugriff auf alle Steuerelemnte usw. erhältst. Meistens gehts dann mit SendeMessage

mfg
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
20.07.2003, 17:30 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,

Zitat:
mike postete
Hi!
Probier mal

C++:
CWnd* pWnd = FindWindow(NULL,"XXX");
if(pWnd) {
}




Jein. Dann muß das Fenster eindeutig anhand des Titel identifizierbar sein. Ist das nicht der Fall, kann der Klassenname, welcher sich leicht mit Spy++ ermitteln, genutzt werden. Ist jedoch auch keine sichere Methode. Da hilft dann nur alle Processe ermitteln und sich ein gültiges Handle beschaffen.
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe

Dieser Post wurde am 20.07.2003 um 17:31 Uhr von Uwe editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
21.07.2003, 20:14 Uhr
mike
Pinguinhüpfer
(Operator)


Hi!
Stimmt schon, nur wenn man z.B. M$ Word öffnet, findet er auch nur einen Prozess Namens WINDOWRD.EXE. Es bleibt aber auch nur ein Prozess - egal wieviele Winword Fenster geöffnet werden. Also ich denke, dass die PID auch nicht eindeutig ist.

mfg mike
--
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
21.07.2003, 21:28 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo Mike,
das wollte ich ja eben ausdrücken. Es ist nicht in jedem Fall möglich einen Zugriff zu erhalten. Kommt immer auf die spezielle Situation an, was muß/will ich machen, lohnt sich der Aufwand usw.
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: