AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Verhindern aus einem Memo zu kopieren
Thema durchsuchen
Ansicht
Themen-Optionen

Verhindern aus einem Memo zu kopieren

Ein Thema von dopeline · begonnen am 4. Mai 2003 · letzter Beitrag vom 6. Mai 2003
Antwort Antwort
Seite 1 von 3  1 23      
dopeline

Registriert seit: 7. Mär 2003
Ort: Berlin
304 Beiträge
 
Delphi 7 Enterprise
 
#1

Verhindern aus einem Memo zu kopieren

  Alt 4. Mai 2003, 16:27
Hallo!
Gibt es eine Möglichkeit, zu verhindern, dass man den Text aus einem Memo kopieren/ausschneiden kann? Wann ja, wie mache ich das?

Gruß, dopeline
  Mit Zitat antworten Zitat
Benutzerbild von Catbytes
Catbytes

Registriert seit: 7. Sep 2002
Ort: Heckendalheim
353 Beiträge
 
Delphi XE5 Enterprise
 
#2

Re: Verhindern aus einem Memo zu kopieren

  Alt 4. Mai 2003, 16:57
Zitat von dopeline:
Hallo!
Gibt es eine Möglichkeit, zu verhindern, dass man den Text aus einem Memo kopieren/ausschneiden kann? Wann ja, wie mache ich das?

Gruß, dopeline
Hi Dopeline,

geht gar nicht - also selbst wenn man es per Delphi unterbinden könnte, was ich jetzt direkt nicht weiß, kann ich immer noch ein Screenshot machen und es durch ein Texterkennungsprogramm jagen und habe immer noch die Infos. So mache ich das schon ewig mit geschützten PDF-Dokumenten

Genau der quatsch mit den geschützen Webseiten - lächerlich. Beim IE einfach Ansicht/Quelltext, dann markieren, kopieren und in meinen HTML-Editor laden - Schutz rausnehmen und anzeigen - bäääääähhhh <zunge_rausstreckt> und schon habe ich dem Webseitenersteller ein Bein gestellt
Catbytes
  Mit Zitat antworten Zitat
magicshadow

Registriert seit: 28. Apr 2003
85 Beiträge
 
#3
  Alt 4. Mai 2003, 17:04
Also entweder du sperst die rechte Maustaste, die Menütaste und die Tastenkombinationen STRG+C/STRG+X

oder du bastelst dir einfach einen timer und sagts

Code:
memo1.selstart:=memo1.selstart+memo1.SelLength;
memo1.sellength:=0;
Das soll dann alle 5 ms wiederholt werden und fertig.
(Wer es schafft den text in 0,005 sec. zu markieren und zu copieren, dem sollte man den Ervolg gönnen.)

Ach und wenn man in das Memo nix eingeben können brauch, dann gib es doch einfach über ein
Label aus, da kann man garantiert nix rauscopieren, ob man da aber irgendwie einen schönen 3D Ramen rumbekommt weiß ich nicht. (Das hilft auch gegen Tools, die Den Text eines Memo's anhand des Handels auslesen, ich glaub da gabs probleme den handel eines labels zu ermitteln, über dem die Maus ist.
  Mit Zitat antworten Zitat
magicshadow

Registriert seit: 28. Apr 2003
85 Beiträge
 
#4

Re: Verhindern aus einem Memo zu kopieren

  Alt 4. Mai 2003, 17:09
Zitat von Catbytes:
Genau der quatsch mit den geschützen Webseiten - lächerlich. Beim IE einfach Ansicht/Quelltext, dann markieren, kopieren und in meinen HTML-Editor laden - Schutz rausnehmen und anzeigen - bäääääähhhh <zunge_rausstreckt> und schon habe ich dem Webseitenersteller ein Bein gestellt
Na ja, das mit der Texterkennung bekommt man mit einem dunklen Hindergrund schon hin, und das mit dem queltext, da gibbet schöne java-tools, die die seite mit javascript verschlüsseln. (Aber wofür? Texte schützen, die man zur not auch abtippen kann?)
Interessant wird der schutz von Bildern, aber das ist ein anderes Kapitel

PS: Einen abseluten Schutz gibt es nie, man kann z.b. immer den Speicher auslesen, in dem der Text steht, nur ob man sich diese Mühe machen möchte?
  Mit Zitat antworten Zitat
dopeline

Registriert seit: 7. Mär 2003
Ort: Berlin
304 Beiträge
 
Delphi 7 Enterprise
 
#5
  Alt 4. Mai 2003, 17:17
Zitat von magicshadow:
Also entweder du sperst die rechte Maustaste, die Menütaste und die Tastenkombinationen STRG+C/STRG+X
Das hört sich ganz brauchbar an, aber wie mache ich das. (Idiotensicher erklärt...)

und das mit dem Texterkennungsprogramm (z.b. omnipage) kann man sowieso immer machen. aber viele leute wissen nicht einmal, dass es sowas gibt, geschweige denn, wie man das benutzt 8)

Grüße, dopeline
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#6
  Alt 4. Mai 2003, 17:28
Hallo,

das kommt darauf an, was Du mit dem Memo vorhast, dient es zur
Dateneingabe, oder soll es nur Text darstellen den Du im Programm
erzeugst. Wenn letzteres der Fall ist, kannst Du das Memo einfach auf
Memo1.Enabled := FALSE; stellen, trotzdem funktioniert danach noch immer z.B.
Memo1.Lines.Add('test'); aber man kann den Text nicht mehr markieren, daher auch nicht mehr
kopieren. Einzig die Darstellung des Memos ändert sich leicht, Style
disabled, das könnte man sicher auch leicht ändern, wenn es stört.
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#7
  Alt 4. Mai 2003, 17:35
Moin Dopeline,

erstell Dir ein PopUpMenü mit zwei Menüitems, dem einen weist Du den ShortCut für STRG-C, dem anderen den für STRG-X zu.
Dem Memo wird jetzt dieses PopUpMenü verpasst, und dann im OnContextPopup des Memos die Zeile Handled := true eingetragen.
Fertig.

Dadurch, dass Du die Shortcuts in einem zugewiesenen Menü verwendest, ist Dein Programm selber für deren Ausführung verantwortlich, und durch das Handled := true wird dem System mitgeteilt, dass das Programm auch das Contextmenü selber darstellen will (bzw. hat), was natürlich unterbleibt.

Das herauskopieren mittels WM_GETTEXT funktioniert dann aber immer noch
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
magicshadow

Registriert seit: 28. Apr 2003
85 Beiträge
 
#8
  Alt 4. Mai 2003, 17:48
Also zum deaktivieren der rechten Maustaste würde ich dir einfach raten, abzufragen, wann die Maus gedrückt wird (rechte taste) wenn dann Die Maus über dem Memo ist, dann sende einen linksklick.
Beispiele kannst du unter:
Mausklick simulieren:
http://www.tipps.delphi-source.de/de...020914-2.shtml

Maustaste Prüfen:
http://www.tipps.delphi-source.de/sy...020914-4.shtml

Cursorposition ermitteln:

var a:TPoint;
x,y:longint;
begin
GetCursorPos(a);
mausx:=a.x;
mausy:=a.y
...
end;

Das Memo ist im bereich x koordinate: von form1.left+memo1.left bis form1.left+memo1.left+memo1.width
Bereich y koordinate dementsprechen mit top und height (nur das nu noch +17 (Tietelleiste) rechnen mußt.

Aber wie das mit den Tasten war weiß ich jetzt auch nicht mehr so genau, wenn ich was finde, dann sag ich bescheid!

[edit]
Also die STRG+C/X kannst du auch deaktivieren, indem du bei memo1.onkeydown einfach "memo1.sellength:=0;" eingibst. (Wenn also c oder x gedrückt wird wird erst die markierungslänge auf 0 gesetzt, dann copiert.

Und wenn du das auch in nen timer machst kann man auch mit der Menü-Taste von windows nicht mehr copieren, da das menü eine Darstellungsverzögerung von ich glaube 50ms hat-> timer setzt schneller wieder auf nichts markiert, als das menü aufgeht.
[/edit]
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9
  Alt 4. Mai 2003, 19:07
Zitat von magicshadow:
Also zum deaktivieren der rechten Maustaste würde ich dir einfach raten,
nimm die Lösung die Christian gepostet hat und vergiss die Verränkungen von magicshadow.
Zitat:
Also die STRG+C/X kannst du auch deaktivieren, indem du bei memo1.onkeydown einfach "memo1.sellength:=0;" eingibst. (Wenn also c oder x gedrückt wird wird erst die markierungslänge auf 0 gesetzt, dann copiert.
Auch das wird von Christians Lösung erschlagen.

Lies doch einfach mal, was schon für Lösungen gepostet wurden, bevor du ihr so unsinnige Vorschläge machst.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
dopeline

Registriert seit: 7. Mär 2003
Ort: Berlin
304 Beiträge
 
Delphi 7 Enterprise
 
#10
  Alt 4. Mai 2003, 19:21
Vielen Dank! Das mit dem PopupMenu hat funktioniert. als ich versucht habe den text mit strg+c zu kopieren und dann in einem Editor einzufügen ist dabei nur "Handled := true" rausgekommen!

Kann man es jetzt noch irgentwie einrichten, dass im Editor nicht "Handled := true" steht, sondern ein Text, wie "Das Kopieren ist nicht gestatten. Alle Rechte sind den Entwicklern vorbehalten" auftaucht? Das wär cool.

Grüße, dopeline
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 22:04 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