AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi meldung eines anderen programms ermitteln?
Thema durchsuchen
Ansicht
Themen-Optionen

meldung eines anderen programms ermitteln?

Ein Thema von heiopei · begonnen am 28. Mär 2005 · letzter Beitrag vom 24. Apr 2005
Antwort Antwort
Seite 2 von 2     12   
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: meldung eines anderen programms ermitteln?

  Alt 30. Mär 2005, 19:17
Moin Philipp,

ja, mit Windows-Messageboxen.
Die von Delphi (z.B. ShowMessage, MessageDlg) sind aber keine Windows-Messageboxen.
Mit denen funktioniert das nicht.

Die Dialoge die Du meinst sind, IMHO, alle von der Klasse #32770.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
fwsp
(Gast)

n/a Beiträge
 
#12

Re: meldung eines anderen programms ermitteln?

  Alt 30. Mär 2005, 21:25
moin

könnte man die meldung nicht einfach in eine seperate datei schreiben und die auswerung von da aus vornehmen lassen?
  Mit Zitat antworten Zitat
heiopei
(Gast)

n/a Beiträge
 
#13

Re: meldung eines anderen programms ermitteln?

  Alt 21. Apr 2005, 18:03
ja hallo,
wieder mal son alter beitrag von mir!

Zitat:
ja, mit Windows-Messageboxen.
Die von Delphi (z.B. ShowMessage, MessageDlg) sind aber keine Windows-Messageboxen.
Mit denen funktioniert das nicht.

Die Dialoge die Du meinst sind, IMHO, alle von der Klasse #32770.
also kann ich jetzt irgendwie den meldungstext auslesen?

das mit strg + c geht bei showmessage... nicht - hab ich ausprobiert!
naja - mir fällt kein weiterer lösungsweg ein

mfg,
heiopei
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#14

Re: meldung eines anderen programms ermitteln?

  Alt 21. Apr 2005, 18:47
Moin Heiopei,

der einzige Lösungsweg der mir dazu einfällt (nicht als Witz gemeint):
Einen Screenshot von der Meldung durch ein OCR-Modul schicken.

Allerdings hätte ich nicht mal eine Idee, wo man so ein Modul herbekommen kann, weder frei noch kostenpflichtig.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
heiopei
(Gast)

n/a Beiträge
 
#15

Re: meldung eines anderen programms ermitteln?

  Alt 21. Apr 2005, 20:19
ja, den lösungsweg hab ich mir auch schon gedacht - und ihn gleich wieder verdrängt

tja, dann werd ich das wohl bleiben lassen

das mit hooken geht sicher nicht?!?

ps: was heißt orc-modul?

mfg,
heiopei
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#16

Re: meldung eines anderen programms ermitteln?

  Alt 21. Apr 2005, 20:25
Moin Heiopei,

OCR = Optical Character Recognition

Dies wird in Programmen genützt, die, z.B., aus eingescannten Seiten Textdateien erstellen können (vereinfacht gesagt).
Hierzu gehören, z.B., FineReader oder OmniPage.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von c113plpbr
c113plpbr

Registriert seit: 18. Nov 2003
Ort: localhost
674 Beiträge
 
Delphi 2005 Professional
 
#17

Re: meldung eines anderen programms ermitteln?

  Alt 24. Apr 2005, 02:12
Zitat von Christian Seehase:
Die von Delphi (z.B. ShowMessage, MessageDlg) sind aber keine Windows-Messageboxen.
Mit denen funktioniert das nicht.
Bist du dir da sicher?
In meinem D05 & D7 Quellcode der Dialogs.pas steht mal
Delphi-Quellcode:
procedure TMessageForm.CustomKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  if (Shift = [ssCtrl]) and (Key = Word('C')) then
  begin
    Beep;
    WriteToClipBoard(GetFormText);
  end;
end;
Ist das Aussagekräftig genug? Meine Tests bestätigen das ...

Zitat von heiopei:
das mit hooken geht sicher nicht?!?
Du kannst es ja mal mit API-Hooks probieren, wobei es warscheinlich nicht allzu einfach ist einen Pointer auf die CreateMessageDialog Funktion innerhalb eines fremden Prozesses zu bekommen, da diese ja von Delphi zur Verfügung gestellt wird ...
Aber wenns nur für ein einziges (unveränderliches) Programm ist, könnte man das ja "Quick & Dirty" machen ...

ciao, Philipp
Philipp
There is never enough time to do all the nothing you want.
*HABENWILL*
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#18

Re: meldung eines anderen programms ermitteln?

  Alt 24. Apr 2005, 02:25
Moin Philipp,

zu dem Zeitpunkt als ich das geschrieben habe, hatte ich mit D5 gearbeitet, und damit geht es definitiv nicht.
TMessageForm hat die, inzwischen nachgerüsteten, Methoden einfach nicht.
Die sind offensichtlich, erst seit D6 vorhanden.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von c113plpbr
c113plpbr

Registriert seit: 18. Nov 2003
Ort: localhost
674 Beiträge
 
Delphi 2005 Professional
 
#19

Re: meldung eines anderen programms ermitteln?

  Alt 24. Apr 2005, 02:30
Zitat von Christian Seehase:
zu dem Zeitpunkt als ich das geschrieben habe, hatte ich mit D5 gearbeitet, und damit geht es definitiv nicht.
TMessageForm hat die, inzwischen nachgerüsteten, Methoden einfach nicht.
Die sind offensichtlich, erst seit D6 vorhanden.
Sowas hab ich schon fast vermutet ... nun stellt sich eben nurnoch die Frage, ob dies in dem betreffenden Programm schon drin ist, oder nicht?!?

ciao, Philipp
Philipp
There is never enough time to do all the nothing you want.
*HABENWILL*
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#20

Re: meldung eines anderen programms ermitteln?

  Alt 24. Apr 2005, 03:29
Moin Philipp,

den Weg über die Zwischenablage halte ich aber eh' nicht für sinnvoll, ausser das Programm sichert den alten Inhalt, und stellt ihn nach dem Auslesen des Message-Textes wieder her.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz