![]() |
AW: Autotext-Programm - aber wie?
Es wäre sehr freundlich, wenn du uns die Exception Meldung verraten würdest (Einfach Strg-C) und dann hier einfügen und auch an welcher Stell das passiert (ausführen des Programms im Debugger, dann wird dir die Stelle angezeigt)
|
AW: Autotext-Programm - aber wie?
Und wo bekommst du die Exception?
|
AW: Autotext-Programm - aber wie?
... genau das ist ja mein Problem, daß ich eben keine Exception der üblichen Form bekomme, sondern
- entweder eine Schutzverletzung "lesen von Adresse bla..." - oder "Clipboardtest.exe hat einen Fehler verursacht und muß beendet werden" oder es funktioniert ein, zwei mal, und dann kriege ich eine Schutzverletzung beim Schließen des Programms. Offensichtlich wühle ich irgendwo im Arbeitsspeicher rum, wo ich nichts zu suchen habe. Probiere ich das Ganze, während Delphi läuft, lande ich nach druck auf strg+c einfach ohne weitere Meldungen im CPU-Fenster. Laufe ich mit dem Debugger drüber, läuft die Funktion WMDrawClipBoard scheinbar durch, und erst beim "end" lande ich CPU-Fenster. Übrigens geht daß auch schief, wenn man einen text nimmt, der kein CopyTextToClipBoard zur folge hat, also biespielsweise im Word "test" schreibt und anschließend strg+c drückt. Viele Grüße Marco |
AW: Autotext-Programm - aber wie?
Wenn du das CPU Fenster siehst, dann wird dir auch der Aufruf Stack gezeigt, und daran kann man nachverfolgen, welcher Aufruf in deinem Quellcode da gerade am Zug ist.
Ich vermute mal, dass du beim Zugriff auf die Zwischenablage diesen Fehler bekommst. Da dein Programm ja nicht den exklusiven Zugriff auf die Zwischenablage hat (ist ja für alle gedacht), musst du prüfen und ggfs warten, bis du wirklich den Zugriff auf die Zwischenablage hast. Macht man das nicht, dann knallt es eben |
AW: Autotext-Programm - aber wie?
Der Stack zeigt nur, daß WMDrawClipBoard gerade am zug ist...
Gibt's eine extra Methode um zu prüfen, ob ich an die Zwischenablage ran darf, oder einfach eine Schleife um OpenClipBoard herum? ... Ich brauch nochmal 'n Schups, bitte... |
AW: Autotext-Programm - aber wie?
Werte doch mal den Resultcode von
![]() |
AW: Autotext-Programm - aber wie?
Hallo zusammen,
meine Güte, warum schlage ich mich eigentlich nicht mit was einfacherem Rumm. :-) Also: ich bin jetzt soweit, daß die Methode, das wort vor dem Cursr zu markieren, in die Zwischenablage zu kopieren, es auszuwerten, ggf. zu ersetzen, und dann mittels strg+v wieder einzufügen läuft, bis auf Outlook. Ich weiß nicht, was mein Outlook mit der Zwischenablage tut, aber irgendwie halten die sich da offensichtlich nicht an ihre eigenen Regeln. Gibt es irgend eine Möglichkeit, das wort, welches vor dem Cursor steht, auszulesen? Oder wird's doch ernsthaft ein Keyboard-Hook? Falls ja, würde das nämlich auch die Zwischenablage in ruhe lassen... Viele Grüße Marco |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz