Outlook Client Fenster ... Hwnd ?

Fragen rund um diverse Windows-Versionen, ihr Verhalten unter Xbase++ und den Umgang mit der API

Moderator: Moderatoren

Antworten
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Outlook Client Fenster ... Hwnd ?

Beitrag von AUGE_OHR »

hi,

wie bekomme ich den "Title" bzw "Handle" wenn ich z.b. ein Outlook Calender Client Fenster geöffnet habe ?
OL_Client_HWND.JPG
OL_Client_HWND.JPG (86.68 KiB) 3660 mal betrachtet
auch mit WinID komme ich nicht weiter :(
gruss by OHR
Jimmy
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: Outlook Client Fenster ... Hwnd ?

Beitrag von Martin Altmann »

Hmm,
da es ja kein Xbase-Window ist, kommst Du mit GetHWND() nicht weiter. Mach es doch mit API-Funktionen. Such mal in der msdn - vielleicht hilft Dir das ja weiter:
http://social.msdn.microsoft.com/Forums ... 666f49083c

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15689
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Outlook Client Fenster ... Hwnd ?

Beitrag von brandelh »

Hi,

bei den Threads, die um "läuft mein Programm schon" oder "wie hole ich es nach vorne"
wurde, das Fenster per Titelzeile ermittelt:

Code: Alles auswählen

Power Basic
FindWindow LIB "USER32.DLL" ALIAS "FindWindowA" (lpClassName AS ASCIIZ, lpWindowName AS ASCIIZ) AS LONG 
Ich vermute dass diese Funktion das FensterHandle wie GetHWND() zurückgibt.
Gruß
Hubert
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Outlook Client Fenster ... Hwnd ?

Beitrag von AUGE_OHR »

Martin Altmann hat geschrieben:da es ja kein Xbase-Window ist, kommst Du mit GetHWND() nicht weiter.
klar deshalb habe ich WinID benutzt, aber es wird kein "Title" angezeigt.
Martin Altmann hat geschrieben:Mach es doch mit API-Funktionen.
ganau dafür brauche ich doch ein "Handle" ...

üblicherweise suche ich in der Tasklist nach dem "Title" der Application = Fenster. auch "FindwindowA" funktioniert mit dem "Title" ...

aber WinID zeigt mir ja das es keinen "Title" hat obwohl (!!!) ich es in der Taskliste "sehe"
No_Title_4_OLclient.JPG
No_Title_4_OLclient.JPG (8.48 KiB) 3652 mal betrachtet
gruss by OHR
Jimmy
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Outlook Client Fenster ... Hwnd ?

Beitrag von AUGE_OHR »

hi,

obwohl ich dies Problem nicht lösen konnte habe ich eine anderen Weg gefunden.

Code: Alles auswählen

   oTermin := ::oOutlook:CreateItem( olAppointmentItem )

   oTermin := oTermin:dynamicCast( ActiveXObject() )
   oTermin:SubscribeEvent( EvWrite  , {|a,b,c,d| PostAppEvent( xbeE_TerminRefresh,dDate,,::oDlg ) } )
   oTermin:SubscribeEvent( EvClose  , {|a,b,c,d| PostAppEvent( xbeE_TerminClose  ,     ,, self  ) } )

   oTermin:treatDateAsString(.t.)
   oTermin:Start     := DTOS(dDate)+cTime
   oTermin:Duration  := nMinute  
   oTermin:Subject   := cText
   oTermin:Location  := cPlace
   oTermin:Body      := cMemo
   oTermin:AllDayEvent  := .F.
   oTermin:ReminderSet  := .F.
*  oTermin:ReminderTime := 15
//
// do not save, User have to "press Save" Button
//
*  oTermin:save()

   oTermin:Display()

   ShowOnTop( TRIM(cText) +" - Termin" )
ich kann also auf einen UserDef Event warten und dann entsprechende Aktionen anstellen und muss mich nicht um das "externe" Fenster kümmern.
gruss by OHR
Jimmy
Antworten